JP2011008709A - Information processing apparatus, content distributing system, method of controlling content distribution, and program - Google Patents

Information processing apparatus, content distributing system, method of controlling content distribution, and program Download PDF

Info

Publication number
JP2011008709A
JP2011008709A JP2009154082A JP2009154082A JP2011008709A JP 2011008709 A JP2011008709 A JP 2011008709A JP 2009154082 A JP2009154082 A JP 2009154082A JP 2009154082 A JP2009154082 A JP 2009154082A JP 2011008709 A JP2011008709 A JP 2011008709A
Authority
JP
Japan
Prior art keywords
terminal devices
content data
terminal device
information processing
processing means
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2009154082A
Other languages
Japanese (ja)
Inventor
Tadashi Hirano
正 平野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2009154082A priority Critical patent/JP2011008709A/en
Publication of JP2011008709A publication Critical patent/JP2011008709A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To distribute content data even if the state of terminal devices changes.SOLUTION: A content distribution system has a P2P distribution mode in which a plurality of terminal devices 2 are interconnected via a network so that the terminal devices 2 send and receive content data to and from each other, and a C/S distribution mode in which a storage device storing the content data is connected via a network 8 to each of the plurality of terminal devices 2 by a client-server method to distribute the content data to each of the terminal devices 2. Then, whether or not predetermined requirements for distributing the content data between the terminal devices 2 are met is determined, to switch between the P2P distribution mode and the C/S distribution mode according to the state of the terminal devices 2.

Description

本発明は、情報処理装置、コンテンツ配信システム、コンテンツ配信制御方法及びプログラムの技術に関する。   The present invention relates to an information processing apparatus, a content distribution system, a content distribution control method, and a program technology.

近年、インターネットなどのネットワーク(通信網)の普及により、ネットワークを介して、音楽、映画、トーク番組などコンテンツのデータ(以下、「コンテンツデータ」という)の配信が行われている。   In recent years, with the spread of networks such as the Internet (communication networks), content data (hereinafter referred to as “content data”) such as music, movies, and talk programs has been distributed via the network.

コンテンツデータの配信には、例えば、VOD(ビデオオンデマンド)方式や放送(ライブ中継)方式などがある。VOD方式は、端末装置から要求がある毎にコンテンツデータを配信する方式である。放送方式は、同時刻に複数の端末装置にコンテンツデータを配信する方式である。   Distribution of content data includes, for example, a VOD (video on demand) system and a broadcast (live relay) system. The VOD method is a method for distributing content data every time a request is made from a terminal device. The broadcast method is a method of distributing content data to a plurality of terminal devices at the same time.

現在、コンテンツデータの配信形態として、クライアント−サーバ方式によりコンテンツデータの配信を行う形態が主流である。   Currently, as a content data distribution form, a form in which content data is distributed by a client-server system is the mainstream.

しかしながら、クライアント−サーバ方式では、アクセスが集中するとサーバやネットワークが負荷に耐えられなくなるという問題がある。そこで、クライアント−サーバ方式に代わる新しい形態としてP2P(Peer to Peer)を用いた放送型の配信方式(例えば、特許文献1参照)やオンデマンド型の配信方式(例えば、特許文献2参照)が注目されている。   However, the client-server system has a problem that if access is concentrated, the server and the network cannot withstand the load. Therefore, as a new form replacing the client-server system, a broadcast-type distribution system using P2P (Peer to Peer) (for example, see Patent Document 1) and an on-demand type distribution system (for example, see Patent Document 2) are attracting attention. Has been.

特開2006−197400号公報JP 2006-197400 A 特開2006−33514号公報JP 2006-33514 A

P2P方式の配信方式は、参加している一部の端末装置へサーバからコンテンツデータを送信して記憶させれば、その後は端末装置同士でコンテンツデータの送受信を行える。そのため、参加する端末装置が多ければ多いほどクライアント−サーバ方式に比べて負荷分散の効果が顕著になる。   In the P2P distribution method, if content data is transmitted from a server to a part of participating terminal devices and stored, then the content data can be transmitted and received between the terminal devices. Therefore, the more terminal devices that participate, the more prominent the load balancing effect compared to the client-server method.

しかし、一方で、参加する端末装置の状態によってはP2Pの効果を発揮できず、コンテンツ配信サービスの運用に困難が生じるケースがある。   However, on the other hand, there are cases where the P2P effect cannot be exhibited depending on the state of the participating terminal devices, and the operation of the content distribution service becomes difficult.

例えば、特許文献1に記載されているツリー型トポロジーによる配信方式では、ADSL(Asymmetric Digital Subscriber Line、非対称デジタル加入者線)に接続された端末装置ばかりが参加していると、上りの帯域が狭い端末装置ばかりということになる。よって、動画などのコンテンツデータのように高い通信速度が要求される場合には、ツリー型トポロジーを構成することが難しくなる。   For example, in the distribution method based on the tree-type topology described in Patent Document 1, if only terminal devices connected to ADSL (Asymmetric Digital Subscriber Line) are participating, the upstream bandwidth is narrow. That means only terminal devices. Therefore, when a high communication speed is required like content data such as a moving image, it is difficult to configure a tree topology.

また、特許文献2に記載されている配信方式でも、公開するコンテンツデータが端末装置に十分に行き渡るまでに多数の端末装置からコンテンツデータの取得要求が実行される場合がある。この場合、P2Pの機能が十分に働かず、要求したコンテンツデータを取得できない端末装置がでてしまう。   Further, even in the distribution method described in Patent Document 2, there are cases where content data acquisition requests are executed from a large number of terminal devices before the content data to be disclosed is sufficiently distributed to the terminal devices. In this case, the P2P function does not work sufficiently, and there are terminal devices that cannot acquire the requested content data.

そこで、本発明は、コンテンツ配信サービスに参加する端末装置の数や各々の通信能力に応じて、コンテンツデータを配信する方法を切り替えて、コンテンツデータの配信を可能とする情報処理装置、コンテンツ配信システム、コンテンツ配信制御方法及びプログラムを提供することを目的とする。   Therefore, the present invention provides an information processing apparatus and a content distribution system that enable distribution of content data by switching the method of distributing content data in accordance with the number of terminal devices participating in the content distribution service and the respective communication capabilities. An object of the present invention is to provide a content distribution control method and program.

請求項1に記載の発明は、複数の端末装置同士をネットワークを介して接続させて、コンテンツデータを前記端末装置間で送受信させる第1処理手段と、前記コンテンツデータを記憶した記憶装置を前記複数の端末装置のそれぞれと前記ネットワークを介してクライアント−サーバ形式で接続して、各前記端末装置に前記コンテンツデータを配信させる第2処理手段と、前記端末装置間で前記コンテンツデータの配信を行うための所定条件を満たすか否かを判定する判定処理手段と、を備え、前記判定処理手段により前記所定条件を満たすと判定したとき、前記第1処理手段による処理を実行し、前記判定処理手段により前記所定条件を満たさないと判定したとき、前記第2処理手段による処理を実行することを特徴とする情報処理装置とした。   According to the first aspect of the present invention, a plurality of terminal devices are connected to each other via a network so that content data is transmitted and received between the terminal devices, and a plurality of storage devices storing the content data are provided. A second processing means for connecting each of the terminal devices in a client-server format via the network and distributing the content data to each of the terminal devices, and for distributing the content data between the terminal devices Determination processing means for determining whether or not the predetermined condition is satisfied, and when the determination processing means determines that the predetermined condition is satisfied, the processing by the first processing means is executed, and the determination processing means When it is determined that the predetermined condition is not satisfied, the processing by the second processing unit is executed. .

また、請求項2に記載の発明は、請求項1に記載の情報処理装置において、前記判定処理手段は、前記複数の端末装置のうち通信速度が規定値以上である端末装置の割合が所定以上であるときに、前記所定条件を満たすと判定することを特徴とする。   The information processing apparatus according to claim 1 is the information processing apparatus according to claim 1, wherein the determination processing unit has a ratio of terminal devices having a communication speed equal to or higher than a predetermined value among the plurality of terminal devices. In this case, it is determined that the predetermined condition is satisfied.

また、請求項3に記載の発明は、請求項1又は2に記載の情報処理装置において、前記判定処理手段は、前記複数の端末装置のうち通信速度が規定値以上である端末装置の数が所定以上あるときに、前記所定条件を満たすと判定することを特徴とする。   The invention according to claim 3 is the information processing apparatus according to claim 1 or 2, wherein the determination processing means includes a number of terminal devices having a communication speed equal to or higher than a specified value among the plurality of terminal devices. When there is a predetermined value or more, it is determined that the predetermined condition is satisfied.

また、請求項4に記載の発明は、請求項1に記載の情報処理装置において、前記判定処理手段は、前記複数の端末装置の数が、所定数以上になったときに、前記所定条件を満たすと判定することを特徴とする。   According to a fourth aspect of the present invention, in the information processing apparatus according to the first aspect, the determination processing means sets the predetermined condition when the number of the plurality of terminal devices is equal to or greater than a predetermined number. It is determined to satisfy.

また、請求項5に記載の発明は、請求項1〜4のいずれか1項に記載の情報処理装置において、前記第1処理手段は、前記複数の端末装置をネットワークを介して階層構造で多層に論理接続させて、コンテンツデータを前記階層構造の上流の端末装置に供給し、当該上流の端末装置から下流の端末装置にかけて前記端末装置の中継機能によって前記コンテンツデータの配信を行い、前記第2処理手段による処理を実行した後に前記階層構造を形成するときには、前記通信速度が規定値以上である端末装置を優先的に前記階層構造の上流に接続させることを特徴とする。   The invention according to claim 5 is the information processing apparatus according to any one of claims 1 to 4, wherein the first processing means includes a plurality of terminal devices arranged in a hierarchical structure via a network. The content data is supplied to the upstream terminal device of the hierarchical structure, the content data is distributed from the upstream terminal device to the downstream terminal device by the relay function of the terminal device, and the second When the hierarchical structure is formed after the processing by the processing means is performed, a terminal device having a communication speed equal to or higher than a specified value is preferentially connected upstream of the hierarchical structure.

また、請求項6に記載の発明は、請求項5に記載の情報処理装置において、前記第2処理手段は、前記第1処理手段による処理を実行した後に前記複数の端末装置のそれぞれと接続するときには、前記階層構造の下流の端末装置から優先的に前記階層構造から離脱させて接続することを特徴とする。   According to a sixth aspect of the present invention, in the information processing apparatus according to the fifth aspect, the second processing unit connects to each of the plurality of terminal devices after executing the processing by the first processing unit. In some cases, the terminal device is preferentially disconnected from the hierarchical structure and connected to a terminal device downstream of the hierarchical structure.

また、請求項7に記載の発明は、複数の端末装置と、前記複数の端末装置へコンテンツデータを配信する情報処理装置と、を備えたコンテンツ配信システムにおいて、前記端末装置は、前記コンテンツデータをネットワークを介して受信する受信処理手段と、前記受信処理手段で受信したコンテンツデータをネットワークを介して他の端末装置へ送信する送信処理手段と、を備え、前記情報処理装置は、複数の端末装置同士をネットワークを介して接続させて、コンテンツデータを前記端末装置間で送受信させる第1処理手段と、前記コンテンツデータを記憶した記憶装置を前記複数の端末装置のそれぞれと前記ネットワークを介してクライアント−サーバ形式で接続して、各前記端末装置に前記コンテンツデータを配信させる第2処理手段と、前記端末装置間で前記コンテンツデータの配信を行うための所定条件を満たすか否かを判定する判定処理手段と、を備え、前記判定処理手段により前記所定条件を満たすと判定したとき、前記第1処理手段による処理を実行し、前記判定処理手段により前記所定条件を満たさないと判定したとき、前記第2処理手段による処理を実行することを特徴とするコンテンツ配信システムとした。   The invention according to claim 7 is a content distribution system comprising a plurality of terminal devices and an information processing device for distributing content data to the plurality of terminal devices, wherein the terminal device stores the content data Receiving processing means for receiving via a network, and transmission processing means for transmitting content data received by the receiving processing means to another terminal device via the network, wherein the information processing device comprises a plurality of terminal devices A first processing means for connecting each other via a network and transmitting / receiving content data between the terminal devices; and a storage device storing the content data for each of the plurality of terminal devices and the client via the network Second processing means for connecting in a server format and distributing the content data to each of the terminal devices Determination processing means for determining whether or not a predetermined condition for distributing the content data between the terminal devices is satisfied, and when the determination processing means determines that the predetermined condition is satisfied, The content distribution system is characterized in that the processing by the first processing means is executed, and the processing by the second processing means is executed when the determination processing means determines that the predetermined condition is not satisfied.

また、請求項8に記載の発明は、端末装置間でコンテンツデータの配信を行うための所定条件を満たすか否かを判定するステップと、前記所定条件を満たすと判定すると、複数の端末装置同士をネットワークを介して接続させて、コンテンツデータを前記端末装置間で送受信させるステップと、前記所定条件を満たさないと判定すると、前記コンテンツデータを記憶した記憶装置を前記複数の端末装置のそれぞれと前記ネットワークを介してクライアント−サーバ形式で接続して、各前記端末装置に前記コンテンツデータを配信させるステップと、をコンピュータに実行させることを特徴とするプログラムとした。   The invention according to claim 8 determines whether or not a predetermined condition for distributing content data between terminal apparatuses is satisfied, and determines that the predetermined condition is satisfied. Are connected via a network to transmit / receive content data between the terminal devices, and determining that the predetermined condition is not satisfied, a storage device storing the content data is connected to each of the plurality of terminal devices A program that connects in a client-server format via a network and causes the terminal device to distribute the content data is executed by a computer.

また、請求項9に記載の発明は、端末装置間でコンテンツデータの配信を行うための所定条件を満たすか否かを判定するステップと、前記所定条件を満たすと判定すると、複数の端末装置同士をネットワークを介して接続させて、コンテンツデータを前記端末装置間で送受信させるステップと、前記所定条件を満たさないと判定すると、前記コンテンツデータを記憶した記憶装置を前記複数の端末装置のそれぞれと前記ネットワークを介してクライアント−サーバ形式で接続して、各前記端末装置に前記コンテンツデータを配信させるステップと、を有する情報処理装置によるコンテンツ配信制御方法とした。   The invention described in claim 9 determines whether or not a predetermined condition for distributing content data between terminal devices is satisfied, and determines that the predetermined condition is satisfied. Are connected via a network to transmit / receive content data between the terminal devices, and determining that the predetermined condition is not satisfied, a storage device storing the content data is connected to each of the plurality of terminal devices A content distribution control method by an information processing apparatus, comprising: connecting in a client-server format via a network; and distributing the content data to each of the terminal devices.

本発明によれば、コンテンツ配信サービスに参加する端末装置の数や各々の通信能力等の端末装置の状態に応じて、ツリー型トポロジーでのコンテンツデータの配信とクライアント−サーバ方式でのコンテンツデータの配信とが切り替えられる。そのため、端末装置の状態が変化する場合においてもコンテンツデータの配信を行うことができる。   According to the present invention, distribution of content data in a tree topology and content data in a client-server system according to the state of the terminal device such as the number of terminal devices participating in the content distribution service and the respective communication capabilities. Distribution can be switched. Therefore, content data can be distributed even when the state of the terminal device changes.

本発明の第1実施形態に係るコンテンツ配信システムの各端末装置、情報処理装置の接続態様の一例を示す図である。It is a figure which shows an example of the connection aspect of each terminal device and information processing apparatus of the content delivery system which concerns on 1st Embodiment of this invention. 第1実施形態におけるコンテンツ配信システムの概要説明図である。It is an outline explanatory view of a contents distribution system in a 1st embodiment. 図1に示す情報処理装置の構成図である。It is a block diagram of the information processing apparatus shown in FIG. 図1に示す情報処理装置のメイン処理フローチャートである。3 is a main process flowchart of the information processing apparatus illustrated in FIG. 1. 図1に示す情報処理装置における配信処理のフローチャートである。It is a flowchart of the delivery process in the information processing apparatus shown in FIG. 図1に示す情報処理装置における接続処理のフローチャートである。It is a flowchart of the connection process in the information processing apparatus shown in FIG. 図1に示す情報処理装置における離脱処理のフローチャートである。It is a flowchart of the leaving process in the information processing apparatus shown in FIG. 図1に示す端末装置の構成図である。It is a block diagram of the terminal device shown in FIG. 図1に示す端末装置の処理フローチャートである。It is a process flowchart of the terminal device shown in FIG. 第2実施形態における情報処理装置のメイン処理フローチャートである。It is a main process flowchart of the information processing apparatus in 2nd Embodiment. 第2実施形態における端末装置のメイン処理のフローチャートである。It is a flowchart of the main process of the terminal device in 2nd Embodiment.

以下、本発明のいくつかの実施形態を図面に基づいて説明する。なお、説明は以下の順序で行うものとする。
1.第1実施形態(放送方式のP2Pコンテンツ配信)
2.第2実施形態(オンデマンド方式のP2Pコンテンツ配信)
3.その他の例
Several embodiments of the present invention will be described below with reference to the drawings. The description will be made in the following order.
1. First Embodiment (Broadcast P2P Content Distribution)
2. Second embodiment (on-demand P2P content distribution)
3. Other examples

〔1.第1実施形態〕
〔1.1.概要〕
まず始めに、図1を参照して、第1実施形態におけるコンテンツ配信システムの概要について説明する。
[1. First Embodiment]
[1.1. Overview〕
First, the outline of the content distribution system in the first embodiment will be described with reference to FIG.

図1の下部枠51内に示すように、IX(Internet eXchange)3、ISP(Internet Service Provider)4、DSL(Digital Subscriber Line)回線事業者の装置5、FTTH(Fiber To The Home)回線事業者の装置6、及び通信回線7等によって、インターネット等のネットワーク(現実世界のネットワーク)8が構築されている。通信回線7として、例えば、ADSL回線や光通信回線等がある。   As shown in the lower frame 51 of FIG. 1, IX (Internet eXchange) 3, ISP (Internet Service Provider) 4, DSL (Digital Subscriber Line) line provider apparatus 5, FTTH (Fiber To The Home) line provider The network 6 (real world network) 8 such as the Internet is constructed by the apparatus 6 and the communication line 7. Examples of the communication line 7 include an ADSL line and an optical communication line.

本実施形態のコンテンツ配信システムSは、図1の上部枠50内に示すように、ネットワーク8に接続された情報処理装置1、複数の端末装置2a1,2a2,2b1〜2b4,2c1〜2c8を備えて構成される。なお、以下においては、端末装置2a1,2a2,2b1〜2b4,2c1〜2c8のいずれかの端末装置又は全ての端末装置を示す場合には、便宜上、端末装置2という場合がある。   As shown in the upper frame 50 of FIG. 1, the content distribution system S of the present embodiment includes an information processing device 1 connected to a network 8 and a plurality of terminal devices 2a1, 2a2, 2b1-2b4, 2c1-2c8. Configured. In the following description, when any one of the terminal devices 2a1, 2a2, 2b1 to 2b4, 2c1 to 2c8 or all the terminal devices are shown, the terminal device 2 may be referred to for convenience.

このコンテンツ配信システムSにおいては、図1の上部枠50内に示すように、情報処理装置1、端末装置2a1,2a2,2b1〜2b4,2c1〜2c8がツリー状階層構造で論理接続されてオーバーレイネットワーク9が構築される。なお、以下において、オーバーレイネットワーク9上に配置された端末装置2を、コンテンツ配信システムSに参加している端末装置2という。また、情報処理装置1、端末装置2a1,2a2,2b1〜2b4,2c1〜2c8には、各装置を識別する情報として、例えば、IP(Internet Protocol)アドレスが割り当てられている。各装置は、目的の接続先装置のIPアドレスを宛先IPアドレス、自装置のIPアドレスを送信元IPアドレスとしたヘッダを含むパケットを送受信することによって他の装置と通信接続が可能となっている。   In this content distribution system S, as shown in the upper frame 50 of FIG. 1, the information processing apparatus 1 and the terminal apparatuses 2a1, 2a2, 2b1-2b4, 2c1-2c8 are logically connected in a tree-like hierarchical structure to form an overlay network. 9 is built. Hereinafter, the terminal device 2 arranged on the overlay network 9 is referred to as a terminal device 2 participating in the content distribution system S. For example, an IP (Internet Protocol) address is assigned to the information processing device 1 and the terminal devices 2a1, 2a2, 2b1-2b4, 2c1-2c8 as information for identifying each device. Each device can communicate with other devices by transmitting and receiving packets including a header with the destination IP address of the target connection destination device as the destination IP address and the IP address of the own device as the source IP address. .

コンテンツ配信システムSは、ツリー型トポロジー形式の配信システムである。情報処理装置1を頂点として複数の端末装置2がネットワーク8を介してツリー状階層構造で多層に論理接続されるように情報処理装置1によって管理される。第1実施形態では、放送方式で各端末装置2へコンテンツデータが配信される。コンテンツデータとして、例えば、音楽や映画などの動画コンテンツのデータや文書データなどがある。   The content distribution system S is a tree-type topology distribution system. A plurality of terminal devices 2 are managed by the information processing device 1 so as to be logically connected in multiple layers in a tree-like hierarchical structure via the network 8 with the information processing device 1 as a vertex. In the first embodiment, content data is distributed to each terminal device 2 by a broadcast method. Examples of content data include video content data such as music and movies, document data, and the like.

また、情報処理装置1は、コンテンツデータを配信する機能を備えており、コンテンツデータを端末装置2a1,2a2へ送信する。端末装置2a1,2a2は上流に接続した情報処理装置1からコンテンツデータを受信すると、下流に接続した端末装置(以下、「下流装置」とも呼ぶ。)2b1〜2b4へ受信したコンテンツデータを中継する。同様に、端末装置2b1〜2b4は上流に接続した端末装置(以下、「上流装置」とも呼ぶ)2a1,2a2からコンテンツデータを受信すると、下流に接続した端末装置2c1〜2c8へ受信したコンテンツデータを送信する。   The information processing apparatus 1 has a function of distributing content data, and transmits the content data to the terminal devices 2a1 and 2a2. When the terminal devices 2a1 and 2a2 receive content data from the information processing device 1 connected upstream, the terminal devices 2a1 and 2a2 relay the received content data to terminal devices (hereinafter also referred to as “downstream devices”) 2b1 to 2b4 connected downstream. Similarly, when the terminal devices 2b1 to 2b4 receive the content data from the terminal devices (hereinafter also referred to as “upstream devices”) 2a1 and 2a2 connected upstream, the content data received to the terminal devices 2c1 to 2c8 connected downstream is received. Send.

上述のようにツリー状階層構造は、情報処理装置1によって管理されている。情報処理装置1は、コンテンツ配信システムSに参加していない端末装置2、換言すればツリー状階層構造へ接続していない端末装置2から接続先候補の問い合わせを受け付ける。接続先候補の問い合わせを受け付けた情報処理装置1は、ツリー状階層構造の状態から当該ツリー状階層構造を構成する端末装置2のうち接続先候補となる端末装置2をいくつか決定する。そして、情報処理装置1は、上記問い合わせを行った端末装置2へ決定した接続先候補を通知する。このように情報処理装置1から複数の接続先候補を受信した端末装置2は、これらの接続先候補のうち一の接続先候補を選択する。そして、接続先候補を受信した端末装置2は、接続先候補として選択した端末装置2へネットワーク8を介して接続要求を行って、接続先候補として選択した端末装置2を上流装置としてツリー状階層構造に接続して参加する。   As described above, the tree-like hierarchical structure is managed by the information processing apparatus 1. The information processing apparatus 1 receives an inquiry about a connection destination candidate from the terminal apparatus 2 that does not participate in the content distribution system S, in other words, from the terminal apparatus 2 that is not connected to the tree-like hierarchical structure. The information processing apparatus 1 that has received the inquiry about the connection destination candidate determines several terminal devices 2 that are connection destination candidates from the terminal devices 2 that constitute the tree-like hierarchical structure from the state of the tree-like hierarchical structure. Then, the information processing apparatus 1 notifies the determined connection destination candidate to the terminal apparatus 2 that has made the inquiry. In this way, the terminal device 2 that has received a plurality of connection destination candidates from the information processing apparatus 1 selects one connection destination candidate from among these connection destination candidates. Then, the terminal device 2 that has received the connection destination candidate makes a connection request to the terminal device 2 selected as the connection destination candidate via the network 8, and uses the terminal device 2 selected as the connection destination candidate as an upstream device in a tree-like hierarchy. Connect and join the structure.

なお、本実施形態では、一つの端末装置2の下流に最大2つの端末装置2が接続されるものとして説明するが、これに限られない。一つの端末装置2の下流に3つ以上の端末装置2を接続することができるようにしてもよい。また、情報処理装置1は物理的に一体的に形成された装置である必要はなく、例えば、コンテンツ配信処理を行う装置とツリー状階層構造の管理処理とを行う装置とにより構成することもできる。   In the present embodiment, a description will be given assuming that a maximum of two terminal devices 2 are connected downstream of one terminal device 2, but the present invention is not limited to this. Three or more terminal devices 2 may be connected downstream of one terminal device 2. Further, the information processing apparatus 1 does not have to be a physically integrated apparatus, and may be configured by, for example, an apparatus that performs content distribution processing and an apparatus that performs management processing of a tree-like hierarchical structure. .

ところで、各端末装置2は、通信回線に接続されて、ツリー状階層構造を構成する。従って、接続される通信回線の帯域幅によってはコンテンツデータの配信に支障を来すことがある。   By the way, each terminal device 2 is connected to a communication line to form a tree-like hierarchical structure. Therefore, depending on the bandwidth of the connected communication line, content data distribution may be hindered.

例えば、図1に示す端末装置2c1,2c3〜3c8のように、上りの帯域が狭いADSLのような通信回線に接続されていると、上流の端末装置2から順次受信したコンテンツデータを下流装置に送信することが困難となる場合がある。例えば、接続されたADSL回線が、ITU−TS(国際電気通信連合電気通信標準化部門)勧告のG.992規格に準拠して、上りの帯域が最大8Mbps、下り帯域が最大640kbpsの場合に、1Mbpsでコンテンツデータが配信されると、上流装置からの受信は問題なく行えるものの、下流装置への送信は滞ってしまうことになる。   For example, when connected to a communication line such as ADSL with a narrow upstream band like the terminal devices 2c1, 2c3 to 3c8 shown in FIG. 1, the content data sequentially received from the upstream terminal device 2 is sent to the downstream device. It may be difficult to send. For example, the connected ADSL line is ITU-TS (International Telecommunication Union Telecommunication Standardization Sector) recommendation G.264. In accordance with the 992 standard, when content data is distributed at 1 Mbps when the upstream bandwidth is a maximum of 8 Mbps and the downstream bandwidth is a maximum of 640 kbps, reception from the upstream device can be performed without any problem, but transmission to the downstream device is possible. It will be delayed.

そこで、情報処理装置1によって、帯域が広い光通信回線に接続されて通信速度が速い端末装置2a1,2a2,2b1〜2b4をツリー状階層構造の上流側になるように配置し、上りの帯域が狭く、上りの通信速度が遅いADSLに接続された端末装置2c1,2c3〜2c7をツリー状階層構造の下流側になるように配置するようにその接続を管理するようにしている。通信速度が低い端末装置を中継能力が低い端末装置として、下位階層に配置する技術については、例えば、特開2003−169089号公報等で公知であるので、詳細な説明は省略する。   Therefore, the information processing device 1 arranges the terminal devices 2a1, 2a2, 2b1 to 2b4, which are connected to the optical communication line having a wide bandwidth and have a high communication speed, on the upstream side of the tree-like hierarchical structure, and the upstream bandwidth is The connection is managed so that the terminal devices 2c1, 2c3 to 2c7 connected to the ADSL which is narrow and has a slow uplink communication speed are arranged on the downstream side of the tree-like hierarchical structure. Since a technique for arranging a terminal device having a low communication speed as a terminal device having a low relay capability in a lower hierarchy is known in, for example, Japanese Patent Laid-Open No. 2003-169089, detailed description thereof is omitted.

しかし、コンテンツ配信システムSに参加している端末装置2に対してADSLに接続された端末装置2が多いような場合がある。この場合、情報処理装置1でツリー状階層構造の構成を管理したとしても、上流側にADSLに接続された端末装置2が配置されることがあり、コンテンツデータの配信に遅延が生じる場合がある。   However, there are cases where there are many terminal devices 2 connected to the ADSL with respect to the terminal devices 2 participating in the content distribution system S. In this case, even if the information processing device 1 manages the configuration of the tree-like hierarchical structure, the terminal device 2 connected to the ADSL may be arranged on the upstream side, and content data distribution may be delayed. .

そこで、本実施形態のコンテンツ配信システムSにおいては、このような場合には、ツリー状階層構造を構成することなく、情報処理装置1と複数の端末装置2のそれぞれとをネットワーク8を介してクライアント−サーバ形式で接続している。そして、クライアントサーバ形式で情報処理装置1から各端末装置2にコンテンツデータが配信される。   Therefore, in such a case, in the content distribution system S of the present embodiment, the information processing device 1 and each of the plurality of terminal devices 2 are connected to the client via the network 8 without forming a tree-like hierarchical structure. -Connected in server format. Then, the content data is distributed from the information processing device 1 to each terminal device 2 in the client server format.

すなわち、ツリー状階層構造を構成してコンテンツデータの配信を行える場合には、情報処理装置1は複数の端末装置2をネットワーク8を介してツリー状階層構造で多層に論理接続させる。そして、情報処理装置1は、コンテンツデータをツリー状階層構造の上流の端末装置2に供給して、当該上流の端末装置2から下流の端末装置2にかけて端末装置2の中継機能によってコンテンツデータを配信させる。一方、ツリー状階層構造を構成してコンテンツデータの配信を行えない場合には、情報処理装置1は複数の端末装置2のそれぞれとネットワーク8を介してクライアント−サーバ形式で接続する。これにより、クライアント−サーバ形式によって各端末装置2にコンテンツデータが配信される。   In other words, when the content data can be distributed by configuring a tree-like hierarchical structure, the information processing apparatus 1 logically connects a plurality of terminal devices 2 in a tree-like hierarchical structure via the network 8. Then, the information processing device 1 supplies the content data to the upstream terminal device 2 in the tree-like hierarchical structure, and distributes the content data from the upstream terminal device 2 to the downstream terminal device 2 by the relay function of the terminal device 2. Let On the other hand, if the tree-like hierarchical structure is configured and content data cannot be distributed, the information processing apparatus 1 is connected to each of the plurality of terminal apparatuses 2 via the network 8 in a client-server format. As a result, the content data is distributed to each terminal device 2 in the client-server format.

このように参加する端末装置2の状態に応じて、ツリー状階層構造によるP2P方式によるコンテンツデータの配信モード(以下、「P2P型配信モード」とする)とクライアント−サーバ方式によるコンテンツデータの配信モード(以下、「C/S型配信モード」とする)とが切り替えられる。このように切り替えられることで、参加する端末装置2の状態が変化する場合においてもコンテンツデータの配信を行うことができる。   In accordance with the state of the terminal device 2 that participates in this way, the content data distribution mode (hereinafter referred to as “P2P type distribution mode”) based on the P2P method based on the tree-like hierarchical structure and the content data distribution mode based on the client-server method (Hereinafter referred to as “C / S type delivery mode”). By switching in this way, content data can be distributed even when the state of the participating terminal device 2 changes.

P2P型配信モードとC/S型配信モードとは、例えば、各端末装置2の参加及び離脱のタイミング、または、コンテンツデータの配信が開始されるタイミングで切り替えられる。具体的には、端末装置2の状態に基づいて、ツリー状階層構造を形成してコンテンツデータの配信をするための条件を満たすか否かが判定される。その具体的条件は、例えば、以下の(条件1),(条件2)のいずれか又はいずれも適用することができる。
(条件1)コンテンツ配信システムSに参加している複数の端末装置2のうち通信速度(帯域幅)が規定値以上である端末装置2の割合が所定以上であること。
(条件2)コンテンツ配信システムSに参加している複数の端末装置2の数が、所定数以上であること。
The P2P type delivery mode and the C / S type delivery mode are switched, for example, at the timing of joining and leaving each terminal device 2 or the timing at which delivery of content data is started. Specifically, based on the state of the terminal device 2, it is determined whether or not a condition for distributing content data by forming a tree-like hierarchical structure is satisfied. As the specific condition, for example, any one or both of the following (Condition 1) and (Condition 2) can be applied.
(Condition 1) The ratio of the terminal devices 2 whose communication speed (bandwidth) is equal to or greater than a predetermined value among the plurality of terminal devices 2 participating in the content distribution system S is a predetermined value or more.
(Condition 2) The number of the plurality of terminal devices 2 participating in the content distribution system S is a predetermined number or more.

ここで、上記規定値は、コンテンツデータの配信速度よりも速い通信速度である。下りの通信速度(受信速度)はコンテンツデータを遅延なく受信することができる通信速度である。上りの通信速度(送信速度)は下流に最大数の端末装置2(ここでは2つの端末装置2)にコンテンツデータを遅延なく配信することができる通信速度である。例えば、コンテンツデータの配信速度が1Mbpsの場合、下りの通信速度は1Mbps以上で、望ましくは2Mbps以上、上りの通信速度は2Mbps以上で、望ましくは4Mbps以上である。   Here, the specified value is a communication speed faster than the distribution speed of the content data. The downlink communication speed (reception speed) is a communication speed at which content data can be received without delay. The uplink communication speed (transmission speed) is a communication speed at which content data can be delivered to the maximum number of terminal devices 2 (here, two terminal devices 2) without delay. For example, when the content data delivery speed is 1 Mbps, the downlink communication speed is 1 Mbps or more, preferably 2 Mbps or more, and the uplink communication speed is 2 Mbps or more, preferably 4 Mbps or more.

また、上記条件1を適用する場合、例えば、参加している複数の端末装置2のうち通信速度が規定値以上の端末装置2が全体の60%以上であることを条件とする。第1実施形態では、通信速度が規定値以上の端末装置2が全体の50%以上あるときには、情報処理装置1により、ツリー状階層構造のうち最下流以外に通信速度が規定値以上の端末装置2を配置することができるが、システムの運用にあたっては余裕を持たせることが望ましい。従って、端末装置2の離脱等を考慮すると、規定値以上の端末装置2が全体の60%以上であることを、第1実施形態では条件としている。但し、通信速度が規定値以上の端末装置2が規定値未満の場合であっても、参加している端末装置2の数が少ない場合(例えば、端末装置2が100台以下)には、規定値以上の端末装置2が全体の70%以上とする。システムの運用にあたっては余裕を持たせることができる。例えば、端末装置2の数が1000台のときには、通信速度が規定値以上の端末装置2の割合が50%とする。このとき、通信速度が規定値未満の端末装置2が3台連続して参加してくる確率は12.5%(=0.53×100%)であり、通信速度が規定値未満の端末装置2が10台連続して参加してくる確率は約0.1%(=0.510×100%)である。このことから、通信速度が規定値以上の端末装置2が、通信速度が規定値未満の端末装置2よりも10台以上多いことを条件とすることが望ましい。通信速度が規定値未満の端末装置2が10台連続して参加してきた場合でも、参加してきた端末装置2を全て通信速度が規定値以上の端末装置2に接続できるからである。このようにすることで、P2P型配信モードとC/S型配信モードとの切り替えが頻繁に発生することを抑制することができ、コンテンツデータの配信を安定させることができる。なお、通信速度が規定値以上の端末装置2が全体の60%以上ある場合であっても、参加している端末装置2の数が少なく、小さなツリー状階層構造しか形成できないときには、P2P型配信モードとせずにC/S型配信モードとするようにしてもよい。端末装置2の離脱等を考慮した場合、サーバ−クライアント方式での配信の方が安定しているためである。 In addition, when the above condition 1 is applied, for example, the condition is that the terminal devices 2 whose communication speed is equal to or higher than a specified value among a plurality of participating terminal devices 2 are 60% or more of the total. In the first embodiment, when there are 50% or more of the terminal devices 2 whose communication speed is equal to or higher than the specified value, the information processing device 1 causes the terminal device whose communication speed is equal to or higher than the specified value in the tree-like hierarchical structure. 2 can be arranged, but it is desirable to have a margin in the operation of the system. Therefore, in consideration of the detachment of the terminal device 2 and the like, the first embodiment has a condition that the terminal device 2 having a specified value or more is 60% or more of the whole. However, even if the terminal device 2 whose communication speed is equal to or higher than the specified value is less than the specified value, it is specified when the number of participating terminal devices 2 is small (for example, 100 or less terminal devices 2). It is assumed that the terminal device 2 that is equal to or greater than the value is 70% or more of the total. It is possible to provide a margin for system operation. For example, when the number of terminal devices 2 is 1000, the ratio of the terminal devices 2 whose communication speed is equal to or higher than a specified value is 50%. At this time, the probability that three terminal devices 2 with a communication speed less than the specified value will continuously participate is 12.5% (= 0.5 3 × 100%), and the terminal with a communication speed less than the specified value The probability that 10 devices 2 continuously participate is about 0.1% (= 0.5 10 × 100%). Therefore, it is desirable that the number of terminal devices 2 having a communication speed equal to or higher than a specified value is 10 or more than that of terminal devices 2 having a communication speed lower than the specified value. This is because even when ten terminal devices 2 having a communication speed less than the specified value have joined in succession, all of the participating terminal devices 2 can be connected to the terminal devices 2 having a communication speed equal to or higher than the specified value. In this way, frequent switching between the P2P type delivery mode and the C / S type delivery mode can be suppressed, and the delivery of content data can be stabilized. Note that even when there are 60% or more of the terminal devices 2 having a communication speed equal to or higher than the specified value, when the number of participating terminal devices 2 is small and only a small tree-like hierarchical structure can be formed, the P2P distribution The C / S type delivery mode may be used instead of the mode. This is because the server-client distribution is more stable when taking the terminal device 2 into account.

なお、P2P型配信モードとC/S型配信モードとの切り替えは、上記条件に限定する必要はなく、運用上、種々の条件を設定することもできる。   Note that switching between the P2P type delivery mode and the C / S type delivery mode is not limited to the above conditions, and various conditions can be set in operation.

また、端末装置2の通信速度は、コンテンツ配信システムSへの参加時に、端末装置2が通信速度測定用サーバ(図示せず)との間で通信することによって測定される。すなわち、端末装置2はコンテンツ配信システムSへの参加時に、通信速度測定用サーバへ接続し、通信速度測定用サーバとの間で所定データ量のテストデータを送受信し、その送受信時間を検出することによって測定される。このように端末装置2で測定された情報は、情報処理装置1へ送信され、当該情報処理装置1に記憶される。これにより、情報処理装置1において、端末装置2の通信速度に基づいた上記条件の判定が可能となる。なお、テストデータの送受信時間の測定は、端末装置2で行わずに通信速度測定用サーバで行うようにしてもよい。これにより、端末装置2の処理負荷を軽減することができる。また、端末装置2が自装置の接続回線の情報を記憶している場合には、その情報を情報処理装置1へ通知し、情報処理装置1がその接続回線の情報に基づいて、端末装置2の通信速度を判定するようにしてもよい。   Further, the communication speed of the terminal device 2 is measured when the terminal device 2 communicates with a communication speed measurement server (not shown) when participating in the content distribution system S. That is, when joining the content distribution system S, the terminal device 2 connects to the communication speed measurement server, transmits / receives a predetermined amount of test data to / from the communication speed measurement server, and detects the transmission / reception time. Measured by. Information measured by the terminal device 2 in this way is transmitted to the information processing device 1 and stored in the information processing device 1. As a result, the information processing apparatus 1 can determine the condition based on the communication speed of the terminal device 2. The measurement of the transmission / reception time of the test data may be performed not by the terminal device 2 but by the communication speed measurement server. Thereby, the processing load of the terminal device 2 can be reduced. Further, when the terminal device 2 stores the information of the connection line of the own device, the information is notified to the information processing device 1, and the information processing device 1 determines the terminal device 2 based on the information of the connection line. The communication speed may be determined.

また、情報処理装置1は、上述のように通信速度が速い端末装置2がツリー状階層構造の上流側になるようにその接続を管理している。C/S型配信モードからP2P型配信モードへ移行するとき、情報処理装置1は、通信速度が規定値以上である端末装置2を優先的に前記階層構造の上流に接続させる。このようにすることで、通信速度が遅い端末装置2が多い場合であってもツリー状階層構造が形成される可能性が高くなり、情報処理装置1の配信負荷も低減することが可能となる。   In addition, the information processing apparatus 1 manages the connection so that the terminal apparatus 2 having a high communication speed as described above is located upstream of the tree-like hierarchical structure. When shifting from the C / S type distribution mode to the P2P type distribution mode, the information processing apparatus 1 preferentially connects the terminal apparatus 2 having a communication speed equal to or higher than a specified value to the upstream of the hierarchical structure. By doing so, there is a high possibility that a tree-like hierarchical structure is formed even when there are many terminal devices 2 with low communication speeds, and the distribution load of the information processing device 1 can be reduced. .

一方、P2P型配信モードからC/S型配信モードへ移行するとき、情報処理装置1は、ツリー状階層構造を形成する端末装置2のうち下流の端末装置2から優先的にツリー状階層構造から離脱させて接続する。このようにすることで、ツリー状階層構造においてコンテンツデータの配信遅延の原因となる端末装置2を迅速にツリー状階層構造から離脱させることができる。また、配信モードの移行過程において、ツリー状階層構造でのコンテンツデータの配信を行いつつも、ツリー状階層構造を徐々に消滅させることができる。その結果、ツリー状階層構造でのコンテンツデータの配信を急に終わらせることに比べて、配信モードの移行をよりスムーズに行うことが可能となる。   On the other hand, when shifting from the P2P type delivery mode to the C / S type delivery mode, the information processing device 1 preferentially starts from the tree-like hierarchical structure from the downstream terminal devices 2 among the terminal devices 2 that form the tree-like hierarchical structure. Disconnect and connect. By doing in this way, the terminal device 2 that causes content data delivery delay in the tree-like hierarchical structure can be quickly detached from the tree-like hierarchical structure. In addition, in the process of changing the distribution mode, the tree-like hierarchical structure can be gradually disappeared while the content data is distributed in the tree-like hierarchical structure. As a result, the distribution mode can be changed more smoothly than when the distribution of the content data in the tree-like hierarchical structure is abruptly terminated.

また、P2P型配信モードとC/S型配信モードとの切り替えは、全ての端末装置2に対して行うのではなく、一部の端末装置2に対してのみ行うようにすることもできる。   Further, switching between the P2P type distribution mode and the C / S type distribution mode may be performed not only for all terminal apparatuses 2 but only for some terminal apparatuses 2.

例えば、C/S型配信モードからP2P型配信モードへの切り替えを、図2に示すように、一部の端末装置2に対してのみ行うようにすることもできる。すなわち、ツリー状階層構造を全ての端末装置2で形成するとコンテンツデータを滞りなく配信することができないとき、一部の端末装置2でツリー状階層構造を構成してコンテンツデータが配信される。一方、その残りの端末装置2に対しては引き続きクライアント−サーバ方式でコンテンツデータが配信される。このようにすることで、全ての端末装置2に対してクライアント−サーバ方式を適用するのに比べて、情報処理装置1で直接コンテンツデータを配信しなければならない端末装置2を低減することができる。   For example, switching from the C / S type delivery mode to the P2P type delivery mode may be performed only for some terminal devices 2 as shown in FIG. That is, when content data cannot be distributed without delay when all the terminal devices 2 form a tree-like hierarchical structure, a part of the terminal devices 2 constitutes a tree-like hierarchical structure and content data is distributed. On the other hand, content data is continuously distributed to the remaining terminal devices 2 by the client-server method. By doing in this way, compared with applying a client-server system with respect to all the terminal devices 2, the terminal device 2 which must deliver content data directly with the information processing apparatus 1 can be reduced. .

このようにする場合、情報処理装置1は、各端末装置2の参加又は離脱のタイミングで、上記切り替え条件を満たすか否かを判定する。上記切り替えの条件を満たすときには、全ての端末装置2でツリー状階層構造を形成してコンテンツデータが配信される。一方、上記切り替え条件を満たさない場合には、ツリー状階層構造を構成することができる端末装置2でツリー状階層構造を形成し、それ以外の端末装置2とは直接接続する。   In this case, the information processing device 1 determines whether or not the switching condition is satisfied at the timing of participation or withdrawal of each terminal device 2. When the above switching condition is satisfied, the content data is distributed by forming a tree-like hierarchical structure in all the terminal devices 2. On the other hand, when the above switching condition is not satisfied, a tree-like hierarchical structure is formed by the terminal devices 2 that can form a tree-like hierarchical structure, and the other terminal devices 2 are directly connected.

以上のように、本実施形態にかかるコンテンツ配信システムSでは、参加する端末装置2の状態に応じて、P2P型配信モードとC/S型配信モードとが切り替えられるようにしている。そのため、参加する端末装置2の状態が変化する場合においてもコンテンツデータの配信を行うことができる。以下、情報処理装置1及び端末装置2の具体的構成及び動作の一例について説明する。   As described above, in the content distribution system S according to the present embodiment, the P2P type distribution mode and the C / S type distribution mode are switched according to the state of the participating terminal device 2. Therefore, content data can be distributed even when the state of the participating terminal device 2 changes. Hereinafter, specific examples of the configuration and operation of the information processing device 1 and the terminal device 2 will be described.

[1.2.情報処理装置1の具体的構成及び動作の説明]
まず、情報処理装置1の具体的構成及び動作の一例について説明する。
[1.2. Description of Specific Configuration and Operation of Information Processing Apparatus 1]
First, an example of a specific configuration and operation of the information processing apparatus 1 will be described.

(情報処理装置1の構成について)
まず、情報処理装置1の具体的構成について説明する。図3は、本実施形態のコンテンツ配信システムSにおける情報処理装置1の構成を示す図である。
(About the configuration of the information processing apparatus 1)
First, a specific configuration of the information processing apparatus 1 will be described. FIG. 3 is a diagram illustrating a configuration of the information processing apparatus 1 in the content distribution system S of the present embodiment.

情報処理装置1は、一般のサーバコンピュータを適用可能である。図3に示すように、情報処理装置1は、制御部11と、記憶部12と、通信部13と、操作部14とを備えている。制御部11と、記憶部12と、通信部13と、操作部14とは、システムバス15を介して相互に接続されている。制御部11は、情報処理装置1全体を制御する。記憶部12は、各種情報を記憶する記憶領域を有する書き換え可能な記憶装置である。通信部13は、端末装置2と通信するための通信インターインターフェイスである。操作部14は、各種設定入力を行うための操作部である。   A general server computer can be applied to the information processing apparatus 1. As illustrated in FIG. 3, the information processing apparatus 1 includes a control unit 11, a storage unit 12, a communication unit 13, and an operation unit 14. The control unit 11, the storage unit 12, the communication unit 13, and the operation unit 14 are connected to each other via a system bus 15. The control unit 11 controls the entire information processing apparatus 1. The storage unit 12 is a rewritable storage device having a storage area for storing various types of information. The communication unit 13 is a communication interface for communicating with the terminal device 2. The operation unit 14 is an operation unit for inputting various settings.

制御部11は、CPU(Central Processing Unit)、内部メモリなどから構成される。この内部メモリには、端末装置2と間でのコンテンツデータやその他のメッセージを送受信するための情報処理プログラムが格納されている。CPUは内部メモリに記憶されている情報処理プログラムを読み出して実行することによって、第1処理手段、第2処理手段、判定処理手段等として機能する。なお、この情報処理プログラムは、例えば、ネットワーク8に接続された他のサーバから、通信部13を介して、制御部11の内部メモリにダウンロードされるようにしてもよい。また、この情報処理プログラムは、CD−ROM等の記録媒体に記録されてから図示しない記録媒体ドライブを介して、制御部11の内部メモリに読み込まれるようにしてもよい。   The control unit 11 includes a CPU (Central Processing Unit), an internal memory, and the like. The internal memory stores an information processing program for transmitting / receiving content data and other messages to / from the terminal device 2. The CPU functions as first processing means, second processing means, determination processing means, and the like by reading and executing an information processing program stored in the internal memory. Note that this information processing program may be downloaded from another server connected to the network 8 to the internal memory of the control unit 11 via the communication unit 13, for example. The information processing program may be recorded in a recording medium such as a CD-ROM and then read into the internal memory of the control unit 11 via a recording medium drive (not shown).

記憶部12は、端末装置2へ配信するコンテンツデータ及びその配信スケジュールを記憶するコンテンツ記憶領域、コンテンツ配信システムSへ参加している端末装置2の情報(以下、「端末装置情報」とする)を記憶する端末装置情報記憶領域を有している。さらに、記憶部12は、P2P型配信モードで形成されるツリー状階層構造における各端末装置2の配置情報(以下、「トポロジー情報」とする)を記憶するトポロジー情報記憶領域、その他各種設定の情報を記憶する設定情報記憶領域などを有している。なお、「端末装置情報報」とは、例えば、端末装置2の所在情報(例えば、IPアドレス)や通信速度の情報などの情報である。   The storage unit 12 stores content data to be distributed to the terminal device 2, a content storage area for storing the distribution schedule, and information on the terminal devices 2 participating in the content distribution system S (hereinafter referred to as "terminal device information"). A terminal device information storage area is stored. Further, the storage unit 12 includes a topology information storage area for storing arrangement information (hereinafter, referred to as “topology information”) of each terminal device 2 in a tree-like hierarchical structure formed in the P2P type distribution mode, and other various setting information. Has a setting information storage area for storing. Note that the “terminal device information report” is information such as location information (for example, IP address) of the terminal device 2 and communication speed information.

(情報処理装置1の具体的動作について)
以上のように構成された情報処理装置1の動作を図面を参照して具体的に説明する。図4は本実施形態における情報処理装置1のメイン処理フローチャートである。なお、以下の各処理は、情報処理装置1の制御部11が上述した各手段等として機能することによって実行されるものである。
(Specific operation of the information processing apparatus 1)
The operation of the information processing apparatus 1 configured as described above will be specifically described with reference to the drawings. FIG. 4 is a main process flowchart of the information processing apparatus 1 in the present embodiment. The following processes are executed by the control unit 11 of the information processing apparatus 1 functioning as the above-described units.

情報処理装置1においてメイン電源スイッチ(図示せず)がONされたときやリセットスイッチ(図示せず)が操作されたとき、サーバ装置としての処理を開始する。このとき、制御部11のCPUは、内部メモリに記憶した情報処理プログラムを実行状態として、制御部11としての機能を動作状態する。   When a main power switch (not shown) is turned on or a reset switch (not shown) is operated in the information processing apparatus 1, processing as a server apparatus is started. At this time, the CPU of the control unit 11 operates the function as the control unit 11 with the information processing program stored in the internal memory as the execution state.

図4に示すように、制御部11は、記憶部12のコンテンツ記憶領域に記憶した配信スケジュールの情報に基づいて、配信開始前か否か、すなわちコンテンツデータの配信開始時間に到達していないかどうかを判定する(ステップS11)。配信前である判定すると(ステップS11:Yes)、制御部11は、配信処理を実行する(ステップS12)。この配信処理は、図5に示すステップS30〜S46の処理であり、後で詳述する。   As shown in FIG. 4, the control unit 11 is based on the distribution schedule information stored in the content storage area of the storage unit 12, whether or not it is before the start of distribution, that is, whether or not the content data distribution start time has been reached. It is determined whether or not (step S11). If it determines with it being before delivery (step S11: Yes), the control part 11 will perform a delivery process (step S12). This distribution process is a process of steps S30 to S46 shown in FIG. 5, and will be described in detail later.

ステップS12の処理が終了したとき、又は、配信前ではないと判定したとき(ステップS11:No)、制御部11は、端末装置2からの接続要求が発生したか否かを判定する(ステップS13)。この処理において、制御部11は、通信部13を介して端末装置2から接続要求メッセージを受信したときに、端末装置2からの接続要求が発生したと判定する。   When the process of step S12 is completed or when it is determined that the process is not before distribution (step S11: No), the control unit 11 determines whether or not a connection request from the terminal device 2 has been generated (step S13). ). In this process, the control unit 11 determines that a connection request from the terminal device 2 has occurred when a connection request message is received from the terminal device 2 via the communication unit 13.

端末装置2からの接続要求が発生したと判定すると(ステップS13:Yes)、制御部11は、登録した端末装置2(以下、「登録端末装置2」とする)からの再接続要求か否かを判定する(ステップS14)。この処理において、制御部11は、この接続要求を行った端末装置2の情報が記憶部12の端末情報記憶領域に記憶されているときに、登録端末装置2からの再接続要求であると判定する。   If it is determined that a connection request from the terminal device 2 has occurred (step S13: Yes), the control unit 11 determines whether or not the request is a reconnection request from the registered terminal device 2 (hereinafter referred to as “registered terminal device 2”). Is determined (step S14). In this process, the control unit 11 determines that the request is a reconnection request from the registered terminal device 2 when the information of the terminal device 2 that has made this connection request is stored in the terminal information storage area of the storage unit 12. To do.

ステップS14において、登録端末装置2からの再接続要求ではないと判定すると(ステップS14:No)、制御部11は、端末装置情報を記憶部12の端末情報記憶領域に記憶して登録する(ステップS15)。この端末装置情報は、再接続要求を行った端末装置の識別情報、所在情報(例えば、IPアドレス)、通信速度の情報などを含む情報である。   If it is determined in step S14 that the request is not a reconnection request from the registered terminal device 2 (step S14: No), the control unit 11 stores and registers the terminal device information in the terminal information storage area of the storage unit 12 (step S14). S15). This terminal device information is information including identification information of a terminal device that has made a reconnection request, location information (for example, an IP address), communication speed information, and the like.

ステップS15の処理が終了したとき、又は、登録した端末装置からの再接続要求であると判定したとき(ステップS14:Yes)、制御部11は、接続処理を行う(ステップS16)。この接続処理は、図6に示すステップS50〜S56の処理であり、後で詳述する。   When the process of step S15 is completed or when it is determined that the request is a reconnection request from the registered terminal device (step S14: Yes), the control unit 11 performs a connection process (step S16). This connection process is a process of steps S50 to S56 shown in FIG. 6, and will be described in detail later.

ステップS16の処理が終了したとき、又は、端末装置2からの接続要求が発生していないと判定したとき(ステップS13:No)、制御部11は、登録端末装置2からの離脱要求が発生したか否かを判定する(ステップS17)。この処理において、制御部11は、登録端末装置2から離脱要求メッセージが送信されたときに、離脱要求が発生したと判定する。   When the process of step S16 is completed, or when it is determined that a connection request from the terminal device 2 has not occurred (step S13: No), the control unit 11 has generated a withdrawal request from the registered terminal device 2. Whether or not (step S17). In this process, the control unit 11 determines that a withdrawal request has occurred when a withdrawal request message is transmitted from the registered terminal device 2.

登録端末装置2からの離脱要求が発生したと判定すると(ステップS17:Yes)、制御部11は、端末装置情報を記憶部12の端末装置情報記憶領域から削除し(ステップS18)、離脱処理を行う(ステップS19)。この離脱処理は、図7に示すステップS60〜S67の処理であり、後で詳述する。   If it is determined that a withdrawal request from the registered terminal device 2 has occurred (step S17: Yes), the control unit 11 deletes the terminal device information from the terminal device information storage area of the storage unit 12 (step S18), and performs the withdrawal process. Perform (step S19). This detachment process is a process of steps S60 to S67 shown in FIG. 7, and will be described in detail later.

ステップS19の処理が終了したとき、又は、登録端末装置2からの離脱要求が発生していないと判定したとき(ステップS17:No)、制御部11は、サーバ処理の終了指示を検出したかを判定する(ステップS20)。例えば、自情報処理装置1の電源がOFF状態へ移行したとき、制御部11は、終了指示を検知する。制御部11は、終了指示を検知したと判定すると(ステップS20:Yes)、メイン処理を終了し、一方、終了指示を検知していないと判定すると(ステップS20:No)、ステップS11からの処理を繰り返す。   When the process of step S19 is completed, or when it is determined that a withdrawal request from the registered terminal device 2 is not generated (step S17: No), the control unit 11 determines whether a server process termination instruction has been detected. Determination is made (step S20). For example, when the power source of the information processing apparatus 1 shifts to the OFF state, the control unit 11 detects an end instruction. When determining that the end instruction is detected (step S20: Yes), the control unit 11 ends the main process. On the other hand, when determining that the end instruction is not detected (step S20: No), the process from step S11 is performed. repeat.

次に、ステップS12で実行される配信処理について図5のフローチャートを参照して具体的に説明する。図5は情報処理装置1における配信処理のフローチャートである。この配信処理は、コンテンツデータの配信開始前から配信開始時までの処理である。   Next, the distribution process executed in step S12 will be specifically described with reference to the flowchart of FIG. FIG. 5 is a flowchart of distribution processing in the information processing apparatus 1. This distribution process is a process from the start of distribution of content data to the start of distribution.

図5に示すように、配信処理を開始すると、制御部11は、登録端末装置2からの接続要求メッセージが送信されて、接続要求があるか否かを判定する(ステップS31)。この処理において、接続要求があったと判定すると(ステップS31:Yes)、制御部11は、端末装置2から送信される接続要求メッセージに含まれる当該端末装置2の端末装置情報を記憶部12の端末装置情報記憶領域に記憶して登録する(ステップS32)。   As shown in FIG. 5, when the distribution process is started, the control unit 11 transmits a connection request message from the registered terminal device 2 and determines whether or not there is a connection request (step S31). In this process, when it is determined that there is a connection request (step S31: Yes), the control unit 11 stores the terminal device information of the terminal device 2 included in the connection request message transmitted from the terminal device 2 in the terminal of the storage unit 12. Store and register in the device information storage area (step S32).

一方、接続要求がないと判定すると(ステップS31:No)、制御部11は、ステップS17と同様に、登録端末装置2から離脱要求メッセージが送信され、離脱要求があるか否かを判定する(ステップS34)。登録端末装置2からの離脱要求があると判定すると(ステップS34:Yes)、制御部11は、離脱要求メッセージを送信した端末装置2の端末装置情報を記憶部12の端末装置情報記憶領域から削除する(ステップS35)。   On the other hand, if it is determined that there is no connection request (step S31: No), the control unit 11 determines whether or not a withdrawal request message is transmitted from the registered terminal device 2 and there is a withdrawal request, as in step S17 ( Step S34). When determining that there is a withdrawal request from the registered terminal device 2 (step S34: Yes), the control unit 11 deletes the terminal device information of the terminal device 2 that has transmitted the withdrawal request message from the terminal device information storage area of the storage unit 12. (Step S35).

ステップS32,S35の処理が終了したとき、又は、登録端末装置2からの離脱要求がないと判定したとき(ステップS34:No)、制御部11は、コンテンツデータの配信開始時間に到達しているか否かを判定する(ステップS37)。このとき、コンテンツデータの配信開始時間に到達していないと判定すると(ステップS37:No)、制御部11は、処理をステップS31に戻す。一方、コンテンツデータの配信開始時間に到達していると判定すると(ステップS37:Yes)、制御部11は、登録端末装置2があるか否かを判定する(ステップS38)。この処理において、制御部11は、記憶部12の端末装置情報記憶領域に端末装置情報を記憶した端末装置2があるときに、登録端末装置2があると判定する。   When the processing of steps S32 and S35 ends, or when it is determined that there is no request for withdrawal from the registered terminal device 2 (step S34: No), has the control unit 11 reached the content data distribution start time? It is determined whether or not (step S37). At this time, if it is determined that the distribution start time of the content data has not been reached (step S37: No), the control unit 11 returns the process to step S31. On the other hand, if it is determined that the distribution start time of the content data has been reached (step S37: Yes), the control unit 11 determines whether there is the registered terminal device 2 (step S38). In this process, the control unit 11 determines that there is a registered terminal device 2 when there is a terminal device 2 that stores the terminal device information in the terminal device information storage area of the storage unit 12.

登録端末装置2があるとき(ステップS38:Yes)、制御部11は、通信速度が規定値以上の端末装置2(以下、「高速端末装置2」ともいう)の数及び割合が閾値以上であるか否かを判定する(ステップS39)。この処理において、制御部11は、コンテンツ配信システムSに参加している端末装置2の数に対して、高速端末装置2の数が規定値以上あり、高速端末装置2の数の割合も規定値以上あるときに、高速端末装置2の数及び割合が閾値以上であると判定する。例えば、端末装置2の数が1000台のときには、高速端末装置2の数が、それ以外の端末装置2の数よりも10台以上多く、かつ高速端末装置2が全体の60%以上であるときに、高速端末装置2の数及び割合が閾値以上であると判定する。このように、制御部11は、ツリー状階層構造の形成を行うための条件を満たすか否かを判定する判定処理手段として機能する。   When there is the registered terminal device 2 (step S38: Yes), the control unit 11 has the number and ratio of the terminal devices 2 (hereinafter also referred to as “high-speed terminal device 2”) having a communication speed equal to or higher than a specified value equal to or higher than a threshold. It is determined whether or not (step S39). In this process, the control unit 11 determines that the number of high-speed terminal devices 2 is greater than or equal to a specified value relative to the number of terminal devices 2 participating in the content distribution system S, and the ratio of the number of high-speed terminal devices 2 is also a specified value When it is above, it determines with the number and ratio of the high-speed terminal device 2 being more than a threshold value. For example, when the number of terminal devices 2 is 1000, the number of high-speed terminal devices 2 is 10 or more than the number of other terminal devices 2, and the number of high-speed terminal devices 2 is 60% or more of the whole. In addition, it is determined that the number and ratio of the high-speed terminal devices 2 are equal to or greater than the threshold. Thus, the control unit 11 functions as a determination processing unit that determines whether or not a condition for forming a tree-like hierarchical structure is satisfied.

高速端末装置2の数及び割合が閾値以上あると判定すると(ステップS39:Yes)、制御部11は、記憶部12の設定情報記憶領域における設定配信モードの情報をP2P型配信モードに設定し(ステップS40)、登録端末装置2によりツリー状階層構造を形成するための情報であるトポロジー情報を作成する(ステップS41)。このトポロジー情報は、各登録端末装置2がツリー状階層構造のどの位置に配置されるのかを示す情報であり、高速端末装置2が上流側に配置されるように生成される。   If it determines with the number and ratio of the high-speed terminal devices 2 being more than a threshold value (step S39: Yes), the control part 11 will set the information of the setting delivery mode in the setting information storage area of the memory | storage part 12 to P2P type delivery mode ( Step S40), topology information which is information for forming a tree-like hierarchical structure is created by the registered terminal device 2 (Step S41). This topology information is information indicating where each registered terminal device 2 is arranged in the tree-like hierarchical structure, and is generated so that the high-speed terminal device 2 is arranged on the upstream side.

その後、制御部11は、トポロジー情報に基づき、全ての登録端末装置2に対して、それぞれの接続位置の情報を通知する(ステップS42)。このとき、制御部11は、登録端末装置2へ接続位置の情報を通知して、上流側から順にツリー状階層構造を形成させる。   Thereafter, the control unit 11 notifies each registered terminal device 2 of information on each connection position based on the topology information (step S42). At this time, the control unit 11 notifies the registration terminal apparatus 2 of the connection position information, and forms a tree-like hierarchical structure in order from the upstream side.

全ての登録端末装置2によりツリー状階層構造が形成されると、制御部11は、ツリー状階層構造の最上流に配置された登録端末装置2にコンテンツデータのストリーム配信を開始して(ステップS43)、配信処理を終了する。ツリー状階層構造の最上流に配置された登録端末装置2とは、例えば、図1に示す例では、端末装置2a1,2a2である。このように、制御部11は、複数の端末装置2同士をネットワークを介して接続させて、端末装置2間でコンテンツデータを配信させる第1処理手段として機能する。特に、制御部11は、第1処理手段として、複数の端末装置2をネットワーク8を介してツリー状階層構造で多層に論理接続させて、コンテンツデータをツリー状階層構造の上流の端末装置2に供給し、当該上流の端末装置2から下流の端末装置2にかけて端末装置2の中継機能によってコンテンツデータを配信させるようにしている。   When the tree-like hierarchical structure is formed by all the registered terminal devices 2, the control unit 11 starts stream distribution of content data to the registered terminal devices 2 arranged at the most upstream of the tree-like hierarchical structure (step S43). ), And the distribution process ends. For example, in the example illustrated in FIG. 1, the registered terminal devices 2 arranged at the most upstream of the tree-like hierarchical structure are the terminal devices 2 a 1 and 2 a 2. Thus, the control unit 11 functions as a first processing unit that connects a plurality of terminal devices 2 via a network and distributes content data between the terminal devices 2. In particular, the control unit 11 logically connects a plurality of terminal devices 2 in a tree-like hierarchical structure via the network 8 as first processing means, and sends content data to the terminal device 2 upstream of the tree-like hierarchical structure. The content data is distributed by the relay function of the terminal device 2 from the upstream terminal device 2 to the downstream terminal device 2.

ステップS39において、高速端末装置2の数及び割合が閾値以上ではないと判定すると(ステップS39:No)、制御部11は、記憶部12の設定情報記憶領域における設定配信モードの情報をC/S型配信モードに設定する(ステップS44)。その後、制御部11は、登録端末装置2のそれぞれとネットワーク8を介してクライアント-サーバ形式で接続を行って、各端末装置2へ通信部13を介してコンテンツデータのストリーム配信を開始し(ステップS45)、配信処理を終了する。このように、制御部11は、複数の端末装置2のそれぞれとネットワーク8を介してクライアント−サーバ形式で接続して、端末装置2にコンテンツデータを配信する第2処理手段として機能する。なお、このとき、情報処理装置1は、コンテンツデータを記憶し、各端末装置2にコンテンツデータを配信する記憶装置として機能する。   If it is determined in step S39 that the number and ratio of the high-speed terminal devices 2 are not equal to or greater than the threshold value (step S39: No), the control unit 11 displays the setting distribution mode information in the setting information storage area of the storage unit 12 in C / S. The type distribution mode is set (step S44). Thereafter, the control unit 11 connects to each of the registered terminal devices 2 via the network 8 in a client-server format, and starts stream distribution of content data to each terminal device 2 via the communication unit 13 (step S45), the distribution process is terminated. In this manner, the control unit 11 functions as a second processing unit that connects to each of the plurality of terminal devices 2 via the network 8 in a client-server format and distributes content data to the terminal device 2. At this time, the information processing apparatus 1 functions as a storage device that stores content data and distributes the content data to each terminal device 2.

また、ステップS38において、端末装置情報を記憶した端末装置2がないとき(ステップS38:No)、制御部11は、記憶部12の設定情報記憶領域における設定配信モードの情報をC/S型配信モードに設定して(ステップS46)、配信処理を終了する。   In step S38, when there is no terminal device 2 that stores the terminal device information (step S38: No), the control unit 11 converts the setting distribution mode information in the setting information storage area of the storage unit 12 into C / S type distribution. The mode is set (step S46), and the distribution process is terminated.

次に、ステップS16で実行される接続処理について図6のフローチャートを参照して具体的に説明する。図6は情報処理装置1における接続処理のフローチャートである。この接続処理は、配信開始後に端末装置2から接続要求が発生したときの処理である。   Next, the connection process executed in step S16 will be specifically described with reference to the flowchart of FIG. FIG. 6 is a flowchart of connection processing in the information processing apparatus 1. This connection process is a process when a connection request is generated from the terminal device 2 after the start of distribution.

図6に示すように、接続処理を開始すると、制御部11は、記憶部12の設定情報記憶領域に設定された配信モードの情報に基づき、現在の配信モードがC/S型配信モードであるか否かを判定する(ステップS50)。現在の配信モードがC/S型配信モードであると判定すると(ステップS50:Yes)、制御部11は、ステップS39の処理と同様に、高速端末装置2の数及び割合が閾値未満あるか否かを判定する(ステップS51)。このように、制御部11は、ツリー状階層構造の形成を行うための条件を満たすか否かを判定する判定処理手段として機能する。   As illustrated in FIG. 6, when the connection process is started, the control unit 11 determines that the current distribution mode is the C / S type distribution mode based on the distribution mode information set in the setting information storage area of the storage unit 12. Is determined (step S50). If it determines with the present delivery mode being C / S type delivery mode (step S50: Yes), the control part 11 will determine whether the number and ratio of the high-speed terminal devices 2 are less than a threshold value similarly to the process of step S39. Is determined (step S51). Thus, the control unit 11 functions as a determination processing unit that determines whether or not a condition for forming a tree-like hierarchical structure is satisfied.

高速端末装置2の数及び割合が閾値未満であるとき(ステップS51:Yes)、制御部11は、接続要求を行った端末装置2とネットワーク8を介してクライアント-サーバ形式で接続を行う。その後、制御部11は、接続要求を行った端末装置2に対しても通信部13を介してコンテンツデータのストリーム配信を行い(ステップS52)、接続処理を終了する。このとき、接続要求を行った端末装置2へ送信するコンテンツデータは、他の端末装置2へ送信中のコンテンツデータである。従って、接続要求を行った端末装置2では、放送されているコンテンツを途中から視聴することになる。   When the number and ratio of the high-speed terminal devices 2 are less than the threshold (step S51: Yes), the control unit 11 performs connection in the client-server format via the network 8 with the terminal device 2 that has made the connection request. Thereafter, the control unit 11 also distributes the content data stream via the communication unit 13 to the terminal device 2 that has made the connection request (step S52), and ends the connection process. At this time, the content data to be transmitted to the terminal device 2 that has made the connection request is content data being transmitted to the other terminal device 2. Therefore, the terminal device 2 that has made the connection request views the broadcast content from the middle.

高速端末装置2の数及び割合が閾値未満ではないとき(ステップS51:No)、制御部11は、記憶部12の設定情報記憶領域における設定配信モードの情報をP2P型配信モードに設定する(ステップS53)。その後、制御部11は、ステップS41と同様に、トポロジー情報を作成する。そして、制御部11は、情報処理装置1に接続している端末装置2(以下、「接続端末装置2」という)の中で、ツリー状階層構造の最上流となる端末装置2以外の端末装置2にP2P型配信モードへの変更を高速端末装置2から順に指示する。さらに。制御部11は、再接続の要求を行った端末装置2に接続先候補を通知して(ステップS54)、接続処理を終了する。これにより、これらの端末装置2によってツリー状階層構造が形成されて、コンテンツデータが配信される。なお、制御部11は、トポロジー情報を作成する際に、高速端末装置2の中から、ツリー状階層構造の最上流となる端末装置2を選択する。そして、制御部11は、ツリー状階層構造の最上流となる端末装置2には、接続先候補の通知を行わずに接続を維持して、コンテンツデータの配信を継続する。これにより、情報処理装置1は、コンテンツデータの配信処理を停止せずに済み、しかも最上流となる端末装置2には接続先候補を通知する必要がないため、処理負荷を軽減することができる。ただし、ツリー状階層構造の最上流となる端末装置2に対しても、P2P型配信モードへの変更を指示するようにしてもよい。このように、制御部11は、複数の端末装置2をネットワーク8を介してツリー状階層構造で多層に論理接続させて、コンテンツデータをツリー状階層構造の上流の端末装置2に供給し、当該上流の端末装置2から下流の端末装置2にかけて端末装置2の中継機能によってコンテンツデータを配信させる第1処理手段として機能する。なお、情報処理装置1が配信するコンテンツデータには、再生時刻の情報が含まれており、現時刻よりも少し先の再生時刻(例えば、現時刻の10秒後)のコンテンツデータを端末装置2へ配信する。端末装置2は情報処理装置1から配信されるコンテンツデータを後述するバッファメモリ24に記憶し、現時刻と一致する再生時刻のコンテンツデータを再生する。従って、端末装置2は、C/S型配信モードからP2P型配信モードへ移行するまでの間は、バッファメモリ24に記憶しているコンテンツデータを再生することができ、再生は中断しない。   When the number and ratio of the high-speed terminal devices 2 are not less than the threshold (step S51: No), the control unit 11 sets the setting distribution mode information in the setting information storage area of the storage unit 12 to the P2P type distribution mode (step S51). S53). Thereafter, the control unit 11 creates topology information as in step S41. And the control part 11 is terminal devices other than the terminal device 2 used as the most upstream of a tree-like hierarchical structure in the terminal device 2 (henceforth "the connection terminal device 2") connected to the information processing apparatus 1. 2 is instructed in order from the high-speed terminal device 2 to change to the P2P distribution mode. further. The control unit 11 notifies the connection destination candidate to the terminal device 2 that has requested reconnection (step S54), and ends the connection process. Thereby, a tree-like hierarchical structure is formed by these terminal devices 2, and content data is distributed. The controller 11 selects the terminal device 2 that is the most upstream of the tree-like hierarchical structure from the high-speed terminal devices 2 when creating the topology information. Then, the control unit 11 maintains the connection without notifying the connection destination candidate to the terminal device 2 that is the most upstream in the tree-like hierarchical structure, and continues the distribution of the content data. As a result, the information processing apparatus 1 does not have to stop the content data distribution process, and it is not necessary to notify the terminal apparatus 2 which is the most upstream, so that the processing load can be reduced. . However, the terminal device 2 that is the most upstream in the tree-like hierarchical structure may be instructed to change to the P2P distribution mode. As described above, the control unit 11 logically connects the plurality of terminal devices 2 in a tree-like hierarchical structure via the network 8 and supplies the content data to the upstream terminal device 2 in the tree-like hierarchical structure. It functions as first processing means for distributing content data from the upstream terminal device 2 to the downstream terminal device 2 by the relay function of the terminal device 2. Note that the content data distributed by the information processing device 1 includes information on the reproduction time, and the content data at the reproduction time slightly ahead of the current time (for example, 10 seconds after the current time) is stored in the terminal device 2. Delivered to. The terminal device 2 stores content data distributed from the information processing device 1 in a buffer memory 24 to be described later, and reproduces content data at a reproduction time that matches the current time. Therefore, the terminal device 2 can reproduce the content data stored in the buffer memory 24 until the transition from the C / S type distribution mode to the P2P type distribution mode, and the reproduction is not interrupted.

