JP2006244054A - Information processor and method, recording medium, program and information processing system - Google Patents

Information processor and method, recording medium, program and information processing system Download PDF

Info

Publication number
JP2006244054A
JP2006244054A JP2005057701A JP2005057701A JP2006244054A JP 2006244054 A JP2006244054 A JP 2006244054A JP 2005057701 A JP2005057701 A JP 2005057701A JP 2005057701 A JP2005057701 A JP 2005057701A JP 2006244054 A JP2006244054 A JP 2006244054A
Authority
JP
Japan
Prior art keywords
data
transmission
server
transmitted
unit
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.)
Withdrawn
Application number
JP2005057701A
Other languages
Japanese (ja)
Inventor
Koji Takeuchi
浩司 竹内
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2005057701A priority Critical patent/JP2006244054A/en
Publication of JP2006244054A publication Critical patent/JP2006244054A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To more hardly allow breaking-off of reproduction of a content. <P>SOLUTION: In this information processor, an assignment part 182 divides content data instructed with a download into a prescribed number of segments, and divides each segment into parts of the number of servers 52 as transmission nodes. The assignment part 182 assigns transmission of each of the parts constituting the segment to be next downloaded to each of the server 52-1 to the server 52-N. A communication control part 183-1 to a communication control part 183-N respectively generate transmission requirement signals requiring the transmission of the parts assigned to the server 52-1 to the server 52-N, and transmit them to the server 52-1 to the server 52-N via a communication network 53. The information processor can be applied to a streaming distribution system distributing streaming data of a moving image, music or the like. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は情報処理装置および方法、記録媒体、プログラム、並びに情報処理システムに関し、特に、より効率よくストリーミングすることができるようにした情報処理装置および方法、記録媒体、プログラム、並びに情報処理システムに関する。   The present invention relates to an information processing device and method, a recording medium, a program, and an information processing system, and more particularly, to an information processing device and method, a recording medium, a program, and an information processing system that can stream more efficiently.

昨今、インターネットなど、種々の通信媒体を利用して、映像(動画像)や音楽などのコンテンツを配信するサービスが一般に行われている。コンテンツの配信は、例えば、コンテンツを再生するための画像データや音声データ(以下、適宜、コンテンツデータと称する)を記録しているサーバが、インターネットを介して、コンテンツデータをクライアントあてに送信したり、ピアツーピア(Peer To Peer)などのネットワークにおいて、コンテンツデータを記録している送信ノードとしてのクライアント(送信装置)が、ネットワークを介して、コンテンツデータを受信ノードとしてのクライアント(受信装置)に送信することによって行われる。   In recent years, services that distribute content such as video (moving images) and music using various communication media such as the Internet are generally performed. Content distribution is performed by, for example, a server that records image data and audio data (hereinafter referred to as content data as appropriate) for reproducing content transmitting content data to clients via the Internet. In a network such as peer-to-peer (Peer To Peer), a client (transmitting device) as a transmission node recording content data transmits content data to a client (receiving device) as a receiving node via the network. Is done by.

特に、近年、送信ノードとしては信頼性が低いとされてきたパーソナルコンピュータなどの性能が高くなり、送信ノードとしての信頼性が高くなったことや、ネットワークの帯域がより広くなったこと、さらに、パーソナルコンピュータなどの各ノードが、常に(常時)ネットワークに接続されるようになってきたことなどにより、ネットワーク上において、より大きいデータを、より確実に伝送できるようになってきた。そのため、ダウンロード型やライブ型の伝送方式のサービスに加えて、プログレッシブダウンロード型の伝送方式のサービスがより多く提供されるようになってきている。   In particular, in recent years, the performance of personal computers and the like, which have been considered to be low as a transmission node, has increased, the reliability as a transmission node has increased, the network bandwidth has become wider, With each node such as a personal computer being always (always) connected to the network, larger data can be transmitted more reliably on the network. Therefore, in addition to download-type and live-type transmission scheme services, more progressive download-type transmission scheme services are provided.

ダウンロード型の伝送方式のサービスにおいては、コンテンツを配信(送信)する側の装置(以下、サーバと称する)が、既にエンコードが完了しているコンテンツデータを、受信側の装置(以下、クライアントと称する)に送信する。クライアントは、サーバから送信されてきたコンテンツデータを受信してから(コンテンツデータのダウンロードが完了した後)コンテンツデータを再生する。   In a download-type transmission method service, content data that has already been encoded by a device that distributes (transmits) content (hereinafter referred to as a server) is referred to as a device that receives data (hereinafter referred to as a client). ). The client reproduces the content data after receiving the content data transmitted from the server (after downloading of the content data is completed).

一方、ライブ型の伝送方式のサービスにおいては、例えば、サーバが、撮像した映像に対応するコンテンツデータをリアルタイムでエンコードし、エンコードによって得られたコンテンツデータを直ちにクライアントあてに送信する。そして、クライアントは、サーバから送信されてきたコンテンツデータを受信するとともに、これに並行して、受信されたコンテンツデータを基にコンテンツを再生する。すなわち、サーバは、コンテンツデータをストリーミング配信し、クライアントは、サーバから送信されてきたコンテンツデータを受信して、順次再生する。   On the other hand, in a live-type transmission method service, for example, a server encodes content data corresponding to a captured video in real time, and immediately transmits the content data obtained by encoding to a client. Then, the client receives the content data transmitted from the server, and at the same time, reproduces the content based on the received content data. That is, the server distributes the content data in a streaming manner, and the client receives the content data transmitted from the server and reproduces it sequentially.

また、プログレッシブダウンロード型の伝送方式のサービスにおいては、サーバが、既にエンコードが完了しているコンテンツデータを、クライアントあてに送信する。そして、ライブ型の伝送方式における場合と同様に、クライアントは、サーバから送信されてきたコンテンツデータを受信するとともに、これに並行して、受信されたコンテンツデータを基にコンテンツを再生する。   In the service of the progressive download transmission method, the server transmits content data that has already been encoded to the client. Then, as in the case of the live transmission method, the client receives the content data transmitted from the server, and simultaneously reproduces the content based on the received content data.

コンテンツ(コンテンツデータ)をプログレッシブダウンロード型の伝送方式で配信する場合、エンコードされたコンテンツデータが出力される速度(ビットレート)が、クライアントがコンテンツデータをダウンロードする速度(コンテンツデータを受信するビットレート)よりも十分に大きいときには、クライアントは、自分自身が持つ(割り当てられた)ネットワークの帯域を最大限に利用してコンテンツデータをダウンロードし、そのコンテンツデータを一時的に記憶しておくことにより、サーバやネットワークに問題が発生しても、コンテンツを連続して視聴できる部分(コンテンツデータ)を可能な限り確保することができる。   When delivering content (content data) using the progressive download type transmission method, the speed at which the encoded content data is output (bit rate) is the speed at which the client downloads the content data (the bit rate at which the content data is received). When the size is larger than the limit, the client downloads the content data by making the best use of its own (allocated) network bandwidth, and temporarily stores the content data. Even if a problem occurs in the network, a portion (content data) where the content can be viewed continuously can be secured as much as possible.

例えば、インターネットなどの帯域保障がされないネットワークにおいて、クライアントが、サーバからコンテンツデータをダウンロードする場合、ネットワーク上において、コンテンツデータ(が格納されたパケット)を伝送する途中で、パケットのロスや伝送の遅延などの擾乱(問題)が発生し、これによる帯域の縮退やコネクション断がある程度の確率で発生する。しかしながら、プログレッシブダウンロード型の伝送方式においては、クライアントは、自分自身が持つネットワークの帯域やハードディスクのディスク容量などのリソースを最大限に用いて、コンテンツデータを可能な限りダウンロード(受信)しておくことによって、パケットのロスやコネクション断などが発生した場合においても、既にダウンロードされたコンテンツデータ(キャッシュされたコンテンツデータ)を用いて、コネクションの張りなおしや帯域が元に戻るまでの間、シーンの連続性を損ねることなく(再生を途切れさせることなく)コンテンツを視聴し続けることができる。   For example, in a network where bandwidth is not guaranteed such as the Internet, when a client downloads content data from a server, a packet loss or transmission delay occurs in the middle of transmitting the content data (packet storing the content) on the network. Such a disturbance (problem) occurs, and band degeneration and connection disconnection due to this occur with a certain probability. However, in the progressive download type transmission method, the client downloads (receives) the content data as much as possible using the resources such as the network bandwidth and the hard disk capacity of the hard disk as much as possible. Even if a packet loss or connection disconnection occurs due to continuation of the scene using the already downloaded content data (cached content data) until the connection is reestablished or the bandwidth is restored. It is possible to continue watching the content without losing performance (without interrupting playback).

ところで、コンテンツデータをより迅速にダウンロードするために、コンテンツデータを分割してダウンロードする方法が提案されている。例えば、FlashGetなどのダウンロードアプリケーションプログラムを用いて、所望するコンテンツデータを複数のデータに分割して(分けて)、分割されたデータのそれぞれを、1つのサーバから一斉(同時)にダウンロードする方法が提案されている。   By the way, in order to download content data more quickly, a method of dividing and downloading content data has been proposed. For example, there is a method of dividing desired content data into a plurality of data (downloading) using a download application program such as FlashGet and downloading each of the divided data from one server at the same time (simultaneously). Proposed.

しかしながら、通常、コンテンツデータのダウンロードは、例えば、TCP(Transmission Control Protocol)セッションの1セッションで行われるため、サーバに負荷がかかり過ぎないように、サーバ側での1セッションあたりの最大転送レートが制限されることがある。また、TCPでのセッションでは、パケットロスが生じた場合に、大幅にパケットの転送レートを落としたり、遅延の大きいネットワークにおいては、最大スループットが制限される。   However, since content data is normally downloaded in one session of a TCP (Transmission Control Protocol) session, for example, the maximum transfer rate per session on the server side is limited so that the server is not overloaded. May be. Also, in a TCP session, when packet loss occurs, the maximum throughput is limited in a network where the packet transfer rate is significantly reduced or the delay is large.

したがって、クライアントが、1つのサーバからコンテンツデータをダウンロードする場合、コンテンツデータを分割してダウンロードしたとしても、クライアントは、自分自身が持つ帯域を有効に利用することができないことがある。   Therefore, when a client downloads content data from one server, even if the content data is divided and downloaded, the client may not be able to effectively use its own bandwidth.

このような問題を解決する方法として、コンテンツデータを複数のデータに分割し、分割したデータを、それぞれ複数のサーバ(ミラーサーバ)からダウンロードする方法が提案されている(例えば、特許文献1参照)。また、コンテンツデータを複数のデータに分割して、それぞれ複数のサーバからダウンロードする方法として、例えば、Star Downloaderなどのダウンロードアプリケーションプログラムを用いて、コンテンツデータを複数のデータに分割し、それぞれ複数のサーバからダウンロードする方法も提案されている。例えば、サーバAおよびサーバBが、それぞれ同一のコンテンツデータAを記録しているとすると、クライアントは、コンテンツデータAを、データAおよびデータBの2つのデータに分け、データAをサーバAからダウンロードし、データBをサーバBからダウンロードする。   As a method for solving such a problem, a method is proposed in which content data is divided into a plurality of data, and the divided data is downloaded from a plurality of servers (mirror servers), respectively (for example, see Patent Document 1). . Also, as a method of dividing content data into a plurality of data and downloading them from a plurality of servers, for example, using a download application program such as Star Downloader, the content data is divided into a plurality of data, and each of the plurality of servers The method of downloading from is also proposed. For example, if server A and server B record the same content data A, the client divides content data A into two data, data A and data B, and downloads data A from server A. Then, data B is downloaded from server B.

このように、1つのコンテンツデータを複数のデータに分けて(分割して)、複数のサーバからダウンロードすることにより、クライアントは、自分自身が持つ帯域を有効に利用することができる。また、この場合、クライアントがコンテンツデータをダウンロードする速度は、各サーバが持つ帯域を加算した値(速度)となるので、コンテンツデータをより迅速にダウンロードすることができる。   As described above, by dividing (dividing) one content data into a plurality of data and downloading the data from a plurality of servers, the client can effectively use the bandwidth possessed by the client. In this case, the speed at which the client downloads the content data is a value (speed) obtained by adding the bandwidths of the servers, so that the content data can be downloaded more quickly.

また、ピアツーピアネットワークにおいては、コンテンツデータをピアツーピアネットワークに接続されている複数のクライアントに分散させることによって、コンテンツデータをダウンロードすることができる可能性を向上させている。   In the peer-to-peer network, the possibility that content data can be downloaded is improved by distributing the content data to a plurality of clients connected to the peer-to-peer network.

換言すれば、WinnyやBittorrentなどのピアツーピアネットワークに接続されている、受信ノードとしてのクライアントは、例えば、それぞれのネットワークに対応したクライアントソフトウェアを用いて、送信ノードとしての他のクライアントからコンテンツデータをダウンロードする。ここで、送信ノードとしてのクライアントは、一般に、パーソナルコンピュータであり、専用のサーバに比べて自分自身が持つ帯域やCPU(Central Processing Unit)の処理能力、すなわち、コンテンツデータの送信能力の面で劣るため、受信ノードとしてのクライアントが、コンテンツデータをダウンロードするときに、十分なダウンロード速度が得られないことがある。そこで、ピアツーピアネットワークにおいては、受信ノードとしてのクライアントは、1つのコンテンツデータを複数のデータに分割して(分けて)、それぞれのデータを、複数の送信ノードとしてのクライアントから、それぞれダウンロードすることによって、各クライアントの送信能力の不足を補っている。   In other words, a client serving as a receiving node connected to a peer-to-peer network such as Winny or Bittorrent downloads content data from another client serving as a sending node using, for example, client software corresponding to each network. To do. Here, a client as a transmission node is generally a personal computer, which is inferior in terms of its own bandwidth and CPU (Central Processing Unit) processing capability, that is, content data transmission capability, compared to a dedicated server. Therefore, when a client as a receiving node downloads content data, a sufficient download speed may not be obtained. Therefore, in a peer-to-peer network, a client as a receiving node divides one content data into a plurality of data, and downloads each data from a client as a plurality of transmitting nodes. Make up for the lack of transmission capability of each client.

特開2003−157197号公報JP 2003-157197 A

ところで、上述した、コンテンツデータを複数のサーバ(または送信ノード)から分割してダウンロードする方法は、主に、ダウンロード型の伝送方式でコンテンツデータを配信することが想定されており、プログレッシブダウンロード型の伝送方式での配信は、視野に入れられていない。例えば、ピアツーピアネットワークにおいては、コンテンツ(コンテンツデータ)を配信する場合、送信ノードとしてパーソナルコンピュータが利用されるため、送信能力などの安定性が保証されないので、最終的に、受信ノードが、コンテンツデータをダウンロードすることができればよいという観点から、コンテンツの配信は、通常、ダウンロード型の伝送方式で行われる。   By the way, the above-described method of downloading content data by dividing it from a plurality of servers (or transmission nodes) is mainly assumed to distribute the content data by a download-type transmission method. Distribution in the transmission system is not in view. For example, in the case of distributing content (content data) in a peer-to-peer network, since a personal computer is used as a transmission node, stability such as transmission capability cannot be guaranteed. From the viewpoint that it is only necessary to be able to download, content distribution is usually performed by a download-type transmission method.

したがって、プログレッシブダウンロード型の伝送方式で配信されるコンテンツ(コンテンツデータ)を、複数のサーバから分割してダウンロードする場合、ダウンロードが完了したコンテンツデータのうち、連続して再生することができるコンテンツデータの量が少なく、非常に効率が悪くなってしまう。   Accordingly, when content (content data) distributed by a progressive download type transmission method is divided and downloaded from a plurality of servers, content data that can be continuously played out of content data that has been downloaded. The amount is small and the efficiency is very poor.

例えば、図1に示すように、1つのコンテンツデータを、データ11−1乃至データ11−5に分けて、複数のサーバからダウンロードしたとする。ここで、図中、横軸は、コンテンツデータの再生時刻を示している。また、データ11−1乃至データ11−5のうち、黒い部分は、既にサーバからのダウンロードが完了した部分を示しており、白い部分は、サーバからのダウンロードが完了していない部分、すなわち、まだダウンロードしていない部分を示している。   For example, as shown in FIG. 1, it is assumed that one piece of content data is divided into data 11-1 to data 11-5 and downloaded from a plurality of servers. Here, in the figure, the horizontal axis indicates the reproduction time of the content data. In addition, among the data 11-1 to data 11-5, the black portion indicates a portion where the download from the server has already been completed, and the white portion indicates a portion where the download from the server has not been completed, that is, still The part which has not been downloaded is shown.

コンテンツ(コンテンツデータ)を再生する場合、コンテンツデータは、再生時刻t0の部分から再生が開始され、再生時刻t10の部分で再生が終了する。すなわち、クライアントは、データ11−1乃至データ11−5の順番で、データ11−1乃至データ11−5のそれぞれを用いて、コンテンツを再生する。クライアントは、このコンテンツデータを、再生時刻t0から再生時刻t2までのデータ11−1、再生時刻t2から再生時刻t4までのデータ11−2、再生時刻t4から再生時刻t6までのデータ11−3、再生時刻t6から再生時刻t8までのデータ11−4、および再生時刻t8から再生時刻t10までのデータ11−5のそれぞれに分ける。そして、データ11−1乃至データ11−5を、それぞれ異なるサーバからダウンロードする。   When content (content data) is reproduced, the content data starts to be reproduced from the portion of the reproduction time t0, and the reproduction ends at the portion of the reproduction time t10. That is, the client reproduces the content using each of the data 11-1 to data 11-5 in the order of the data 11-1 to data 11-5. The client uses this content data as data 11-1 from playback time t0 to playback time t2, data 11-2 from playback time t2 to playback time t4, data 11-3 from playback time t4 to playback time t6, Data 11-4 from reproduction time t6 to reproduction time t8 and data 11-5 from reproduction time t8 to reproduction time t10 are divided. Then, data 11-1 through data 11-5 are downloaded from different servers.

図1の例においては、データ11−1のうちの、再生時刻t0から再生時刻t1の部分のデータ、データ11−2のうちの、再生時刻t2から再生時刻t3の部分のデータ、およびデータ11−3のうちの、再生時刻t4から再生時刻t5の部分のデータが、既にダウンロードされている。また、データ11−4のうちの、再生時刻t6から再生時刻t7の部分のデータ、およびデータ11−5のうちの、再生時刻t8から再生時刻t9の部分のデータも、既にダウンロードされている。   In the example of FIG. 1, the data from the reproduction time t0 to the reproduction time t1 in the data 11-1, the data from the reproduction time t2 to the reproduction time t3 in the data 11-2, and the data 11 -3, the data from the playback time t4 to the playback time t5 has already been downloaded. In addition, the data from the reproduction time t6 to the reproduction time t7 in the data 11-4 and the data from the reproduction time t8 to the reproduction time t9 in the data 11-5 are already downloaded.

したがって、この場合、クライアントにおいては、コンテンツデータを基に再生されるコンテンツのうち、再生時刻t0から再生時刻t1までのコンテンツデータに対応する部分を連続して再生することができる。しかしながら、既にダウンロードが完了している再生時刻t2から再生時刻t3の部分のデータは、データ11−1のダウンロードが完了するまで、すなわち、まだダウンロードされていない再生時刻t1から再生時刻t2の部分のデータのダウンロードが完了するまで、コンテンツの再生に用いることができない。   Therefore, in this case, the client can continuously reproduce the portion corresponding to the content data from the reproduction time t0 to the reproduction time t1 among the content reproduced based on the content data. However, the data from the reproduction time t2 to the reproduction time t3 that has already been downloaded is the data of the portion from the reproduction time t1 to the reproduction time t2 that has not yet been downloaded, that is, the data 11-1. Until the data download is complete, it cannot be used for content playback.

同様に、既にダウンロードが完了している再生時刻t4から再生時刻t5の部分のデータ、再生時刻t6から再生時刻t7の部分のデータ、および再生時刻t8から再生時刻t9の部分のデータも、現時点においては、コンテンツの再生に用いることができない。   Similarly, the data from the playback time t4 to the playback time t5 that have already been downloaded, the data from the playback time t6 to the playback time t7, and the data from the playback time t8 to the playback time t9 are also currently recorded. Cannot be used for content playback.

ここで、例えば、図1において、データ11−1をクライアントあてに送信しているサーバに問題が発生し、サーバが、再生時刻t1から再生時刻t2まで部分のデータを、クライアントに送信することができなくなってしまった場合、データ11−2乃至データ11−5のダウンロードが完了したとしても、データ11−2乃至データ11−5のそれぞれは、再生時刻t1から再生時刻t2までのデータのダウンロードが完了するまでは、対応する部分のコンテンツの再生に用いることができない。すなわち、クライアントを操作するユーザは、データ11−2乃至データ11−5のダウンロードが完了しているにも関わらず、視聴しようとしているコンテンツのうち、再生時刻t0から再生時刻t1までのコンテンツデータに対応する部分しかコンテンツを視聴することができない。   Here, for example, in FIG. 1, a problem occurs in the server that transmits the data 11-1 to the client, and the server transmits a part of the data from the reproduction time t1 to the reproduction time t2. If the data 11-2 to data 11-5 are completely downloaded, the data 11-2 to data 11-5 can be downloaded from the reproduction time t1 to the reproduction time t2. Until it is completed, it cannot be used to reproduce the content of the corresponding part. That is, the user who operates the client changes the content data from the reproduction time t0 to the reproduction time t1 among the contents to be viewed even though the downloading of the data 11-2 to the data 11-5 is completed. Only the corresponding part can view the content.

同様に、データ11−1を送信するサーバのデータの送信速度が、データ11−2乃至データ11−5のそれぞれを送信するサーバの送信速度のそれぞれよりも小さい(遅い)場合、データ11−2乃至データ11−5のダウンロードが完了したとしても、ユーザは、コンテンツデータを基に再生されるコンテンツのうち、データ11−1のダウンロードが完了している部分に対応する部分までしかコンテンツを再生することができない。   Similarly, when the data transmission speed of the server that transmits the data 11-1 is smaller (slower) than the transmission speed of each of the servers that transmit the data 11-2 to the data 11-5, the data 11-2 Even if the downloading of the data 11-5 is completed, the user reproduces the content only up to the portion corresponding to the portion where the downloading of the data 11-1 is completed among the content reproduced based on the content data. I can't.

以上のように、1つのコンテンツデータを複数のデータに分けて(分割して)、分割したデータをそれぞれ異なるサーバからダウンロードした場合、コンテンツデータをダウンロードする速度を速くすることはできるが、ダウンロードが完了したコンテンツデータのうち、連続して再生することができるコンテンツデータの量が少なく、効率が悪いため、1つのサーバのデータの送信速度が、他のサーバの送信速度に比べて非常に小さいときや、コンテンツデータを伝送するネットワーク、またはコンテンツデータを送信するサーバなどに問題が発生したときには、視聴しているコンテンツの再生が途切れてしまうことがあるという課題があった。   As described above, when one content data is divided (divided) into a plurality of data and the divided data is downloaded from different servers, the content data can be downloaded at a higher speed. Of the completed content data, the amount of content data that can be played continuously is small and the efficiency is low, so the data transmission speed of one server is very low compared to the transmission speed of other servers In addition, when a problem occurs in a network that transmits content data, a server that transmits content data, or the like, there is a problem that playback of content being viewed may be interrupted.

本発明は、このような状況に鑑みてなされたものであり、コンテンツデータをより迅速に、かつより効率よくダウンロードし、コンテンツデータが、プログレッシブダウンロード型の伝送方式で配信される場合に、ネットワークやサーバに問題が発生したときにおいても、コンテンツの再生をより途切れにくくすることができるようにするものである。   The present invention has been made in view of such a situation, and when content data is downloaded more quickly and more efficiently, and the content data is distributed by a progressive download type transmission method, Even when a problem occurs in the server, the reproduction of content can be made more difficult to interrupt.

本発明の情報処理装置は、これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする第2のデータを、さらに送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、第3のデータのそれぞれの送信を対応する送信装置のそれぞれに割り当てる割り当て手段と、送信装置のそれぞれに割り当てた第3のデータのそれぞれの送信を要求する要求信号のそれぞれを、第3のデータに対応する送信装置にそれぞれ送信する送信手段と、それぞれの送信装置から送信されてきた、第3のデータのそれぞれを受信する受信手段とを備えることを特徴とする。   The information processing apparatus according to the present invention receives the first data to be received from now on, and sequentially receives the second data divided into predetermined predetermined sizes. Is further divided into third data corresponding to each of the transmission devices, thereby assigning each transmission of the third data to each of the corresponding transmission devices, and assigning to each of the transmission devices Transmission means for transmitting each request signal for requesting transmission of each third data to a transmission device corresponding to the third data, and transmission of the third data transmitted from each transmission device. Receiving means for receiving each of them.

情報処理装置には、第3のデータを送信装置から受信する速度を示す情報を記憶する記憶手段をさらに設け、割り当て手段には、第3のデータを送信装置から受信する速度を示す情報を基に、第3のデータの大きさをそれぞれ変化させて、第2のデータを第3のデータのそれぞれに分けさせるようにすることができる。   The information processing apparatus further includes storage means for storing information indicating the speed at which the third data is received from the transmitting apparatus, and the assigning means is based on information indicating the speed at which the third data is received from the transmitting apparatus. Further, the size of the third data can be changed, and the second data can be divided into the third data.

本発明の情報処理方法は、これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする第2のデータを、さらに送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、第3のデータのそれぞれの送信を対応する送信装置のそれぞれに割り当てる割り当てステップと、送信装置のそれぞれに割り当てた第3のデータのそれぞれの送信を要求する要求信号のそれぞれの、第3のデータに対応する送信装置のそれぞれへの送信を制御する送信制御ステップと、それぞれの送信装置から送信されてきた、第3のデータのそれぞれの受信を制御する受信制御ステップとを含むことを特徴とする。   According to the information processing method of the present invention, when the first data to be received is received in turn and the second data is divided into predetermined predetermined sizes, the second data to be received next is received. Is further divided into third data corresponding to each of the transmission devices, thereby assigning each transmission of the third data to each of the corresponding transmission devices, and assigning to each of the transmission devices A transmission control step for controlling transmission of each request signal for requesting transmission of each of the third data to each of the transmission devices corresponding to the third data, and transmission from each of the transmission devices. A reception control step of controlling reception of each of the third data.

本発明の記録媒体のプログラムは、これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする第2のデータを、さらに送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、第3のデータのそれぞれの送信を対応する送信装置のそれぞれに割り当てる割り当てステップと、送信装置のそれぞれに割り当てた第3のデータのそれぞれの送信を要求する要求信号のそれぞれの、第3のデータに対応する送信装置のそれぞれへの送信を制御する送信制御ステップと、それぞれの送信装置から送信されてきた、第3のデータのそれぞれの受信を制御する受信制御ステップとを含むことを特徴とする。   The program of the recording medium of the present invention receives the first data to be received from now on, and sequentially receives the second data divided into predetermined predetermined sizes. Allocating each transmission of the third data to each of the corresponding transmission devices by further dividing the second data into each of the third data corresponding to each of the transmission devices, and to each of the transmission devices A transmission control step for controlling transmission of each of the request signals for requesting transmission of the allocated third data to each of the transmission apparatuses corresponding to the third data, and transmission from the respective transmission apparatuses And a reception control step for controlling the reception of each of the third data.

本発明のプログラムは、これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする第2のデータを、さらに送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、第3のデータのそれぞれの送信を対応する送信装置のそれぞれに割り当てる割り当てステップと、送信装置のそれぞれに割り当てた第3のデータのそれぞれの送信を要求する要求信号のそれぞれの、第3のデータに対応する送信装置のそれぞれへの送信を制御する送信制御ステップと、それぞれの送信装置から送信されてきた、第3のデータのそれぞれの受信を制御する受信制御ステップとをコンピュータに実行させることを特徴とする。   The program according to the present invention receives the second data to be received next when the first data to be received is received in turn and the second data is divided into predetermined predetermined sizes. Is further divided into each of the third data corresponding to each of the transmission devices, thereby assigning each transmission of the third data to each of the corresponding transmission devices, and each of the transmission data assigned to each of the transmission devices. A transmission control step for controlling transmission of each request signal for requesting transmission of each of the three data to each of the transmission devices corresponding to the third data, and a third transmission signal transmitted from each of the transmission devices. And a reception control step for controlling the reception of each of the data.

本発明の情報処理装置および方法、記録媒体、並びにプログラムにおいては、これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする第2のデータが、さらに送信装置のそれぞれに対応する第3のデータのそれぞれに分けられることにより、第3のデータのそれぞれの送信が対応する送信装置のそれぞれに割り当てられ、送信装置のそれぞれに割り当てられた第3のデータのそれぞれの送信を要求する要求信号のそれぞれが、第3のデータに対応する送信装置にそれぞれ送信され、それぞれの送信装置から送信されてきた、第3のデータのそれぞれが受信される。   In the information processing apparatus and method, the recording medium, and the program according to the present invention, when the first data to be received is received in turn, the second data is divided into predetermined predetermined sizes. Then, the second data to be received next is further divided into each of the third data corresponding to each of the transmitting devices, so that each transmission of the third data is assigned to each of the corresponding transmitting devices. Each of the request signals for requesting the transmission of the third data assigned to each of the transmission devices is transmitted to the transmission device corresponding to the third data, and transmitted from each of the transmission devices. , Each of the third data is received.

本発明の情報処理装置は、第1のデータを記憶する記憶手段と、相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータを、相手がそれぞれ順番に受信する場合、相手から送信されてきた、相手が次に受信しようとする第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号を受信する受信手段と、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータを取得する取得手段と、取得した第3のデータを、相手に送信する送信手段とを備えることを特徴とする。   The information processing apparatus according to the present invention includes a storage unit that stores first data, and second data obtained by dividing the first data that the other party is to receive from the predetermined data into a predetermined size. When receiving each in turn, transmission of one third data out of the third data, which is transmitted from the other party and the second data that the other party intends to receive next is further divided into a predetermined number Receiving means for receiving a request signal for requesting, acquiring means for acquiring third data requested to be transmitted from the stored first data based on the request signal, and acquired third data Transmission means for transmitting to the other party.

本発明の情報処理方法は、相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータを、相手がそれぞれ順番に受信する場合、相手から送信されてきた、相手が次に受信しようとする第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号の受信を制御する受信制御ステップと、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータを取得する取得ステップと、取得した第3のデータの相手への送信を制御する送信制御ステップとを含むことを特徴とする。   The information processing method of the present invention is transmitted from the other party when the other party sequentially receives the second data obtained by dividing the first data to be received by the other party into a predetermined size. Reception that controls the reception of a request signal for requesting transmission of one third data out of the third data obtained by dividing the second data to be received by the other party into a predetermined number. Based on the control step, the acquisition step of acquiring the third data requested to be transmitted from the stored first data, and the transmission of the acquired third data to the other party based on the request signal A transmission control step.

本発明の記録媒体のプログラムは、相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータを、相手がそれぞれ順番に受信する場合、相手から送信されてきた、相手が次に受信しようとする第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号の受信を制御する受信制御ステップと、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータを取得する取得ステップと、取得した第3のデータの相手への送信を制御する送信制御ステップとを含むことを特徴とする。   The recording medium program of the present invention transmits the second data obtained by dividing the first data to be received by the other party into a predetermined size in advance when the other party sequentially receives the second data. Controlling reception of a request signal for requesting transmission of one third data among the third data obtained by dividing the second data to be received next by the partner into a predetermined number. Based on the reception control step, the acquisition step of acquiring the third data requested to be transmitted from the stored first data, and the transmission of the acquired third data to the other party based on the request signal And a transmission control step.

本発明のプログラムは、相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータを、相手がそれぞれ順番に受信する場合、相手から送信されてきた、相手が次に受信しようとする第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号の受信を制御する受信制御ステップと、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータを取得する取得ステップと、取得した第3のデータの相手への送信を制御する送信制御ステップとをコンピュータに実行させることを特徴とする。   The program of the present invention has been transmitted from the other party when the other party sequentially receives the second data obtained by dividing the first data to be received by the other party into a predetermined size. A reception control step for controlling reception of a request signal for requesting transmission of one third data among the third data obtained by further dividing the second data to be received next by the opponent into a predetermined number And an acquisition step of acquiring the third data requested to be transmitted from the stored first data based on the request signal, and transmission control for controlling transmission of the acquired third data to the other party And causing the computer to execute the steps.

本発明の情報処理装置および方法、記録媒体、並びにプログラムにおいては、相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータを、相手がそれぞれ順番に受信する場合、相手から送信されてきた、相手が次に受信しようとする第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号が受信され、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータが取得され、取得された第3のデータが相手に送信される。   In the information processing apparatus and method, the recording medium, and the program according to the present invention, the partner sequentially orders the second data obtained by dividing the first data that the partner intends to receive into a predetermined size. Requesting transmission of one third data out of the third data, which is transmitted from the partner and the second data that the partner intends to receive next is further divided into a predetermined number. The request signal to be transmitted is received, and based on the request signal, the third data requested to be transmitted is acquired from the stored first data, and the acquired third data is transmitted to the other party.

本発明の情報処理システムにおいては、受信装置は、これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする第2のデータを、さらに接続されている送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、第3のデータのそれぞれの送信を対応する送信装置のそれぞれに割り当てる割り当て手段と、送信装置のそれぞれに割り当てた第3のデータのそれぞれの送信を要求する要求信号のそれぞれを、第3のデータに対応する送信装置にそれぞれ送信する送信手段とを備え、送信装置のそれぞれは、第1のデータを記憶する記憶手段と、受信装置から送信されてきた、要求信号を受信する受信手段と、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータを取得する取得手段と、取得した第3のデータを、受信装置に送信する送信手段とを備え、受信装置は、送信装置のそれぞれから送信されてきた、第3のデータのそれぞれを受信する受信手段をさらに備えることを特徴とする。   In the information processing system of the present invention, when the receiving device receives the first data to be received in the order of the second data divided into predetermined predetermined sizes, the receiving device receives the next data next. Assigning each transmission of the third data to each of the corresponding transmitting devices by dividing the second data to be further divided into each of the third data corresponding to each of the connected transmitting devices. And a transmission means for transmitting each request signal for requesting transmission of each of the third data assigned to each of the transmission devices to the transmission device corresponding to the third data, and each of the transmission devices. Based on the request signal, the storage means for storing the first data, the reception means for receiving the request signal transmitted from the receiving device. An acquisition means for acquiring the third data requested to be transmitted from the first data, and a transmission means for transmitting the acquired third data to the reception apparatus. It further comprises receiving means for receiving each of the third data transmitted from each of the above.

本発明の情報処理システムにおいては、受信装置がこれから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、受信装置によって、次に受信しようとする第2のデータが、さらに接続されている送信装置のそれぞれに対応する第3のデータのそれぞれに分けられることにより、第3のデータのそれぞれの送信が対応する送信装置のそれぞれに割り当てられ、送信装置のそれぞれに割り当てられた第3のデータのそれぞれの送信を要求する要求信号のそれぞれが、第3のデータに対応する送信装置にそれぞれ送信され、送信装置のそれぞれによって、受信装置から送信されてきた、要求信号が受信され、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータが取得され、取得された第3のデータが、受信装置に送信される。そして、受信装置によって、送信装置のそれぞれから送信されてきた、第3のデータのそれぞれがさらに受信される。   In the information processing system of the present invention, when receiving the first data to be received by the receiving device in the order of the second data divided into predetermined predetermined sizes, Next, the second data to be received is further divided into the third data corresponding to each of the connected transmitting apparatuses, so that each transmission of the third data corresponds to the corresponding transmitting apparatus. A request signal for requesting transmission of each of the third data assigned to each of the transmission devices is transmitted to the transmission device corresponding to the third data, and is transmitted by each of the transmission devices. A request signal transmitted from the receiving device is received, and transmission is requested from the stored first data based on the request signal. The third data is acquired, the third data obtained is transmitted to the receiving apparatus. Then, each of the third data transmitted from each of the transmission devices is further received by the reception device.

ネットワークとは、少なくとも2つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであっても良いし、1つの装置を構成している内部ブロックどうしであっても良い。   The network is a mechanism in which at least two devices are connected and information can be transmitted from one device to another device. The devices that communicate via the network may be independent devices, or may be internal blocks that constitute one device.

また、通信とは、無線通信および有線通信は勿論、無線通信と有線通信とが混在した通信、即ち、ある区間では無線通信が行われ、他の区間では有線通信が行われるようなものであっても良い。さらに、ある装置から他の装置への通信が有線通信で行われ、他の装置からある装置への通信が無線通信で行われるようなものであっても良い。   The communication is not only wireless communication and wired communication, but also communication in which wireless communication and wired communication are mixed, that is, wireless communication is performed in a certain section and wired communication is performed in another section. May be. Further, communication from one device to another device may be performed by wired communication, and communication from another device to one device may be performed by wireless communication.

本発明によればコンテンツデータをダウンロードすることができる。特に、本発明によれば、コンテンツデータをより迅速に、かつより効率よくダウンロードし、コンテンツデータが、プログレッシブダウンロード型の伝送方式で配信される場合に、ネットワークやサーバに問題が発生したときにおいても、コンテンツの再生をより途切れにくくすることができる。   According to the present invention, content data can be downloaded. In particular, according to the present invention, when content data is downloaded more quickly and efficiently, and the content data is distributed by the progressive download type transmission method, even when a problem occurs in the network or the server. , It is possible to make the reproduction of the content more difficult to interrupt.

以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が本明細書に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。   Embodiments of the present invention will be described below. The correspondence relationship between the invention described in this specification and the embodiments of the invention is exemplified as follows. This description is intended to confirm that the embodiments supporting the invention described in this specification are described in this specification. Therefore, although there is an embodiment which is described in the embodiment of the invention but is not described here as corresponding to the invention, it means that the embodiment is not It does not mean that it does not correspond to the invention. Conversely, even if an embodiment is described herein as corresponding to an invention, that means that the embodiment does not correspond to an invention other than the invention. Absent.

さらに、この記載は、本明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。   Further, this description does not mean all the inventions described in this specification. In other words, this description is for the invention described in the present specification, which is not claimed in this application, that is, for the invention that will be applied for in the future or that will appear and be added by amendment. It does not deny existence.

請求項1に記載の情報処理装置は、これから受信しようとする第1のデータ(例えば、図5に示すコンテンツデータ)を、予め定められた所定の大きさに分けた第2のデータ(例えば、図5のセグメント71−1乃至セグメント71−6、セグメント71)をそれぞれ順番に受信する場合、次に受信しようとする第2のデータを、さらに送信装置(例えば、図2のサーバ52−1乃至サーバ52−N、サーバ52)のそれぞれに対応する第3のデータ(例えば、図5に示すパート111−1乃至パート111−6、パート111、パート112−1乃至パート112−6、パート112)のそれぞれに分けることにより、第3のデータのそれぞれの送信を対応する送信装置のそれぞれに割り当てる割り当て手段(例えば、図8の算出部253)と、送信装置のそれぞれに割り当てた第3のデータのそれぞれの送信を要求する要求信号のそれぞれを、第3のデータに対応する送信装置にそれぞれ送信する送信手段(例えば、図7の送信部203−1乃至送信部203−N、送信部203)と、それぞれの送信装置から送信されてきた、第3のデータのそれぞれを受信する受信手段(例えば、図7の受信部204−1乃至受信部204−N、受信部204)とを備えることを特徴とする。   The information processing apparatus according to claim 1, wherein the first data to be received (for example, the content data shown in FIG. 5) is divided into predetermined second predetermined data (for example, the content data illustrated in FIG. 5). When receiving the segments 71-1 to 71-6 and 71 in FIG. 5 in order, the second data to be received next is further transmitted to the transmitting device (for example, the servers 52-1 to 52-1 in FIG. 2). Server 52-N, server 52) third data (for example, part 111-1 to 111-6, part 111, part 112-1 to part 112-6, part 112 shown in FIG. 5) By assigning each transmission of the third data to each of the corresponding transmission devices (for example, the calculation unit 253 in FIG. 8). And a transmission means (for example, the transmission unit 203 in FIG. 7) for transmitting each of the request signals for requesting the transmission of the third data allocated to each of the transmission devices to the transmission device corresponding to the third data. -1 to transmitting section 203-N, transmitting section 203) and receiving means for receiving each of the third data transmitted from the respective transmitting apparatuses (for example, receiving section 204-1 to receiving section in FIG. 7) 204-N, receiving unit 204).

請求項2に記載の情報処理装置は、第3のデータ(例えば、図5に示すパート111−1乃至パート111−6、パート111、パート112−1乃至パート112−6、パート112)を送信装置(例えば、図2のサーバ52−1乃至サーバ52−N、サーバ52)から受信する速度を示す情報を記憶する記憶手段(例えば、図8の受信履歴記憶部255)をさらに備え、割り当て手段(例えば、図8の算出部253)は、第3のデータを送信装置から受信する速度を示す情報を基に、第3のデータの大きさをそれぞれ変化させて、第2のデータを第3のデータのそれぞれに分けることを特徴とする。   The information processing apparatus according to claim 2 transmits the third data (for example, part 111-1 to part 111-6, part 111, part 112-1 to part 112-6, part 112 shown in FIG. 5). A storage unit (for example, the reception history storage unit 255 in FIG. 8) that stores information indicating the speed received from the device (for example, the server 52-1 to the server 52-N in FIG. 2 or the server 52) is further provided. (For example, the calculation unit 253 in FIG. 8) changes the size of the third data based on the information indicating the speed at which the third data is received from the transmission device, and converts the second data into the third data. It is characterized by dividing each of the data.

請求項3に記載の情報処理方法は、これから受信しようとする第1のデータ(例えば、図5に示すコンテンツデータ)を、予め定められた所定の大きさに分けた第2のデータ(例えば、図5のセグメント71−1乃至セグメント71−6、セグメント71)をそれぞれ順番に受信する場合、次に受信しようとする第2のデータを、さらに送信装置(例えば、図2のサーバ52−1乃至サーバ52−N、サーバ52)のそれぞれに対応する第3のデータ(例えば、図5に示すパート111−1乃至パート111−6、パート111、パート112−1乃至パート112−6、パート112)のそれぞれに分けることにより、第3のデータのそれぞれの送信を対応する送信装置のそれぞれに割り当てる割り当てステップ(例えば、図10のステップS64の処理およびステップS72の処理)と、送信装置のそれぞれに割り当てた第3のデータのそれぞれの送信を要求する要求信号のそれぞれの、第3のデータに対応する送信装置のそれぞれへの送信を制御する送信制御ステップ(例えば、図10のステップS65の処理)と、それぞれの送信装置から送信されてきた、第3のデータのそれぞれの受信を制御する受信制御ステップ(例えば、図10のステップS66の処理)とを含むことを特徴とする。   The information processing method according to claim 3, wherein the first data to be received (for example, the content data shown in FIG. 5) is divided into predetermined second predetermined data (for example, content data shown in FIG. 5). When receiving the segments 71-1 to 71-6 and 71 in FIG. 5 in order, the second data to be received next is further transmitted to the transmitting device (for example, the servers 52-1 to 52-1 in FIG. 2). Server 52-N, server 52) third data (for example, part 111-1 to 111-6, part 111, part 112-1 to part 112-6, part 112 shown in FIG. 5) By assigning each transmission of the third data to each of the corresponding transmitting devices (for example, the steps of FIG. 10). The process of S64 and the process of step S72) and the transmission of the request signal for requesting the transmission of each of the third data assigned to each of the transmission apparatuses to each of the transmission apparatuses corresponding to the third data. A transmission control step for controlling (for example, the processing of step S65 in FIG. 10) and a reception control step for controlling the reception of each of the third data transmitted from the respective transmitting apparatuses (for example, step S66 in FIG. 10). The processing is included.

なお、請求項4に記載の記録媒体および請求項5に記載のプログラムも、上述した請求項3に記載の情報処理方法と基本的に同様の処理であるため、繰り返しになるのでその説明は省略する。   Note that the recording medium according to claim 4 and the program according to claim 5 are basically the same processing as the information processing method according to claim 3 described above, and are therefore repeated, so that the description thereof is omitted. To do.

請求項6に記載の情報処理装置は、第1のデータ(例えば、図5に示すコンテンツデータ)を記憶する記憶手段(例えば、図7の記録部223−1乃至記録部223−N、記録部223)と、相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータ(例えば、図5のセグメント71−1乃至セグメント71−6、セグメント71)を、相手がそれぞれ順番に受信する場合、相手から送信されてきた、相手が次に受信しようとする第2のデータをさらに所定の数に分けた第3のデータ(例えば、図5に示すパート111−1乃至パート111−6、パート111、パート112−1乃至パート112−6、パート112)のうちの、1つの第3のデータの送信を要求する要求信号を受信する受信手段(例えば、図7の受信部221−1乃至受信部221−N、受信部221)と、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータを取得する取得手段(例えば、図7の取得部222−1乃至取得部222−N、取得部222)と、取得した第3のデータを、相手に送信する送信手段(例えば、図7の送信部224−1乃至送信部224−N、送信部224)とを備えることを特徴とする。   The information processing apparatus according to claim 6 is a storage unit (for example, the recording unit 223-1 to the recording unit 223-N in FIG. 7, the recording unit) that stores the first data (for example, the content data illustrated in FIG. 5). 223) and second data obtained by dividing the first data to be received by the other party into a predetermined size (for example, segment 71-1 to segment 71-6, segment 71 in FIG. 5) Are received in turn, the third data (for example, the part shown in FIG. 5), which is transmitted from the partner and is divided into a predetermined number of second data to be received next by the partner. 111-1 to part 111-6, part 111, part 112-1 to part 112-6, part 112), receiving means for receiving a request signal for requesting transmission of one third data For example, the third data requested to be transmitted is acquired from the first data stored based on the request signal with the reception units 221-1 to 221-N and the reception unit 221) in FIG. Acquisition means (for example, the acquisition unit 222-1 to acquisition unit 222-N and acquisition unit 222 in FIG. 7) and transmission means for transmitting the acquired third data to the other party (for example, the transmission unit 224 in FIG. 7). -1 to transmitting unit 224-N, and transmitting unit 224).

請求項7に記載の情報処理方法は、相手がこれから受信しようとする第1のデータ(例えば、図5に示すコンテンツデータ)を予め定められた所定の大きさに分けた第2のデータ(例えば、図5のセグメント71−1乃至セグメント71−6、セグメント71)を、相手がそれぞれ順番に受信する場合、相手から送信されてきた、相手が次に受信しようとする第2のデータをさらに所定の数に分けた第3のデータ(例えば、図5に示すパート111−1乃至パート111−6、パート111、パート112−1乃至パート112−6、パート112)のうちの、1つの第3のデータの送信を要求する要求信号の受信を制御する受信制御ステップ(例えば、図15のステップS111の処理)と、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータを取得する取得ステップ(例えば、図15のステップS112の処理)と、取得した第3のデータの相手への送信を制御する送信制御ステップ(例えば、図15のステップS113の処理)とを含むことを特徴とする。   The information processing method according to claim 7 is the second data (for example, the first data (for example, the content data shown in FIG. 5) that the other party intends to receive is divided into a predetermined size. , When the partner receives the segment 71-1 to segment 71-6 and the segment 71) in order, the second data transmitted from the partner and to be received next by the partner is further specified. 3rd data (for example, part 111-1 to part 111-6, part 111, part 112-1 to part 112-6, part 112 shown in FIG. 5). A reception control step for controlling reception of a request signal for requesting transmission of data (for example, the processing of step S111 in FIG. 15), and the first data stored based on the request signal. The acquisition step (for example, the process of step S112 in FIG. 15) for acquiring the third data requested to be transmitted, and the transmission control step (for example, FIG. 15) for controlling the transmission of the acquired third data to the other party. 15 step S113).

なお、請求項8に記載の記録媒体および請求項9に記載のプログラムも、上述した請求項7に記載の情報処理方法と基本的に同様の処理であるため、繰り返しになるのでその説明は省略する。   Note that the recording medium according to claim 8 and the program according to claim 9 are basically the same processing as the information processing method according to claim 7 described above, and are therefore repeated, so the description thereof is omitted. To do.

請求項10に記載の情報処理システムにおいては、受信装置(例えば、図2のクライアント51)は、これから受信しようとする第1のデータ(例えば、図5に示すコンテンツデータ)を、予め定められた所定の大きさに分けた第2のデータ(例えば、図5のセグメント71−1乃至セグメント71−6、セグメント71)をそれぞれ順番に受信する場合、次に受信しようとする第2のデータを、さらに接続されている送信装置(例えば、図2のサーバ52−1乃至サーバ52−N、サーバ52)のそれぞれに対応する第3のデータ(例えば、図5に示すパート111−1乃至パート111−6、パート111、パート112−1乃至パート112−6、パート112)のそれぞれに分けることにより、第3のデータのそれぞれの送信を対応する送信装置のそれぞれに割り当てる割り当て手段(例えば、図8の算出部253)と、送信装置のそれぞれに割り当てた第3のデータのそれぞれの送信を要求する要求信号のそれぞれを、第3のデータに対応する送信装置にそれぞれ送信する送信手段(例えば、図7の送信部203−1乃至送信部203−N、送信部203)とを備え、送信装置のそれぞれは、第1のデータを記憶する記憶手段(例えば、図7の記録部223−1乃至記録部223−N、記録部223)と、受信装置から送信されてきた、要求信号を受信する受信手段(例えば、図7の受信部221−1乃至受信部221−N、受信部221)と、要求信号に基づいて、記憶している第1のデータから、送信が要求された第3のデータを取得する取得手段(例えば、図7の取得部222−1乃至取得部222−N、取得部222)と、取得した第3のデータを、受信装置に送信する送信手段(例えば、図7の送信部224−1乃至送信部224−N、送信部224)とを備え、受信装置は、送信装置のそれぞれから送信されてきた、第3のデータのそれぞれを受信する受信手段(例えば、図7の受信部204−1乃至受信部204−N、受信部204)をさらに備えることを特徴とする。   In the information processing system according to claim 10, the receiving device (for example, the client 51 in FIG. 2) has predetermined first data (for example, the content data illustrated in FIG. 5) to be received. When the second data divided into a predetermined size (for example, segment 71-1 to segment 71-6, segment 71 in FIG. 5) is received in order, the second data to be received next is Further, third data (for example, part 111-1 to part 111- shown in FIG. 5) corresponding to each of the connected transmission apparatuses (for example, server 52-1 to server 52-N, server 52 in FIG. 2). 6, part 111, part 112-1 through part 112-6, and part 112), each transmission of the third data is supported Allocating means (for example, the calculation unit 253 in FIG. 8) to be allocated to each of the transmission devices and the request signal for requesting transmission of each of the third data allocated to each of the transmission devices as the third data. A transmission unit (for example, the transmission unit 203-1 to the transmission unit 203-N and the transmission unit 203 in FIG. 7) for transmitting to the corresponding transmission device, and each of the transmission devices stores a first data. 7 (for example, the recording unit 223-1 to the recording unit 223-N and the recording unit 223 in FIG. 7) and a receiving unit (for example, the receiving unit 221 in FIG. 7) that receives a request signal transmitted from the receiving device. 1 to receiving unit 221-N, receiving unit 221) and acquisition means for acquiring third data requested to be transmitted from the stored first data based on the request signal (for example, FIG. The acquisition unit 222-1 to acquisition unit 222 -N, the acquisition unit 222) and transmission means for transmitting the acquired third data to the reception device (for example, the transmission unit 224-1 to transmission unit 224 -N in FIG. 7). , And a receiving unit that receives each of the third data transmitted from each of the transmitting devices (for example, the receiving unit 204-1 to the receiving unit 204- in FIG. 7). N, receiving unit 204).

本発明は、動画像や音楽などのストリーミングデータを配信するストリーミング配信システムに適用することができる。   The present invention can be applied to a streaming distribution system that distributes streaming data such as moving images and music.

以下、図面を参照して、本発明を適用した実施の形態について説明する。   Embodiments to which the present invention is applied will be described below with reference to the drawings.

図2は、本発明に係るコンテンツ配信システムを説明する図である。このコンテンツ配信システムにおいては、クライアント51およびサーバ52−1乃至サーバ52−N(サーバ52−5乃至サーバ52−(N−1)は図示せず)のそれぞれが、互いに通信網53を介して接続されている。   FIG. 2 is a diagram for explaining a content distribution system according to the present invention. In this content distribution system, the client 51 and the servers 52-1 to 52-N (the servers 52-5 to 52- (N-1) are not shown) are connected to each other via the communication network 53. Has been.

クライアント51およびサーバ52−1乃至サーバ52−Nから構成されるネットワークは、いわゆるピアツーピアネットワークであり、クライアント51およびサーバ52−1乃至サーバ52−Nのそれぞれは、通信網53を介して接続されている装置(クライアント51およびサーバ52−1乃至サーバ52−N)のうち、所望するコンテンツデータを記録している装置を検索し、検索された装置からコンテンツデータをダウンロードすることができる。また、クライアント51およびサーバ52−1乃至サーバ52−Nのそれぞれは、通信網53を介して接続されている装置からの要求に応じて、記録しているコンテンツデータを、通信網53を介してコンテンツデータの送信を要求してきた装置あてに送信することができる。   The network composed of the client 51 and the servers 52-1 to 52-N is a so-called peer-to-peer network, and each of the client 51 and the servers 52-1 to 52-N is connected via the communication network 53. Among the existing devices (client 51 and servers 52-1 to 52 -N), the device that records the desired content data can be searched, and the content data can be downloaded from the searched device. Each of the client 51 and the servers 52-1 to 52 -N transmits the recorded content data via the communication network 53 in response to a request from a device connected via the communication network 53. It can be transmitted to a device that has requested transmission of content data.

図2では、説明のため、コンテンツデータを受信(ダウンロード)する装置をクライアント51とし、クライアント51あてにコンテンツデータを送信する装置をサーバ(サーバ52−1乃至サーバ52−N)と称する。なお、以下、サーバ52−1乃至サーバ52−Nのそれぞれを個々に区別する必要のない場合、単にサーバ52と称する。   In FIG. 2, for the sake of explanation, a device that receives (downloads) content data is referred to as a client 51, and devices that transmit content data to the client 51 are referred to as servers (servers 52-1 to 52 -N). Hereinafter, when it is not necessary to distinguish each of the servers 52-1 to 52-N, they are simply referred to as servers 52.

ユーザが、クライアント51を操作して、所望のコンテンツデータをダウンロードする場合、クライアント51は、通信網53を介して接続されているサーバ52−1乃至サーバ52−Nのうち、所望するコンテンツデータを記録しているサーバ52を検索する。   When the user operates the client 51 to download desired content data, the client 51 selects desired content data from the servers 52-1 to 52-N connected via the communication network 53. The recorded server 52 is searched.

例えば、クライアント51は、所定のコンテンツデータを記録しているサーバ52の検索を要求する検索要求信号を生成して、生成した検索要求信号を、通信網53を介してサーバ52−1およびサーバ52−2あてに送信する。   For example, the client 51 generates a search request signal for requesting a search of the server 52 that records predetermined content data, and sends the generated search request signal to the server 52-1 and the server 52 via the communication network 53. -Send to -2.

サーバ52−1およびサーバ52−2は、それぞれクライアント51から送信されてきた検索要求信号を受信する。そして、サーバ52−1またはサーバ52−2は、自分自身が所定のコンテンツデータを記録している場合、コンテンツデータを記録している旨の信号を生成し、生成した信号を、通信網53を介してクライアント51あてに送信する。   Each of the server 52-1 and the server 52-2 receives the search request signal transmitted from the client 51. Then, when the server 52-1 or the server 52-2 records the predetermined content data, the server 52-1 or the server 52-2 generates a signal indicating that the content data is recorded, and sends the generated signal to the communication network 53. To the client 51.

一方、サーバ52−1またはサーバ52−2が、所定のコンテンツデータを記録していない場合、サーバ52−1またはサーバ52−2は、受信した検索要求信号を、通信網53を介して他のサーバ52あてに送信する。例えば、サーバ52−1は、受信した検索要求信号を、通信網53を介してサーバ52−3およびサーバ52−4あてに送信し、サーバ52−2は、受信した検索要求信号を、通信網53を介してサーバ52−5およびサーバ52−6あてに送信する。   On the other hand, when the server 52-1 or the server 52-2 does not record the predetermined content data, the server 52-1 or the server 52-2 transmits the received search request signal to the other via the communication network 53. It is transmitted to the server 52. For example, the server 52-1 transmits the received search request signal to the server 52-3 and the server 52-4 via the communication network 53, and the server 52-2 transmits the received search request signal to the communication network. The data is transmitted to the server 52-5 and the server 52-6 via 53.

サーバ52−1またはサーバ52−2が検索要求信号を受信した場合と同様に、サーバ52−3乃至サーバ52−6のそれぞれは、検索要求信号を受信し、自分自身がコンテンツデータを記録している場合、コンテンツデータを記録している旨の信号を生成して、通信網53を介してクライアント51あてに送信し、自分自身がコンテンツデータを記録していない場合、受信した検索要求信号を、通信網53を介して他のサーバ52あてに送信する。   Similarly to the case where the server 52-1 or the server 52-2 receives the search request signal, each of the server 52-3 to the server 52-6 receives the search request signal and records its own content data. If the content data is recorded, it is transmitted to the client 51 via the communication network 53. If the content data is not recorded by itself, the received search request signal is The data is transmitted to another server 52 via the communication network 53.

このようにすることで、クライアント51には、所望するコンテンツデータを記録しているサーバ52から、コンテンツデータを記録している旨の信号が送信されてくる。クライアント51は、このコンテンツデータを記録している旨の信号を受信することによって、サーバ52のうち、所望するコンテンツデータを記録しているサーバ52を検索することができる。   In this way, a signal indicating that the content data is recorded is transmitted to the client 51 from the server 52 that records the desired content data. The client 51 can search the server 52 that records the desired content data among the servers 52 by receiving the signal indicating that the content data is recorded.

そして、クライアント51は、コンテンツデータを記録しているサーバ52が検索されると、所望するコンテンツデータを複数のデータに分割して(分けて)、分割したそれぞれのデータを、それぞれコンテンツデータを記録しているサーバ52からダウンロードする。例えば、サーバ52−1およびサーバ52−2が、所望するコンテンツデータを記録している場合、クライアント51は、コンテンツデータを複数のデータに分割する分割位置を指定し、それぞれのデータをサーバ52−1またはサーバ52−2からダウンロードする。   Then, when the server 52 that records the content data is searched, the client 51 divides the desired content data into a plurality of data, and records each divided data as content data. Download from the server 52 running. For example, when the server 52-1 and the server 52-2 are recording the desired content data, the client 51 designates a division position where the content data is divided into a plurality of data, and each data is assigned to the server 52-. 1 or downloaded from the server 52-2.

次に、図3乃至図5を参照して、クライアント51が、コンテンツデータを分割してダウンロードする方法について説明する。なお、図4および図5において、図3における場合と対応する部分には、同一の符号を付してあり、繰り返しになるのでその説明は、適宜、省略する。   Next, a method in which the client 51 divides and downloads content data will be described with reference to FIGS. 4 and 5, the same reference numerals are given to the portions corresponding to those in FIG. 3, and the description thereof will be omitted as appropriate since it will be repeated.

例えば、クライアント51が、これから受信しようとするコンテンツデータを分割して、2つのサーバ52−1およびサーバ52−2からダウンロードする場合、図3に示すように、コンテンツデータが、所定の大きさのデータであるセグメント71−1乃至セグメント71−6の、6つのデータに分割されるように、その分割位置を指定する。   For example, when the client 51 divides content data to be received and downloads it from the two servers 52-1 and 52-2, the content data has a predetermined size as shown in FIG. The division positions are designated so that the data is segmented into six pieces of data, that is, the segments 71-1 to 71-6.

コンテンツデータをセグメント71−1乃至セグメント71−6のそれぞれに分割する場合、例えば、セグメント71−1の大きさが、セグメント71−2乃至セグメント71−6のそれぞれの大きさよりも小さくなるように分割位置を指定するなど、セグメント71−1乃至セグメント71−6の大きさがそれぞれ異なるように分割位置を指定してもよく、また、セグメント71−1乃至セグメント71−6が、それぞれ同じ大きさのデータとなるように分割位置を指定してもよい。   When dividing the content data into the segments 71-1 to 71-6, for example, the segment 71-1 is divided so that the size is smaller than the sizes of the segments 71-2 to 71-6. The division positions may be specified so that the sizes of the segments 71-1 to 71-6 are different, such as specifying the position, and the segments 71-1 to 71-6 have the same size. The division position may be designated so as to be data.

例えば、セグメント71−1乃至セグメント71−6が、それぞれ同じ大きさのデータとなるように分割する場合、セグメント71−1乃至セグメント71−6のそれぞれの大きさは、例えば、コンテンツデータに対応するコンテンツを、1分間再生するために必要なデータの大きさなどとされる。以下、セグメント71−1乃至セグメント71−6のそれぞれを個々に区別する必要のない場合、単にセグメント71と称する。   For example, when the segments 71-1 to 71-6 are divided so as to have the same size, the sizes of the segments 71-1 to 71-6 correspond to the content data, for example. The size of data necessary for reproducing the content for one minute is set. Hereinafter, the segments 71-1 to 71-6 are simply referred to as segments 71 when it is not necessary to individually distinguish them.

次に、クライアント51は、セグメント71が、コンテンツデータをダウンロードするサーバ52の数のデータに分割されるように分割位置を指定する。したがって、図3の例においては、クライアント51は、コンテンツデータを、サーバ52−1およびサーバ52−2から分割してダウンロードするので、セグメント71がそれぞれ2つのデータに分割されるように、それぞれのデータの分割位置を指定する。なお、以下、セグメント71を分割したデータをパートと称する。   Next, the client 51 designates the division position so that the segment 71 is divided into data of the number of servers 52 that download the content data. Therefore, in the example of FIG. 3, the client 51 divides and downloads the content data from the server 52-1 and the server 52-2, so that each segment 71 is divided into two pieces of data. Specify the data division position. Hereinafter, data obtained by dividing the segment 71 is referred to as a part.

すなわち、クライアント51は、セグメント71−1をパート81−1およびパート82−1に分割し、セグメント71−2をパート81−2およびパート82−2に分割し、セグメント71−3をパート81−3およびパート82−3に分割する。   That is, the client 51 divides the segment 71-1 into the parts 81-1 and 82-1, divides the segment 71-2 into the parts 81-2 and 82-2, and divides the segment 71-3 into the part 81-. 3 and part 82-3.

同様に、クライアント51は、セグメント71−4をパート81−4およびパート82−4に分割し、セグメント71−5をパート81−5およびパート82−5に分割し、セグメント71−6をパート81−6およびパート82−6に分割する。   Similarly, the client 51 divides segment 71-4 into part 81-4 and part 82-4, divides segment 71-5 into part 81-5 and part 82-5, and segments 71-6 as part 81. -6 and part 82-6.

さらに、クライアント51は、パート81−1乃至パート81−6のそれぞれの送信を、サーバ52−1に割り当て、パート82−1乃至パート82−6のそれぞれの送信を、サーバ52−2に割り当てる。そして、クライアント51は、サーバ52−1およびサーバ52−2とそれぞれセッションを張り(コネクションを確立させ)、サーバ52−1からパート81−1乃至パート81−6をそれぞれダウンロードし、サーバ52−2からパート82−1乃至パート82−6をそれぞれダウンロードする。   Further, the client 51 assigns the transmissions of the parts 81-1 to 81-6 to the server 52-1, and assigns the transmissions of the parts 82-1 to 82-6 to the server 52-2. The client 51 establishes a session (establishes a connection) with each of the server 52-1 and the server 52-2, downloads the parts 81-1 to 81-6 from the server 52-1, and the server 52-2. Part 82-1 through part 82-6 are downloaded respectively.

すなわち、クライアント51は、まず、サーバ52−1からパート81−1をダウンロードし、パート81−1のダウンロードが完了した後、サーバ52−1からパート81−2をダウンロードする。そして、パート81−2のダウンロードが完了した後、サーバ52−1からパート81−3をダウンロードし、同様にして、順番にパート81−4乃至パート81−6のそれぞれを、サーバ52−1からダウンロードする。   That is, the client 51 first downloads the part 81-1 from the server 52-1, and after the download of the part 81-1 is completed, downloads the part 81-2 from the server 52-1. After the download of the part 81-2 is completed, the part 81-3 is downloaded from the server 52-1, and each of the parts 81-4 to 81-6 is sequentially transferred from the server 52-1. to download.

また、クライアント51は、パート81−1乃至パート81−6のダウンロードと並行して、パート82−1乃至パート82−6のそれぞれを、サーバ52−2からダウンロードする。すなわち、クライアント51は、まず、サーバ52−2からパート82−1をダウンロードし、パート82−1のダウンロードが完了した後、サーバ52−2からパート82−2をダウンロードする。そして、パート82−2のダウンロードが完了した後、サーバ52−2からパート82−3をダウンロードし、同様にして、順番にパート82−4乃至パート82−6のそれぞれを、サーバ52−2からダウンロードする。   In addition, the client 51 downloads each of the parts 82-1 to 82-6 from the server 52-2 in parallel with the downloading of the parts 81-1 to 81-6. That is, the client 51 first downloads the part 82-1 from the server 52-2, and after the download of the part 82-1 is completed, the client 51 downloads the part 82-2 from the server 52-2. Then, after the download of the part 82-2 is completed, the part 82-3 is downloaded from the server 52-2. Similarly, the parts 82-4 to 82-6 are sequentially transferred from the server 52-2. to download.

なお、以下、パート81−1乃至パート81−6のそれぞれを個々に区別する必要のない場合、単にパート81と称する。また、以下、パート82−1乃至パート82−6のそれぞれを個々に区別する必要のない場合、単にパート82と称する。   Hereinafter, when it is not necessary to individually distinguish each of the parts 81-1 to 81-6, they are simply referred to as part 81. Hereinafter, when it is not necessary to distinguish each of the parts 82-1 to 82-6, they are simply referred to as part 82.

また、以下、クライアント51がコンテンツデータを分割するとは、クライアント51がコンテンツデータそのものを分割するのではなく、クライアント51がこれから受信しようとするコンテンツデータを、所定の大きさ(量)のデータに分けるための大きさ(または分割位置)を指定することをいう。したがって、クライアント51は、コンテンツデータを分割する位置を指定することによって、すなわち、コンテンツデータのうちの送信を要求する部分(パート)を指定することによって、複数のサーバ52からコンテンツデータを分割してダウンロードする。   In the following description, the client 51 divides the content data, not the client 51 divides the content data itself, but the content data that the client 51 intends to receive is divided into data of a predetermined size (amount). To specify the size (or division position). Therefore, the client 51 divides the content data from the plurality of servers 52 by designating the position where the content data is divided, that is, by designating the part (part) of the content data that requires transmission. to download.

ところで、セグメント71を、大きさの等しいパートに分割して、サーバ52−1およびサーバ52−2からダウンロードする場合、クライアント51は、例えば、図4に示すように、セグメント71を、大きさの等しい2つのパートに分割する。ここで、図中、横軸は、コンテンツデータを基に再生されるコンテンツの再生時刻を示しており、コンテンツ(コンテンツデータ)を再生する場合、コンテンツは、再生時刻t30の部分から再生が開始され、再生時刻t38の部分で再生が終了する。   By the way, when the segment 71 is divided into parts having the same size and downloaded from the server 52-1 and the server 52-2, the client 51, for example, as shown in FIG. Divide into two equal parts. Here, in the figure, the horizontal axis indicates the reproduction time of the content that is reproduced based on the content data. When the content (content data) is reproduced, the content starts to be reproduced from the portion of the reproduction time t30. The playback ends at the playback time t38.

また、パート101−1乃至パート101−6、およびパート102−1乃至パート102−6のそれぞれのうち、黒い部分は、既にサーバ52からのダウンロードが完了した部分を示しており、白い部分は、サーバ52からのダウンロードが完了していない部分、すなわち、まだダウンロードしていない部分を示している。   In each of the parts 101-1 to 101-6 and the parts 102-1 to 102-6, the black part indicates a part that has already been downloaded from the server 52, and the white part indicates A portion where the download from the server 52 has not been completed, that is, a portion that has not yet been downloaded is shown.

クライアント51は、セグメント71−1を、それぞれ大きさが等しいパート101−1およびパート102−1に分割し、セグメント71−2を、それぞれ大きさが等しいパート101−2およびパート102−2に分割し、セグメント71−3を、それぞれ大きさが等しいパート101−3およびパート102−3に分割する。   The client 51 divides the segment 71-1 into parts 101-1 and 102-1 having the same size, and divides the segment 71-2 into parts 101-2 and 102-2 having the same size. Then, the segment 71-3 is divided into a part 101-3 and a part 102-3 having the same size.

同様に、クライアント51は、セグメント71−4を、それぞれ大きさが等しいパート101−4およびパート102−4に分割し、セグメント71−5を、それぞれ大きさが等しいパート101−5およびパート102−5に分割し、セグメント71−6を、それぞれ大きさが等しいパート101−6およびパート102−6に分割する。   Similarly, the client 51 divides the segment 71-4 into a part 101-4 and a part 102-4 having the same size, and segments 71-5 are divided into a part 101-5 and a part 102- having the same size, respectively. The segment 71-6 is divided into a part 101-6 and a part 102-6 having the same size.

そして、クライアント51は、パート101−1乃至パート101−6のそれぞれの送信をサーバ52−1に割り当て、パート102−1乃至パート102−6のそれぞれの送信をサーバ52−2に割り当てる。そして、クライアント51は、図3における場合と同様に、パート101−1から順番に、パート101−1乃至パート101−6を、それぞれサーバ52−1からダウンロードし、パート102−1から順番に、パート102−1乃至パート102−6を、それぞれサーバ52−2からダウンロードする。   Then, the client 51 assigns the transmissions of the parts 101-1 to 101-6 to the server 52-1, and assigns the transmissions of the parts 102-1 to 102-6 to the server 52-2. Then, as in the case of FIG. 3, the client 51 downloads the parts 101-1 to 101-6 from the server 52-1 in order from the part 101-1, and sequentially from the part 102-1. Parts 102-1 to 102-6 are downloaded from the server 52-2, respectively.

なお、以下、パート101−1乃至パート101−6を個々に区別する必要のない場合、単に、パート101と称する。また、以下、パート102−1乃至パート102−6を個々に区別する必要のない場合、単に、パート102と称する。   Hereinafter, the parts 101-1 to 101-6 are simply referred to as parts 101 when it is not necessary to distinguish them individually. Hereinafter, when it is not necessary to individually distinguish the parts 102-1 to 102-6, they are simply referred to as part 102.

図4における例においては、クライアント51において、既にパート101−1乃至パート101−5のサーバ52−1からのダウンロードが完了しており、パート101−6のうちの、再生時刻t36から再生時刻t37までの部分のダウンロードが完了している。また、クライアント51において、既にパート102−1およびパート102−2のサーバ52−2からのダウンロードが完了しており、パート102−3のうちの、再生時刻t33から再生時刻t34までの部分のダウンロードが完了している。   In the example in FIG. 4, the client 51 has already downloaded the part 101-1 to the part 101-5 from the server 52-1, and the reproduction time t37 from the reproduction time t36 of the part 101-6. The part of the download is complete. Further, in the client 51, the download of the part 102-1 and the part 102-2 from the server 52-2 has already been completed, and the part of the part 102-3 from the reproduction time t33 to the reproduction time t34 is downloaded. Has been completed.

この場合、クライアント51は、セグメント71−1およびセグメント71−2と、セグメント71−3の再生時刻t32から再生時刻t34までの部分のデータとを用いて、コンテンツを連続して再生することができる。すなわち、ユーザは、再生時刻t30から再生時刻t34までのコンテンツデータに対応する部分のコンテンツを、連続して視聴することができる。   In this case, the client 51 can continuously reproduce the content by using the segment 71-1 and the segment 71-2 and the data of the segment 71-3 from the reproduction time t32 to the reproduction time t34. . That is, the user can continuously view the content corresponding to the content data from the reproduction time t30 to the reproduction time t34.

例えば、現時点において、コンテンツの再生時刻t31に対応する部分が再生されているとすると、コンテンツデータのうちの、再生時刻t30から再生時刻t34までの部分のダウンロードが完了しているので、サーバ52−2や通信網53に問題が発生して、パート102−3のダウンロードが中断されたとしても、クライアント51は、少なくとも、コンテンツを、再生時刻t34に対応する部分までは再生することができる。したがって、再生時刻t34に対応する部分のコンテンツの再生が終了するまでに、パート102−3のダウンロードが再開されれば、コンテンツを途切れさせることなく再生することができる。   For example, assuming that the portion corresponding to the reproduction time t31 of the content is being reproduced at the present time, the download of the portion of the content data from the reproduction time t30 to the reproduction time t34 has been completed. 2 or the communication network 53, even if the download of the part 102-3 is interrupted, the client 51 can reproduce at least the content corresponding to the reproduction time t34. Therefore, if the download of the part 102-3 is resumed by the end of the reproduction of the content corresponding to the reproduction time t34, the content can be reproduced without interruption.

このように、コンテンツデータをセグメント71に分割してダウンロードすることによって、セグメント71のダウンロードが完了するごとに、コンテンツを連続して再生するために用いられるコンテンツデータ(キャッシュされたコンテンツデータ)が増加する。ここで、セグメント71を、大きさが等しいN個のパートに分割して、それぞれサーバ52−1乃至サーバ52−Nからダウンロードする場合における、コンテンツを連続して再生するために用いられる、キャッシュされたコンテンツデータが増加する速度(以下、キャッシュ増加速度と称する)をM1とすると、キャッシュ増加速度M1は、式(1)により近似される(式(1)により表される値に近づく)。   As described above, by dividing the content data into the segments 71 and downloading, the content data (cached content data) used for continuously playing the content increases every time the download of the segment 71 is completed. To do. Here, the segment 71 is divided into N parts having the same size, and cached, which is used to continuously play back the content when downloaded from the server 52-1 to the server 52-N, respectively. If the speed at which the content data increases (hereinafter referred to as the cache increase speed) is M1, the cache increase speed M1 is approximated by the expression (1) (approaches the value expressed by the expression (1)).

