JP4765876B2 - TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM - Google Patents
TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM Download PDFInfo
- Publication number
- JP4765876B2 JP4765876B2 JP2006270136A JP2006270136A JP4765876B2 JP 4765876 B2 JP4765876 B2 JP 4765876B2 JP 2006270136 A JP2006270136 A JP 2006270136A JP 2006270136 A JP2006270136 A JP 2006270136A JP 4765876 B2 JP4765876 B2 JP 4765876B2
- Authority
- JP
- Japan
- Prior art keywords
- terminal device
- message
- content
- search message
- content data
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Description
本発明は、ネットワークを介したコンテンツ配信の技術分野に関し、更に詳細には、ネットワーク上に配置された複数の端末装置を備え、端末装置間でP2P(Peer to Peer)によりコンテンツデータの送受信を行うコンテンツ配信システムに関する。 The present invention relates to the technical field of content distribution via a network. More specifically, the present invention includes a plurality of terminal devices arranged on the network, and transmits and receives content data between the terminal devices by P2P (Peer to Peer). The present invention relates to a content distribution system.
近年、インターネットなどのネットワークを介して、音楽、映画、トーク番組などのコンテンツデータを配信する、いわゆるコンテンツ配信システムの研究が盛んである。 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))を利用して論理的にオーバーレイネットワークを構築することにより、コンテンツデータを効率的に分散配置して負荷分散を図る技術が提案されている。 Therefore, a technique has been proposed in which load data is distributed by efficiently distributing and arranging content data by logically constructing an overlay network using a distributed hash table (DHT).
このシステムにおいては、各端末装置が当該オーバーレイネットワークに参加している全ての端末装置へのリンク情報(例えば、IPアドレス)を認識しているわけではなく、参加の際などに得られる一部の端末装置へのリンク情報だけを保持しており、かかるリンク情報に基づき、コンテンデータの検索等を行うようになっている(特許文献1参照)。
ところで、上述のコンテンツ配信システムでは、このシステム内の端末装置にコンテンツデータが投入されて公開されたコンテンツデータを、端末装置間で送受信を行うことによってコンテンツデータを配信できる端末装置を順次増加させていくことになる。 By the way, in the above-described content distribution system, the number of terminal devices that can distribute content data by transmitting / receiving the content data between the terminal devices after the content data is input to the terminal devices in the system is increased sequentially. Will go.
一方で、人気のコンテンツデータは公開時から時間が経つにつれその人気がなくなっていくのが一般的である。すなわち、コンテンツデータがコンテンツ配信システムで公開されたときに最も人気が高い状態になることが多い。 On the other hand, popular content data generally loses its popularity as time goes by. That is, it is often the most popular when content data is published on a content distribution system.
しかしながら、このコンテンツ配信システムでの公開時には、コンテンツデータを保持する端末装置が少ないために、コンテンツデータを保持する特定の端末装置にアクセスが集中してしまう不都合がある。このようにアクセスが集中すると、ネットワークの混雑を来たしてしまう恐れがある。 However, at the time of publication in this content distribution system, since there are few terminal devices holding content data, there is a disadvantage that access concentrates on a specific terminal device holding content data. If access concentrates in this way, there is a risk of network congestion.
本発明は、以上の不都合に鑑みてなされたものであり、ネットワーク上に配置された複数の端末装置を有するP2P型のコンテンツ配信システムにおいて、特に、コンテンツデータを公開したときにコンテンツデータを保持する端末装置へのアクセスを有効に制限することができる端末装置及びその情報処理方法等を提供することを目的とする。 The present invention has been made in view of the above inconveniences. In a P2P type content distribution system having a plurality of terminal devices arranged on a network, the content data is held particularly when the content data is disclosed. An object of the present invention is to provide a terminal device capable of effectively restricting access to the terminal device, an information processing method thereof, and the like.
以上のような目的を達成するために、本発明は、以下のようなものを提供する。 In order to achieve the above object, the present invention provides the following.
すなわち、請求項1に記載の発明は、ネットワークに接続された複数の端末装置により構成されたオーバーレイネットワークにより、前記端末装置間でコンテンツデータの送受信を行うコンテンツ配信システムにおける前記端末装置であって、前記ネットワークを介して受信したメッセージが前記コンテンツデータを保持するコンテンツ保持端末装置の所在情報の登録を要求する登録メッセージであるとき、前記登録メッセージに含まれる前記コンテンツ保持端末装置の所在情報を記憶する配信元情報記憶手段と、前記ネットワークを介して受信したメッセージが前記コンテンツデータを取得するための検索メッセージであるとき、前記配信元情報記憶手段に所在情報を記憶した前記コンテンツ保持端末装置の数に応じて、前記メッセージを送信した端末装置が前記コンテンツデータを取得する検索メッセージ応答処理を行うか否かを判定する応答処理可否判定手段と、前記応答処理可否判定手段により前記検索メッセージ応答処理を行うと判定されると、前記検索メッセージ応答処理を行う検索メッセージ応答処理手段と、を備えたことを特徴とするものである。
That is, the invention according to
また、請求項2に記載の発明は、請求項1に記載の発明において、前記検索メッセージ応答処理手段は、前記応答処理可否判定手段により前記検索メッセージ応答処理を行うと判定されると、前記配信元情報記憶手段から取り出したコンテンツ保持端末装置の所在情報を、前記検索メッセージを送信した端末装置へ前記ネットワークを介して送信することを特徴とするものである。
Further, in the invention according to
また、請求項3に記載の発明は、請求項1に記載の発明において、前記検索メッセージ応答処理手段は、前記応答処理可否判定手段により前記検索メッセージ応答処理を行うと判定されると、前記検索メッセージを送信した端末装置へ前記コンテンツ保持端末装置からコンテンツデータの配信を行わせるコンテンツデータ配信要求メッセージを生成し、前記コンテンツデータ配信要求メッセージを前記コンテンツ保持端末装置へ送信することを特徴とするものである。
Further, in the invention according to
また、請求項4に記載の発明は、請求項1から3のいずれか1項に記載の発明において、前記複数の端末装置のうち一部の端末装置の識別情報と所在情報とを関連付けたルーティングテーブルを記憶するルーティングテーブル記憶手段と、前記ネットワークを介して受信したメッセージの宛先識別情報と前記ルーティングテーブルとに基づいて、前記受信したメッセージが、メッセージを受信した端末装置宛であるかを判定するメッセージ宛先判定手段と、前記ネットワークを介して受信したメッセージが前記検索メッセージであるとき、要求されたコンテンツの前記コンテンツ保持端末装置の所在情報が前記配信元情報記憶手段に記憶されているか否かを判断する所在情報判断手段と、を備え、前記ネットワークを介して受信したメッセージが前記登録メッセージであるとき、前記配信元情報記憶手段は、前記メッセージ宛先判定手段の判定結果にかかわらず、前記登録メッセージに含まれる前記コンテンツ保持端末装置の所在情報を記憶し、要求されたコンテンツの前記コンテンツ保持端末装置の所在情報が前記配信元情報記憶手段に記憶されていると前記所在情報判断手段が判断したとき、前記応答処理可否判定手段が前記検索メッセージ応答処理を行うか否かを判定することを特徴とするものである。 According to a fourth aspect of the present invention, there is provided the routing according to any one of the first to third aspects, wherein identification information and location information of some of the plurality of terminal devices are associated with each other. Based on routing table storage means for storing a table, destination identification information of a message received via the network, and the routing table, it is determined whether the received message is addressed to a terminal device that has received the message. Whether the location information of the content holding terminal device of the requested content is stored in the distribution source information storage means when the message destination determination means and the message received via the network are the search message A location information judging means for judging, and a message received via the network. Content but when it is the registration message, the distribution source information storage means, irrespective of the determination result of the message destination determining means, and stores the location information of the content holding terminal apparatus included in the registration message, the requested When the location information determination unit determines that the location information of the content holding terminal device is stored in the distribution source information storage unit, whether or not the response process availability determination unit performs the search message response process. It is characterized by determining.
また、請求項5に記載の発明は、請求項4に記載の発明において、前記検索メッセージ応答処理手段により前記検索メッセージ応答処理が行われたとき、前記ルーティングテーブルに基づいて前記送信要求の宛先識別情報に応じた端末装置の所在情報を取り出し、当該所在情報を有する端末装置へ前記検索メッセージ応答処理を行った旨の情報を送信する報知手段を備えたことを特徴とするものである。 According to a fifth aspect of the invention, in the fourth aspect of the invention, when the search message response processing is performed by the search message response processing means, the destination identification of the transmission request is performed based on the routing table. It is characterized by comprising notifying means for taking out location information of the terminal device corresponding to the information and transmitting information indicating that the search message response processing has been performed to the terminal device having the location information.
また、請求項6に記載の発明は、請求項1から5のいずれか1項に記載の発明において、前記メッセージ宛先判定手段により前記ネットワークを介して受信したメッセージが、メッセージを受信した端末装置宛ではないと判定されると、前記受信したメッセージの宛先識別情報に基づいて、転送先の端末装置の所在情報を前記ルーティングテーブルから取り出し、前記転送先の端末装置へ前記受信したメッセージを転送するメッセージ転送手段を備え、前記検索メッセージにて要求されたコンテンツの前記コンテンツ保持端末装置の所在情報が前記配信元情報記憶手段に記憶されていないと前記所在情報判断手段が判断したとき、前記メッセージ宛先判定手段が、前記受信したメッセージが、メッセージを受信した端末装置宛であるか否かを判定し、メッセージを受信した端末装置宛でないとき、前記メッセージ転送手段がメッセージを転送することを特徴とするものである。
The invention according to
また、請求項7に記載の発明は、請求項1から6のいずれか1項に記載の発明において、前記応答処理可否判定手段は、前記検索メッセージ応答処理を行うか否かの判定を、前記配信元情報記憶手段に所在情報を記憶した前記コンテンツ保持端末装置の数と、所定期間内に前記検索メッセージ応答処理を行った数とに基づいて行うことを特徴とするものである。
The invention according to
また、請求項8に記載の発明は、請求項1から6のいずれか1項に記載の発明において、前記応答処理可否判定手段は、前記検索メッセージ応答処理を行うか否かの判定を、前記配信元情報記憶手段に所在情報を記憶した前記コンテンツ保持端末装置において同時に前記コンテンツデータを供給することができる数と、所定期間内に前記検索メッセージ応答処理を行った数とに基づいて行うことを特徴とするものである。
The invention according to
また、請求項9に記載の発明は、請求項7又は請求項8に記載の発明において、前記所定期間は、前記配信元情報記憶手段に所在情報を記憶した前記コンテンツ保持端末装置が保持するコンテンツデータのデータサイズに応じて決定される時間であることを特徴とするものである。
The invention according to
また、請求項10に記載の発明は、ネットワークに接続された複数の端末装置により構成されたオーバーレイネットワークにより、前記端末装置間でコンテンツデータの送受信を行うコンテンツ配信システムにおけるプログラムであって、前記ネットワークを介して受信したメッセージが前記コンテンツデータを保持するコンテンツ保持端末装置の所在情報の登録を要求する登録メッセージであるとき、前記登録メッセージに含まれるコンテンツ保持端末装置の所在情報を記憶するステップと、前記ネットワークを介して受信したメッセージが前記コンテンツデータを取得するための検索メッセージであるとき、所在情報を記憶した前記コンテンツ保持端末装置の数に応じて、前記メッセージを送信した端末装置が前記コンテンツデータを取得する検索メッセージ応答処理を行うか否かを判定するステップと、前記検索メッセージ応答処理を行うと判定されると、前記検索メッセージ応答処理を行うステップと、をコンピュータに実行させるためのプログラムとするものである。
The invention according to
また、請求項11に記載の発明は、ネットワークに接続された複数の端末装置により構成されたオーバーレイネットワークにより、前記端末装置間でコンテンツデータの送受信を行うコンテンツ配信システムにおける前記端末装置の情報処理方法であって、前記ネットワークを介して受信したメッセージが前記コンテンツデータを保持するコンテンツ保持端末装置の所在情報の登録を要求する登録メッセージであるとき、前記登録メッセージに含まれるコンテンツ保持端末装置の所在情報を記憶するステップと、前記ネットワークを介して受信したメッセージが前記コンテンツデータを取得するための検索メッセージであるとき、所在情報を記憶した前記コンテンツ保持端末装置の数に応じて、前記メッセージを送信した端末装置が前記コンテンツデータを取得する検索メッセージ応答処理を行うか否かを判定するステップと、前記検索メッセージ応答処理を行うと判定されると、前記検索メッセージ応答処理を行うステップと、を有することを特徴とするものである。 According to an eleventh aspect of the present invention, there is provided an information processing method for the terminal device in a content distribution system in which content data is transmitted and received between the terminal devices through an overlay network composed of a plurality of terminal devices connected to the network. When the message received via the network is a registration message requesting registration of location information of the content holding terminal device holding the content data, the location information of the content holding terminal device included in the registration message And when the message received via the network is a search message for acquiring the content data, the message is transmitted according to the number of the content holding terminal devices that store the location information. The terminal device A step of determining whether or not to perform a search message response process for acquiring data, and a step of performing the search message response process when it is determined to perform the search message response process. It is.
また、請求項12に記載の発明は、請求項1に記載の発明において、前記検索メッセージ応答処理手段は、前記応答処理可否判定手段により前記検索メッセージ応答処理を行わないと判定されると、前記検索メッセージが、前記検索メッセージを受信した端末装置宛であるか否かを判定し、前記検索メッセージが、前記検索メッセージを受信した端末装置宛であると判定すると、前記検索メッセージを送信した端末装置へアクセス不許可メッセージを送信し、前記検索メッセージが、前記検索メッセージを受信した端末装置宛でないと判定すると、前記検索メッセージにより検索されたコンテンツデータを管理する端末装置へ前記検索メッセージを送信することを特徴とするものである。The invention according to
請求項1,10,11に記載の発明によれば、ネットワークを介して受信したメッセージがコンテンツデータを保持するコンテンツ保持端末装置の所在情報の登録を要求する登録メッセージであるとき、この登録メッセージに含まれるコンテンツ保持端末装置の所在情報を記憶し、その後、ネットワークを介して受信したメッセージがコンテンツデータを取得するための検索メッセージであるとき、このメッセージを送信した端末装置がコンテンツデータを取得する検索メッセージ応答処理を行うか否かを判定し、検索メッセージ応答処理を行うと判定されると、この検索メッセージ応答処理を行うにしたので、コンテンツ保持端末装置の所在情報を検索するときに、コンテンツ保持端末装置へのアクセスを制限して、ネットワークの混雑を抑制することが可能となる。 According to the first, tenth, and eleventh aspects of the present invention, when the message received via the network is a registration message for requesting registration of location information of the content holding terminal device holding the content data, The location information of the content holding terminal device included is stored, and then, when the message received via the network is a search message for acquiring content data, the terminal device that transmitted this message acquires the content data It is determined whether or not message response processing is to be performed. If it is determined that search message response processing is to be performed, the search message response processing is performed. Restrict access to terminal devices to reduce network congestion It is possible to win to become.
また、請求項2に記載の発明によれば、検索メッセージ応答処理を行うときには、配信元情報記憶手段から取り出したコンテンツ保持端末装置の所在情報を、検索メッセージを送信した端末装置へネットワークを介して送信するので、検索メッセージを送信した端末装置は、送信されるコンテンツ保持端末装置の所在情報に基づいて、コンテンツ保持端末装置へアクセスしてコンテンツデータを取得することが可能となる。 According to the second aspect of the present invention, when the search message response process is performed, the location information of the content holding terminal device extracted from the distribution source information storage unit is transmitted to the terminal device that transmitted the search message via the network. Therefore, the terminal device that has transmitted the search message can access the content holding terminal device and acquire content data based on the location information of the content holding terminal device to be transmitted.
また、請求項3に記載の発明によれば、検索メッセージ応答処理を行うときには、検索メッセージを送信した端末装置へコンテンツ保持端末装置からコンテンツデータの配信を行わせるので、検索メッセージを送信した端末装置は、効率的にコンテンツデータの取得が可能となる。 According to the third aspect of the invention, when the search message response process is performed, the content data is distributed from the content holding terminal device to the terminal device that has transmitted the search message. Can efficiently acquire the content data.
また、請求項4に記載の発明によれば、受信したメッセージが登録メッセージであるとき、当該登録メッセージが自端末装置宛であるか否かにかかわらず、登録メッセージに含まれるコンテンツ保持端末装置の所在情報を記憶するので、コンテンツ保持端末装置の所在情報を記憶する端末装置を増加させ、コンテンツ保持端末装置へのアクセス制限を行なう端末装置を分散させることが可能となり、更にネットワークの混雑を抑制することができる。
According to the invention of
また、請求項5に記載の発明によれば、検索メッセージの応答処理を行ったとき、ルーティングテーブルに基づいて所在情報を有する端末装置へ検索メッセージ応答処理を行った旨の情報を送信するので、コンテンツ保持端末装置の所在情報を記憶する他の端末装置にその旨を知らせることができ、コンテンツ保持端末装置へのアクセス制限をより効果的に行うことができる。
According to the invention of
また、請求項6に記載の発明によれば、検索メッセージの応答処理を行わず、かつこの検索メッセージが自端末装置宛でないときには通知要求のメッセージを転送するので、コンテンツ保持端末装置の所在情報を保持する他の端末装置と協力して、コンテンツ保持端末装置へのアクセス制限をより効果的に行うことができる。 According to the sixth aspect of the present invention, when the search message response process is not performed, and the search message is not addressed to the own terminal device, the notification request message is transferred. In cooperation with other terminal devices that are held, it is possible to more effectively restrict access to the content holding terminal devices.
また、請求項7に記載の発明によれば、所在情報を記憶したコンテンツ保持端末装置の数と、所定期間内に検索メッセージ応答処理を行った数とに基づいて、検索メッセージ応答処理を行うかどうかを判定するので、検索メッセージ応答処理を行うかどうかの判定を極めて容易に行うことができる。 According to the seventh aspect of the present invention, whether the search message response process is performed based on the number of content holding terminal devices storing location information and the number of search message response processes performed within a predetermined period. Since it is determined whether or not search message response processing is to be performed, it can be very easily determined.
また、請求項8に記載の発明によれば、所在情報を記憶したコンテンツ保持端末装置において同時にコンテンツデータの供給することができる数と、所定期間内に検索メッセージ応答処理を行った数とに基づいて、検索メッセージ応答を行うかどうかを判定するので、所在情報を記憶しているコンテンツ保持端末装置コンテンツデータの供給能力に応じてコンテンツ保持端末装置へのアクセス制限を行うことができ、より適切なアクセス制限を行うことができる。
Further, according to the invention described in
また、請求項9に記載の発明によれば、所定期間を、所在情報を記憶したコンテンツ保持端末装置が保持するコンテンツデータのデータサイズに応じて決定される時間としたので、コンテンツデータのデータサイズが異なる場合でも、より適切なアクセス制限を行うことができる。 According to the ninth aspect of the present invention, since the predetermined period is a time determined according to the data size of the content data held by the content holding terminal device storing the location information, the data size of the content data Even if they are different, more appropriate access restriction can be performed.
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、配信する情報を音楽データや映像データなどのコンテンツデータとするPastry型のコンテンツ配信システムに対して本発明を適用した場合の実施形態である。 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 Pastry type content distribution system in which information to be distributed is content data such as music data and video data.
[1.コンテンツ配信システムSの構成等]
まず始めに、図1を参照して、情報配信システムとしてのコンテンツ配信システムSの概要構成等について説明する。図1は、本実施形態に係るコンテンツ配信システムSにおける各端末装置の接続態様の一例を示す図である。このコンテンツ配信システムSは、ネットワーク上に分散配置された複数の端末装置から構成され、端末装置間でコンテンツデータの送受信を行うものである。
[1. Configuration of content distribution system S]
First, a schematic configuration and the like of a content distribution system S as an information distribution system 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.DHTの概要]
以下に、本実施形態に係る分散ハッシュテーブル(以下、「DHT」(Distributed Hash Table)と呼ぶ。)を利用したアルゴリズムについて説明する。
[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
本実施形態においては、DHTを利用したアルゴリズムによって構築されたオーバーレイネットワーク9を前提としており、このオーバーレイネットワーク9上に配置された端末装置1を、コンテンツ配信システムSに参加(言い換えれば、オーバーレイネットワーク9に参加)している端末装置1という。
In this embodiment, it is assumed that the
コンテンツ配信システムSに参加している各端末装置1の識別番号である端末IDとして、それぞれの端末装置1毎にユニークな番号(固有番号)を付与する。この番号は、端末装置の最大運用台数を収容できるだけのbit数を持たせる必要がある。例えば、128bitの番号とすれば、2128(2の128乗)台の端末装置を運用できる。
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とする。 As described above, 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空間に配置)、そのハッシュ値と最も近い(例えば、上位桁がより多く一致する)端末IDを有する端末装置1が、後述するルート端末装置として、コンテンツデータを保持する端末装置1(以下、「コンテンツ保持端末装置」と呼ぶ。)へのリンク情報、すなわちコンテンツ保持端末装置の所在情報であるIPアドレスを保持する。
The content ID has the same length as the terminal ID (for example, 128 bits), and the content name (content title) is hashed by a hash function common to the terminal ID (ie, the terminal ID). The
なお、異なるコンテンツデータであっても、同一のキーワード(例えば、コンテンツの名称)になる場合が想定されるが、この場合、同じハッシュ値になってしまうので、これを避けるために、ハッシュ化するキーワードを、例えば、コンテンツの概要情報(あらすじ)、コンテンツの名称と著作権情報(例えば、出演者名、監督名、原作者名、歌手名、作曲者名、又は作詞者名等)の組み合わせとすればよい。 Note that even if the content data is different, it is assumed that the same keyword (for example, the name of the content) is used. In this case, the hash value is the same to avoid the same hash value. Keywords, for example, content summary information (summary), content name and copyright information (for example, performer name, director name, author name, singer name, composer name, songwriter name, etc.) do it.
このように、各端末装置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
次に、どの端末装置1に、どのコンテンツデータが管理されるかを、一定の規則の下に決定する。本実施形態においては、「あるコンテンツIDを有するコンテンツデータを管理する端末装置1は、そのコンテンツIDに近い端末IDを有する端末装置1である」という規則とする。
Next, which content data is managed by which
ここで、「近い」ことの定義は、当該コンテンツIDを超えず、コンテンツIDと端末IDとの差が一番少ないものとするが、実際には、各コンテンツデータの管理を各端末装置1に割り振る際に、一貫していれば他の定義でもよい。
Here, the definition of “close” does not exceed the content ID, and the difference between the content ID and the terminal ID is the smallest. In practice, each content data is managed by 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に保持されているかを知っている」ことを意味する。すなわち、図2において、端末IDaを有する端末装置1は、コンテンツIDaを有するコンテンツデータが何れの端末装置1に保持されているかを知っており、端末IDbを有する端末装置1及び端末IDcを有する端末装置1も同様にそれぞれコンテンツIDbを有するコンテンツデータ及びコンテンツIDcを有するコンテンツデータが何れの端末装置1に保持されているかを知っている、ということになる。
Here, “management” does not mean that content data is held, but “knows which
このように、あるコンテンツデータが何れの端末装置1に保持されているかを知っている端末装置1を、そのコンテンツデータのルート端末装置と呼ぶ。つまり、端末IDaを有する端末装置1は、コンテンツIDaを有するコンテンツデータのルート端末装置であって、端末IDbを有する端末装置1は、コンテンツIDbを有するコンテンツデータのルート端末装置であって、端末IDcを有する端末装置1は、コンテンツIDcを有するコンテンツデータのルート端末装置である。
In this way, the
また、本実施形態においては、コンテンツデータの管理をルート端末装置が主として行うが、その他の端末装置1においても後述するキャッシュ端末装置としてコンテンツデータの管理を行うようにしており、この点後述する。
In this embodiment, the root terminal device mainly manages content data. However, the other
また、コンテンツ配信システムSには、図1に示すように、コンテンツ配信システムSにコンテンツデータを投入する機能、すなわちコンテンツ配信システムS内の端末装置1をコンテンツ保持端末装置とするためにコンテンツデータを端末装置1へ配布する機能と、カタログリストを生成して端末装置1へ提供する機能とを有するコンテンツ投入装置10が配置されている。
In addition, as shown in FIG. 1, the content distribution system S has a function of inputting content data into the content distribution system S, that is, content data for making the
[1.2.ルーティングテーブルの作成]
ここで、図3を参照して、DHTで用いるルーティングテーブルの作成手法の一例について説明する。図3は、DHTによってルーティングテーブルが作成される様子の一例を示す図である。
[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, when 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, based on the information transmitted from the
(レベル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”, “12XX” are further divided. ”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 the 8-bit IDs can be covered by creating a routing table as shown in FIG. As the level goes up, white space becomes more noticeable in the table.
以上説明した手法に従って作成したルーティングテーブルを、全ての端末装置1が夫々作成して所有することになる。このように、各端末装置1は、コンテンツ配信システムSにおける複数の端末装置1のうち一部の端末装置1の識別情報である端末ID及びIPアドレスを関連付けたルーティングテーブルを有している。
All the
[1.3.インデックステーブルへの登録方法]
このような構成のコンテンツ配信システムSの中で、例えば、ある端末装置1が新しいコンテンツデータを、コンテンツ配信システムS上の他の端末装置1から検索可能となるように公開する際の手法について述べる。
[1.3. How to register in the index table]
In the content distribution system S having such a configuration, for example, a method when a certain
コンテンツ投入装置10から配布されたコンテンツデータを記憶してコンテンツ保持端末装置となった端末装置1は、記憶したコンテンツデータのコンテンツIDと同じ端末IDを持つ端末装置1に向けて(この端末装置1が実在するか否かはこの時点ではわからない。)、コンテンツデータを保持するコンテンツ保持端末装置の所在情報等の登録を要求するメッセージ(以下、「登録メッセージ」とする。)を送信する。
The
具体的には、図5(a),(b)に示すように、例えば、端末装置1MがコンテンツID「3020」のコンテンツ保持端末装置となったとき、端末装置1Mは、コンテンツID「3020」を宛先識別情報とした登録メッセージを生成し、この登録メッセージを自己が保持しているルーティングテーブルを参照して送信する。端末装置1Mが、図4の例と同様のルーティングテーブルを持っていたとすると、コンテンツID「3020」は「3XXX」のエリアであるため、当該「3XXX」のエリアに属す端末装置1のうち、IPアドレスを知っている(すなわち、自己が保持しているルーティングテーブルにIPアドレスが記憶されている)端末装置1A(端末ID「3213」)に対して登録メッセージを送信する。このように、登録メッセージはコンテンツに対応する固有の識別情報であるコンテンツIDを含むものであり、このコンテンツIDは登録メッセージにおいて宛先識別情報として用いられる。
Specifically, as shown in FIGS. 5A and 5B, for example, when the
次に、登録メッセージを受信した端末装置1Aは、この登録メッセージが自端末装置1A宛のメッセージであるか否かを判定する。自端末装置1A宛のメッセージであるか否かは、宛先識別情報とルーティングテーブルとに基づいて行われる。具体的には、宛先識別情報が自端末装置1Aの識別情報である端末IDと近いか否かが判定される。即ち、宛先識別情報に対して、端末装置1A自身が保持しているルーティングテーブル(テーブルの値は図示しない)に記憶されている端末装置1の端末IDから、一番近い端末装置1の端末IDが、自身であるか他の端末装置1であるかを判定する。
Next, the
そして、自端末装置1Aの端末IDよりも他の端末装置1の端末IDの方が、宛先識別情報に近いため、端末装置1Aは、当該端末装置1A自身が保持しているルーティングテーブルのレベル2のテーブルを参照して、「30XX」のエリアに属す端末装置1のうち、IPアドレスを知っている端末装置1B(端末ID「3031」)に対して登録メッセージを転送する。
Since the terminal ID of the other
このように、コンテンツIDの桁を上から順に適合していく要領で登録メッセージの転送が進み、最終的に当該コンテンツデータを管理する端末装置1C、すなわちルート端末装置に辿り着くと、当該端末装置1自身がそのコンテンツのルート端末装置となるべきだと判断し、当該登録メッセージに含まれる当該コンテンツID及びコンテンツ保持端末の端末IDやIPアドレス等(以下、これらを「インデックス情報」と呼ぶ。)をインデックス情報として記憶する。そして、後述するように、他の端末装置から検索メッセージを受信すると、検索メッセージ応答処理を行う。この検索メッセージ応答処理は、検索メッセージを送信した端末装置1へコンテンツ保持端末装置の所在情報を後述するインデックステーブルから選択して通知することによって行うものである。
As described above, when the transfer of the registration message proceeds in the manner of adapting the digits of the content ID in order from the top and finally reaches the terminal device 1C that manages the content data, that is, the root terminal device, the
また、本実施形態では、登録メッセージがルート端末装置へ転送される経路の途中の端末装置1でも、登録メッセージに含まれるインデックス情報をキャッシュとして保持するように構成されており、このような端末装置1をキャッシュ端末装置という。これにより、ルート端末装置がコンテンツを検索するための検索メッセージを受信するより前に、キャッシュ端末装置に検索メッセージが転送された時点でキャッシュ端末装置によって、検索メッセージ応答処理を行うことが可能となる。
Further, in the present embodiment, the
登録メッセージを転送していく際には、通常、上述のようにキャッシュ端末装置が登録メッセージに基づいたインデックス情報を保持していく。 When transferring a registration message, the cache terminal device normally holds index information based on the registration message as described above.
すなわち、コンテンツ保持端末装置である端末装置1Mがインデックス情報を含む登録メッセージを送信すると、これを受け取った端末装置1Aは、当該インデックス情報を保持することによりキャッシュ端末装置(1)として機能する。キャッシュ端末装置(1)は、当該登録メッセージを転送する。当該登録メッセージを受け取った端末装置1Bは、当該インデックス情報を保持することによりキャッシュ端末装置(2)として機能する。キャッシュ端末装置(2)は、当該登録メッセージを転送する。当該登録メッセージを受け取った端末装置1Cは、当該インデックス情報を保持することによりルート端末装置として機能する。このように端末装置1A,1B,1Cは登録メッセージに含まれるインデックス情報を保持することになる。
That is, when the
ところで、ルート端末装置やキャッシュ端末装置におけるインデックス情報の保持は、図6に示すようなインデックステーブルにより行われる。図6はルート端末装置1Cにおけるインデックステーブルの例を示したものであり、自端末装置1が管理対象であるコンテンツID「3020」のコンテンツに関するコンテンツ保持端末装置の端末ID、IPアドレス、紹介時間などを記憶する他、キャッシュ端末装置としてコンテンツID「3021」のコンテンツに関するコンテンツ保持端末装置の端末ID、IPアドレス、紹介時間などを記憶している。なお、インデックステーブルには、コンテンツID、コンテンツ保持端末装置の端末IDやIPアドレスの他、コンテンツデータのサイズや著作権情報なども記憶することができる。また、紹介時間とは、後述する検索メッセージを受信したときに、コンテンツ保持端末装置に所在情報を送信したときの時間であり、この送信を行うたびに更新されるものである。
By the way, the index information in the root terminal device or the cache terminal device is held by an index table as shown in FIG. FIG. 6 shows an example of an index table in the root terminal device 1C. The terminal ID, IP address, introduction time, etc. of the content holding terminal device relating to the content with the content ID “3020” that is managed by the
[1.4.コンテンツデータの取得方法]
次に、図7及び図8を参照して、コンテンツデータを保持している端末装置1の検索方法の一例について説明する。図7は、DHTによりコンテンツデータを保持している端末装置1が検索される様子の一例を示す図である。
[1.4. Content data acquisition method]
Next, an example of a search method for the
ここでは、端末ID「1133」の端末装置1Nが、コンテンツID「3020」を有するコンテンツデータを探す際の手順について説明する。なお、以下このようにコンテンツデータを探し、コンテンツデータの送信を要求する端末装置1をリクエスト端末装置と呼ぶ。また、端末装置1A,1Bは、コンテンツID「3020」のキャッシュ端末装置であるとし、端末装置1Cは、コンテンツID「3020」のルート端末装置であるとする。
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
図7に示す例によれば、端末IDが「3213」である端末装置1AのIPアドレスがリクエスト端末装置1Nのルーティングテーブル(図4参照。)に記憶されているので、リクエスト端末装置1Nは、端末IDが「3213」である端末装置1Aに対して検索メッセージを送信する。
According to the example shown in FIG. 7, since the IP address of the
次に、検索メッセージを受信した端末装置1Aは、この検索メッセージによる検索対象のコンテンツ保持端末装置の所在情報インデックステーブルに記憶されているか否かを判断する。すなわち、端末装置1Aは、検索メッセージに含まれるコンテンツIDに基づいて、このコンテンツID対応するコンテンツデータを保持するコンテンツ保持端末装置の所在情報が記憶されているか否かを判断する。
Next, the
端末装置1Aは、コンテンツID「3020」のキャッシュ端末装置であることから、検索メッセージの検索対象であるコンテンツ保持端末装置の所在情報を記憶していると判断し、検索メッセージ応答処理を行うか否かを判定する。
Since the
ここで、端末装置1Aは、検索メッセージ応答処理を行うか否かを、ルーティングテーブルに記憶された情報に基づいて行う。具体的には、ルーティングテーブルに所在情報を記憶したコンテンツ保持端末装置の数に応じてその判定を行う。すなわち、ルーティングテーブルに所在情報を記憶したコンテンツ保持端末装置の数に応じて検索メッセージ応答処理数の上限値(以下、単に「上限値」と呼ぶ場合がある)を決定し、所定時間前から現在までの間に行った検索メッセージ応答処理の数(以下、「最近の検索メッセージ応答処理数」と呼ぶ。)が上限値以上となっていないときに検索メッセージ応答処理を行うと判定し、上限値以上となっているときに検索メッセージ応答処理を行わないと判定する。
Here, the
ここで、端末装置1Aにおいては、図7に示すように、検索メッセージ応答処理数の上限値が「2」であり、最近の検索メッセージ応答処理数が「2」となっていることから、検索メッセージ応答処理を行わずに、端末装置1Aは、この検索メッセージが自端末装置1A宛のメッセージであるか否かを判定する。自端末装置1A宛のメッセージであるか否かは、宛先識別情報とルーティングテーブルとに基づいて行われる。具体的には、宛先識別情報が自端末装置1Aの識別情報である端末IDと近いか否かが判定される。即ち、宛先識別情報に対して、端末装置1A自身が保持しているルーティングテーブル(テーブルの値は図示しない)に記憶されている端末装置1の端末IDから、一番近い端末装置1の端末IDが、自身であるか他の端末装置1であるかを判定する。
Here, in the
そして、自端末装置1Aの端末IDよりも他の端末装置1の端末IDの方が、宛先識別情報に近いため、端末装置1Aは、当該端末装置1A自身が保持しているルーティングテーブルのレベル2のテーブルを参照して、「30XX」のエリアに属す端末装置1のうち、IPアドレスを知っている端末装置1B(端末ID「3031」)に対して検索メッセージを転送する。
Since the terminal ID of the other
その後、検索メッセージを受信した端末装置1Bは、この検索メッセージの検索対象であるコンテンツ保持端末装置の所在情報がインデックステーブルに記憶されているか否かを判断する。
Thereafter, the
端末装置1Bは、コンテンツID「3020」のキャッシュ端末装置であるため、検索メッセージの検索対象であるコンテンツ保持端末装置の所在情報を記憶していると判断し、検索メッセージ応答処理を行うか否かを判定する。
Since the
ここで、端末装置1Bにおいては、検索メッセージ応答処理数の上限値が「8」であり、最近の検索メッセージ応答処理数が「6」となっていることから、端末装置1Bは、検索メッセージ応答処理が可能であると判定し、インデックステーブルから検索メッセージの検索対象であるコンテンツ保持端末装置の所在情報を複数(一つしかない場合には一つだけ)取り出す。そして、端末装置1Bは、このように取り出したコンテンツ保持端末装置の所在情報をリクエスト端末装置1Nへ通知する。コンテンツ保持端末装置の所在情報の通知を受けるとリクエスト端末装置1Nは、これらのコンテンツ保持端末装置のうち任意の一つのコンテンツ保持端末装置を選択してコンテンツデータの送信を要求する。
Here, in the
このように、本実施形態における端末装置1では、ネットワーク8を介して受信したメッセージが検索メッセージであるとき、所在情報を記憶したコンテンツ保持端末装置の数に応じて、検索メッセージ応答処理を行うか否かを判定し、検索メッセージ応答処理を行うと判定すると、検索メッセージ応答処理を行うようにしたので、コンテンツ保持端末装置の所在情報を検索するときに、コンテンツ保持端末装置へのアクセス制限をすることで、ネットワークの混雑を抑制することが可能となる。すなわち、コンテンツ配信システムSにおけるコンテンツ配信能力に応じたアクセス制限が可能となる。
As described above, in the
また、端末装置1Bは、検索メッセージに対し、検索メッセージ応答処理を行ったとき、ルーティングテーブルに基づいて、コンテンツID「3020」に端末IDが近い所在情報を有する端末装置1Cへ検索メッセージ応答処理を行った旨のメッセージ(以下、「応答処理済メッセージ」とする。)を送信する。この応答処理済メッセージは、コンテンツID「3020」を宛先識別情報として、DHTルーティングにより送信されるものである。端末装置1Cは、この応答処理済メッセージを受信すると、自端末装置1における最近の検索メッセージ応答処理数を1つだけインクリメントする。
Further, when the
このように、リクエスト端末装置の検索メッセージに対して、検索メッセージ応答処理を行った端末装置1Bからルート端末装置までのDHTルーティング経路に検索メッセージ応答処理済メッセージを送信することにより、他のキャッシュ端末装置やルート端末装置は、検索メッセージに対して検索メッセージ応答処理が行われたことを把握することができるので、コンテンツ保持端末装置へのアクセス制限をより効果的に行うことができる。
In this way, by transmitting the search message response processed message to the DHT routing path from the
図8は、端末装置1A,1B,1Cのいずれもが、最近の検索メッセージ応答処理数が検索メッセージ応答処理数の上限値以上となっている状態で、リクエスト端末装置1Nが検索メッセージを送信した場合の例を示している。
FIG. 8 shows that the
この例では、リクエスト端末装置1Nから送信された検索メッセージに対して、キャッシュ端末装置である端末装置1A,1Bは、自端末装置における最近の検索メッセージ応答処理数が上限値以上となっているため、検索メッセージ応答処理を行わずにこの検索メッセージをルート端末装置である端末装置1Cへ転送する。端末装置1Cにおいては、同様に最近の検索メッセージ応答処理数が上限値以上となっているため、検索メッセージ応答処理を行わず、リクエスト端末装置1Nに対して、アクセス不許可メッセージを送信する。リクエスト端末装置1Nでは、アクセス不許可メッセージするとコンテンツデータの取得処理を中止する。
In this example, for the search message transmitted from the request terminal device 1N, the
このように、各端末装置において最近の検索メッセージ応答処理数が検索メッセージ応答処理数の上限値以上となると、検索メッセージ応答処理の制限を行なうようにしてるため、ネットワークの混雑を抑制することが可能となる。 In this way, when the number of recent search message response processes in each terminal device exceeds the upper limit of the search message response process count, the search message response process is limited, so that network congestion can be suppressed. It becomes.
[2.端末装置1の構成等の説明]
次に、図面を参照して、端末装置1の構成及び動作について説明する。図9は、本実施形態に係るコンテンツ配信システムSにおける端末装置1の概略構成を示す図である。
[2. Description of Configuration of Terminal Device 1]
Next, the configuration and operation of the
端末装置1は、専用のコンピュータの他、一般のパーソナルコンピュータを適用可能であり、図9に示すように、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には、更にインデックステーブル(図6参照)の情報を記憶するためのインデックステーブル記憶領域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等から配信されたコンテンツデータを記憶するコンテンツデータ記憶手段として機能するコンテンツデータ記憶領域等を有している。
(About the second storage unit 104)
The
(制御部113について)
制御部113は、上述のようにCPU102と第1記憶部103とから構成され、CPU102が第1記憶部103に記憶された各種プログラム114〜118を読み出して実行することにより、端末装置1全体を統括制御し、かつ、後述する表示制御手段、コンテンツデータ取得要求検出手段、コンテンツデータ取得手段、コンテンツデータ送信手段、コンテンツデータ再生手段、登録メッセージ送信手段、コンテンツ保持端末情報取得手段、所在情報判断手段、応答処理可否判定手段、検索メッセージ応答処理手段、報知手段、メッセージ宛先判定手段、メッセージ転送手段、デコード手段等として機能するようになっている。
(Regarding the control unit 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 detection means detects content data acquisition request operation by the user. For example, when the catalog list acquired by the
(コンテンツデータ取得手段について)
コンテンツデータ取得手段は、ネットワークインターフェイス105を介して受信したメッセージがコンテンツ投入装置10からのコンテンツデータの保持要求であるときに、このコンテンツデータをコンテンツ投入装置10から取得する。そして、取得したコンテンツデータをコンテンツデータ記憶手段としての第2記憶部104に記憶する。
(About content data acquisition means)
When the message received via the
また、コンテンツデータ取得手段は、コンテンツデータ取得要求検出手段によってユーザによるコンテンツデータの取得要求操作を検出し、他の端末装置1からコンテンツデータを取得するときには、取得しようとするコンテンツデータを保持するコンテンツ保持端末装置の所在情報を検索するための検索メッセージを生成する。検索メッセージは、上述のように要求するコンテンツデータの識別情報であるコンテンツIDを宛先識別情報とし、自端末装置の識別情報である端末IDを要求元識別情報としたメッセージである。コンテンツデータ取得手段は、取得しようとするコンテンツデータのコンテンツ名称をカタログリストから取り出し、取り出したコンテンツ名称を端末IDを得るときと共通のハッシュ関数によりハッシュ化することによってコンテンツIDを決定する。なお、コンテンツ投入装置10において予めカタログリストにコンテンツデータに対応するコンテンツIDを含ませることにしてもよい。
The content data acquisition means detects the content data acquisition request operation by the user by the content data acquisition request detection means, and acquires content data to be acquired when acquiring content data from another
このようにコンテンツデータ取得手段は、決定したコンテンツID或いはカタログリストに含まれるコンテンツ名称に基づいて生成したコンテンツIDを宛先識別情報とした検索メッセージを生成する。その後、ルーティングテーブルに記憶された端末装置1の識別情報から送信先端末装置を選択して、生成した検索メッセージを送信先端末装置へ転送する。すなわち、ルーティングテーブルに記憶された端末装置1の端末IDのうち、宛先識別情報に近い端末IDを選択し、このように選択した端末IDに対応する端末装置1のIPアドレスを知り、そのIPアドレスの端末装置1に検索メッセージを送信する。
In this way, the content data acquisition unit generates a search message using the determined content ID or the content ID generated based on the content name included in the catalog list as the destination identification information. Thereafter, a destination terminal device is selected from the identification information of the
コンテンツデータ取得手段は、送信した検索メッセージに対してコンテンツ保持端末装置から送信される当該コンテンツ保持端末装置の所在情報を受信し、この情報に基づいてコンテンツ保持端末装置に対して取得要求操作に応じたコンテンツデータを要求する。この要求に応じてコンテンツ保持端末装置からコンテンツデータが配信される。コンテンツデータ取得手段は、配信されるコンテンツデータを受信し、第2記憶部104に記憶する。
The content data acquisition means receives location information of the content holding terminal device transmitted from the content holding terminal device in response to the transmitted search message, and responds to the acquisition request operation to the content holding terminal device based on this information Request content data. Content data is distributed from the content holding terminal device in response to this request. The content data acquisition unit receives the content data to be distributed and stores it in the
(登録メッセージ送信手段について)
登録メッセージ送信手段は、コンテンツ投入装置10から受信したコンテンツデータをコンテンツデータ記憶手段としての第2記憶部104に記憶したとき、或いは検索メッセージによって他の端末装置1からコンテンツデータを取得したとき、当該コンテンツデータの識別情報であるコンテンツIDを宛先識別情報とし、自端末装置の識別情報である端末ID及びIPアドレスとを含む登録メッセージを生成する。また、他のコンテンツ保持端末装置からコンテンツデータを受信したときも同様に、受信したコンテンツデータをコンテンツデータ記憶手段としての第2記憶部104に記憶し、登録メッセージを生成する。なお、端末装置1は、このようにコンテンツデータを取得したときにコンテンツ保持端末装置として機能することになる。
(Registration message transmission means)
When the registration message transmission unit stores the content data received from the
登録メッセージ送信手段は、このように生成した登録メッセージを、ルーティングテーブルに基づいて選択した送信先端末装置へ送信する。すなわち、ルーティングテーブルに記憶された端末装置1の端末IDのうち、宛先識別情報に近い端末IDを選択し、このように選択した端末IDに対応する端末装置1のIPアドレスを知り、そのIPアドレスの端末装置1に登録メッセージを送信する。
The registration message transmission means transmits the registration message generated in this way to the transmission destination terminal device selected based on the routing table. That is, the terminal ID close to the destination identification information is selected from the terminal IDs of the
(コンテンツ保持端末情報取得手段について)
コンテンツ保持端末情報取得手段は、インデックス情報の記憶処理を行うものであり、自端末装置において、受信したメッセージが登録メッセージであるとき、この登録メッセージが自端末装置宛であるか否かにかかわらず、登録メッセージに含まれるコンテンツID、コンテンツ保持端末装置の識別情報である端末IDや所在情報であるIPアドレスなどを取得する。そして、このように取得したインデックス情報をインデックステーブルに記憶する。
(About content holding terminal information acquisition means)
The content holding terminal information acquisition means performs storage processing of index information. When the received message is a registration message in the own terminal device, regardless of whether or not the registration message is addressed to the own terminal device. The content ID included in the registration message, the terminal ID that is identification information of the content holding terminal device, the IP address that is the location information, and the like are acquired. Then, the index information acquired in this way is stored in the index table.
(所在情報判断手段について)
所在情報判断手段は、ネットワーク8を介して受信したメッセージがコンテンツ保持端末装置の所在情報の通知要求である検索メッセージであるとき、要求されたコンテンツを保持するコンテンツ保持端末装置の所在情報がインデックステーブルに記憶されているか否かを判断する。例えば、図6に示すようなインデックステーブルを記憶している場合に、検索メッセージに含まれる検索対象のコンテンツIDが「3020」又は「3021」の時に、要求されたコンテンツを保持するコンテンツ保持端末装置の所在情報がインデックステーブルに記憶されていると判断し、コンテンツIDが「3020」及び「3021」以外のコンテンツを検索する検索メッセージであるとき、インデックステーブルには要求に応じたコンテンツ保持端末装置の所在情報は記憶されていないと判断する。
(About location information judgment means)
When the message received via the
(応答処理可否判定手段について)
応答処理可否判定手段は、検索メッセージに対応するコンテンツ保持端末装置の所在情報がインデックステーブルに記憶されていると所在情報判断手段が判断したとき、インデックステーブルに所在情報を記憶したコンテンツ保持端末装置の数に応じて、このメッセージを送信した端末装置がコンテンツデータを取得するための検索メッセージ応答処理を行うか否かを判定する。
(Regarding response processing availability determination means)
When the location information determining unit determines that the location information of the content holding terminal device corresponding to the search message is stored in the index table, the response processing availability determination unit is configured to store the location information in the index table. Depending on the number, it is determined whether or not the terminal device that has transmitted this message performs a search message response process for acquiring content data.
具体的には、応答処理可否判定手段は、インデックステーブルに記憶された情報に基づいて所在情報を記憶したコンテンツ保持端末装置の数を検出し、この数に応じた検索メッセージ応答処理の上限値を設定する。応答処理可否判定手段は、この上限値と後述の検索メッセージ応答処理手段による検索メッセージ応答処理の状況に応じて、メッセージを送信した端末装置がコンテンツデータを取得するための検索メッセージ応答処理を行うか否かを判定する。 Specifically, the response process availability determination unit detects the number of content holding terminal devices that store the location information based on the information stored in the index table, and sets an upper limit value of the search message response process according to this number. Set. Whether the response process availability determination unit performs the search message response process for the terminal device that transmitted the message to acquire the content data according to the upper limit value and the status of the search message response process by the search message response process unit described later Determine whether or not.
この「検索メッセージ応答処理数の上限値」として、以下のものがあり、端末装置1の制御部113は、ユーザによるリモコン106等の操作によって、いずれかを選択可能となっている。また、ユーザによる選択ではなく、コンテンツID毎にそれぞれ異なる上限値を採用するようにしてもよい。
(a)インデックステーブルに所在情報が記憶され、かつ検索メッセージの検索対象となるコンテンツ保持端末装置の数
(b)インデックステーブルに所在情報が記憶され、かつ検索メッセージの検索対象となるコンテンツ保持端末装置において同時にコンテンツデータの供給することができる数
(c)インデックステーブルに所在情報が記憶され、かつ検索メッセージの検索対象となるコンテンツ保持端末装置において所定の条件を満たすコンテンツ保持端末装置の数
ここで、上記(a)における「コンテンツ保持端末装置の数」とは、例えば、図6に示すようなインデックステーブルを保持している場合に、コンテンツID「3020」に関しては「8」となり、コンテンツID「3020」に関しては「2」となる。
The “upper limit value of the number of search message response processes” is as follows, and the
(A) Number of content holding terminal devices whose location information is stored in the index table and to be searched for search messages (b) Content holding terminal devices whose location information is stored in the index table and are to be searched for search messages (C) Number of content holding terminal devices that satisfy the predetermined condition in the content holding terminal device that is the search target of the search message, and where the location information is stored in the index table The “number of content holding terminal devices” in (a) above is “8” for the content ID “3020” when the index table as shown in FIG. "Is" 2 ".
また、上記(b)における「コンテンツ保持端末装置において同時にコンテンツデータの供給することができる数」は、コンテンツ保持端末装置から送信される登録メッセージに含まれる情報であり、各コンテンツ保持端末装置におけるコンテンツデータの供給能力の総和を意味する。コンテンツ保持端末装置から通知されるコンテンツデータ供給能力は、図10に示すように、インデックステーブルに記憶されることになる。各コンテンツ保持端末装置は、自装置がコンテンツデータを同時に供給することができる数を自装置のCPUの処理能力や通信帯域などに基づいて算出し、登録メッセージにその情報を含める。また、定期的にその情報を、登録メッセージと同様にDHTルーティングを用いて送信しており、これによりルーティングテーブルの情報の更新が行われる。 The “number of content data that can be supplied simultaneously in the content holding terminal device” in (b) is information included in the registration message transmitted from the content holding terminal device, and the content in each content holding terminal device. It means the sum of data supply capacity. The content data supply capability notified from the content holding terminal device is stored in the index table as shown in FIG. Each content holding terminal device calculates the number of content data it can supply content data at the same time based on the CPU processing capacity or communication bandwidth of its own device, and includes the information in the registration message. Further, the information is periodically transmitted using DHT routing in the same manner as the registration message, whereby the information in the routing table is updated.
インデックステーブルが図10に示すように記憶されている場合、コンテンツID「3020」に関して「コンテンツ保持端末装置において同時にコンテンツデータの供給することができる数」は「12」となり、「3021」に関しては「4」となる。 When the index table is stored as shown in FIG. 10, “the number of content data that can be supplied simultaneously in the content holding terminal device” for the content ID “3020” is “12”, and “3021” is “ 4 ".
コンテンツデータ供給能力は、CPUの処理能力等から演算するのではなく、コンテンツ保持端末装置のユーザがリモコン106等から設定することもでき、この設定情報は第1記憶部103に記憶される。
The content data supply capability is not calculated from the processing capability of the CPU or the like, but can be set by the user of the content holding terminal device from the
また、上記(c)において、「所定の条件を満たすコンテンツ保持端末装置の数」は、例えば、検索メッセージの検索対象となるコンテンツ保持端末装置の総数の60%を「コンテンツ保持端末装置の数」とすることができる。また、近接するコンテンツ保持端末装置の総数を「コンテンツ保持端末装置の数」とすることもできる。ここで、「近接する」とはネットワーク的に近接するという意味であり、例えば、メッセージ等が到達するまでに中継されるルータ装置の数などが少ないことをいう。 In (c) above, “the number of content holding terminal devices satisfying a predetermined condition” is, for example, 60% of the total number of content holding terminal devices to be searched for a search message is “number of content holding terminal devices”. It can be. In addition, the total number of content holding terminal devices in proximity can be set to “number of content holding terminal devices”. Here, “close” means close to the network, and means, for example, that the number of router devices relayed until a message arrives is small.
応答処理可否判定手段は、上記上限値と後述の検索メッセージ応答処理手段による検索メッセージ応答処理の状況に応じて、検索メッセージ応答処理の可否の判定を行うものであり、「検索メッセージ応答処理手段による検索メッセージ応答処理の状況」として、最近の検索メッセージ応答処理の数、すなわち所定期間内における検索メッセージ応答処理手段による検索メッセージ応答処理の数を検出する。 The response processing availability determination means determines whether or not the search message response processing is possible according to the above upper limit value and the status of the search message response processing by the search message response processing means described later. As the status of the search message response process, the number of recent search message response processes, that is, the number of search message response processes by the search message response processing means within a predetermined period is detected.
ここで、検索メッセージ応答処理の数の検出の基準となる「所定期間」は、インデックステーブルに所在情報を記憶したコンテンツ保持端末装置が保持するコンテンツデータのデータサイズに応じて決定される時間とする。すなわち、コンテンツデータがコンテンツ保持端末装置から送信される速度の予測値である推測送信速度を設定しておき、コンテンツデータのデータサイズをこの推測送信速度で除算することにより、上記所定期間を導く。例えば、推測送信速度が10Mbit/分に設定されている場合、データサイズが40Mbitのコンテンツデータに関する上記「所定時間」は、4分間となる。従って、インデックステーブルが図6に示すような状態であり、現日時が11月4日の11時41分00秒である場合、NO.4〜NO.8までが最近の検索メッセージ応答処理の数となる。 Here, the “predetermined period” serving as a reference for detecting the number of search message response processes is a time determined according to the data size of the content data held by the content holding terminal device that stores the location information in the index table. . That is, the estimated transmission speed that is a predicted value of the speed at which the content data is transmitted from the content holding terminal device is set, and the data period of the content data is divided by the estimated transmission speed to derive the predetermined period. For example, when the estimated transmission speed is set to 10 Mbit / min, the “predetermined time” for content data with a data size of 40 Mbit is 4 minutes. Therefore, if the index table is in the state as shown in FIG. 6 and the current date and time is 11:41:00 on November 4, NO. 4 to NO. Up to 8 is the number of recent search message response processes.
(検索メッセージ応答処理手段について)
検索メッセージ応答処理手段は、応答処理可否判定手段の判定結果に応じて、メッセージを送信した端末装置がコンテンツデータを取得するための検索メッセージ応答処理を行う。すなわち、検索メッセージ応答処理手段は、応答処理可否判定手段によって検索メッセージ応答処理を行うと判定されると、インデックステーブルからコンテンツ保持端末装置の所在情報の情報を取り出し、検索メッセージを送信したリクエスト端末装置へ通知する。一方、応答処理可否判定手段により検索メッセージ応答処理を行わないと判定されると、検索メッセージをメッセージ転送手段により転送する。
(Search message response processing means)
The search message response processing means performs search message response processing for the terminal device that has sent the message to acquire content data in accordance with the determination result of the response processing availability determination means. That is, if the search message response processing means determines that the search message response process is to be performed by the response process availability determination means, the request terminal apparatus that extracts the location information of the content holding terminal apparatus from the index table and transmits the search message To notify. On the other hand, if it is determined by the response process availability determination unit that the search message response process is not performed, the search message is transferred by the message transfer unit.
ここで、所在情報通知要求メッセージを送信するコンテンツ保持端末装置として、インデックステーブルに所在情報を記憶したコンテンツ保持端末装置のうち、所定の数のコンテンツ保持端末装置を選択する。この所定の数として、例えば5台のコンテンツ保持端末装置を選択することができるが、インデックステーブルに所在情報を記憶したコンテンツ保持端末装置の総数は当然ながら超えることができない。 Here, a predetermined number of content holding terminal devices are selected from the content holding terminal devices whose location information is stored in the index table as content holding terminal devices that transmit the location information notification request message. For example, five content holding terminal devices can be selected as the predetermined number, but the total number of content holding terminal devices whose location information is stored in the index table cannot be exceeded.
リクエスト端末装置は、このように送信されたコンテンツ保持端末装置の所在情報のうち一のコンテンツ保持端末装置を選択し、このように選択したコンテンツ保持端末装置へ接続要求を行って接続し、コンテンツデータを受信する。なお、送信されるコンテンツ保持端末装置の所在情報が複数ある場合には、その一つを選択し、コンテンツデータの送信を要求することになる。 The request terminal device selects one content holding terminal device from the location information of the content holding terminal device transmitted in this way, makes a connection request to the selected content holding terminal device, and connects to the content data. Receive. If there are a plurality of pieces of location information of the content holding terminal device to be transmitted, one of them is selected and transmission of content data is requested.
(報知手段について)
報知手段は、検索メッセージ応答処理手段により検索メッセージ応答処理が行われたとき、検索メッセージ応答処理を行った検索メッセージの宛先識別情報に応じた端末装置の所在情報をルーティングテーブルから取り出し、当該所在情報を有する端末装置1へ検索メッセージ応答処理を行った旨のメッセージである応答処理済メッセージをDHTルーティングを用いて送信する。すなわち、応答処理済メッセージの宛先識別情報を検索メッセージ応答処理に対応するコンテンツIDとし、送信先の端末装置1をルーティングテーブルに基づいて決定し、この応答処理済メッセージを送信する。
(Notification means)
When the search message response processing is performed by the search message response processing unit, the notification unit extracts the location information of the terminal device corresponding to the destination identification information of the search message subjected to the search message response processing from the routing table. A response processed message, which is a message indicating that the search message response processing has been performed, is transmitted to the
この応答処理済メッセージを受信した端末装置1は、自端末装置1の第1記憶部103に記憶したアクセス許可数を一つインクリメントする。
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
受信したメッセージが自端末装置宛であるか否かの判定は、メッセージに含まれる宛先識別情報を取り出し、第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
また、検索メッセージによって要求されたコンテンツのコンテンツ保持端末装置の所在情報がインデックステーブルに記憶されていないと所在情報判断手段が判断したとき、メッセージ宛先判定手段が受信した検索メッセージが自端末装置1宛であるか否かを判定し、自端末装置1宛でないときに受信した検索メッセージを転送する。
(コンテンツデータ再生手段について)
コンテンツデータ再生手段は、第2記憶部104のコンテンツキー記憶領域に記憶したコンテンツキーによって復号した後、デコード手段によってデコードし、ビデオチップ109及び音源チップ111を動作させることによりコンテンツデータを再生する。
Further, when the location information determination unit determines that the location information of the content holding terminal device of the content requested by the search message is not stored in the index table, the search message received by the message destination determination unit is addressed to the own
(About content data playback means)
The content data reproduction means decodes the content key stored in the content key storage area of 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
[5.コンテンツ配信システムSの動作]
以下、コンテンツ配信システムSにおける端末装置1の詳細動作について、フローチャートを用いて更に具体的に説明する。
[5. Operation of Content Distribution System S]
Hereinafter, detailed operation | movement of the
まず、端末装置1の更に具体的な動作の一例について、図11及び図12のフローチャートを参照して説明する。図11及び図12は端末装置1における処理を示すフローチャートである。なお、以下の各処理は、端末装置1の制御部113が上述した手段等として機能することによって実行されるものである。
First, an example of a more specific operation of the
まず、端末装置1の電源がONになると、端末装置1のCPU102は、第1記憶部103や第2記憶部104のアクセス許可、作業領域確保を初期化等の初期設定動作を実行し、各プログラム114〜118をCPU102による実行状態とし、制御部113としての機能を動作させる。
First, when the power of the
次に、図11に示すように、制御部113は、ユーザによるコンテンツの取得要求があったか否かを判定する(ステップS100)。この処理は、ユーザによるコンテンツデータの取得要求操作が行われたか否かによって判定するものである。
Next, as shown in FIG. 11, the
ここで、ユーザによるコンテンツの取得要求があったと判定すると(ステップS100:YES)、制御部113は、コンテンツ取得要求処理を行う(ステップS101)。このステップS101の処理は、図12におけるS120〜S128の処理であり、後述する。
If it is determined that there is a content acquisition request from the user (step S100: YES), the
一方、ユーザによるコンテンツの取得要求がないと判定すると(ステップS100:NO)、制御部113は、他の端末装置1から検索メッセージを受信したか否かを判定する(ステップS102)。
On the other hand, when determining that there is no content acquisition request from the user (step S100: NO), the
ステップS102において、検索メッセージを受信したと判定すると(ステップS102:YES)、制御部113は、コンテンツ保持端末装置を知っているか否かを判定する(ステップS103)。コンテンツ保持端末装置を知っているか否かは、自端末装置1のインデックステーブルの中に、検索メッセージの検索対象であるコンテンツ保持端末装置の所在情報が存在するか否かで判定される。すなわち、インデックステーブルに、検索メッセージに含まれるコンテンツIDに関するコンテンツ保持端末装置の所在情報があるときに、コンテンツ保持端末装置を知っていると判定し、所在情報がないときにコンテンツ保持端末装置を知らないと判定する。
If it is determined in step S102 that the search message has been received (step S102: YES), the
ステップS103において、コンテンツ保持端末装置を知っていると判定すると(ステップS103:YES)、制御部113は、最近の検索メッセージ応答処理数が検索メッセージ応答処理数の上限値よりも小さいか否かを判定する。
If it is determined in step S103 that the content holding terminal device is known (step S103: YES), the
この処理において、最近の検索メッセージ応答処理数が検索メッセージ応答処理数の上限値よりも小さいと判定すると(ステップS104:YES)、制御部113は、検索メッセージによるアクセスを許可するものとし、検索メッセージ応答処理を行う(ステップS105)。すなわち、制御部113は、インデックステーブルからコンテンツ保持端末装置の所在情報の情報を取り出し、検索メッセージを送信した端末装置へ通知する。なお、検索メッセージを送信した端末装置は、このように送信されたコンテンツ保持端末装置へ接続要求を行って接続し、コンテンツデータを受信する。
In this process, if it is determined that the number of recent search message response processes is smaller than the upper limit value of the search message response processes (step S104: YES), the
ステップS103においてコンテンツ保持端末装置を知らないと判定したとき(ステップS103:NO)、又はステップS104において最近の検索メッセージ応答処理数が検索メッセージ応答処理数の上限値以上であると判定すると(ステップS104:NO)、制御部113は処理をステップS106に移行する。
When it is determined in step S103 that the content holding terminal device is not known (step S103: NO), or when it is determined in step S104 that the number of recent search message response processes is equal to or greater than the upper limit value of the search message response processes (step S104). : NO), the
ステップS106において、制御部113は、検索メッセージのルート端末装置であるか否かを判定する。すなわち、検索メッセージが自端末装置宛であるか否かを判定する。検索メッセージが自端末装置宛であるとき(ステップS106:YES)、制御部113は、検索メッセージを送信した端末装置である送信要求元端末装置に対してアクセス不許可メッセージを送信する(ステップS107)。
In step S <b> 106, the
一方、ステップS106において、検索メッセージが自端末装置宛ではないと判定すると(ステップS106:NO)、制御部113は、検索メッセージをルート端末装置へ向けてDHTルーティングを用いて転送する(ステップS108)。
On the other hand, if it is determined in step S106 that the search message is not addressed to its own terminal device (step S106: NO), the
また、ステップS102において、検索メッセージを受信していないと判定すると(ステップS102:NO)、制御部113は、他の端末装置1からコンテンツデータの送信要求を受信したか否かを判定する(ステップS109)。
If it is determined in step S102 that a search message has not been received (step S102: NO), the
この処理において、他の端末装置1からコンテンツデータの送信要求を受信したと判定すると(ステップS109:YES)、制御部113は、送信元要求の端末装置、すなわちコンテンツデータの送信要求を行った端末装置に対して要求されたコンテンツデータを送信する(ステップS110)。
In this process, if it is determined that a content data transmission request has been received from another terminal device 1 (step S109: YES), the
ステップS105,S107,S108,S110の処理が終了したとき、或いはステップS109において、他の端末装置1からコンテンツデータの送信要求を受信しなかったと判定されたとき(ステップS109:NO)、制御部113は、自端末装置の電源がOFF(シャットダウン)状態へ移行したか否かを判定する(ステップS111)。
When the processes of steps S105, S107, S108, and S110 are completed, or when it is determined in step S109 that a content data transmission request has not been received from another terminal apparatus 1 (step S109: NO), the
ステップS111において、自端末装置の電源がOFF状態へ移行したと判定すると(ステップS111:YES)、制御部113は、メイン処理を終了し、一方、自端末装置の電源がOFF状態へ移行していないと判定すると(ステップS111:NO)、制御部113は、ステップS100からの処理を繰り返す。
If it is determined in step S111 that the power supply of the terminal device has shifted to the OFF state (step S111: YES), the
次に、S101におけるコンテンツ取得要求処理について図12のフローチャートを参照して具体的に説明する。図12は、端末装置1におけるコンテンツ取得要求処理を示すフローチャートである。
Next, the content acquisition request processing in S101 will be specifically described with reference to the flowchart of FIG. FIG. 12 is a flowchart showing content acquisition request processing in the
図12に示すように、コンテンツ取得要求処理が開始されると、制御部113は、ステップS100における取得要求操作に応じたコンテンツデータが第2記憶部104に記憶されているか否かを判定する(ステップS120)。
As shown in FIG. 12, when the content acquisition request process is started, the
この処理において、取得要求操作に応じたコンテンツデータを記憶していないと判定すると(ステップS120:NO)、制御部113は、取得要求操作に応じたコンテンツデータを取得するために、このコンテンツデータに対応するコンテンツIDを宛先識別情報とした検索メッセージをルーティングテーブルに基づいて送信する(ステップS121)。
In this process, if it is determined that the content data corresponding to the acquisition request operation is not stored (step S120: NO), the
このように送信した検索メッセージに対して、ステップS100における取得要求操作に応じたコンテンツデータのルート端末装置からアクセス不許可メッセージが送信されたか否かを判定する(ステップS122)。 In response to the search message transmitted in this way, it is determined whether or not an access disapproval message is transmitted from the content data root terminal device in response to the acquisition request operation in step S100 (step S122).
この処理において、アクセス不許可メッセージを受信するのは、ステップS100における取得要求操作に応じたコンテンツデータの全てのキャッシュ端末装置及びルート端末装置において、例えば図8に示すように、検索メッセージ応答処理数がその上限値以上となっていることを意味しており、ステップS100における取得要求操作に応じたコンテンツデータを保持するコンテンツ保持端末装置の所在情報が通知されない状況を意味する。 In this process, the access non-permission message is received in all cache terminal devices and root terminal devices of the content data corresponding to the acquisition request operation in step S100, for example, as shown in FIG. Means that the location information of the content holding terminal device holding the content data corresponding to the acquisition request operation in step S100 is not notified.
アクセス不許可メッセージが受信されない、すなわち1以上のコンテンツ保持端末装置の所在情報が通知が通知されたと判定すると(ステップS122:NO)、制御部113は、通知されたコンテンツ保持端末装置の所在情報のうち、任意の一つを選択して、コンテンツデータの送信を要求する(ステップS123)。その後、制御部113は、コンテンツ保持端末装置から送信されるコンテンツデータを受信し(ステップS124)、第2記憶部104におけるコンテンツデータ記憶領域に記憶することにより保存する(ステップS125)。
When it is determined that the access non-permission message has not been received, that is, the location information of one or more content holding terminal devices has been notified (step S122: NO), the
このようにコンテンツデータを取得すると、制御部113は、コンテンツ保持端末装置として機能し、他の端末装置から検索可能とするために、このコンテンツデータのコンテンツIDを宛先識別情報とした登録メッセージをルーティングテーブルに基づいて送信する(ステップS126)。
When the content data is acquired in this way, the
このステップS126の処理が終了したとき、又はステップS120において取得要求操作に応じたコンテンツデータが記憶していると判定(ステップS120:YES)したとき、制御部113は、第2記憶部104のコンテンツデータ記憶領域から取得要求操作に応じたコンテンツデータを取り出して、再生する(ステップS127)。
When the process of step S126 ends, or when it is determined in step S120 that content data corresponding to the acquisition request operation is stored (step S120: YES), the
また、ステップS122において、アクセス不許可メッセージを受信したと判定すると(ステップS122:YES)、制御部113は、コンテンツデータの受信失敗の旨をユーザに通知する(ステップS128)。例えば、内蔵ディスプレイ110に「コンテンツデータの受信失敗」の文字を映像として表示させる。このステップS127,S128の処理が終了すると、本コンテンツ取得要求処理を終了する。
If it is determined in step S122 that an access disapproval message has been received (step S122: YES), the
以上のように、本実施形態における端末装置1は、ネットワークを介して受信したメッセージが検索メッセージであるとき、所在情報を記憶したコンテンツ保持端末装置の数に応じて、検索メッセージ応答処理を行うか否かを判定し、この判定結果に応じて、検索メッセージ応答処理を行うようにしたので、コンテンツ保持端末装置の所在情報を検索するときに、コンテンツ保持端末装置へのアクセスを制限して、ネットワークの混雑を抑制することが可能となる。また、検索メッセージによってコンテンツデータを取得できたときにコンテンツ保持端末装置として機能するので、検索メッセージに制限をかけつつ、検索メッセージの量に応じて、コンテンツ配信システムSにおけるコンテンツ端末装置を効果的に増加させることができる。
As described above, when the message received via the network is the search message, the
また、上記実施形態においては、コンテンツ保持端末装置の所在情報を記憶している端末装置がリクエスト端末装置に対してコンテンツ保持端末装置の所在情報を通知させるようにしたが、図13に示すように、リクエスト端末装置へコンテンツ保持端末装置からコンテンツデータを配信させるためのコンテンツデータ配信要求メッセージを、コンテンツ保持端末装置の所在情報を記憶している端末装置が生成して、そのコンテンツデータ配信要求メッセージをコンテンツ保持端末装置へ送信するようにしてもよい。この場合、端末装置のフローチャートは、S105は「コンテンツデータ配信要求メッセージを生成し、コンテンツ保持端末装置へ送信」となり、S123が削除されることとなる。 Further, in the above embodiment, the terminal device storing the location information of the content holding terminal device is made to notify the location information of the content holding terminal device to the requesting terminal device, but as shown in FIG. The content data distribution request message for distributing content data from the content holding terminal device to the requesting terminal device is generated by the terminal device storing the location information of the content holding terminal device, and the content data distribution request message is generated. You may make it transmit to a content holding | maintenance terminal device. In this case, in the flowchart of the terminal device, S105 is “Generate a content data distribution request message and send it to the content holding terminal device”, and S123 is deleted.
すなわち、制御部113は、検索メッセージ応答処理手段として機能するときに、検索メッセージ応答処理を行うと判定されると、インデックステーブルに記憶したコンテンツ保持端末装置に対して、検索メッセージを送信したリクエスト端末装置に接続してコンテンツデータを配信するように要求し、一方で、検索メッセージ応答処理を行わないと判定すると、受信した検索メッセージをルーティングテーブルに基づいて転送させる。
That is, when it is determined that the search message response process is performed when the
コンテンツ保持端末装置は、コンテンツデータ配信要求メッセージを受信したとき、コンテンツデータの供給が可能か否かを判定し、コンテンツデータの供給が可能であれば、検索メッセージを送信したリクエスト端末装置へ当該コンテンツ保持端末装置の所在情報を通知する。 When the content holding terminal device receives the content data distribution request message, the content holding terminal device determines whether or not the content data can be supplied. If the content data can be supplied, the content holding terminal device transmits the content to the requesting terminal device that transmitted the search message. The location information of the holding terminal device is notified.
また、コンテンツ配信システムSの形態を、Pastry型のコンテンツ配信システムを例にして説明したが、これに限られず、メッセージの転送方法が異なるkademlia型、chord型、Viceroy型、CAN型などのコンテンツ配信システムにも本発明を適用可能である。 Further, the form of the content distribution system S has been described using the Pastry type content distribution system as an example, but the present invention is not limited to this, and content distribution such as kademlia type, chord type, Vicery type, and CAN type, which are different in message transfer methods The present invention can also be applied to a system.
また、本実施形態においては、端末装置1間でのコンテンツデータの送受信の形式をダウンロード形式として説明したがこれに限られるものではなく、ストリーミング形式であってもよい。このように端末装置1間でのコンテンツデータの送受信がストリーミング形式で行われるコンテンツ配信システムにおいても、コンテンツ配信システムSにおけるコンテンツデータの供給能力を超えてコンテンツデータ取得のためのアクセスの集中が発生することを抑制することができる。
In the present embodiment, the transmission / reception format of content data between the
S コンテンツ配信システム
1 端末装置
8 ネットワーク
10 コンテンツ投入装置
102 端末装置のCPU
103 端末装置の第1記憶部
104 端末装置の第2記憶部
113 端末装置の制御部
S
103 First Storage Unit of
Claims (12)
前記ネットワークを介して受信したメッセージが前記コンテンツデータを保持するコンテンツ保持端末装置の所在情報の登録を要求する登録メッセージであるとき、前記登録メッセージに含まれる前記コンテンツ保持端末装置の所在情報を記憶する配信元情報記憶手段と、
前記ネットワークを介して受信したメッセージが前記コンテンツデータを取得するための検索メッセージであるとき、前記配信元情報記憶手段に所在情報を記憶した前記コンテンツ保持端末装置の数に応じて、前記メッセージを送信した端末装置が前記コンテンツデータを取得する検索メッセージ応答処理を行うか否かを判定する応答処理可否判定手段と、
前記応答処理可否判定手段により前記検索メッセージ応答処理を行うと判定されると、前記検索メッセージ応答処理を行う検索メッセージ応答処理手段と、
を備えたことを特徴とする端末装置。 The terminal device in the content distribution system that transmits and receives content data between the terminal devices by an overlay network configured by a plurality of terminal devices connected to the network ,
When the message received via the network is a registration message requesting registration of location information of the content holding terminal device holding the content data, the location information of the content holding terminal device included in the registration message is stored. A distribution source information storage means;
When the message received via the network is a search message for acquiring the content data, the message is transmitted according to the number of the content holding terminal devices that store location information in the distribution source information storage means. A response process availability determination unit that determines whether the terminal device that has performed the search message response process for acquiring the content data;
When it is determined that the search message response process is performed by the response process availability determination unit, a search message response process unit that performs the search message response process;
A terminal device comprising:
前記ネットワークを介して受信したメッセージの宛先識別情報と前記ルーティングテーブルとに基づいて、前記受信したメッセージが、メッセージを受信した端末装置宛であるかを判定するメッセージ宛先判定手段と、
前記ネットワークを介して受信したメッセージが前記検索メッセージであるとき、要求されたコンテンツの前記コンテンツ保持端末装置の所在情報が前記配信元情報記憶手段に記憶されているか否かを判断する所在情報判断手段と、を備え、
前記ネットワークを介して受信したメッセージが前記登録メッセージであるとき、前記配信元情報記憶手段は、前記メッセージ宛先判定手段の判定結果にかかわらず、前記登録メッセージに含まれる前記コンテンツ保持端末装置の所在情報を記憶し、
要求されたコンテンツの前記コンテンツ保持端末装置の所在情報が前記配信元情報記憶手段に記憶されていると前記所在情報判断手段が判断したとき、前記応答処理可否判定手段が前記検索メッセージ応答処理を行うか否かを判定する
ことを特徴とする請求項1から3のいずれか1項に記載の端末装置。 Routing table storage means for storing a routing table in which identification information and location information of some terminal devices among the plurality of terminal devices are associated;
Message destination determination means for determining whether the received message is addressed to a terminal device that has received the message, based on destination identification information of the message received via the network and the routing table;
Location information determination means for determining whether or not location information of the content holding terminal device of the requested content is stored in the distribution source information storage means when the message received via the network is the search message And comprising
When the message received via the network is the registration message, the distribution source information storage means is the location information of the content holding terminal device included in the registration message regardless of the determination result of the message destination determination means. Remember
When the location information determination unit determines that the location information of the requested content holding terminal device is stored in the distribution source information storage unit, the response process availability determination unit performs the search message response process. It is determined whether it is. The terminal device of any one of Claim 1 to 3 characterized by the above-mentioned.
ことを特徴とする請求項4に記載の端末装置。 When the search message response processing is performed by the search message response processing means, the location information of the terminal device corresponding to the destination identification information of the transmission request is extracted based on the routing table, and the terminal device having the location information is extracted. The terminal device according to claim 4, further comprising notification means for transmitting information indicating that the search message response process has been performed.
前記検索メッセージにて要求されたコンテンツの前記コンテンツ保持端末装置の所在情報が前記配信元情報記憶手段に記憶されていないと前記所在情報判断手段が判断したとき、前記メッセージ宛先判定手段が、前記受信したメッセージが、メッセージを受信した端末装置宛であるか否かを判定し、メッセージを受信した端末装置宛でないとき、前記メッセージ転送手段がメッセージを転送する
ことを特徴とする請求項1から5のいずれか1項に記載の端末装置。 When it is determined by the message destination determination means that the message received via the network is not addressed to the terminal device that has received the message, the location of the transfer destination terminal device is determined based on the destination identification information of the received message. A message transfer means for extracting information from the routing table and transferring the received message to the transfer destination terminal device;
When the location information determination unit determines that the location information of the content holding terminal device of the content requested in the search message is not stored in the distribution source information storage unit, the message destination determination unit message is, it is determined whether or not addressed to the mobile station receiving the message, when it is not addressed to the mobile station receiving the message, the message transfer unit from claim 1, characterized in that to transfer the message 5 The terminal device according to any one of claims.
前記検索メッセージ応答処理を行うか否かの判定を、前記配信元情報記憶手段に所在情報を記憶した前記コンテンツ保持端末装置の数と、所定期間内に前記検索メッセージ応答処理を行った数とに基づいて行う
ことを特徴とする請求項1から6のいずれか1項に記載の端末装置。 The response process availability determination means includes:
Whether or not to perform the search message response process is determined based on the number of the content holding terminal devices that store the location information in the distribution source information storage unit and the number of the search message response process performed within a predetermined period. The terminal device according to claim 1, wherein the terminal device is performed based on the terminal device.
前記検索メッセージ応答処理を行うか否かの判定を、前記配信元情報記憶手段に所在情報を記憶した前記コンテンツ保持端末装置において同時に前記コンテンツデータを供給することができる数と、所定期間内に前記検索メッセージ応答処理を行った数とに基づいて行う
ことを特徴とする請求項1から7のいずれか1項に記載の端末装置。 The response process availability determination means includes:
The determination as to whether or not to perform the search message response process is performed based on the number of content data that can be supplied simultaneously in the content holding terminal device storing location information in the distribution source information storage means, The terminal device according to any one of claims 1 to 7, wherein the terminal device is based on a number of search message response processes.
ことを特徴とする請求項7又は請求項8に記載の端末装置。 The said predetermined period is time determined according to the data size of the content data which the said content holding terminal device which stored the location information in the said distribution source information storage means hold | maintains. The terminal device according to 8.
前記ネットワークを介して受信したメッセージが前記コンテンツデータを保持するコンテンツ保持端末装置の所在情報の登録を要求する登録メッセージであるとき、前記登録メッセージに含まれるコンテンツ保持端末装置の所在情報を記憶するステップと、 Storing the location information of the content holding terminal device included in the registration message when the message received via the network is a registration message requesting registration of location information of the content holding terminal device holding the content data; When,
前記ネットワークを介して受信したメッセージが前記コンテンツデータを取得するための検索メッセージであるとき、所在情報を記憶した前記コンテンツ保持端末装置の数に応じて、前記メッセージを送信した端末装置が前記コンテンツデータを取得する検索メッセージ応答処理を行うか否かを判定するステップと、 When the message received via the network is a search message for acquiring the content data, the terminal device that has transmitted the message according to the number of the content holding terminal devices that store location information causes the content data Determining whether to perform search message response processing to obtain
前記検索メッセージ応答処理を行うと判定されると、前記検索メッセージ応答処理を行うステップと、 If it is determined to perform the search message response process, performing the search message response process;
をコンピュータに実行させるためのプログラム。 A program that causes a computer to execute.
前記ネットワークを介して受信したメッセージが前記コンテンツデータを保持するコンテンツ保持端末装置の所在情報の登録を要求する登録メッセージであるとき、前記登録メッセージに含まれるコンテンツ保持端末装置の所在情報を記憶するステップと、
前記ネットワークを介して受信したメッセージが前記コンテンツデータを取得するための検索メッセージであるとき、所在情報を記憶した前記コンテンツ保持端末装置の数に応じて、前記メッセージを送信した端末装置が前記コンテンツデータを取得する検索メッセージ応答処理を行うか否かを判定するステップと、
前記検索メッセージ応答処理を行うと判定されると、前記検索メッセージ応答処理を行うステップと、
を有することを特徴とする端末装置の情報処理方法。 An information processing method for the terminal device in a content distribution system that transmits and receives content data between the terminal devices by an overlay network configured by a plurality of terminal devices connected to a network ,
Storing the location information of the content holding terminal device included in the registration message when the message received via the network is a registration message requesting registration of location information of the content holding terminal device holding the content data; When,
When the message received via the network is a search message for acquiring the content data, the terminal device that has transmitted the message according to the number of the content holding terminal devices that store location information causes the content data Determining whether to perform search message response processing to obtain
If it is determined to perform the search message response process, performing the search message response process;
An information processing method for a terminal device, comprising:
前記検索メッセージが、前記検索メッセージを受信した端末装置宛であると判定すると、前記検索メッセージを送信した端末装置へアクセス不許可メッセージを送信し、 When it is determined that the search message is addressed to the terminal device that has received the search message, an access non-permission message is transmitted to the terminal device that has transmitted the search message;
前記検索メッセージが、前記検索メッセージを受信した端末装置宛でないと判定すると、前記検索メッセージにより検索されたコンテンツデータを管理する端末装置へ前記検索メッセージを送信することを特徴とする請求項1に記載の端末装置。 The search message is transmitted to a terminal device that manages content data searched by the search message when it is determined that the search message is not addressed to the terminal device that has received the search message. Terminal equipment.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006270136A JP4765876B2 (en) | 2006-09-29 | 2006-09-29 | TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM |
PCT/JP2007/065725 WO2008041422A1 (en) | 2006-09-29 | 2007-08-10 | Terminal device in content distribution system, its information processing method, and recording medium containing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006270136A JP4765876B2 (en) | 2006-09-29 | 2006-09-29 | TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008092236A JP2008092236A (en) | 2008-04-17 |
JP4765876B2 true JP4765876B2 (en) | 2011-09-07 |
Family
ID=39268287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006270136A Expired - Fee Related JP4765876B2 (en) | 2006-09-29 | 2006-09-29 | TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP4765876B2 (en) |
WO (1) | WO2008041422A1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4765876B2 (en) * | 2006-09-29 | 2011-09-07 | ブラザー工業株式会社 | TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM |
JP5195794B2 (en) * | 2010-03-16 | 2013-05-15 | ブラザー工業株式会社 | Information communication system, information processing apparatus, and information communication method |
US8903906B2 (en) | 2010-03-16 | 2014-12-02 | Brother Kogyo Kabushiki Kaisha | Information communications system, node device, method of communicating contents, computer readable recording medium storing a program |
JP2015046828A (en) * | 2013-08-29 | 2015-03-12 | ブラザー工業株式会社 | Node device and program |
CA2938638C (en) | 2013-09-09 | 2020-10-06 | UnitedLex Corp. | Interactive case management system |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3806072B2 (en) * | 2002-07-26 | 2006-08-09 | 日本電信電話株式会社 | P2P network traffic control method and apparatus, program and recording medium |
JP2005346424A (en) * | 2004-06-03 | 2005-12-15 | Fujitsu Ltd | Contents communication method, contents communication permission/prohibition determining program, and contents communication system |
JP2006260430A (en) * | 2005-03-18 | 2006-09-28 | Brother Ind Ltd | Node device, node information duplicating program, duplicating node information storage program and node information duplicating method |
JP4692414B2 (en) * | 2006-06-29 | 2011-06-01 | ブラザー工業株式会社 | Communication system, content data transmission availability determination method, node device, node processing program, etc. |
JP4765876B2 (en) * | 2006-09-29 | 2011-09-07 | ブラザー工業株式会社 | TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM |
-
2006
- 2006-09-29 JP JP2006270136A patent/JP4765876B2/en not_active Expired - Fee Related
-
2007
- 2007-08-10 WO PCT/JP2007/065725 patent/WO2008041422A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2008041422A1 (en) | 2008-04-10 |
JP2008092236A (en) | 2008-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7882168B2 (en) | Contents distribution system, node apparatus and information processing method thereof, as well as recording medium on which program thereof is recorded | |
WO2008026400A1 (en) | Contents distribution system, information processing method in contents distribution system, terminal device and recording medium including its program recorded therein | |
US20080244067A1 (en) | Contents distribution system and information processing method thereof, as well as contents management apparatus and recording medium on which program thereof is recorded | |
JP4715388B2 (en) | Information distribution system, information distribution method, node apparatus included in information distribution system, and information processing program | |
JP4765876B2 (en) | TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM | |
JP2006059133A (en) | Information distribution system, node system, location information retrieval method, and location information retrieval processing program | |
JP4692278B2 (en) | Content distribution system, terminal device, information processing method thereof, and program thereof | |
JP4877107B2 (en) | Terminal device and information processing program in information distribution system, and information processing method of terminal device | |
JP2008294648A (en) | Information distributing system, terminal apparatus to be used for the same, program, and information processing method | |
JP4797679B2 (en) | CONTENT DISTRIBUTION SYSTEM, CONTENT DATA MANAGEMENT DEVICE, ITS INFORMATION PROCESSING METHOD, AND ITS PROGRAM | |
JP5168055B2 (en) | COMMUNICATION SYSTEM, TERMINAL DEVICE, AND CONTENT INFORMATION ACQUISITION METHOD | |
JP2008059398A (en) | Identification information allocation device, information processing method therefor, and program therefor | |
JP2008085678A (en) | Content distribution system, content distribution method, terminal device in the content distribution system and program thereof | |
JP2008067089A (en) | Content distribution system, terminal equipment in the system, program for the equipment, and information management method by the equipment | |
US20090319612A1 (en) | Information distribution system, terminal apparatus, distribution server and introduction server in the information distribution system, and recording medium on which program thereof is recorded | |
JP2011008657A (en) | Content distribution system, node device, content distribution method, and node program | |
JP2008210295A (en) | Content distribution system, its information processing method, content administration apparatus, and its program | |
JP5157770B2 (en) | Node device, program, and storage instruction method | |
JP2008242990A (en) | Information communication system, terminal apparatus included therein, information processing method, and program therefor | |
JP4983183B2 (en) | Node device, information division storage system, information processing program, and information utilization method | |
JP5287059B2 (en) | Node device, node processing program, and storage instruction method | |
JP2008084030A (en) | Identification information assigning device, its information processing method, and program therefor | |
JP5347876B2 (en) | Information communication system, node device, content acquisition method, and program | |
JP5195794B2 (en) | Information communication system, information processing apparatus, and information communication method | |
JP2008181408A (en) | Communication system, operation control method, node device, and node processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090402 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20110118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110318 |
|
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: 20110517 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110530 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4765876 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140624 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |