JP2017049630A - Communication terminal, communication method, communication system, and program - Google Patents
Communication terminal, communication method, communication system, and program Download PDFInfo
- Publication number
- JP2017049630A JP2017049630A JP2015170046A JP2015170046A JP2017049630A JP 2017049630 A JP2017049630 A JP 2017049630A JP 2015170046 A JP2015170046 A JP 2015170046A JP 2015170046 A JP2015170046 A JP 2015170046A JP 2017049630 A JP2017049630 A JP 2017049630A
- Authority
- JP
- Japan
- Prior art keywords
- content
- communication terminal
- data
- message
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、通信端末等に関し、特に、通信ネットワークを利用してストリーム型のコンテンツを配信する通信端末等に関する。 The present invention relates to a communication terminal and the like, and more particularly to a communication terminal and the like that distributes stream-type content using a communication network.
近年、インターネットなどの通信媒体を介した音声や映像等のストリーム型コンテンツの配信サービスが普及している。このようなストリーム型コンテンツの配信および視聴方法として、クライアントサーバ型の配信方法とピアツーピア(P2P:Peer-to-Peer)型の配信方法とが利用されている。 In recent years, distribution services for stream-type contents such as audio and video via communication media such as the Internet have become widespread. As such a stream type content distribution and viewing method, a client server type distribution method and a peer-to-peer (P2P) type distribution method are used.
クライアントサーバ型配信では、ユーザのPC(Personal Computer)、スマートフォン、タブレット端末等の通信端末は、ストリーム型コンテンツの配信を実現するストリーミングサーバに接続し、当該サーバからストリーム型コンテンツのデータを配信、視聴する。このため、接続する通信端末の数が多くなればなるほど、ストリーミングサーバの負荷が高くなり、サーバの性能やネットワーク帯域が不足するという課題がある。 In client server type distribution, a communication terminal such as a user's PC (Personal Computer), a smartphone, or a tablet terminal is connected to a streaming server that realizes distribution of stream type content, and stream type content data is distributed and viewed from the server. To do. For this reason, there is a problem that as the number of communication terminals to be connected increases, the load on the streaming server increases, and the server performance and the network bandwidth are insufficient.
一方、P2P型の配信方法(P2Pストリーミング)では、各ユーザの通信端末はサーバのような配信装置に接続せず、通信端末同士がお互いにストリーム型コンテンツのデータを送受信し、ストリーミング型コンテンツの配信を実現する。具体的に、各通信端末は、ストリーム型コンテンツのデータを受信すると同時に再生しながら、当該データを蓄積し、必要に応じて他の端末へ配信する。これにより、サーバへ負荷が集中するクライアントサーバ型の配信方法に比べて、通信負荷を分散、軽減することが可能となる。 On the other hand, in the P2P type distribution method (P2P streaming), each user's communication terminal is not connected to a distribution device such as a server, and the communication terminals transmit and receive stream type content data to each other to distribute the streaming type content. To realize. Specifically, each communication terminal accumulates the data while receiving and reproducing the stream type content data, and distributes the data to other terminals as necessary. As a result, the communication load can be distributed and reduced as compared with the client-server type distribution method in which the load is concentrated on the server.
特許文献1は、携帯用通信端末(以下、通信端末と記載)等を用いたP2Pストリーミングにおいて、各通信端末が、自端末の再生開始時刻や映像品質等の要求条件に最適なコンテンツデータを保有する他の通信端末に、コンテンツデータの送信を要求する手法を開示する。当該手法では、各通信端末は、自端末の保有するストリーム型コンテンツデータの時間範囲と当該データのデータ損失に関する情報の少なくとも片方を他の通信端末に公開する。ストリーム型コンテンツの受信および再生を行いたい通信端末は、他の通信端末が公開している上記保有情報を元に、自身が要求する再生開始時刻や品質などの条件に最も合う通信端末を選択し、送信要求を行う。
特許文献2は、ユーザの意思でコンテンツ等を入手可能なマルチポップピアツーピア通信を行う手法を開示する。
特許文献3は、複数の情報処理装置が設置される環境において、無線アドホックネットワークを構成する各装置の位置情報に基づき、各装置間で情報を動的に共有する手法について開示する。
非特許文献1は、移動により通信端末同士が接近した際に、エピデミック法に基づいて記憶内容を示す情報を交換し、記憶内容を同期させる手法を開示する。図23は、エピデミック法によって記憶内容を同期させる通信システムの構成例を示す説明図である。図23に示すように、当該通信システムは、通信端末1および通信端末2を備える。通信端末1、2は、自端末が記憶しているコンテンツのリストであるサマリーベクタを含む制御メッセージを、隣接する通信端末1、2同士で周期的に送受信する。そして、各通信端末1、2は、自端末以外の通信端末から受信したサマリーベクタに基づいて、制御メッセージの送信元である通信端末に記憶されているコンテンツと、自通信端末が記憶しているコンテンツとの差分を検出する。図23に示す例では、通信端末1にコンテンツA、B、Cが記憶され、通信端末2にコンテンツA、Bが記憶されている。したがって、通信端末1に記憶されているコンテンツと通信端末2に記憶されているコンテンツとの差分はコンテンツCである。よって、通信端末2は、その差分を無くすために、制御メッセージの送信元である通信端末1に対し、コンテンツCの送信を要求する。通信端末1は、この要求に応じてコンテンツCを通信端末2に送信する。この処理により通信端末1、2に記憶されているコンテンツは同期される。
Non-Patent
上述したP2Pストリーミングのように、ストリーミングサーバを介さずに通信端末同士がお互いに直接ストリーム型コンテンツのデータ送受信を行うことを想定する。この想定の下では、自通信端末が要求するストリーム型コンテンツデータの全てを、自通信端末の近辺の他の通信端末(データ送信元通信端末)が保有していれば、この通信端末同士間で全てのデータを送受信することが可能である。しかしながら、当該他の通信端末が当該データの一部のみしか保有していない場合、自通信端末は、その他のコンテンツデータを保有する別の通信端末にデータ送信元を切り替えながら、当該コンテンツを受信および再生する必要がある。 As in the above-described P2P streaming, it is assumed that communication terminals directly transmit and receive data of stream type contents without using a streaming server. Under this assumption, if all of the stream type content data requested by the own communication terminal is held by another communication terminal (data transmission source communication terminal) in the vicinity of the own communication terminal, the communication terminals can communicate with each other. All data can be transmitted and received. However, when the other communication terminal has only a part of the data, the own communication terminal receives the content while switching the data transmission source to another communication terminal having other content data. Need to play.
特許文献1および非特許文献1に記載の手法は、各通信端末は自身の保有するストリーム型コンテンツデータの時間範囲を他の通信端末に公開している。しかしながら、当該手法では、連続するストリーム型コンテンツのデータを保有する通信端末が近辺に存在しない場合に、コンテンツの受信および再生を継続できないという問題がある。
In the methods described in
特許文献2に記載の手法は、ある通信端末からネットワーク中の他の通信端末までの経路上の通信端末とそのホップ数の管理方法について記載されているが、複数の通信端末中のある通信端末が保有するコンテンツに対して、当該コンテンツの保有端末と、当該コンテンツリストの送信元通信端末のうち、最適な組み合わせを選択することについては記載していない。
The method described in
特許文献2および特許文献3に記載の手法は、コンテンツに直接関係するコンテンツ名やコンテンツ時間範囲等の情報を端末間で送受信するが、当該コンテンツを自端末と他端末間で受信中であるか否かを判定してコンテンツの連続性を保つことについては考慮されていない。
The methods described in
本発明は、上記の問題点を解決するべくなされた。本発明は、通信ネットワークを経由したストリーム型コンテンツの配信において、当該コンテンツのストリームデータの連続性を考慮して最適なデータ要求先通信端末を選択することができる通信端末等を提供することを主たる目的とする。 The present invention has been made to solve the above problems. The present invention mainly provides a communication terminal capable of selecting an optimum data request destination communication terminal in consideration of the continuity of stream data of the content in the distribution of stream-type content via a communication network. Objective.
上記の課題を解決するために、本発明の第1の観点は、自通信端末が保有するコンテンツの識別子、コンテンツの保有データ範囲およびコンテンツの受信状態を示す情報を備えるコンテンツリストを少なくとも1つ含む制御メッセージを作成するメッセージ作成部と、
制御メッセージを自通信端末以外の通信端末に対して送信させるよう指示し、且つ、自通信端末以外の外部通信端末から受信する制御メッセージから、外部通信端末が保有するコンテンツリストを取得し、
外部通信端末から自通信端末が保有するコンテンツの送信要求を受けると、当該コンテンツのデータを外部通信端末に送信するよう指示し、
外部通信端末が保有するコンテンツの再生要求を自通信端末が受けると、当該コンテンツのデータを外部通信端末に要求する、
メッセージ管理部と、
外部通信端末に要求したコンテンツのデータの少なくとも一部を受信した場合、当該コンテンツに対応するコンテンツリストを作成または更新するよう指示し、
自通信端末に対するコンテンツの再生要求に応じて外部通信端末からコンテンツのデータを受信し、当該データを再生させる、
コンテンツ管理部
とを備える通信端末である。
In order to solve the above-described problem, the first aspect of the present invention includes at least one content list including information indicating content identifiers, content data ranges, and content reception states held by the communication terminal. A message creation unit for creating a control message;
Instructing a communication terminal other than its own communication terminal to transmit a control message, and obtaining a content list held by the external communication terminal from a control message received from an external communication terminal other than its own communication terminal,
When receiving a transmission request for content held by the own communication terminal from the external communication terminal, an instruction is given to transmit the data of the content to the external communication terminal.
When the own communication terminal receives a playback request for content held by the external communication terminal, the external communication terminal is requested for data of the content.
A message manager;
When receiving at least part of the requested content data from the external communication terminal, instructing to create or update a content list corresponding to the content,
In response to a content reproduction request to the own communication terminal, content data is received from the external communication terminal, and the data is reproduced.
A communication terminal including a content management unit.
本発明の第2の観点は、上記に記載の通信端末を複数備え、
複数の通信端末の各々は、制御メッセージを送受信しあい、送受信した制御メッセージを基に、通信端末の各々が保有するコンテンツのデータを送受信しあう、
通信システムである。
A second aspect of the present invention includes a plurality of communication terminals described above,
Each of the plurality of communication terminals transmits and receives control messages, and based on the transmitted and received control messages, transmits and receives content data held by each of the communication terminals.
It is a communication system.
本発明の第3の観点は、自通信端末が保有するコンテンツの識別子、コンテンツの保有データ範囲およびコンテンツの受信状態を示す情報を備えるコンテンツリストを少なくとも1つ含む制御メッセージを作成し、
制御メッセージを自通信端末以外の通信端末に対して送信させるよう指示し、且つ、自通信端末以外の外部通信端末から受信する制御メッセージから、外部通信端末が保有するコンテンツリストを取得し、
外部通信端末から自通信端末が保有するコンテンツの送信要求を受けると、当該コンテンツのデータを外部通信端末に送信するよう指示し、
外部通信端末が保有するコンテンツの再生要求を自通信端末が受けると、当該コンテンツのデータを外部通信端末に要求し、
外部通信端末に要求したコンテンツのデータの少なくとも一部を受信した場合、当該コンテンツに対応するコンテンツリストを作成または更新するよう指示し、
自通信端末に対するコンテンツの再生要求に応じて外部通信端末からコンテンツのデータを受信し、当該データを再生させる、
通信方法である。
A third aspect of the present invention is to create a control message including at least one content list including information indicating content identifiers held by the communication terminal, content holding data ranges, and content reception states,
Instructing a communication terminal other than its own communication terminal to transmit a control message, and obtaining a content list held by the external communication terminal from a control message received from an external communication terminal other than its own communication terminal,
When receiving a transmission request for content held by the own communication terminal from the external communication terminal, an instruction is given to transmit the data of the content to the external communication terminal.
When the self-communication terminal receives a reproduction request for the content held by the external communication terminal, it requests the data of the content from the external communication terminal,
When receiving at least part of the requested content data from the external communication terminal, instructing to create or update a content list corresponding to the content,
In response to a content reproduction request to the own communication terminal, content data is received from the external communication terminal, and the data is reproduced.
It is a communication method.
本発明の第4の観点は、コンピュータに、
自通信端末が保有するコンテンツの識別子、コンテンツの保有データ範囲およびコンテンツの受信状態を示す情報を備えるコンテンツリストを少なくとも1つ含む制御メッセージを作成し、
制御メッセージを自通信端末以外の通信端末に対して送信させるよう指示し、且つ、自通信端末以外の外部通信端末から受信する制御メッセージから、外部通信端末が保有するコンテンツリストを取得し、
外部通信端末から自通信端末が保有するコンテンツの送信要求を受けると、当該コンテンツのデータを外部通信端末に送信するよう指示し、
外部通信端末が保有するコンテンツの再生要求を自通信端末が受けると、当該コンテンツのデータを外部通信端末に要求し、
外部通信端末に要求したコンテンツのデータの少なくとも一部を受信した場合、当該コンテンツに対応するコンテンツリストを作成または更新するよう指示し、
自通信端末に対するコンテンツの再生要求に応じて外部通信端末からコンテンツのデータを受信し、当該データを再生させる
処理を実行させるプログラムである。
A fourth aspect of the present invention relates to a computer.
Creating a control message including at least one content list including information indicating content identifiers held by the communication terminal, content data ranges, and content reception states;
Instructing a communication terminal other than its own communication terminal to transmit a control message, and obtaining a content list held by the external communication terminal from a control message received from an external communication terminal other than its own communication terminal,
When receiving a transmission request for content held by the own communication terminal from the external communication terminal, an instruction is given to transmit the data of the content to the external communication terminal.
When the self-communication terminal receives a reproduction request for the content held by the external communication terminal, it requests the data of the content from the external communication terminal,
When receiving at least part of the requested content data from the external communication terminal, instructing to create or update a content list corresponding to the content,
This is a program for receiving content data from an external communication terminal in response to a content reproduction request to the own communication terminal and executing processing for reproducing the data.
本発明によれば、通信ネットワークを経由したストリーム型コンテンツの配信において、当該コンテンツのストリームデータの連続性を考慮して最適なデータ要求先通信端末を選択することができる通信端末等を提供することができる。 According to the present invention, it is possible to provide a communication terminal or the like that can select an optimum data request destination communication terminal in consideration of the continuity of stream data of the content in the distribution of the stream type content via the communication network. Can do.
次に図面を参照して、本発明の実施形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。ただし、図面は本発明の実施形態における構成を模式的に表している。更に以下に記載される本発明の実施形態は一例であり、その本質を同一とする範囲において適宜変更可能である。 Next, an embodiment of the present invention will be described with reference to the drawings. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals. However, the drawings schematically show the configuration of the embodiment of the present invention. Furthermore, the embodiment of the present invention described below is an example, and can be appropriately changed within a range in which the essence is the same.
<本発明の第1の実施形態>
(通信システム)
本発明の第1の実施形態に係る通信システム10について図1を参照して説明する。本発明の第1の実施形態に係る通信システムでは、ストリーミングサーバを介さずに通信端末同士がお互いに直接ストリーム型コンテンツのデータを送受信する。この場合、ストリーム型コンテンツを保有する通信端末が一部のデータのみしか保有していない場合、当該ストリーム型コンテンツを要求する通信端末は、当該コンテンツのデータを受信および再生しながら、当該データを送信する他の通信端末に要求元を切り替えて、このコンテンツのデータを連続して受信および再生する。
<First Embodiment of the Present Invention>
(Communications system)
A
図1に示す通信システム10は、同様の構成を有する通信端末100a〜100hを備えている。この内、通信端末100a、100b、100cおよび100dは、無線通信可能な位置に存在し、通信端末100aがあるストリーム型コンテンツを連続再生したいとする。以下の様に通信端末100b、100c、100dは、各々ストリーム型コンテンツの一部を有しているとする。
・通信端末100bがストリーム型コンテンツの開始から100秒後までのデータを保有、
・通信端末100cがストリーム型コンテンツの開始150秒後から200秒後までのデータを保有、
・通信端末100dがストリーム型コンテンツの開始20秒後から95秒後までのデータを保有。
A
-The
-The
The
この時、ストリーム型コンテンツを再生したい通信端末100aは、まず通信端末100bに対してストリーム型コンテンツのデータ送信を要求し、100秒後までのデータを受信および再生する。しかし、コンテンツの開始から100秒が経過した直後のデータ(100秒後からのデータ)を保有している通信端末が存在しないため、続きのデータを連続して受信することができない。従って、通信端末100aは、コンテンツの連続性を犠牲(即ち、例えば、開始100秒から150秒までのコンテンツをスキップする)にして通信端末100cに対して続きのデータの送信を要求するか、あるいはそこで当該コンテンツの受信および再生をあきらめざるを得ない。
At this time, the
しかし、もし通信端末100cおよび通信端末100dが継続して当該コンテンツのデータを受信しているならば、通信端末100aは少し(例えば、5秒)待つことで、当該コンテンツの開始から100秒後以降のデータを通信端末100dから受信することが可能となる。
However, if the
また、通信可能範囲の制約等により通信端末100aは直接通信できないが、通信端末100dは直接通信可能な通信端末100eが存在し、当該通信端末100eが当該コンテンツの開始から100秒後以降のデータを保有していた場合、通信端末100aは通信端末100dを経由して、当該コンテンツの続きのデータを受信および再生することが可能である場合もある。このように、次に再生すべきデータを保有する通信端末に通信を切り替える際に、最も消失データが少なく、かつ、将来の切り替え頻度が小さくなる通信端末を選択することで、連続してコンテンツを視聴することが可能となる。このような機能を実行する本発明の第1の実施形態に係る通信端末について以下に説明する。
Further, the
(通信端末)
本発明の第1の実施形態に係る各通信端末100a〜100h(以下、これらを纏めて通信端末100と記載することがある)は、無線通信機能を有する。無線通信機能は、無線LAN(Local Area Network)、例えば、Wi−Fi(Wireless Fidelity、登録商標)通信に接続する機能である。本実施形態では、通信システム10に含まれている各通信端末100は、例えば、アドホックモード(IEEE 802.11無線LANの動作モードのひとつで、それぞれの端末に設置された無線LANのアダプタが、互いに直接通信をする方式)で互いの間の通信が可能である。この他、各通信端末100の間は、有線通信ネットワークを介して互いに通信するように構成されていてもよい。
(Communication terminal)
Each of the
各通信端末100は、自通信端末(以下の説明においては自通信端末を「通信端末100a」と記載する)以外の通信端末100b〜100h(以下の説明においては自通信端末100a以外の通信端末を「他の通信端末100′」と記載する)との間で、自通信端末100aが保有するコンテンツを他の通信端末100′に周知させるための制御メッセージ(図3参照)と、コンテンツのデータとを送受信しあう。
Each
本実施形態に係る通信端末100の構成例を図2に示す。通信端末100は、入出力部110、コンテンツ表示部120、コンテンツ配信制御部130、記憶部140および通信部150を備える。
A configuration example of the
入出力部110は、通信端末100に備え付けられたディスプレイ、タッチパネル、カメラ、マイク、ソフトウェアキーボードおよびタッチパネル等の入出力装置である。これらの入出力装置は有線又は無線を介して通信端末100と接続されている。
The input /
記憶部140は、ハードディスク、内部メモリ等の記憶媒体である。図2に示すように記憶部140は、「通信端末情報」141と、コンテンツのデータ(不図示)およびこれに対応する「コンテンツ情報」142とを記憶する。通信端末情報141は、コンテンツのデータを送受信しあう他の通信端末100′を識別するための情報(図4参照)である。コンテンツ情報142は、自通信端末100aが保有するコンテンツに関する情報(図5参照)である。尚、コンテンツは、音声や映像等のストリーム型のデータファイルであってもよいし、ストリーム型データの一部であってもよい。また、コンテンツは、入出力部110のカメラやマイクを通して撮影、録音されているデータの一部であってもよい。
The
尚、通信端末情報141とコンテンツ情報142は、通信端末100同士間で送受信する制御メッセージ134a(図3参照)の基となる情報である。制御メッセージ134aには通信端末識別子とコンテンツリストとが含まれている。詳細は後述する。
The
図4に、通信端末情報141のデータ構成例を示す。通信端末情報141は、自通信端末100aとの間で無線通信により通信可能な他の通信端末100′に関する情報である。通信端末情報141は、「通信端末識別子」141A、「有効期限」141Bおよび「コンテンツリスト」141Cを備える。
FIG. 4 shows a data configuration example of the
通信端末識別子141Aは、通信端末情報141の送信元である通信端末100を特定可能な識別子(例えば、IPアドレスやユーザ名、通信端末名)である。通信端末識別子141Aは、制御メッセージ(図3参照)に含められる。
The
有効期限情報141Bは、通信端末情報141の有効期限を示す。有効期限情報141Bは、例えば、制御メッセージを受信した日時から所定時間T経過後の日時を示す情報である。コンテンツ配信制御部130は、有効期限情報141Bによって示される日時が到来すると、メッセージ管理部135に、有効期限が到来した(失効した)通信端末情報141を記憶部140から削除させる。所定時間Tを長くし過ぎると、自通信端末100aとの間で通信不可能となった後も、過去に通信していた他の通信端末100′に関する不要な通信端末情報141が記憶部140に記憶され続ける。通信不可能になる場合とは、自通信端末100aと、自通信端末100aが記憶する通信端末識別子141Aに対応する他の通信端末100′との少なくとも片方が移動して、無線LANの通信可能範囲から逸脱してしまう場合等である。逆に、所定時間Tを短くし過ぎると、自通信端末100aとの間で通信可能な状態でも、通信中の他の通信端末100′に関する必要な通信端末情報141が記憶部140から削除される。したがって、所定時間Tは、制御メッセージの送信周期よりも長い時間であることが好ましい。
The
コンテンツリスト141Cは、通信端末識別子141Aに紐付られた他の通信端末100′が保有するコンテンツリストである。
The
図5にコンテンツ情報142のデータ構成例を示す。コンテンツ情報142は、各通信端末100自らが保有する全てのコンテンツ毎に紐付られた「コンテンツ識別子」142A、「保有データ範囲」142Bおよび「受信状態情報」142C等である。
FIG. 5 shows a data configuration example of the
コンテンツ識別子142Aは、コンテンツのデータ送信元である他の通信端末100′が保有するコンテンツ識別子である。
The
保有データ範囲142Bは、コンテンツ毎に、コンテンツのデータ内で保有しているデータの範囲を示す。この範囲は、例えば、当該データのうち、先頭データからの最小のオフセットと最大のオフセットとの組で表すことができる。例えば、自通信端末100aがコンテンツAのデータとして、オフセットとして1000バイトから4999バイトのデータを保有している場合、保有データ範囲142Bとして、1000から4999として記憶する。この際、コンテンツAのデータオフセット1000バイトから4999バイトの一部のデータが、通信中に何らかの理由によりパケットを受け取ることができず、欠落している場合も上記のように記憶する。
The retained
なお、映像コンテンツの場合、MPEG(Moving Picture Experts Group)方式の映像データ圧縮技術が使われることが多い。この圧縮技術では、映像コンテンツを、Iフレーム(Intra Picture)、Pフレーム(Predictive Picture)、Bフレーム(Bidirectionally Predictive Picture)、又は、それらを一定の個数にまとめたGOP(Group Of Picture)単位で圧縮処理する。このため、これらフレームおよびGOPに予め識別子を付与し、これらの識別子を用いて保有データの範囲を指定することもできる。 In the case of video content, MPEG (Moving Picture Experts Group) video data compression technology is often used. With this compression technology, video content is compressed in I frame (Intra Picture), P frame (Predictive Picture), B frame (Bidirectionally Predictive Picture), or GOP (Group Of Picture) unit that combines them into a certain number. Process. For this reason, identifiers can be assigned to these frames and GOPs in advance, and the range of retained data can be specified using these identifiers.
上記のような手法で、保有データ範囲142Bは、各通信端末100が互いに保有しているコンテンツのデータ範囲を認識し、一部のデータが欠落していた場合も認識可能とする。しかしこの手法は一例であり、その他の手法を用いてもよい。
With the above-described method, the retained
受信状態情報142Cは、自通信端末100aが、あるコンテンツを他の通信端末100′から受信中であるか否かを示す情報である。自通信端末100aは、他の通信端末100′からコンテンツを受信中に、当該コンテンツの受信が停止したことを検知する。受信状態情報としては、例えば、フラグを利用する。この場合、コンテンツの受信が開始されれば‘1’(受信中)、コンテンツの受信を停止すると‘0’(受信中でない)のフラグを立てる。
The
受信状態情報142Cを用いて、コンテンツの受信停止を検知するには様々な手法がある。例えば、1)コンテンツ受信中の自通信端末100aが、当該コンテンツの送信停止を通知する「停止通知メッセージ」を受信する。2)コンテンツ受信中の自通信端末100aが、当該コンテンツの送信元である他の通信端末100′に対して、当該コンテンツの送信停止を要求する「停止要求メッセージ」を送信する。3)当該コンテンツを送受信中の通信端末100同士の間が、少なくとも片方の移動により双方向通信可能な最大距離より離れることで、当該コンテンツのデータ送受信が一定時間以上停止している場合、当該通信端末100同士の少なくとも受信側の通信端末100にこの停止状態を検知する機能を備えさせ(タイマー等)データ送受信の停止を検知する。
There are various methods for detecting the reception stop of content using the
通信部150は、自通信端末100aと他の通信端末100′との間で、ネットワーク処理や無線LAN通信におけるアドホックモード等を実行するモジュールである。これらのモジュールは、例えば、OS(Operating System)のカーネルによって制御されるTCP(Transmission Control Protocol)やUDP(User Datagram Protocol)等に関するトランスポート層の処理、IP(Internet Protocol)等に関するネットワーク層の処理およびMAC(Media Access Control)等に関する処理を行う。
The
コンテンツ配信制御部130は、データ送受信部131、コンテンツリスト作成部132、コンテンツ管理部133、メッセージ作成部134およびメッセージ管理部135を備える。
The content
データ送受信部131は、自通信端末100aと他の通信端末100′との間で、通信部150を介して、データの送受信を行い、当該送受信の際にデータ種類の判別を行う。
The data transmission /
データ送受信部131は、コンテンツの送受信を行う。即ち、自通信端末100aが保有するコンテンツのデータを他の通信端末100′に送信し、他の通信端末100′が保有するコンテンツのデータを自通信端末100a側で受信する。
The data transmitter /
データ送受信部131は、自通信端末100aと他の通信端末100′との間で使用される様々なメッセージを送受信する。例えば、データ送受信部131は、自通信端末100aと他の通信端末100′との間で、通信部150を介して、制御メッセージの送受信を定期的に行う。即ち、自通信端末100aが生成した制御メッセージ134aを他の通信端末100′に送信し、他の通信端末100′が生成した制御メッセージ134aを自通信端末100a側で受信する。この他、データ送受信部131は、コンテンツ要求メッセージ、停止要求メッセージ、停止通知メッセージ等に対しても同様の処理を行う。
The data transmitter /
コンテンツリスト作成部132は、自通信端末100aが保有するコンテンツの情報を示すコンテンツリスト(図3参照)を作成する。
The content
コンテンツ管理部133は、コンテンツを管理する。具体的には、コンテンツ管理部133は、データ送受信部131を介して、コンテンツを他の通信端末100′との間で送受信する。コンテンツ管理部133は、データ送受信部131が受信するコンテンツのデータを記憶部140に格納(更新)する。またはデータ送受信部131が他の通信端末100′に送信すべきデータを記憶部140から取り出す。
The
コンテンツ管理部133は、記憶部140に記憶されているコンテンツおよびコンテンツ情報142を、コンテンツ表示部120を介して入出力部110に表示させる。
The
コンテンツ管理部133は、メッセージ管理部135を介して、他の通信端末100′からコンテンツ要求メッセージを受信すると、送信要求されているコンテンツの保有データ範囲の先頭オフセットからのデータを記憶部140から読み出し、データ送受信部131を介して送信する。このとき、コンテンツ要求メッセージには、所望の配信データ開始位置が含められていてもよい。当該配信データ開始位置が含まれたコンテンツ要求メッセージを受信すると、コンテンツ管理部133は、当該開始位置から記憶部140内のコンテンツのデータを読み出す。
When the
コンテンツ管理部133は、コンテンツのデータを記憶部140に記憶させながら、記憶部140に記憶されている当該コンテンツのコンテンツ情報142を更新する。この際、当該コンテンツのコンテンツ情報142が記憶されていなければ、当該コンテンツに対するコンテンツ情報142を生成し、記憶部140に記憶させる。また、コンテンツ管理部133は、受信したデータをコンテンツ表示部120に引き渡す。
The
また、コンテンツのデータを送信中の通信端末100のコンテンツ管理部133は、当該コンテンツに関する自身の保有データの最後まで送信してしまった場合など、データの送信を停止する場合には、メッセージ作成部134に当該データの停止通知メッセージを作成させる。
In addition, when the
また、コンテンツ管理部133は、受信しているコンテンツのデータ送信元である通信端末100からのデータ受信が一定時間停止すると、当該送信元の通信端末100との接続が切断されたと判断し、受信が停止したと判断する。この場合、停止通知メッセージの受信と同様、コンテンツ管理部133は当該コンテンツに対するコンテンツ情報142の受信状態情報を「受信中でない」に変更する。コンテンツ管理部133は、受信が停止した場合、コンテンツ情報142の受信状態情報を「受信中でない」に変更すると同時に、受信が停止したことをコンテンツ表示部120に通知し、入出力部110にコンテンツのデータ受信および再生が停止したことを表示するよう指示する。
In addition, when the data reception from the
コンテンツ管理部133は、コンテンツのデータ受信および再生中に、入出力部110を介してユーザから当該コンテンツの再生を停止する指示を受けると、このデータの受信を停止する。この場合コンテンツ管理部133は、メッセージ作成部134に当該コンテンツのデータ送信元である他の通信端末100′に送信する停止要求メッセージの作成を依頼する。また、コンテンツ管理部133は、コンテンツ表示部120に、入出力部110に対し、コンテンツのデータ再生停止を表示するよう指示する。
When the
停止要求メッセージを受信した他の通信端末100′のコンテンツ管理部133は、当該コンテンツのデータ送信を停止する。なお、停止要求メッセージを受信した通信端末100のコンテンツ管理部133は、当該メッセージを受信したことを示す確認応答メッセージを停止要求メッセージの送信元である通信端末100に返信し、停止要求メッセージの送信元である通信端末100は、その確認応答メッセージを受信した時点で、コンテンツのデータ送信が停止したと判断してもよい。
The
コンテンツ表示部120は、コンテンツのデータを再生し、入出力部110に表示させる。なお、このデータの送受信において、データ受信を行う通信端末100のコンテンツ管理部133がパケットのロスなどにより一部のデータの欠落を検知した場合は、当該コンテンツの送信元である通信端末100に対して、当該欠落データの再送要求を行っても良い。このような再送処理は、ACK(Acknowledgement;確認応答)やNACK(Negative ACK;否定応答)などを用いた方法が一般的に知られており、これらの方法を用いることで実現できるため、処理の詳細については省略する。
The
メッセージ作成部134は、通信端末100間で使用される様々なメッセージ、例えば制御メッセージ、コンテンツ要求メッセージ、停止要求メッセージおよび停止通知メッセージ等を作成する。
The
制御メッセージ134aの構成例を図3に示す。制御メッセージ134aは、「通信端末識別子」と「コンテンツリスト」とを備える。通信端末識別子は、自通信端末100aを特定可能な識別子であり、図4に示す通信端末情報141の通信端末識別子141Aと同じ情報であって良い。コンテンツリストは保有するコンテンツのデータに関する情報であり、通信端末100が複数のコンテンツを保有する場合、コンテンツ毎に対応するコンテンツ識別子、保有データ範囲、受信状態情報を生成する。例えば、保有コンテンツ総数がMである場合、通信端末100は、コンテンツ#1、コンテンツ#2、…、コンテンツ#M(図3参照)のように全てのコンテンツに対応するリストを作成する。メッセージ作成部134に作成された制御メッセージ134aは、データ送受信部131により隣接する通信端末100に送信される。制御メッセージ134aは、ブロードキャストで送信されてもよい。
A configuration example of the control message 134a is shown in FIG. The control message 134a includes a “communication terminal identifier” and a “content list”. The communication terminal identifier is an identifier that can identify the
コンテンツ要求メッセージは、自通信端末100aに必要なコンテンツのデータを他の通信端末100′に対して要求するためのメッセージである。
The content request message is a message for requesting other communication terminal 100 'for content data necessary for the
停止要求メッセージは、自通信端末100aで再生不要となったデータの送信の停止の依頼を、当該コンテンツのデータ送信元である他の通信端末100′に通知するためのメッセージである。
The stop request message is a message for notifying another
停止通知メッセージは、自通信端末100aが保有し且つ他の通信端末100′に送信中の場合に、他の通信端末100′にこのコンテンツのデータ送信を停止する旨を通知する為のメッセージである。
The stop notification message is a message for notifying the other communication terminal 100 'that data transmission of this content is to be stopped when the
メッセージ管理部135は、自通信端末100aと他の通信端末100′との間で送受信するメッセージの管理を行う。
The
メッセージ管理部135は、他の通信端末100′が送信した制御メッセージを受信すると、当該制御メッセージから送信元の通信端末識別子と、コンテンツリストとを抽出する。更に、メッセージ管理部135は、抽出した通信端末識別子およびコンテンツリストを基に、以下の処理を行う。
When the
すなわち、メッセージ管理部135は、制御メッセージの送信元である他の通信端末100′が保有するコンテンツのコンテンツ識別子、保有データ範囲および受信状態情報を、入出力部110(ディスプレイ)に表示させるようコンテンツ表示部120に指示する。そして、メッセージ管理部135は、抽出した通信端末識別子、前述した有効期限情報、および、受信した制御メッセージに含まれるコンテンツリストを含む通信端末情報141を生成して記憶部140に記憶する。更に、メッセージ管理部135は、有効期限情報141Bに記された有効期限が到来した(失効した)通信端末情報141を、失効日時に記憶部140から消去する。
That is, the
メッセージ管理部135は、制御メッセージを送信する所定のタイミングに、メッセージ作成部134に制御メッセージの作成を依頼する。更に、メッセージ管理部135は、生成された制御メッセージを隣接する他の通信端末100′へ対して送信させるようデータ送受信部131に依頼する。制御メッセージは、所定の周期、または、例えば、新たなコンテンツを登録した時、受信した時など必要に応じて、繰り返し送信される。
The
メッセージ管理部135は、受信中のコンテンツのデータ送信元である通信端末100に対して、当該データの送信を停止することを要求するメッセージ(停止要求メッセージ)を作成するよう、メッセージ作成部134に指示する。また、メッセージ管理部135は、データ送受信部131が他の通信端末100′から受信中のコンテンツのデータ送信を停止することを通知するメッセージ(停止通知メッセージ)を受信したことを検知すると、当該コンテンツに対応する記憶部140のコンテンツ情報142の受信状態情報を「受信中でない」に変更する。
The
メッセージ管理部135は、コンテンツリストを所定条件で分割し、分割後のコンテンツリストを含む制御メッセージをそれぞれメッセージ作成部134に作成させてもよい。例えば、複数のコンテンツのうちの一部のコンテンツについてのコンテンツリストを含む制御メッセージと、残りのコンテンツについてのコンテンツリストを含む制御メッセージ等である。なお、メッセージ管理部135は、分割したコンテンツリストを含む制御メッセージの送信をデータ送受信部131に指示する場合に、付加的情報を当該制御メッセージに含ませるようメッセージ作成部134に指示する。付加的情報とは、コンテンツリストが分割されていることを示す情報や、当該制御メッセージに含まれているコンテンツリストが、いくつに分割されたうちの何番目であるのかをそれぞれ示す情報等である。メッセージ管理部135が制御メッセージにそのような情報を含ませることにより、複数の制御メッセージに含まれるコンテンツリストによって、自通信端末100aの記憶部140に記憶されている全コンテンツ、その保有データ範囲および受信状態情報を、他の通信端末100′に通知することができる。
The
メッセージ管理部135は、新たに生成した通信端末情報141と同じ通信端末識別子を有する通信端末情報141が記憶部140に記憶されている場合には、更新処理を行ってもよい。更新処理とは、メッセージ管理部135が、既に記憶されている古い通信端末情報141の内容を新たな通信端末情報141の内容によって更新することである。
When the
メッセージ管理部135は、他の通信端末100′からコンテンツ要求メッセージを受信すると、当該コンテンツ要求メッセージをコンテンツ管理部133に送信し、コンテンツのデータ送信を促す。
When the
コンテンツ表示部120は、自通信端末100aまたは他の通信端末100′が保有しているコンテンツ名と当該コンテンツの保有通信端末識別子、当該通信端末の保有データ範囲、受信状態情報の一覧を入出力部110に表示する。また、コンテンツ表示部120は、ユーザからの受信および再生等の指示を受け付けるためのユーザインタフェースを提供する。
The
図6は、コンテンツ表示部120が入出力部110に表示させる表示画面例を示す図である。当該表示画面は、視聴領域120a、コンテンツ一覧領域120bおよび視聴コンテンツ名領域120cを含む。
FIG. 6 is a diagram illustrating an example of a display screen displayed on the input /
コンテンツ一覧領域120bは、自通信端末100aと他の通信端末100′とが保有するコンテンツ毎のコンテンツ名、当該コンテンツを保有する通信端末の識別子、当該通信端末が保有するデータ範囲、受信状態情報を表示する。これらの情報は、所定動作をトリガとして又は一定間隔毎にコンテンツ管理部133が更新した情報である。
The
所定動作をトリガとする場合は、メッセージ管理部135が他の通信端末100′から受信した制御メッセージを基に、記憶部140内の当該他の通信端末100′に対応する通信端末情報141の更新を行ったことをトリガとして行う。あるいは、コンテンツ管理部133がコンテンツのデータ受信、または受信停止を検知し、記憶部140に記憶されている当該コンテンツのコンテンツ情報142を更新したことをトリガとして行う。一定時間間隔毎に実行する場合は、コンテンツ表示部120がコンテンツ配信制御部130にデータの更新を問い合わせ、更新されたデータを読み込んで表示する。
When the predetermined operation is used as a trigger, the
ユーザは、コンテンツ一覧領域120b(即ち、各通信端末100が備えるコンテンツ、データ範囲、受信状態情報)を参照し、受信および再生したいコンテンツを有する通信端末100を選択する。この選択の結果、視聴領域120aにその画像、映像(コンテンツプレビューを含む)の少なくとも一部が表示される。更にユーザが当該画面において再生操作を行うことによりその映像は再生される。なお、この際、受信および再生したいコンテンツを自通信端末が保有していれば、自通信端末が補修するデータを再生する。
The user refers to the
再生操作とは、視聴領域120aに表示される再生アイコン(不図示)へのタップ処理等を指す。
The reproduction operation refers to a tap process on a reproduction icon (not shown) displayed in the
ユーザに選択された通信端末100がコンテンツの要求に応答し、このコンテンツのデータを送信すると、自通信端末100aにおいて当該データを受信し、コンテンツ表示部120が受信したデータを再生して、視聴領域120aに表示する。上記の処理により、ユーザは所望するコンテンツの視聴が可能になる。
When the
コンテンツ表示部120は、記憶部140に記憶されている通信端末情報141およびコンテンツ情報142の保有データ範囲を基に、視聴領域120aに、再生中のコンテンツの経過時間等を表示してもよい。コンテンツ表示部120は、コンテンツの再生を開始すると、視聴コンテンツ名領域120cにおいて視聴中のコンテンツ名や、コンテンツの配信元である通信端末識別子、当該配信元である通信端末の受信状態情報等を表示してもよい。
The
また、コンテンツの受信および再生中に、当該コンテンツの配信元である通信端末100からコンテンツ管理部133が停止通知メッセージを受信することがある。これは配信中のデータが、配信元である通信端末100が保有するデータ範囲の上限に達する時等に発生する。この場合、コンテンツ管理部133は受信停止の旨をコンテンツ表示部120に通知し、コンテンツ表示部120はこの通知を入出力部110に表示する。
In addition, during the reception and reproduction of content, the
これにより、ユーザは視聴中コンテンツの再生が停止されることを事前に把握することができ、続きのデータを保有する他の通信端末100′をコンテンツ一覧領域120bから選択し、選択した他の通信端末100′に対して続きのデータの送信を要求することができる。なお、入出力部110はユーザからコンテンツの受信および再生の停止操作(指示)を受けることがある。停止操作は、視聴領域120aに表示される停止アイコン(不図示)へのタップ処理等を指す。停止指示を受けると、コンテンツ表示部120はコンテンツ配信制御部130にコンテンツのデータ受信を停止する旨を通知し、コンテンツ配信制御部130は、停止要求メッセージをコンテンツのデータ送信元である他の通信端末100′に送信する。
As a result, the user can grasp in advance that the reproduction of the content being viewed is stopped, select another
(通信端末の動作)
次に、本発明の第1の実施形態の通信端末100の動作について説明する。
(Operation of communication terminal)
Next, operation | movement of the
まず、本発明の第1の実施形態の通信端末100が、制御メッセージ、コンテンツ要求メッセージ、停止通知メッセージ、停止要求メッセージ、コンテンツデータを受信した場合、または、コンテンツの受信中においてある一定時間データの受信が止まったことを検知するためのタイマーが発動した場合の動作を説明する。なお、本発明の第1の実施形態の通信端末100においては、コンテンツ配信制御部130のデータ送受信部131は、所定の周期、または必要に応じて、繰り返し制御メッセージを送信する。制御メッセージの内容については、既に説明を行っているのでここでは説明を省略する。
First, when the
図7は、本発明の第1の実施形態の通信端末100が、上述した各種メッセージを受信、またはタイマーが発動した際の動作を示すフローチャートである。
FIG. 7 is a flowchart showing an operation when the
通信端末100の通信部150は、物理層(PHY)において、フレーム(データ)の受信を検知すると、MAC層や、IP層、トランスポート層などのネットワークプロトコル処理に従い、コンテンツ配信制御部130のデータ送受信部131にデータを入力する。データ送受信部131は、通信部150から入力されたデータを組み立てて、当該データが上述した各種メッセージのいずれのメッセージに応じたデータであるか否かを確認し、データ種別に応じて図7に示す動作を行う。また、コンテンツ配信制御部130のコンテンツ管理部133は、コンテンツ受信中においてデータの受信が一定時間停止することを検知するためのタイマーを用いるが、このタイマーが発動した、即ち規定の時間を経過した場合も、図7に示す動作を行う。
When the
まず、ステップA1において、通信端末100のデータ送受信部131(図2参照)は、通信部150から受信したデータが制御メッセージであるか否かを確認する。受信したデータが制御メッセージである場合(ステップA1のYes)、データ送受信部131は、受信した制御メッセージをメッセージ管理部135に渡し、処理はステップA2に進められる。また、受信したデータが制御メッセージでない、あるいはデータ受信が停止したことを検知するタイマーが発動した場合(ステップA1のNo)、処理はステップA3に進められる。
First, in step A1, the data transmitting / receiving unit 131 (see FIG. 2) of the
ステップA2において、制御メッセージを受信したメッセージ管理部135は、当該制御メッセージの送信元である他の通信端末100′の通信端末情報141を生成し、生成した通信端末情報141を記憶部140に格納する。メッセージ管理部135は、記憶部140に既に同じ通信端末識別子を有する通信端末情報141が格納されている場合、当該通信端末情報141の有効期限情報およびコンテンツリストの更新を行い、更新した情報をコンテンツ表示部120に通知して、処理はステップA9に進められる。
In step A2, the
ステップA3において、データ送受信部131は、通信部150から受信したデータがコンテンツのデータであるか否かを確認する。受信したデータがコンテンツのデータである場合(ステップA3のYes)、データ送受信部131は、受信したデータをコンテンツ管理部133に渡し、処理はステップA4に進められる。また、受信したデータがコンテンツのデータでない、あるいはデータ受信が停止したことを検知するタイマーが発動した場合(ステップA3のNo)、処理はステップA6に進められる。
In step A3, the data transmitting / receiving
ステップA4において、コンテンツ管理部133は、受信したコンテンツのデータを記憶部140に記憶する。また、コンテンツ管理部133は、記憶部140内の当該コンテンツに対応するコンテンツ情報142(図5参照)の保有データ範囲を更新し、受信状態状況が「受信中でない(例えば、‘0’)」であれば、これを「受信中(例えば、‘1’)」に変更する。コンテンツ管理部133は、記憶部140内に当該コンテンツに対応するコンテンツ情報142が無ければ、新たにコンテンツ情報142を作成する。さらに、コンテンツ管理部133は、受信しているコンテンツの保有データ範囲、受信状態情報について、変更があればコンテンツ表示部120に通知し、コンテンツ表示部120はその情報を入出力部110に表示する。この際、コンテンツ管理部133は、当該コンテンツの再生処理を行う必要があれば、受信したコンテンツのデータもコンテンツ表示部120に送信する。なお、コンテンツ表示部120におけるコンテンツの再生処理は、MPEG等の映像データ圧縮技術を用いた再生処理であり、既存の技術を用いて行うため、詳細な説明は省略する。
In step A4, the
ステップA5において、コンテンツ管理部133は、当該コンテンツのデータ受信が予め定められた一定時間の間停止することを検知するため、タイマーをセットし、処理はステップA6に進められる。このようなタイマーを用いたタイムアウト処理は、既存の技術を用いて行うため、詳細な説明は省略するが、先に受信したデータメッセージに対するタイマーが起動している場合は、それをリセットすることも含む。
In step A5, the
ステップA6において、データ送受信部131は、通信部150から受信したデータが停止通知メッセージであるか否かを確認する。受信したデータが停止通知メッセージである場合(ステップA6のYes)、データ送受信部131は、受信した停止通知メッセージをメッセージ管理部135に渡し、処理はステップA7に進められる。また、受信したデータが停止通知メッセージでない、あるいはデータ受信が停止したことを検知するタイマーが発動した場合(ステップA6のNo)、処理はステップA8に進められる。
In step A6, the data transmission /
ステップA7において、メッセージ管理部135は停止通知メッセージを受信すると、当該停止通知メッセージの送信元である通信端末100からのコンテンツのデータ送信が停止することを検知し、記憶部140に記憶された当該コンテンツに対するコンテンツ情報142の受信状態情報を「受信中でない」に変更し、更新した受信状態情報をコンテンツ表示部120に通知し、処理はステップA9に進められる。
In step A7, when the
ステップA8において、コンテンツ管理部133は、ステップA5においてセットしているタイマーが予め設定された一定時間を経過すると、コンテンツのデータ受信が停止したと判断する。具体的には、データ送受信部131が各種メッセージを受信せず、このタイマーが発動した場合(ステップA8のYes)、コンテンツ管理部133は受信中のデータが一定時間到着しなかったことから、コンテンツのデータ送信元である通信端末100との接続が切断されたと判断し、受信が停止したと判断する。この場合、停止通知メッセージの受信と同様、コンテンツ管理部133は当該コンテンツに対するコンテンツ情報142の受信状態情報を「受信中でない」に変更し、ステップA7と同様、更新した受信状態情報をコンテンツ表示部120に通知し、処理はステップA9に進められる。一方、ステップA5においてセットしているタイマーが予め設定された一定時間を経過していない場合(ステップA8のNo)、処理はステップA10に進められる。
In step A8, the
ステップA9において、データ送受信部131から他の通信端末100′の保有するコンテンツ情報、または、コンテンツ管理部133からコンテンツの受信状況などの情報が通知されると、コンテンツ表示部120は、それらの情報を入出力部110に表示し、処理はステップA10に進められる。具体的な表示方法については、図6で説明した表示方法と同様であるため、ここでは詳細な説明は省略する。
In step A9, when the content information held by the
ステップA10において、データ送受信部131は、通信部150から受信したデータがコンテンツ要求メッセージであるか否かを確認する。受信したデータがコンテンツ要求メッセージである場合(ステップA10のYes)、データ送受信部131は、受信したコンテンツ要求メッセージをメッセージ管理部135に入力し、処理はステップA11に進められる。また、受信したデータがコンテンツ要求メッセージでない場合(ステップA10のNo)、処理はステップA12に進められる。
In step A10, the data transmission /
ステップA11において、メッセージ管理部135はコンテンツ要求メッセージを受信すると、当該メッセージに格納されているコンテンツ要求メッセージの送信元である通信端末識別子、コンテンツ識別子、及び送信データ開始位置を確認し、これらをコンテンツ管理部133に通知する。コンテンツ管理部133は、記憶部140に記憶されている当該コンテンツ識別子に対応するコンテンツのデータのうち、送信データ開始位置からのデータを読み出し、コンテンツ要求メッセージの送信元である通信端末100に対して、データ送受信部131、通信部150を介して送信を開始し、処理はステップA12に進められる。このようなデータの送受信については、UDPやTCPなどの一般的な通信プロトコルを用いてデータの送受信を行っても良いし、コンテンツ管理部133が独自にACKやNACKを用いて信頼性のある方法で送受信を行っても良い。なお、本処理においてコンテンツのデータ送受信が開始されると、図7に示すフローチャートの処理とは独立に当該送受信通信端末間でデータの送受信が継続される。
In step A11, when the
図7には図示しないが、コンテンツ管理部133は、データの送信中に保有データの最後まで送信してしまった場合や、通信端末の電源を切るためなど、コンテンツのデータ送信を終了する場合は、当該データの送信先通信端末に対して停止通知メッセージを送信し、コンテンツのデータ送信を停止することができる。
Although not shown in FIG. 7, the
ステップA12において、データ送受信部131は、通信部150から受信したデータが停止要求メッセージであるか否かを確認する。受信したデータが停止要求メッセージである場合(ステップA12のYes)、データ送受信部131は、受信した停止要求メッセージをメッセージ管理部135に入力し、処理はステップA13に進められる。また、受信したデータが停止要求メッセージでない場合(ステップA12のNo)、処理を終了する。
In step A12, the data transmission /
ステップA13において、メッセージ管理部135は停止要求メッセージを受信すると、当該メッセージの送信元である通信端末100との間で送受信を行っているコンテンツのデータ送信処理を停止するようコンテンツ管理部133に指示し、処理を終了する。なお、停止要求メッセージには、送信処理を停止したいコンテンツ識別子や送信元通信端末の識別子が格納されている。さらに、メッセージ管理部135は、当該メッセージを受信したことを示す確認応答メッセージを停止要求メッセージの送信元の通信端末100に返信してもよい。
In step A13, when the
以上、自通信端末100aが保有するコンテンツを、他の通信端末100′に対して送信する場合について説明した。次は、自通信端末100aが、他の通信端末100′が保有するコンテンツを受信する場合について説明する。図8は、本発明の第1の実施形態に係る通信端末100がコンテンツの受信を要求する場合の動作を示すフローチャートである。
The case where the content held by the
ステップB1において、自通信端末100aのデータ送受信部131は、現在、他の通信端末100′からコンテンツのデータを受信中か否かを確認する。他の通信端末100′から当該データを受信中である場合(ステップB1のYes)、処理はステップB2に進められる。他の通信端末100′から当該データを受信していない場合(ステップB1のNo)、処理はステップB5に進められる。
In step B1, the data transmitting / receiving
ステップB2において、自通信端末100aは、現在受信および再生中のコンテンツのデータ受信を停止する。具体的には、入出力部110に表示されている画面に、例えば、停止ボタンを提示し、ユーザが当該ボタンに接触、押下する等して停止指示を受信するか、あるいは、ユーザに当該ボタンに接触、押下等するように促し、ユーザから停止指示を受信することで、実行される。入出力部110はユーザから停止指示が出されたことを、コンテンツ表示部120を介して、コンテンツ配信制御部130のメッセージ作成部134に入力する。メッセージ作成部134は、ユーザからの停止指示を受け取ると、受信中のデータの送信停止を依頼するための停止要求メッセージを作成する。作成された停止要求メッセージは、データ送受信部131および通信部150を介して、当該コンテンツのデータ送信元の通信端末100に対して送信され、処理はステップB3に進められる。なお、停止要求メッセージには、自通信端末100aの識別子(停止要求元である通信端末の識別子)と、停止を要求するコンテンツを識別可能な情報とが少なくとも含まれる。
In step B2, the
ステップB3において、停止要求メッセージを送信後、コンテンツ管理部133は、当該コンテンツのデータ受信は停止したと判断し、記憶部140に記憶された当該コンテンツに対するコンテンツ情報142の受信状態情報を「受信中」から「受信中でない」に変更する。コンテンツ管理部133は、上記の受信停止処理が完了したことをコンテンツ表示部120に通知し、処理はステップB4に進められる。
In step B3, after transmitting the stop request message, the
なお、停止要求メッセージを受信した他の通信端末100′のメッセージ管理部135は、当該停止要求メッセージを受信したことを表す確認応答メッセージを、停止要求メッセージの送信元である他の通信端末100′に返信する。尚、停止要求メッセージを送信した自通信端末100aは、その確認応答メッセージを受信した時点で、コンテンツのデータ送信が停止したと判断してもよい。
Note that the
ステップB4において、コンテンツのデータ受信停止処理が完了したことをコンテンツ管理部133から通知されたコンテンツ表示部120は、当該コンテンツの受信が正しく停止したことを入出力部110に表示し、処理はステップB5に進められる。
In step B4, the
ステップB5において、コンテンツ表示部120は、入出力部110のコンテンツ一覧領域120bにコンテンツリストを表示し、ユーザが所望のコンテンツと当該コンテンツのデータを保有する他の通信端末100′を選択するよう促す。ユーザがコンテンツと当該データを保有する他の通信端末100′とを選択すると、コンテンツ表示部120は選択された情報を読み取り、コンテンツ管理部133に通知する。この後、処理はステップB6に進められる。
In step B5, the
この際、コンテンツ表示部120は、当該他の通信端末100′が保有しているコンテンツのデータ範囲の中から送信を希望する配信データ開始位置をユーザが指定できるような入力欄を入出力部110に表示させ、そこに入力された配信データ開始位置情報を読み取ってコンテンツ管理部133に通知してもよい。
At this time, the
ステップB6において、コンテンツ管理部133は、メッセージ作成部134に、所望のコンテンツのデータを保有する他の通信端末100′に対し、所望のデータを、保有データの先頭オフセットから送信するように要求するコンテンツ要求メッセージを作成するよう依頼する。メッセージ作成部134は、作成したコンテンツ要求データを、依頼する他の通信端末100′に送信する。
In step B6, the
尚、このコンテンツ要求データの送信後、コンテンツ配信制御部130は、当該データの受信が開始されるのを待機し、受信が始まれば図7に示した処理(ステップA1〜A13)を行う。
After the transmission of the content request data, the content
コンテンツ表示部120から配信データ開始位置の通知を受ける場合には、メッセージ管理部135は、その開始位置もコンテンツ要求メッセージに含めるようメッセージ作成部134に依頼する。また、コンテンツ管理部133は、予め設定された一定時間を待っても当該コンテンツ要求メッセージを基に要求するコンテンツのデータパケットを受信しない場合は、何らかの原因でコンテンツ要求メッセージが送信先の他の通信端末100′に届かなかったものと判断し、コンテンツのデータ受信が始まらないことをコンテンツ表示部120に通知し、コンテンツ表示部120はこの通知を入出力部110に表示する。これにより、再度、コンテンツの要求を行うようユーザに促す。
When receiving the notification of the distribution data start position from the
本発明の第1の実施形態に係る通信端末は、通信ネットワークを経由したストリーム型コンテンツの配信において、当該コンテンツのストリームデータの連続性を考慮して最適なデータ要求先通信端末を選択することができる。即ち、自通信端末100aにて再生したい所望コンテンツのデータを保有する送信元の通信端末100を切り替える際に、最も消失データが少なく、かつ、将来の切り替え頻度が小さくなる通信端末100を選択することができる。これにより、自通信端末100aは、安定的にデータを受信し、コンテンツを視聴することができる。
The communication terminal according to the first embodiment of the present invention may select an optimum data request destination communication terminal in consideration of the continuity of stream data of the content in the distribution of the stream type content via the communication network. it can. That is, when switching the
本実施形態では、通信端末100は、制御メッセージに含めるコンテンツリストにおける各コンテンツに対して、当該コンテンツの作成、あるいは登録した通信端末識別子の情報を含めて送信し、コンテンツ表示部120は当該情報を入出力部110に表示させてもよい。この場合、ユーザは、コンテンツを作成、登録した通信端末を優先的に選択することができる。
In the present embodiment, the
<本発明の第2の実施形態>
第1の実施形態では、隣接する通信端末100からコンテンツの配信元通信端末として最も適切な通信端末を選択することができた。第2の実施形態では、隣接する通信端末に隣接する通信端末をも含めたネットワーク内に存在する全ての通信端末から、コンテンツの配信元通信端末として最も適切な通信端末を選択することを可能とする通信端末等について説明する。
<Second Embodiment of the Present Invention>
In the first embodiment, the most appropriate communication terminal can be selected as the content distribution source communication terminal from the
図9は、本発明の第2の実施形態に係る通信端末200の複数から構成される通信システムを示す図である。複数の通信端末200を区別するために、図9中の4つの通信端末200を、各々通信端末200a、200b、200c、200dと記載する。通信端末200a〜200dは、各々コンテンツA、B、C、Dを保有している。また、通信端末200a、200b、200cは、互いに通信可能範囲1Aに存在している(図中の点線の円は各通信端末の通信可能範囲を示す)。通信端末200b、200c、200dは互いに通信可能範囲1Bに存在している。この場合、通信端末200a、200dの間は直接制御メッセージを送受信することは不可能であるが、互いに隣接し合う通信端末200b、200cを介せば、制御メッセージを送受信し、ひいては、コンテンツのデータ送受信が可能となる。以下、このような実施形態を可能とする通信端末200について詳細に説明する。
FIG. 9 is a diagram illustrating a communication system including a plurality of
(通信端末)
本発明の第2の実施形態に係る通信端末200の構成例を図10に示す。通信端末200は、入出力部110、コンテンツ表示部220、コンテンツ配信制御部230、記憶部240および通信部150を備える。尚、コンテンツ表示部220、コンテンツ配信制御部230および記憶部240以外の構成は、第1の実施形態と同様であるため、図2と同じ符号を付して、説明を省略する。また、説明の便宜の為、自通信端末は「自通信端末200a」、自通信端末200aに隣接する他の通信端末(図9に示す通信端末200b、200c)には「隣接する通信端末200′」、自通信端末200aには隣接しないが他の通信端末200′には隣接する通信端末(図9に示す通信端末200d)は「非隣接通信端末200″」と記載する。
(Communication terminal)
FIG. 10 shows a configuration example of the
記憶部240は、通信端末情報241とコンテンツ情報242とを記憶する。
The
通信端末情報241は、隣接する他の通信端末200′から送信される制御メッセージを受信した際に生成され、記憶部240に格納される。具体的に、通信端末情報241は、第1の実施形態と同様に、通信端末識別子141Aと、有効期限情報141Bとを含む。なお、第1の実施形態においては(図4参照)コンテンツリストが含まれていたが、本実施形態における通信端末情報241には、コンテンツリストは含まれない。コンテンツリストはコンテンツ情報242として記憶される(図12参照)。
The
コンテンツ情報242について説明する。第1の実施形態における通信端末情報141は、隣接する他の通信端末100′が送信する制御メッセージを受信した場合に、図4に示すような通信端末情報141として記憶部140に格納する。この際、図4に示す通信端末情報141のコンテンツリスト141Cは、当該制御メッセージの送信元通信端末が保有するコンテンツリストである。これに対し、第2の実施形態における通信端末情報241は、隣接する通信端末200′が送信する制御メッセージを受信すると、図11に示す通信端末情報241として記憶部240に格納される。図11は、通信端末200の記憶部240に記憶される通信端末情報241の構成例を示す。他の通信端末200′から制御メッセージを受信した自通信端末200aは、図11に示すような通信端末情報241を生成し、記憶部240に格納する。なお、第1の実施形態における通信端末情報141では、さらにコンテンツリストが含まれていたが、本実施形態における通信端末情報241ではコンテンツリストは含まず、コンテンツリストは後述するコンテンツ情報242として記憶する。
The
第1の実施形態におけるコンテンツ情報142は、自通信端末200aが保有するコンテンツに関する情報である。それに対し、第2の実施形態におけるコンテンツ情報242は、自通信端末200aが保有するコンテンツに関するものだけでなく、受信した隣接の通信端末200からの制御メッセージに含まれるコンテンツ情報も含められる。
The
コンテンツ情報242は、自通信端末200aが隣接する他の通信端末200′からコンテンツのデータまたは制御メッセージを受信したときに更新される。
The
具体的に、コンテンツ情報242は、「コンテンツ識別子」142Aと、「保有通信端末リスト」242Dとを備える。保有通信端末リスト242Dは、「通信端末識別子」、「保有通信端末識別子」、「保有データ範囲」および「受信状態情報」を含む。コンテンツ情報242はコンテンツ毎に存在する。具体的には、コンテンツ情報242は、自通信端末200aが保有する全てのコンテンツおよび隣接する通信端末200′から受信する制御メッセージ(図13参照)のコンテンツリストに含まれる全てのコンテンツの各々に対し存在する。
Specifically, the
「通信端末識別子」は、制御メッセージを受信した場合の当該制御メッセージの送信元である通信端末の識別子である。自通信端末200aが保有するコンテンツである場合は、自通信端末の識別子となる。
The “communication terminal identifier” is an identifier of the communication terminal that is the transmission source of the control message when the control message is received. When the content is owned by the
「保有通信端末識別子」は、当該コンテンツを保有する通信端末の識別子である。制御メッセージを受信した場合は、その制御メッセージ内のコンテンツリストに含まれる保有通信端末識別子である。自通信端末200aが保有するコンテンツの場合には、自通信端末の識別子である。
The “owned communication terminal identifier” is an identifier of a communication terminal that holds the content. When the control message is received, it is the possessed communication terminal identifier included in the content list in the control message. In the case of content held by the
「保有データ範囲」は、保有通信端末識別子に紐付られた通信端末200が保有するデータ範囲である。
The “held data range” is a data range held by the
「受信状態情報」は、保有通信端末識別子に紐付られた通信端末200が当該コンテンツのデータを受信中であるか否かを示す情報である。
“Reception status information” is information indicating whether or not the
保有データ範囲および受信状態情報に関しては、第1の実施形態と同様であるため説明を省略する。 Since the retained data range and the reception state information are the same as those in the first embodiment, description thereof is omitted.
コンテンツ配信制御部は230、データ送受信部231、コンテンツリスト作成部232、コンテンツ管理部233、メッセージ作成部234およびメッセージ管理部235を備える。尚、コンテンツ管理部233、メッセージ作成部234およびメッセージ管理部235以外の構成は第1の実施形態と同様であるため、説明は省略する。
The content delivery control unit includes a data transmission /
メッセージ作成部234について説明する。第1の実施形態において、メッセージ作成部134は、自通信端末100aが保有するコンテンツ毎に、保有データ範囲と当該コンテンツを受信中か否かを示す受信状態情報とを組にしたコンテンツリストを有する制御メッセージ134a(図3参照)を作成する。
The
これに対して、本実施形態のメッセージ作成部234は、自通信端末200aが保有するコンテンツ毎および隣接する通信端末200′が保有するコンテンツ毎に、保有データ範囲と受信状態情報とを組にしたコンテンツリストを有する制御メッセージ234a(図12参照)を作成する。制御メッセージ234aに含める保有通信端末リストは、自通信端末200aのコンテンツ情報242(図12参照)の内の、保有通信端末リスト242Dを基に作成される。
On the other hand, the
コンテンツ管理部233は、コンテンツのデータの受信を開始すると、当該データが自通信端末200a宛てか、隣接する通信端末200′宛てかを判断する。自通信端末200a宛ての場合、コンテンツ管理部233は、当該データをコンテンツ表示部220に引き渡す。隣接通信端末200′宛ての場合、コンテンツ管理部233は、受信したコンテンツのデータをコンテンツ要求メッセージの送信元である隣接通信端末200′に送信するようデータ送受信部231に指示する。
When the
コンテンツ管理部233は、隣接する通信端末200′に送信したコンテンツは自通信端末200aが要求したコンテンツではないことを示す情報を、その基となるコンテンツ要求メッセージの送信元通信端末識別子と共に記憶部240に格納する(不図示)。
The
メッセージ管理部235について説明する。第1の実施形態におけるメッセージ管理部135は、自通信端末100a宛のコンテンツ要求メッセージや停止要求メッセージを受信し、受信したメッセージの内容に応じた処理を行う。また、メッセージ管理部135は、自通信端末100aが送信中のコンテンツを停止する場合、当該コンテンツを受信中の他の通信端末100′に対して、その送信を停止することを通知するようメッセージ作成部234に指示を出す。
The
これらの処理に加えて、本実施形態のメッセージ管理部235は、自通信端末200aが保有していないコンテンツのコンテンツ要求メッセージを受信した場合、当該コンテンツを保有する隣接する通信端末200′または当該コンテンツの保有端末について制御メッセージで通知してきた隣接する通信端末200′に対して、コンテンツ要求メッセージを送信するようメッセージ作成部234に指示する。
In addition to these processes, when the
コンテンツの停止要求メッセージを受信した場合、メッセージ管理部235は、当該コンテンツは自通信端末200aが要求したコンテンツであるか否かを、記憶部240に格納された転送情報を基に判断し、自通信端末200aが要求したコンテンツでなければ、当該コンテンツを要求するコンテンツ要求メッセージの送信先である隣接通信端末200′に対して、停止通知メッセージを転送するようデータ送受信部231に指示する。同様に、停止通知メッセージを受信した場合、メッセージ管理部235は、当該コンテンツは自通信端末200aが要求したコンテンツであるか否かを記憶部240に格納された転送情報を基に判断し、自通信端末200aが要求したコンテンツでなければ、当該コンテンツを要求するコンテンツ要求メッセージの送信元である隣接通信端末200′に対して、停止通知メッセージを転送するようデータ送受信部231に指示する。
When receiving the content stop request message, the
ここで、各通信端末200が所定周期または必要に応じて互いに送受信する「制御メッセージ」について説明する。図13は、第2の実施形態における制御メッセージ234aの構成例を示す図である。制御メッセージは、「通信端末識別子」と「コンテンツリスト」とを含む。尚、図11〜13において、同じデータ項目名を有するデータの内容は同じである。
Here, the “control message” transmitted and received between the
通信端末識別子は、通信端末情報241を基に作成される。
The communication terminal identifier is created based on the
コンテンツリストは、コンテンツ毎に「コンテンツ識別子」と「保有通信端末リスト」とを備える。保有通信端末リストは「保有通信端末識別子」、「保有データ範囲」、「受信状態情報」を備える。保有通信端末リストは、コンテンツ情報242(図12参照)を基に作成される。 The content list includes a “content identifier” and a “owned communication terminal list” for each content. The owned communication terminal list includes “owned communication terminal identifier”, “retained data range”, and “reception status information”. The owned communication terminal list is created based on the content information 242 (see FIG. 12).
ここで、コンテンツ情報242の作成例1について図14を用いて説明する。通信端末200c(図9参照)が制御メッセージを隣接する通信端末200aに送信した場合に、通信端末200aのメッセージ管理部235はコンテンツ情報242を作成する。図9に示す通信端末200cは、通信端末200a、200dが送信した制御メッセージを受信しているものとすると、通信端末200cが送信する制御メッセージに、自らが保有するコンテンツCだけでなく、コンテンツA、Dの情報を含めて他の通信端末200′に送信する。この制御メッセージを受信した通信端末200aのメッセージ管理部235は、自らが保有しているコンテンツAに加えて、通信端末200cから受信した制御メッセージに含まれているコンテンツの情報をコンテンツ情報242に加える。この際、コンテンツAは通信端末200aが保有しているコンテンツであり、通信端末識別子、保有通信端末識別子は共に“200a”であることから、コンテンツAについては更新しない。また、メッセージ管理部235は、新たに通知を受けたコンテンツC、Dについては、通信端末200cから受信した制御メッセージに含まれるコンテンツ識別子と保有通信端末識別子の通りとし、通信端末識別子は当該制御メッセージの送信元通信端末である“200c”とする。また、メッセージ管理部235は、コンテンツCを保有するのは通信端末200c、コンテンツDを保有するのは通信端末200dであるため、コンテンツ情報242の保有通信端末識別子をコンテンツCは“200c”、コンテンツDは“200d”と入力する。
Here, creation example 1 of the
次に、上記の作成例1の後、更に制御メッセージが送信された場合のコンテンツ情報242の作成例2について図15を参照して説明する。作成例1の後に、通信端末200b(図9参照)が制御メッセージを隣接する通信端末200aに送信すると、通信端末200aのメッセージ管理部235はコンテンツ情報242を更新する。
Next, creation example 2 of the
通信端末200bは、通信端末200a、200c、200dが送信した制御メッセージを受信していることから、自らが送信する制御メッセージに、通信端末200bが保有するコンテンツBだけでなく、コンテンツA、C、Dの情報を含めて送信する。この制御メッセージを受信した通信端末200aのメッセージ管理部235は、自らが保有しているコンテンツAに加えて、通信端末200bから受信した制御メッセージに含まれているコンテンツの情報をコンテンツ情報242に加える。この際、メッセージ管理部235は、コンテンツAについては、通信端末識別子、保有通信端末識別子は共に自通信端末を示す“200a”であることから、コンテンツAについては更新しない。また、メッセージ管理部235は、コンテンツCについても、通信端末識別子、保有通信端末識別子が共に“200c”であり、制御メッセージを直接受信できる自通信端末200aに対し隣接する通信端末200′が保有しているコンテンツであるため、更新しない。コンテンツBは、新たに通知を受けたコンテンツであることから、メッセージ管理部235は、通信端末識別子、保有通信端末を“200b”と入力して新たに追加する。コンテンツDについては、通信端末識別子が図14に示す“200c”から図15に示す“200b”に変更されたため、メッセージ管理部235は、保有通信端末は通信端末200dのまま、最新の情報として通信端末識別子を“200b”に更新する。
このように、コンテンツ情報242の作成にあたっては、隣接する通信端末200′から制御メッセージを受信すると、制御メッセージに含まれる各コンテンツに対して、コンテンツ情報242の保有端末リストに含まれる保有通信端末識別子と保有通信端末識別子を確認する。その結果、当該コンテンツのコンテンツ情報242の保有端末リストに含まれる通信端末識別子と保有通信端末識別子が同一であれば当該情報は更新しない。また、制御メッセージに含まれるコンテンツの保有通信端末識別子と当該コンテンツのコンテンツ情報242の保有端末リストに含まれる保有通信端末識別子が同一の情報であれば、新たに受信した制御メッセージの送信元通信端末の識別子を通信端末識別子として更新する。これにより、常に最新の情報をコンテンツ情報242として管理することができる。
Since the
As described above, when the
また、同一のコンテンツであっても保有通信端末識別子がコンテンツ情報242で管理されていない通信端末200が保有していれば、同一のコンテンツに対して当該情報も管理する。なお、通信端末情報241で管理している通信端末の有効期間が切れた場合、当該通信端末が通信端末識別子として管理されているコンテンツ情報242についても有効期間が切れたものとし、無効な情報として扱う。
Further, even if the content is the same, if the
コンテンツ表示部220は、自通信端末200および隣接する他の通信端末200′が保有するコンテンツ名、当該コンテンツの保有通信端末識別子、当該保有通信端末の保有データ範囲および受信状態情報から成る一覧を入出力部110(ディスプレイ等)に表示する。また、コンテンツ表示部220は、ユーザからのコンテンツの受信、再生および再生停止要求などを受け付けるためのユーザインタフェースを提供する。これに加え、本実施形態におけるコンテンツ表示部220は、コンテンツ情報242に紐付られた全てのコンテンツ(非隣接通信端末200″が保有するコンテンツも含む)の一覧を、入出力部110に表示する。
The
具体的にコンテンツ表示部220は、コンテンツ一覧領域120b(図6参照)に、コンテンツ情報242(図12参照)のコンテンツ識別子142Aに紐付られたコンテンツと、保有通信端末リスト242Dに含まれる通信端末識別子、保有データ範囲および受信状態情報を表示する。受信状態情報は、「受信中」、「非受信中」、「受信可能」という3つの状態で表される。この際、「受信中でない」には自通信端末200aがコンテンツを保有していることも含まれる。
Specifically, the
ここで、「受信可能」な状態のコンテンツとは、保有通信端末リスト242Dにおける「通信端末識別子」と「保有通信端末識別子」とが一致しないコンテンツである。例として、図9を再度参照すると、自通信端末200aが欲するコンテンツを、隣接する他の通信端末200bまたは200cは、当該保有データ範囲の当該コンテンツを受信あるいは保有していないが、その通信端末200b、200cを経由して、隣接しない通信端末200dから当該コンテンツのデータを受信することが可能であることを意味する。
Here, the content in the “receivable” state is content in which “communication terminal identifier” and “owned communication terminal identifier” in the owned
自通信端末200aのユーザが受信および再生したいコンテンツとして、「受信可能」なコンテンツの通信端末200dを選択した場合、自通信端末200aは、先ず、隣接する通信端末200b、あるいは200cにコンテンツ要求メッセージを送信し、このコンテンツ要求メッセージを受けた通信端末200b、あるいは200cが、更に隣接する通信端末200dに対してコンテンツ要求メッセージを送信する。このようにデータ配信は、ホップバイホップで送信される。ポップとは、ある通信端末100から次の通信端末100へデータを渡すことを指す(この場合、通信端末200bから次の通信端末200c)。データを保有する通信端末からデータを所望する通信端末へデータを引き渡す際には、複数の通信端末がポップ処理を行うことがある。この引き渡し回数を通信ポップ数と呼ぶ。
When the user of the self-
コンテンツ要求メッセージを受けた通信端末200dは、保有するコンテンツのデータをホップバイホップ送信し、自通信端末200aは当該データを受信することが可能となる。
Upon receiving the content request message, the
(通信端末の動作)
本発明の第2の実施形態の通信端末200の動作について説明する。本実施形態の通信端末200の動作では、図7に示す本発明の第1の実施形態の通信端末が各種メッセージを受信、またはタイマーが発動した動作を示すフローチャートにおけるステップA2、ステップA9、ステップA10のYes以降の処理が異なる。
(Operation of communication terminal)
Operation | movement of the
図16Aおよび図16Bは、本発明の第2の実施形態に係る通信端末200が各種メッセージを受信、またはタイマーが発動した際の動作を示すフローチャートである。
16A and 16B are flowcharts showing an operation when the
まず、図16Aに示すステップA1において、通信端末200のデータ送受信部231(図10参照)は、通信部150から受信したデータが制御メッセージであるか否かを確認する。受信したデータが制御メッセージである場合(ステップA1のYes)、データ送受信部231は、受信した制御メッセージをメッセージ管理部235に渡し、処理はステップA14に進められる。また、受信したデータが制御メッセージでない、あるいはデータ受信が停止したことを検知するタイマーが発動した場合(ステップA1のNo)、処理はステップA3に進められる。
First, in step A1 shown in FIG. 16A, the data transmitting / receiving unit 231 (see FIG. 10) of the
ステップA14において、データ送受信部231から制御メッセージを受信したメッセージ管理部235は、当該制御メッセージの送信元の通信端末200に対応する通信端末情報241を生成し、記憶部240に格納する。またはメッセージ管理部235は、記憶部240に記憶されている通信端末情報241に含まれる有効期限情報の更新を行う。
In step A14, the
コンテンツ管理部233は、受信した制御メッセージに含まれるコンテンツリストの情報から、記憶部240に記憶されているコンテンツ情報242の更新を行う。コンテンツ管理部233は、更新した情報をコンテンツ表示部120に通知し、処理はステップA15に進められる。尚、コンテンツ情報242の更新方法については、後述する。
The
ステップA3において、データ送受信部231は、通信部150から受信したデータがコンテンツのデータであるか否かを確認する。受信したデータがコンテンツのデータである場合(ステップA3のYes)、データ送受信部231は、受信したデータをコンテンツ管理部233に渡し、処理はステップA4に進められる。また、受信したデータがコンテンツのデータでない、あるいはデータ受信が停止したことを検知するタイマーが発動した場合(ステップA3のNo)、処理はステップA6に進められる。
In step A3, the data transmission /
ステップA4において、コンテンツ管理部233は、受信したコンテンツのデータを記憶部240に記憶する。また、コンテンツ管理部233は、記憶部240内の当該コンテンツに対応するコンテンツ情報242(図12参照)の保有データ範囲を更新し、受信状態状況を変更する。コンテンツ管理部233は、記憶部240内に当該コンテンツに対応するコンテンツ情報242が無ければ、新たにコンテンツ情報242を作成する。さらに、コンテンツ管理部233は、受信しているコンテンツの保有データ範囲、受信状態情報について、変更があればコンテンツ表示部220に通知し、コンテンツ表示部220はその情報を入出力部110に表示する。この際、コンテンツ管理部233は、当該コンテンツの再生処理を行う必要があれば、受信したコンテンツのデータもコンテンツ表示部220に送信する。
In step A4, the
ステップA5において、コンテンツ管理部233は、当該コンテンツのデータ受信が予め定められた一定時間の間停止することを検知するため、タイマーをセットし、処理はステップA6に進められる。
In step A5, the
ステップA6において、データ送受信部231は、通信部150から受信したデータが停止通知メッセージであるか否かを確認する。受信したデータが停止通知メッセージである場合(ステップA6のYes)、データ送受信部231は、受信した停止通知メッセージを、メッセージ管理部235を介してコンテンツ管理部233に渡し、処理はステップA7に進められる。また、受信したデータが停止通知メッセージでない、あるいはデータ受信が停止したことを検知するタイマーが発動した場合(ステップA6のNo)、処理はステップA8に進められる。
In step A6, the data transmitting / receiving
ステップA7において、コンテンツ管理部233は、受信した停止通知メッセージの送信元である通信端末100からのコンテンツのデータ送信が停止することを検知し、記憶部240に記憶された当該コンテンツに対するコンテンツ情報242の受信状態情報を「受信中でない」に変更し、更新した受信状態情報をコンテンツ表示部220に通知し、処理はステップA15に進められる。
In step A <b> 7, the
ステップA8において、コンテンツ管理部233は、ステップA5においてセットしているタイマーが予め設定された一定時間を経過すると、コンテンツのデータの受信が停止したと判断する。具体的には、データ送受信部231が各種メッセージを受信せず、このタイマーが発動した場合(ステップA8のYes)、コンテンツ管理部233は受信中のコンテンツのデータが一定時間到着しなかったことから、当該データの送信元である通信端末200との接続が切断されたと判断し、受信が停止したと判断する。この場合、停止通知メッセージの受信と同様、コンテンツ管理部233は当該コンテンツに対するコンテンツ情報242の受信状態情報を「受信中でない」に変更し、更新した受信状態情報をコンテンツ表示部220に通知し、処理はステップA15に進められる。一方、ステップA5においてセットしているタイマーが予め設定された一定時間を経過していない場合(ステップA8のNo)、処理はステップA10に進められる。
In step A8, the
ステップA15において、データ送受信部231からコンテンツ情報242またはコンテンツ管理部233からコンテンツの受信状態情報が通知されると、コンテンツ表示部220は、それらの情報を入出力部110に表示し、処理はステップA10に進められる。具体的な表示方法については、第1の実施形態における表示方法と同様であるため、ここでは詳細な説明は省略する。
In step A15, when the
図16Bに示すステップA10において、データ送受信部231は、通信部150から受信したデータがコンテンツ要求メッセージであるか否かを確認する。受信したデータがコンテンツ要求メッセージである場合(ステップA10のYes)、データ送受信部231は、受信したコンテンツ要求メッセージをメッセージ管理部235に送信する。メッセージ管理部235はこのメッセージをコンテンツ管理部233に入力し、処理はステップA16に進められる。また、受信したデータがコンテンツ要求メッセージでない場合(ステップA10のNo)、処理はステップA12に進められる。
In step A10 shown in FIG. 16B, the data transmitting / receiving
ステップA16において、コンテンツ管理部233は受信したコンテンツ要求メッセージで要求されているコンテンツおよび当該コンテンツのデータ送信開始位置が、自通信端末200aが保有しているコンテンツのデータに含まれているかを確認する。確認の結果、自通信端末200aが保有しているデータの場合(ステップA16のYes)、処理はステップA11に進められる。自通信端末200aが保有していないデータの場合(ステップA16のNo)、処理はステップA17に進められる。
In step A16, the
ステップA17において、メッセージ管理部235は、記憶部240に記憶されているコンテンツ情報242を参照し、受信したコンテンツ要求メッセージが要求しているコンテンツおよび当該コンテンツのデータ送信開始位置を保有している他の通信端末200′を検索する。この結果、それらのデータを保有する他の通信端末200′がコンテンツ情報242に含まれている場合、つまり、当該コンテンツの保有通信端末リストを参照した結果、要求されたデータ送信開始位置が保有データ範囲に含まれている場合(ステップA17のYes)、処理はステップA19に進められる。一方、それらのデータがコンテンツ情報242に含まれていない場合(ステップA17のNo)、当該コンテンツ要求メッセージの転送先は存在しないと判断し、処理はステップA18に進められる。
In step A17, the
ステップA18において、コンテンツ管理部233は、受信したコンテンツ要求メッセージの転送先は存在しないため、当該コンテンツの送信は中止されたことを当該コンテンツ要求メッセージの送信元通信端末200に返信する。
In step A <b> 18, the
ステップA19において、コンテンツ管理部233は、記憶部240に記憶されているコンテンツ情報242から、要求されたコンテンツのデータ送信開始位置を保有データ範囲に含むリストの通信端末識別子を読み出す。コンテンツ管理部233は、読み出した通信端末識別子に対してコンテンツ要求メッセージを送信するよう指示する。また、コンテンツ管理部233は、記憶部240に当該コンテンツは自通信端末200aが要求したコンテンツではないことを、そのコンテンツ要求メッセージの送信元通信端末識別子と共に記憶し、当該コンテンツのデータの受信が開始されるのを待つ。コンテンツ管理部233は、当該データの受信が始まると、自通信端末200aに対してコンテンツ要求メッセージを送信してきた送信元である他の通信端末200′に対して、当該コンテンツのデータの転送を開始する。この転送開始については、ステップA11の処理と同様であるため、詳細な説明は省略する。
In step A <b> 19, the
なお、上述したステップA19では、コンテンツ要求メッセージを他の通信端末200′に送信した後、コンテンツのデータの受信が開始されるまで待っていたが、本処理とは独立に別の各種メッセージを受信、またはタイマーが発動した動作を並行して行っても良い。
In step A19 described above, after the content request message is transmitted to the
ステップA12において、データ送受信部231は、通信部150から受信したデータが停止要求メッセージであるか否かを確認する。受信したデータが停止要求メッセージである場合(ステップA12のYes)、データ送受信部231は、受信した停止要求メッセージをメッセージ管理部235に送信する。メッセージ管理部235はこのメッセージをコンテンツ管理部233に入力し、処理はステップA13に進められる。また、受信したデータが停止要求メッセージでない場合(ステップA12のNo)、処理を終了する。
In step A12, the data transmitting / receiving
ステップA13において、コンテンツ管理部233は受信した停止要求メッセージの送信元である通信端末200との間で送受信を行っているコンテンツを自通信端末が保有していればのデータ送信処理を停止し、処理を終了する。また、コンテンツ管理部233は受信した停止要求メッセージの送信元である通信端末200との間で送受信を行っているコンテンツを他の通信端末200′から受信しながら送信していれば、当該停止要求メッセージを他の通信端末200′に転送した上で、通信端末200との間で送受信を行っているコンテンツを自通信端末が保有していればのデータ送信処理を停止し、処理を終了する。
In step A13, the
図17は、本発明の第2の実施形態の通信端末200がコンテンツ情報242を更新する場合の動作(図16Aに示すステップA14)を示すフローチャートである。
FIG. 17 is a flowchart showing an operation (step A14 shown in FIG. 16A) when the
まず、ステップC1において、制御メッセージ234aを受信したメッセージ管理部235は、当該制御メッセージに含まれるコンテンツリストの先頭から順番に(図13においてはコンテンツ♯1〜コンテンツ♯Mの順で)、当該コンテンツ♯Mに含まれる保有通信端末情報を処理対象として選択する。以下、このコンテンツ♯Mに含まれるコンテンツ識別子、保有通信端末識別子、保有データ範囲、受信状態情報の組を「処理対象エントリ」と称呼する。
First, in step C1, the
ステップC2において、メッセージ管理部235は、処理対象エントリのコンテンツ識別子が、記憶部240に記憶されるコンテンツ情報242に含まれているコンテンツ識別子と一致するか判断する。当該コンテンツ識別子がコンテンツ情報242に含まれている場合(ステップC2のYes)、処理はステップC3に進められる。当該コンテンツ識別子がコンテンツ情報242に含まれていない場合(ステップC2のNo)、処理はステップC5に進められる。
In step C <b> 2, the
ステップC3において、メッセージ管理部235は、記憶部240に記憶されているコンテンツ情報242のコンテンツリストから、処理対象エントリのコンテンツ識別子と同一のコンテンツ識別子をもつ保有通信端末リストを処理対象とする。メッセージ管理部235は、このコンテンツ情報242の処理対象となる保有通信端末リストから、処理対象エントリの保有通信端末識別子と同一のエントリが存在するか否かを検索する。同一のエントリが存在する場合(ステップC3のYes)、メッセージ管理部235は、処理をステップC4に進める(この際、コンテンツ情報242における当該エントリを「処理対象コンテンツ情報エントリ」と呼ぶ)。同一のエントリが存在しない場合(ステップC3のNo)、メッセージ管理部235は、処理をステップC5に進める。
In step C3, the
ステップC4において、コンテンツ管理部233は、処理対象コンテンツ情報エントリの保有通信端末識別子と通信端末識別子が同一であるか否かを判断する。これらの識別子が同一である場合(ステップC4のYes)、コンテンツ管理部233は、処理をステップC7に進める。処理対象コンテンツ情報エントリの保有通信端末識別子と通信端末識別子とが同一でない場合(ステップC4のNo)、コンテンツ管理部233は、処理をステップC6に進める。
In step C4, the
ステップC5において、メッセージ管理部235は、処理対象エントリのコンテンツ識別子が記憶部240に記憶されているコンテンツ情報242に含まれていない場合(ステップC2から遷移した場合)、当該処理対象エントリに対するコンテンツ情報242を作成し、追加する。または、コンテンツ管理部233は、コンテンツ情報242の処理対象エントリのコンテンツ識別子の保有通信端末リストに、処理対象エントリの保有通信端末識別子と同一の保有通信端末識別子をもつエントリが存在しなかった場合(ステップC4から遷移した場合)、当該処理対象エントリに対するコンテンツ情報242を作成し、追加する。
In step C5, when the content identifier of the processing target entry is not included in the
この際、これらのコンテンツ情報242のコンテンツ識別子、保有通信端末リストの保有通信端末識別子、保有データ範囲および受信状態情報は、処理対象エントリと同一とし、保有通信端末リストの通信端末識別子は当該制御メッセージの送信元通信端末識別子とする。これらの処理が終わると、処理はステップC7に進められる。
At this time, the content identifier of the
ステップC6において、メッセージ管理部235は、処理対象コンテンツ情報エントリを当該処理対象エントリの情報で更新する。この際、これらの処理対象コンテンツ情報エントリの保有データ範囲、受信状態情報は、処理対象エントリと同一とし、処理対象コンテンツ情報エントリの通信端末識別子は当該制御メッセージの送信元通信端末識別子とする。この処理が終わると、処理はステップC7に進められる。
In step C6, the
ステップC7において、メッセージ管理部235は、受信した制御メッセージに含まれるコンテンツリスト、及びコンテンツリストの各コンテンツに対する保有通信端末リストの全てのエントリの情報に対して、ステップC2からの処理を行ったかを確認する。全てのエントリに対して処理が完了している場合(ステップC7のYes)、処理を終了する。まだ処理を終えていないエントリが存在する場合、残っているエントリの先頭のエントリを処理対象として、ステップC1からの処理を繰り返す。
In step C7, the
本発明の第2の実施形態によれば、自通信端末200aが保有するコンテンツのみでなく、隣接する他の通信端末200′が保有するコンテンツに対しても、各コンテンツの受信および再生を行っているか否かの受信状態情報を管理し、それを制御メッセージに格納して隣接する通信端末200′に通知する。自通信端末200aは、隣接する通信端末200′から受信した制御メッセージに含まれる保有コンテンツおよび当該コンテンツの保有データ範囲、受信状態情報を一覧表示させる。これにより、自通信端末200aから、または隣接する通信端末200′を介して、ネットワーク中に存在する全ての端末(非隣接通信端末200″を含む)から、所望のコンテンツのデータ配信元通信端末200として最も適切な通信端末200を選択することができる。
According to the second embodiment of the present invention, not only the content held by the
本実施形態では、第1の実施形態と同様、通信端末200は、制御メッセージ内のコンテンツリストにおける各コンテンツに対して、当該コンテンツの作成、あるいは登録した通信端末識別子の情報を含めて送信し、当該情報を入出力部110に表示させてもよい。同様に、入出力部110からユーザが入力したコマンドをコンテンツ表示部220が受信すると、そのコマンドに従って、コンテンツの再生情報、コンテンツのリスト、保有通信端末リスト、各通信端末の保有データ範囲および受信状態情報などの各種情報を入出力部110に表示させてもよい。
In the present embodiment, as in the first embodiment, the
また、本実施形態では、自通信端末200aが受信した制御メッセージに含まれるコンテンツリストが有する各保有通信端末リストの各エントリに対して、通信ホップ数を記録して配信し、コンテンツ表示部120は入出力部110のコンテンツ一覧に通信ホップ数も合わせて表示させてもよい。つまり、通信端末200は、隣接通信端末から受信した制御メッセージに含まれるコンテンツリストの各エントリに対し、自通信端末200aに関わるエントリの通信ホップ数は1に、隣接する通信端末200′に関わるエントリの通信ホップ数は2に、非隣接通信端末200″に関わるエントリの通信ポップ数は3等として制御メッセージに含めて配信する。通信端末200のコンテンツ表示部120は、コンテンツ情報242に記憶しているこの通信ホップ数の情報もコンテンツ一覧に含めて入出力部110に表示する。これにより、ユーザはコンテンツのデータ配信元通信端末200の選択において、配信遅延に影響する通信ホップ数も考慮に入れて選択することが可能となる。上述したコンテンツの作成、あるいは登録を行った通信端末識別子の情報と合わせて利用することも可能である。
In the present embodiment, the number of communication hops is recorded and distributed to each entry of each owned communication terminal list included in the content list included in the control message received by the
本実施形態では、自通信端末200aが受信した制御メッセージに含まれるコンテンツリストを全て格納して、隣接する通信端末200′に通知していた。しかし、各通信端末200は、制御メッセージに含まれるコンテンツリストの各保有通信端末リストの各エントリに対して、TTL(Time To Live)を設定し、制御メッセージに含まれる各エントリの情報の拡散範囲を制限することもできる。これにより、各通信端末200は所定ホップ数以上離れた通信端末200に対して、コンテンツのデータ送信を要求することを防止できる。ひいては、コンテンツのデータ配信遅延を抑制することができる。このようなTTLを用いた情報の拡散防止については、従来の手法を応用することで実現できるため、詳細な説明は省略する。
In the present embodiment, all the content lists included in the control message received by the
<第3の実施形態>
第1および第2の実施形態においては、通信端末100、200は、ユーザに次の送信元端末を選択するよう促していた。第3の実施形態では、この選択処理を自動化する。すなわち、ユーザの要求によりコンテンツのデータ受信および再生を開始した後、当該データ受信が停止した場合に、最も適した配信元通信端末を自ら自動的に選択し、当該データの受信を継続する通信端末300について説明する。
<Third Embodiment>
In the first and second embodiments, the
(通信端末)
図18に、本発明の第3の実施形態に係る通信端末300の構成例を示す。通信端末300は、入出力部110、コンテンツ表示部120、コンテンツ配信制御部330、記憶部140および通信部150を備える。尚、コンテンツ配信制御部330以外の構成は、第1の実施形態と同様であるため、図2と同じ符号を付して、説明を省略する。
(Communication terminal)
FIG. 18 shows a configuration example of a
コンテンツ配信制御部330は、データ送受信部131、コンテンツリスト作成部132、コンテンツ管理部133、メッセージ作成部134、メッセージ管理部135およびコンテンツ要求先選択部301を含む。尚、コンテンツ要求先選択部301以外の部は第1の実施形態と同様であるため説明を省略する。
The content
コンテンツ要求先選択部301は、記憶部140に記憶されたコンテンツ情報142の情報を参照し、コンテンツのデータ配信元通信端末として最も適切な通信端末300を選択し、選択した通信端末識別子をメッセージ管理部135に通知する。この通知を受けたメッセージ管理部135は、当該通信端末識別子をもつ通信端末300に対して、コンテンツ要求メッセージを送信するよう、メッセージ作成部134に指示する。
The content request
例えば、ユーザが、入出力部110に表示されたコンテンツ一覧領域120b(図6参照)から受信および再生したいコンテンツを発見し、当該コンテンツに対応する受信したいデータ範囲、受信状態情報などを参照して、受信したい通信端末を選択した場合を想定する。
For example, the user discovers content to be received and reproduced from the
この場合、ユーザの自通信端末300aは、当該選択された他の通信端末300′に対してコンテンツ要求メッセージを送信し、当該コンテンツのデータ受信を開始する。しかし、当該データの送信を要求した他の通信端末300′が当該コンテンツの受信を行っておらず、一定範囲のデータまでしか保有していない場合、当該通信端末300′が保有するデータ以降のデータを受信することはできない。
In this case, the user's own communication terminal 300a transmits a content request message to the selected other communication terminal 300 ', and starts receiving data of the content. However, if the
第1、第2の実施形態では、このような場合、データの受信が停止したことを入出力部110に表示し、改めてユーザが受信を継続させたい通信端末を選択していた。本実施形態では、受信が停止した時点で、コンテンツ要求先選択部301が続きのデータの送信に最も適した通信端末を選択し、メッセージ管理部135を通じてコンテンツ要求メッセージを送信し、受信を継続する。
In the first and second embodiments, in such a case, the fact that the reception of data is stopped is displayed on the input /
(通信端末の動作)
本発明の第3の実施形態に係る通信端末300の動作について説明する。図19は、本実施形態に係る通信端末300がメッセージを受信したまたはタイマーが発動した際の動作を示すフローチャートである。本実施形態の通信端末300の動作では、図7に示す本発明の第1の実施形態の通信端末がメッセージを受信、またはタイマーが発動した動作を示すフローチャートにおけるステップA9の後にステップA20の処理を行う点が異なる。それ以外の動作は、第1の実施形態における通信端末100の動作と同様であるため、説明を省略する。
(Operation of communication terminal)
An operation of the
ステップA20において、メッセージ管理部135は、停止通知メッセージを受信した(ステップA6)、または、タイマーの発動により、コンテンツのデータ受信が停止したと判断する(ステップA8)。この時、コンテンツ受信停止処理(ステップA7)やデータの受信が停止したことを入出力部110に表示(ステップA9)した後、コンテンツ要求先選択部301に停止したデータ位置からの当該コンテンツのデータを要求する通信端末の選択処理を開始するよう通知する。コンテンツ要求先選択部301は、記憶部140に記憶されたコンテンツ情報142から、当該コンテンツの停止したデータ位置を保有データ範囲に含む通信端末の情報(以下「エントリ」と記載)を検索する。上記の条件に一致する通信端末300のエントリが1つしか無ければ、その通信端末300をコンテンツのデータ送信要求先として選択する。上記の条件に一致する通信端末のエントリが2つ以上存在した場合、保有データ範囲や受信状態情報を用いて、例えば下記のような方針により、最適な通信端末を選択する。
In step A20, the
<1>停止したデータ位置を保有データ範囲に含み、保有データ範囲の上限値が最も大きい通信端末、
(1)このような通信端末が複数存在する場合は、受信状態情報が「受信中」を示す通信端末を選択し、
(2)上記(1)を満たす通信端末が複数存在する場合は、それらの通信端末からランダムに選択する。
<1> A communication terminal that includes the stopped data position in the retained data range and has the largest upper limit of the retained data range;
(1) When there are a plurality of such communication terminals, select a communication terminal whose reception status information indicates “receiving”,
(2) When there are a plurality of communication terminals satisfying the above (1), the communication terminals are selected at random from those communication terminals.
<2>保有データ範囲の上限値が要求開始データ位置よりも小さく、かつその上限値と要求開始データ位置の差分が最も小さく、かつ受信状態情報が「受信中」を示す通信端末、
(1)このような通信端末が複数存在する場合は、それらの通信端末からランダムに選択する。
<3>保有データ範囲の下限値が要求開始データ位置よりも大きく、かつその下限値と要求開始データ位置の差分が最も小さい通信端末、
(1)このような通信端末が複数存在する場合は、受信状態情報が「受信中」を示す通信端末を選択し、
(2)上記(1)を満たす通信端末が複数存在する場合は、それらの通信端末からランダムに選択する。
<2> A communication terminal in which the upper limit value of the retained data range is smaller than the request start data position, the difference between the upper limit value and the request start data position is the smallest, and the reception status information indicates “receiving”,
(1) When there are a plurality of such communication terminals, the communication terminals are selected at random from those communication terminals.
<3> A communication terminal in which the lower limit value of the retained data range is larger than the request start data position and the difference between the lower limit value and the request start data position is the smallest,
(1) When there are a plurality of such communication terminals, select a communication terminal whose reception status information indicates “receiving”,
(2) When there are a plurality of communication terminals satisfying the above (1), the communication terminals are selected at random from those communication terminals.
コンテンツ要求先選択部301は、コンテンツのデータ送信を要求する通信端末300を選択すると、当該通信端末識別子をメッセージ管理部135に通知する。通知を受けたメッセージ管理部135は当該通信端末300に対してコンテンツ要求メッセージを送信するようメッセージ作成部134に指示する。この際、上記の<1>または<2>の条件を満たした通信端末300への配信開始データ位置は、一端停止したデータ位置であり、<3>の条件を満たした通信端末300への配信開始データ位置は、当該通信端末300の保有データ範囲の下限値である。
When the content request
本発明の第3の実施形態によれば、通信端末300は、ユーザの要求によりコンテンツのデータ受信および再生を開始した後、当該データ受信が停止した場合に、配信元通信端末を自動的に選択し、当該データの受信を継続することができる。
According to the third embodiment of the present invention, the
例えば、上記の方針では、<1>を満たす通信端末を選択することにより、停止したデータ位置から連続して当該データの受信を継続することができ、かつ、受信中であることからその後も継続して当該データの受信を続けることが可能となる。<1>を満たす通信端末が存在しない場合、<2>を満たす通信端末を選択することで、しばらくの間ストリームが停止する恐れはあるものの、受信中であるコンテンツのデータが要求開始データ位置を満たした時点からデータの消失なくデータを受信することが可能となる。尚、<1>または<2>を満たす通信端末が存在しない場合、ストリームデータの消失が発生してしまうが、そのデータ消失区間を最も小さくしつつ、継続して同一通信端末からのデータ受信が可能となる。つまり、本発明の第1の実施形態における効果を、ユーザを介在させず、自動的に提供することが可能となる。 For example, in the above policy, by selecting a communication terminal that satisfies <1>, it is possible to continue to receive the data continuously from the stopped data position, and continue since it is being received. Thus, it becomes possible to continue receiving the data. If there is no communication terminal satisfying <1>, selecting the communication terminal satisfying <2> may cause the stream to stop for a while, but the data of the content being received has the request start data position. It becomes possible to receive data without loss of data from the time when it is satisfied. Note that, when there is no communication terminal satisfying <1> or <2>, loss of stream data occurs, but data reception from the same communication terminal is continuously performed while minimizing the data loss period. It becomes possible. That is, the effect of the first embodiment of the present invention can be automatically provided without involving a user.
なお、上記の方針は通信端末300の選択方針はあくまで一例に過ぎず、保有データ範囲と受信状態情報とを参照することで、様々な方針に従った最適な通信端末を選択することが可能である。
The above policy is merely an example of the selection policy of the
また、本実施形態では、ステップA9でデータの受信が停止したことを入出力部110に表示しているが、これを表示せずに、継続して選択した通信端末300からデータ受信を継続してもよい。
In this embodiment, the fact that the data reception is stopped in step A9 is displayed on the input /
本実施形態では、コンテンツ表示部120が図6に示すような画面を入出力部110に表示しているが、この表示画面のうちコンテンツ一覧領域120bには当該コンテンツを保有する通信端末を個別に表示せず、当該コンテンツを保有する通信端末の保有データ範囲の和集合のみを表示させてもよい。ユーザは、コンテンツと、配信開始データ位置とをのみ要求してもよい。この場合、その要求を受け取ったコンテンツ要求先選択部301は、上記のような方針に従い、コンテンツのデータ配信元として最適な通信端末を選択し、選択された通信端末に対し、コンテンツ要求メッセージを送信してもよい。
In the present embodiment, the
さらに、本実施形態では、本発明の第1の実施形態を用いて説明したが、第2の実施形態にコンテンツ要求先選択部301を追加してもよい。この場合、コンテンツ要求先選択部301は、隣接する通信端末300のみではなく、ネットワーク中に存在する全ての通信端末300から、コンテンツ要求先となる通信端末300を選択することができる。さらに、上述したような実施例1および2も第2の実施形態を用いた場合に適用できることはもちろんである。
Furthermore, although the present embodiment has been described using the first embodiment of the present invention, a content request
<第4の実施形態>
本発明の第4の実施形態に係る通信端末400について説明する。本実施形態に係る通信端末400は、図20に示すように、メッセージ作成部434、メッセージ管理部435およびコンテンツ管理部433を備える。
<Fourth Embodiment>
A
メッセージ作成部434は、自通信端末が保有するコンテンツの識別子、コンテンツの保有データ範囲およびコンテンツの受信状態を示す情報を備えるコンテンツリストを少なくとも1つ含む制御メッセージを作成する。
The
メッセージ管理部435は、(a)制御メッセージを自通信端末以外の通信端末に対して送信させるよう指示し、且つ、自通信端末以外の外部通信端末から受信する制御メッセージから、外部通信端末が保有するコンテンツリストを取得し、(b)外部通信端末から自通信端末が保有するコンテンツの送信要求を受けると、当該コンテンツのデータを外部通信端末に送信するよう指示し、(c)外部通信端末が保有するコンテンツの再生要求を自通信端末が受けると、当該コンテンツのデータを外部通信端末に要求する。 The message management unit 435 (a) instructs an external communication terminal to transmit a control message to a communication terminal other than the own communication terminal, and possesses the control message received from the external communication terminal other than the own communication terminal. (B) upon receiving a transmission request for content held by the own communication terminal from the external communication terminal, instructs the external communication terminal to transmit the data of the content, and (c) the external communication terminal When the own communication terminal receives a reproduction request for the content held, it requests the data of the content from the external communication terminal.
コンテンツ管理部433は、(d)外部通信端末に要求したコンテンツのデータの少なくとも一部を受信した場合、当該コンテンツに対応するコンテンツリストを作成または更新するよう指示し、(e)自通信端末に対するコンテンツの再生要求に応じて外部通信端末からコンテンツのデータを受信し、当該データを再生させる。
When the
本発明の第4の実施形態に係る通信端末によると、通信ネットワークを経由したストリーム型コンテンツの配信において、当該コンテンツのストリームデータの連続性を考慮して最適なデータ要求先通信端末を選択することができる。
(変形例)
上述した各実施形態では、各通信端末100、200、300、400は、例えば、無線LANのアドホックモードを用いて直接各通信端末間で通信を行う。しかし、通信端末100〜400は、無線LANのアクセスポイントを介して互いの間の通信を行うように構成されてもよい。図21は、各通信端末がアクセスポイント600を介して通信を行うように構成された無線通信システム601の例を示すブロック図である。図21に示す例では、通信端末100a〜100hがアクセスポイント600を介して互いの間の通信を行っている。また、アクセスポイントを用いず、各通信端末100a〜100hのうちの1つがアクセスポイントと同様の働きを行う接続形態(例えば、Wi−Fiダイレクト)で、各通信端末100a〜100hが接続されても良い。
According to the communication terminal according to the fourth embodiment of the present invention, in the distribution of the stream type content via the communication network, the optimum data request destination communication terminal is selected in consideration of the continuity of the stream data of the content. Can do.
(Modification)
In each embodiment mentioned above, each
この構成によれば、通信端末100〜400で直接に通信を行うことができない場合であっても、無線LANのアクセスポイント600を介して互いの間の通信を行い、第1〜第4の実施形態における効果と同様な効果を奏することができる。
According to this configuration, even if the
(ハードウェア構成)
本発明の各実施形態において、通信端末のコンテンツ配信制御部130、230、330および通信端末400における各構成要素は、機能単位のブロックを示している。通信端末のコンテンツ配信制御部130等における各構成要素の一部又は全部は、例えば図2、10、18、20に示すような情報処理装置とプログラムとの任意の組み合わせにより実現される。これを実現する情報処理装置500の一例を図22に示す。情報処理装置500は、一例として、以下のような構成を含む。
(Hardware configuration)
In each embodiment of the present invention, each component in the content
・CPU501
・ROM502
・RAM503
・RAM503にロードされるプログラム504
・プログラム504を格納する記憶装置505
・記録媒体506の読み書きを行うドライブ装置507
・通信ネットワーク509と接続する通信インターフェース508
・データの入出力を行う入出力インターフェース510
・各構成要素を接続するバス511
各実施形態における通信端末のコンテンツ配信制御部130等の各構成要素は、これらの機能を実現するプログラム504をCPU501が取得して実行することで実現される。各装置の各構成要素の機能を実現するプログラム504は、例えば、予め記憶装置505やRAM503に格納されており、必要に応じてCPU501が読み出す。なお、プログラム504は、通信ネットワーク509を介してCPU501に供給されてもよいし、予め記録媒体506に格納されており、ドライブ装置507が当該プログラムを読み出してCPU501に供給してもよい。
A
A
A
An input /
-Bus 511 connecting each component
Each component such as the content
通信端末の実現方法には、様々な変形例がある。例えば、通信端末は、構成要素毎にそれぞれ別個の情報処理装置500とプログラムとの任意の組み合わせにより実現されてもよい。また、通信端末が備える複数の構成要素が、一つの情報処理装置500とプログラムとの任意の組み合わせにより実現されてもよい。
There are various modifications to the communication terminal implementation method. For example, the communication terminal may be realized by an arbitrary combination of the
また、通信端末の各構成要素の一部又は全部は、その他の汎用または専用の回路、プロセッサ等やこれらの組み合わせによって実現される。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。 In addition, some or all of the components of the communication terminal are realized by other general-purpose or dedicated circuits, processors, and the like or combinations thereof. These may be configured by a single chip or may be configured by a plurality of chips connected via a bus.
通信端末の各構成要素の一部又は全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。 Part or all of each component of the communication terminal may be realized by a combination of the above-described circuit and the like and a program.
通信端末の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。 When some or all of the components of the communication terminal are realized by a plurality of information processing devices and circuits, the plurality of information processing devices and circuits may be centrally arranged or distributedly arranged. Also good. For example, the information processing apparatus, the circuit, and the like may be realized as a form in which each is connected via a communication network, such as a client and server system and a cloud computing system.
上述した各実施形態は本件発明者により得られた技術思想の適用に関する例に過ぎない。すなわち、当該技術思想は、上述した実施形態のみに限定されるものではなく、趣旨を逸脱しない範囲で、種々の変更が可能であることは勿論である。 Each embodiment mentioned above is only an example about application of the technical idea obtained by this inventor. That is, the technical idea is not limited to the above-described embodiment, and various changes can be made without departing from the spirit of the invention.
1A :通信可能範囲
1B :通信可能範囲
10 :通信システム
100 :通信端末
100a :通信端末
100b :通信端末
100c :通信端末
100d :通信端末
100e :通信端末
100f :通信端末
100g :通信端末
100h :通信端末
100′ :通信端末
110 :入出力部
120 :コンテンツ表示部
120a :視聴領域
120b :コンテンツ一覧領域
120c :視聴コンテンツ名領域
130 :コンテンツ配信制御部
131 :データ送受信部
132 :コンテンツリスト作成部
133 :コンテンツ管理部
134 :メッセージ作成部
134a :制御メッセージ
135 :メッセージ管理部
140 :記憶部
141 :通信端末情報
141A :通信端末識別子
141B :有効期限情報
141C :コンテンツリスト
142 :コンテンツ情報
142A :コンテンツ識別子
142B :保有データ範囲
142C :受信状態情報
150 :通信部
200 :通信端末
200a :通信端末
200b :通信端末
200c :通信端末
200d :通信端末
200′ :通信端末
200″ :非隣接通信端末
220 :コンテンツ表示部
230 :コンテンツ配信制御部
231 :データ送受信部
232 :コンテンツリスト作成部
233 :コンテンツ管理部
234 :メッセージ作成部
234a :制御メッセージ
235 :メッセージ管理部
240 :記憶部
241 :通信端末情報
242 :コンテンツ情報
242D :保有通信端末リスト
300 :通信端末
300a :通信端末
300′ :通信端末
301 :コンテンツ要求先選択部
330 :コンテンツ配信制御部
400 :通信端末
433 :コンテンツ管理部
434 :メッセージ作成部
435 :メッセージ管理部
500 :情報処理装置
501 :CPU
502 :ROM
503 :RAM
504 :プログラム
505 :記憶装置
506 :記録媒体
507 :ドライブ装置
508 :通信インターフェース
509 :通信ネットワーク
510 :入出力インターフェース
511 :バス
600 :アクセスポイント
601 :通信システム
1A: Communication possible range 1B: Communication possible range 10: Communication system 100: Communication terminal 100a: Communication terminal 100b: Communication terminal 100c: Communication terminal 100d: Communication terminal 100e: Communication terminal 100f: Communication terminal 100g: Communication terminal 100h: Communication terminal 100 ': communication terminal 110: input / output unit 120: content display unit 120a: viewing area 120b: content list area 120c: viewing content name area 130: content distribution control unit 131: data transmission / reception unit 132: content list creation unit 133: content Management unit 134: Message creation unit 134a: Control message 135: Message management unit 140: Storage unit 141: Communication terminal information 141A: Communication terminal identifier 141B: Expiration date information 141C: Content list 142: Content Information 142A: Content identifier 142B: Holding data range 142C: Reception status information 150: Communication unit 200: Communication terminal 200a: Communication terminal 200b: Communication terminal 200c: Communication terminal 200d: Communication terminal 200 ': Communication terminal 200 ": Non-adjacent Communication terminal 220: Content display unit 230: Content distribution control unit 231: Data transmission / reception unit 232: Content list creation unit 233: Content management unit 234: Message creation unit 234a: Control message 235: Message management unit 240: Storage unit 241: Communication Terminal information 242: Content information 242D: Owned communication terminal list 300: Communication terminal 300a: Communication terminal 300 ': Communication terminal 301: Content request destination selection unit 330: Content distribution control unit 400: Communication terminal 433: Conte Tsu management unit 434: message creating section 435: message management unit 500: information processing device 501: CPU
502: ROM
503: RAM
504: Program 505: Storage device 506: Recording medium 507: Drive device 508: Communication interface 509: Communication network 510: Input / output interface 511: Bus 600: Access point 601: Communication system
Claims (10)
前記制御メッセージを前記自通信端末以外の通信端末に対して送信させるよう指示し、且つ、前記自通信端末以外の外部通信端末から受信する前記制御メッセージから、前記外部通信端末が保有するコンテンツリストを取得し、
前記外部通信端末から前記自通信端末が保有するコンテンツの送信要求を受けると、当該コンテンツのデータを前記外部通信端末に送信するよう指示し、
前記外部通信端末が保有するコンテンツの再生要求を前記自通信端末が受けると、当該コンテンツのデータを前記外部通信端末に要求する、
メッセージ管理部と、
前記外部通信端末に要求した前記コンテンツのデータの少なくとも一部を受信した場合、当該コンテンツに対応する前記コンテンツリストを作成または更新するよう指示し、
前記自通信端末に対する前記コンテンツの再生要求に応じて前記外部通信端末から前記コンテンツのデータを受信し、当該データを再生させる、
コンテンツ管理部、
と備える通信端末。 A message creation unit for creating a control message including at least one content list including information indicating content identifiers held by the own communication terminal, the data holding range of the content, and the reception state of the content;
Instructing the communication terminal other than the communication terminal to transmit the control message, and from the control message received from an external communication terminal other than the communication terminal, a content list held by the external communication terminal Acquired,
When receiving a transmission request for content held by the self-communication terminal from the external communication terminal, an instruction is given to transmit the data of the content to the external communication terminal;
When the self-communication terminal receives a content reproduction request held by the external communication terminal, the external communication terminal is requested for data of the content.
A message manager;
Instructing the external communication terminal to create or update the content list corresponding to the content when receiving at least part of the requested data of the content;
Receiving the content data from the external communication terminal in response to the content reproduction request to the self-communication terminal, and reproducing the data;
Content management department,
Communication terminal provided with.
を更に備える請求項1に記載の通信端末。 The content display unit according to claim 1, further comprising: a content display unit that displays a content list corresponding to content held by the self-communication terminal and the external communication terminal and receives an operation instruction for the content on the screen for reproducing the data. Communication terminal.
請求項1又は2に記載の通信端末。 The message creation unit creates a control message including a second content list included in a control message received from the external communication terminal in addition to a first content list representing content held by the communication terminal.
The communication terminal according to claim 1 or 2.
請求項1乃至3のいずれかに記載の通信端末。 The message creation unit, when creating a control message including the first content list and the second content list, the external communication terminal serving as a data transmission source from the own communication terminal to the first and second content lists Add information indicating the number of communication hops until
The communication terminal according to any one of claims 1 to 3.
請求項1乃至4のいずれかに記載の通信端末。 The message creation unit does not include the second content list having the hop count exceeding a predetermined value in a control message;
The communication terminal according to claim 1.
請求項1乃至5のいずれかにのいずれかに記載の通信端末。 When the message management unit receives a control message including the first content list and the second content list, the message management unit holds a content associated with the first content list for each content list included in the control message. Obtaining the identifier of the terminal and the identifier of the communication terminal that has transmitted the content associated with the second content list;
The communication terminal according to any one of claims 1 to 5.
前記メッセージ作成部は、選択された前記データ受信が停止した位置から継続して受信することが可能な通信端末に対し、当該コンテンツの送信要求を作成する、
請求項1乃至6のいずれかに記載の通信端末。 When it is detected that data reception of the content received by the communication terminal has stopped, the first or second content list is acquired, and the content included in the acquired first or second content list is At least one of an identifier of a communication terminal possessed, an identifier of a communication terminal that transmitted the content, an identifier of the content, a data range of the content, information indicating a reception state of the content, and the number of communication hops Using a content request destination selection unit that selects a communication terminal that can continuously receive data from the position where the data reception is stopped,
The message creation unit creates a transmission request for the content to a communication terminal that can continuously receive the selected position from which the data reception has stopped.
The communication terminal according to claim 1.
前記複数の通信端末の各々は、前記制御メッセージを送受信しあい、送受信した前記制御メッセージを基に、前記通信端末の各々が保有するコンテンツのデータを送受信しあう、
通信システム A plurality of communication terminals according to any one of claims 1 to 7,
Each of the plurality of communication terminals transmits and receives the control message, and based on the transmitted and received control message, transmits and receives content data held by each of the communication terminals.
Communications system
前記制御メッセージを前記自通信端末以外の通信端末に対して送信させるよう指示し、且つ、前記自通信端末以外の外部通信端末から受信する前記制御メッセージから、前記外部通信端末が保有するコンテンツリストを取得し、
前記外部通信端末から前記自通信端末が保有するコンテンツの送信要求を受けると、当該コンテンツのデータを前記外部通信端末に送信するよう指示し、
前記外部通信端末が保有するコンテンツの再生要求を前記自通信端末が受けると、当該コンテンツのデータを前記外部通信端末に要求し、
前記外部通信端末に要求した前記コンテンツのデータの少なくとも一部を受信した場合、当該コンテンツに対応する前記コンテンツリストを作成または更新するよう指示し、
前記自通信端末に対する前記コンテンツの再生要求に応じて前記外部通信端末から前記コンテンツのデータを受信し、当該データを再生させる、
通信方法。 Creating a control message including at least one content list comprising information indicating the content identifier held by the communication terminal, the data holding range of the content, and the reception status of the content;
Instructing the communication terminal other than the communication terminal to transmit the control message, and from the control message received from an external communication terminal other than the communication terminal, a content list held by the external communication terminal Acquired,
When receiving a transmission request for content held by the self-communication terminal from the external communication terminal, an instruction is given to transmit the data of the content to the external communication terminal;
When the self-communication terminal receives a content reproduction request held by the external communication terminal, it requests the data of the content from the external communication terminal,
Instructing the external communication terminal to create or update the content list corresponding to the content when receiving at least part of the requested data of the content;
Receiving the content data from the external communication terminal in response to the content reproduction request to the self-communication terminal, and reproducing the data;
Communication method.
自通信端末が保有するコンテンツの識別子、前記コンテンツの保有データ範囲および前記コンテンツの受信状態を示す情報を備えるコンテンツリストを少なくとも1つ含む制御メッセージを作成し、
前記制御メッセージを前記自通信端末以外の通信端末に対して送信させるよう指示し、且つ、前記自通信端末以外の外部通信端末から受信する前記制御メッセージから、前記外部通信端末が保有するコンテンツリストを取得し、
前記外部通信端末から前記自通信端末が保有するコンテンツの送信要求を受けると、当該コンテンツのデータを前記外部通信端末に送信するよう指示し、
前記外部通信端末が保有するコンテンツの再生要求を前記自通信端末が受けると、当該コンテンツのデータを前記外部通信端末に要求し、
前記外部通信端末に要求した前記コンテンツのデータの少なくとも一部を受信した場合、当該コンテンツに対応する前記コンテンツリストを作成または更新するよう指示し、
前記自通信端末に対する前記コンテンツの再生要求に応じて前記外部通信端末から前記コンテンツのデータを受信し、当該データを再生させる
処理を実行させるプログラム。 On the computer,
Creating a control message including at least one content list comprising information indicating the content identifier held by the communication terminal, the data holding range of the content, and the reception status of the content;
Instructing the communication terminal other than the communication terminal to transmit the control message, and from the control message received from an external communication terminal other than the communication terminal, a content list held by the external communication terminal Acquired,
When receiving a transmission request for content held by the self-communication terminal from the external communication terminal, an instruction is given to transmit the data of the content to the external communication terminal;
When the self-communication terminal receives a content reproduction request held by the external communication terminal, it requests the data of the content from the external communication terminal,
Instructing the external communication terminal to create or update the content list corresponding to the content when receiving at least part of the requested data of the content;
A program that receives data of the content from the external communication terminal in response to a request to reproduce the content to the self-communication terminal and executes a process of reproducing the data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015170046A JP2017049630A (en) | 2015-08-31 | 2015-08-31 | Communication terminal, communication method, communication system, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015170046A JP2017049630A (en) | 2015-08-31 | 2015-08-31 | Communication terminal, communication method, communication system, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017049630A true JP2017049630A (en) | 2017-03-09 |
Family
ID=58278589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015170046A Pending JP2017049630A (en) | 2015-08-31 | 2015-08-31 | Communication terminal, communication method, communication system, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017049630A (en) |
-
2015
- 2015-08-31 JP JP2015170046A patent/JP2017049630A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8116235B2 (en) | Peer-to-peer aided live video sharing system | |
EP2744169B1 (en) | Method and apparatus for playing streaming media files | |
JP5852240B2 (en) | System and method for adaptive video communication | |
JP4645649B2 (en) | Switching source device, switching destination device, high-speed device switching system, and signaling method | |
JP6662784B2 (en) | Method and apparatus for displaying application data in a wireless communication system | |
EP3996355B1 (en) | Method for transferring media stream and user equipment | |
CN111427527B (en) | Screen projection method, device, equipment and computer readable storage medium | |
WO2014183582A1 (en) | Distributed iptv multi-screen gateway and iptv multi-screen interaction method | |
WO2013063941A1 (en) | Screen sharing method and system for dlna terminal in home network | |
JP2015528249A (en) | Topology processing method and apparatus in wireless communication system | |
CN107006054B (en) | Wireless docking method and system for audio-video relay | |
WO2017028655A1 (en) | Screenshot capturing method, terminal and set-top box | |
WO2017096851A1 (en) | Method, system, and server for pushing video file | |
CN109983777B (en) | Method, client device and controller system for enabling media orchestration | |
JP2016033811A (en) | Session management method, session management device, session management program and communication processing method | |
JP2007104193A (en) | Video distribution system, video distribution method, and video synchronization sharing apparatus | |
US20220286731A1 (en) | Multimedia apparatus and cast method | |
CN111386749A (en) | Method for establishing point-to-point service sessions over infrastructure links | |
JP2017049630A (en) | Communication terminal, communication method, communication system, and program | |
JP2009159324A (en) | Base station device and terminal device | |
JP5074177B2 (en) | Base station equipment | |
WO2015169005A1 (en) | Method, system and main sharing end for sharing screen and operation control | |
WO2017071655A1 (en) | Multi set top box bandwidth allocation method and device | |
JP4573135B2 (en) | Information processing apparatus, information processing method, and program | |
JP2021034898A (en) | Processing device, method and program |