M1≒min(Si)×N ・・・(1)   M1≈min (Si) × N (1)

ここで、Siは、クライアント51がサーバ52−i(但し、1≦i≦N)からパートをダウンロードするダウンロード速度であり、min(Si)は、S1乃至SNのうちの最も小さいダウンロード速度を示す。なお、ここで、ダウンロード速度とは、クライアント51がサーバ52からデータ(パート)をダウンロードするビットレートをいう。   Here, Si is a download speed at which the client 51 downloads a part from the server 52-i (where 1 ≦ i ≦ N), and min (Si) indicates the lowest download speed among S1 to SN. . Here, the download speed refers to a bit rate at which the client 51 downloads data (part) from the server 52.

したがって、例えば、図4の例においては、パート101のダウンロード速度S1よりもパート102のダウンロード速度S2の方が小さく(遅く)、セグメント71は、2つのパート(パート101およびパート102)に分割されるので、図4の例におけるキャッシュ増加速度M1は式(1)より、“2(S2)”((S2)×2)となる。   Therefore, for example, in the example of FIG. 4, the download speed S2 of the part 102 is smaller (slower) than the download speed S1 of the part 101, and the segment 71 is divided into two parts (part 101 and part 102). Therefore, the cache increase speed M1 in the example of FIG. 4 is “2 (S2)” ((S2) × 2) from the equation (1).

一方、図1に示したように、コンテンツデータを複数のデータ(図4の例におけるセグメント71)に分割して、分割したデータをそれぞれサーバ52からダウンロードする場合のキャッシュ増加速度M2は、例えば、式(2)により近似される。   On the other hand, as shown in FIG. 1, when the content data is divided into a plurality of data (segment 71 in the example of FIG. 4) and the divided data is downloaded from the server 52, the cache increase speed M2 is, for example, It is approximated by equation (2).

M2≒S1 ・・・(2)   M2≈S1 (2)

ここで、S1は、コンテンツの再生を開始する部分のデータのダウンロード速度を示している。すなわち、図1の例においては、データ11−1のダウンロード速度となる。なお、より詳細には、図1の例において、データ11−1のダウンロードが完了すると、例えば、その後、データ11−2のダウンロードが完了するまでは、キャッシュ増加速度M2は、データ11−2のダウンロード速度となる。   Here, S1 indicates the download speed of the data at the part where the reproduction of the content is started. That is, in the example of FIG. 1, it becomes the download speed of the data 11-1. In more detail, in the example of FIG. 1, when the download of the data 11-1 is completed, for example, until the download of the data 11-2 is completed, the cache increase speed M2 is Download speed.

したがって、全てのパートまたはデータのダウンロード速度が等しいと仮定して、すなわち、式(1)におけるSiと、式(2)におけるS1とが等しい(例えば、“Si=S1”とする)と仮定して、キャッシュ増加速度M1と、キャッシュ増加速度M2とを比較すると、M1の値は“NS1”(S1×N)となり、M2の値はS1となるから、M1の値は、M2の値のN倍となる。   Therefore, it is assumed that the download speeds of all parts or data are equal, that is, Si in equation (1) is equal to S1 in equation (2) (eg, “Si = S1”). When the cache increase speed M1 and the cache increase speed M2 are compared, the value of M1 is “NS1” (S1 × N), and the value of M2 is S1, so that the value of M1 is N of the value of M2. Doubled.

このように、コンテンツデータをセグメント71に分割し、さらに、セグメント71をそれぞれ大きさが等しい複数のパートに分割して、それぞれのパートを複数のサーバ52からダウンロードすることによって、キャッシュ増加速度をより大きくすることができる。これにより、クライアント51は、コンテンツを連続して再生するために用いられる、キャッシュされたコンテンツデータを、より多く記憶(確保)しておくことができるので、サーバ52や通信網53に問題が発生した場合に、コンテンツの再生が途切れてしまう可能性をより低くすることができる。   In this way, the content data is divided into segments 71, and further, the segments 71 are divided into a plurality of parts each having the same size, and each part is downloaded from a plurality of servers 52, thereby increasing the cache increase rate. Can be bigger. As a result, the client 51 can store (secure) more cached content data that is used to continuously play back content, which causes a problem in the server 52 and the communication network 53. In such a case, it is possible to further reduce the possibility that the reproduction of the content is interrupted.

ところで、図4において、パート101−4およびパート101−5は、ダウンロードが完了しているにも関わらず、パート102−3の再生時刻t34から再生時刻t35までの部分がダウンロードされていないため、対応するコンテンツを再生するためのデータとして用いることができない。   By the way, in FIG. 4, since the part 101-4 and the part 101-5 are not downloaded, the part from the reproduction time t34 to the reproduction time t35 of the part 102-3 is not downloaded. It cannot be used as data for reproducing the corresponding content.

これは、パート101のダウンロード速度と、パート102のダウンロード速度が異なるにも関わらず、セグメント71をそれぞれ等しい大きさのパート101とパート102とに分割した(分けた)からである。そこで、図5に示すように、それぞれのパートの大きさを、パートのダウンロード速度に応じて定めることによって、キャッシュ増加速度をより大きくすることができる。すなわち、パートのダウンロード速度に応じてパートの大きさを変化させることによって、ダウンロードが完了したコンテンツデータの量に対する、連続したコンテンツの再生に用いることができるコンテンツデータ(キャッシュされたコンテンツデータ)の量の割合をより大きくすることができる。   This is because, even though the download speed of part 101 and the download speed of part 102 are different, segment 71 is divided (divided) into part 101 and part 102 of the same size. Therefore, as shown in FIG. 5, by determining the size of each part according to the download speed of the part, the cache increase rate can be further increased. That is, the amount of content data (cached content data) that can be used for continuous content playback relative to the amount of content data that has been downloaded by changing the size of the part according to the part download speed The ratio of can be increased.

図5において、横軸は、コンテンツデータを基に再生されるコンテンツの再生時刻を示しており、コンテンツ(コンテンツデータ)を再生する場合、コンテンツは、再生時刻t50の部分から再生が開始され、再生時刻t53の部分で再生が終了する。   In FIG. 5, the horizontal axis indicates the playback time of the content that is played back based on the content data. When playing back the content (content data), playback of the content starts from the playback time t50 portion. Playback ends at time t53.

また、パート111−1乃至パート111−6、およびパート112−1乃至パート112−6のうち、黒い部分は、既にサーバ52からのダウンロードが完了した部分を示しており、白い部分は、サーバ52からのダウンロードが完了していない部分、すなわち、まだダウンロードしていない部分を示している。   Also, among the parts 111-1 to 111-6 and the parts 112-1 to 112-6, the black part indicates a part that has already been downloaded from the server 52, and the white part indicates the server 52. The part which has not been downloaded from, that is, the part which has not been downloaded yet is shown.

クライアント51は、まず、セグメント71−1を、それぞれ大きさが等しいパート111−1およびパート112−1に分割する。そして、クライアント51は、パート111−1の送信をサーバ52−1に割り当て、パート112−1の送信をサーバ52−2に割り当てて、パート111−1をサーバ52−1からダウンロードし、パート112−1をサーバ52−2からダウンロードする。   The client 51 first divides the segment 71-1 into a part 111-1 and a part 112-1 having the same size. Then, the client 51 assigns the transmission of the part 111-1 to the server 52-1, assigns the transmission of the part 112-1 to the server 52-2, downloads the part 111-1 from the server 52-1, and transmits the part 112-1. -1 is downloaded from the server 52-2.

次に、パート111−1およびパート112−1のダウンロードが完了すると、クライアント51は、パート111−1のダウンロード速度、およびパート112−1のダウンロード速度に基づいて、セグメント71−2をパート111−2およびパート112−2に分割する。ここで、例えば、パート112−1のダウンロード速度よりも、パート111−1のダウンロード速度が大きい場合、クライアント51は、パート112−2の大きさよりもパート111−2の大きさが大きくなるように、セグメント71−2をパート111−2およびパート112−2に分割する。   Next, when the download of the part 111-1 and the part 112-1 is completed, the client 51 transfers the segment 71-2 to the part 111- based on the download speed of the part 111-1 and the download speed of the part 112-1. 2 and part 112-2. Here, for example, when the download speed of the part 111-1 is higher than the download speed of the part 112-1, the client 51 is set so that the size of the part 111-2 is larger than the size of the part 112-2. The segment 71-2 is divided into a part 111-2 and a part 112-2.

なお、より詳細には、パート111−1およびパート112−1のダウンロードが完了すると、クライアント51は、パート111−1のダウンロード速度、およびパート112−1のダウンロード速度に基づいて、セグメント71−2乃至セグメント71−6を、それぞれ、パート111−2乃至パート111−6、およびパート112−2乃至パート112−6に分割する。   In more detail, when the download of part 111-1 and part 112-1 is completed, the client 51 determines the segment 71-2 based on the download speed of part 111-1 and the download speed of part 112-1. Or segment 71-6 is divided into part 111-2 to part 111-6 and part 112-2 to part 112-6, respectively.

そして、クライアント51は、パート111−2の送信をサーバ52−1に割り当て、パート112−2の送信をサーバ52−2に割り当てて、パート111−2をサーバ52−1からダウンロードし、パート112−2をサーバ52−2からダウンロードする。   Then, the client 51 assigns the transmission of the part 111-2 to the server 52-1, assigns the transmission of the part 112-2 to the server 52-2, downloads the part 111-2 from the server 52-1, and the part 112. -2 is downloaded from the server 52-2.

パート111−2およびパート112−2のダウンロードが完了すると、クライアント51は、セグメント71−2をパート111−2およびパート112−2に分割した場合と同様に、パート111−2、およびパート112−2のそれぞれのダウンロード速度に基づいて、セグメント71−3をパート111−3およびパート112−3に分割して、パート111−3をサーバ52−1からダウンロードし、パート112−3をサーバ52−2からダウンロードする。   When the downloading of the part 111-2 and the part 112-2 is completed, the client 51, like the case where the segment 71-2 is divided into the part 111-2 and the part 112-2, is the part 111-2 and the part 112-. 2, segment 71-3 is divided into part 111-3 and part 112-3, part 111-3 is downloaded from server 52-1, and part 112-3 is downloaded from server 52-. Download from 2.

さらに、クライアント51は、セグメント71−4乃至セグメント71−6のそれぞれを、パート111−3乃至パート111−5、およびパート112−3乃至パート112−5のそれぞれのダウンロード速度に基づいて、パート111−4乃至パート111−6、およびパート112−4乃至パート112−6にそれぞれ分割する。   Further, the client 51 assigns each of the segments 71-4 to 71-6 to the part 111 based on the download speed of each of the parts 111-3 to 111-5 and the parts 112-3 to 112-5. -4 to part 111-6 and part 112-4 to part 112-6.

そして、クライアント51は、サーバ52−1から、パート111−4乃至パート111−6を、それぞれ順番にダウンロードし、サーバ52−2から、パート112−4乃至パート112−6を、それぞれ順番にダウンロードする。なお、以下、パート111−1乃至パート111−6のそれぞれを、個々に区別する必要のない場合、単に、パート111と称する。また、以下、パート112−1乃至パート112−6のそれぞれを、個々に区別する必要のない場合、単に、パート112と称する。   Then, the client 51 downloads the parts 111-4 to 111-6 in order from the server 52-1, and downloads the parts 112-4 to 112-6 in order from the server 52-2. To do. Hereinafter, each of the parts 111-1 to 111-6 is simply referred to as a part 111 when it is not necessary to individually distinguish them. Hereinafter, each of the parts 112-1 to 112-6 will be simply referred to as a part 112 when it is not necessary to individually distinguish them.

図5の例においては、クライアント51において、既にパート111−1乃至パート111−4のサーバ52−1からのダウンロードが完了しており、また、パート112−1乃至パート112−4のサーバ52−2からのダウンロードが完了している。したがって、この場合、クライアント51は、セグメント71−1乃至セグメント71−4の部分のコンテンツデータを用いて、コンテンツを連続して再生することができる。すなわち、ユーザは、再生時刻t50から再生時刻t52までのコンテンツデータに対応するコンテンツを、連続して視聴することができる。   In the example of FIG. 5, the client 51 has already downloaded the parts 111-1 to 111-4 from the server 52-1, and the server 112-of the parts 112-1 to 112-4. Download from 2 is complete. Therefore, in this case, the client 51 can continuously reproduce the content by using the content data of the segments 71-1 to 71-4. That is, the user can continuously view the content corresponding to the content data from the reproduction time t50 to the reproduction time t52.

例えば、現時点において、コンテンツの再生時刻t51に対応する部分が再生されているとすると、コンテンツデータのうち、再生時刻t50から再生時刻t52までの部分のダウンロードが完了しているので、サーバ52や通信網53に問題が発生して、パート111またはパート112のダウンロードが中断されたとしても、クライアント51は、少なくとも、コンテンツの再生時刻t52に対応する部分までは再生することができる。したがって、コンテンツの再生時刻t52に対応する部分の再生が終了するまでに、パート111またはパート112のダウンロードが再開されれば、コンテンツを途切れさせることなく再生することができる。   For example, assuming that the portion corresponding to the reproduction time t51 of the content is being reproduced at the present time, since the portion of the content data from the reproduction time t50 to the reproduction time t52 has been downloaded, the server 52 and the communication Even if a problem occurs in the network 53 and the download of the part 111 or the part 112 is interrupted, the client 51 can reproduce at least the part corresponding to the content reproduction time t52. Therefore, if the download of the part 111 or the part 112 is resumed before the reproduction of the portion corresponding to the content reproduction time t52 is completed, the content can be reproduced without interruption.

ここで、図5に示したように、既にダウンロードが完了した、1つのセグメント71を構成するN個のパートのそれぞれのダウンロード速度に基づいて、次にダウンロードするセグメント71をN個のパートに分割して、サーバ52−1乃至サーバ52−Nからそれぞれパートをダウンロードする場合における、キャッシュ増加速度M3は、式(3)により近似することができる(サーバ52−1乃至サーバ52−Nのそれぞれの送信能力の分散が極小のとき、式(3)で表される値に近づく)。   Here, as shown in FIG. 5, the segment 71 to be downloaded next is divided into N parts based on the download speed of each of the N parts constituting one segment 71 that has already been downloaded. Then, the cache increase speed M3 when the parts are downloaded from the servers 52-1 to 52-N can be approximated by the equation (3) (each of the servers 52-1 to 52-N). When the variance of the transmission capability is minimal, it approaches the value represented by equation (3)).

M3≒ΣSi ・・・(3)   M3≈ΣSi (3)

なお、式(3)において、Siは、クライアント51がサーバ52−i(但し、1≦i≦N)からパートをダウンロードするダウンロード速度であり、Σは、iを1からNに変えてのSiの和(合計)をとることを表す。   In Equation (3), Si is a download speed at which the client 51 downloads a part from the server 52-i (where 1 ≦ i ≦ N), and Σ is Si obtained by changing i from 1 to N. Represents the sum (total) of

したがって、例えば、図5の例においては、パート111のダウンロード速度をS1とし、パート112のダウンロード速度をS2とすると、M3は(S1+S2)となる。   Therefore, for example, in the example of FIG. 5, if the download speed of part 111 is S1, and the download speed of part 112 is S2, M3 is (S1 + S2).

また、図4におけるパート101のダウンロード速度と、図5におけるパート111のダウンロード速度が等しく(例えば、S1とする)、さらに、図4におけるパート102のダウンロード速度と、図5におけるパート112のダウンロード速度が等しい(例えば、S2とする)と仮定して、図4の例におけるキャッシュ増加速度M1と、図5の例におけるキャッシュ増加速度M3とを比較する。このとき、例えば、S1がS2より大きいとすると、M1の値は“2(S2)”(S2×2)となり、M3の値は(S1+S2)となり、M3の値は、M1の値よりも“(S1−S2)”((S1+S2)−2(S2))だけ大きくなる。したがって、既にダウンロードしたパートのダウンロード速度に応じて、次にダウンロードするセグメントのパートの大きさを変化させることによって、ダウンロードが完了したコンテンツデータの量に対する、連続したコンテンツの再生に用いることができるコンテンツデータの量の割合をより大きくすることができる。すなわち、ダウンロードが完了したコンテンツデータのうちの、連続したコンテンツの再生に用いることができない部分を少なくして、キャッシュされたコンテンツデータの量を、ダウンロードが完了したコンテンツデータの量により近づけることができる。   Also, the download speed of part 101 in FIG. 4 is equal to the download speed of part 111 in FIG. 5 (for example, S1). Furthermore, the download speed of part 102 in FIG. 4 and the download speed of part 112 in FIG. Are compared (for example, S2), the cache increase rate M1 in the example of FIG. 4 is compared with the cache increase rate M3 in the example of FIG. At this time, for example, if S1 is larger than S2, the value of M1 is “2 (S2)” (S2 × 2), the value of M3 is (S1 + S2), and the value of M3 is “ It becomes larger by (S1-S2) "((S1 + S2) -2 (S2)). Therefore, content that can be used for continuous content reproduction with respect to the amount of content data that has been downloaded by changing the size of the part of the segment to be downloaded next in accordance with the download speed of the already downloaded part. The ratio of the amount of data can be increased. That is, the portion of content data that has been downloaded that cannot be used for continuous content playback can be reduced, and the amount of cached content data can be made closer to the amount of content data that has been downloaded. .

このように、それぞれのパートの大きさを、パートのダウンロード速度に応じて定めることによって、キャッシュ増加速度をより大きくすることができる。これにより、クライアント51は、コンテンツを連続して再生するために用いられるコンテンツデータを、より多く記憶(確保)しておくことができるので、サーバ52や通信網53に問題が発生した場合に、コンテンツの再生が途切れてしまう可能性をより低くすることができる。   In this way, by determining the size of each part according to the download speed of the part, the cache increase speed can be further increased. As a result, the client 51 can store (reserve) more content data used to continuously play back content, so that when a problem occurs in the server 52 or the communication network 53, The possibility that content reproduction is interrupted can be further reduced.

次に、図6は、クライアント51の構成の例を示すブロック図である。   Next, FIG. 6 is a block diagram illustrating an example of the configuration of the client 51.

CPU131は、ROM(Read Only Memory)132、または記録部138に記録されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)133には、CPU131が実行するプログラムやデータなどが適宜記憶される。これらのCPU131、ROM132、およびRAM133は、バス134により相互に接続されている。   The CPU 131 executes various processes according to a program recorded in a ROM (Read Only Memory) 132 or a recording unit 138. A RAM (Random Access Memory) 133 appropriately stores programs executed by the CPU 131 and data. The CPU 131, the ROM 132, and the RAM 133 are connected to each other by a bus 134.

CPU131にはまた、バス134を介して入出力インターフェース135が接続されている。入出力インターフェース135には、キーボード、マウス、スイッチなどよりなる入力部136、ディスプレイ、スピーカ、ランプなどよりなる出力部137が接続されている。CPU131は、入力部136から入力される指令に対応して各種の処理を実行する。   An input / output interface 135 is also connected to the CPU 131 via the bus 134. Connected to the input / output interface 135 are an input unit 136 composed of a keyboard, mouse, switch, and the like, and an output unit 137 composed of a display, a speaker, a lamp, and the like. The CPU 131 executes various processes in response to commands input from the input unit 136.

入出力インターフェース135に接続されている記録部138は、例えばハードディスクなどで構成され、CPU131が実行するプログラムや各種のデータを記録する。通信部139は、例えば、ネットワークカードなどからなり、インターネット、その他のネットワークなどの通信網53を介して、外部の装置と通信する。   The recording unit 138 connected to the input / output interface 135 is configured by a hard disk, for example, and records programs executed by the CPU 131 and various data. The communication unit 139 includes a network card, for example, and communicates with an external device via a communication network 53 such as the Internet or other networks.

また、通信部139は、通信網53を介してプログラムを取得し、記録部138に記録させるようにしてもよい。   In addition, the communication unit 139 may acquire a program via the communication network 53 and cause the recording unit 138 to record the program.

入出力インターフェース135に接続されているドライブ140は、磁気ディスク161、光ディスク162、光磁気ディスク163、或いは半導体メモリ164などが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部138に転送され、記録される。   The drive 140 connected to the input / output interface 135 drives the magnetic disk 161, the optical disk 162, the magneto-optical disk 163, or the semiconductor memory 164 when they are mounted, and programs and data recorded there. Get etc. The acquired program and data are transferred to the recording unit 138 and recorded as necessary.

なお、サーバ52は、クライアント51と同様に構成されるので、その説明は省略する。   Since the server 52 is configured in the same manner as the client 51, the description thereof is omitted.

図7は、クライアント51のCPU131およびサーバ52のCPUが、それぞれプログラムを実行することによって実現される、クライアント51およびサーバ52の機能の構成を示すブロック図である。   FIG. 7 is a block diagram illustrating functional configurations of the client 51 and the server 52 that are realized by the CPU 131 of the client 51 and the CPU of the server 52 executing programs.

ユーザが、所定のコンテンツデータのダウンロードをクライアント51に指示すると、クライアント51は、ユーザによってダウンロードが指示されたコンテンツデータを記録しているサーバ52と通信するために、サーバ52とのコネクションを確立させる。なお、以下では、クライアント51がサーバ52とのコネクションを確立させる例として、いわゆる2wayでコネクションを確立させる場合について説明するが、いわゆる3wayでコネクションを確立させることも可能である。   When the user instructs the client 51 to download predetermined content data, the client 51 establishes a connection with the server 52 in order to communicate with the server 52 that records the content data instructed to be downloaded by the user. . In the following, as an example in which the client 51 establishes a connection with the server 52, a case where a connection is established in a so-called two way will be described. However, a connection can be established in a so-called three way.

すなわち、クライアント51は、通信の開始を要求する通信要求信号を生成し、生成した通信要求信号を、通信網53を介してサーバ52あてに送信する。サーバ52は、クライアント51から送信されてきた通信要求信号を受信する。サーバ52は、通信要求信号を受信すると、通信要求信号を受信した旨の応答信号を生成し、生成した応答信号を、通信網53を介してクライアント51あてに送信する。   That is, the client 51 generates a communication request signal for requesting the start of communication, and transmits the generated communication request signal to the server 52 via the communication network 53. The server 52 receives the communication request signal transmitted from the client 51. When the server 52 receives the communication request signal, the server 52 generates a response signal indicating that the communication request signal has been received, and transmits the generated response signal to the client 51 via the communication network 53.

クライアント51は、サーバ52から応答信号が送信されてくるので、サーバ52から送信されてきた応答信号を受信する。そして、応答信号を受信することによって、サーバ52とのコネクションが確立されたので、クライアント51は、ユーザからダウンロードが指示されたコンテンツデータをセグメントに分け、さらにセグメントをパートに分けて、各パートの送信を、それぞれサーバ52−1乃至サーバ52−Nのいずれかに割り当てる。そして、クライアント51は、サーバ52のそれぞれに割り当てたパート(コンテンツデータ)の送信を要求する送信要求信号を生成する。   Since the response signal is transmitted from the server 52, the client 51 receives the response signal transmitted from the server 52. Since the connection with the server 52 is established by receiving the response signal, the client 51 divides the content data instructed to be downloaded by the user into segments, and further divides the segments into parts. The transmission is assigned to one of the servers 52-1 to 52-N, respectively. Then, the client 51 generates a transmission request signal for requesting transmission of a part (content data) assigned to each of the servers 52.

クライアント51は、生成した送信要求信号を、通信網53を介してサーバ52にそれぞれ送信する。サーバ52は、クライアント51から送信されてきた送信要求信号を受信し、記録しているコンテンツデータのうちのクライアント51から要求された部分(パート)を、通信網53を介してクライアント51あてに送信する。そして、クライアント51は、サーバ52から送信されてきたコンテンツデータ(パート)を受信する。   The client 51 transmits the generated transmission request signal to the server 52 via the communication network 53, respectively. The server 52 receives the transmission request signal transmitted from the client 51 and transmits the part (part) requested from the client 51 in the recorded content data to the client 51 via the communication network 53. To do. Then, the client 51 receives the content data (part) transmitted from the server 52.

クライアント51は、管理部181、割り当て部182、通信制御部183−1乃至通信制御部183−N、および再構成部184を含むように構成される。   The client 51 is configured to include a management unit 181, an allocation unit 182, communication control units 183-1 to 183 -N, and a reconfiguration unit 184.

管理部181は、図示せぬアプリケーションプログラムなどの上位レイヤと、割り当て部182および再構成部184とのデータの授受を制御(仲介)する。管理部181は、登録制御部201およびコンテンツ出力部202を備えている。   The management unit 181 controls (mediates) data exchange between an upper layer such as an application program (not shown) and the allocation unit 182 and the reconfiguration unit 184. The management unit 181 includes a registration control unit 201 and a content output unit 202.