ステップS50において、現在の配信モードがC/S型配信モードではないと判定すると(ステップS50:No)、制御部11は、記憶部12のトポロジー情報記憶領域にトポロジー情報に基づいて、接続先候補の端末装置2をいくつか選択し、当該選択した接続先候補の情報を通信部13を介して、再接続の要求を行った端末装置2へ通知する(ステップS55)。その後、制御部11は、このステップS55の処理に応じてトポロジー情報を変更し、記憶部12のトポロジー情報記憶領域に記憶するトポロジー情報を更新して(ステップS56)、接続処理を終了する。なお、再接続の要求を行った端末装置2は、再接続を行ったときにどの端末装置2に接続したかの情報を情報処理装置1へ通知するようにしている。制御部11は、このように通知される情報に基づいてトポロジー情報を更新する。   If it is determined in step S50 that the current distribution mode is not the C / S type distribution mode (step S50: No), the control unit 11 stores connection candidate candidates in the topology information storage area of the storage unit 12 based on the topology information. The terminal device 2 is selected, and information on the selected connection destination candidates is notified to the terminal device 2 that has requested reconnection via the communication unit 13 (step S55). Thereafter, the control unit 11 changes the topology information in accordance with the process of step S55, updates the topology information stored in the topology information storage area of the storage unit 12 (step S56), and ends the connection process. The terminal device 2 that has requested reconnection is configured to notify the information processing device 1 of information regarding which terminal device 2 is connected to when the reconnection is performed. The control unit 11 updates the topology information based on the information notified in this way.

次に、ステップS19で実行される離脱処理について図7のフローチャートを参照して具体的に説明する。図7は情報処理装置1における離脱処理のフローチャートである。この接続処理は、配信開始後に端末装置2から離脱要求が発生したときの処理である。   Next, the separation process executed in step S19 will be specifically described with reference to the flowchart of FIG. FIG. 7 is a flowchart of the leaving process in the information processing apparatus 1. This connection process is a process when a disconnection request is generated from the terminal device 2 after the start of distribution.

図7に示すように、離脱処理を開始すると、制御部11は、記憶部12の設定情報記憶領域に設定された配信モードの情報に基づき、現在の配信モードがC/S型配信モードであるか否かを判定する(ステップS60)。   As illustrated in FIG. 7, when the departure process is started, the control unit 11 determines that the current distribution mode is the C / S type distribution mode based on the distribution mode information set in the setting information storage area of the storage unit 12. Is determined (step S60).

現在の配信モードがC/S型配信モードであると判定すると(ステップS60:Yes)、制御部11は、離脱要求を行った端末装置2へのコンテンツデータのストリーム配信を停止し、さらにこの端末装置2との接続を切断して(ステップS61)、離脱処理を終了する。   When it is determined that the current distribution mode is the C / S type distribution mode (step S60: Yes), the control unit 11 stops the stream distribution of the content data to the terminal device 2 that has made the withdrawal request, and further this terminal The connection with the device 2 is disconnected (step S61), and the disconnection process is terminated.

一方、現在の配信モードがC/S型配信モードではないと判定すると(ステップS60:No)、制御部11は、ステップS39の処理と同様に、高速端末装置2の数及び割合が閾値未満あるか否かを判定する(ステップS62)。   On the other hand, when determining that the current distribution mode is not the C / S distribution mode (step S60: No), the control unit 11 has the number and ratio of the high-speed terminal devices 2 that are less than the threshold as in the process of step S39. It is determined whether or not (step S62).

高速端末装置2の数及び割合が閾値未満であるとき(ステップS62:Yes)、制御部11は、ツリー状階層構造を構成する端末装置2のうち離脱要求を行った端末装置2を除いた全ての端末装置2へC/S型配信モードの変更を指示する。このとき、制御部11は、記憶部12のトポロジー情報記憶領域に記憶したトポロジー情報に基づいて、その配信モードの変更指示をツリー状階層構造の最下流となる端末装置2から上流となる端末装置2にかけて順次行うようにしている(ステップS63)。その後、制御部11は、記憶部12の設定情報記憶領域に設定される配信モードを、C/S型配信モードに設定して(ステップS64)、離脱処理を終了する。   When the number and ratio of the high-speed terminal devices 2 are less than the threshold (step S62: Yes), the control unit 11 excludes all of the terminal devices 2 that make up the tree-like hierarchical structure except the terminal device 2 that has made the withdrawal request. The terminal device 2 is instructed to change the C / S type distribution mode. At this time, based on the topology information stored in the topology information storage area of the storage unit 12, the control unit 11 sends an instruction to change the distribution mode to the terminal device upstream from the terminal device 2 that is the most downstream in the tree-like hierarchical structure. Step 2 is performed sequentially (step S63). Thereafter, the control unit 11 sets the distribution mode set in the setting information storage area of the storage unit 12 to the C / S type distribution mode (step S64), and ends the leaving process.

ステップS62において、高速端末装置2の数及び割合が閾値未満ではないとき(ステップS62:No)、制御部11は、記憶部12に記憶したトポロジー情報に基づいて、離脱要求を行った端末装置2の下流に他の端末装置2が接続しているか否かを判定する(ステップS65)。この処理において、例えば、図1に示す端末装置2b4が離脱要求を行った端末装置2である場合、制御部11は、端末装置2b4の下流に端末装置2c7,2c8が接続されていると判定する。一方、図1に示す端末装置2c6が離脱要求を行った端末装置2である場合、制御部11は、端末装置2c6の下流に端末装置2が接続されていないと判定する。   In step S62, when the number and ratio of the high-speed terminal devices 2 are not less than the threshold (step S62: No), the control unit 11 makes a withdrawal request based on the topology information stored in the storage unit 12. It is determined whether another terminal device 2 is connected downstream (step S65). In this process, for example, when the terminal device 2b4 shown in FIG. 1 is the terminal device 2 that has made the withdrawal request, the control unit 11 determines that the terminal devices 2c7 and 2c8 are connected downstream of the terminal device 2b4. . On the other hand, when the terminal device 2c6 illustrated in FIG. 1 is the terminal device 2 that has made the withdrawal request, the control unit 11 determines that the terminal device 2 is not connected downstream of the terminal device 2c6.

離脱要求を行った端末装置2の下流に他の端末装置2が接続していると判定すると(ステップS65:Yes)、制御部11は、記憶部12に記憶したトポロジー情報に基づいて、接続先候補の端末装置2の情報を通知する(ステップS66)。この処理において、制御部11は、離脱要求を行った端末装置2の下流に接続してある端末装置2に対して、ツリー状階層構造を構成する端末装置2のうち離脱要求を行った端末装置2及びその下流の端末装置2を除いた端末装置2から接続先候補の端末装置2をいくつか選択する。その後、制御部11は、当該選択した接続先候補の情報を通信部13を介して、再接続の要求を行った端末装置2へ通知する。このステップS66の処理が終了したとき、又は、離脱要求を行った端末装置2の下流に他の端末装置2が接続していないと判定したとき(ステップS65:No)、制御部11は、離脱要求を行った端末装置2の情報を記憶部12に記憶したトポロジー情報から削除する等してトポロジー情報を変更して(ステップS67)、離脱処理を終了する。   When it is determined that another terminal device 2 is connected downstream of the terminal device 2 that has made the withdrawal request (step S65: Yes), the control unit 11 determines the connection destination based on the topology information stored in the storage unit 12. Information on the candidate terminal device 2 is notified (step S66). In this processing, the control unit 11 sends a terminal device that has made a withdrawal request out of the terminal devices 2 that form a tree-like hierarchical structure to the terminal device 2 connected downstream of the terminal device 2 that has made the withdrawal request. 2 and several terminal devices 2 as connection destination candidates are selected from the terminal devices 2 excluding the terminal devices 2 downstream thereof. Thereafter, the control unit 11 notifies the terminal device 2 that has requested reconnection via the communication unit 13 of the information on the selected connection destination candidate. When the process of step S66 ends, or when it is determined that another terminal device 2 is not connected downstream of the terminal device 2 that has made the withdrawal request (step S65: No), the control unit 11 The topology information is changed, for example, by deleting the information of the terminal device 2 that made the request from the topology information stored in the storage unit 12 (step S67), and the leaving process is terminated.

[1.3.端末装置2の具体的構成及び動作の説明]
以下、図面を参照して、上述した端末装置2の具体的構成及び動作の一例について説明する。
[1.3. Description of Specific Configuration and Operation of Terminal Device 2]
Hereinafter, an example of a specific configuration and operation of the terminal device 2 described above will be described with reference to the drawings.

(端末装置2の構成について)
まず、端末装置2の構成について説明する。図8は、端末装置2の具体的構成を示す図である。
(Regarding the configuration of the terminal device 2)
First, the configuration of the terminal device 2 will be described. FIG. 8 is a diagram illustrating a specific configuration of the terminal device 2.

端末装置2は、専用のコンピュータの他、一般のパーソナルコンピュータを適用可能であり、図8に示すように、制御部21、記憶部22、バッファメモリ24、デコーダ部25、映像処理部26、表示部27、音声処理部28、スピーカ29、入力部30、通信部31を備えている。なお、制御部21、記憶部22、バッファメモリ24、デコーダ部25、通信部31は、システムバス40を介して相互に接続されている。   The terminal device 2 can be a general personal computer in addition to a dedicated computer. As shown in FIG. 8, a control unit 21, a storage unit 22, a buffer memory 24, a decoder unit 25, a video processing unit 26, a display Unit 27, audio processing unit 28, speaker 29, input unit 30, and communication unit 31. Note that the control unit 21, the storage unit 22, the buffer memory 24, the decoder unit 25, and the communication unit 31 are connected to each other via the system bus 40.

制御部21は、CPU(Central Processing Unit)、内部メモリから構成される。この内部メモリには、情報処理プログラムが格納されており、CPUは内部メモリに記憶されている情報処理プログラムを読み出して実行することによって、受信処理手段、送信処理手段等として機能する。なお、この情報処理プログラムは、例えば、ネットワーク8に接続されたサーバ(例えば、情報処理装置1)から、通信部31を介して、制御部21の内部メモリにダウンロードされるようにしてもよい。また、例えば、この情報処理プログラムは、CD−ROM等の記録媒体に記録されてから図示しない記録媒体ドライブを介して、制御部21の内部メモリに読み込まれるようにしてもよい。   The control unit 21 includes a CPU (Central Processing Unit) and an internal memory. An information processing program is stored in the internal memory, and the CPU functions as a reception processing unit, a transmission processing unit, and the like by reading and executing the information processing program stored in the internal memory. The information processing program may be downloaded to the internal memory of the control unit 21 from the server (for example, the information processing apparatus 1) connected to the network 8 via the communication unit 31, for example. Further, for example, the information processing program may be recorded in a recording medium such as a CD-ROM and then read into the internal memory of the control unit 21 via a recording medium drive (not shown).

バッファメモリ24は、ネットワーク8を介して取得したコンテンツデータを一時的に記憶するメモリであり、このバッファメモリ24に記憶したコンテンツデータをデコーダ部25により順次取り出してデコードする。デコードされたコンテンツデータのうち、映像情報は映像処理部26により表示部27で表示可能な情報に変換処理され、音声情報は音声処理部28により、スピーカ29で音波として出力可能な情報に変換処理される。   The buffer memory 24 is a memory that temporarily stores content data acquired via the network 8. The content data stored in the buffer memory 24 is sequentially extracted by the decoder unit 25 and decoded. Of the decoded content data, the video information is converted into information that can be displayed on the display unit 27 by the video processing unit 26, and the audio information is converted into information that can be output as sound waves by the speaker 29 by the audio processing unit 28. Is done.

(端末装置2の動作について)
以上のように構成された端末装置2の動作を図面を参照して具体的に説明する。図9は端末装置2のメイン処理フローチャートである。なお、以下の各処理は、端末装置2の制御部21が上述した各手段等として機能することによって実行されるものである。
(Operation of terminal device 2)
The operation of the terminal device 2 configured as described above will be specifically described with reference to the drawings. FIG. 9 is a main process flowchart of the terminal device 2. The following processes are executed by the control unit 21 of the terminal device 2 functioning as the above-described units.

端末装置2においてメイン電源スイッチ(図示せず)がONされたときやリセットスイッチ(図示せず)が操作されたとき、制御部21のCPUは内部メモリに記憶した情報処理プログラムを実行状態として、制御部21としての機能を動作状態にして、処理を開始する。   When a main power switch (not shown) is turned on or a reset switch (not shown) is operated in the terminal device 2, the CPU of the control unit 21 executes the information processing program stored in the internal memory as an execution state. The function as the control unit 21 is set to the operating state, and the process is started.

処理を開始すると、制御部21は、コンテンツ視聴要求が発生したか否かを判定する(ステップS70)。この処理において、制御部21は、自端末装置2のユーザから入力部20への操作によってコンテンツを視聴するための操作があったとき、コンテンツ視聴要求が発生したと判定する。   When the process is started, the control unit 21 determines whether or not a content viewing request has occurred (step S70). In this process, the control unit 21 determines that a content viewing request has occurred when there is an operation for viewing content by an operation on the input unit 20 from the user of the terminal device 2 itself.

制御部21は、コンテンツ視聴要求が発生するのを待ち(ステップS70:No)、コンテンツ視聴要求が発生したと判定すると(ステップS70:Yes)、ネットワーク8を介して図示しない通信速度測定用サーバに接続し、所定データ量のテストデータを通信速度測定用サーバと送受信して、自端末装置2の送信速度及び受信速度を通信速度として測定する(ステップS71)。   The control unit 21 waits for the content viewing request to be generated (step S70: No), and when determining that the content viewing request has occurred (step S70: Yes), the control unit 21 transmits to the communication speed measurement server (not shown) via the network 8. Connected, transmits / receives a predetermined amount of test data to / from the communication speed measurement server, and measures the transmission speed and reception speed of the terminal device 2 as the communication speed (step S71).

次に、制御部21は、情報処理装置1に対して接続要求を行う(ステップS72)。この処理において、制御部21は、自端末装置2の識別情報、所在情報、通信速度の情報などを含む接続要求メッセージを情報処理装置1へ送信して、接続要求を行う。   Next, the control unit 21 makes a connection request to the information processing apparatus 1 (step S72). In this process, the control unit 21 sends a connection request message including identification information, location information, communication speed information, and the like of the terminal device 2 to the information processing device 1 to make a connection request.

その後、制御部21は、接続要求に対して情報処理装置1から配信モードの情報としてC/S型配信モードの情報を受信したか否かを判定する(ステップS73)。   Thereafter, the control unit 21 determines whether or not C / S type distribution mode information has been received as distribution mode information from the information processing apparatus 1 in response to the connection request (step S73).

C/S型配信モードの情報を受信したと判定すると(ステップS73:Yes)、制御部21は、情報処理装置1と接続を行い、情報処理装置1からストリーム配信されるコンテンツデータを通信部31を介して受信する。ネットワーク8を介して受信したコンテンツデータはバッファメモリ24に一時的に記憶され、デコーダ部25によってデコードされて、表示部27やスピーカ29により再生が開始される(ステップS74)。   If it determines with having received the information of C / S type | mold delivery mode (step S73: Yes), the control part 21 will connect with the information processing apparatus 1, and will communicate the content data stream-distributed from the information processing apparatus 1 with the communication part 31. Receive via. The content data received via the network 8 is temporarily stored in the buffer memory 24, decoded by the decoder unit 25, and reproduction is started by the display unit 27 and the speaker 29 (step S74).

一方、C/S型配信モードの情報を受信していないと判定したとき、すなわち、P2P型配信モードの情報を受信したと判定したとき(ステップS73:No)、制御部21は、配信モードの情報と共に送られる情報に基づいて最初の接続端末装置2であるか否かを判定する(ステップS75)。最初の接続端末装置2であると判定すると(ステップS75:Yes)、制御部21は、ステップS74と同様に、情報処理装置1と接続し、情報処理装置1からストリーム配信されるコンテンツデータを通信部31を介して順次取得して再生する(ステップS76)。   On the other hand, when it is determined that the C / S type delivery mode information is not received, that is, when it is determined that the P2P type delivery mode information is received (step S73: No), the control unit 21 It is determined whether it is the first connection terminal apparatus 2 based on the information sent together with the information (step S75). If it determines with it being the first connection terminal device 2 (step S75: Yes), the control part 21 will connect with the information processing apparatus 1, and will communicate the content data stream-distributed from the information processing apparatus 1 similarly to step S74. The information is sequentially acquired via the unit 31 and reproduced (step S76).