ユーザが、所望のコンテンツデータのダウンロードを指示すると、例えば、管理部181には、アプリケーションプログラムから、通信網53を介してクライアント51に接続されている送信ノードとしてのサーバ52の数、すなわち、ユーザが所望するコンテンツデータを記録しているサーバ52の数、サーバ52のIP(Internet Protocol)アドレス、サーバ52の処理能力などから定められたデータの送信能力などが含まれている、ノード情報が供給される。また、アプリケーションプログラムから管理部181には、ノード情報とともに、ユーザによってダウンロードが指示されたコンテンツデータを特定する情報、コンテンツデータの大きさ(データのサイズ)、コンテンツデータを分割するセグメントの数、1つのセグメントの大きさ(データのサイズ)などが含まれている初期設定情報が供給される。   When the user instructs download of desired content data, for example, the management unit 181 sends the number of servers 52 as transmission nodes connected to the client 51 via the communication network 53 from the application program, that is, the user Node information is supplied, including the number of servers 52 that record the desired content data, the IP (Internet Protocol) address of the server 52, the data transmission capability determined from the processing capability of the server 52, etc. Is done. In addition, the application program notifies the management unit 181 of the node data, the information specifying the content data instructed to be downloaded by the user, the size of the content data (data size), the number of segments into which the content data is divided, 1 Initial setting information including the size (data size) of one segment is supplied.

さらに、アプリケーションプログラムが、管理部181にノード情報を供給した後、新たに、ユーザが所望するコンテンツデータを記録しているサーバ52が検出されると、アプリケーションプログラムから管理部181には、新たに検出されたサーバ52のIPアドレス、サーバ52の送信能力などが含まれている追加ノード情報が供給される。   Further, after the application program supplies the node information to the management unit 181, when a server 52 that records content data desired by the user is newly detected, the application program sends a new information to the management unit 181. Additional node information including the detected IP address of the server 52 and the transmission capability of the server 52 is supplied.

管理部181の登録制御部201は、アプリケーションプログラムから供給されたノード情報、初期設定情報、または追加ノード情報を割り当て部182に供給する。また、管理部181のコンテンツ出力部202は、再構成部184から供給されたコンテンツデータ(が格納されているパケット)をアプリケーションプログラムに供給する。   The registration control unit 201 of the management unit 181 supplies node information, initial setting information, or additional node information supplied from the application program to the allocation unit 182. In addition, the content output unit 202 of the management unit 181 supplies the content data (packet storing the content data) supplied from the reconfiguration unit 184 to the application program.

割り当て部182は、管理部181から供給されたノード情報を記憶する。割り当て部182は、管理部181から追加ノード情報が供給されると、供給された追加ノード情報に含まれている情報が、記憶しているノード情報に含まれるように、ノード情報を更新する。また、割り当て部182は、管理部181から供給された初期設定情報を記憶するとともに、初期設定情報を通信制御部183−1乃至通信制御部183−Nにそれぞれ供給する。   The allocation unit 182 stores the node information supplied from the management unit 181. When the additional node information is supplied from the management unit 181, the allocating unit 182 updates the node information so that the information included in the supplied additional node information is included in the stored node information. The assigning unit 182 stores the initial setting information supplied from the management unit 181 and supplies the initial setting information to the communication control units 183-1 to 183-N.

さらに、クライアント51と、サーバ52−1乃至サーバ52−Nのそれぞれとのコネクションが確立されると、割り当て部182には、通信制御部183−1乃至通信制御部183−Nのそれぞれから、コネクションが確立された旨の信号が供給される。割り当て部182は、通信制御部183−1乃至通信制御部183−Nのそれぞれから、コネクションが確立された旨の信号が供給されると、サーバ52にそれぞれ割り当てられた、コンテンツデータのパートを特定する情報が含まれている割り当て情報を生成し、生成した割り当て情報を、通信制御部183−1乃至通信制御部183−Nのそれぞれに供給する。   Furthermore, when the connection between the client 51 and each of the servers 52-1 to 52-N is established, the assignment unit 182 receives a connection from each of the communication control units 183-1 to 183-N. A signal indicating that has been established is supplied. The allocation unit 182 specifies the part of the content data allocated to the server 52 when a signal indicating that the connection is established is supplied from each of the communication control units 183-1 to 183-N. The allocation information including the information to be generated is generated, and the generated allocation information is supplied to each of the communication control units 183-1 to 183-N.

すなわち、割り当て部182から、通信制御部183−1乃至通信制御部183−Nのそれぞれには、通信制御部183−1乃至通信制御部183−Nのそれぞれが通信するサーバ52−1乃至サーバ52−Nのそれぞれに割り当てられた、コンテンツデータのパートを特定する情報が含まれている割り当て情報が供給される。なお、以下、通信制御部183−1乃至通信制御部183−Nのそれぞれを個々に区別する必要のない場合、単に、通信制御部183と称する。   In other words, from the assignment unit 182 to each of the communication control unit 183-1 to the communication control unit 183-N, the server 52-1 to the server 52 with which each of the communication control unit 183-1 to the communication control unit 183-N communicates. Allocation information including information identifying the part of the content data allocated to each of -N is supplied. Hereinafter, when it is not necessary to individually distinguish each of the communication control units 183-1 to 183-N, they are simply referred to as a communication control unit 183.

割り当て部182は、通信制御部183−1乃至通信制御部183−Nのそれぞれから供給された受信情報を基に、受信履歴を更新する。ここで、受信情報とは、通信制御部183がサーバ52から受信したパートを特定する情報、パートのダウンロード速度などが含まれている情報であり、通信制御部183から割り当て部182には、通信制御部183がパートのダウンロード(受信)が完了するたびに、そのパートのダウンロード速度が含まれている受信情報が供給される。また、受信履歴の詳細は後述するが、受信履歴には、各サーバ52のセグメント(パート)ごとの受信情報が含まれている。   The allocation unit 182 updates the reception history based on the reception information supplied from each of the communication control units 183-1 to 183-N. Here, the reception information is information including information for identifying a part received by the communication control unit 183 from the server 52, a download speed of the part, and the like. Each time the control unit 183 completes downloading (reception) of a part, reception information including the download speed of the part is supplied. Although details of the reception history will be described later, the reception history includes reception information for each segment (part) of each server 52.

通信制御部183−1は、サーバ52−1とのデータの送受信を制御する。送信制御部183−1は、送信部203−1および受信部204−1を備えている。   The communication control unit 183-1 controls transmission / reception of data with the server 52-1. The transmission control unit 183-1 includes a transmission unit 203-1 and a reception unit 204-1.

通信制御部183−1は、割り当て部182から供給された初期設定情報を一時的に記憶するとともに、サーバ52−1とのコネクションを確立させるために、通信要求信号を生成する。通信制御部183−1の送信部203−1は、通信制御部183−1が生成した通信要求信号を、通信網53を介してサーバ52−1あてに送信する。   The communication control unit 183-1 temporarily stores the initial setting information supplied from the assigning unit 182, and generates a communication request signal in order to establish a connection with the server 52-1. The transmission unit 203-1 of the communication control unit 183-1 transmits the communication request signal generated by the communication control unit 183-1 to the server 52-1 via the communication network 53.

通信制御部183−1の受信部204−1は、サーバ52−1から送信されてきた応答信号を受信する。通信制御部183−1は、応答信号を受信すると、コネクションが確立された旨の信号を生成し、生成したコネクションが確立された旨の信号を、割り当て部182に供給する。   The receiving unit 204-1 of the communication control unit 183-1 receives the response signal transmitted from the server 52-1. When the communication control unit 183-1 receives the response signal, the communication control unit 183-1 generates a signal indicating that the connection has been established, and supplies the signal indicating that the generated connection has been established to the allocation unit 182.

通信制御部183−1は、割り当て部182から割り当て情報が供給されると、割り当て情報が含まれる送信要求信号を生成する。通信制御部183−1の送信部203−1は、通信制御部183−1が生成した送信要求信号を、通信網53を介してサーバ52−1あてに送信する。   When the allocation information is supplied from the allocation unit 182, the communication control unit 183-1 generates a transmission request signal including the allocation information. The transmission unit 203-1 of the communication control unit 183-1 transmits the transmission request signal generated by the communication control unit 183-1 to the server 52-1 via the communication network 53.

通信制御部183−1の受信部204−1は、サーバ52−1から送信されてきたコンテンツデータを受信する。より詳細には、通信制御部183−1の受信部204−1は、サーバ52−1から送信されてきた、コンテンツデータ(のパート)が格納されているパケットを受信する。通信制御部183−1は、受信したコンテンツデータが格納されているパケットを、再構成部184に供給する。   The receiving unit 204-1 of the communication control unit 183-1 receives the content data transmitted from the server 52-1. More specifically, the receiving unit 204-1 of the communication control unit 183-1 receives a packet storing content data (part thereof) transmitted from the server 52-1. The communication control unit 183-1 supplies the packet storing the received content data to the reconfiguration unit 184.

また、サーバ52−1が、要求されたコンテンツデータ(のパート)を送信すると、サーバ52−1からパートの送信が終了した旨の終了通知信号が送信されてくるので、通信制御部183−1の受信部204−1は、サーバ52−1から送信されてきた終了通知信号を受信する。通信制御部183−1は、終了通知信号を受信すると、受信したパートのダウンロード速度などが含まれている受信情報を生成し、生成した受信情報を割り当て部182に供給する。   Further, when the server 52-1 transmits the requested content data (part thereof), an end notification signal indicating that the transmission of the part has ended is transmitted from the server 52-1, so that the communication control unit 183-1 is transmitted. The receiving unit 204-1 receives the end notification signal transmitted from the server 52-1. When receiving the end notification signal, the communication control unit 183-1 generates reception information including the download speed of the received part and supplies the generated reception information to the allocation unit 182.

通信制御部183−2乃至通信制御部183−Nのそれぞれは、サーバ52−2乃至サーバ52−Nのそれぞれとのデータの送受信を制御する。通信制御部183−2乃至通信制御部183−Nは、それぞれ送信部203−2乃至送信部203−N、および受信部204−2乃至受信部204−Nを備えている。   Each of the communication control units 183-2 to 183-N controls data transmission / reception with each of the servers 52-2 to 52-N. The communication control units 183-2 through 183-N include transmission units 203-2 through 203-N and reception units 204-2 through 204-N, respectively.

通信制御部183−2乃至通信制御部183−Nのそれぞれは、割り当て部182から供給された初期設定情報を一時的に記憶するとともに、それぞれ、サーバ52−2乃至サーバ52−Nとのコネクションを確立させるために、通信要求信号を生成する。通信制御部183−2の送信部203−2乃至通信制御部183−Nの送信部203−Nは、通信制御部183−2乃至通信制御部183−Nのそれぞれが生成した通信要求信号を、通信網53を介してサーバ52−2乃至サーバ52−Nあてにそれぞれ送信する。   Each of the communication control units 183-2 to 183 -N temporarily stores the initial setting information supplied from the allocation unit 182, and establishes connections with the servers 52-2 to 52 -N, respectively. In order to establish, a communication request signal is generated. The transmission unit 203-2 to the communication control unit 183-N of the communication control unit 183-2 transmits the communication request signal generated by each of the communication control unit 183-2 to the communication control unit 183-N. The data is transmitted to the servers 52-2 to 52-N via the communication network 53.

通信制御部183−2の受信部204−2乃至通信制御部183−Nの受信部204−Nのそれぞれは、サーバ52−2乃至サーバ52−Nのそれぞれから送信されてきた応答信号を受信する。通信制御部183−2乃至通信制御部183−Nのそれぞれは、応答信号を受信すると、コネクションが確立された旨の信号を生成し、生成したコネクションが確立された旨の信号を、割り当て部182に供給する。   Each of the receiving unit 204-2 through the communication control unit 183-2 through the receiving unit 204-N through the communication control unit 183-N receives a response signal transmitted from each of the server 52-2 through the server 52-N. . Upon receiving the response signal, each of the communication control units 183-2 to 183 -N generates a signal indicating that the connection has been established, and assigns the generated signal indicating that the connection has been established to the allocating unit 182. To supply.

通信制御部183−2乃至通信制御部183−Nのそれぞれは、割り当て部182から割り当て情報が供給されると、割り当て情報が含まれる送信要求信号を生成する。通信制御部183−2の送信部203−2乃至通信制御部183−Nの送信部203−Nのそれぞれは、通信制御部183−2乃至通信制御部183−Nのそれぞれが生成した送信要求信号を、通信網53を介してサーバ52−2乃至サーバ52−Nあてに送信する。   When the allocation information is supplied from the allocation unit 182, each of the communication control units 183-2 to 183 -N generates a transmission request signal including the allocation information. The transmission unit 203-2 of the communication control unit 183-2 to the transmission unit 203-N of the communication control unit 183-N are respectively transmission request signals generated by the communication control unit 183-2 to the communication control unit 183-N. Is transmitted to the servers 52-2 to 52-N via the communication network 53.

通信制御部183−2の受信部204−2乃至通信制御部183−Nの受信部204−Nは、サーバ52−2乃至サーバ52−Nから送信されてきたコンテンツデータを受信する。より詳細には、通信制御部183−2の受信部204−2乃至通信制御部183−Nの受信部204−Nは、サーバ52−2乃至サーバ52−Nから送信されてきた、コンテンツデータ(のパート)が格納されているパケットをそれぞれ受信する。通信制御部183−2乃至通信制御部183−Nは、受信したコンテンツデータが格納されているパケットを、再構成部184に供給する。   The receiving unit 204-2 of the communication control unit 183-2 to the receiving unit 204-N of the communication control unit 183-N receives the content data transmitted from the server 52-2 to the server 52-N. More specifically, the reception unit 204-2 of the communication control unit 183-2 to the reception unit 204-N of the communication control unit 183-N transmit content data (from the server 52-2 to the server 52-N) ( Each of the packets storing the part) is received. The communication control units 183-2 to 183 -N supply the packet storing the received content data to the reconfiguration unit 184.

また、サーバ52−2乃至サーバ52−Nのそれぞれが、要求されたコンテンツデータ(のパート)を送信すると、サーバ52−2乃至サーバ52−Nのそれぞれからパートの送信が終了した旨の終了通知信号が送信されてくるので、通信制御部183−2の受信部204−2乃至通信制御部183−Nの受信部204−Nは、サーバ52−2乃至サーバ52−Nから送信されてきた終了通知信号を受信する。通信制御部183−2乃至通信制御部183−Nは、終了通知信号を受信すると、受信したパートのダウンロード速度などが含まれている受信情報を生成し、生成した受信情報を割り当て部182に供給する。   Further, when each of the servers 52-2 to 52-N transmits the requested content data (part thereof), an end notification that the transmission of the parts from each of the servers 52-2 to 52-N has ended. Since the signal is transmitted, the reception unit 204-2 of the communication control unit 183-2 to the reception unit 204-N of the communication control unit 183-N terminates transmitted from the server 52-2 to the server 52-N. Receive a notification signal. Upon receiving the end notification signal, the communication control units 183-2 to 183 -N generate reception information including the download speed of the received part and supply the generated reception information to the allocation unit 182. To do.

以下、送信部203−1乃至送信部203−Nのそれぞれを、個々に区別する必要のない場合、単に送信部203と称する。また、以下、受信部204−1乃至受信部204−Nのそれぞれを、個々に区別する必要のない場合、単に受信部204と称する。   Hereinafter, when it is not necessary to distinguish each of the transmission unit 203-1 to the transmission unit 203-N, they are simply referred to as the transmission unit 203. Hereinafter, each of the receiving units 204-1 to 204-N is simply referred to as the receiving unit 204 when it is not necessary to individually distinguish them.

再構成部184は、通信制御部183から供給されたコンテンツデータのパート(パケット)を、必要に応じて一時的に記憶し、記憶しているパートを連続したコンテンツデータのストリームに再構成する。再構成部184は、出力制御部205および記憶部206を備えている。   The reconfiguration unit 184 temporarily stores the content data parts (packets) supplied from the communication control unit 183 as necessary, and reconfigures the stored parts into a continuous content data stream. The reconstruction unit 184 includes an output control unit 205 and a storage unit 206.

再構成部184の出力制御部205は、通信制御部183からパケットが供給されると、パケットのヘッダに含まれている、コンテンツデータの再生の順番を示すシーケンス番号を検査する。そして、再構成部184の出力制御部205は、パケットに含まれているシーケンス番号が、再構成部184の出力制御部205が記憶している、出力すべきシーケンス番号と同じ番号である場合、通信制御部183からから供給されたパケットを管理部181に供給する。   When the packet is supplied from the communication control unit 183, the output control unit 205 of the reconstruction unit 184 checks a sequence number indicating the order of reproduction of content data included in the header of the packet. Then, the output control unit 205 of the reconstruction unit 184 has a sequence number included in the packet that is the same as the sequence number to be output stored in the output control unit 205 of the reconstruction unit 184. The packet supplied from the communication control unit 183 is supplied to the management unit 181.

例えば、パケットのヘッダに含まれているシーケンス番号は、パケットに格納されているパートの始点位置を表す値となっている。すなわち、例えば、コンテンツデータの位置を、コンテンツデータの先頭の位置を“0”として、データが1KB増えるごとにインクリメントした値で表し、パートの先頭の位置に対応するコンテンツデータのデータの位置を、パートの始点位置とする。例えば、パケットに格納されているパートの開始位置が“0”である場合、パケットのシーケンス番号は、“0”となる。   For example, the sequence number included in the header of the packet is a value representing the start point position of the part stored in the packet. That is, for example, the position of the content data is represented by a value that is incremented every time the data increases by 1 KB, with the leading position of the content data being “0”, and the position of the content data corresponding to the leading position of the part is The start point position of the part. For example, when the start position of the part stored in the packet is “0”, the sequence number of the packet is “0”.

したがって、例えば、再構成部184の出力制御部205が記憶している、出力すべきシーケンス番号が“0”であり、通信制御部183から供給されたパケットのシーケンス番号が“0”である場合、再構成部184の出力制御部205は、通信制御部183から供給された、シーケンス番号が“0”であるパケットを、管理部181に供給する。   Therefore, for example, when the sequence number to be output stored in the output control unit 205 of the reconstruction unit 184 is “0” and the sequence number of the packet supplied from the communication control unit 183 is “0”. The output control unit 205 of the reconfiguration unit 184 supplies the packet having the sequence number “0” supplied from the communication control unit 183 to the management unit 181.

また、再構成部184の出力制御部205は、管理部181にパケットを供給すると、出力すべきシーケンス番号を更新する。例えば、再構成部184の出力制御部205が、シーケンス番号が“0”であるパケットを管理部181に供給し、そのパケットに格納されているパートの大きさ(サイズ)が“1100KB”である場合、構成部184の出力制御部205は、出力すべきシーケンス番号を、1100だけ増加させて、“1100“とする。   Further, when the output control unit 205 of the reconstruction unit 184 supplies the packet to the management unit 181, the output control unit 205 updates the sequence number to be output. For example, the output control unit 205 of the reconstruction unit 184 supplies a packet with a sequence number “0” to the management unit 181, and the size (size) of the part stored in the packet is “1100 KB”. In this case, the output control unit 205 of the configuration unit 184 increases the sequence number to be output by 1100 to “1100”.

一方、再構成部184の出力制御部205は、通信制御部183からから供給されたパケットのシーケンス番号が、出力すべきシーケンス番号と同じ番号でない場合、通信制御部183から供給されたパケットを、管理部181に供給せずに、再構成部184の記憶部206に供給する。   On the other hand, if the sequence number of the packet supplied from the communication control unit 183 is not the same as the sequence number to be output, the output control unit 205 of the reconfiguration unit 184 determines that the packet supplied from the communication control unit 183 is The data is supplied to the storage unit 206 of the reconstruction unit 184 without being supplied to the management unit 181.

また、再構成部184の出力制御部205は、記憶部206に記憶されているパケットのうち、パケットのシーケンス番号が、出力すべきシーケンス番号と同じ番号であるパケットを、記憶部206から取得し、管理部181に供給する。   In addition, the output control unit 205 of the reconfiguration unit 184 acquires, from the storage unit 206, a packet whose sequence number is the same as the sequence number to be output among the packets stored in the storage unit 206. To the management unit 181.

再構成部184の記憶部206は、再構成部184の出力制御部205から供給されたパケットを一時的に記憶する。また、再構成部184の記憶部206は、記憶しているパケットを、再構成部184の出力制御部205に供給する。   The storage unit 206 of the reconstruction unit 184 temporarily stores the packet supplied from the output control unit 205 of the reconstruction unit 184. Further, the storage unit 206 of the reconstruction unit 184 supplies the stored packet to the output control unit 205 of the reconstruction unit 184.

サーバ52−1乃至サーバ52−Nのそれぞれは、受信部221−1乃至受信部221−N、取得部222−1乃至取得部222−N、記録部223−1乃至記録部223−N、および送信部224−1乃至送信部224−Nをそれぞれ備えている。   Each of the servers 52-1 to 52-N includes a receiving unit 221-1 to a receiving unit 221-N, an acquiring unit 222-1 to an acquiring unit 222-N, a recording unit 223-1 to a recording unit 223-N, and Transmitters 224-1 to 224-N are provided.

受信部221−1乃至受信部221−Nのそれぞれは、クライアント51から送信されてきた通信要求信号または送信要求信号をそれぞれ受信し、受信した通信要求信号または送信要求信号を、取得部222−1乃至取得部222−Nのそれぞれに供給する。   Each of the reception units 221-1 to 221 -N receives the communication request signal or the transmission request signal transmitted from the client 51, and acquires the received communication request signal or the transmission request signal. Thru | or each acquisition part 222-N.

取得部222−1乃至取得部222−Nのそれぞれは、受信部221−1乃至受信部221−Nのそれぞれから、通信要求信号が供給されると、通信要求信号を受信した旨の応答信号を生成し、生成した応答信号を送信部224−1乃至送信部224−Nのそれぞれに供給する。   Each of the acquisition units 222-1 to 222 -N receives a response signal indicating that the communication request signal has been received when the communication request signal is supplied from each of the reception units 221-1 to 221 -N. The generated response signal is supplied to each of the transmission units 224-1 to 224-N.

また、取得部222−1乃至取得部222−Nのそれぞれは、受信部221−1乃至受信部221−Nのそれぞれから、送信要求信号が供給されると、記録部223−1乃至記録部223−Nのそれぞれが記録しているコンテンツデータから、送信が要求されたコンテンツデータのパートを取得し、取得したパート(コンテンツデータ)を、例えば、TCP方式のパケットに格納する。なお、このとき、取得部222−1乃至取得部222−Nのそれぞれは、送信要求信号を基に、パートが格納されるパケットにシーケンス番号を付与し、そのシーケンス番号をパケットのヘッダに格納する。取得部222−1乃至取得部222−Nのそれぞれは、コンテンツデータのパートを格納したパケットを、送信部224−1乃至送信部224−Nのそれぞれに供給する。   Further, each of the acquisition units 222-1 to 222 -N receives the transmission request signal from each of the reception units 221-1 to 221 -N, the recording unit 223-1 to the recording unit 223. The part of the content data requested to be transmitted is acquired from the content data recorded in each of -N, and the acquired part (content data) is stored in, for example, a TCP packet. At this time, each of the acquisition units 222-1 to 222 -N assigns a sequence number to the packet storing the part based on the transmission request signal, and stores the sequence number in the packet header. . Each of the acquisition units 222-1 to 222 -N supplies a packet storing the content data part to each of the transmission units 224-1 to 224 -N.

記録部223−1乃至記録部223−Nのそれぞれは、コンテンツデータを記録している。記録部223−1乃至記録部223−Nのそれぞれは、記録しているコンテンツデータ(の一部(パート))を取得部222−1乃至取得部222−Nのそれぞれに供給する。   Each of the recording units 223-1 to 223-N records content data. Each of the recording units 223-1 to 223-N supplies the recorded content data (a part (part) thereof) to each of the acquisition units 222-1 to 222-N.

送信部224−1乃至送信部224−Nのそれぞれは、取得部222−1乃至取得部222−Nのそれぞれから供給された、コンテンツデータが格納されているパケット、または応答信号を、通信網53を介してクライアント51あてに送信する。   Each of the transmission unit 224-1 to transmission unit 224-N transmits the packet or the response signal stored in the content data supplied from each of the acquisition unit 222-1 to acquisition unit 222-N to the communication network 53. To the client 51 via

なお、以下、受信部221−1乃至受信部221−Nのそれぞれを、個々に区別する必要のない場合、単に受信部221と称する。また、以下、取得部222−1乃至取得部222−Nのそれぞれを、個々に区別する必要のない場合、単に取得部222と称する。   Hereinafter, each of the reception units 221-1 to 221 -N is simply referred to as a reception unit 221 when it is not necessary to individually distinguish them. Hereinafter, the acquisition units 222-1 to 222 -N will be simply referred to as the acquisition unit 222 when it is not necessary to individually distinguish them.