ステップS75において、最初の接続端末装置2ではないと判定すると(ステップS75:No)、制御部21は、情報処理装置1から通知された接続先候補である他の端末装置2に対して接続要求を行う(ステップS77)。情報処理装置1から通知された複数の接続先候補のうちいずれかの接続先候補に接続して、このように接続した接続先候補である他の端末装置2からストリーム配信されるコンテンツデータを通信部31を介して順次取得して再生する(ステップS78)。   If it determines with it not being the first connection terminal device 2 in step S75 (step S75: No), the control part 21 will request a connection with respect to the other terminal device 2 which is a connection destination candidate notified from the information processing apparatus 1. Is performed (step S77). Connect to one of the plurality of connection destination candidates notified from the information processing apparatus 1 and communicate content data stream-distributed from the other terminal apparatus 2 that is the connection destination candidate connected in this way The information is sequentially acquired via the unit 31 and reproduced (step S78).

ステップS74,S76,S78の処理が終了すると、制御部21は、情報処理装置1からP2P型配信モードへの変更指示を受信したか否かを判定する(ステップS79)。この処理において、制御部21は、動作モードがC/S型配信モードのときに、情報処理装置1からP2P型配信モードの情報を受信したときに、P2P型配信モードへの変更指示を受信したと判定する。P2P型配信モードへの変更指示を受信したと判定すると(ステップS79:Yes)、制御部21は、情報処理装置1に対して再接続要求を行う(ステップS80)。この処理において、制御部21は、自端末装置2の識別情報を含む再接続要求メッセージを通信部31を介して情報処理装置1へ送信することによって、再接続要求を行う。   When the processes of steps S74, S76, and S78 are completed, the control unit 21 determines whether an instruction to change to the P2P type distribution mode is received from the information processing apparatus 1 (step S79). In this process, the control unit 21 receives an instruction to change to the P2P type distribution mode when receiving information on the P2P type distribution mode from the information processing apparatus 1 when the operation mode is the C / S type distribution mode. Is determined. If it determines with having received the change instruction | indication to P2P type | mold delivery mode (step S79: Yes), the control part 21 will perform the reconnection request | requirement with respect to the information processing apparatus 1 (step S80). In this process, the control unit 21 makes a reconnection request by transmitting a reconnection request message including identification information of the terminal device 2 to the information processing device 1 via the communication unit 31.

再接続要求に応じて情報処理装置1から接続先候補の情報が通知されると、制御部21は、通知された接続先候補である他の端末装置2に対して接続要求を行う(ステップS81)。その後、制御部21は、このように接続した接続先候補である他の端末装置2からストリーム配信されるコンテンツデータを通信部31を介して順次取得して再生する(ステップS82)。   When information on the connection destination candidate is notified from the information processing apparatus 1 in response to the reconnection request, the control unit 21 issues a connection request to the other terminal apparatus 2 that is the notified connection destination candidate (step S81). ). Thereafter, the control unit 21 sequentially acquires and reproduces the content data stream-distributed from the other terminal device 2 that is the connection destination candidate thus connected via the communication unit 31 (step S82).

ステップS79において、P2P型配信モードへの変更指示を受信していないと判定すると(ステップS79:No)、制御部21は、情報処理装置1からC/S型配信モードへの変更指示を受信したか否かを判定する(ステップS83)。この処理において、制御部21は、動作モードがP2P型配信モードのときに、情報処理装置1からC/S型配信モードの情報を受信したときに、C/S型配信モードへの変更指示を受信したと判定する。C/S型配信モードへの変更指示を受信したと判定すると(ステップS83:Yes)、制御部21は、情報処理装置1に対して再接続要求を行い(ステップS84)、その後、情報処理装置1からストリーム配信されるコンテンツデータを通信部31を介して順次取得し、再生する(ステップS85)。   If it is determined in step S79 that an instruction to change to the P2P type distribution mode has not been received (step S79: No), the control unit 21 has received an instruction to change to the C / S type distribution mode from the information processing apparatus 1. Is determined (step S83). In this process, when the operation mode is the P2P type delivery mode, the control unit 21 issues an instruction to change to the C / S type delivery mode when receiving information on the C / S type delivery mode from the information processing apparatus 1. It is determined that it has been received. If it determines with having received the change instruction | indication to C / S type delivery mode (step S83: Yes), the control part 21 will perform the reconnection request | requirement with respect to the information processing apparatus 1 (step S84), and information processing apparatus after that. The content data streamed from 1 is sequentially acquired via the communication unit 31 and played back (step S85).

ステップS82,S85の処理が終了したとき、又は、C/S型配信モードへの変更指示を受信していないと判定したとき(ステップS83:No)、制御部21は、その他の処理を実行する(ステップS86)。   When the processes of steps S82 and S85 are completed, or when it is determined that an instruction to change to the C / S type distribution mode has not been received (step S83: No), the control unit 21 executes other processes. (Step S86).

ステップS86において、例えば、ユーザから入力部20への操作によってコンテンツの視聴を終了するための操作があったとき、制御部21は、離脱要求メッセージを情報処理装置1へ送信することによって、情報処理装置1へコンテンツ視聴の終了を通知する。また、ツリー状階層構造において自端末装置の上流側に接続した端末装置2(以下、「上流端末装置2」とする)が突然にコンテンツ配信システムSから離脱したとき、制御部21は、自端末装置2の固有識別情報を含む再接続要求メッセージを通信部31を介して情報処理装置1へ送信することによって、再接続要求を行う。制御部11は、この再接続要求に応じて情報処理装置1から通知される接続先候補の他の端末装置2に接続し、この他の端末装置2からストリーム配信されるコンテンツデータを通信部31を介して順次取得し、再生する。また、上流端末装置2の離脱予定の情報を情報処理装置1又は上流端末装置2から受信すると、制御部21は、自端末装置2の固有識別情報を含む再接続要求メッセージを通信部31を介して情報処理装置1へ送信することによって、再接続要求を行う。制御部11は、この再接続要求に応じて情報処理装置1から通知される接続先候補の他の端末装置2に接続し、この他の端末装置2からストリーム配信されるコンテンツデータを通信部31を介して順次取得し、再生する。また、他の端末装置2から接続要求があると、制御部21は、接続要求を行った他の端末装置2を自端末装置2の下流の端末装置2として接続し、コンテンツデータのストリームを送信する。   In step S86, for example, when there is an operation for ending content viewing by an operation on the input unit 20 from the user, the control unit 21 transmits an exit request message to the information processing apparatus 1 to process information. The apparatus 1 is notified of the end of content viewing. When the terminal device 2 connected to the upstream side of the terminal device in the tree-like hierarchical structure (hereinafter referred to as “upstream terminal device 2”) suddenly leaves the content distribution system S, the control unit 21 A reconnection request is made by transmitting a reconnection request message including the unique identification information of the apparatus 2 to the information processing apparatus 1 via the communication unit 31. The control unit 11 connects to the other terminal device 2 of the connection destination candidate notified from the information processing device 1 in response to the reconnection request, and transmits the content data stream-distributed from the other terminal device 2 to the communication unit 31. To obtain and play sequentially. In addition, when the information about the withdrawal schedule of the upstream terminal device 2 is received from the information processing device 1 or the upstream terminal device 2, the control unit 21 sends a reconnection request message including the unique identification information of the terminal device 2 via the communication unit 31. Then, a reconnection request is made by transmitting the information to the information processing apparatus 1. The control unit 11 connects to the other terminal device 2 of the connection destination candidate notified from the information processing device 1 in response to the reconnection request, and transmits the content data stream-distributed from the other terminal device 2 to the communication unit 31. To obtain and play sequentially. When there is a connection request from another terminal device 2, the control unit 21 connects the other terminal device 2 that has made the connection request as the terminal device 2 downstream of the terminal device 2, and transmits a stream of content data. To do.

ステップS86の処理が終了したとき、制御部21は、端末処理の終了指示を検知したかを判定する(ステップS87)。例えば、自端末装置2の電源がOFF状態へ移行したとき、制御部21は、終了指示を検知する。終了指示を検知したと判定すると(ステップS87:Yes)、制御部21は、メイン処理を終了し、一方、終了指示を検知していないと判定すると(ステップS87:No)、制御部21は、ステップS79からの処理を繰り返す。   When the process of step S86 is completed, the control unit 21 determines whether a terminal process termination instruction has been detected (step S87). For example, when the power of the terminal device 2 is shifted to the OFF state, the control unit 21 detects an end instruction. When it is determined that an end instruction has been detected (step S87: Yes), the control unit 21 ends the main process. On the other hand, when it is determined that no end instruction has been detected (step S87: No), the control unit 21 The processing from step S79 is repeated.

以上のように、第1実施形態におけるコンテンツ配信システムSでは、端末装置2の状態に応じて、ツリー型トポロジーでのコンテンツデータの配信とクライアント−サーバ方式でのコンテンツデータの配信とを切り替えるようにしている。従って、端末装置2の状態が変化する場合においてもコンテンツデータの配信を行うことができる。   As described above, in the content distribution system S in the first embodiment, the distribution of content data in the tree topology and the distribution of content data in the client-server system are switched according to the state of the terminal device 2. ing. Therefore, even when the state of the terminal device 2 changes, content data can be distributed.

なお、上述の実施形態では、通信速度として、受信速度(下りの帯域幅)と送信速度(上りの帯域幅)について規定値を満たすときに高速端末装置として判定したが、これに限られない。例えば、ADSLに接続された端末装置2と光通信回線に接続された端末装置2としかないような場合には、送信速度のみを測定し、この送信速度が規定値を満たすときに高速端末装置として判定してもよい。   In the above-described embodiment, the communication speed is determined as the high-speed terminal device when the reception speed (downlink bandwidth) and the transmission speed (uplink bandwidth) satisfy the specified values. However, the present invention is not limited to this. For example, when there are only the terminal device 2 connected to the ADSL and the terminal device 2 connected to the optical communication line, only the transmission speed is measured, and when this transmission speed satisfies a specified value, the high-speed terminal apparatus You may determine as.

〔2.第2実施形態〕
〔2.1.概要〕
まず始めに、第2実施形態におけるコンテンツ配信システムの概要について説明する。
[2. Second Embodiment]
[2.1. Overview〕
First, an outline of the content distribution system in the second embodiment will be described.

第2実施形態におけるコンテンツ配信システム(以下、「コンテンツ配信システムS’」という)は、視聴要求に応じてコンテンツデータを配信するオンデマンド方式のP2P型のコンテンツ配信システムである。このコンテンツ配信システムS’は、情報処理装置(以下、「情報処理装置1’」という)と複数の端末装置(以下、「端末装置2’」という)とを有している。また、複数の端末装置2’は互いにコンテンツデータを送受信するオーバーレイネットワークであるP2Pネットワーク(以下、「P2PネットワークN」という)を構成可能としている。複数の端末装置2’には、複数のコンテンツデータが分散保存される。   The content distribution system (hereinafter referred to as “content distribution system S ′”) in the second embodiment is an on-demand P2P type content distribution system that distributes content data in response to a viewing request. The content distribution system S ′ includes an information processing device (hereinafter referred to as “information processing device 1 ′”) and a plurality of terminal devices (hereinafter referred to as “terminal device 2 ′”). Further, the plurality of terminal devices 2 ′ can configure a P2P network (hereinafter referred to as “P2P network N”), which is an overlay network that transmits and receives content data to and from each other. A plurality of content data are distributed and stored in the plurality of terminal devices 2 ′.

このシステムS’では、各端末装置2’とコンテンツデータにそれぞれ固有の識別IDが割り当てられている。固有の識別IDとして端末装置2’には端末IDが割り当てられる。また、固有の識別IDとしてコンテンツデータにはコンテンツIDが割り当てられる。端末装置2’がP2PネットワークNを構成している場合、この識別IDに基づいて、端末装置2’間でデータの送受信が行われる。本実施形態においては、各識別IDはnビットの数字で規定される。また、コンテンツIDを超えず、このコンテンツIDに最も近い端末IDを有する端末装置2’(以下、「ルートノード」と呼ぶ。)がそのコンテンツIDに対応するインデックステーブルを記憶している。このインデックステーブルは、コンテンツIDに対応するコンテンツデータを保持するコンテンツホルダの所在情報とコンテンツIDとを関連づけたテーブルである。なお、コンテンツホルダの所在情報は、例えば、コンテンツホルダのIPアドレスである。各端末装置2’はコンテンツデータを取得すると、コンテンツホルダとなり、ルートノード宛に自装置の所在情報などを含む登録メッセージをルートノードに送信する。また、各端末装置2’は、一部の端末装置2’の所在情報を記憶しており、所在情報を記憶した端末装置2’のうち宛先の識別IDに最も近い番号の端末装置2’を選択してメッセージを送信又は転送する。なお、上述した分散保存を含む具体的な動作については、例えば、特開2008−250570号公報等に記載された公知の技術であるため、ここでは説明を省略する。   In the system S ′, a unique identification ID is assigned to each terminal device 2 ′ and content data. A terminal ID is assigned to the terminal device 2 ′ as a unique identification ID. Further, a content ID is assigned to the content data as a unique identification ID. When the terminal device 2 ′ constitutes the P2P network N, data transmission / reception is performed between the terminal devices 2 ′ based on this identification ID. In the present embodiment, each identification ID is defined by an n-bit number. Further, the terminal device 2 ′ (hereinafter referred to as “root node”) having a terminal ID closest to the content ID without exceeding the content ID stores an index table corresponding to the content ID. This index table is a table in which location information of a content holder holding content data corresponding to a content ID is associated with the content ID. The location information of the content holder is, for example, the IP address of the content holder. When each terminal device 2 ′ acquires the content data, it becomes a content holder, and transmits a registration message including the location information of the own device to the root node. Each terminal device 2 ′ stores the location information of a part of the terminal devices 2 ′. Among the terminal devices 2 ′ storing the location information, the terminal device 2 ′ having the number closest to the destination identification ID is selected. Select to send or forward a message. Note that the specific operation including the distributed storage described above is a known technique described in, for example, Japanese Patent Application Laid-Open No. 2008-250570, and the description thereof is omitted here.

第2実施形態のコンテンツ配信システムS’では、まず、情報処理装置1’から一部の端末装置2’にコンテンツデータが送信される。これにより、端末装置2’がP2PネットワークNを構成している場合、コンテンツ配信システムS’においてコンテンツデータの送受信が可能となる。この場合、端末装置2’間でコンテンツデータが送受信され、コンテンツホルダとなる端末装置2’が増加する。しかし、コンテンツホルダの数が少ないにも関わらず、コンテンツデータを要求する端末装置2’(以下、「リクエスタ」という)が多すぎると、リクエスタでコンテンツデータを受信できない場合がある。また、P2PネットワークNから端末装置2’の離脱が頻繁に行われる場合も同様にリクエスタでコンテンツデータを受信できない場合がある。   In the content distribution system S ′ of the second embodiment, first, content data is transmitted from the information processing device 1 ′ to some terminal devices 2 ′. As a result, when the terminal device 2 ′ forms the P2P network N, the content data can be transmitted and received in the content distribution system S ′. In this case, content data is transmitted and received between the terminal devices 2 ′, and the number of terminal devices 2 ′ that are content holders increases. However, even if the number of content holders is small, if there are too many terminal devices 2 ′ (hereinafter referred to as “requesters”) that request content data, the requester may not be able to receive the content data. Similarly, when the terminal device 2 ′ is frequently removed from the P2P network N, the requester may not be able to receive the content data.

そこで、第2実施形態における情報処理装置1’は、端末装置2’同士を接続してP2P形式でコンテンツデータを配信させるP2P配信モードと、情報処理装置1’と端末装置2’間でクライアント−サーバ形式でコンテンツデータを配信するC/S型配信モードとを切り替えるようにしている。   Therefore, the information processing apparatus 1 ′ in the second embodiment connects the terminal apparatuses 2 ′ to each other and distributes content data in the P2P format, and between the information processing apparatus 1 ′ and the terminal apparatus 2 ′. A C / S distribution mode for distributing content data in a server format is switched.

例えば、端末装置2’の数が情報処理装置1’の配信能力を超えていない場合には、C/S型配信モードでコンテンツデータの配信を行う一方、情報処理装置1’の配信能力を超えている場合には、P2P配信モードでコンテンツデータを配信させる。また、例えば、コンテンツ配信システムS’に参加している複数の端末装置2’のうち通信速度(帯域幅)が規定値以上である端末装置2’の割合が所定以上であるか否かを判定して配信モードを変える。すなわち、通信速度が規定値以上である端末装置2’の割合が所定以上であるときには、P2P配信モードでコンテンツデータを配信させる。また、通信速度が規定値以上である端末装置2’の割合が所定以上でないときには、C/S型配信モードでコンテンツデータの配信を行うようにしてもよい。   For example, when the number of terminal devices 2 ′ does not exceed the distribution capability of the information processing device 1 ′, the content data is distributed in the C / S type distribution mode, while the distribution capability of the information processing device 1 ′ is exceeded. If so, the content data is distributed in the P2P distribution mode. Further, for example, it is determined whether or not the ratio of the terminal devices 2 ′ whose communication speed (bandwidth) is equal to or greater than a predetermined value among the plurality of terminal devices 2 ′ participating in the content distribution system S ′ is equal to or greater than a predetermined value And change the delivery mode. That is, content data is distributed in the P2P distribution mode when the proportion of the terminal devices 2 ′ whose communication speed is equal to or higher than a specified value is equal to or higher than a predetermined value. In addition, when the ratio of the terminal devices 2 ′ whose communication speed is equal to or higher than a specified value is not equal to or higher than a predetermined value, content data may be distributed in the C / S type distribution mode.

このように端末装置2’の数や各々の通信能力等の端末装置2’の状態に応じて、P2P型配信モードとC/S型配信モードとを切り替えるようにすることで、リクエスタの状態が変化する場合においてもコンテンツデータの配信を行うことができる。   In this way, by switching between the P2P type delivery mode and the C / S type delivery mode in accordance with the state of the terminal equipment 2 ′ such as the number of terminal equipments 2 ′ and the respective communication capabilities, the requester status is changed. Even in the case of a change, content data can be distributed.

P2P型配信モードとC/S型配信モードとの切り替えは、端末装置2’の状態に基づき、P2P型配信モードでコンテンツデータの配信をするための条件を満たすか否かを判定することによって行われる。例えば、上述のように、端末装置2’の数が情報処理装置1’の配信能力を超えているときに、コンテンツデータの配信をするための条件を満たすと判定する。また、コンテンツ配信システムS’に参加している複数の端末装置2’のうち通信速度(帯域幅)が規定値以上である端末装置2’の割合が所定以上であるとき、コンテンツデータの配信をするための条件を満たすと判定するようにしてもよい。なお、1実施形態と同様に、P2P型配信モードとC/S型配信モードとの切り替えは、全ての端末装置2’に対して行うのではなく、一部の端末装置2’に対してのみ行うようにすることもできる。また、単に、端末装置2’の数だけで、コンテンツデータの配信をするための条件を満たすか否かを判定するようにしてもよい。   Switching between the P2P type delivery mode and the C / S type delivery mode is performed by determining whether or not a condition for delivering content data in the P2P type delivery mode is satisfied based on the state of the terminal device 2 ′. Is called. For example, as described above, when the number of terminal devices 2 ′ exceeds the distribution capability of the information processing device 1 ′, it is determined that the condition for distributing content data is satisfied. In addition, when the proportion of the terminal devices 2 ′ whose communication speed (bandwidth) is equal to or greater than a predetermined value among the plurality of terminal devices 2 ′ participating in the content distribution system S ′ is greater than or equal to a predetermined value, the content data is distributed. You may make it determine with satisfy | filling the conditions for doing. As in the case of the first embodiment, switching between the P2P type delivery mode and the C / S type delivery mode is not performed for all terminal devices 2 ′ but only for some terminal devices 2 ′. You can also do it. Alternatively, it may be determined whether the condition for distributing content data is satisfied based on the number of terminal devices 2 ′.

[2.2.情報処理装置1’の具体的動作の説明]
次に、情報処理装置1’の具体的動作の一例について説明する。なお、情報処理装置1’の具体的構成は、第1実施形態の情報処理装置1と制御部11の情報処理プログラム以外は同様であり、以下においては同一符号を用いて説明し、ここでは説明を省略する。
[2.2. Description of specific operation of information processing apparatus 1 ′]
Next, an example of a specific operation of the information processing apparatus 1 ′ will be described. The specific configuration of the information processing apparatus 1 ′ is the same except for the information processing apparatus 1 of the first embodiment and the information processing program of the control unit 11, and will be described below using the same reference numerals. Is omitted.

図10に示すように、処理が開始すると、制御部11は、記憶部12の設定情報記憶領域における設定配信モードの情報をC/S型配信モードに設定する(ステップS100)。   As shown in FIG. 10, when the process starts, the control unit 11 sets the information of the setting distribution mode in the setting information storage area of the storage unit 12 to the C / S type distribution mode (step S100).

次に、制御部11は、コンテンツ投入指示が発生したか否かを判定する(ステップS101)。この処理において、制御部11は、例えば、記憶部12に記憶したコンテンツ配信情報で規定される配信時刻になると、コンテンツ投入指示が発生したと判定する。コンテンツ投入指示が発生したと判定すると(ステップS101:Yes)、制御部11は、コンテンツ配信システムS’を構成する複数の端末装置2’のうち一部の端末装置2’に対してコンテンツデータを送信して、この一部の端末装置2’をコンテンツホルダとして機能させる(ステップS102)。このように、制御部11は、端末装置2’間でコンテンツデータを送受信させるために、複数の端末装置2’のうち1以上の端末装置2’へコンテンツデータを、ネットワーク8を介して直接送信するコンテンツ投入手段として機能する。   Next, the control unit 11 determines whether or not a content input instruction has occurred (step S101). In this process, for example, the control unit 11 determines that a content input instruction has occurred when the distribution time specified by the content distribution information stored in the storage unit 12 is reached. If it is determined that a content input instruction has been generated (step S101: Yes), the control unit 11 sends content data to some terminal devices 2 ′ of the plurality of terminal devices 2 ′ that constitute the content distribution system S ′. The terminal device 2 ′ is transmitted and functions as a content holder (step S102). As described above, the control unit 11 directly transmits content data to one or more terminal devices 2 ′ among the plurality of terminal devices 2 ′ via the network 8 in order to transmit and receive content data between the terminal devices 2 ′. Functions as content input means.

ステップS102の処理が終了したとき、又は、コンテンツ投入指示が発生していないと判定したとき(ステップS101:No)、制御部11は、端末装置2’からコンテンツ配信システムS’への参加要求があったか否かを判定する(ステップS103)。この処理において端末装置2’から接続要求があったと判定すると(ステップS103:Yes)、制御部11は、接続要求を行った端末装置2’の端末装置情報を記憶部12の端末装置情報記憶領域に記憶する(ステップS104)。なお、「端末装置情報」とは、例えば、端末装置2の所在情報(例えば、IPアドレス)や通信速度の情報などの情報である。この端末装置情報は、制御部11が、後述するP2P型配信モード設定要求やC/S型配信モードの変更指示を行うときなどに用いられるものである。   When the process of step S102 is completed or when it is determined that the content input instruction has not occurred (step S101: No), the control unit 11 makes a request to participate in the content distribution system S ′ from the terminal device 2 ′. It is determined whether or not there has been (step S103). If it is determined in this process that there is a connection request from the terminal device 2 ′ (step S103: Yes), the control unit 11 stores the terminal device information of the terminal device 2 ′ that has made the connection request in the terminal device information storage area of the storage unit 12. (Step S104). The “terminal device information” is information such as location information (for example, IP address) of the terminal device 2 and communication speed information. This terminal device information is used when the control unit 11 issues a P2P type delivery mode setting request or a C / S type delivery mode change instruction to be described later.

端末装置情報を記憶した後、制御部11は、P2P型配信が適用可能か否かを判定する(ステップS105)。この処理において、制御部11は、P2PネットワークNを構成して、P2P型配信によりコンテンツデータを送受信することができるか否かを判定する。P2P型配信が適用可能であると判定すると(ステップS105:Yes)、制御部11は、P2P型配信モードを設定する(ステップS106)。この処理において、制御部11は、P2P型配信モードを設定する前に設定されていた配信モードがC/S型配信モードのとき、コンテンツ配信システムS’を構成する各端末装置2’に対して、P2P型配信モードへの変更指示を行う。一方、P2P型配信が適用可能でないと判定すると(ステップS105:No)、制御部11は、C/S型配信モードを設定する(ステップS107)。この処理において、制御部11は、C/S型配信モードを設定する前に設定されていた配信モードがP2P型配信モードのとき、コンテンツ配信システムS’を構成する各端末装置2’に対して、C/S型配信モードへの変更指示を行う。   After storing the terminal device information, the control unit 11 determines whether or not P2P type distribution is applicable (step S105). In this process, the control unit 11 determines whether or not the P2P network N can be configured and content data can be transmitted and received by P2P type distribution. If it determines with P2P type | mold delivery being applicable (step S105: Yes), the control part 11 will set P2P type | mold delivery mode (step S106). In this process, when the distribution mode set before setting the P2P type distribution mode is the C / S type distribution mode, the control unit 11 applies to each terminal device 2 ′ configuring the content distribution system S ′. Instruct to change to the P2P distribution mode. On the other hand, when determining that the P2P type distribution is not applicable (step S105: No), the control unit 11 sets the C / S type distribution mode (step S107). In this processing, when the distribution mode set before setting the C / S type distribution mode is the P2P type distribution mode, the control unit 11 applies to each terminal device 2 ′ constituting the content distribution system S ′. Instruct to change to C / S type distribution mode.

ステップS106,107の処理が終了したとき、又は、端末装置2’からの参加要求がないとき(ステップS103:No)、端末装置2’から離脱要求があったか否かを判定する(ステップS108)。端末装置2’から離脱要求があったと判定すると(ステップS108:Yes)、制御部11は、離脱要求を行った端末装置2’の端末装置情報を記憶部12の端末装置情報記憶領域から削除する(ステップS109)。その後、制御部11は、ステップS105の処理と同様に、設定している配信モードがP2P型配信モードであるか否かを判定する(ステップS110)。このとき、P2P型配信モードが設定されていると判定すると(ステップS110:Yes)、ステップS105の処理と同様に、制御部11は、P2P型配信が適用可能か否かを判定する(ステップS111)。P2P型配信が適用可能であると判定すると(ステップS111:Yes)、制御部11は、P2P型配信モードの設定を維持する(ステップS112)。一方、P2P型配信が適用可能でないと判定すると(ステップS111:No)、制御部11は、ステップS107の処理と同様に、C/S型配信モードに設定する(ステップS113)。   When the processing of steps S106 and 107 is completed, or when there is no participation request from the terminal device 2 '(step S103: No), it is determined whether or not there is a withdrawal request from the terminal device 2' (step S108). If it is determined that there is a withdrawal request from the terminal device 2 ′ (step S108: Yes), the control unit 11 deletes the terminal device information of the terminal device 2 ′ that has made the withdrawal request from the terminal device information storage area of the storage unit 12. (Step S109). Thereafter, the control unit 11 determines whether or not the set distribution mode is the P2P type distribution mode, similarly to the process of step S105 (step S110). At this time, if it is determined that the P2P type distribution mode is set (step S110: Yes), the control unit 11 determines whether or not the P2P type distribution is applicable (step S111) as in the process of step S105. ). If it determines with P2P type | mold delivery being applicable (step S111: Yes), the control part 11 will maintain the setting of P2P type | mold delivery mode (step S112). On the other hand, when determining that the P2P type distribution is not applicable (step S111: No), the control unit 11 sets the C / S type distribution mode in the same manner as the process of step S107 (step S113).

また、ステップS110において、P2P型配信モードが設定されていないと判定すると(ステップS110:No)、制御部11は、離脱要求を行った端末装置2’へのストリーム配信を停止する(ステップS114)。   If it is determined in step S110 that the P2P type delivery mode is not set (step S110: No), the control unit 11 stops the stream delivery to the terminal device 2 ′ that has made the withdrawal request (step S114). .

ステップS112〜S114の処理が終了したとき、又は、端末装置2’から離脱要求がないと判定したとき(ステップS108:No)、制御部11は、処理の終了指示を検知したかを判定する(ステップS115)。例えば、自情報処理装置1’の電源がOFF状態へ移行したとき、制御部11は、終了指示を検知する。制御部11は、終了指示を検知したと判定すると(ステップS115:Yes)、メイン処理を終了し、一方、終了指示を検知していないと判定すると(ステップS115:No)、ステップS101からの処理を繰り返す。   When the processes of steps S112 to S114 are completed, or when it is determined that there is no withdrawal request from the terminal device 2 ′ (step S108: No), the control unit 11 determines whether a process termination instruction has been detected (step S108: No). Step S115). For example, when the power source of the information processing apparatus 1 ′ is turned off, the control unit 11 detects an end instruction. When determining that the end instruction has been detected (step S115: Yes), the control unit 11 ends the main process. On the other hand, when determining that the end instruction has not been detected (step S115: No), the processing from step S101 is performed. repeat.

このように、情報処理装置1’の制御部11は、複数の端末装置2’同士をネットワークを介して接続させて、端末装置2’間でコンテンツデータを配信させる第1処理手段、複数の端末装置2’のそれぞれとネットワークを介してクライアント−サーバ形式で接続して、各端末装置2’にコンテンツデータを配信する第2処理手段して機能する。なお、このとき、情報処理装置1’は、コンテンツデータを記憶し、各端末装置2’にコンテンツデータを配信する記憶装置として機能する。また、制御部11は、端末装置2’間でコンテンツデータの配信を行うための所定条件を満たすか否かを判定する判定処理手段として機能する。そして、制御部11は、判定処理手段により所定条件を満たすと判定したとき、第1処理手段による処理を実行し、判定処理手段により所定条件を満たさないと判定したとき、第2処理手段による処理を実行する。   As described above, the control unit 11 of the information processing device 1 ′ connects the plurality of terminal devices 2 ′ to each other via the network, and distributes the content data between the terminal devices 2 ′, the plurality of terminals. It functions as a second processing means for connecting to each of the devices 2 ′ via a network in a client-server format and distributing content data to each terminal device 2 ′. At this time, the information processing apparatus 1 ′ functions as a storage device that stores content data and distributes the content data to each terminal device 2 ′. In addition, the control unit 11 functions as a determination processing unit that determines whether or not a predetermined condition for distributing content data between the terminal devices 2 ′ is satisfied. The control unit 11 executes processing by the first processing unit when the determination processing unit determines that the predetermined condition is satisfied, and executes processing by the second processing unit when the determination processing unit determines that the predetermined condition is not satisfied. Execute.

[2.3.端末装置2’の具体的動作の説明]
次に、端末装置2’の具体的動作の一例について説明する。なお、端末装置2’の具体的構成は、第1実施形態の端末装置2と制御部21の情報処理プログラム以外は同様であり、以下においては同一符号を用いて説明し、ここでは説明を省略する。
[2.3. Description of specific operation of terminal device 2 ′]
Next, an example of a specific operation of the terminal device 2 ′ will be described. The specific configuration of the terminal device 2 ′ is the same except for the terminal device 2 of the first embodiment and the information processing program of the control unit 21, and will be described below using the same reference numerals, and description thereof will be omitted here. To do.

図11に示すように、処理が開始すると、制御部21は、まず、各種メッセージを受信したか否かを判定する(ステップS140)。この処理において、制御部21は、コンテンツ検索メッセージ、コンテンツ登録メッセージ、コンテンツ送信要求メッセージ、コンテンツ受信要求メッセージなどのメッセージのうちいずれかを通信部31を介して受信したときに、各種メッセージを受信したと判定する。各種メッセージを受信したと判定すると(ステップS140:Yes)、制御部21は、各種メッセージ処理を行う(ステップS141)。なお、コンテンツ送信要求メッセージは宛先の端末装置2に対してコンテンツデータの送信を要求するメッセージであり、コンテンツ受信要求メッセージは宛先の端末装置2に対してコンテンツデータの受信を要求するメッセージである。各種メッセージは、宛先が自端末装置2でないときには、他の端末装置2へ転送する。このメッセージ処理は、公知の技術であり、例えば、特開2008−250570号公報等に記載された技術である。   As shown in FIG. 11, when the process starts, the control unit 21 first determines whether various messages have been received (step S140). In this process, the control unit 21 receives various messages when receiving any one of a message such as a content search message, a content registration message, a content transmission request message, and a content reception request message via the communication unit 31. Is determined. If it determines with having received various messages (step S140: Yes), the control part 21 will perform various message processing (step S141). The content transmission request message is a message requesting the destination terminal device 2 to transmit content data, and the content reception request message is a message requesting the destination terminal device 2 to receive content data. Various messages are transferred to another terminal device 2 when the destination is not the terminal device 2 itself. This message processing is a known technique, for example, a technique described in Japanese Patent Application Laid-Open No. 2008-250570.

ステップ140において、各種メッセージを受信していないを判定したとき(ステップS140:No)、又は、ステップS141の処理が終了したとき、制御部21は、まず、P2P型配信モードへの変更指示を受信したか否かを判定する(ステップS150)。この処理において、情報処理装置1’から送信されたP2P型配信モードへの変更指示を受信したと判定すると(ステップS150:Yes)、制御部21は、動作モードをP2P型配信モードに設定する(ステップS151)。   When it is determined in step 140 that various messages have not been received (step S140: No), or when the process of step S141 is completed, the control unit 21 first receives an instruction to change to the P2P type distribution mode. It is determined whether or not (step S150). In this process, when it is determined that the instruction to change to the P2P type delivery mode transmitted from the information processing apparatus 1 ′ is received (step S150: Yes), the control unit 21 sets the operation mode to the P2P type delivery mode ( Step S151).

一方、P2P型配信モードへの変更指示を受信していないと判定すると(ステップS150:No)、制御部21は、C/S型配信モードへの変更指示を受信したか否かを判定する(ステップS152)。この処理において、C/S型配信モードへの変更指示を受信したと判定すると(ステップS152:Yes)、制御部21は、動作モードをC/S型配信モードに設定する(ステップS153)。   On the other hand, if it is determined that an instruction to change to the P2P type distribution mode has not been received (step S150: No), the control unit 21 determines whether an instruction to change to the C / S type distribution mode has been received (step S150: No). Step S152). In this process, if it is determined that an instruction to change to the C / S type distribution mode has been received (step S152: Yes), the control unit 21 sets the operation mode to the C / S type distribution mode (step S153).

ステップS151,S153の処理が終了したとき、又はC/S型配信モードへの変更指示を受信していないと判定すると(ステップS152:No)、制御部21は、コンテンツの視聴要求があったか否かを判定する(ステップS154)。この処理において、制御部21は、自端末装置2’のユーザから入力部20への操作によってコンテンツを視聴するための操作があったとき、コンテンツ視聴要求が発生したと判定する。コンテンツ視聴要求が発生したと判定すると(ステップS154:Yes)、動作モードがP2P型配信モードに設定されているか否かを判定する(ステップS155)。この処理において、動作モードがP2P型配信モードに設定されていると判定すると(ステップS155:Yes)、制御部21は、コンテンツ検索メッセージをネットワーク8を介して他の端末装置2へ送信する(ステップS156)。制御部21は、このコンテンツ検索メッセージに対して、コンテンツホルダの所在情報を取得する(ステップS157)。そして、制御部21は、このコンテンツホルダに対してネットワーク8を介してコンテンツ送信要求メッセージを送信し、コンテンツホルダからネットワーク8を介してコンテンツデータのストリームを受信する(ステップS158)。なお、制御部21は、コンテンツデータをコンテンツホルダから取得すると、ネットワーク8を介してコンテンツ登録メッセージを他の端末装置2’へ送信する。   When the processes of steps S151 and S153 are completed, or when it is determined that an instruction to change to the C / S distribution mode has not been received (step S152: No), the control unit 21 determines whether or not there is a content viewing request. Is determined (step S154). In this process, the control unit 21 determines that a content viewing request has occurred when there is an operation for viewing content by an operation on the input unit 20 from the user of the terminal device 2 '. If it is determined that a content viewing request has occurred (step S154: Yes), it is determined whether or not the operation mode is set to the P2P distribution mode (step S155). In this process, when it is determined that the operation mode is set to the P2P type delivery mode (step S155: Yes), the control unit 21 transmits a content search message to another terminal device 2 via the network 8 (step S155). S156). In response to the content search message, the control unit 21 acquires location information of the content holder (step S157). Then, the control unit 21 transmits a content transmission request message to the content holder via the network 8, and receives a content data stream from the content holder via the network 8 (step S158). In addition, the control part 21 will transmit a content registration message to other terminal devices 2 'via the network 8, if content data is acquired from a content holder.