さらに、以下、記録部223−1乃至記録部223−Nのそれぞれを、個々に区別する必要のない場合、単に記録部223と称する。さらに、また、以下、送信部224−1乃至送信部224−Nのそれぞれを、個々に区別する必要のない場合、単に送信部224と称する。   Further, hereinafter, each of the recording units 223-1 to 223-N is simply referred to as a recording unit 223 when it is not necessary to individually distinguish them. Furthermore, hereinafter, each of the transmission units 224-1 to 224-N is simply referred to as a transmission unit 224 when it is not necessary to distinguish them individually.

図8は、図7の割り当て部182の機能の構成を示すブロック図である。   FIG. 8 is a block diagram illustrating a functional configuration of the assignment unit 182 of FIG.

割り当て部182は、設定部251、ノード情報記憶部252、算出部253、再割り当て制御部254、および受信履歴記憶部255を含むように構成される。   The allocation unit 182 is configured to include a setting unit 251, a node information storage unit 252, a calculation unit 253, a reallocation control unit 254, and a reception history storage unit 255.

設定部251は、管理部181から供給されたノード情報を、ノード情報記憶部252に供給して、記憶させる。また、設定部251は、管理部181から追加ノード情報が供給されると、供給された追加ノード情報をノード情報記憶部252に供給して、ノード情報記憶部252に、追加ノード情報を基にノード情報を更新させる。   The setting unit 251 supplies the node information supplied from the management unit 181 to the node information storage unit 252 for storage. Further, when the additional node information is supplied from the management unit 181, the setting unit 251 supplies the supplied additional node information to the node information storage unit 252, and causes the node information storage unit 252 to store the additional node information based on the additional node information. Update node information.

さらに、設定部251は、管理部181から供給された初期設定情報を、算出部253および通信制御部183に供給する。設定部251は、通信制御部183からコネクションが確立された旨の信号が供給されると、コンテンツデータのダウンロードの開始を指示する信号を生成し、算出部253に供給する。   Further, the setting unit 251 supplies the initial setting information supplied from the management unit 181 to the calculation unit 253 and the communication control unit 183. When the signal indicating that the connection has been established is supplied from the communication control unit 183, the setting unit 251 generates a signal instructing the start of downloading content data and supplies the signal to the calculation unit 253.

ノード情報記憶部252は、設定部251の制御のもと、設定部251から供給されたノード情報を記憶する。なお、ノード情報には、上述したように、送信ノードとしてのサーバ52の数、サーバ52の送信能力、サーバ52のIPアドレスなどが含まれている。また、ノード情報記憶部252は、設定部251の制御のもと、設定部251から供給された追加ノード情報を基に、記憶しているノード情報を更新する。   The node information storage unit 252 stores the node information supplied from the setting unit 251 under the control of the setting unit 251. As described above, the node information includes the number of servers 52 as transmission nodes, the transmission capability of the servers 52, the IP address of the server 52, and the like. Further, the node information storage unit 252 updates the stored node information based on the additional node information supplied from the setting unit 251 under the control of the setting unit 251.

算出部253は、設定部251から供給された、初期設定情報を一時的に記憶する。また、算出部253は、設定部251から、コンテンツデータのダウンロードの開始を指示する信号が供給されると、初期設定情報、およびノード情報記憶部252が記憶しているノード情報を参照して、ダウンロードが指示されたコンテンツデータを、初期設定情報に従い複数のセグメントに分割し、さらに、それぞれのセグメントを、ノード情報に含まれている送信ノードとしてのサーバ52の数のパートに分割する。より詳細には、算出部253は、ダウンロードが指示されたコンテンツデータを、初期設定情報に従い複数のセグメントに分割する分割位置を指定し、さらに、それぞれのセグメントを、送信ノードとしてのサーバ52の数のパートに分割する分割位置を指定する。   The calculation unit 253 temporarily stores the initial setting information supplied from the setting unit 251. In addition, when the setting unit 251 receives a signal instructing the start of downloading content data, the calculation unit 253 refers to the initial setting information and the node information stored in the node information storage unit 252. The content data instructed to be downloaded is divided into a plurality of segments in accordance with the initial setting information, and each segment is further divided into the number of parts of the server 52 as a transmission node included in the node information. More specifically, the calculation unit 253 designates a division position at which the content data instructed to be downloaded is divided into a plurality of segments according to the initial setting information, and further, the number of servers 52 as transmission nodes is determined for each segment. Specify the division position to divide into parts.

そして、算出部253は、再生を開始する部分のデータ(コンテンツデータ)が含まれている、1番目のセグメント(例えば、図5の例におけるセグメント71−1)のパートの送信を、それぞれ異なるサーバ52に割り当てて、割り当てたパートを特定するための割り当て情報を生成する。そして、算出部253は、生成した割り当て情報を、通信制御部183に供給する。   Then, the calculation unit 253 transmits the part of the first segment (for example, the segment 71-1 in the example of FIG. 5) including the data (content data) of the part to start reproduction to different servers. 52, the allocation information for specifying the allocated part is generated. Then, the calculation unit 253 supplies the generated allocation information to the communication control unit 183.