一方、動作モードがP2P型配信モードに設定されていないと判定すると(ステップS155:No)、制御部21は、ネットワーク8を介して情報処理装置1’に対して接続要求を行う(ステップS159)。その後、制御部21は、ネットワーク8を介して情報処理装置1’からコンテンツデータのストリームを受信する(ステップS160)。このように制御部21は、情報処理装置1’とクライアント−サーバ形式で接続して、情報処理装置1’からコンテンツデータを取得する。   On the other hand, when determining that the operation mode is not set to the P2P distribution mode (step S155: No), the control unit 21 issues a connection request to the information processing apparatus 1 ′ via the network 8 (step S159). . Thereafter, the control unit 21 receives a stream of content data from the information processing apparatus 1 'via the network 8 (step S160). As described above, the control unit 21 is connected to the information processing apparatus 1 ′ in the client-server format, and acquires content data from the information processing apparatus 1 ′.

ステップS158,S160の処理が終了したとき、又は、コンテンツの視聴要求がないと判定すると(ステップS154:No)、制御部21は、処理の終了指示を検出したかを判定する(ステップS170)。例えば、自端末装置2’の電源がOFF状態へ移行したとき、制御部21は、終了指示を検知する。制御部21は、終了指示を検知したと判定すると(ステップS170:Yes)、本処理を終了し、一方、終了指示を検知していないと判定すると(ステップS170:No)、ステップS140からの処理を繰り返す。   When the processes of steps S158 and S160 are completed, or when it is determined that there is no content viewing request (step S154: No), the control unit 21 determines whether a process end instruction has been detected (step S170). For example, when the power supply of the terminal device 2 ′ is shifted to the OFF state, the control unit 21 detects an end instruction. When determining that the end instruction has been detected (step S170: Yes), the control unit 21 ends the present process. On the other hand, when determining that the end instruction has not been detected (step S170: No), the processing from step S140 is performed. repeat.

以上のように、本実施形態におけるコンテンツ配信システムS’では、端末装置の状態に応じて、P2P方式でのコンテンツデータの配信とクライアント−サーバ方式でのコンテンツデータの配信とを切り替えるようにしているため、端末装置の状態が変化する場合においてもコンテンツデータの配信を行うことができる。   As described above, in the content distribution system S ′ according to the present embodiment, the distribution of content data in the P2P method and the distribution of content data in the client-server method are switched according to the state of the terminal device. Therefore, it is possible to distribute content data even when the state of the terminal device changes.

また、端末装置として、例えば、コンテンツデータの配信を受ける機能を有するサーバやその他のノード装置も当然に適用可能である。   Further, as a terminal device, for example, a server having a function of receiving distribution of content data and other node devices are naturally applicable.

また、上述では、ステップS43,S45,S52,S61,S74,S76,S78,S82,S85,S114,S158,S160等において、ストリーム配信により、各端末装置2及び端末装置2’においてコンテンツデータを受信しながら再生させる例を説明したが、これに限られない。例えば、各端末装置2及び端末装置2’においてコンテンツデータをダウンロードした後に、コンテンツデータの再生を行うことができるようにしてもよい。このとき、コンテンツデータを送信する情報処理装置1及び情報処理装置1’の制御部11、または、端末装置2及び端末装置2’の制御部21は、送信先の端末装置2及び端末装置2’に、コンテンツデータの再生後でも各端末装置の記憶部で保存及び利用可能なようにコンテンツデータを配信する。そして、コンテンツデータをダウンロードする端末装置2及び端末装置2’の制御部21は、記憶部22に受信したコンテンツデータを記憶する。その後、端末装置2及び端末装置2’の制御部21は、記憶部22に記憶したコンテンツデータをデコーダ部25により順次取り出してデコードする。デコードされたコンテンツデータのうち、映像情報は映像処理部26により表示部27で表示可能な情報に変換処理され、音声情報は音声処理部28により、スピーカ29で音波として出力可能な情報に変換処理される。再生が終了したコンテンツデータは、各端末装置2及び端末装置2’の間で送受信可能なように、各記憶部22に記憶される。   Further, in the above description, content data is received in each terminal device 2 and terminal device 2 ′ by stream distribution in steps S43, S45, S52, S61, S74, S76, S78, S82, S85, S114, S158, S160, and the like. However, the present invention is not limited to this. For example, the content data may be played back after the content data is downloaded in each terminal device 2 and terminal device 2 ′. At this time, the control unit 11 of the information processing device 1 and the information processing device 1 ′ that transmits the content data, or the control unit 21 of the terminal device 2 and the terminal device 2 ′ transmits the terminal device 2 and the terminal device 2 ′ that are transmission destinations. In addition, the content data is distributed so that it can be stored and used in the storage unit of each terminal device even after the content data is reproduced. The terminal device 2 that downloads the content data and the control unit 21 of the terminal device 2 ′ store the received content data in the storage unit 22. Thereafter, the control unit 21 of the terminal device 2 and the terminal device 2 ′ sequentially extracts and decodes the content data stored in the storage unit 22 by the decoder unit 25. Of the decoded content data, the video information is converted into information that can be displayed on the display unit 27 by the video processing unit 26, and the audio information is converted into information that can be output as sound waves by the speaker 29 by the audio processing unit 28. Is done. The content data that has been reproduced is stored in each storage unit 22 so that it can be transmitted and received between each terminal device 2 and terminal device 2 '.

また、上述の実施形態では、情報処理装置1及び情報処理装置1’を記憶装置として各端末装置2及び端末装置2’とクライアント−サーバ形式で接続するようにしたが、これに限られない。例えば、特定の端末装置2及び端末装置2’を記憶装置として、その他の端末装置2及び端末装置2’とクライアント−サーバ形式で接続するようにしてもよい。   In the above-described embodiment, the information processing device 1 and the information processing device 1 ′ are connected as storage devices to the terminal devices 2 and 2 ′ in the client-server format. However, the present invention is not limited to this. For example, a specific terminal device 2 and terminal device 2 ′ may be used as storage devices, and may be connected to other terminal devices 2 and terminal devices 2 ′ in a client-server format.

1、1’ 情報処理装置
2、2’ 端末装置
11 情報処理装置の制御部
21 端末装置の制御部
8 ネットワーク
1, 1 'information processing device 2, 2' terminal device 11 information processing device control unit 21 terminal device control unit 8 network

Claims (9)

複数の端末装置同士をネットワークを介して接続させて、コンテンツデータを前記端末装置間で送受信させる第1処理手段と、
前記コンテンツデータを記憶した記憶装置を前記複数の端末装置のそれぞれと前記ネットワークを介してクライアント−サーバ形式で接続して、各前記端末装置に前記コンテンツデータを配信させる第2処理手段と、
前記端末装置間で前記コンテンツデータの配信を行うための所定条件を満たすか否かを判定する判定処理手段と、を備え、
前記判定処理手段により前記所定条件を満たすと判定したとき、前記第1処理手段による処理を実行し、前記判定処理手段により前記所定条件を満たさないと判定したとき、前記第2処理手段による処理を実行することを特徴とする情報処理装置。
A first processing means for connecting a plurality of terminal devices via a network and transmitting / receiving content data between the terminal devices;
A second processing means for connecting the storage device storing the content data to each of the plurality of terminal devices in a client-server format via the network, and for delivering the content data to each of the terminal devices;
Determination processing means for determining whether or not a predetermined condition for distributing the content data between the terminal devices is satisfied,
When the determination processing means determines that the predetermined condition is satisfied, the processing by the first processing means is executed, and when the determination processing means determines that the predetermined condition is not satisfied, the processing by the second processing means is performed. An information processing apparatus that executes the information processing apparatus.
前記判定処理手段は、前記複数の端末装置のうち通信速度が規定値以上である端末装置の割合が所定以上であるときに、前記所定条件を満たすと判定することを特徴とする請求項1に記載の情報処理装置。   2. The determination processing unit according to claim 1, wherein the determination processing unit determines that the predetermined condition is satisfied when a ratio of terminal devices having a communication speed equal to or higher than a predetermined value among the plurality of terminal devices is equal to or higher than a predetermined value. The information processing apparatus described. 前記判定処理手段は、前記複数の端末装置のうち通信速度が規定値以上である端末装置の数が所定以上あるときに、前記所定条件を満たすと判定することを特徴とする請求項1又は2に記載の情報処理装置。   The determination processing means determines that the predetermined condition is satisfied when the number of terminal devices having a communication speed equal to or higher than a predetermined value among the plurality of terminal devices is equal to or greater than a predetermined value. The information processing apparatus described in 1. 前記判定処理手段は、前記複数の端末装置の数が、所定数以上になったときに、前記所定条件を満たすと判定することを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the determination processing unit determines that the predetermined condition is satisfied when the number of the plurality of terminal devices becomes equal to or greater than a predetermined number. 前記第1処理手段は、前記複数の端末装置をネットワークを介して階層構造で多層に論理接続させて、コンテンツデータを前記階層構造の上流の端末装置に供給し、当該上流の端末装置から下流の端末装置にかけて前記端末装置の中継機能によって前記コンテンツデータの配信を行い、前記第2処理手段による処理を実行した後に前記階層構造を形成するときには、前記通信速度が規定値以上である端末装置を優先的に前記階層構造の上流に接続させることを特徴とする請求項1〜4のいずれか1項に記載の情報処理装置。   The first processing means logically connects the plurality of terminal devices in a hierarchical structure via a network, supplies content data to an upstream terminal device in the hierarchical structure, and downstream from the upstream terminal device. When the content data is distributed to the terminal device by the relay function of the terminal device and the hierarchical structure is formed after the processing by the second processing means is performed, the terminal device having the communication speed equal to or higher than a specified value is given priority. The information processing apparatus according to claim 1, wherein the information processing apparatus is connected upstream of the hierarchical structure. 前記第2処理手段は、前記第1処理手段による処理を実行した後に前記複数の端末装置のそれぞれと接続するときには、前記階層構造の下流の端末装置から優先的に前記階層構造から離脱させて接続することを特徴とする請求項5に記載の情報処理装置。   When the second processing means is connected to each of the plurality of terminal devices after executing the processing by the first processing means, the second processing means is preferentially disconnected from the hierarchical structure from a terminal device downstream of the hierarchical structure. The information processing apparatus according to claim 5. 複数の端末装置と、前記複数の端末装置へコンテンツデータを配信する情報処理装置と、を備えたコンテンツ配信システムにおいて、
前記端末装置は、
前記コンテンツデータをネットワークを介して受信する受信処理手段と、
前記受信処理手段で受信したコンテンツデータをネットワークを介して他の端末装置へ送信する送信処理手段と、を備え、
前記情報処理装置は、
複数の端末装置同士をネットワークを介して接続させて、コンテンツデータを前記端末装置間で送受信させる第1処理手段と、
前記コンテンツデータを記憶した記憶装置を前記複数の端末装置のそれぞれと前記ネットワークを介してクライアント−サーバ形式で接続して、各前記端末装置に前記コンテンツデータを配信させる第2処理手段と、
前記端末装置間で前記コンテンツデータの配信を行うための所定条件を満たすか否かを判定する判定処理手段と、を備え、
前記判定処理手段により前記所定条件を満たすと判定したとき、前記第1処理手段による処理を実行し、前記判定処理手段により前記所定条件を満たさないと判定したとき、前記第2処理手段による処理を実行することを特徴とするコンテンツ配信システム。
In a content distribution system comprising a plurality of terminal devices and an information processing device that distributes content data to the plurality of terminal devices,
The terminal device
Receiving processing means for receiving the content data via a network;
Transmission processing means for transmitting content data received by the reception processing means to another terminal device via a network,
The information processing apparatus includes:
A first processing means for connecting a plurality of terminal devices via a network and transmitting / receiving content data between the terminal devices;
A second processing means for connecting the storage device storing the content data to each of the plurality of terminal devices in a client-server format via the network, and for delivering the content data to each of the terminal devices;
Determination processing means for determining whether or not a predetermined condition for distributing the content data between the terminal devices is satisfied,
When the determination processing means determines that the predetermined condition is satisfied, the processing by the first processing means is executed, and when the determination processing means determines that the predetermined condition is not satisfied, the processing by the second processing means is performed. A content distribution system characterized by being executed.
端末装置間でコンテンツデータの配信を行うための所定条件を満たすか否かを判定するステップと、
前記所定条件を満たすと判定すると、複数の端末装置同士をネットワークを介して接続させて、コンテンツデータを前記端末装置間で送受信させるステップと、
前記所定条件を満たさないと判定すると、前記コンテンツデータを記憶した記憶装置を前記複数の端末装置のそれぞれと前記ネットワークを介してクライアント−サーバ形式で接続して、各前記端末装置に前記コンテンツデータを配信させるステップと、をコンピュータに実行させることを特徴とするプログラム。
Determining whether or not a predetermined condition for distributing content data between terminal devices is satisfied;
When it is determined that the predetermined condition is satisfied, a step of connecting a plurality of terminal devices via a network and transmitting / receiving content data between the terminal devices;
If it is determined that the predetermined condition is not satisfied, a storage device storing the content data is connected to each of the plurality of terminal devices in a client-server format via the network, and the content data is transferred to each of the terminal devices. And causing the computer to execute the step of distributing.
端末装置間でコンテンツデータの配信を行うための所定条件を満たすか否かを判定するステップと、
前記所定条件を満たすと判定すると、複数の端末装置同士をネットワークを介して接続させて、コンテンツデータを前記端末装置間で送受信させるステップと、
前記所定条件を満たさないと判定すると、前記コンテンツデータを記憶した記憶装置を前記複数の端末装置のそれぞれと前記ネットワークを介してクライアント−サーバ形式で接続して、各前記端末装置に前記コンテンツデータを配信させるステップと、を有する情報処理装置によるコンテンツ配信制御方法。
Determining whether or not a predetermined condition for distributing content data between terminal devices is satisfied;
When it is determined that the predetermined condition is satisfied, a step of connecting a plurality of terminal devices via a network and transmitting / receiving content data between the terminal devices;
If it is determined that the predetermined condition is not satisfied, a storage device storing the content data is connected to each of the plurality of terminal devices in a client-server format via the network, and the content data is transferred to each of the terminal devices. A content distribution control method by an information processing apparatus.
JP2009154082A 2009-06-29 2009-06-29 Information processing apparatus, content distributing system, method of controlling content distribution, and program Pending JP2011008709A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009154082A JP2011008709A (en) 2009-06-29 2009-06-29 Information processing apparatus, content distributing system, method of controlling content distribution, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009154082A JP2011008709A (en) 2009-06-29 2009-06-29 Information processing apparatus, content distributing system, method of controlling content distribution, and program

Publications (1)

Publication Number Publication Date
JP2011008709A true JP2011008709A (en) 2011-01-13

Family

ID=43565244

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009154082A Pending JP2011008709A (en) 2009-06-29 2009-06-29 Information processing apparatus, content distributing system, method of controlling content distribution, and program

Country Status (1)

Country Link
JP (1) JP2011008709A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011182061A (en) * 2010-02-26 2011-09-15 Nippon Hoso Kyokai <Nhk> Communication terminal and data delivery system switching program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10187643A (en) * 1996-12-19 1998-07-21 Internatl Business Mach Corp <Ibm> Method and system for increasing server capacity on network computer system
JP2005524920A (en) * 2002-05-17 2005-08-18 ソニー・コンピュータ・エンタテインメント・アメリカ・インク Dynamic switching of configuration between network communication architectures
JP2007317127A (en) * 2006-05-29 2007-12-06 Brother Ind Ltd Content distribution system, content management device in it, connection management device, terminal device, content distribution method, and program used for it

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10187643A (en) * 1996-12-19 1998-07-21 Internatl Business Mach Corp <Ibm> Method and system for increasing server capacity on network computer system
JP2005524920A (en) * 2002-05-17 2005-08-18 ソニー・コンピュータ・エンタテインメント・アメリカ・インク Dynamic switching of configuration between network communication architectures
JP2007317127A (en) * 2006-05-29 2007-12-06 Brother Ind Ltd Content distribution system, content management device in it, connection management device, terminal device, content distribution method, and program used for it

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011182061A (en) * 2010-02-26 2011-09-15 Nippon Hoso Kyokai <Nhk> Communication terminal and data delivery system switching program

Similar Documents

Publication Publication Date Title
EP2104287A1 (en) A method for client node network topology construction and a system for stream media delivery
CN101959054A (en) Integrated P2P (Peer-To-Peer) VOD (Video-On-Demand) system and partner node selecting method
KR20110095231A (en) Method and apparatus for peer to peer streaming
WO2008080343A1 (en) A method and apparatus for reducing delay of media play
EP3207686B1 (en) Adaptive bit rates during broadcast transmission in distributed content delivery networks
JP5724139B2 (en) P2P Internet live broadcast service system and method for forming a P2P tree structure according to the number of sessions
JP2008294626A (en) Content distributed storage system, content storing method, node device, and node processing program
JP2006041784A (en) Connector mode setter and setting method, connection mode controller and controlling method
CN101714987A (en) P2P playing method and system
JP2008278337A (en) Information distribution system, terminal apparatus used in same system, program, and loop connection avoidance method
JP5115509B2 (en) Content distribution system, node device, leaving process delay method, and leaving process delay control program
WO2008013036A1 (en) Node device, recording medium containing information processing program, content distribution method, and content distribution system
JP2011008709A (en) Information processing apparatus, content distributing system, method of controlling content distribution, and program
JP4924389B2 (en) TERMINAL DEVICE, INFORMATION PROCESSING PROGRAM, AND INFORMATION PROCESSING METHOD USED FOR INFORMATION DISTRIBUTION SYSTEM
JP5157351B2 (en) Video distribution system, subscriber line termination device, video distribution method, video distribution program, and storage medium
JP4798146B2 (en) Terminal device and program in information distribution system, and reconnection processing method
JP5074177B2 (en) Base station equipment
JP2009159324A (en) Base station device and terminal device
JP2008085678A (en) Content distribution system, content distribution method, terminal device in the content distribution system and program thereof
JP2008293197A (en) Information distribution system, terminal unit and program for use in the same system, and information processing method
Ha et al. Topology and architecture design for peer to peer video live streaming system on mobile broadcasting social media
JP2009200725A (en) Information delivery system, method of forming hierarchical structure in the system, and program
JP5022393B2 (en) User terminal, user terminal program, and distribution tree connection switching method
JP2006080659A (en) Information distribution system, processor, processing method, processing program, and the like
JP2007265172A (en) Content data distribution system, content data distribution method, connection management device, terminal device, and its program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130220

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130618