以下、再生を開始する部分のデータ(コンテンツデータ)が含まれているセグメントを、1番目のセグメントと称し、1番目のセグメントからダウンロードする順番に(再生される順番に)、n番目(nは整数)のセグメントと称する。   Hereinafter, the segment including the data (content data) of the portion where playback is started is referred to as the first segment, in the order of downloading from the first segment (in the order of playback), nth (where n is (Integer) segment.

また、算出部253は、再割り当て制御部254から、2番目以降のセグメント(例えば、図5の例におけるセグメント71−2乃至セグメント71−6)のパートをダウンロードするための、再割り当てを指示する信号が供給されると、初期設定情報、ノード情報記憶部252が記憶しているノード情報、および受信履歴記憶部255が記憶している受信履歴を参照して、まだダウンロードが完了していないセグメントを、ノード情報に含まれている、送信ノードとしてのサーバ52の数のパートに分割し直す(分割位置を指定し直す)。そして、算出部253は、次にダウンロードするセグメントのパートの送信を、それぞれ異なるサーバ52に割り当てて、割り当てたパートを特定するための割り当て情報を生成する。そして、算出部253は、生成した割り当て情報を、通信制御部183に供給する。   Further, the calculation unit 253 instructs reassignment for downloading the parts of the second and subsequent segments (for example, the segment 71-2 to the segment 71-6 in the example of FIG. 5) from the reassignment control unit 254. When a signal is supplied, a segment that has not yet been downloaded with reference to the initial setting information, the node information stored in the node information storage unit 252 and the reception history stored in the reception history storage unit 255 Is re-divided into the number of parts of the server 52 as the transmission node included in the node information (re-designation of the division position). Then, the calculation unit 253 allocates the transmission of the part of the segment to be downloaded next to each different server 52, and generates allocation information for specifying the allocated part. Then, the calculation unit 253 supplies the generated allocation information to the communication control unit 183.

なお、以下、2番目以降のセグメントを、複数のパートに分割し直して、それぞれのパートの送信をサーバ52に割り当てる処理を、再割り当てを行うとも称する。   Hereinafter, the process of re-dividing the second and subsequent segments into a plurality of parts and allocating the transmission of each part to the server 52 is also referred to as reassignment.

再割り当て制御部254は、通信制御部183から供給された受信情報を、受信履歴記憶部255に供給して、供給した受信情報を基に、受信履歴記憶部255に、受信履歴記憶部255が記憶している受信履歴を更新させる。   The reallocation control unit 254 supplies the reception information supplied from the communication control unit 183 to the reception history storage unit 255, and the reception history storage unit 255 stores the reception history storage unit 255 based on the supplied reception information. Update the received reception history.

再割り当て制御部254は、受信履歴記憶部255に受信履歴を更新させてから、再割り当てを指示する信号を生成し、生成した再割り当てを指示する信号を、算出部253に供給する。また、再割り当て制御部254は、コンテンツデータのダウンロードが完了(終了)すると、コンテンツデータのダウンロードが完了した旨の信号を生成し、生成したダウンロードが完了した旨の信号を設定部251に供給する。   The reassignment control unit 254 updates the reception history storage unit 255 to update the reception history, generates a signal instructing reassignment, and supplies the generated signal instructing reassignment to the calculation unit 253. In addition, when the download of the content data is completed (terminated), the reallocation control unit 254 generates a signal indicating that the download of the content data is completed, and supplies the signal indicating that the generated download is complete to the setting unit 251. .

受信履歴記憶部255は、受信履歴を記憶している。なお、上述したように、受信履歴には、各サーバ52のセグメント(パート)ごとの受信情報が含まれている。受信履歴記憶部255は、再割り当て制御部254の制御のもと、再割り当て制御部254から供給された受信情報を基に、記憶している受信履歴を更新する。   The reception history storage unit 255 stores a reception history. As described above, the reception history includes reception information for each segment (part) of each server 52. The reception history storage unit 255 updates the stored reception history based on the reception information supplied from the reallocation control unit 254 under the control of the reallocation control unit 254.

次に、図9のフローチャートを参照して、コンテンツデータを2つのセグメントに分割する場合における、後述するクライアント51によるコンテンツデータの受信の処理、およびサーバ52が、クライアント51から要求されたコンテンツデータを送信する処理の概要を説明する。なお、図9のフローチャートの説明においては、クライアント51が、1つのサーバ52からコンテンツデータのパートをダウンロードする処理を説明するが、実際には、クライアント51は、これに並行して、複数のサーバ52からコンテンツデータのパートをダウンロードする処理を実行する。   Next, referring to the flowchart of FIG. 9, when content data is divided into two segments, the content data received by the client 51 to be described later, and the server 52 receives the content data requested from the client 51. An outline of the transmission process will be described. In the description of the flowchart of FIG. 9, the client 51 explains the process of downloading the content data part from one server 52. In practice, however, the client 51 includes a plurality of servers. The process of downloading the part of the content data from 52 is executed.

管理部181から割り当て部182に初期設定情報が供給されると、ステップS11において、割り当て部182は、供給された初期設定情報を記憶するとともに、初期設定情報を通信制御部183に供給する。割り当て部182から通信制御部183に初期設定情報が供給されると、ステップS12において、通信制御部183は、サーバ52とのコネクションを確立させるために、通信要求信号を生成し、通信網53を介して、サーバ52あてに送信する。   When the initial setting information is supplied from the management unit 181 to the assignment unit 182, the assignment unit 182 stores the supplied initial setting information and supplies the initial setting information to the communication control unit 183 in step S <b> 11. When the initial setting information is supplied from the assigning unit 182 to the communication control unit 183, the communication control unit 183 generates a communication request signal and establishes the communication network 53 in order to establish a connection with the server 52 in step S12. To the server 52.

ステップS41において、サーバ52は、クライアント51から送信されてきた通信要求信号を受信し、通信要求信号を受信した旨の応答信号を生成する。ステップS42において、サーバ52は、生成した応答信号を、通信網53を介してクライアント51あてに送信する。   In step S41, the server 52 receives the communication request signal transmitted from the client 51, and generates a response signal indicating that the communication request signal has been received. In step S <b> 42, the server 52 transmits the generated response signal to the client 51 via the communication network 53.

ステップS13において、通信制御部183は、サーバ52から送信されてきた応答信号を受信する。これにより、クライアント51とサーバ52とのコネクションが確立されたので、ステップS14において、通信制御部183は、コネクションが確立された旨の信号を生成し、割り当て部182に供給する。   In step S <b> 13, the communication control unit 183 receives the response signal transmitted from the server 52. Thereby, since the connection between the client 51 and the server 52 is established, in step S14, the communication control unit 183 generates a signal indicating that the connection is established and supplies the signal to the assignment unit 182.

通信制御部183から割り当て部182に、コネクションが確立された旨の信号が供給されると、ステップS15において、割り当て部182は、割り当て情報を生成し、生成した割り当て情報を通信制御部183に供給する。ステップS16において、通信制御部183は、割り当て部182から供給された割り当て情報を含む送信要求信号を生成し、生成した送信要求信号を、通信網53を介して、サーバ52あてに送信する。   When a signal indicating that a connection has been established is supplied from the communication control unit 183 to the allocation unit 182, the allocation unit 182 generates allocation information and supplies the generated allocation information to the communication control unit 183 in step S <b> 15. To do. In step S <b> 16, the communication control unit 183 generates a transmission request signal including the allocation information supplied from the allocation unit 182, and transmits the generated transmission request signal to the server 52 via the communication network 53.

ステップS43において、サーバ52は、クライアント51から送信されてきた送信要求信号を受信する。ステップS44において、サーバ52は、クライアント51から送信が要求されたコンテンツデータのパートを、通信網53を介して、クライアント51あてに送信する。   In step S <b> 43, the server 52 receives the transmission request signal transmitted from the client 51. In step S <b> 44, the server 52 transmits the part of the content data requested to be transmitted from the client 51 to the client 51 via the communication network 53.

ステップS17において、通信制御部183は、サーバ52から送信されてきたパートを受信して、再構成部184に供給する。再構成部184は、通信制御部183から供給されたパートを、必要に応じて一時的に記憶し、管理部181を介してアプリケーションプログラムに供給する。   In step S <b> 17, the communication control unit 183 receives the part transmitted from the server 52 and supplies it to the reconfiguration unit 184. The reconfiguration unit 184 temporarily stores the part supplied from the communication control unit 183 as necessary, and supplies the part to the application program via the management unit 181.

また、パートの送信が終了すると、ステップS45において、サーバ52は、パートの送信が終了した旨の終了通知信号を、通信網53を介してクライアント51あてに送信する。そして、ステップS18において、通信制御部183は、サーバ52から送信されてきた終了通知信号を受信する。ステップS19において、通信制御部183は、受信情報を生成して、割り当て部182に供給する。   When the transmission of the part is completed, the server 52 transmits an end notification signal indicating that the transmission of the part is completed to the client 51 via the communication network 53 in step S45. In step S <b> 18, the communication control unit 183 receives the end notification signal transmitted from the server 52. In step S <b> 19, the communication control unit 183 generates reception information and supplies it to the allocation unit 182.

ステップS20において、割り当て部182は、通信制御部183から供給された、受信情報を基に、受信履歴を更新する。そして、割り当て部182は、2番目のセグメントのパートをダウンロードするために、再割り当てを行い、割り当て情報を生成して通信制御部183に供給する。なお、ステップS21乃至ステップS24の処理、およびステップS46乃至ステップS48の処理のそれぞれは、ステップS16乃至ステップS19の処理、およびステップS43乃至ステップS45の処理のそれぞれと同様であるので、その説明は省略する。   In step S <b> 20, the assigning unit 182 updates the reception history based on the reception information supplied from the communication control unit 183. Then, the assignment unit 182 performs reassignment in order to download the part of the second segment, generates assignment information, and supplies it to the communication control unit 183. Note that the processing from step S21 to step S24 and the processing from step S46 to step S48 are the same as the processing from step S16 to step S19 and the processing from step S43 to step S45, respectively, and therefore description thereof is omitted. To do.

このようにして、クライアント51は、コンテンツデータを複数のセグメントに分割し、さらに、各セグメントを複数のパートに分割してサーバ52からダウンロードする。また、サーバ52は、記録しているコンテンツデータのうちの、クライアント51から要求された部分(パート)を、クライアント51あてに送信する。   In this way, the client 51 divides the content data into a plurality of segments, and further divides each segment into a plurality of parts and downloads it from the server 52. Further, the server 52 transmits a part (part) requested from the client 51 of the recorded content data to the client 51.

管理部181から、割り当て部182の設定部251に、初期設定情報およびノード情報が供給されると、クライアント51は、ノード情報を更新する処理(後述するノード情報の更新の処理)と並行して、コンテンツデータの受信の処理を実行する。   When the initial setting information and the node information are supplied from the management unit 181 to the setting unit 251 of the allocating unit 182, the client 51 performs a process of updating the node information (a process of updating the node information described later). The process of receiving content data is executed.

まず、図10のフローチャートを参照して、図9で説明した、クライアント51による、コンテンツデータの受信の処理の詳細を説明する。   First, with reference to the flowchart of FIG. 10, the details of the content data reception processing by the client 51 described in FIG. 9 will be described.

ステップS61において、設定部251は、管理部181から供給された初期設定情報を、算出部253および通信制御部183に供給する。算出部253は、設定部251から供給された初期設定情報を記憶する。   In step S <b> 61, the setting unit 251 supplies the initial setting information supplied from the management unit 181 to the calculation unit 253 and the communication control unit 183. The calculation unit 253 stores the initial setting information supplied from the setting unit 251.

ステップS62において、通信制御部183は、サーバ52とのコネクションを確立させる。すなわち、通信制御部183は、設定部251から供給された初期設定情報を記憶し、さらに、通信要求信号を生成する。通信制御部183の送信部203は、通信制御部183が生成した通信要求信号を、通信網53を介して、サーバ52あてに送信する。そして、これに応じてサーバ52から応答信号が送信されてくると、通信制御部183の受信部204は、サーバ52から送信されてきた応答信号を受信する。応答信号を受信すると、通信制御部183は、コネクションが確立された旨の信号を生成し、割り当て部182に供給する。   In step S <b> 62, the communication control unit 183 establishes a connection with the server 52. That is, the communication control unit 183 stores the initial setting information supplied from the setting unit 251 and further generates a communication request signal. The transmission unit 203 of the communication control unit 183 transmits the communication request signal generated by the communication control unit 183 to the server 52 via the communication network 53. Then, when a response signal is transmitted from the server 52 according to this, the receiving unit 204 of the communication control unit 183 receives the response signal transmitted from the server 52. When receiving the response signal, the communication control unit 183 generates a signal indicating that the connection has been established, and supplies the signal to the allocation unit 182.

通信制御部183から、コネクションが確立された旨の信号が供給されると、ステップS63において、設定部251は、ダウンロードの開始を指示する信号を生成し、生成したダウンロードの開始を指示する信号を、算出部253に供給する。   When a signal indicating that a connection has been established is supplied from the communication control unit 183, in step S63, the setting unit 251 generates a signal instructing the start of download, and generates a signal instructing the start of the generated download. , And supplied to the calculation unit 253.

設定部251から算出部253に、ダウンロードの開始を指示する信号が供給されると、ダウンロードの開始が指示されたので、ステップS64において、算出部253は、記憶している初期設定情報、およびノード情報記憶部252が記憶しているノード情報を参照して、割り当て情報を生成し、生成した割り当て情報を、通信制御部183に供給する。   When a signal instructing the start of download is supplied from the setting unit 251 to the calculation unit 253, the start of download is instructed. In step S64, the calculation unit 253 stores the stored initial setting information and the node The node information stored in the information storage unit 252 is referred to generate allocation information, and the generated allocation information is supplied to the communication control unit 183.

例えば、初期設定情報に、1つのセグメントの大きさが“2300KB”であり、コンテンツデータを分割するセグメントの数が“6”である情報が含まれており、ノード情報に含まれている、送信ノードとしてのサーバ52の数が“2”である場合、算出部253は、1つのセグメントの大きさを2300KBとして、図5に示すように、ダウンロードが指示されたコンテンツデータを6つのセグメント71−1乃至セグメント71−6に分割する(セグメント71−1乃至セグメント71−6に分割されるように分割位置を指定する)。   For example, the initial setting information includes information in which the size of one segment is “2300 KB” and the number of segments into which content data is divided is “6”, and is included in the node information. When the number of servers 52 as nodes is “2”, the calculation unit 253 sets the size of one segment to 2300 KB, and, as shown in FIG. 1 to segment 71-6 (the division position is designated so as to be divided into segment 71-1 to segment 71-6).

次に、算出部253は、セグメント71を、送信ノードとしてのサーバ52の数に分割する(分割位置を指定する)。すなわち、算出部253は、セグメント71が2つのパート111およびパート112に分割されるように分割位置を指定する。なお、このとき、算出部253は、パート111およびパート112の大きさがそれぞれ等しくなるようにセグメント71を分割する。したがって、この場合、算出部253は、パート111およびパート112の大きさが、それぞれ1150KB(2300/2)となるようにセグメント71を分割する。   Next, the calculation unit 253 divides the segment 71 into the number of servers 52 as transmission nodes (designates a division position). That is, the calculation unit 253 designates the division position so that the segment 71 is divided into two parts 111 and 112. At this time, the calculation unit 253 divides the segment 71 so that the sizes of the part 111 and the part 112 are equal. Therefore, in this case, the calculation unit 253 divides the segment 71 so that the sizes of the part 111 and the part 112 are 1150 KB (2300/2), respectively.

セグメント71を分割すると、算出部253は、パート111の送信を、例えば、サーバ52−1に割り当て、パート112の送信を、サーバ52−1とは異なるサーバ52−2に割り当てる。そして、算出部253は、パート111−1を特定するための割り当て情報、およびパート112−1を特定するための割り当て情報を、それぞれ生成する。算出部253は、生成したパート111−1を特定するための割り当て情報を、通信制御部183−1に供給し、パート112−1を特定するための割り当て情報を、通信制御部183−2に供給する。   When the segment 71 is divided, the calculation unit 253 assigns the transmission of the part 111 to, for example, the server 52-1, and assigns the transmission of the part 112 to the server 52-2 different from the server 52-1. Then, the calculation unit 253 generates allocation information for specifying the part 111-1 and allocation information for specifying the part 112-1. The calculation unit 253 supplies the generated allocation information for specifying the part 111-1 to the communication control unit 183-1 and supplies the allocation information for specifying the part 112-1 to the communication control unit 183-2. Supply.

割り当て情報には、例えば、図11に示すように、ダウンロードするコンテンツデータを特定するための情報、コンテンツデータを分割するセグメントの大きさを示す情報、セグメントを特定するための情報、パートの始点位置を示す情報、およびパートの終点位置を示す情報が含まれている。   For example, as shown in FIG. 11, the allocation information includes information for specifying the content data to be downloaded, information indicating the size of the segment into which the content data is divided, information for specifying the segment, and the start position of the part And information indicating the end point position of the part.

図11の例においては、ダウンロードするコンテンツデータが、コンテンツデータAである情報が含まれており、コンテンツデータを分割するセグメントの大きさが、2300KBである情報が含まれている。   In the example of FIG. 11, the content data to be downloaded includes information that is content data A, and information that includes a segment size that divides the content data is 2300 KB.

また、セグメントを特定するための情報として“1/6”が含まれている。ここで、“1/6”は、この情報によって特定されるセグメントが、コンテンツデータを構成する6つのセグメントのうちの、1番目(先頭)のセグメントであることを示している。したがって、例えば、図5において、1番目のセグメントは、コンテンツデータを構成するセグメント71のうち、再生を開始する位置のデータ、すなわち、再性時刻t50に対応するデータが含まれているセグメント71−1をいう。   Further, “1/6” is included as information for specifying a segment. Here, “1/6” indicates that the segment specified by this information is the first (first) segment of the six segments constituting the content data. Therefore, for example, in FIG. 5, the first segment is a segment 71-that includes data at a position where reproduction is started among the segments 71 constituting the content data, that is, data corresponding to the recurrent time t50. Say 1.

さらに、図11に示す割り当て情報には、パートの始点位置が“0”である情報、およびパートの終点位置が“1150”である情報が含まれている。ここで、パートの始点位置および終点位置は、コンテンツデータの先頭の位置を“0”として、データが1KB増えるごとにインクリメントした値で表されている。したがって、この場合、始点位置が“0”であり、終点位置が“1150”であるパートは、コンテンツデータの先頭から1150KBのデータである。すなわち、このパートは、コンテンツデータの先頭をパートの先頭(開始位置)とする、大きさが1150KBのデータとなる。   Further, the allocation information shown in FIG. 11 includes information where the start position of the part is “0” and information where the end position of the part is “1150”. Here, the start point position and end point position of the part are represented by values that are incremented every time the data increases by 1 KB, with the leading position of the content data being “0”. Therefore, in this case, the part having the start point position “0” and the end point position “1150” is data of 1150 KB from the top of the content data. That is, this part is data having a size of 1150 KB, with the beginning of the content data being the beginning (starting position) of the part.

図10のフローチャートの説明に戻り、ステップS65において、通信制御部183は、算出部253から供給された割り当て情報を含む、送信要求信号を生成し、通信制御部183の送信部203は、通信制御部183が生成した送信要求信号を、通信網53を介してサーバ52あてに送信する。   Returning to the description of the flowchart of FIG. 10, in step S65, the communication control unit 183 generates a transmission request signal including the allocation information supplied from the calculation unit 253, and the transmission unit 203 of the communication control unit 183 controls the communication control. The transmission request signal generated by the unit 183 is transmitted to the server 52 via the communication network 53.

サーバ52は、送信要求信号を受信すると、それに応じて送信が要求されたコンテンツデータのパートを送信してくるので、ステップS66において、通信制御部183の受信部204は、サーバ52から送信されてきたコンテンツデータのパートを受信する。そして、通信制御部183は、受信されたパートを再構成部184に供給する。   When the server 52 receives the transmission request signal, the server 52 transmits the part of the content data requested to be transmitted. Accordingly, the reception unit 204 of the communication control unit 183 is transmitted from the server 52 in step S66. Receive the content data part. Then, the communication control unit 183 supplies the received part to the reconstruction unit 184.

また、サーバ52において、コンテンツデータのパートの送信が終了すると、サーバ52は、終了通知信号を送信してくるので、ステップS67において、通信制御部183の受信部204は、サーバ52から送信されてきた終了通知信号を受信する。   In addition, when the transmission of the content data part is completed in the server 52, the server 52 transmits an end notification signal. Therefore, the reception unit 204 of the communication control unit 183 is transmitted from the server 52 in step S67. Receives an end notification signal.

ステップS68において、通信制御部183は、通信制御部183の受信部204が受信したパートの受信情報を生成し、生成した受信情報を割り当て部182に供給する。例えば、ステップS68において、通信制御部183は、図12に示す受信情報を生成する。   In step S68, the communication control unit 183 generates part reception information received by the reception unit 204 of the communication control unit 183, and supplies the generated reception information to the allocation unit 182. For example, in step S68, the communication control unit 183 generates reception information illustrated in FIG.

受信情報には、パートを送信してきた、送信ノードとしてのサーバを特定する情報、受信したパートが含まれているセグメントを特定する情報、受信したパートの開始位置を示す情報、受信したパートの終点位置を示す情報、ダウンロードしたパートのダウンロード速度を示す情報、およびパートをダウンロードする処理のスループットの変動の大きさを示す情報が含まれている。   The received information includes information for identifying a server as a transmitting node that has transmitted the part, information for identifying a segment including the received part, information indicating a start position of the received part, and an end point of the received part Information indicating the position, information indicating the download speed of the downloaded part, and information indicating the magnitude of fluctuation in throughput of the process of downloading the part are included.

図12では、受信情報には、“サーバP”である、送信ノードとしてのサーバを特定する情報、および“1/6”であるセグメントを特定する情報が含まれている。ここで、“1/6”は、コンテンツデータを構成する6つのセグメントのうちの、1番目のセグメントを表している。また、受信情報には、“0”であるパートの始点位置を示す情報、“1150”であるパートの終点位置を示す情報、“3Mbps”であるダウンロード速度を示す情報、および“0Mbps”であるスループットの変動の大きさを示す情報が含まれている。   In FIG. 12, the reception information includes information specifying a server as a transmission node, which is “server P”, and information specifying a segment which is “1/6”. Here, “1/6” represents the first segment among the six segments constituting the content data. The received information includes information indicating the start position of the part that is “0”, information indicating the end position of the part that is “1150”, information indicating the download speed that is “3 Mbps”, and “0 Mbps”. Information indicating the magnitude of the variation in throughput is included.

なお、上述したように、始点位置が“0”であり、終点位置が“1150”であるパートは、コンテンツデータの先頭から1150KBのデータである。また、受信情報に、スループットの変動の大きさ(絶対値)ではなく、スループットの変動の分散値が含まれるようにしてもよい。   As described above, the part whose start point position is “0” and end point position is “1150” is data of 1150 KB from the top of the content data. Further, the received information may include a variance value of the variation in throughput instead of the magnitude (absolute value) of the variation in throughput.

図10の説明に戻り、ステップS69において、再割り当て制御部254は、通信制御部183から供給された受信情報を、受信履歴記憶部255に供給し、受信履歴記憶部255に、受信履歴を更新させる。   Returning to the description of FIG. 10, in step S69, the reallocation control unit 254 supplies the reception information supplied from the communication control unit 183 to the reception history storage unit 255, and updates the reception history to the reception history storage unit 255. Let

ここで、受信履歴には、例えば、図13に示すように、各セグメントを構成するパートのそれぞれの受信情報が含まれている。図13では、1番目のセグメントを構成するパートの受信情報、および2番目のセグメントを構成するパートの受信情報が含まれている。また、1番目のセグメントを構成するパートの受信情報として、“サーバP”から受信したパートの受信情報、および“サーバQ”から受信したパートの受信情報が含まれている。   Here, for example, as shown in FIG. 13, the reception history includes the reception information of the parts constituting each segment. In FIG. 13, the reception information of the parts constituting the first segment and the reception information of the parts constituting the second segment are included. In addition, as the reception information of the parts constituting the first segment, the reception information of the parts received from “Server P” and the reception information of the parts received from “Server Q” are included.

1番目のセグメントを構成するパートの受信情報のうち、“サーバP”から受信したパートの受信情報には、“0”であるパートの始点位置を示す情報、“1150”であるパートの終点位置を示す情報、“3Mbps”であるダウンロード速度を示す情報、および“0Mbps”であるスループットの変動の大きさを示す情報が含まれており、“サーバQ”から受信したパートの受信情報には、“1150”であるパートの始点位置を示す情報、“2300”であるパートの終点位置を示す情報、“2Mbps”であるダウンロード速度を示す情報、および“0Mbps”であるスループットの変動の大きさを示す情報が含まれている。   Of the reception information of the parts constituting the first segment, the reception information of the part received from “Server P” includes information indicating the start point position of the part “0”, and the end point position of the part “1150”. , Information indicating the download speed of “3 Mbps”, and information indicating the magnitude of the variation in throughput of “0 Mbps” are included, and the reception information of the part received from “Server Q” includes: Information indicating the start position of the part that is “1150”, information that indicates the end position of the part that is “2300”, information that indicates the download speed that is “2 Mbps”, and the magnitude of the fluctuation of the throughput that is “0 Mbps” Contains information to indicate.

また、2番目のセグメントを構成するパートの受信情報として、“サーバP”から受信したパートの受信情報、および“サーバQ”から受信したパートの受信情報が含まれている。2番目のセグメントを構成するパートの受信情報のうち、“サーバP”から受信したパートの受信情報には、“2300”であるパートの始点位置を示す情報、“3680”であるパートの終点位置を示す情報、“3Mbps”であるダウンロード速度を示す情報、および“0Mbps”であるスループットの変動の大きさを示す情報が含まれており、“サーバQ”から受信したパートの受信情報には、“3680”であるパートの始点位置を示す情報、“4600”であるパートの終点位置を示す情報、“3Mbps”であるダウンロード速度を示す情報、および“1Mbps”であるスループットの変動の大きさを示す情報が含まれている。   In addition, as the reception information of the part constituting the second segment, the reception information of the part received from “Server P” and the reception information of the part received from “Server Q” are included. Among the reception information of the parts constituting the second segment, the reception information of the part received from “Server P” includes the information indicating the start position of the part “2300” and the end position of the part “3680”. , Information indicating the download speed of “3 Mbps”, and information indicating the magnitude of the variation in throughput of “0 Mbps” are included, and the reception information of the part received from “Server Q” includes: Information indicating the start position of the part that is “3680”, information that indicates the end position of the part that is “4600”, information that indicates the download speed that is “3 Mbps”, and the magnitude of the fluctuation of the throughput that is “1 Mbps” Contains information to indicate.

図10の説明に戻り、ステップS70において、再割り当て制御部254は、受信履歴記憶部255が記憶している受信履歴を参照して、コンテンツデータのダウンロードが完了(終了)したか否かを判定する。例えば、受信履歴記憶部255が、図13に示す受信履歴を記憶している場合、コンテンツデータが、6つのセグメントに分割されており、1番目のセグメントおよび2番目のセグメントのダウンロードが完了しているが、3番目乃至6番目のセグメントのダウンロードが完了していないので、再割り当て制御部254は、コンテンツデータのダウンロードが完了していないと判定する。   Returning to the description of FIG. 10, in step S <b> 70, the reallocation control unit 254 refers to the reception history stored in the reception history storage unit 255 and determines whether or not the download of the content data is completed (finished). To do. For example, when the reception history storage unit 255 stores the reception history shown in FIG. 13, the content data is divided into six segments, and the download of the first segment and the second segment is completed. However, since the download of the third to sixth segments has not been completed, the reallocation control unit 254 determines that the download of the content data has not been completed.

ステップS70において、コンテンツデータのダウンロードが完了していないと判定された場合、ステップS71に進み、再割り当て制御部254は、パートの送信の割り当てをし直す、再割り当てを指示する信号を生成し、生成した再割り当てを指示する信号を、算出部253に供給する。   If it is determined in step S70 that the download of the content data has not been completed, the process proceeds to step S71, and the reallocation control unit 254 generates a signal for instructing reallocation to reallocate transmission of the part, A signal instructing the generated reallocation is supplied to the calculation unit 253.

再割り当て制御部254から算出部253に、再割り当てを指示する信号が供給されると、ステップS72において、算出部253は、パートの送信の再割り当てが指示されたので、初期設定情報、ノード情報記憶部252が記憶しているノード情報、および受信履歴記憶部255が記憶している受信履歴を参照して、まだダウンロードされていないセグメントを、パートに分割して、パートごとの割り当て情報を生成する。そして、算出部253は、生成した割り当て情報を、通信制御部183に供給して、ステップS65に戻り、上述した処理を繰り返す。   When a signal for instructing reassignment is supplied from the reassignment control unit 254 to the calculation unit 253, in step S72, the calculation unit 253 is instructed to reassign part transmission. Referring to the node information stored in the storage unit 252 and the reception history stored in the reception history storage unit 255, segments that have not yet been downloaded are divided into parts, and allocation information for each part is generated. To do. Then, the calculation unit 253 supplies the generated allocation information to the communication control unit 183, returns to step S65, and repeats the above-described processing.

例えば、図5に示すコンテンツデータのうち、セグメント71−1のダウンロードが終了しており、セグメント71−2乃至セグメント71−6のダウンロードが終了していない場合、算出部253は、ノード情報および受信履歴を参照して、セグメント71−2乃至セグメント71−6のそれぞれを、ノード情報に含まれている、送信ノードとしてのサーバ52の数によって示される数に分割する。   For example, in the content data illustrated in FIG. 5, when the download of the segment 71-1 is finished and the download of the segments 71-2 to 71-6 is not finished, the calculation unit 253 receives the node information and the reception With reference to the history, each of the segments 71-2 to 71-6 is divided into the numbers indicated by the number of servers 52 as transmission nodes included in the node information.

例えば、ノード情報に含まれている、送信ノードとしてのサーバ52の数が“2”である場合、算出部253は、セグメント71−2乃至セグメント71−6を、それぞれ2つのパートに分割する。このとき、パートの大きさは、例えば、受信履歴に含まれている、パートのダウンロード速度を基に、式(4)を計算して定める。   For example, when the number of servers 52 as transmission nodes included in the node information is “2”, the calculation unit 253 divides each of the segments 71-2 to 71-6 into two parts. At this time, the size of the part is determined by, for example, calculating Equation (4) based on the part download speed included in the reception history.

Pi=Vi×D/(ΣVi) ・・・(4)   Pi = Vi × D / (ΣVi) (4)

ここで、Piは、サーバ52−i(但し、1≦i≦N)に割り当てるパートの大きさを示しており、Viは、前回、サーバ52−iからダウンロードしたパートのダウンロード速度を示している。また、Σは、iを1からNに変えてのViの和(合計)をとることを表し、Dは、セグメントの大きさを示す。   Here, Pi represents the size of the part assigned to the server 52-i (where 1 ≦ i ≦ N), and Vi represents the download speed of the part downloaded from the server 52-i last time. . Σ represents taking the sum (total) of Vi by changing i from 1 to N, and D represents the size of the segment.

したがって、例えば、図5に示すセグメント71の大きさが2300KBであり、パート111−1のサーバ52−1からのダウンロード速度が“3Mbps”であり、パート112−1のサーバ52−2からのダウンロード速度が“2Mbps”であり、さらに、セグメント71−2乃至セグメント71−6を、それぞれ、パート111−2乃至パート111−6、およびパート112−2乃至パート112−6に分割して、パート111−2乃至パート111−6をサーバ52−1からダウンロードし、パート112−2乃至パート112−6をサーバ52−2からダウンロードする場合、パート111−2乃至パート111−6のそれぞれの大きさは、式(4)から、1380KB(3×2300/(2+3))と算出される。   Therefore, for example, the size of the segment 71 shown in FIG. 5 is 2300 KB, the download speed from the server 52-1 of the part 111-1 is “3 Mbps”, and the download from the server 52-2 of the part 112-1 is performed. The speed is “2 Mbps”, and the segments 71-2 through 71-6 are further divided into parts 111-2 through 111-6 and parts 112-2 through 112-6, respectively. -2 to part 111-6 are downloaded from the server 52-1, and when the parts 112-2 to 112-6 are downloaded from the server 52-2, the sizes of the parts 111-2 to 111-6 are as follows. From the formula (4), it is calculated as 1380 KB (3 × 2300 / (2 + 3)).

そして、算出部253は、セグメント71−2乃至セグメント71−6をそれぞれ分割すると、パート111の送信を、サーバ52−1に割り当て、パート112の送信を、サーバ52−2に割り当てる。そして、算出部253は、パート111−2を特定するための割り当て情報、およびパート112−2を特定するための割り当て情報を、それぞれ生成する。算出部253は、生成したパート111−2を特定するための割り当て情報を、通信制御部183−1に供給し、パート112−2を特定するための割り当て情報を、通信制御部183−2に供給する。   Then, when dividing the segments 71-2 to 71-6, the calculation unit 253 allocates transmission of the part 111 to the server 52-1, and allocates transmission of the part 112 to the server 52-2. Then, the calculation unit 253 generates allocation information for specifying the part 111-2 and allocation information for specifying the part 112-2, respectively. The calculation unit 253 supplies the generated allocation information for specifying the part 111-2 to the communication control unit 183-1 and supplies the allocation information for specifying the part 112-2 to the communication control unit 183-2. Supply.

なお、セグメントをパートに分割するとき、セグメントの大きさおよびダウンロード速度を基に、パートの大きさを定めると説明したが、例えば、受信履歴に含まれているスループットの変動の大きさを用いて、サーバ52に割り当てるパートの大きさを変化させるようにしてもよい。この場合、例えば、スループットの変動が少ないサーバ52に、より大きいパート(の送信)が割り当てられる。すなわち、スループットの変動が大きいサーバ52には、そのサーバ52の送信能力と比べて小さいパート(の送信)が割り当てられる。   In addition, when dividing a segment into parts, it was explained that the size of the part is determined based on the size of the segment and the download speed. For example, using the magnitude of the fluctuation of the throughput included in the reception history The part size allocated to the server 52 may be changed. In this case, for example, a larger part (transmission) is assigned to the server 52 with less variation in throughput. That is, a part (transmission) that is smaller than the transmission capability of the server 52 is assigned to the server 52 with a large variation in throughput.

また、再割り当てを行う場合、ノード情報記憶部252のノード情報が更新されて、新たな送信ノードとしてのサーバ52が追加されたとき、新たに追加されたサーバ52からのダウンロード速度として、予め定められた所定の値を用いて式(4)を算出し、再割り当てを行う。したがって、例えば、新たに、ノード情報にサーバ52−3の情報が追加された場合、式(4)において、ダウンロード速度V3の値を、例えば、2Mbpsとして式(4)を計算する。さらに、また、予め定められた所定の時間が経過するごとに、再割り当ての処理を行うようにすることも可能である。   When reassignment is performed, when the node information in the node information storage unit 252 is updated and the server 52 as a new transmission node is added, the download speed from the newly added server 52 is determined in advance. Equation (4) is calculated using the given value, and reallocation is performed. Therefore, for example, when the information of the server 52-3 is newly added to the node information, the expression (4) is calculated by setting the value of the download speed V3 to 2 Mbps in the expression (4), for example. Furthermore, it is also possible to perform reassignment processing every time a predetermined time elapses.

図10の説明に戻り、ステップS70において、コンテンツデータのダウンロードが完了したと判定された場合、コンテンツデータの受信の処理は終了する。   Returning to the description of FIG. 10, if it is determined in step S70 that the download of the content data has been completed, the content data reception process ends.

このようにして、クライアント51は、コンテンツデータを複数のセグメントに分割(する分割位置を指定)し、さらに、各セグメントを複数のパートに分割(する分割位置を指定)して、1つのセグメントを構成するパートのそれぞれの送信を異なるサーバ52に割り当てる。そして、クライアント51は、サーバ52から、それぞれ割り当てたパートをダウンロードする。   In this way, the client 51 divides the content data into a plurality of segments (specifies the division position to be divided), and further divides each segment into a plurality of parts (specifies the division position to be divided). Each transmission of the parts to be configured is assigned to a different server 52. Then, the client 51 downloads each assigned part from the server 52.

このように、コンテンツデータを複数のセグメントに分割し、さらに、各セグメントを複数のパートに分割して、1つのセグメントを構成するパートのそれぞれを、異なるサーバ52からダウンロードするようにしたので、クライアント51は、コンテンツデータをより迅速にダウンロードすることができる。   In this way, the content data is divided into a plurality of segments, each segment is further divided into a plurality of parts, and each part constituting one segment is downloaded from a different server 52. 51 can download content data more quickly.

また、各セグメントを、それぞれ複数のパートに分割し、それぞれのパートの大きさを、前回ダウンロードしたパートのダウンロード速度に応じて定めるようにしたので、コンテンツデータを、より効率よくダウンロードすることができ、その結果、ダウンロードが完了したコンテンツデータの量に対する、連続したコンテンツの再生に用いることができるコンテンツデータの量の割合をより大きくすることができる。これにより、サーバ52や通信網53に問題が発生した場合に、コンテンツの再生が途切れてしまう可能性をより低くすることができる。   In addition, each segment is divided into multiple parts, and the size of each part is determined according to the download speed of the part downloaded last time, so the content data can be downloaded more efficiently. As a result, the ratio of the amount of content data that can be used for continuous content reproduction to the amount of content data that has been downloaded can be further increased. Thereby, when a problem occurs in the server 52 and the communication network 53, it is possible to further reduce the possibility that the reproduction of the content is interrupted.

次に、図14のフローチャートを参照して、管理部181から、割り当て部182の設定部251に、初期設定情報およびノード情報が供給された場合に、コンテンツデータの受信の処理と並行して実行される、クライアント51によるノード情報の更新の処理を説明する。   Next, referring to the flowchart of FIG. 14, when initial setting information and node information are supplied from the management unit 181 to the setting unit 251 of the allocation unit 182, the processing is executed in parallel with the content data reception process. The node information update process performed by the client 51 will be described.

ステップS91において、設定部251は、管理部181から供給されたノード情報を、ノード情報記憶部252に供給し、供給したノード情報を、ノード情報記憶部252に記憶させる。ノード情報には、通信網53を介してクライアント51に接続されている、ユーザが所望するコンテンツデータを記録しているサーバ52の数、サーバ52のIPアドレス、サーバ52の送信能力などが含まれている。   In step S91, the setting unit 251 supplies the node information supplied from the management unit 181 to the node information storage unit 252, and stores the supplied node information in the node information storage unit 252. The node information includes the number of servers 52 connected to the client 51 via the communication network 53 and recording content data desired by the user, the IP address of the server 52, the transmission capability of the server 52, and the like. ing.

ステップS92において、設定部251は、管理部181から追加ノード情報が供給されたか否かを判定する。ステップS92において、追加ノード情報が供給されたと判定された場合、ステップS93に進み、設定部251は、管理部181から供給された追加ノード情報をノード情報記憶部252に供給し、ノード情報記憶部252に、供給した追加ノード情報を基に、ノード情報を更新させて、ステップS94に進む。   In step S <b> 92, the setting unit 251 determines whether additional node information is supplied from the management unit 181. If it is determined in step S92 that the additional node information has been supplied, the process proceeds to step S93, where the setting unit 251 supplies the additional node information supplied from the management unit 181 to the node information storage unit 252, and the node information storage unit In 252, the node information is updated based on the supplied additional node information, and the process proceeds to step S 94.

例えば、ステップS93において、設定部251は、追加ノード情報に含まれている、新たに検出されたサーバ52の送信能力やIPアドレスなどの情報が、ノード情報記憶部252が記憶しているノード情報に追加されるように、ノード情報記憶部252にノード情報を更新させる。   For example, in step S <b> 93, the setting unit 251 stores the node information stored in the node information storage unit 252 including information such as the transmission capability and IP address of the newly detected server 52 included in the additional node information. The node information storage unit 252 updates the node information so that the node information is added to the node information.

一方、ステップS92において、追加ノード情報が供給されていないと判定された場合、ノード情報を更新させないので、ステップS93の処理はスキップされ、ステップS94に進む。   On the other hand, if it is determined in step S92 that the additional node information is not supplied, the node information is not updated, so the process of step S93 is skipped and the process proceeds to step S94.

ステップS94において、設定部251は、再割り当て制御部254から供給される、ダウンロードが完了した旨の信号を基に、コンテンツデータが完了したか否かを判定する。ステップS94において、ダウンロードが完了したと判定された場合、ノード情報を更新する必要がないので、ノード情報の更新の処理は終了する。   In step S94, the setting unit 251 determines whether or not the content data has been completed based on the signal indicating that the download has been completed, which is supplied from the reallocation control unit 254. If it is determined in step S94 that the download has been completed, it is not necessary to update the node information, and the node information update process ends.

一方、ステップS94において、ダウンロードが完了していないと判定された場合、ステップS92に戻り、上述した処理を繰り返す。   On the other hand, if it is determined in step S94 that the download has not been completed, the process returns to step S92 and the above-described processing is repeated.

このようにして、クライアント51は、記憶しているノード情報を更新する。このように、追加ノード情報が供給されるたびにノード情報を更新することによって、クライアント51は、より多くのサーバ52から、所望するコンテンツデータを分割してダウンロードすることができる。   In this way, the client 51 updates the stored node information. In this way, by updating the node information every time additional node information is supplied, the client 51 can divide and download desired content data from more servers 52.

図9のフローチャートを参照して説明したように、クライアント51が、サーバ52とのコネクションを確立させると、サーバ52にはクライアント51から、コンテンツデータのパートの送信を要求する、送信要求信号が送信されてくる。サーバ52は、クライアント51から送信要求信号が送信されてくるたびに、コンテンツデータの送信の処理を実行する。   As described with reference to the flowchart of FIG. 9, when the client 51 establishes a connection with the server 52, a transmission request signal is transmitted to the server 52, requesting transmission of the part of the content data from the client 51. It will be. The server 52 executes content data transmission processing each time a transmission request signal is transmitted from the client 51.

図15のフローチャートを参照して、サーバ52による、コンテンツデータの送信の処理を説明する。   With reference to the flowchart of FIG. 15, the content data transmission processing by the server 52 will be described.

ステップS111において、受信部221は、クライアント51から送信されてきた、送信要求信号を受信し、受信した送信要求信号を取得部222に供給する。   In step S <b> 111, the reception unit 221 receives the transmission request signal transmitted from the client 51, and supplies the received transmission request signal to the acquisition unit 222.

ステップS112において、取得部222は、受信部221から供給された送信要求信号を参照して、記憶部223から、送信が要求されたコンテンツデータのパートを取得し、取得したコンテンツデータのパートを、送信部224に供給する。また、取得部222は、コンテンツデータのパートを送信部224に供給してから、コンテンツデータの送信が終了した旨の終了通知信号を生成し、生成した終了通知信号を送信部224に供給する。   In step S112, the acquisition unit 222 refers to the transmission request signal supplied from the reception unit 221, acquires the content data part requested for transmission from the storage unit 223, and acquires the acquired content data part. The data is supplied to the transmission unit 224. In addition, the acquisition unit 222 supplies the content data part to the transmission unit 224, generates an end notification signal indicating that the transmission of the content data has ended, and supplies the generated end notification signal to the transmission unit 224.

例えば、受信部221から、図11に示す割り当て情報を含む送信要求信号が供給された場合、取得部222は、記録部223に記憶されているコンテンツデータAから、コンテンツデータAの先頭から、1150KBまでの部分のデータをパートとして取得(抽出)する。より詳細には、ステップS112において、取得部222は、記憶部223から取得したパートを、例えば、TCP方式のパケットに格納して、そのパケットを送信部224に供給する。また、例えば、取得部222は、パートを格納するパケットのヘッダに、格納するパートの始点位置と同じ値のシーケンス番号を格納する。   For example, when the transmission request signal including the allocation information shown in FIG. 11 is supplied from the reception unit 221, the acquisition unit 222 starts from the content data A stored in the recording unit 223 from the top of the content data A. The data up to this point is acquired (extracted) as a part. More specifically, in step S112, the acquisition unit 222 stores the part acquired from the storage unit 223 in, for example, a TCP packet, and supplies the packet to the transmission unit 224. For example, the acquisition unit 222 stores a sequence number having the same value as the start point position of the part to be stored in the header of the packet storing the part.

ステップS113において、送信部224は、取得部222から供給されたコンテンツデータのパートを、通信網53を介してクライアント51あてに送信する。   In step S <b> 113, the transmission unit 224 transmits the part of the content data supplied from the acquisition unit 222 to the client 51 via the communication network 53.

ステップS114において、送信部224は、取得部222から供給された終了通知信号を、通信網53を介してクライアント51あてに送信し、コンテンツデータの送信の処理は終了する。   In step S114, the transmission unit 224 transmits the end notification signal supplied from the acquisition unit 222 to the client 51 via the communication network 53, and the content data transmission process ends.

このようにして、サーバ52は、クライアント51から送信が要求されたコンテンツデータのパートを取得し、クライアント51あてに送信する。このように、コンテンツデータから、クライアント51から送信が要求された部分をパートとして取得し、クライアント51あてに送信することで、サーバ52にかかる負荷を軽減させることができ、また、コンテンツデータを、より効率よくクライアント51に送信することができる。   In this way, the server 52 acquires the part of the content data requested to be transmitted from the client 51 and transmits it to the client 51. Thus, by acquiring the part requested to be transmitted from the client 51 as a part from the content data and transmitting it to the client 51, the load on the server 52 can be reduced. It can be transmitted to the client 51 more efficiently.

以上のように、本発明によれば、コンテンツデータを複数のセグメントに分割し、さらに、各セグメントを複数のパートに分割して、1つのセグメントを構成するパートのそれぞれを、異なるサーバからダウンロードするようにしたので、クライアントは、コンテンツデータをより迅速にダウンロードすることができる。   As described above, according to the present invention, content data is divided into a plurality of segments, each segment is further divided into a plurality of parts, and each part constituting one segment is downloaded from a different server. As a result, the client can download the content data more quickly.

また、本発明によれば、各セグメントを、それぞれ複数のパートに分割し、それぞれのパートの大きさを、前回ダウンロードしたパートのダウンロード速度に応じて定めるようにしたので、コンテンツデータを、より効率よくダウンロードすることができ、これにより、ネットワークやサーバに問題が発生した場合においても、コンテンツの再生をより途切れにくくすることができる。   In addition, according to the present invention, each segment is divided into a plurality of parts, and the size of each part is determined according to the download speed of the part downloaded last time. The content can be downloaded well, and even when a problem occurs in the network or the server, the reproduction of the content can be made more difficult to interrupt.

上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。   The series of processes described above can be executed by hardware, but can also be executed by software. When a series of processing is executed by software, a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a recording medium in a general-purpose personal computer or the like.

この記録媒体は、図6に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク161(フレキシブルディスクを含む)、光ディスク162(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク163(MD(Mini-Disc)(商標)を含む)、若しくは半導体メモリ164などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM132や、記録部138に含まれるハードディスクなどで構成される。   As shown in FIG. 6, this recording medium is distributed to provide a program to the user separately from the computer, and includes a magnetic disk 161 (including a flexible disk) on which the program is recorded, an optical disk 162 (CD- ROM (Compact Disc-Read Only Memory), DVD (including Digital Versatile Disc)), magneto-optical disk 163 (including MD (Mini-Disc) (trademark)), or semiconductor memory 164, etc. In addition, the program is configured by a ROM 132 in which a program is recorded, a hard disk included in the recording unit 138, and the like provided to the user in a state of being incorporated in a computer in advance.

なお、上述した一連の処理を実行させるプログラムは、必要に応じてルータ、モデムなどのインタフェースを介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を介してコンピュータにインストールされるようにしてもよい。   The program for executing the series of processes described above is installed in a computer via a wired or wireless communication medium such as a local area network, the Internet, or digital satellite broadcasting via an interface such as a router or a modem as necessary. You may be made to do.

また、クライアント51が、ピアツーピアネットワークに接続されていると説明したが、ピアツーピアネットワーク上に、いわゆるスーパーノードと称されるサーバ52、またはセンターサーバを設けて、クライアント51が、スーパーノードまたはセンターサーバから、他のサーバ52のノード情報を取得するようにしてもよい。   Further, the client 51 has been described as being connected to the peer-to-peer network. However, a server 52 or a center server called a so-called super node is provided on the peer-to-peer network, and the client 51 is connected to the super node or the center server. The node information of the other server 52 may be acquired.

さらに、例えば、図16に示すように、サーバクライアント方式のネットワークに、クライアント51を接続してコンテンツデータをダウンロードするようにしてもよい。   Furthermore, for example, as shown in FIG. 16, the client 51 may be connected to a server-client network to download content data.

この場合、通信網301には、クライアント51、管理サーバ302、および配信サーバ303−1乃至配信サーバ303−3が、接続されている。クライアント51が、コンテンツデータをダウンロードする場合、クライアント51は、管理サーバ302から、クライアント51が所望するコンテンツデータを記録している、配信サーバ(例えば、配信サーバ303−1乃至配信サーバ303−3)のIPアドレスや、配信サーバの送信能力などの情報を取得する。クライント51は、管理サーバ302から取得した情報を参照して、所望するコンテンツデータを、複数のセグメントに分割し、さらに、セグメントを複数のパートに分割して、それぞれのパートの送信を、配信サーバ303−1乃至配信サーバ303−3にそれぞれ割り当てる。そして、クライアント51は、配信サーバ303−1乃至配信サーバ303−3のそれぞれから、送信を割り当てたパートをダウンロードする。   In this case, a client 51, a management server 302, and distribution servers 303-1 to 303-3 are connected to the communication network 301. When the client 51 downloads the content data, the client 51 records the content data desired by the client 51 from the management server 302 (for example, the distribution server 303-1 to the distribution server 303-3). Information such as the IP address and the transmission capability of the distribution server. The client 51 refers to the information acquired from the management server 302, divides the desired content data into a plurality of segments, further divides the segment into a plurality of parts, and transmits each part to the distribution server. Assigned to 303-1 to distribution server 303-3, respectively. Then, the client 51 downloads the part to which transmission is assigned from each of the distribution server 303-1 to the distribution server 303-3.

なお、本明細書において、記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。   In the present specification, the step of describing the program stored in the recording medium is not limited to the processing performed in chronological order according to the described order, but is not necessarily performed in chronological order. It also includes processes that are executed individually.

また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。   Further, in this specification, the system represents the entire apparatus constituted by a plurality of apparatuses.

従来のコンテンツデータを分割してダウンロードする方法を説明する図である。It is a figure explaining the method of dividing and downloading the conventional content data. 本発明に係るコンテンツ配信システムを説明する図である。It is a figure explaining the content delivery system which concerns on this invention. コンテンツデータを分割してダウンロードする方法を説明する図である。It is a figure explaining the method of dividing and downloading content data. コンテンツデータを分割してダウンロードする方法を説明する図である。It is a figure explaining the method of dividing and downloading content data. コンテンツデータを分割してダウンロードする方法を説明する図である。It is a figure explaining the method of dividing and downloading content data. クライアントの構成の例を示すブロック図である。It is a block diagram which shows the example of a structure of a client. クライアントおよびサーバの機能の構成を示すブロック図である。It is a block diagram which shows the structure of the function of a client and a server. 割り当て部の機能の構成を示すブロック図である。It is a block diagram which shows the structure of the function of an allocation part. コンテンツデータを2つのセグメントに分割する場合における、クライアントによるコンテンツデータの受信の処理、およびサーバが、クライアントから要求されたコンテンツデータを送信する処理を説明するフローチャートである。It is a flowchart explaining the process of reception of content data by a client, and the process in which a server transmits the content data requested | required from the client in the case of dividing content data into two segments. コンテンツデータの受信の処理を説明するフローチャートである。It is a flowchart explaining the reception process of content data. 割り当て情報を説明する図である。It is a figure explaining allocation information. 受信情報を説明する図である。It is a figure explaining received information. 履歴情報を説明する図である。It is a figure explaining history information. ノード情報の更新の処理を説明するフローチャートである。It is a flowchart explaining the process of update of node information. コンテンツデータの送信の処理を説明するフローチャートである。It is a flowchart explaining the transmission process of content data. 本発明に係るコンテンツ配信システムを説明する図である。It is a figure explaining the content delivery system which concerns on this invention.

符号の説明Explanation of symbols

51 クライアント, 52−1乃至52−N,52 サーバ, 131 CPU, 132 ROM, 133 RAM, 138 記録部, 161 磁気ディスク, 162 光ディスク, 163 光磁気ディスク, 164 半導体メモリ, 182 割り当て部, 183−1乃至183−N,183 通信制御部, 203−1乃至203−N,203 送信部, 204−1乃至204−N,204 受信部, 221−1乃至221−N,221 受信部, 222−1乃至222−N,222 取得部, 223−1乃至223−N,223 記録部, 224−1乃至224−N,224 送信部, 251 設定部, 252 ノード情報記憶部, 253 算出部, 254 再割り当て制御部, 255 受信履歴記憶部   51 clients, 52-1 to 52 -N, 52 servers, 131 CPU, 132 ROM, 133 RAM, 138 recording unit, 161 magnetic disk, 162 optical disk, 163 magneto-optical disk, 164 semiconductor memory, 182 allocation unit, 183-1 Through 183-N, 183 communication control unit, 203-1 through 203-N, 203 transmission unit, 204-1 through 204-N, 204 reception unit, 221-1 through 221-N, 221 reception unit, 222-1 through 222-N, 222 acquisition unit, 223-1 to 223-N, 223 recording unit, 224-1 to 224-N, 224 transmission unit, 251 setting unit, 252 node information storage unit, 253 calculation unit, 254 reallocation control Section, 255 reception history storage section

Claims (10)

通信網を介して接続されている複数の送信装置のそれぞれから送信されてくるデータを受信する情報処理装置において、
これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする前記第2のデータを、さらに前記送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、前記第3のデータのそれぞれの送信を対応する前記送信装置のそれぞれに割り当てる割り当て手段と、
前記送信装置のそれぞれに割り当てた前記第3のデータのそれぞれの送信を要求する要求信号のそれぞれを、前記第3のデータに対応する前記送信装置にそれぞれ送信する送信手段と、
それぞれの前記送信装置から送信されてきた、前記第3のデータのそれぞれを受信する受信手段と
を備えることを特徴とする情報処理装置。
In an information processing device that receives data transmitted from each of a plurality of transmission devices connected via a communication network,
When receiving first data to be received from now on and second data divided into predetermined predetermined sizes in order, the second data to be received next is further transmitted Allocating means for allocating each transmission of the third data to each of the corresponding transmitting devices by dividing each of the third data corresponding to each of the devices;
Transmitting means for transmitting each of the request signals for requesting transmission of each of the third data assigned to each of the transmitting devices to the transmitting device corresponding to the third data;
An information processing apparatus comprising: a receiving unit configured to receive each of the third data transmitted from each of the transmission apparatuses.
前記第3のデータを前記送信装置から受信する速度を示す情報を記憶する記憶手段をさらに備え、
前記割り当て手段は、前記情報を基に、前記第3のデータの大きさをそれぞれ変化させて、前記第2のデータを前記第3のデータのそれぞれに分ける
ことを特徴とする請求項1に記載の情報処理装置。
Storage means for storing information indicating a rate at which the third data is received from the transmission device;
2. The allocation unit according to claim 1, wherein, based on the information, the size of the third data is changed, and the second data is divided into the third data. Information processing device.
通信網を介して接続されている複数の送信装置のそれぞれから送信されてくるデータを受信する情報処理装置の情報処理方法において、
これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする前記第2のデータを、さらに前記送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、前記第3のデータのそれぞれの送信を対応する前記送信装置のそれぞれに割り当てる割り当てステップと、
前記送信装置のそれぞれに割り当てた前記第3のデータのそれぞれの送信を要求する要求信号のそれぞれの、前記第3のデータに対応する前記送信装置のそれぞれへの送信を制御する送信制御ステップと、
それぞれの前記送信装置から送信されてきた、前記第3のデータのそれぞれの受信を制御する受信制御ステップと
を含むことを特徴とする情報処理方法。
In an information processing method of an information processing device that receives data transmitted from each of a plurality of transmission devices connected via a communication network,
When receiving first data to be received from now on and second data divided into predetermined predetermined sizes in order, the second data to be received next is further transmitted Assigning each transmission of the third data to each of the corresponding transmitting devices by dividing each of the third data corresponding to each of the devices;
A transmission control step for controlling transmission of each of the request signals for requesting transmission of each of the third data assigned to each of the transmission devices to each of the transmission devices corresponding to the third data;
A reception control step of controlling reception of each of the third data transmitted from each of the transmission devices.
通信網を介して接続されている複数の送信装置のそれぞれから送信されてくるデータを受信する受信処理用のプログラムであって、
これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする前記第2のデータを、さらに前記送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、前記第3のデータのそれぞれの送信を対応する前記送信装置のそれぞれに割り当てる割り当てステップと、
前記送信装置のそれぞれに割り当てた前記第3のデータのそれぞれの送信を要求する要求信号のそれぞれの、前記第3のデータに対応する前記送信装置のそれぞれへの送信を制御する送信制御ステップと、
それぞれの前記送信装置から送信されてきた、前記第3のデータのそれぞれの受信を制御する受信制御ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
A program for reception processing for receiving data transmitted from each of a plurality of transmission devices connected via a communication network,
When receiving first data to be received from now on and second data divided into predetermined predetermined sizes in order, the second data to be received next is further transmitted Assigning each transmission of the third data to each of the corresponding transmitting devices by dividing each of the third data corresponding to each of the devices;
A transmission control step for controlling transmission of each of the request signals for requesting transmission of each of the third data assigned to each of the transmission devices to each of the transmission devices corresponding to the third data;
And a reception control step for controlling reception of each of the third data transmitted from each of the transmission devices. A recording medium on which a computer-readable program is recorded.
通信網を介して接続されている複数の送信装置のそれぞれから送信されてくるデータを受信する受信処理を、コンピュータに行わせるプログラムにおいて、
これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする前記第2のデータを、さらに前記送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、前記第3のデータのそれぞれの送信を対応する前記送信装置のそれぞれに割り当てる割り当てステップと、
前記送信装置のそれぞれに割り当てた前記第3のデータのそれぞれの送信を要求する要求信号のそれぞれの、前記第3のデータに対応する前記送信装置のそれぞれへの送信を制御する送信制御ステップと、
それぞれの前記送信装置から送信されてきた、前記第3のデータのそれぞれの受信を制御する受信制御ステップと
を含むことを特徴とするプログラム。
In a program for causing a computer to perform reception processing for receiving data transmitted from each of a plurality of transmission devices connected via a communication network,
When receiving first data to be received from now on and second data divided into predetermined predetermined sizes in order, the second data to be received next is further transmitted Assigning each transmission of the third data to each of the corresponding transmitting devices by dividing each of the third data corresponding to each of the devices;
A transmission control step for controlling transmission of each of the request signals for requesting transmission of each of the third data assigned to each of the transmission devices to each of the transmission devices corresponding to the third data;
A reception control step of controlling the reception of each of the third data transmitted from each of the transmission devices.
第1のデータを記憶する記憶手段と、
相手がこれから受信しようとする前記第1のデータを予め定められた所定の大きさに分けた第2のデータを、前記相手がそれぞれ順番に受信する場合、前記相手から送信されてきた、前記相手が次に受信しようとする前記第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号を受信する受信手段と、
前記要求信号に基づいて、記憶している前記第1のデータから、送信が要求された第3のデータを取得する取得手段と、
取得した第3のデータを、前記相手に送信する送信手段と
を備えることを特徴とする情報処理装置。
Storage means for storing first data;
When the other party sequentially receives second data obtained by dividing the first data to be received by the other party into predetermined sizes, the other party has been transmitted from the other party. Receiving means for receiving a request signal for requesting transmission of one third data among the third data obtained by dividing the second data to be received next into a predetermined number;
Acquiring means for acquiring third data requested to be transmitted from the stored first data based on the request signal;
An information processing apparatus comprising: transmission means for transmitting the acquired third data to the partner.
相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータを、前記相手がそれぞれ順番に受信する場合、前記相手から送信されてきた、前記相手が次に受信しようとする前記第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号の受信を制御する受信制御ステップと、
前記要求信号に基づいて、記憶している前記第1のデータから、送信が要求された第3のデータを取得する取得ステップと、
取得した第3のデータの前記相手への送信を制御する送信制御ステップと
を含むことを特徴とする情報処理方法。
When the other party sequentially receives the second data obtained by dividing the first data to be received by the other party into a predetermined size, the other party has been transmitted from the other party. A reception control step for controlling reception of a request signal for requesting transmission of one third data among the third data obtained by further dividing the second data to be received into a predetermined number;
Obtaining the third data requested to be transmitted from the stored first data based on the request signal;
A transmission control step of controlling transmission of the acquired third data to the other party.
相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータを、前記相手がそれぞれ順番に受信する場合、前記相手から送信されてきた、前記相手が次に受信しようとする前記第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号の受信を制御する受信制御ステップと、
前記要求信号に基づいて、記憶している前記第1のデータから、送信が要求された第3のデータを取得する取得ステップと、
取得した第3のデータの前記相手への送信を制御する送信制御ステップと
を含むことを特徴とする情報処理をコンピュータに実行させるプログラムが記録されている記録媒体。
When the other party sequentially receives the second data obtained by dividing the first data to be received by the other party into a predetermined size, the other party has been transmitted from the other party. A reception control step for controlling reception of a request signal for requesting transmission of one third data among the third data obtained by further dividing the second data to be received into a predetermined number;
Obtaining the third data requested to be transmitted from the stored first data based on the request signal;
And a transmission control step for controlling transmission of the acquired third data to the other party. A recording medium on which a program for causing a computer to execute information processing is recorded.
相手がこれから受信しようとする第1のデータを予め定められた所定の大きさに分けた第2のデータを、前記相手がそれぞれ順番に受信する場合、前記相手から送信されてきた、前記相手が次に受信しようとする前記第2のデータをさらに所定の数に分けた第3のデータのうちの、1つの第3のデータの送信を要求する要求信号の受信を制御する受信制御ステップと、
前記要求信号に基づいて、記憶している前記第1のデータから、送信が要求された第3のデータを取得する取得ステップと、
取得した第3のデータの前記相手への送信を制御する送信制御ステップと
をコンピュータに実行させることを特徴とするプログラム。
When the other party sequentially receives the second data obtained by dividing the first data to be received by the other party into a predetermined size, the other party has been transmitted from the other party. A reception control step for controlling reception of a request signal for requesting transmission of one third data among the third data obtained by further dividing the second data to be received into a predetermined number;
Obtaining the third data requested to be transmitted from the stored first data based on the request signal;
A program causing a computer to execute a transmission control step of controlling transmission of the acquired third data to the other party.
通信網を介して接続されている複数の送信装置と、それぞれの前記送信装置から送信されてくるデータを受信する受信装置とからなる情報処理システムにおいて、
前記受信装置は、
これから受信しようとする第1のデータを、予め定められた所定の大きさに分けた第2のデータをそれぞれ順番に受信する場合、次に受信しようとする前記第2のデータを、さらに接続されている前記送信装置のそれぞれに対応する第3のデータのそれぞれに分けることにより、前記第3のデータのそれぞれの送信を対応する前記送信装置のそれぞれに割り当てる割り当て手段と、
前記送信装置のそれぞれに割り当てた前記第3のデータのそれぞれの送信を要求する要求信号のそれぞれを、前記第3のデータに対応する前記送信装置にそれぞれ送信する送信手段と
を備え、
前記送信装置のそれぞれは、
前記第1のデータを記憶する記憶手段と、
前記受信装置から送信されてきた、前記要求信号を受信する受信手段と、
前記要求信号に基づいて、記憶している前記第1のデータから、送信が要求された前記第3のデータを取得する取得手段と、
取得した前記第3のデータを、前記受信装置に送信する送信手段と
を備え、
前記受信装置は、
前記送信装置のそれぞれから送信されてきた、前記第3のデータのそれぞれを受信する受信手段をさらに備える
ことを特徴とする情報処理システム。
In an information processing system including a plurality of transmission devices connected via a communication network and a reception device that receives data transmitted from each of the transmission devices,
The receiving device is:
When the first data to be received from now on and the second data divided into predetermined predetermined sizes are received in order, the second data to be received next is further connected. Allocating means for allocating each transmission of the third data to each of the corresponding transmitting devices by dividing each of the third data corresponding to each of the transmitting devices being
Transmission means for transmitting each request signal for requesting transmission of each of the third data assigned to each of the transmission devices to the transmission device corresponding to the third data,
Each of the transmitting devices
Storage means for storing the first data;
Receiving means for receiving the request signal transmitted from the receiving device;
Obtaining means for obtaining the third data requested to be transmitted from the stored first data based on the request signal;
Transmitting means for transmitting the acquired third data to the receiving device;
The receiving device is:
An information processing system, further comprising receiving means for receiving each of the third data transmitted from each of the transmitting devices.
JP2005057701A 2005-03-02 2005-03-02 Information processor and method, recording medium, program and information processing system Withdrawn JP2006244054A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005057701A JP2006244054A (en) 2005-03-02 2005-03-02 Information processor and method, recording medium, program and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005057701A JP2006244054A (en) 2005-03-02 2005-03-02 Information processor and method, recording medium, program and information processing system

Publications (1)

Publication Number Publication Date
JP2006244054A true JP2006244054A (en) 2006-09-14

Family

ID=37050421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005057701A Withdrawn JP2006244054A (en) 2005-03-02 2005-03-02 Information processor and method, recording medium, program and information processing system

Country Status (1)

Country Link
JP (1) JP2006244054A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008149030A (en) * 2006-12-19 2008-07-03 Honma Akio Multimedia data delivery method and game parlor image/sound delivery system
JP2009043129A (en) * 2007-08-10 2009-02-26 Brother Ind Ltd Distributed content storing system, content data acquiring method, node device, and node processing program
JP2009043128A (en) * 2007-08-10 2009-02-26 Brother Ind Ltd Content distributed storage system, content data acquisition method, node device, and node processing program
JP2013520119A (en) * 2010-02-19 2013-05-30 トムソン ライセンシング Adaptive streaming multipath delivery
JP2018023152A (en) * 2017-09-23 2018-02-08 Nl技研株式会社 Content reception device and content distribution device

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008149030A (en) * 2006-12-19 2008-07-03 Honma Akio Multimedia data delivery method and game parlor image/sound delivery system
JP2009043129A (en) * 2007-08-10 2009-02-26 Brother Ind Ltd Distributed content storing system, content data acquiring method, node device, and node processing program
JP2009043128A (en) * 2007-08-10 2009-02-26 Brother Ind Ltd Content distributed storage system, content data acquisition method, node device, and node processing program
JP2013520119A (en) * 2010-02-19 2013-05-30 トムソン ライセンシング Adaptive streaming multipath delivery
JP2016165134A (en) * 2010-02-19 2016-09-08 トムソン ライセンシングThomson Licensing Multipath delivery for adaptive streaming
US10034048B2 (en) 2010-02-19 2018-07-24 Thomson Licensing Dtv Multipath delivery for adaptive streaming
JP2018023152A (en) * 2017-09-23 2018-02-08 Nl技研株式会社 Content reception device and content distribution device

Similar Documents

Publication Publication Date Title
US11539768B2 (en) System and method of minimizing network bandwidth retrieved from an external network
JP4177757B2 (en) System and method for receiving multiple description media streams in fixed and mobile streaming media systems
JP4808925B2 (en) Method for distributing multiple description encoded media streams to servers in fixed and mobile systems
JP4713831B2 (en) Method for handing off a streaming media session between wireless base stations in a mobile streaming media system
JP4920220B2 (en) Receiver-driven system and method in peer-to-peer network
JP5058468B2 (en) Method for erasure resistant encoding of streaming media, media having computer-executable instructions for performing the method, and system
EP1633111B1 (en) A system and method for distributed streaming of scalable media
TWI408924B (en) Packet level prioritization in interconnection networks
KR101089562B1 (en) P2p live streaming system for high-definition media broadcasting and the method therefor
US20110219114A1 (en) Pod-based server backend infrastructure for peer-assisted applications
US20090106451A1 (en) Methods and systems for boosting streaming from a distributed storage system
JPH09294121A (en) Media server system and operation method therefor
JP2010522372A (en) Hierarchically clustered P2P streaming system
EP2005704A1 (en) Realtime media distribution in a p2p network
EP3207686B1 (en) Adaptive bit rates during broadcast transmission in distributed content delivery networks
JP2006244054A (en) Information processor and method, recording medium, program and information processing system
CN107251487B (en) Bandwidth distribution method and device in network and computer readable storage medium
WO2014068863A1 (en) Information processing device, information processing method and program
Malkawi et al. AN ENHANCED FIRST SEGMENT CACHING SCHEME (EFSCS) FOR MOBILE AD-HOC NETWORK BASED ON VIDEO ON DEMAND SYSTEM
Kariminasab A Simulation Study on Performance of Video-On-Demand Systems

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080513