JP4635966B2 - CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF - Google Patents
CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF Download PDFInfo
- Publication number
- JP4635966B2 JP4635966B2 JP2006168109A JP2006168109A JP4635966B2 JP 4635966 B2 JP4635966 B2 JP 4635966B2 JP 2006168109 A JP2006168109 A JP 2006168109A JP 2006168109 A JP2006168109 A JP 2006168109A JP 4635966 B2 JP4635966 B2 JP 4635966B2
- Authority
- JP
- Japan
- Prior art keywords
- content data
- content
- terminal device
- channel
- identification 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、コンテンツデータ配信の技術に関する。詳細には、チャンネル毎にコンテンツ配信装置を頂点として複数の端末装置が階層構造で多層に論理接続され、コンテンツ配信装置からストリーミング配信されるコンテンツデータがチャンネル毎に端末装置の中継機能により順次階層構造の下流に中継され、複数の端末装置によってコンテンツデータを再生可能としたコンテンツ配信システム、コンテンツ配信方法、コンテンツ配信システムにおける端末装置及びそのプログラムに関する。 The present invention relates to content data distribution technology. Specifically, a plurality of terminal devices are logically connected in a multilayered manner with a content distribution device at the top for each channel, and content data streamed from the content distribution device is sequentially layered for each channel by the relay function of the terminal device In particular, the present invention relates to a content distribution system, a content distribution method, a terminal device in a content distribution system, and a program thereof that are relayed downstream of each other and can reproduce content data by a plurality of terminal devices.
近年、インターネットなどのネットワークを介して、音楽、映画、トーク番組などコンテンツのデータ(以下、「コンテンツデータ」と呼ぶ。)のストリーミング配信を行うコンテンツ配信サービスが開始されてきている。ここで、ストリーミング配信とは、クライアント端末装置(以下、単に「端末装置」と呼ぶ。)がストリーミング受信できるストリーミング形式でコンテンツデータを配信する配信方法であり、端末装置はストリーミング配信されるコンテンツデータを受信しながら再生することができる。また、ストリーミング配信形態としては、コンテンツデータの配信時間が決められた放送形式のものと、端末装置からの要求に応じて個々の端末装置にストリーミング配信するオンデマンド形式のものがある。 2. Description of the Related Art In recent years, content distribution services that perform streaming distribution of content data (hereinafter referred to as “content data”) such as music, movies, and talk programs have been started via networks such as the Internet. Here, the streaming distribution is a distribution method for distributing content data in a streaming format that can be stream-received by a client terminal device (hereinafter simply referred to as “terminal device”). You can play while receiving. Further, as a streaming distribution form, there are a broadcast format in which a distribution time of content data is determined and an on-demand format in which streaming distribution is performed to individual terminal devices in response to a request from the terminal device.
放送形式のコンテンツ配信サービスは、従来、一つのコンテンツ配信装置から複数の端末装置に対して直接コンテンツの配信を行うものが主流であった。 Conventionally, a content distribution service in a broadcast format has been mainly used to directly distribute content from a single content distribution device to a plurality of terminal devices.
ところが、コンテンツ配信サービスの充実やネットワークへ接続する端末装置の増加に伴い、コンテンツ配信装置に対してコンテンツデータの配信を要求する端末装置が増加し、コンテンツ配信装置の負荷が増大していくのに加え、ネットワークにおけるトラフィックの集中が深刻な影響を及ぼすようになってきた。 However, with the enhancement of content distribution services and the increase in the number of terminal devices connected to the network, the number of terminal devices that request content data distribution from the content distribution devices increases, and the load on the content distribution devices increases. In addition, the concentration of traffic in the network has had a serious impact.
このようなコンテンツ配信装置への負荷やトラフィックの増大を回避するため、オリジナルの配信サーバに加え、ミラーサーバやキャッシュなどのサーバをネットワーク内に複数配置することにより負荷分散する技術が実用化されているが、コンテンツを配信するサーバが複数必要となり設備のコストが増大する。 In order to avoid such an increase in load and traffic on the content distribution device, a technology for distributing the load by placing a plurality of servers such as mirror servers and caches in the network in addition to the original distribution server has been put into practical use. However, a plurality of servers for distributing contents are required, and the cost of facilities increases.
そのため、端末装置間でのコンテンツデータの中継、すなわちP2P通信形態を用いることによりコンテンツ配信装置を増加することなく負荷やトラフィックの集中を低減することができるコンテンツ配信システムが提案されている。 Therefore, a content distribution system has been proposed that can reduce load and traffic concentration without increasing the number of content distribution devices by relaying content data between terminal devices, that is, using a P2P communication mode.
このコンテンツ配信システムは、コンテンツ配信装置を頂点としたツリー状階層構造で多層に複数の端末装置を論理接続し、コンテンツ配信装置からコンテンツデータを下流の端末装置へ順次配信していくものである。 In this content distribution system, a plurality of terminal devices are logically connected in multiple layers in a tree-like hierarchical structure with the content distribution device at the top, and content data is sequentially distributed from the content distribution device to downstream terminal devices.
すなわち、コンテンツ配信装置から配信されたコンテンツデータは、最上位層(第1階層)に位置する端末装置へ配信され、この最上位層に位置する端末装置はコンテンツ配信装置から配信されたコンテンツデータを第2階層に位置する端末装置へ中継し、このコンテンツデータの中継を最下層に位置する端末装置へ配信するまで行うものである。 That is, the content data distributed from the content distribution device is distributed to the terminal device located in the highest layer (first layer), and the terminal device located in the highest layer receives the content data distributed from the content distribution device. Relaying is performed to the terminal device located in the second hierarchy, and this content data is relayed to the terminal device located in the lowest layer.
通常、このようなコンテンツ配信システムにおいては、複数の端末装置をツリー状階層構造で論理接続するための接続管理装置がネットワーク上に配置されている。 Usually, in such a content distribution system, a connection management device for logically connecting a plurality of terminal devices in a tree-like hierarchical structure is arranged on a network.
接続管理装置は、コンテンツ配信システムの階層構造における端末装置の接続状態を管理する機能を有しており、この階層構造に参加していない端末装置からの参加要求を受信すると、階層構造を構成する複数の端末装置のいずれかを選択し、参加要求を行った端末装置に通知する。 The connection management device has a function of managing the connection state of the terminal devices in the hierarchical structure of the content distribution system, and forms a hierarchical structure when receiving a participation request from a terminal device not participating in the hierarchical structure. One of the plurality of terminal devices is selected and notified to the terminal device that made the participation request.
この通知を受けた端末装置は、接続管理装置から紹介を受けた接続先候補に対して接続要求することにより、コンテンツ配信システムに参加することができ、これにより、コンテンツ配信装置からのコンテンツデータを上流の端末装置を介して受信できる。 The terminal device that has received this notification can participate in the content distribution system by making a connection request to the connection destination candidate that has been introduced by the connection management device. It can be received via an upstream terminal device.
ところで、放送形式のコンテンツ配信システムにおいて、複数の放送チャンネル(以下、単に「チャンネル」とも呼ぶ。)によりコンテンツデータをストリーミング配信する場合、コンテンツ配信装置を頂点としたツリー状階層構造は、チャンネル毎に構成されることになる。 By the way, in a content distribution system in a broadcast format, when content data is streamed and distributed via a plurality of broadcast channels (hereinafter also simply referred to as “channels”), a tree-like hierarchical structure with the content distribution device at the apex is provided for each channel. Will be composed.
従って、端末装置のユーザが、視聴しているチャンネルとは異なるチャンネルのコンテンツデータを視聴するためにチャンネルを切替える操作を行った場合、視聴しているチャンネルに対応するツリー状階層構造とは異なるツリー状階層構造に参加することになる。 Therefore, when the user of the terminal device performs an operation of switching channels in order to view content data of a channel different from the channel being viewed, a tree different from the tree-like hierarchical structure corresponding to the channel being viewed Will participate in the hierarchical structure.
しかしながら、端末装置のユーザが視聴するチャンネルを切替えたとき、切替先のチャンネルのツリー状階層構造に参加するためには多くの時間を要する。 However, when the user of the terminal device switches the viewing channel, it takes a lot of time to participate in the tree-like hierarchical structure of the switching destination channel.
すなわち、ユーザがチャンネルを切替える操作を行った場合、端末装置は、接続管理装置に対して新たな階層構造における接続先となる他の端末装置を紹介してもらう処理や、NAT(Network Address Translation)を越える処理を行う必要があり、これらの処理が終了するまで新たな階層構造に参加することができず、ユーザがチャンネルを切替える操作を行っても、即座に接続先を切替えることができないのである。 That is, when the user performs an operation to switch channels, the terminal device performs processing for having the connection management device introduce other terminal devices that are connection destinations in the new hierarchical structure, or NAT (Network Address Translation). It is necessary to perform processes that exceed the limit, and it is not possible to participate in a new hierarchical structure until these processes are completed, and even if the user performs an operation to switch channels, the connection destination cannot be switched immediately. .
このようなユーザによるチャンネル切替え(以下、「ザッピング」とも呼ぶ)の問題に対処する方法として、コンテンツデータに他のチャンネルに関する要約データ(対策用のコンテンツデータ)を重畳して配信しておくことにより、ユーザによるチャンネル切替操作から端末装置が新たな他の端末装置に接続するまでの時間を短縮させる情報閲覧方法を用いたコンテンツ配信システムが提案されている(たとえば、特許文献1参照。)。
しかしながら、視聴しているチャンネルのコンテンツデータとザッピング対策用の他のチャンネルのコンテンツデータとを端末装置において同時に受信することになるため、端末装置においてネットワークを介して他の装置との通信を行う場合には、当該他の装置との通信速度を十分に確保することができない恐れがある。 However, since the terminal device simultaneously receives the content data of the channel being viewed and the content data of another channel for countermeasures against zapping, the terminal device communicates with other devices via the network. May not be able to secure a sufficient communication speed with the other device.
すなわち、ツリー状階層構造を有するコンテンツ配信システムに参加すると、視聴していないコンテンツデータまでも受信することになり、結果的に端末装置における通信帯域(バンド幅)を狭めてしまい、端末装置において、他の通信を行う場合にその通信速度を十分なものとすることができず、場合によっては通信を行うことができない恐れもある。 That is, when participating in a content distribution system having a tree-like hierarchical structure, even content data that has not been viewed will be received, resulting in narrowing the communication bandwidth (bandwidth) in the terminal device, When other communication is performed, the communication speed cannot be sufficient, and depending on the case, there is a possibility that communication cannot be performed.
本発明は、以上の不都合に鑑みてなされたものであり、視聴していないチャンネルのコンテンツデータをザッピング対策のために受信するようにした場合であっても、端末装置2における他の通信への影響を抑えることができるコンテンツ配信システム及び方法等を提供することを目的とする。
The present invention has been made in view of the above inconveniences, and even when content data of a channel that is not viewed is received as a countermeasure against zapping, the
上記課題を解決するために、請求項1に記載の発明は、複数のチャンネルでそれぞれコンテンツデータをストリーミング配信するコンテンツ配信装置を頂点として複数の端末装置がネットワーク上に前記チャンネル毎に階層構造で多層に論理接続されるように接続管理装置によって管理され、前記コンテンツ配信装置から送信される前記コンテンツデータが前記チャンネル毎に前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によってストリーミング配信される第1配信形態と、前記複数の端末装置間において、一つの端末装置からのコンテンツデータのダウンロード要求に基づいて前記コンテンツデータを保持する他の端末装置が前記コンテンツデータを配信する第2配信形態とを有するコンテンツ配信システムであって、前記コンテンツ配信装置は、前記ネットワークを介して前記コンテンツデータをストリーミング配信する配信手段を備え、前記接続管理装置は、前記チャンネル毎に前記階層構造を構成する前記端末装置の接続状態情報を記憶する接続状態情報記憶手段と、前記ネットワークを介して前記端末装置から接続先紹介要求を受信したとき、前記接続状態情報記憶手段に記憶された前記接続状態情報から接続先候補を選択する接続先候補選択手段と前記接続先候補選択手段によって選択された前記接続先候補を、前記接続先紹介要求を送信した前記端末装置へ前記ネットワークを介して通知する通知手段と、を備え、前記端末装置は、前記チャンネルを選択するためのチャンネル選択手段と、前記チャンネル選択手段によって選択されたチャンネルに関する前記接続先紹介要求と当該チャンネルと所定の関係を有するチャンネルに関する前記接続先紹介要求とを前記接続管理装置へ送信し、その後、前記接続管理装置から前記チャンネル毎に通知された前記接続先候補にそれぞれ接続して複数のチャンネルで前記第1配信形態に参加する接続手段と、前記ネットワークを介して接続した前記接続先候補から前記コンテンツデータを前記チャンネル毎にストリーミング受信するストリーミング受信手段と、前記ストリーミング受信手段により受信したコンテンツデータを前記チャンネル毎に一時的に蓄積するリングバッファ領域と、前記リングバッファ領域に蓄積したコンテンツデータのうち前記チャンネル選択手段によって選択されたチャンネルのコンテンツデータをストリーミング再生するストリーミング再生手段と、他の前記端末装置から前記コンテンツデータの中継依頼を受信すると、当該中継依頼を行った端末装置へ受信した前記コンテンツデータをストリーミング転送するストリーミング中継手段と、前記第2配信形態によるコンテンツデータのダウンロード要求の操作を検出するダウンロード操作検出手段と、前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、前記接続手段によって接続状態にあるチャンネルのうち、前記チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネルに関する前記接続先候補との接続を切断する切断手段と、前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、当該ダウンロード要求されたコンテンツデータを第2配信形態で取得するために、当該コンテンツデータの識別情報を取得する識別情報取得手段と、前記識別情報取得手段によって取得された前記コンテンツデータの識別情報に基づいて、前記ダウンロード要求されたコンテンツデータを前記第2配信形態の端末装置からダウンロードするダウンロード処理手段と、前記ダウンロード処理手段によりダウンロードした前記コンテンツデータを記憶するコンテンツデータ記憶手段と、前記ダウンロード処理手段での前記ダウンロード要求されたコンテンツデータのダウンロードが完了すると、前記切断手段によって切断したチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に再接続する再接続手段とを備えるコンテンツ配信システムとした。
In order to solve the above-mentioned problem, the invention according to
また、請求項2に記載の発明は、請求項1に記載の発明において、前記端末装置は、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されているか否かを判定する判定手段と、前記判定手段によって、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されていると判定すると、前記第2配信形態によって前記コンテンツデータのダウンロードを行わずに、前記リングバッファ領域に蓄積されているコンテンツデータを前記コンテンツデータ記憶手段に記憶するコンテンツデータ記憶制御手段とを有し、前記判定手段によって、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されていると判定すると、前記切断手段は、前記接続状態にあるチャンネルの前記接続先候補との接続を切断しないことを特徴とする。
Further, in the invention described in
また、請求項3に記載の発明は、請求項1又は請求項2に記載の発明において、前記端末装置は、前記ダウンロード要求されたコンテンツデータが前記コンテンツデータ記憶手段に記憶されているか否かを判定する判定手段を有し、前記判定手段によって、前記ダウンロード要求されたコンテンツデータが前記コンテンツデータ記憶手段に記憶されていると判定すると、前記切断手段は、前記接続状態にあるチャンネルの前記接続先候補との接続を切断せず、かつ前記ダウンロード処理手段は、前記第2配信形態によって前記コンテンツデータのダウンロードを行わないことを特徴とする。
The invention according to
また、請求項4に記載の発明は、請求項1から3のいずれか1項に記載の発明において、前記第2配信形態で配信するコンテンツデータを前記複数の端末装置のうち一部の端末装置に送信するコンテンツ投入手段と、前記コンテンツ配信装置によってストリーミング配信するコンテンツデータの識別情報を複数含む識別情報リストを記憶する識別情報リスト記憶手段と、前記識別情報リスト記憶手段に記憶した前記識別情報リストを前記複数の端末装置に送信する識別情報リスト送信手段と、を有するコンテンツ投入装置を備え、前記端末装置は、前記コンテンツ投入装置から送信される識別情報リストを受信する識別情報リスト受信手段を有し、前記識別情報取得手段は、前記識別情報リスト受信手段により受信した当該識別情報リストから前記ダウンロード要求されたコンテンツデータの識別情報を取得することを特徴とする
また、請求項5に記載の発明は、請求項4に記載の発明において、前記識別情報リスト記憶手段は、前記コンテンツ配信装置によってストリーミング配信するコンテンツデータ以外のコンテンツデータの識別情報を含む識別情報リストを記憶することを特徴とする。
According to a fourth aspect of the present invention, in the invention according to any one of the first to third aspects, content data distributed in the second distribution form is part of the plurality of terminal devices. Content input means to be transmitted to, identification information list storage means for storing an identification information list including a plurality of identification information of content data to be streamed by the content distribution device, and the identification information list stored in the identification information list storage means A content input device having an identification information list transmitting means for transmitting to the plurality of terminal devices, the terminal device having an identification information list receiving means for receiving an identification information list transmitted from the content input device. The identification information acquisition means is the identification information list received by the identification information list reception means. The identification information of the content data requested to be downloaded is acquired. The invention according to
また、請求項6に記載の発明は、請求項1から3のいずれか1項に記載の発明において、前記コンテンツ配信装置は、前記配信手段によってストリーミング配信するコンテンツデータの識別情報を送信する識別情報送信手段を有し、前記端末装置は、前記コンテンツ配信装置から送信される前記コンテンツデータの識別情報を受信する識別情報受信手段を有し、前記識別情報取得手段は、前記識別情報受信手段によって受信した前記コンテンツデータの識別情報から、前記ダウンロード要求されたコンテンツデータの識別情報を取得することを特徴とする。
The invention according to
また、請求項7に記載の発明は、複数のチャンネルでそれぞれコンテンツデータをストリーミング配信するコンテンツ配信装置を頂点として複数の端末装置がネットワーク上に前記チャンネル毎に階層構造で多層に論理接続されるように接続管理装置によって管理され、前記コンテンツ配信装置から送信される前記コンテンツデータが前記チャンネル毎に前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によってストリーミング配信される第1配信形態と、前記複数の端末装置間において、一つの端末装置からのコンテンツデータのダウンロード要求に基づいて前記コンテンツデータを保持する他の端末装置が前記コンテンツデータを配信する第2配信形態とを有するコンテンツ配信システムにおける前記端末装置であって、前記チャンネルを選択するためのチャンネル選択手段と、前記チャンネル選択手段によって選択されたチャンネルに関する前記接続先紹介要求と当該チャンネルと所定の関係を有するチャンネルに関する前記接続先紹介要求とを前記接続管理装置へ送信し、その後、前記接続管理装置から前記チャンネル毎に通知された前記接続先候補にそれぞれ接続して複数のチャンネルで前記第1配信形態に参加する接続手段と、前記ネットワークを介して接続した前記接続先候補から前記コンテンツデータを前記チャンネル毎にストリーミング受信するストリーミング受信手段と、前記ストリーミング受信手段により受信したコンテンツデータを前記チャンネル毎に一時的に蓄積するリングバッファ領域と、前記リングバッファ領域に蓄積したコンテンツデータのうち前記チャンネル選択手段によって選択されたチャンネルのコンテンツデータをストリーミング再生するストリーミング再生手段と、他の前記端末装置から前記コンテンツデータの中継依頼を受信すると、当該中継依頼を行った端末装置へ受信した前記コンテンツデータをストリーミング転送するストリーミング中継手段と、前記第2配信形態によるコンテンツデータのダウンロード要求の操作を検出するダウンロード操作検出手段と、前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、前記接続手段によって接続状態にあるチャンネルのうち、前記チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネルに関する前記接続先候補との接続を切断する切断手段と、前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、当該ダウンロード要求されたコンテンツデータを第2配信形態で取得するために、当該コンテンツデータの識別情報を取得する識別情報取得手段と、前記識別情報取得手段によって取得された前記コンテンツデータの識別情報に基づいて、前記ダウンロード要求されたコンテンツデータを前記第2配信形態の端末装置からダウンロードするダウンロード処理手段と、前記ダウンロード処理手段によりダウンロードした前記コンテンツデータを記憶するコンテンツデータ記憶手段と、前記ダウンロード処理手段での前記ダウンロード要求されたコンテンツデータのダウンロードが完了すると、前記切断手段によって切断したチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に再接続する再接続手段と、とを備える端末装置とした。 According to a seventh aspect of the present invention, a plurality of terminal devices are logically connected in multiple layers in a hierarchical structure for each channel on a network with a content distribution device that performs streaming distribution of content data on a plurality of channels as a vertex. The content data managed by the connection management device and transmitted from the content distribution device is stream-distributed by the relay function of the terminal device sequentially from the upstream terminal device to the downstream terminal device of the hierarchical structure for each channel. A first distribution form, and a second distribution form in which another terminal apparatus holding the content data distributes the content data based on a content data download request from one terminal apparatus, among the plurality of terminal apparatuses. In a content distribution system having A channel selection unit for selecting the channel; the connection destination introduction request for the channel selected by the channel selection unit; and the connection destination introduction request for a channel having a predetermined relationship with the channel. Connecting to the connection management device, and then connecting to the connection destination candidates notified for each channel from the connection management device to join the first distribution mode in a plurality of channels, and Streaming receiving means for streaming receiving the content data from the connection destination candidates connected via a network for each channel; and a ring buffer area for temporarily storing content data received by the streaming receiving means for each channel; The ring buffer Receiving a relay request for streaming the content data of the channel selected by the channel selection means from the content data stored in the area and the relay request for the content data from the other terminal device. A streaming relay unit for streaming transfer of the received content data to the terminal device; a download operation detection unit for detecting an operation of a download request for content data according to the second distribution form; and When an operation is detected, among the channels connected by the connecting means, the connection with the connection destination candidate relating to the channel having a predetermined relationship with the channel selected by the channel selecting means When the download request operation is detected by the cutting means for cutting the download data and the download operation detection means, the identification information of the content data is acquired in order to acquire the content data requested for download in the second distribution form. Identification information acquisition means for downloading, download processing means for downloading the content data requested for download from the terminal device in the second distribution form, based on the identification information of the content data acquired by the identification information acquisition means, Content data storage means for storing the content data downloaded by the download processing means, and when the download processing means completes downloading of the content data requested for download, the channel cut by the cutting means Transmitting the connection destination introduction request regarding Le to the connection management apparatus, then the re-connection means for reconnecting the notified the connection destination candidate from the connection management apparatus, a terminal device with a capital.
また、請求項8に記載の発明は、請求項7に記載の発明において、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されているか否かを判定する判定手段と、前記判定手段によって、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されていると判定すると、前記第2配信形態によって前記コンテンツデータのダウンロードを行わずに、前記リングバッファ領域に蓄積されているコンテンツデータを前記コンテンツデータ記憶手段に記憶するコンテンツデータ記憶制御手段とを有し、前記判定手段によって、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されていると判定すると、前記切断手段は、前記接続状態にあるチャンネルの前記接続先候補との接続を切断しないことを特徴とする。
The invention according to
また、請求項9に記載の発明は、請求項7又は請求項8に記載の発明において、前記ダウンロード要求されたコンテンツデータが前記コンテンツデータ記憶手段に記憶されているか否かを判定する判定手段を有し、前記判定手段によって、前記ダウンロード要求されたコンテンツデータが前記コンテンツデータ記憶手段に記憶されていると判定すると、前記切断手段は、前記接続状態にあるチャンネルの前記接続先候補との接続を切断せず、かつ前記ダウンロード処理手段は、前記第2配信形態によって前記コンテンツデータのダウンロードを行わないことを特徴とする。
Further, the invention according to
また、請求項10に記載の発明は、請求項7から9のいずれか1項に記載の発明において、前記第2配信形態にて配信するコンテンツデータを前記複数の端末装置のうち一部の端末装置に送信し、かつ前記コンテンツ配信装置によってストリーミング配信するコンテンツデータの識別情報を複数含む識別情報リストを前記複数の端末装置に送信するコンテンツ投入装置から前記識別情報リストを受信する識別情報リスト受信手段を有し、前記識別情報取得手段は、前記識別情報リスト受信手段により受信した当該識別情報リストから前記ダウンロード要求されたコンテンツデータの識別情報を取得することを特徴とする。
The invention according to
また、請求項11に記載の発明は、請求項10に記載の発明において、前記識別情報リストは、前記コンテンツ配信装置によってストリーミング配信するコンテンツデータ以外のコンテンツデータの識別情報を含むことを特徴とする。
The invention according to
また、請求項12に記載の発明は、請求項7から9のいずれか1項に記載の発明において、前記コンテンツ配信装置から送信される前記コンテンツデータの識別情報を受信する識別情報受信手段とを有し、記識別情報取得手段は、前記識別情報受信手段によって受信した前記コンテンツデータの識別情報から前記ダウンロード要求されたコンテンツデータの識別情報を取得することを特徴とする。
The invention according to
また、請求項13に記載の発明は、請求項7〜12のいずれか1項に記載の発明において、前記チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネルが複数ある場合であって、前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、前記接続手段によって接続状態にあるチャンネルのうち、前記チャンネル選択手段によって選択されたチャンネルと所定の関係を有する全てのチャンネルに関する前記接続先候補との接続を切断することを特徴とする。
The invention described in
また、請求項14に記載の発明は、請求項7〜13のいずれか1項に記載の発明において、前記所定の関係を有するチャンネルは、前記チャンネル選択手段によって選択されたチャンネル番号に隣接するチャンネル番号を有するチャンネルであることを特徴とする。
The invention according to claim 14 is the invention according to any one of
また、請求項15に記載の発明は、コンピュータを、請求項7〜14のいずれかに記載の端末装置における各手段として機能させるためのプログラムとした。
The invention according to claim 15 is a program for causing a computer to function as each means in the terminal device according to any one of
また、請求項16に記載の発明は、複数のチャンネルでそれぞれコンテンツデータをストリーミング配信するコンテンツ配信装置を頂点として複数の端末装置がネットワーク上に前記チャンネル毎に階層構造で多層に論理接続されるように接続管理装置によって管理され、前記コンテンツ配信装置から送信される前記コンテンツデータが前記チャンネル毎に前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によってストリーミング配信される第1配信形態と、前記複数の端末装置間において、一つの端末装置からのコンテンツデータのダウンロード要求に基づいて前記コンテンツデータを保持する他の端末装置が前記コンテンツデータを配信する第2配信形態とを有するコンテンツ配信システムにおけるコンテンツ配信方法であって、前記配信装置が、前記コンテンツデータをストリーミング配信するステップと、前記接続管理装置が、前記階層構造を構成する前記端末装置の接続状態情報を接続状態情報記憶手段に記憶するステップと、前記端末装置が、前記チャンネルを選択するためのチャンネル選択手段によって選択されたチャンネルに関する接続先紹介要求と当該チャンネルと所定の関係を有するチャンネルに関する前記接続先紹介要求とを前記ネットワークを介して前記接続管理装置に送信するステップと、前記接続管理装置が、前記ネットワークを介して前記端末装置から前記接続先紹介要求を受信したとき、前記接続状態情報記憶手段に記憶された前記接続状態情報から接続先候補を選択するステップと、前記接続管理装置が、前記選択した接続先候補を、前記接続先紹介要求を送信した前記端末装置へ前記ネットワークを介して通知するステップと、前記端末装置が、前記接続管理装置から通知された前記チャンネル毎の前記接続先候補にそれぞれ接続して複数のチャンネルで前記第1配信形態に参加するステップと、前記端末装置が、前記ネットワークを介して接続した前記接続先候補から前記コンテンツデータを前記チャンネル毎にストリーミング受信するステップと、前記端末装置が、前記ストリーミング受信したコンテンツデータを前記チャンネル毎にリングバッファ領域に一時的に蓄積するステップと、前記端末装置が、前記リングバッファ領域に蓄積したコンテンツデータのうち前記チャンネル選択手段によって選択されたチャンネルのコンテンツデータをストリーミング再生するステップと、前記端末装置が、他の前記端末装置から前記コンテンツデータの中継依頼を受信すると、当該中継依頼を行った端末装置へ受信した前記コンテンツデータをストリーミング転送するステップと、前記端末装置が、前記第2配信形態によるコンテンツデータのダウンロード要求の操作を検出すると、前記接続状態にあるチャンネルのうち、前記選択されたチャンネルと所定の関係を有するチャンネルに関する前記接続先候補との接続を切断するステップと、前記端末装置が、前記第2配信形態によるコンテンツデータのダウンロード要求の操作があると、当該ダウンロード要求されたコンテンツデータを第2配信形態で取得するために、当該コンテンツデータの識別情報を取得するステップと、前記端末装置が、前記取得されたコンテンツデータの識別情報に基づいて、前記ダウンロード要求されたコンテンツデータを前記第2配信形態の端末装置からダウンロードするステップと、前記端末装置が、前記ダウンロードしたコンテンツデータをコンテンツデータ記憶手段に記憶するステップと、前記端末装置が、前記ダウンロード要求されたコンテンツデータのダウンロードが完了すると、前記切断したチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に再接続するステップとを有するコンテンツ配信方法とした。 Further, in the invention described in claim 16, a plurality of terminal devices are logically connected in multiple layers in a hierarchical structure for each channel on a network with a content distribution device that performs streaming distribution of content data through a plurality of channels as a vertex. The content data managed by the connection management device and transmitted from the content distribution device is stream-distributed by the relay function of the terminal device sequentially from the upstream terminal device to the downstream terminal device of the hierarchical structure for each channel. A first distribution form, and a second distribution form in which another terminal apparatus holding the content data distributes the content data based on a content data download request from one terminal apparatus, among the plurality of terminal apparatuses. Content distribution system with In the content distribution method, the distribution device performs streaming distribution of the content data, and the connection management device stores connection state information of the terminal devices constituting the hierarchical structure in a connection state information storage unit. A connection destination introduction request for the channel selected by the channel selection means for selecting the channel by the terminal device and the connection destination introduction request for a channel having a predetermined relationship with the channel via the network. Transmitting to the connection management device, and when the connection management device receives the connection destination introduction request from the terminal device via the network, the connection status information stored in the connection status information storage means Selecting a connection destination candidate from: and the connection management device Notifying the selected connection destination candidate to the terminal device that has transmitted the connection destination introduction request via the network, and the connection destination for each channel notified from the connection management device by the terminal device Connecting to each candidate and participating in the first distribution form through a plurality of channels; and receiving the content data for each channel from the connection destination candidate connected via the network by the terminal device The terminal device temporarily storing the streaming-received content data in a ring buffer area for each channel; and the channel selection means of the content data stored in the ring buffer area by the terminal device Content data of the channel selected by Streaming the data, and when the terminal device receives the content data relay request from another terminal device, streaming the received content data to the terminal device that has made the relay request; When the terminal device detects an operation of downloading content data according to the second distribution form, the connection destination candidate for the channel having a predetermined relationship with the selected channel among the channels in the connection state Disconnecting the connection, and when the terminal device performs an operation of requesting download of content data in the second distribution form, the content data is acquired in order to acquire the content data requested for download in the second distribution form. Obtaining the identification information of A step of downloading the content data requested to be downloaded from the terminal device in the second distribution form based on the acquired identification information of the content data; and the terminal device is configured to download the downloaded content data as content. Storing in the data storage means, and when the terminal device completes the download of the requested content data, transmits the connection destination introduction request for the disconnected channel to the connection management device, and then the connection And a step of reconnecting to the connection destination candidate notified from the management device.
請求項1,7,15,16に記載の発明によれば、第1配信形態であるツリー型階層構造による放送形態でコンテンツデータを視聴する際に、ザッピング対策用として視聴するチャンネルと一定の関係を有するチャンネルの階層構造に参加し、その後コンテンツ購入をグリッド型接続などの第2配信形態で行うときにはザッピング対策チャンネルの階層構造から自動で脱退し、第2配信形態でのコンテンツ購入処理が終了したら自動でザッピング対策チャンネルの階層構造に自動的に再接続(再参加)するようにしているので、ネットワークバンド幅が厳しい環境下においても、第1配信形態と第2配信形態とを両立することができるコンテンツ配信システム又はその端末装置を提供することができる。 According to the first, seventh, fifteenth and sixteenth aspects of the present invention, when content data is viewed in the broadcast form with the tree-type hierarchical structure as the first distribution form, there is a fixed relationship with the channel to be viewed as a countermeasure for zapping. When the content purchase is performed in the second distribution form such as grid connection after that, the zapping countermeasure channel is automatically withdrawn from the hierarchical structure, and the content purchase process in the second distribution form is completed. Since the network is automatically reconnected (rejoined) to the zapping countermeasure channel hierarchical structure, both the first distribution form and the second distribution form can be achieved even in an environment where the network bandwidth is severe. It is possible to provide a content distribution system or a terminal device thereof.
また、請求項2,8に記載の発明によれば、放送形態で配信されるコンテンツデータをリングバッファ領域に一時的にキャッシュしておき、購入するコンテンツデータがこのリングバッファ領域に蓄積されているときには、リングバッファ領域に蓄積されたコンテンツデータを購入することができる。従って、新たに第2配信形態でコンテンツデータを取得するのに比べコンテンツデータの購入処理を短縮することができる。リングバッファ領域の容量を大きくすることによって、放送形態で配信されたコンテンツデータを多数キャッシュすることができるので、コンテンツデータを視聴した後にダウンロードすることが多いようなユーザに対してダウンロード時間の短縮効果が大きい。 According to the second and eighth aspects of the present invention, content data distributed in broadcast form is temporarily cached in the ring buffer area, and the purchased content data is stored in the ring buffer area. Sometimes, the content data stored in the ring buffer area can be purchased. Therefore, it is possible to shorten the content data purchase process compared to newly acquiring content data in the second distribution form. By increasing the capacity of the ring buffer area, it is possible to cache a large amount of content data distributed in broadcast form, so that the download time can be shortened for users who often download the content data after viewing it. Is big.
また、請求項3,9に記載の発明によれば、購入するコンテンツデータがすでにコンテンツデータ記憶手段に蓄積されているときには、コンテンツデータ記憶手段に記憶されたコンテンツデータを購入することができる。従って、新たに第2配信形態でコンテンツデータを取得するのに比べコンテンツデータの購入処理を短縮することができる。たとえば、端末装置がコンテンツ保持端末装置であった場合、コンテンツ保持端末装置に対応するコンテンツデータを購入する場合には、自端末装置に記憶しているコンテンツデータを用いることができる。 According to the third and ninth aspects of the present invention, when the content data to be purchased is already stored in the content data storage means, the content data stored in the content data storage means can be purchased. Therefore, it is possible to shorten the content data purchase process compared to newly acquiring content data in the second distribution form. For example, when the terminal device is a content holding terminal device, when purchasing content data corresponding to the content holding terminal device, the content data stored in the terminal device can be used.
また、請求項4,10に記載の発明によれば、第2配信形態においてコンテンツデータをダウンロードするために必要なコンテンツデータの識別情報のリストをコンテンツ投入装置から取得することができるため、コンテンツのダウンロード処理を行う毎にコンテンツ投入装置へダウンロードするコンテンツデータの識別情報を取得する必要がなく、ネットワークやコンテンツ投入装置への負荷を軽減することができ、ダウンロード処理の時間を短縮することができる。 According to the fourth and tenth aspects of the present invention, since the list of content data identification information necessary for downloading the content data in the second distribution form can be acquired from the content input device, It is not necessary to acquire identification information of content data to be downloaded to the content input device every time the download process is performed, the load on the network and the content input device can be reduced, and the download processing time can be shortened.
また、請求項5,11に記載の発明によれば、コンテンツ投入装置は、コンテンツ配信装置によってストリーミング配信するコンテンツデータ以外のコンテンツデータの識別情報を含む識別情報リストを記憶することができるので、放送形態で直接配信されるコンテンツデータではないが、それらと関係するコンテンツデータを第2配信形態で取得することができる。 According to the fifth and eleventh aspects of the present invention, the content input device can store an identification information list including identification information of content data other than the content data to be streamed by the content distribution device. Although it is not the content data directly distributed in the form, the content data related to them can be acquired in the second distribution form.
また、請求項6,12に記載の発明によれば、第2配信形態においてコンテンツデータをダウンロードするために必要なコンテンツデータの識別情報がコンテンツ配信装置から端末装置へ送信されるため、端末装置では、ダウンロードするコンテンツデータの識別情報をコンテンツ投入装置などに要求して取得する必要がないため、コンテンツ投入装置における処理を軽減することができる。また、コンテンツデータの識別情報をストリーミング配信するコンテンツパケットのヘッダに含ませてコンテンツ配信装置から送信するようにすることもできる。
Further, according to the inventions of
また、請求項13に記載の発明によれば、ザッピング対策チャンネルが複数ある場合には、全てのザッピング対策チャンネルから脱退するので、通信帯域をより多く確保することができ、第2配信形態での通信を安定させることができる。
Further, according to the invention of
また、請求項14に記載の発明によれば、ザッピング対策チャンネルを視聴チャンネルのチャンネル番号に隣接するチャンネル番号のチャンネルとしたので、チャンネルの切替えをチャンネル番号を1つずつ増減させて切替えるようにしたチャンネル切替えインターフェイスを備える端末装置においては、有効にザッピング対策を行なうことができる。ここで、「チャンネル番号を1つずつ増減させる」とは、例えば、視聴中チャンネルがチャンネルch4であり、隣接するザッピング対策チャンネルがチャンネルch1,ch6のときには、チャンネルch4からチャンネルch1へ或いはチャンネルch4からチャンネルch6へ切替えることを意味する。 According to the fourteenth aspect of the invention, since the zapping countermeasure channel is a channel having a channel number adjacent to the channel number of the viewing channel, the channel switching is performed by increasing or decreasing the channel number one by one. A terminal device having a channel switching interface can effectively take a countermeasure against zapping. Here, “increase / decrease the channel number by one” means, for example, when the channel being viewed is channel ch4 and the adjacent zapping countermeasure channels are channels ch1 and ch6, from channel ch4 to channel ch1 or from channel ch4. This means switching to channel ch6.
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、配信する情報を音楽データや映像データなどのコンテンツデータとしたコンテンツ配信システムに対して本発明を適用した場合の実施形態である。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, the best embodiment of the invention will be described based on the drawings. The embodiment described below is an embodiment when the present invention is applied to a content distribution system in which information to be distributed is content data such as music data and video data.
[1.コンテンツ配信システムの構成等]
図1は、本実施形態に係るコンテンツ配信システムSの概要構成例を示す図である。図1に示す物理接続形態のように、コンテンツ配信システムSを構成するコンテンツ配信装置1、端末装置2a1,2a2,2b1〜2b4,2c1〜2c8、接続管理装置3、コンテンツ投入装置4、コンタクト先紹介装置5は、インターネットに代表されるネットワーク上に分散配置されている。なお、コンテンツ配信システムSに直接関係ない装置もネットワーク6に接続されるが、ここでは省略している。また、端末装置2a1,2a2,2b1〜2b4,2c1〜2c8のいずれかの端末装置又は全ての端末装置を示す場合には、便宜上、端末装置2という場合がある。
[1. Content distribution system configuration]
FIG. 1 is a diagram illustrating a schematic configuration example of a content distribution system S according to the present embodiment. As in the physical connection form shown in FIG. 1, the
コンテンツ配信装置1、端末装置2a1,2a2,2b1〜2b4,2c1〜2c8、接続管理装置3、コンテンツ投入装置4、コンタクト先紹介装置5には、各装置を識別する情報としての固有の製造番号(たとえば、MACアドレス)及びIP(Internet Protocol)アドレス(所在情報)が割り当てられており、これら装置は、ネットワークの一例としてのネットワーク6にルータ10等を介して接続されている。すなわち、目的の接続先装置のIPアドレスを宛先IPアドレス、自装置のIPアドレスを送信元IPアドレスとしたヘッダを含むパケットを送信することによって通信接続が可能となっている。
改ページは不要 図1に示す例では、コンテンツ配信装置1、接続管理装置3、コンテンツ投入装置4、コンタクト先紹介装置5は、それぞれ独立した装置としているが、一つの装置においてこれらの装置の機能を実現するようにしてもよい。この場合にはこれらの装置のIPアドレスは同一のものとなり、ポート番号などで区別されることになる。
The
In the example shown in FIG. 1, the
本実施形態におけるコンテンツ配信システムは、複数の放送チャンネル(以下、単に「チャンネル」と呼ぶ。)でそれぞれコンテンツデータをストリーミング配信するコンテンツ配信装置を頂点として複数の端末装置がネットワーク上にチャンネル毎に階層構造で多層に論理接続されるように接続管理装置によって管理され、コンテンツ配信装置から送信されるコンテンツデータがチャンネル毎に階層構造の上流の端末装置から下流の端末装置にかけて順次端末装置の中継機能によってストリーミング配信される第1配信形態と、複数の端末装置間において、一つの端末装置からのコンテンツデータのダウンロード要求に基づいてコンテンツデータを保持する他の端末装置がコンテンツデータを配信する第2配信形態とを有している。 The content distribution system according to the present embodiment is configured such that a plurality of terminal devices are layered for each channel on a network with a content distribution device that performs streaming distribution of content data on a plurality of broadcast channels (hereinafter simply referred to as “channels”) as a vertex. It is managed by the connection management device so that it is logically connected in multiple layers in the structure, and the content data transmitted from the content distribution device is sequentially transferred from the upstream terminal device to the downstream terminal device of the hierarchical structure for each channel by the relay function of the terminal device A first distribution form in which streaming distribution is performed, and a second distribution form in which another terminal apparatus that holds content data based on a request to download content data from one terminal apparatus distributes content data between a plurality of terminal apparatuses. And have.
そして、端末装置の利用者が第1配信形態によりコンテンツ配信装置からのコンテンツデータを視聴するときには、当該端末装置は、視聴対象のチャンネル(以下、「視聴チャンネル」と呼ぶ。ここでは、チャンネルch1〜chNのN個のチャンネルがあるものとする。)の階層構造に参加するとともに、視聴チャンネル以外のチャンネルであって、視聴チャンネルと所定の関係を有するチャンネル(以下、「ザッピング対策チャンネル」と呼ぶ。)の階層構造にも参加するようにしている。 When the user of the terminal device views the content data from the content distribution device in the first distribution form, the terminal device is referred to as a viewing target channel (hereinafter referred to as “viewing channel”. Here, channels ch1 to ch1). Channels other than the viewing channel and having a predetermined relationship with the viewing channel (hereinafter referred to as “zapping countermeasure channel”). ) To participate in the hierarchical structure.
従って、端末装置のユーザによる視聴チャンネルの切替え操作(以下、「ザッピング」と呼ぶ。)を行なわれた場合に、ザッピング対策チャンネルによって、ユーザによるチャンネル切替操作から新たなチャンネルのコンテンツデータを視聴できるまでの時間を短縮させることができる。 Therefore, when a viewing channel switching operation (hereinafter referred to as “zapping”) is performed by the user of the terminal device, the content data of the new channel can be viewed from the channel switching operation by the user by the zapping countermeasure channel. Can be shortened.
図2には、端末装置2Xが第1配信形態における視聴チャンネルAの階層構造とザッピング対策チャンネルBの階層構造とに参加している状態を模式的に示している。なお、図2においては、説明の便宜上ザッピング対策チャンネルを1つのチャンネルとしている。
FIG. 2 schematically shows a state in which the
このように端末装置2Xが視聴チャンネルAとザッピング対策チャンネルBとに接続している状態で、端末装置2Xのユーザが第2配信形態によってコンテンツデータを取得するための操作を行うと、端末装置2Xは、図3に示すように、ザッピング対策チャンネルBを切断し、ザッピング対策チャンネルBの階層構造から脱退する。
When the user of the
その後、端末装置2Xは、図4に示すように、コンテンツ検索メッセージを送信して、ルート端末装置2Zからコンテンツ保持端末装置2Yの所在情報を取得する。その後、端末装置2Xは、コンテンツ保持端末装置2Yに対してコンテンツデータの送信要求を行い、第2配信形態によってコンテンツデータを取得する。
After that, as shown in FIG. 4, the
第2配信形態によるコンテンツデータ受信が完了すると、端末装置2Xは、第2配信形態によってコンテンツデータを取得する際に脱退したザッピング対策チャンネルBに再接続し、ザッピング対策チャンネルBの階層構造に再参加し、図2に示す状態に戻る。
When the reception of the content data in the second distribution form is completed, the
以上のように、本実施形態におけるコンテンツ配信システムSでは、端末装置2のユーザが、第1配信形態であるツリー型階層構造による放送形態でコンテンツデータを視聴する際に、視聴するチャンネルと一定の関係を有するザッピング対策チャンネルの階層構造に参加し、その後コンテンツ購入をグリッド型接続などの第2配信形態で行うときにはザッピング対策チャンネルの階層構造から自動で脱退し、第2配信形態でのコンテンツ購入処理が終了したら自動でザッピング対策チャンネルの階層構造に自動的に再参加するようにしているので、ネットワークバンド幅が厳しい環境下においても、ザッピング対策を施しつつ、第1配信形態と第2配信形態とを両立することができるコンテンツ配信システム又はその端末装置を提供することができる。
As described above, in the content distribution system S according to the present embodiment, when the user of the
以下、本実施形態におけるコンテンツ配信システムについて、更に具体的に図面を参照して説明する。 Hereinafter, the content distribution system in the present embodiment will be described more specifically with reference to the drawings.
[1.1.第1配信形態について]
コンテンツ配信システムSの第1配信形態は、図1に示すように、コンテンツ配信装置1を頂点として複数の端末装置2a1,2a2,2b1〜2b4,2c1〜2c8がツリー状階層構造で多層に論理接続されており、コンテンツ配信装置1からコンテンツデータが当該ツリー状階層構造の上流の端末装置2から下流の端末装置2かけて順次端末装置2の中継機能によってストリーミング配信されるように構成される。このツリー状階層構造は、コンテンツ配信装置1が配信するチャンネル毎に構成される。
[1.1. About the first distribution form]
As shown in FIG. 1, the first distribution form of the content distribution system S is that a plurality of terminal devices 2a1, 2a2, 2b1-2b4, 2c1-2c8 are logically connected in a tree-like hierarchical structure with the
このコンテンツ配信システムSの第1配信形態においては、チャンネル毎にコンテンツ配信装置1を頂点(ここでは、便宜上第0階層とする。)として複数の端末装置2がツリー状階層構造で多層に論理接続されるように接続管理装置3によって管理される。なお、本実施形態においては、ツリー状階層構造として説明するが、これに限られず、複数の端末装置2がチェーン状の階層構造で多層に論理接続されるようにしてもよい。また、端末装置2a1,2a2は便宜上端末装置2aと、端末装置2b1〜2b4は便宜上端末装置2bと、端末装置2c1〜2c8は便宜上端末装置2cという場合がある。
In the first distribution form of the content distribution system S, a plurality of
ここで、第1配信形態におけるコンテンツデータの配信動作について、図5を参照して簡単に説明する。図5はコンテンツ配信システムSにおける第1配信形態の配信動作説明図である。 Here, the content data distribution operation in the first distribution mode will be briefly described with reference to FIG. FIG. 5 is an explanatory diagram of the distribution operation of the first distribution form in the content distribution system S.
図5に示すように、第1配信形態でコンテンツ配信装置1によってストリーミング配信されるコンテンツデータは、コンテンツ投入装置4によってコンテンツ配信装置1へ投入される。すなわち、コンテンツデータは、コンテンツ投入装置4からコンテンツ配信装置1へ送信され、コンテンツ配信装置1において受信してハードディスク装置に保持される。
As shown in FIG. 5, content data that is stream-distributed by the
接続管理装置3は、図5に示すように、コンテンツ配信システムSにおける第1配信形態に参加していない端末装置2、言い換えればチャンネルのいずれのツリー状階層構造も構成していない端末装置2から接続先紹介要求を受信すると、第1配信形態のツリー状階層構造の状態等に基づいて、その端末装置2がストリーミング配信を受けるための上流の装置として接続する接続先候補(コンテンツ配信装置1又は端末装置2)を選択する。そして、接続管理装置3は、このように選択した接続先候補の所在情報(接続先候補のIPアドレスやポート番号など)及び通信プロトコル等を端末装置2に通知する。また、接続先紹介要求は、他のチャンネルに切り替えるときや、上流装置との接続が切断されたときに端末装置2から送信される。
As shown in FIG. 5, the
なお、コンテンツ配信システムSにおいて、すでに通信プロトコルやポート番号が固定されているときには、端末装置2へのポート番号及び通信プロトコルは通知しなくてもよい。ここで、通信プロトコルとして、MMS(Microsoft Media Server)プロトコル、RTSP(Real Time Streaming Protocol)等が用いられる。また、コンテンツデータの形式として、ASF(Advanced Streaming Format)、WMA(Windows(登録商標) Media Audio)、WMV(Windows(登録商標) Media Video)等が用いられる。
In the content distribution system S, when the communication protocol and the port number are already fixed, the port number and the communication protocol to the
端末装置2は、接続管理装置3から接続先候補の所在情報を受信すると、その所在情報を宛先として接続先候補に対し、コンテンツ配信システムSへの参加(接続)を要求し、これにより端末装置2がコンテンツ配信システムSの第1配信形態における階層構造へ組み込まれる。すなわち、端末装置2はコンテンツ配信装置1から配信されるコンテンツデータを受信可能となる。
Upon receiving the location information of the connection destination candidate from the
コンテンツ配信システムSにおける第1配信形態は、このように端末装置2が次々と各チャンネルに参加することによって、コンテンツ配信装置1を頂点として複数の端末装置2がツリー状階層構造で多層に論理接続される。そして、コンテンツ配信装置1から配信されるコンテンツデータは、端末装置2の中継機能により順次下流の端末装置2へ中継されて複数の端末装置2にストリーミング配信される。
In the first distribution form in the content distribution system S, the
すなわち、図5に示すように、コンテンツ配信装置1から端末装置2a1,2a2(第1層の端末装置)へコンテンツデータが送信され、端末装置2a1,2a2はコンテンツデータを受信すると、下流の端末装置2b1〜2b4(第2階層の端末装置)へ受信したコンテンツデータを順次中継する。端末装置2b1〜2b4はコンテンツデータを受信すると、下流の端末装置2c1〜2c8(第3階層の端末装置)へ受信したコンテンツデータを順次中継する。なお、図5においては、理解を容易にするため、複数のチャンネルのうち一つのチャンネルの階層構造のみを表している。
That is, as shown in FIG. 5, when content data is transmitted from the
端末装置2は、組み込まれた階層構造の位置の上流の端末装置2又はコンテンツ配信装置1の所在情報と、組み込まれた階層構造の位置の下流の端末装置2の所在情報とを後述のハードディスク装置203に記憶しており、このように記憶した所在情報に基づいて、コンテンツデータの中継を行うようにしている。また、配信されるコンテンツデータは、複数のパケットに分割されて順次配信されるものであり、このようにパケットに分割されて配信されるデータをコンテンツパケットという。
The
このように端末装置2へ配信されるコンテンツデータは、チャンネル毎にその階層構造を構成する端末装置2へ配信される。配信されるコンテンツデータには、音楽や映画などコンテンツのデータのほか、再生時刻情報が含まれている。そして、コンテンツデータを受信した複数の端末装置2は、順次送信されるコンテンツデータの再生を再生時刻情報に基づいて行う。
In this way, the content data distributed to the
ここで、端末装置2におけるリングバッファ領域について説明する。図6は、端末装置2におけるリングバッファ領域を用いてコンテンツデータを受信し、再生或いは下流の端末装置2へ中継する構成を概念的に表した図である。このリングバッファ領域は、参加したチャンネル毎に設けられるものであり、視聴チャンネルのためのリングバッファ領域のほか、ザッピング対策チャンネルのためのリングバッファ領域も設けられることになる。
Here, the ring buffer area in the
端末装置2は、第1配信形態に参加したときに、参加したチャンネルにおける階層構造の上流の装置からストリーミング配信されるコンテンツパケットをストリーム受信器によって順次受信し、受信したコンテンツパケットに含まれるコンテンツデータをリングバッファ領域に一時的に蓄積する。リングバッファ領域に一時的に蓄積されたコンテンツデータは、その再生時刻になると、端末装置2の再生手段であるプレイヤによってリングバッファ領域から取り出されて再生される。
When the
ここで、図6に示すように、リングバッファ領域には時計回りの方向で新しいコンテンツデータが順次蓄積され、最も古いコンテンツデータが新しいコンテンツデータに書き換わるように構成されている。すなわち、ストリーム受信器によってリングバッファ領域に書き込まれるポイントをAとすると、このポイントAが時計回りに移動していくのである。 Here, as shown in FIG. 6, new content data is sequentially stored in the ring buffer area in the clockwise direction, and the oldest content data is rewritten to new content data. That is, if the point written in the ring buffer area by the stream receiver is A, the point A moves clockwise.
なお、図6におけるリングバッファ領域は概念的に示したものであり、実際にリング形状をしているのではなく、端末装置2の制御手段が、記憶領域における所定アドレス領域に蓄積した最も古いコンテンツデータを順次新しいコンテンツデータに書き換えることにより実現するものである。
Note that the ring buffer area in FIG. 6 is conceptually shown and is not actually ring-shaped, but the control unit of the
また、コンテンツデータには上述のように再生時刻情報が格納されており、プレイヤはリングバッファ領域に蓄積したコンテンツデータのうち、現時刻と合致する再生時刻情報を有するコンテンツデータ(ここでは、図6中Bのポイントのコンテンツデータ)をリングバッファ領域から取り出して順次再生する。なお、ザッピング対策チャンネルのリングバッファ領域に蓄積したコンテンツデータは再生されない。 In addition, the playback time information is stored in the content data as described above, and the player has content data having playback time information matching the current time among the content data stored in the ring buffer area (here, FIG. 6). The content data of the middle B point) is taken out from the ring buffer area and sequentially reproduced. Note that the content data stored in the ring buffer area of the zapping countermeasure channel is not reproduced.
このようなリングバッファ領域によって、再生時刻前のコンテンツデータを蓄積しながら、再生時刻までにネットワーク6の状態に依存して間欠的に発生するコンテンツパケットの損失に対処する。言い換えれば、コンテンツ配信装置1は、パケットの損失補完処理を行えるだけのマージンを確保しながらコンテンツデータを配信している。なお、パケットの損失補完処理とは、ある一定時間待っても上位装置からのパケットが届かない場合に、上位装置にパケットの再送要求を行い、上位装置から再度パケットを送信させる処理をいう。損失補完処理ではこのように一連の処理を行わなければならず、ある程度時間がかかるため、上述のようにマージンの確保が必要となる。
With such a ring buffer area, content data loss that occurs intermittently depending on the state of the
ここで、階層構造の下流に他の端末装置2が2台接続されている場合、図6に示すように、端末装置2に2つのストリーム送信器が設けられる。このストリーム送信器は、リングバッファ領域に格納されているコンテンツデータを所定量毎にコンテンツパケットのデータ領域に格納してコンテンツパケットを生成し、それぞれ下流に接続された他の端末装置2へこのコンテンツパケットを順次送信する。
Here, when two other
第1実施形態における端末装置2では、上流の装置から送信されるコンテンツパケットに含まれるコンテンツデータを取り出してリングバッファ領域に蓄積するようにしているが、コンテンツパケットをそのままリングバッファ領域に蓄積するようにしてもよい。いずれにせよ、ストリーム送信器は、ストリーム受信器によって受信したコンテンツパケットの送信先及び送信元の情報を置き換えたコンテンツパケットを下流の端末装置2に送信することになる。なお、ストリーム受信器は後述のストリーム受信手段に対応し、プレイヤは後述のストリーム再生手段に対応し、ストリーム送信器は後述のストリーム中継手段に対応する。
In the
このように端末装置2は、コンテンツデータを一時的に蓄積するリングバッファ領域を設けることによって、コンテンツパケットをプリバッファリングしながらパケット損失に対する補完を行い、ネットワーク6の経路上で発生するパケット損失の影響を回避するようにしている。
In this way, the
以上のように、コンテンツ配信システムSの第1配信形態では、コンテンツ配信装置1から送信されたコンテンツデータが複数の端末装置2にストリーミング配信され、複数の端末装置2において同時刻にコンテンツを再生することができる。すなわち、コンテンツ配信システムSは、P2Pを用いて複数の端末装置2への放送形式のストリーミング配信を実現している。
As described above, in the first distribution form of the content distribution system S, the content data transmitted from the
[1.2.第2配信形態について]
次に、図7を参照して、コンテンツ配信システムSにおける第2配信形態の概要構成等について説明する。図7は、本実施形態に係るコンテンツ配信システムSにおける第2配信形態を示す図である。この第2配信形態は、P2Pグリッド型配信システムであり、本実施形態においては、分散ハッシュテーブル(以下、「DHT」(Distributed Hash Table)と呼ぶ。)を利用することによりネットワーク上に分散配置された複数の端末装置2間でコンテンツデータの送受信を行う配信形態を例に挙げて説明する。
[1.2. About the second distribution form]
Next, with reference to FIG. 7, a schematic configuration and the like of the second distribution form in the content distribution system S will be described. FIG. 7 is a diagram illustrating a second distribution form in the content distribution system S according to the present embodiment. This second distribution form is a P2P grid type distribution system. In this embodiment, the second distribution form is distributed on the network by using a distributed hash table (hereinafter referred to as “DHT”). A distribution form in which content data is transmitted and received between a plurality of
[1.2.1 DHTの概要]
まず、本実施形態に係るDHTを利用したアルゴリズムについて説明する。
[1.2.1 Outline of DHT]
First, an algorithm using DHT according to the present embodiment will be described.
コンテンツ配信システムSの第2配信形態において、当該端末装置2同士が、互いに情報をやり取りする際には、お互いの所在情報としてのIPアドレスを知っていなければならない。
In the second distribution form of the content distribution system S, when the
例えば、複数の端末装置間でコンテンツを互いに共有するシステムにおいては、ネットワーク6に参加している各端末装置2が互いにネットワーク6に参加している全ての端末装置2のIPアドレスを知っておくのが単純な手法であるが、端末数が何万何十万と多数になると、その全ての端末装置2のIPアドレスを覚えておくのは現実的ではない。また、任意の端末装置の電源が頻繁にON或いはOFFとすると、各端末装置2において記憶している当該任意の端末装置のIPアドレスの更新が頻繁になり、運用上困難となる。
For example, in a system in which content is shared among a plurality of terminal devices, each
そこで、1台の端末装置2では、ネットワーク6に参加している全ての端末装置2のうち、必要最低限の一部の端末装置2のIPアドレスだけを記憶しておき、IPアドレスを記憶していない端末装置2については、各端末装置2間で互いに情報を転送し合うことによりコンテンツを届けるシステムが考案されている。
Therefore, one
このようなシステムの一例として、DHTを利用したアルゴリズムによって、図7に示すような、オーバーレイネットワークが構築されることになる。つまり、このオーバーレイネットワークは、既存のネットワーク6を用いて形成された仮想的なリンク(論理接続)を構成するネットワークであり、P2Pグリッド型配信形態である。
As an example of such a system, an overlay network as shown in FIG. 7 is constructed by an algorithm using DHT. That is, this overlay network is a network that forms a virtual link (logical connection) formed using the existing
本実施形態においては、DHTを利用したアルゴリズムによって構築されたオーバーレイネットワークを前提としており、このオーバーレイネットワーク上に配置された端末装置2を、コンテンツ配信システムSの第2配信形態に参加している端末装置2という。なお、コンテンツ配信システムSの第2配信形態への参加は、未だ参加していない端末装置2が、すでに参加している端末装置2に対して参加要求を送ることによって行われる。
In this embodiment, it is premised on an overlay network constructed by an algorithm using DHT, and a
コンテンツ配信システムSの第2配信形態に参加している各端末装置2の識別番号である端末IDとして、それぞれの端末装置2毎にユニークな番号(固有番号)を付与する。この番号は、端末装置の最大運用台数を収容できるだけのbit数を持たせる必要がある。例えば、128bitの番号とすれば、2128≒340×1036台の端末装置を運用できる。
A unique number (unique number) is assigned to each
より具体的には、各端末装置2の端末IDは、それぞれの端末装置2のIPアドレス或いは製造番号等の端末装置2毎に固有の値を、共通のハッシュ関数(ハッシュアルゴリズム)によりハッシュ化して得たハッシュ値であり、一つのID空間に偏りなく分散して配置されることになる。このように共通のハッシュ関数によりハッシュ化されて求められた端末IDは、当該IPアドレス或いは製造番号が異なれば、同じ値になる確率が極めて低いものである。なお、ハッシュ関数については公知であるので詳しい説明を省略する。また、本実施形態では、IPアドレス(グローバルIPアドレス)を共通のハッシュ関数によりハッシュ化した値を端末IDとする。
More specifically, the terminal ID of each
また、コンテンツ配信システムSの第2配信形態に参加している複数の端末装置2には、図7に示すように、一の端末装置2から他の端末装置2に配信されるコンテンツデータがコンテンツ投入装置4によって分散して端末装置2に投入されるが、当該コンテンツデータにも、それぞれのコンテンツデータ毎の固有の識別情報(以下、「コンテンツID」と呼ぶ。)を付与する。
In addition, as shown in FIG. 7, content data distributed from one
そして、当該コンテンツIDは、端末IDと同様の長さ(例えば、128bit等)とし、例えば、コンテンツの名称(コンテンツのタイトル名)やコンテンツの概要情報(あらすじ)等のキーワードが、上記端末IDを得るときと共通のハッシュ関数によりハッシュ化され(つまり、端末装置2のIPアドレスのハッシュ値と同一のID空間に配置)、そのハッシュ値と最も近い(例えば、上位桁がより多く一致する)端末IDを有する端末装置2が、コンテンツデータを保持する端末装置2(以下、「コンテンツ保持端末装置」と呼ぶ。)へのリンク情報、すなわちコンテンツ保持端末装置の所在情報であるIPアドレスを保持する。
The content ID has the same length as the terminal ID (for example, 128 bits). For example, a keyword such as a content name (content title name) or content summary information (summary) determines the terminal ID. A terminal that is hashed by a hash function that is common to the time of acquisition (that is, placed in the same ID space as the hash value of the IP address of the terminal device 2) and that is closest to the hash value (for example, the higher-order digits match more) The
コンテンツ保持端末装置は、コンテンツ投入装置4によってランダムに決定される。すなわち、コンテンツ投入装置4は、コンテンツデータを保持すべき1以上の端末装置2をランダムに決定し、このように決定した端末装置にコンテンツデータを送信する。コンテンツ投入装置4からコンテンツデータを受信した端末装置は、コンテンツデータを記憶部に保持することによってコンテンツ保持端末装置として機能する。これにより、コンテンツデータが偏りなくコンテンツ配信システムS上に分散して配置される。
The content holding terminal device is randomly determined by the
なお、異なるコンテンツデータであっても、同一のキーワード(例えば、コンテンツの名称)になる場合が想定されるが、この場合、同じハッシュ値になってしまうので、これを避けるために、ハッシュ化するキーワードを、例えば、コンテンツの名称と著作権情報(例えば、出演者名、監督名、原作者名、歌手名、作曲者名、又は作詞者名等)の組み合わせとすればよい。本実施形態においては、コンテンツの名称は重複しないものとし、コンテンツの名称をキーワードとするものとする。 Note that even if the content data is different, it is assumed that the same keyword (for example, the name of the content) is used. In this case, the hash value is the same to avoid the same hash value. The keyword may be, for example, a combination of content name and copyright information (for example, performer name, director name, original author name, singer name, composer name, or songwriter name). In the present embodiment, the content names are not duplicated, and the content name is a keyword.
このように、各端末装置2及び各コンテンツデータに付与された端末ID及びコンテンツIDは、共通のハッシュ関数によって生成するため、図7に示す如く、同一のリング状のID空間上にさほど偏ることなく、散らばって存在するものとして考えることができる。同図は32bitで端末ID及びコンテンツIDを付与し、図示したものである。図中丸点は端末IDを、四角形はコンテンツIDを示し、反時計回りでIDが増加するものとする。
As described above, since the terminal ID and the content ID assigned to each
次に、どの端末装置2に、どのコンテンツデータが保持されるかを、一定の規則の下に決定する。本実施形態においては、「あるコンテンツIDを有するコンテンツデータを管理する端末装置2は、そのコンテンツIDに近い端末IDを有する端末装置2である」という規則とする。ここで、「近い」ことの定義は、当該コンテンツIDを超えず、コンテンツIDと端末IDとの差が一番少ないものとするが、実際には、各コンテンツデータの管理を各端末装置2に割り振る際に、一貫していればよい。図7に示す例では、この定義に基づいて、コンテンツIDaは、当該コンテンツIDaに近い端末ID(以下、「端末IDa」と呼ぶ。)を有する端末装置2に管理され、コンテンツIDbは、当該コンテンツIDbに近い端末ID(以下、「端末IDb」と呼ぶ。)を有する端末装置2に管理され、コンテンツIDcは、当該コンテンツIDcに近い端末ID(以下、「端末IDc」と呼ぶ。)を有する端末装置2に管理される。
Next, which
なお、ここで「管理」というのは、コンテンツデータを保持していることを意味するのではなく、「コンテンツデータがいずれの端末装置2に保持されているかを知っている」ことを意味する。すなわち、図7において、端末IDaを有する端末装置2は、コンテンツIDaを有するコンテンツデータがいずれの端末装置2に保持されているかを知っており、端末IDbを有する端末装置2及び端末IDcを有する端末装置2も同様にそれぞれコンテンツIDbを有するコンテンツデータ及びコンテンツIDcを有するコンテンツデータがいずれの端末装置2に保持されているかを知っている、ということになる。
Here, “management” does not mean that content data is held, but “knows which
このように、あるコンテンツデータがいずれの端末装置2に保持されているかを知っている端末装置2を、そのコンテンツデータのルート端末装置と呼ぶ。つまり、端末IDaを有する端末装置2は、コンテンツIDaを有するコンテンツデータのルート端末装置であって、端末IDbを有する端末装置2は、コンテンツIDbを有するコンテンツデータのルート端末装置であって、端末IDcを有する端末装置2は、コンテンツIDcを有するコンテンツデータのルート端末装置である。
Thus, the
ここで、コンテンツ投入装置4は、コンテンツ配信システムS内の端末装置2をコンテンツ保持端末装置とするためにコンテンツデータを端末装置2へ配布する機能のほか、端末装置2に配布した複数のコンテンツデータ(言い換えれば、コンテンツ保持端末装置が保持しているコンテンツデータ)をそのコンテンツの名称とコンテンツIDとを関連付けた識別情報リストである識別情報リストを生成して端末装置2へ提供する機能を有している。
Here, the
また、コンテンツ配信システムSの第2配信形態においては、コンタクト先紹介装置5が配置されてる。このコンタクト先紹介装置5は、コンテンツ配信システムSの第2配信形態に参加していない端末装置2からこの第2配信形態への参加要求があったときに、未参加の端末装置2が参加メッセージを送信する既参加の端末装置2(以下、「コンタクト先端末装置」と呼ぶ。)の所在情報を通知する機能を有している。
Further, in the second distribution form of the content distribution system S, the contact
[1.2.2 ルーティングテーブルの作成]
ここで、図8を参照して、DHTで用いるルーティングテーブルの作成手法の一例について説明する。図8は、DHTによってルーティングテーブルが作成される様子の一例を示す図である。
[1.2.2 Creating a routing table]
Here, an example of a method for creating a routing table used in DHT will be described with reference to FIG. FIG. 8 is a diagram illustrating an example of how a routing table is created by DHT.
まず、図8(a)に示す如く、ID空間を幾つかのエリアに分割する。実際には、16分割程度が良く用いられるが、説明を簡単にするためここでは4分割とし、IDをビット長8bitの4進数で表すことにする。そして、端末装置2Nの端末IDを「1133」とし、この端末装置2Nのルーティングテーブルを作る例について説明する。 First, as shown in FIG. 8A, the ID space is divided into several areas. Actually, about 16 divisions are often used, but in order to simplify the explanation, four divisions are used here, and the ID is represented by a quaternary number having a bit length of 8 bits. An example in which the terminal ID of the terminal device 2N is “1133” and the routing table of the terminal device 2N is created will be described.
(レベル1のルーティング)
まず、ID空間を4分割とした場合、それぞれのエリアは4進数で表すと最大桁が異なる4つのエリア「0XXX」「1XXX」、「2XXX」、「3XXX」(Xは0から3の自然数、以下同様。)で分けられる。端末装置2Nは、当該端末装置2N自身の端末IDが「1133」であるため、図8(a)中左下「1XXX」のエリアに存在することになる。そして、端末装置2Nは、自分の存在するエリア(すなわち、「1XXX」のエリア)以外のエリア(すなわち、「0XXX」のエリア、「2XXX」のエリア、「3XXX」のエリア)に存在する端末装置2を適当に選択し、当該端末IDの所在情報、すなわち、当該端末IDのIPアドレスをレベル1のテーブルに記憶する。図9がレベル1のテーブルの一例である。このテーブルでは、「0XXX」のエリアの端末IDとして「0100」、「2XXX」のエリアの端末IDとして「2133」、「3XXX」のエリアの端末IDとして「3213」がそれぞれ選択されている状態を示している。なお、当該レベル1の2列目は端末装置2N自身を示しているため、IPアドレスを記憶する必要はない。
(
First, if the ID space is divided into four areas, each area is represented by four areas “0XXX”, “1XXX”, “2XXX”, “3XXX” (X is a natural number from 0 to 3, The same shall apply hereinafter.) Since the terminal ID of the terminal device 2N itself is “1133”, the terminal device 2N exists in the lower left “1XXX” area in FIG. The terminal device 2N is a terminal device existing in an area (that is, an area of “0XXX”, an area of “2XXX”, an area of “3XXX”) other than the area where the terminal device exists (that is, the area of “1XXX”). 2 is appropriately selected, and the location information of the terminal ID, that is, the IP address of the terminal ID is stored in the
(レベル2のルーティング)
次に、図8(b)に示す如く、上記ルーティングによって4分割したエリアのうち、自分の存在するエリア「1XXX」を更に4分割し、更に4つのエリア「10XX」「11XX」、「12XX」、「13XX」と分ける。そして、上記と同様に自分の存在するエリア「11xx」以外のエリアに存在する端末装置2を適当に選択し、当該端末IDの所在情報であるIPアドレスをレベル2のテーブルに記憶する。図9がレベル2のテーブルの一例である。このテーブルでは、「10XX」のエリアの端末IDとして「1003」、「12XX」のエリアの端末IDとして「1221」が、「13XX」のエリアの端末IDとして「1313」がそれぞれ選択されている状態を示している。なお、レベル2の2列目は端末装置2Nが存在するエリア「11XX」であり、後述するレベル3にてテーブル化されるためIPアドレスを記憶していない。また、上記エリアに端末装置2が存在しない場合には、端末ID及びIPアドレスの欄は空白となる。
(
Next, as shown in FIG. 8B, among the areas divided into four by the above routing, the area “1XXX” where the user exists is further divided into four, and further four areas “10XX” “11XX”, “12XX” , “13XX”. Then, similarly to the above, the
(レベル3のルーティング)
更に、上記ルーティングによって4分割したエリアのうち、自分の存在するエリア「11XX」を更に4分割し、更に4つのエリア「110X」「111X」、「112X」、「113X」と分ける。そして、上記と同様に自分の存在するエリア「113X」以外のエリアに存在する端末装置2を適当に選択し、当該端末IDの所在情報であるIPアドレスをレベル3のテーブルに記憶する。図9がレベル3のテーブルの一例である。レベル3の4列目は端末装置2Nが存在するエリアであり、後述するレベル4にてテーブル化されるためIPアドレスを記憶していない。また、上記エリアに端末装置が存在しない場合には、端末ID及びIPアドレスの欄は空白となる。
(
Further, of the areas divided into four by the above routing, the area “11XX” where the user exists is further divided into four, and further divided into four areas “110X”, “111X”, “112X”, and “113X”. Then, similarly to the above, the
このようにして、レベル4まで同様にルーティングテーブルを図9に示す如く作成することにより、8bitのID全てを網羅することができる。レベルが上がる毎にテーブルの中に空白が目立つようになる。
In this way, all the 8-bit IDs can be covered by creating a routing table in the same way up to
以上説明した手法に従って作成したルーティングテーブルを、全ての端末装置2が夫々作成して所有することになる。このように、各端末装置2は、コンテンツ配信システムSにおける複数の端末装置2のうち一部の端末装置2の端末ID(識別情報)とIPアドレス(所在情報)とを関連付けたルーティングテーブルを有しており、このルーティングテーブルは後述のルーティングテーブル記憶手段に記憶される。
All the
ところで、端末装置2は、第2配信形態に未参加のときには、第2配信形態に参加している端末装置2の所在情報などを知らない。そのため、端末装置2は、第2配信形態に参加するときには、次の項で説明するように、ルーティングテーブルを生成する。
By the way, when the
[1.2.3.第2配信形態への参加]
次に、図10を参照して、コンテンツ配信システムSにおける第2配信形態に未参加の端末装置2が当該第2配信形態へ参加する方法の一例について説明する。図10は、第2配信形態に未参加の端末装置2M(以下、「新規参加端末装置2M」と呼ぶ。)が当該第2配信形態へ参加する様子の一例を示す図である。
[1.2.3. Participation in the second distribution form]
Next, an example of a method in which the
まず、第2配信形態に未参加である新規参加端末装置2Mは、コンテンツ配信システムSの第2配信形態に参加するために、コンタクト先紹介装置5に対して、参加メッセージを送信すべき端末装置2(以下、「コンタクト先端末装置」と呼ぶ。)の所在情報を要求する。
First, a new participation terminal apparatus 2M that has not participated in the second distribution form should transmit a participation message to the
新規参加端末装置2Mは、コンタクト先紹介装置5から参加メッセージを送信すべきコンタクト先端末装置の所在情報が送られてくると、コンタクト先端末装置に対して参加メッセージを送信する。ここで、参加メッセージのあて先識別情報は、新規参加端末装置2Mの端末IDとなっている。すなわち、新規参加端末装置2Mは、第2配信形態に参加する際に、自装置2のIPアドレスのハッシュ値「2133」を宛先識別情報とした参加メッセージを生成する。
The new participation terminal device 2M transmits a participation message to the contact destination terminal device when the location information of the contact destination terminal device to which the participation message is to be transmitted is sent from the contact
コンタクト先端末装置は、新規参加端末装置2Mから送信された参加メッセージを受信すると、コンタクト先端末装置は、この参加メッセージがコンタクト先端末装置宛のメッセージであるか否かを判定する。コンタクト先端末装置宛のメッセージであるか否かは、宛先識別情報とルーティングテーブルとに基づいて行われる。具体的には、宛先識別情報がコンタクト先端末装置宛の識別情報と近いか否かが判定される。即ち、宛先識別情報に対して、コンタクト先端末装置自身が保持しているルーティングテーブルに記憶されている端末装置の識別情報から、一番近い端末装置の識別情報が、自身であるか他の端末装置であるかを判定する。そして、コンタクト先端末装置の識別情報よりも他の端末装置の識別情報の方が宛先識別情報に近いとき、参加メッセージを受信したコンタクト先端末装置は、コンタクト先端末装置自身が保持しているルーティングテーブルのレベル2を参照して、「2XXX」のエリアに属す端末装置2のうち、IPアドレスを知っている端末装置2Bに対して参加メッセージを転送するとともに、自端末装置のルーティングテーブル記憶手段に記憶されたルーティングテーブルのレベル1のテーブルの情報を、新規参加端末装置2Mへ送信する。
When the contact destination terminal device receives the participation message transmitted from the new participation terminal device 2M, the contact destination terminal device determines whether or not the participation message is a message addressed to the contact destination terminal device. Whether the message is addressed to the contact destination terminal device is determined based on the destination identification information and the routing table. Specifically, it is determined whether the destination identification information is close to the identification information addressed to the contact destination terminal device. That is, with respect to the destination identification information, the terminal device identification information stored in the routing table held by the contact destination terminal device itself is the closest terminal device identification information itself or another terminal. Determine if it is a device. When the identification information of the other terminal device is closer to the destination identification information than the identification information of the contact destination terminal device, the contact destination terminal device that has received the participation message is the routing held by the contact destination terminal device itself. Referring to the
このように、コンテンツIDの桁を上から順に適合していく要領で参加メッセージの転送を行い、順次ルーティングテーブルの各レベルの情報を送信する。最終的に宛先識別情報に最も近い端末装置2に辿り着いたところで参加メッセージの転送は終了する。なお、参加メッセージなどのメッセージを目的の端末装置へ辿り着くまでに、上述のように転送する仕組みをDHTルーティングと呼ぶ。
In this way, the participation message is transferred in such a manner that the digits of the content ID are adapted in order from the top, and information on each level of the routing table is sequentially transmitted. When the
こうして、新規参加端末装置2Mは、参加メッセージを受信した端末装置2からルーティングテーブルの各レベルの情報を上位レベルの情報から順に取得するようにしている。新規参加端末2はこのようにして、第2配信形態に参加するために必要なルーティングテーブルを生成する。
In this way, the new participation terminal device 2M obtains the information of each level of the routing table from the higher level information in order from the
[1.2.4.コンテンツデータの検索方法]
次に、図11を参照して、コンテンツデータを保持している端末装置2の検索方法の一例について説明する。図11は、DHTルーティングによりコンテンツデータを保持している端末装置2が検索される様子の一例を示す図である。
[1.2.4. Content data search method]
Next, an example of a search method for the
ここでは、端末ID「1133」の端末装置2Nが、コンテンツID「3020」を有するコンテンツデータを探す際の手順について説明する。なお、以下このようにコンテンツデータを探し、コンテンツデータの受信を要求する端末装置を「リクエスト端末装置」と呼ぶ。 Here, a procedure when the terminal device 2N having the terminal ID “1133” searches for content data having the content ID “3020” will be described. Hereinafter, a terminal device that searches for content data and requests reception of content data in this way is referred to as a “request terminal device”.
リクエスト端末装置2Nは、自己が保持しているルーティングテーブルのレベル1のテーブルを参照して、コンテンツID「3020」と同じエリアの端末IDを持つ端末装置の端末IDを宛先識別情報としてコンテンツ保持端末装置情報(コンテンツ保持端末装置の所在情報を含む情報)の送信要求(以下、「コンテンツ検索メッセージ」と呼ぶ。)を送信する。すなわち、コンテンツID「3020」は「3XXX」のエリアであるため、当該「3XXX」のエリアに属す端末装置2のうち、IPアドレスを知っている(すなわち、自己が保持しているルーティングテーブルにIPアドレスが記憶されている)端末装置2A(端末ID「3213」)に対してコンテンツ検索メッセージを送信する。このように、コンテンツ検索メッセージはコンテンツに対応する固有の識別情報であるコンテンツIDを含むものであり、このコンテンツIDはコンテンツ検索メッセージにおいて宛先識別情報として用いられる。
The requesting terminal device 2N refers to the
図11に示す例によれば、端末IDが「3213」である端末装置2AのIPアドレスがリクエスト端末装置2Nのルーティングテーブル(図9参照。)に記憶されているので、リクエスト端末装置2Nは、端末IDが「3213」である端末装置2Aに対してコンテンツ検索メッセージを送信する。 According to the example shown in FIG. 11, since the IP address of the terminal device 2A whose terminal ID is “3213” is stored in the routing table (see FIG. 9) of the request terminal device 2N, the request terminal device 2N A content search message is transmitted to the terminal device 2A whose terminal ID is “3213”.
次に、コンテンツ検索メッセージを受信した端末装置2Aは、このコンテンツ検索メッセージが自端末装置2A宛のメッセージであるか否かを判定する。自端末装置2A宛のメッセージであるか否かは、宛先識別情報とルーティングテーブルとに基づいて行われる。具体的には、宛先識別情報が自端末装置2Aの識別情報と近いか否かが判定される。即ち、宛先識別情報に対して、端末装置2A自身が保持しているルーティングテーブルに記憶されている端末装置の識別情報から、一番近い端末装置の識別情報が、自身であるか他の端末装置であるかを判定する。ここでは、自端末装置2Aの識別情報よりも他の端末装置の識別情報の方が、宛先識別情報に近いため、端末装置2Aは、当該端末装置2A自身が保持しているルーティングテーブルのレベル2のテーブルを参照して、「30XX」のエリアに属す端末装置2のうち、IPアドレスを知っている端末装置2B(端末ID「3031」)に対してコンテンツ検索メッセージを転送する。
Next, the terminal device 2A that has received the content search message determines whether or not the content search message is a message addressed to the terminal device 2A. Whether the message is addressed to the terminal device 2A is determined based on the destination identification information and the routing table. Specifically, it is determined whether the destination identification information is close to the identification information of the terminal device 2A. That is, with respect to the destination identification information, the identification information of the terminal device closest to the terminal device identification information stored in the routing table held by the terminal device 2A itself is itself or another terminal device. It is determined whether it is. Here, since the identification information of the other terminal device is closer to the destination identification information than the identification information of the terminal device 2A, the terminal device 2A is
このように、コンテンツIDの桁を上から順に適合していく要領でコンテンツ検索メッセージの転送が進み、最終的に当該コンテンツデータを管理する端末装置2C(端末ID「3011」)、すなわちルート端末装置に辿り着くと、当該ルート端末装置は、コンテンツ検索メッセージに含まれるコンテンツID「3020」を、自身が管理している後述のインデックス情報の中から検索し、当該コンテンツデータを所有しているコンテンツ保持端末装置のIPアドレス等をリクエスト端末装置2Nに返信するようになっている。 In this way, the transfer of the content search message proceeds in the manner of adapting the digits of the content ID in order from the top, and finally the terminal device 2C (terminal ID “3011”) that manages the content data, that is, the root terminal device When the route terminal device arrives, the root terminal device searches the content ID “3020” included in the content search message from index information (described later) managed by itself, and retains the content data that owns the content data. The IP address of the terminal device is returned to the request terminal device 2N.
こうして、リクエスト端末装置2Nは、上記ルート端末装置2Cから、コンテンツID「3020」のコンテンツデータの所在情報、即ち、コンテンツID「3020」のコンテンツデータを保持するコンテンツ保持端末装置のIPアドレスを受信して知ることになり、当該コンテンツ保持端末装置から、そのコンテンツデータをダウンロードして取得することになる。 In this way, the request terminal device 2N receives the location information of the content data with the content ID “3020” from the root terminal device 2C, that is, the IP address of the content holding terminal device that holds the content data with the content ID “3020”. The content data is downloaded and acquired from the content holding terminal device.
[1.2.5.インデックステーブルへの登録方法]
コンテンツ配信システムSにおける第2配信形態の中で、新しいコンテンツデータをコンテンツ配信システムS上の他の端末装置2に見えるように公開する際の手法について述べる。
[1.2.5. How to register in the index table]
In the second distribution form in the content distribution system S, a method for publishing new content data so as to be visible to other
本実施形態におけるコンテンツ配信システムSの第2配信形態は、図12に示すように、コンテンツ投入装置4が各コンテンツ保持端末装置となる端末装置2に対して、各コンテンツ保持端末装置毎の管理対象コンテンツとなるコンテンツデータを送信する。コンテンツ投入装置4から管理対象のコンテンツデータを受信したコンテンツ保持端末装置は、後述のハードディスク装置203に受信したコンテンツデータを記憶する。
As shown in FIG. 12, the second distribution form of the content distribution system S in this embodiment is a management target for each content holding terminal device with respect to the
当該コンテンツデータを配布されたコンテンツ保持端末装置は、図12及び図13に示すように、当該コンテンツ保持端末装置の所在情報及び識別情報を含むコンテンツ保持端末装置情報の登録要求メッセージ(以下、「コンテンツ登録メッセージ」と呼ぶ。)を、コンテンツの名称等から求めたコンテンツIDと同じ端末IDを持つ端末装置に向けて(この端末装置が実在するか否かはこの時点ではわからない。)送信する。そして、このコンテンツ登録メッセージも、上記コンテンツ検索メッセージと同様にルーティングテーブルに従って、次々と転送されていき、当該コンテンツ登録メッセージに含まれるコンテンツIDに最も近い端末IDを有する端末装置2まで転送されたところで、その端末装置2がもはや送信先の端末装置が他にないと判断すると、当該端末装置2自身がそのコンテンツのルート端末装置となるべきだと判断し、図13に示すように、当該コンテンツ登録メッセージに含まれるコンテンツ保持端末装置情報である当該コンテンツID、コンテンツ保持端末装置のIPアドレス、及び補助情報(タイトル、ジャンル、拡張情報等の属性情報や、監督名等の著作権情報やストリーミング時間等)をインデックス情報として後述のインデックステーブル222に記憶する。
As shown in FIGS. 12 and 13, the content holding terminal device to which the content data has been distributed is a content holding terminal device information registration request message (hereinafter referred to as “contents” including location information and identification information of the content holding terminal device). "Registered message") is transmitted to the terminal device having the same terminal ID as the content ID obtained from the content name or the like (whether or not this terminal device actually exists is not known at this time). Then, the content registration messages are also sequentially transferred according to the routing table in the same manner as the content search message, and are transferred to the
このようにルート端末装置のインデックステーブル222にコンテンツ保持端末装置の所在情報であるIPアドレスが登録されると、以後リクエスト端末装置からのコンテンツ検索メッセージに対してインデックステーブルに登録したコンテンツ保持端末装置の所在情報をリクエスト端末装置へ返信する。このようにして本実施形態では、コンテンツ投入装置4から配布されたコンテンツをコンテンツ保持端末装置に登録し、ルート端末装置を介して検索できるようにすることで、他の端末装置にコンテンツを公開する。
Thus, when the IP address, which is the location information of the content holding terminal device, is registered in the index table 222 of the root terminal device, the content holding terminal device registered in the index table in response to the content search message from the requesting terminal device thereafter. The location information is returned to the requesting terminal device. In this way, in the present embodiment, the content distributed from the
インデックステーブル222は、図14に示すように、コンテンツ保持端末装置の所在情報(所在情報)であるIPアドレスなどを含むコンテンツ保持端末装置情報を記憶するためのテーブルである。このインデックステーブル222には、コンテンツ保持端末装置のIPアドレスのほか、コンテンツ保持端末装置を紹介した時刻等がコンテンツ保持端末装置情報として1行(所定記憶エリア)毎に記憶される。 As shown in FIG. 14, the index table 222 is a table for storing content holding terminal device information including an IP address that is location information (location information) of the content holding terminal device. In the index table 222, the IP address of the content holding terminal device, the time when the content holding terminal device was introduced, and the like are stored for each row (predetermined storage area) as content holding terminal device information.
[2.コンテンツ配信装置1の構成等の説明]
次に、図17を参照して、コンテンツ配信装置1の構成及び動作について更に詳説する。
[2. Description of
Next, the configuration and operation of the
図17は、本実施形態におけるコンテンツ配信装置1の概略構成例を示す図である。コンテンツ配信装置1は、一般のサーバコンピュータを適用可能であり、図17に示すように、CPU(Central Processing Unit)102と、各種プログラム等を記憶(格納)する書き換え可能な主記憶装置としての主記憶装置105と、各種データ等を記憶するハードディスク装置103と、ネットワーク6を介して端末装置2、接続管理装置3やコンテンツ投入装置4との間で通信を行うネットワークインタフェース104と、所定の情報を入力可能なキーボード107やマウス108等の入力手段を制御する周辺機器制御チップ106と、CPU102からイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込むと共にこのビデオメモリに書き込んだデータを後述の内蔵ディスプレイ110に表示するビデオチップ109と、ビデオチップ109から送信される信号に応じた表示を行う内蔵ディスプレイ110と、FM音源(Frequency Modulation)やWave Table音源などの音源を有する音源チップ111と、音源チップ111から出力されるオーディオ信号を音波に変換する内蔵スピーカ112と、を備えて構成され、これらの各種構成要素はシステムバス101を介して相互に接続されている。
FIG. 17 is a diagram illustrating a schematic configuration example of the
なお、ネットワークインタフェース104は、ルータ10aを介してネットワーク6に接続される。このルータ10aは、図1に示すルータ10に相当するものである。
The
なお、本実施形態においては、CPU102と主記憶装置105とで制御部130を構成している。また、コンテンツ配信装置1には、上述のように内蔵ディスプレイ(液晶ディスプレイ等)110等が内蔵されており、例えば、コンテンツ配信システムSを運用する放送運営者は、この内蔵ディスプレイ110を見ながら入力手段から所定の情報を入力することができる。なお、本実施形態においては、これら内蔵ディスプレイ110や内蔵スピーカ112などがコンテンツ配信装置1に内蔵されているが、これに限らず、例えば、別に接続されるものであってもよい。
In the present embodiment, the
(主記憶装置105ついて)
また、主記憶装置105には、コンテンツ配信装置1のコンピュータとしての基本的な機能を提供するためのOS(オペレーティングシステム)プログラム117と、ハードディスク装置103の放送コンテンツ記憶領域に記憶されたコンテンツデータを取り出して端末装置2へストリーミング配信するためのストリーム制御プログラム115と、チャンネル毎に接続された各端末装置2の所在情報(IPアドレスやポート番号など)の管理等を行うためのトポロジー管理プログラム116と、内蔵ディスプレイ110を制御するための画面制御プログラム118と、エンコードされた音楽コンテンツデータをデコードするための音楽デコーダプログラム119と、ハードディスク装置103に記憶されている放送コンテンツデータ113から読み出したコンテンツデータを端末装置2へ送信する前に一時的に記憶するリングバッファ領域120と、下流の端末装置2に配信するコンテンツデータをチャンネル毎にコンテンツ投入装置4から受信し、ハードディスク装置103に記憶するコンテンツ管理プログラム121等が記憶されており、これらはCPU102によって読み出され、CPU102によってこれらのプログラムに従った機能が実行される。
(Main memory 105)
The
ここで、OSプログラム117は、CPU102によって読み出されて実行されることにより、キーボード107やマウス108の入出力に関する機能や、主記憶装置105やハードディスク装置103などのメモリ管理などのコンテンツ配信装置1であるコンピュータの基本的な機能を実行可能にするものである。
Here, the
そして、このOSプログラム117がCPU102によって実行された状態で、上述のストリーム制御プログラム115、トポロジー管理プログラム116、画面制御プログラム118、音楽デコーダプログラム119、コンテンツ管理プログラム121が主記憶装置105から読み出されて実行される。
Then, with the
なお、OSプログラム117、ストリーム制御プログラム115、トポロジー管理プログラム116、画面制御プログラム118、音楽デコーダプログラム119、コンテンツ管理プログラム121等は、例えば、ネットワーク6に接続されたサーバ等から主記憶装置105にダウンロードされるようにしてもよく、また、CD−ROM等の記録媒体に記録されてから記録媒体のドライブを介して、主記憶装置105に読み込まれるようにしてもよい。
The
(制御部130について)
制御部130は、上述のようにCPU102と主記憶装置105とから構成され、CPU102が主記憶装置105に記憶された各種プログラム115〜119,121を読み出して実行することにより、コンテンツ配信装置1全体を統括制御し、かつ、後述するコンテンツデータ配信手段等として機能するようになっている。なお、CPU102がストリーム制御プログラム115を実行することによって、コンテンツデータ配信手段等として、またCPU102がトポロジー管理プログラム116を実行することによって、トポロジー管理手段として、また、CPU102が画面制御プログラム118を実行することによって、表示制御手段等として、CPU102が音楽デコーダプログラム119を実行することによって、再生手段として、CPU102がコンテンツ管理プログラム121を実行することによって、配信コンテンツ受信手段、配信コンテンツ保存手段として、それぞれ機能するようになっている。更に、ハードディスク装置103は、コンテンツデータが記憶されるコンテンツデータ記憶手段として使用される。
(About the control unit 130)
The
(配信コンテンツ受信手段、配信コンテンツ保存手段について)
配信コンテンツ受信手段は、コンテンツ投入装置4に対してコンテンツデータの送信を要求し、コンテンツ投入装置4から送信されるコンテンツデータやそのコンテンツの名称などを受信する。また、配信コンテンツ保存手段は、コンテンツ投入装置4からコンテンツデータが配信コンテンツ受信手段によって受信された場合に、受信したコンテンツデータを放送コンテンツデータ113としてハードディスク装置103に保存する。
(About distribution content receiving means and distribution content storage means)
The distribution content receiving means requests the
また、ハードディスク装置103には、予め各チャンネルで放送するコンテンツデータの順番を記憶する放送番組情報が記憶されており、配信コンテンツ受信手段は、この番組情報に基づいて、コンテンツ投入装置4に対して送信要求するコンテンツデータを決定し、コンテンツ投入装置4への送信要求を行う。
The
なお、配信コンテンツ受信手段は、放送番組情報に基づいて、コンテンツ投入装置4に対するコンテンツデータの送信要求を行うのではなく、放送番組情報をコンテンツ投入装置4のハードディスク装置403に記憶させておき、コンテンツ投入装置4が放送番組情報に基づいて、順次コンテンツデータを送信するようにしてもよい。この場合、コンテンツ配信装置1はチャンネル毎にコンテンツ投入装置4が投入したコンテンツデータを順次下流装置へ配信することになる。
The distribution content receiving means does not make a content data transmission request to the
(コンテンツデータ配信手段について)
コンテンツデータ配信手段は、ネットワーク6を介してコンテンツデータをストリーミング配信する。すなわち、ハードディスク装置103において記憶されている放送用コンテンツデータを取り出し、ネットワーク6を介して論理接続された端末装置2(例えば、ツリー型に接続された場合には最上階層端末装置)等にストリーミング配信する。なお、コンテンツデータには、コンテンツの名称などの情報も含まれる。
(About content data distribution means)
The content data distribution unit distributes the content data through the
このコンテンツデータ配信手段による端末装置2等へのストリーミング配信は、以下の手順で実行される。
The streaming distribution to the
コンテンツデータ配信手段は、ハードディスク装置103に予め記憶されている放送コンテンツデータ113から、放送番組情報に基づいてコンテンツデータを順次取り出してリングバッファ領域120に記憶させる。
The content data distribution means sequentially extracts the content data based on the broadcast program information from the
次に、コンテンツデータ配信手段は、リングバッファ領域120から取り出したコンテンツデータを、ストリーミング配信用のデータ形式、例えばASF、WMA、WMV等のデータ形式にエンコードする。
Next, the content data distribution unit encodes the content data extracted from the
その後、コンテンツデータ配信手段は、接続された端末装置2等に対して、それぞれ対応するコンテンツデータを所定容量毎に分割しながらコンテンツパケットに格納し、ネットワーク6を介して、このコンテンツパケットへ送信する。
Thereafter, the content data distribution means stores the corresponding content data in the content packet for each of the
なお、コンテンツデータ配信手段は、DJなどによってキーボード107などの入力手段よって選択されたコンテンツを流すようにしてもよい。
Note that the content data distribution unit may flow the content selected by the input unit such as the
(トポロジー管理手段について)
コンテンツ配信装置1は、複数のチャンネルを割り振られており、トポロジー管理手段は、割り振られたチャンネルに構成されるツリー状階層構造の第1階層に参加している端末装置2の所在情報(IPアドレスやポート番号など)をチャンネル毎に管理している。そして、上述の配信手段はトポロジー管理手段が管理する端末装置2のIPアドレスを宛先アドレスとし、配信用IPアドレスを送信元として端末装置2へコンテンツデータの配信を行う。
(About topology management means)
The
(表示制御手段について)
表示制御手段は、ビデオチップ109及び内蔵ディスプレイ110を制御して、コンテンツデータや各種情報を表示する機能を有している。すなわち、表示制御手段は、内蔵ディスプレイ110にどのようにコンテンツの映像や各種情報を表示するかを制御することができる。
(Display control means)
The display control means has a function of controlling the
(再生手段について)
再生手段は、放送コンテンツデータ113を内蔵ディスプレイ110に表示したり、内蔵スピーカ112から出力したりする機能を有している。
(About playback means)
The reproduction means has a function of displaying the
[3.端末装置2の構成等の説明]
次に、図18を参照して、端末装置2の構成及び動作について更に詳説する。図18は、本実施形態における端末装置2の概略構成例を示す図である。
[3. Description of Configuration of Terminal Device 2]
Next, the configuration and operation of the
端末装置2は、一般のパーソナルコンピュータ或いは専用端末を適用可能であり、図18に示すように、CPU(Central Processing Unit)202と、各種プログラム等を記憶(格納)する書き換え可能な主記憶装置205と、各種データ等を記憶するハードディスク装置203と、ネットワーク6を介してネットワーク上のコンテンツ配信装置1、接続管理装置3やコンテンツ投入装置4、コンタクト先紹介装置5及び他の端末装置2との間で有線通信による通信を行うためのネットワークインタフェース204と、ユーザによる端末装置2の遠隔操作が可能な所定の赤外線信号を送信及び受信するユーザ入力用リモコン208と、このユーザ入力用リモコン208と赤外線により通信を行うための赤外線ポート207と、赤外線ポート207を制御する周辺機器制御チップ206と、CPU202からイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込むと共にこのビデオメモリに書き込んだデータを後述の内蔵ディスプレイ210に表示するビデオチップ209と、ビデオチップ209から送信される信号に応じた表示を行う内蔵ディスプレイ210と、FM音源(Frequency Modulation)やWave Table音源などの音源を有する音源チップ211と、音源チップ211から出力されるオーディオ信号を音波に変換する内蔵スピーカ212とを備えて構成され、これらの各種構成要素はシステムバス201を介して相互に接続されている。
The
なお、本実施形態においては、CPU202と主記憶装置205とで制御部230を構成している。また、ネットワークインタフェース204は、ルータ10bを介して、ネットワーク6に接続されている。このルータ10bは、図1に示すルータ10に相当するものである。
In the present embodiment, the
上述したようなユーザ入力用リモコン208では、コンテンツ配信システムSにおけるコンテンツの購入などの操作が可能である。本実施形態におけるユーザ入力用リモコン208では、コンテンツ配信システムSのチャンネルを選択するための選択手段としてチャンネル選択ボタンを有しており、端末装置2のユーザはこのチャンネル選択ボタンによって所望のチャンネルに接続することができる。なお、図15に示すように、内蔵ディスプレイ210の画面上にチャンネル選択ボタン22,23を表示し、リモコン208の操作によってチャンネルを選択するようにしてもよい。
With the user input
(主記憶装置205について)
また、主記憶装置205には、端末装置2のコンピュータとしての基本的な機能を提供するためのOSプログラム217と、第1配信形態において、コンテンツ配信装置1から直接又は他の端末装置2に中継されてストリーミング配信されるコンテンツデータをストリーム受信及び下流の端末装置2へストリーミング送信するためのストリーム制御プログラム215と、第1配信形態において、ツリー接続された一層上流の端末装置2(或いはコンテンツ配信装置1)の所在情報(IPアドレスやポート番号)とツリー接続された一層下流の端末装置2の所在情報の管理等を行うためのトポロジー管理プログラム216と、内蔵ディスプレイ210を制御するための画面制御プログラム218と、第1配信形態において、上流の装置からストリーミング受信したコンテンツデータをデコードしてストリーミング再生したり、第2配信形態でダウンロードしてハードディスク装置203に記憶したコンテンツデータを再生したりするための音楽デコーダプログラム219と、所定の記憶容量を有し、ストリーミング受信したコンテンツデータを順次一時的に記憶するリングバッファ領域220と、第1配信形態でコンテンツデータをストリーミング再生しており、リモコン208等の操作によりコンテンツデータのダウンロード要求があったときに第2配信形態によってコンテンツデータをダウンロードするためのコンテンツ購入プログラム221等が記憶されており、これらはCPU202によって読み出され、CPU202によってこれらのプログラムに従った機能が実行される。
(About the main storage device 205)
Further, the
また、主記憶装置205には、更にインデックステーブル222(図14参照)を記憶するためのインデックステーブル記憶領域やルーティングテーブル223(図9参照)を記憶するためのルーティングテーブル記憶領域が設けられている。
The
また、リングバッファ領域220は、参加しているチャンネル(視聴チャンネル及びザッピング対策チャンネル)において配信されるコンテンツデータをチャンネル毎に一時的に記憶する領域であり、ザッピング対策チャンネルのリングバッファ領域に蓄積したコンテンツデータは再生されず中継のみのために用いられることから、リングバッファ領域は、再生チャンネルのリングバッファ領域に比べその容量を小さくしている。このようにザッピング対策チャンネルのリングバッファ領域を小さくしているため、主記憶装置205を効率よく使用することができる。勿論、設定等により全てのリングバッファ領域の容量を同一とするようにすることも可能である。
The
ここで、OSプログラム217は、CPU202によって読み出されて実行されることにより、ユーザ入力用リモコン208の入出力に関する機能や、主記憶装置205やハードディスク装置203などのメモリ管理などの端末装置2であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム217がCPU202によって実行された状態で、上述のストリーム制御プログラム215、トポロジー管理プログラム216、画面制御プログラム218、音楽デコーダプログラム219、コンテンツ購入プログラム221等が主記憶装置205から読み出されて実行される。
Here, the
なお、OSプログラム217、ストリーム制御プログラム215、トポロジー管理プログラム216、画面制御プログラム218、音楽デコーダプログラム219、コンテンツ購入プログラム221等は、例えば、ネットワーク6に接続されたサーバ等から主記憶装置205にダウンロードされるようにしてもよく、また、CD−ROM等の記録媒体に記録されてから記録媒体のドライブを介して、主記憶装置205に読み込まれるようにしてもよい。
The
(制御部230について)
制御部230は、上述のようにCPU202と主記憶装置205とから構成され、CPU202が主記憶装置205に記憶された各種プログラム215〜219,221を読み出して実行することにより、端末装置2全体を統括制御し、かつ、後述する接続手段、ストリーミング受信手段、表示制御手段、ストリーミング再生手段、ストリーミング中継手段、デコード手段、識別情報取得手段、識別情報リスト受信手段、ダウンロード操作検出手段、切断手段、再接続手段、判定手段、ダウンロード処理手段、メッセージ宛先判定手段、コンテンツデータ記憶制御手段、コンテンツ保持端末装置情報選択手段、コンテンツ保持端末装置情報返信手段、コンテンツ識別情報演算手段、コンテンツ登録メッセージ生成手段、コンテンツ登録メッセージ送信手段、メッセージ転送手段、コンテンツ再生手段等として機能するようになっている。
(About the control unit 230)
The
なお、CPU202がストリーム制御プログラム215を実行することによってストリーミング受信手段、ストリーミング中継手段等として、またCPU202がトポロジー管理プログラム216を実行することによって、接続手段等として、またCPU202が画面制御プログラム218を実行することによって表示制御手段等として、更にCPU202が音楽デコーダプログラム219を実行することによってデコード手段、ストリーミング再生手段、コンテンツ再生手段等として、更にCPU202がコンテンツ購入プログラム221を実行することによって、識別情報リスト受信手段、識別情報取得手段、判定手段、ダウンロード操作検出手段、切断手段、再接続手段、ダウンロード処理手段、コンテンツデータ記憶制御手段、メッセージ宛先判定手段、コンテンツ保持端末装置情報選択手段、コンテンツ保持端末装置情報返信手段、コンテンツ識別情報演算手段、コンテンツ登録メッセージ生成手段、コンテンツ登録メッセージ送信手段、メッセージ転送手段等として、それぞれ機能するようになっている。
It should be noted that the
(接続手段について)
接続手段は、端末装置2をコンテンツ配信システムSの第1配信形態へ参加させるために、チャンネル選択手段であるリモコン208のチャンネル選択ボタンのユーザによる操作によって選択されたチャンネルに関する接続先紹介要求を接続管理装置3へ送信し、その後、接続管理装置3から通知された接続先候補に接続する。さらに、接続手段は、チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネル(ザッピング対策チャンネル)に関する接続先紹介要求を接続管理装置3へ送信し、その後、接続管理装置3から通知された接続先候補に接続する。
(About connection means)
The connection means connects the connection destination introduction request regarding the channel selected by the user's operation of the channel selection button of the
より具体的には、接続手段は、端末装置2をコンテンツ配信システムSへ参加させるために、接続管理装置3へ登録要求を送信して接続管理装置3へ登録すると共に、接続先紹介要求を送信して接続管理装置3へチャンネル選択手段によって選択されたチャンネルの接続先候補及びそのチャンネルと所定の関係を有するチャンネルの接続先候補を要求する機能を有している。この登録要求や接続先紹介要求には、端末装置2のユーザがリモコン208のチャンネル選択ボタン等を操作することによって選択されるチャンネルを指定した情報、選択されたチャンネルと所定の関係を有するチャンネルの情報及び自端末装置2の所在情報等を含む。
More specifically, the connection means transmits a registration request to the
また、接続手段は、接続管理装置3へ送信した接続先紹介要求に対して、接続管理装置3からネットワーク6を介して通知される視聴用チャンネルやザッピング対策チャンネルの接続先候補の情報、すなわち接続先候補の端末装置の所在情報であるIPアドレスやポート番号などの情報(以下、接続先候補の情報を含めて、「接続先候補」と略すことがある。)を受信する機能を有する。
In addition, the connection means responds to the connection destination introduction request transmitted to the
更に、接続手段は、受信した各チャンネルの接続先候補の情報に基づいて、その接続先候補への論理接続を行う機能を有する。すなわち、接続手段は、接続先候補の情報に基づいて、接続先候補のIPアドレス及びポート番号等をあて先とした接続要求を行い、接続先候補との論理接続を行う。このように接続先候補と接続することによって複数のチャンネル(視聴用チャンネル及び複数のザッピング対策チャンネル)の階層構造に組み込まれ、第1配信形態に参加することになる。 Further, the connection means has a function of performing logical connection to the connection destination candidate based on the received connection destination candidate information of each channel. In other words, the connection means makes a connection request with the destination IP address and port number as the destination based on the information about the destination candidate, and makes a logical connection with the destination candidate. By connecting with the connection destination candidates in this way, the channel is incorporated into the hierarchical structure of a plurality of channels (viewing channel and a plurality of zapping countermeasure channels) and participates in the first distribution form.
(ストリーミング受信手段について)
ストリーミング受信手段は、ネットワークインタフェース204を介して第1配信形態によって上流装置、すなわち上流に論理接続したコンテンツ配信装置1又は上流に接続された端末装置2からコンテンツパケットとして送信されるコンテンツデータをチャンネル(視聴用チャンネル及びザッピング対策チャンネル)毎にストリーミング受信し、このようにストリーミング受信したコンテンツデータをチャンネル毎にリングバッファ領域220に順次記憶する。なお、コンテンツデータ受信手段や後述のコンテンツデータ中継手段は、公知のストリーミング配信用プロトコルを用いることができるほか、独自の専用プロトコルを用いるようにすることもできる。
(About streaming receiving means)
The streaming receiving means transmits the content data transmitted as a content packet from the upstream device, that is, the
(ストリーミング再生手段について)
ストリーミング再生手段は、ネットワークインタフェース204を介して第1配信形態によって上流装置からストリーミング受信してリングバッファ領域220に順次記憶されたコンテンツデータを順次再生する機能を有している。
(About streaming playback means)
The streaming reproduction means has a function of sequentially reproducing the content data sequentially received from the upstream apparatus through the
このストリーミング再生手段は、参加している複数のチャンネルのうちチャンネル選択ボタン等によって最後に選択された最新のチャンネルに対応するコンテンツデータをリングバッファ領域から取り出して、音源チップ211やビデオチップ209を動作させることによってこの機能を実現しており、リングバッファ領域220に格納したコンテンツデータを順次取り出して、所定のコンテンツデータ形式(たとえば、Wave形式)に変換して音源チップ211やビデオチップ209へ入力し、コンテンツの再生を行う。
This streaming playback means operates the
ストリーミング再生手段によって所定のコンテンツデータ形式に変換されたコンテンツデータは、そのコンテンツデータがオーディオ情報を含む場合には、そのオーディオ情報が音源チップ211によってオーディオ信号へ変換された後、内蔵スピーカ212から出力される。
The content data converted into a predetermined content data format by the streaming reproduction means is output from the built-in
また、ストリーミング再生手段によって所定のコンテンツデータ形式に変換されたコンテンツデータは、そのコンテンツデータに映像情報が含まれるときには、後述の表示制御手段による制御によってこの映像情報が内蔵ディスプレイ210に表示される。
In addition, when the content data converted into a predetermined content data format by the streaming playback means includes video information, the video information is displayed on the built-in
また、ストリーミング再生手段は、リングバッファ領域220に格納されたコンテンツデータに含まれる再生開始時刻情報に基づいて、当該コンテンツデータを再生するタイミングを決定する。すなわち、再生手段は、リングバッファ領域220に格納されたコンテンツデータをその再生開始時刻で内蔵スピーカ212や内蔵ディスプレイ210に出力するように構成されている。
Also, the streaming playback means determines the timing for playing back the content data based on the playback start time information included in the content data stored in the
(表示制御手段について)
表示制御手段は、ビデオチップ209及び内蔵ディスプレイ210を制御して、コンテンツデータや各種情報を表示する機能を有している。すなわち、表示制御手段は、内蔵ディスプレイ210にどのようにコンテンツの映像や各種情報を表示するかを制御することができる。
(Display control means)
The display control means has a function of controlling the
(ストリーミング中継手段について)
ストリーミング中継手段は、第1配信形態における上流装置、すなわちコンテンツ配信装置1又は上流に接続された端末装置2からネットワーク6を介してストリーミング受信されたコンテンツデータを、下流に接続された他の端末装置2へネットワーク6を介して転送する。
(About streaming relay means)
The streaming relay unit is configured to receive the content data stream-received via the
(識別情報リスト受信手段について)
識別情報リスト受信手段は、コンテンツ投入装置4から送信される識別情報リストを受信する機能を有している。コンテンツ投入装置4から送信される識別情報リストは、第2配信形態においてダウンロード可能なコンテンツデータの名称とコンテンツIDとが関連付けられた情報であり、自端末装置2がコンテンツ投入装置4へ識別情報リストの送信要求を行うことによって、コンテンツ投入装置4から送信されるものである。
(Identification information list receiving means)
The identification information list receiving unit has a function of receiving the identification information list transmitted from the
(ダウンロード操作検出手段について)
ダウンロード操作検出手段は、第2配信形態によるコンテンツデータのダウンロード要求の操作を検出する機能を有する。例えば、図16に示すように第2配信形態においてダウンロード可能なコンテンツデータが内蔵ディスプレイ210の所定領域24に一覧表示されている状態で、ユーザがリモコン208を操作して、ダウンロードするコンテンツデータを指定枠25により指定してダウンロードボタン26を選択したことを検出することによって、第2配信形態によるコンテンツデータのダウンロード要求の操作を検出する。
(About download operation detection means)
The download operation detecting means has a function of detecting an operation of downloading content data according to the second distribution form. For example, as shown in FIG. 16, in a state where content data that can be downloaded in the second distribution form is listed in the predetermined
(切断手段について)
切断手段は、ダウンロード操作検出手段によってダウンロード要求の操作が検出されたとき、接続手段によって接続状態にあるチャンネルのうち、チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネルに関する接続先候補との接続を切断する機能を有する。
(About cutting means)
The disconnecting means includes a connection destination candidate relating to a channel having a predetermined relationship with the channel selected by the channel selecting means among the channels connected by the connecting means when the download request detecting operation is detected by the download operation detecting means. Has a function of disconnecting the connection.
ここで、切断手段は、チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネルが複数ある場合であって、ダウンロード操作検出手段によってダウンロード要求の操作が検出されたとき、接続手段によって接続状態にあるチャンネルのうち、チャンネル選択手段によって選択されたチャンネルと所定の関係を有する全てのチャンネルに関する接続先候補との接続を切断する。すなわち、切断手段は、全てのザッピング対策チャンネルの階層構造から脱退するのである。 Here, the disconnecting means is a case where there are a plurality of channels having a predetermined relationship with the channel selected by the channel selecting means, and when the download request detecting operation is detected by the download operation detecting means, the disconnecting means is connected by the connecting means. The connection with the connection destination candidates for all channels having a predetermined relationship with the channel selected by the channel selection means is disconnected. That is, the disconnecting means leaves the hierarchical structure of all the zapping countermeasure channels.
このようにザッピング対策チャンネルが複数ある場合には、全てのザッピング対策チャンネルから脱退するので、通信帯域をより多く確保することができ、第2配信形態での通信を安定させることができる。 When there are a plurality of zapping countermeasure channels in this way, all zapping countermeasure channels are withdrawn, so that a larger communication band can be secured and communication in the second distribution mode can be stabilized.
また、所定の関係を有するチャンネルは、上述したようにチャンネル選択手段によって選択されたチャンネル番号に隣接するチャンネル番号を有するチャンネルである。 The channels having a predetermined relationship are channels having channel numbers adjacent to the channel numbers selected by the channel selection unit as described above.
(識別情報取得手段について)
識別情報取得手段は、ダウンロード操作検出手段によってダウンロード要求の操作が検出されたとき、ダウンロード要求されたコンテンツデータを第2配信形態で取得するために、ダウンロード要求されたコンテンツデータの識別情報であるコンテンツIDを取得する。
(About identification information acquisition means)
The identification information acquisition unit is content that is identification information of the content data requested to be downloaded in order to acquire the content data requested to be downloaded in the second distribution form when the download operation detection unit detects the download request operation. Get an ID.
ダウンロード要求されたコンテンツIDの取得は、以下のように行われる。 Acquisition of the content ID requested for download is performed as follows.
第1配信形態においてストリーミング再生手段によって再生されるコンテンツデータに関してダウンロード要求の操作があると、識別情報取得手段は、識別情報リスト受信手段によって受信した識別情報リストからダウンロード要求されたコンテンツデータの識別情報であるコンテンツIDを取得する。 When there is a download request operation regarding the content data reproduced by the streaming reproduction means in the first distribution form, the identification information acquisition means identifies the identification information of the content data requested for download from the identification information list received by the identification information list reception means. Is obtained.
ここで、識別情報取得手段は、後述するコンテンツ識別情報演算手段によってダウンロード要求されたコンテンツデータのコンテンツIDを求めるようにしてもよい。すなわち、ダウンロード要求されたコンテンツデータの名称をキーワードとして上記ハッシュ関数によりハッシュ化することによってコンテンツIDを求めるのである。このようにダウンロード要求されたコンテンツデータの名称をキーワードとしてコンテンツIDを求めることにより、端末装置2における第2配信形態でのダウンロード処理がし易くなる。なお、第2配信形態によってダウンロード可能なコンテンツの名称は、コンテンツ投入装置4から一覧表などの形式で取得し、コンテンツ識別情報演算手段は、この一覧表などからコンテンツの名称を取得することで、コンテンツIDを算出することができる。
Here, the identification information acquisition means may obtain the content ID of the content data requested to be downloaded by the content identification information calculation means described later. That is, the content ID is obtained by hashing with the hash function using the name of the content data requested for download as a keyword. Thus, by obtaining the content ID using the name of the content data requested for download as a keyword, the download processing in the second distribution form in the
(判定手段)
判定手段は、ダウンロード要求されたコンテンツデータ全体がリングバッファ領域220に蓄積されているか否かを判定する。
(Judgment means)
The determination unit determines whether or not the entire content data requested to be downloaded is stored in the
ここで、自端末装置がコンテンツ保持端末装置として機能する場合には、コンテンツ保持端末装置として保持すべきコンテンツデータは、ハードディスク装置203のコンテンツデータ記憶領域(コンテンツデータ記憶手段の一例に相当)に記憶される。また、過去にダウンロードしたコンテンツデータも同様にハードディスク装置203のコンテンツデータ記憶領域に記憶される。判定手段は、ダウンロード要求されたコンテンツデータがハードディスク装置203のコンテンツデータ記憶領域に記憶されているか否かを判定する。
Here, when the own terminal device functions as a content holding terminal device, the content data to be held as the content holding terminal device is stored in a content data storage area (corresponding to an example of content data storage means) of the
(コンテンツデータ記憶制御手段)
コンテンツデータ記憶制御手段は、この判定手段によって、ダウンロード要求されたコンテンツデータ全体がリングバッファ領域220に蓄積されていると判定すると、第2配信形態によってコンテンツデータのダウンロードを行わずに、リングバッファ領域220に蓄積されているコンテンツデータをハードディスク装置203のコンテンツデータ記憶領域に記憶する。そして、判定手段によって、ダウンロード要求されたコンテンツデータ全体がリングバッファ領域220に蓄積されていると判定すると、切断手段は、接続状態にあるチャンネルの接続先候補との接続を切断しない。
(Content data storage control means)
When the content data storage control means determines that the entire content data requested to be downloaded is stored in the
また、判定手段によって、ダウンロード要求されたコンテンツデータがハードディスク装置203のコンテンツデータ記憶領域に記憶されていると判定すると、切断手段は、接続状態にあるチャンネルの接続先候補との接続を切断せず、かつ後述するダウンロード処理手段は、第2配信形態によってコンテンツデータのダウンロードを行わない。
If the determination unit determines that the content data requested for download is stored in the content data storage area of the
(ダウンロード処理手段について)
ダウンロード処理手段は、識別情報取得手段によって取得されたコンテンツデータの識別情報に基づいて、ダウンロード要求されたコンテンツデータを第2配信形態の端末装置からダウンロードする機能を有しており、ダウンロード先検索手段、ダウンロード送信要求手段、ダウンロードデータ受信手段などから構成されている。
(About download processing means)
The download processing means has a function of downloading the content data requested to be downloaded from the terminal device in the second distribution form based on the identification information of the content data acquired by the identification information acquisition means. , Download transmission request means, download data reception means, and the like.
ダウンロード先検索手段は、識別情報取得手段によって取得されたコンテンツデータのコンテンツIDに基づいて、ダウンロード要求されたコンテンツデータを保持するコンテンツ保持端末装置を検索する。 The download destination search unit searches for a content holding terminal device that holds the content data requested for download based on the content ID of the content data acquired by the identification information acquisition unit.
コンテンツ保持端末装置の検索は、識別情報取得手段によって取得されたコンテンツIDを宛先識別情報としたコンテンツ検索メッセージを生成し、そのコンテンツIDと同じエリアの端末IDを持つ端末装置の所在情報をルーティングテーブル223から取り出して、その端末装置へコンテンツ検索メッセージを送信することによって行う。 The search for the content holding terminal device generates a content search message with the content ID acquired by the identification information acquisition means as the destination identification information, and stores the location information of the terminal device having the terminal ID in the same area as the content ID in the routing table The content search message is taken out from H.223 and transmitted to the terminal device.
そして、コンテンツ検索メッセージに対して、識別情報取得手段によって取得されたコンテンツIDのコンテンツデータを保持するコンテンツ保持端末装置の所在情報がルート端末装置から送信される。 In response to the content search message, location information of the content holding terminal device that holds the content data of the content ID acquired by the identification information acquisition unit is transmitted from the root terminal device.
このようにして、ダウンロード先検索手段は、ダウンロード要求されたコンテンツデータを保持するコンテンツ保持端末装置を検索する。 In this way, the download destination search means searches for a content holding terminal device that holds the content data requested to be downloaded.
また、ダウンロード送信要求手段は、ダウンロード先検索手段によって検索されたコンテンツ保持端末装置に、ダウンロード要求されたコンテンツデータの送信をネットワーク6を介して要求(以下、「ダウンロード送信要求」と呼ぶ。)する。このダウンロード送信要求は、コンテンツ保持端末装置の所在情報を宛先として、ダウンロード要求に対応するコンテンツデータのコンテンツIDを設定するものである。なお、ダウンロード先検索手段によって検索されたコンテンツ保持端末装置が複数ある場合には、近隣のコンテンツ保持端末装置の一つに対してダウンロード送信要求が行われる。 The download transmission request means requests the content holding terminal device searched by the download destination search means to transmit the content data requested for download via the network 6 (hereinafter referred to as “download transmission request”). . This download transmission request sets the content ID of the content data corresponding to the download request with the location information of the content holding terminal device as the destination. If there are a plurality of content holding terminal devices searched by the download destination searching means, a download transmission request is made to one of the nearby content holding terminal devices.
ここで、「近隣のコンテンツ保持端末装置」とは、ダウンロード送信要求を行う端末装置が、コンテンツ保持端末装置とDHTルーティングにおいて端末IDが近い端末装置、或いは、物理ネットワークにおいて近いコンテンツ保持端末装置を意味する。特に、ダウンロード送信要求を行うコンテンツ保持端末装置を物理ネットワークにおいて近いコンテンツ保持端末装置とする場合には、コンテンツ保持端末装置からのコンテンツデータのダウンロードを短時間で行うことができる。なお、「物理ネットワークにおいて近い」とは、ダウンロード送信要求を行う端末装置からのメッセージ到達時間が短い、或いはダウンロード送信要求を行う端末装置からのポップ数(ルータを経由する数)が少ない等を意味する。 Here, the “neighboring content holding terminal device” means a terminal device that makes a download transmission request, a terminal device having a terminal ID close to the content holding terminal device in DHT routing, or a content holding terminal device close to the physical network. To do. In particular, when the content holding terminal device that makes a download transmission request is a content holding terminal device that is close to the physical network, the content data can be downloaded from the content holding terminal device in a short time. Note that “close to the physical network” means that the message arrival time from the terminal device that issues the download transmission request is short, or that the number of pops (number via the router) from the terminal device that issues the download transmission request is small. To do.
また、ダウンロードデータ受信手段は、ダウンロード要求されたコンテンツデータを保持するコンテンツ保持端末装置からダウンロード要求されたコンテンツデータをネットワーク6を介して受信する。コンテンツ保持端末装置から送信されるコンテンツデータは、第1配信形態のようなストリーミング形式ではなく、ダウンロード形式のデータであるが、ストリーミング形式とすることも可能である。
The download data receiving unit receives the content data requested to be downloaded from the content holding terminal device that holds the content data requested to be downloaded via the
ダウンロード受信手段により受信したコンテンツデータは、制御部230によって、ハードディスク装置203のコンテンツデータ記憶領域に記憶される。
The content data received by the download receiving means is stored in the content data storage area of the
(再接続手段について)
再接続手段は、ダウンロード要求されたコンテンツデータのダウンロードデータ受信手段での受信が完了すると、切断手段によって切断したザッピング対策チャンネルに関する接続先紹介要求を接続管理装置3へ送信し、その後、接続管理装置3から通知された接続先候補に再接続する機能を有する。
(Reconnection method)
When the download data receiving unit completes the content data requested to be downloaded, the reconnection unit transmits a connection destination introduction request regarding the zapping countermeasure channel disconnected by the disconnection unit to the
なお、この再接続手段において、ダウンロードデータ受信手段での受信が完了して所定期間経過後に、切断手段によって切断したザッピング対策チャンネルに再接続するようにしてもよい。また、この所定期間を端末装置2における第2配信形態の利用状況に応じて変更するようにしてもよい。例えば、第2配信形態の連続利用時間の履歴をハードディスク装置203に記憶しておき、連続利用時間の平均時間に応じて前記所定期間を定めるようにすることができる。このようにすれば、切断手段によるチャンネルの切断と再接続手段によるチャンネルの再接続を頻繁に行なうような状態を低減することができ、その結果、第1配信形態における各階層構造に対する負荷を低減することが可能となる。
Note that this reconnection means may be reconnected to the zapping countermeasure channel disconnected by the disconnection means after the reception by the download data reception means is completed and a predetermined period has elapsed. The predetermined period may be changed according to the usage status of the second distribution form in the
(メッセージ宛先判定手段について)
メッセージ宛先判定手段は、ネットワーク6を介して受信したメッセージの宛先識別情報とルーティングテーブルとに基づいて、受信したメッセージが自端末装置2宛であるか否かを判定する。このメッセージ宛先判定手段が判定するメッセージは、上述のコンテンツ検索メッセージ、コンテンツ登録メッセージなどである。
(About message destination determination means)
The message destination determination means determines whether or not the received message is addressed to the own
受信したメッセージが自端末装置2宛であるか否かの判定は、メッセージに含まれる宛先端末ID(宛先識別情報)を取り出し、主記憶装置205に記憶したルーティングテーブルに基づいて判定する。すなわち、各種のメッセージをネットワークインタフェース204を介して受信したとき、メッセージ宛先判定手段は、受信したメッセージに含まれる宛先識別情報とルーティングテーブル223に記憶した端末IDとを比較し、メッセージに含まれる宛先識別情報と一番近いルーティングテーブル223上の端末IDが自端末装置2の端末IDであると判定すると、自端末装置2宛のメッセージであると判定する。
Whether or not the received message is addressed to the own
(コンテンツ保持端末装置情報選択手段について)
コンテンツ保持端末装置情報選択手段は、メッセージ宛先判定手段によりネットワーク6を介して受信したメッセージが自端末装置2宛であり、かつコンテンツ検索メッセージであると判定すると、インデックステーブル222からコンテンツ検索メッセージが対象とするコンテンツIDのコンテンツデータを保持するコンテンツ保持端末装置の所在情報を選択する。なお、インデックステーブル222にコンテンツ保持端末装置の所在情報が複数ある場合には、それらを全部或いはいくつか選択する。
(About content holding terminal device information selection means)
When the content holding terminal device information selection unit determines that the message received via the
(コンテンツ保持端末装置情報返信手段について)
コンテンツ保持端末装置情報返信手段は、コンテンツ保持端末装置情報選択手段によって選択されたコンテンツ保持端末装置の所在情報を、リクエスト端末装置へネットワーク6を介して返信する。
(About content holding terminal device information return means)
The content holding terminal device information return means returns the location information of the content holding terminal device selected by the content holding terminal device information selection means to the request terminal device via the
(コンテンツ識別情報演算手段について)
コンテンツ識別情報演算手段は、コンテンツデータの固有情報を上記の如く所定のハッシュ関数によって演算することによってコンテンツデータの識別情報であるコンテンツIDを演算する。
(About content identification information calculation means)
The content identification information calculation means calculates the content ID that is the identification information of the content data by calculating the specific information of the content data by a predetermined hash function as described above.
(コンテンツ登録メッセージ生成手段について)
コンテンツ投入装置4からコンテンツデータを受信したとき、受信したコンテンツデータをハードディスク装置203のコンテンツデータ記憶領域(コンテンツデータ記憶手段の一例に相当)に記憶する。又、コンテンツデータのコンテンツの名称をコンテンツ識別情報演算手段によって演算したコンテンツIDを宛先識別情報とし、自端末装置の端末ID及びIPアドレスを含むコンテンツ登録メッセージを生成する。
(About content registration message generation means)
When content data is received from the
(コンテンツ登録メッセージ送信手段について)
コンテンツ登録メッセージ送信手段は、コンテンツ登録メッセージ生成手段によって生成したコンテンツ登録メッセージを、ハードディスク装置203に記憶したコンテンツデータのコンテンツIDに基づいて、ルーティングテーブル223に記憶された端末装置の識別情報から送信先端末装置を選択して送信する。例えば、図9に示すようなルーティングテーブルを有しており、かつハードディスク装置203に記憶したコンテンツデータのコンテンツIDが「1231」である場合、コンテンツ登録メッセージ送信手段は、ルーティングテーブルから端末ID「1221」を送信先端末装置として選択し、当該端末ID「1221」の端末装置のIPアドレス「21.13.21.13」を取り出す。そして、当該IPアドレス「21.13.21.13」を送信先端末装置としてコンテンツ登録メッセージを送信する。なお、このコンテンツ登録メッセージの宛先識別情報は「1231」となる。
(About content registration message transmission means)
The content registration message transmission means transmits the content registration message generated by the content registration message generation means from the identification information of the terminal device stored in the routing table 223 based on the content ID of the content data stored in the
(メッセージ転送手段について)
メッセージ転送手段は、メッセージ宛先判定手段によりネットワーク6を介して受信したメッセージが自端末装置宛ではないと判定されると、受信したメッセージの宛先識別情報に基づいて、転送先の端末装置の所在情報をルーティングテーブル223から取り出し、転送先の端末装置へ受信したメッセージを転送する。
(About message transfer means)
When the message transfer means determines that the message received via the
(デコード手段について)
デコード手段は、他の端末装置2から送信されるコンテンツデータ等をディスプレイ210に表示し、スピーカ212から出力するためにデコードする。すなわち、他の端末装置2から送信されるコンテンツデータは、ストリーミング配信用のデータ形式、例えばASF、WMA、WMV等のデータ形式でエンコードされており、このようにエンコードされているコンテンツデータをディスプレイ210やスピーカ212から出力できるようにデコードする。
(Decoding means)
The decoding means displays the content data transmitted from the other
(コンテンツ再生手段について)
コンテンツ再生手段は、ハードディスク装置203に記憶したコンテンツデータを取り出して再生するものであり、このとき制御部230は、ストリーム制御プログラム215に基づいてビデオチップ209及び音源チップ211を動作させることによりコンテンツデータが再生される。
(About content playback means)
The content reproduction means retrieves and reproduces the content data stored in the
[4.接続管理装置3の構成等の説明]
次に、図19を参照して、接続管理装置3の構成及び動作について説明する。
[4. Description of Configuration of Connection Management Device 3]
Next, the configuration and operation of the
図19は、本実施形態における接続管理装置3の概略構成例を示す図である。接続管理装置3は、一般のサーバコンピュータを適用可能であり、図19に示すように、CPU(Central Processing Unit)302と、各種プログラム等を記憶(格納)する書き換え可能な主記憶装置305と、各種データ等を記憶するハードディスク装置303と、ネットワーク6を介してコンテンツ配信装置1、コンテンツ投入装置4や端末装置2との間で通信を行うネットワークインタフェース304と、所定の情報を入力可能なキーボード307やマウス308等の入力手段を制御する周辺機器制御チップ306と、CPU302からイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込むと共にこのビデオメモリに書き込んだデータをディスプレイ310に表示するビデオチップ309とを備えて構成され、これらの各種構成要素はシステムバス301を介して相互に接続されている。
FIG. 19 is a diagram illustrating a schematic configuration example of the
なお、本実施形態においては、CPU302と主記憶装置305とで制御部330を構成している。なお、ネットワークインタフェース304は、ルータ10cを介して、ネットワーク6に接続されている。このルータ10cは、図1に示すルータ10に相当するものである。
In the present embodiment, the
(主記憶装置305について)
また、主記憶装置305には、接続管理装置3のコンピュータとしての基本的な機能を提供するためのOSプログラム317と、複数の端末装置2の所在情報(IPアドレスやポート番号など)などを管理するための端末管理プログラム318と、コンテンツ配信装置を頂点として複数の端末装置がネットワーク上にツリー状階層構造で多層に論理接続されるように構築及び管理等するためのトポロジー管理プログラム319と、端末装置2から送信される接続先紹介要求に対して接続先候補を選択し、端末装置2へ接続先候補の情報を送信等するための接続先紹介プログラム320等が記憶されており、これらはCPU302によって読み出され、CPU302によってこれらのプログラムに従った機能が実行される。
(About the main storage device 305)
The
ここで、OSプログラム317は、CPU302によって読み出されて実行されることにより、キーボード307やマウス308の入出力に関する機能や、主記憶装置305やハードディスク装置303などのメモリ管理などの接続管理装置3であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム317がCPU302によって実行された状態で、上述の端末管理プログラム318、トポロジー管理プログラム319、接続先紹介プログラム320等が実行される。
Here, the
なお、OSプログラム317、端末管理プログラム318、トポロジー管理プログラム319、接続先紹介プログラム320等は、例えば、ネットワーク6に接続されたサーバ等から主記憶装置305にダウンロードされるようにしてもよく、また、CD−ROM等の記録媒体に記録されてから記録媒体のドライブを介して、主記憶装置305に読み込まれるようにしてもよい。
Note that the
(制御部330について)
制御部330は、上述のようにCPU302と主記憶装置305とから構成され、CPU302が主記憶装置305に記憶された各種プログラム317〜320を読み出して実行することにより、接続管理装置3全体を統括制御し、かつ、後述する接続先紹介要求受信手段、接続先候補選択手段、接続先候補通知手段、トポロジー管理手段、端末管理手段等として機能する。更に、ハードディスク装置303は、コンテンツ配信装置1を頂点として、ネットワーク6上において階層構造で多層に論理接続された複数の端末装置の接続状態情報をチャンネル毎に記憶する接続状態情報記憶手段として使用される。
(Regarding the controller 330)
The
なお、CPU302が端末管理プログラム318を実行することによって、端末管理手段等として、またCPU302がトポロジー管理プログラム319を実行することによってトポロジー管理手段等として、更にCPU302が接続先紹介プログラム320を実行することによって接続先紹介要求受信手段、接続先候補選択手段、接続先候補通知手段等として、それぞれ機能する。
The
(端末管理手段について)
端末管理手段は、端末装置2からの登録要求を受信すると、端末管理データベース314へこの端末装置2の所在情報であるIPアドレスなどをチャンネル毎に登録する。また、コンテンツ配信装置1からの登録要求を受信した場合も、このコンテンツ配信装置1の所在情報であるIPアドレスなどを各チャンネル毎に端末管理データベース314に登録する。なお、これらの端末装置2の所在情報は端末装置2からの登録要求に含まれ、この登録要求から所在情報を取得する。
(About terminal management means)
When receiving the registration request from the
(トポロジー管理手段について)
トポロジー管理手段は、コンテンツ配信装置1から送信されるチャンネルの生成要求に基づいて、ツリー状階層構造を生成するための新規トポロジー生成手段と、端末装置2の接続先紹介要求や接続切断通知などのトポロジー変動通知によってツリー状階層構造における端末装置2の接続情報を変更するトポロジー変更手段としての機能を有している。また、トポロジー管理手段は、階層構造を構成する端末装置2の接続状態情報を接続状態情報記憶手段としてのトポロジーデータベース315へ記憶する。
(About topology management means)
The topology management means includes a new topology generation means for generating a tree-like hierarchical structure based on a channel generation request transmitted from the
新規トポロジー生成手段は、コンテンツ投入装置4からチャンネルの生成要求を受信すると、トポロジーテーブルを生成してトポロジーデータベース315へ登録する。ここで、トポロジーテーブルは、ツリー状階層構造を構成する端末装置2の接続状態情報などを格納するためのテーブルであり、トポロジーデータベース315に登録される。
When receiving a channel generation request from the
トポロジー変更手段は、トポロジーデータベース315に記憶されるトポロジーテーブルに端末装置2の情報を追加又は削除する機能を実行するものであり、端末装置2からの接続先紹介要求トポロジー参加報告に基づいて、トポロジーテーブルへの追加又は変更を行うものである。
The topology change means executes a function of adding or deleting information of the
(接続先紹介要求受信手段について)
接続先紹介要求受信手段は、新規に第1配信形態に参加又は新規のチャンネルしようとする端末装置2からネットワーク6を介して接続先紹介要求を受信する。
(About connection destination introduction request receiving means)
The connection destination introduction request receiving unit receives a connection destination introduction request via the
(接続先候補選択手段について)
接続先候補選択手段は、新規に第1配信形態に参加又は新規のチャンネルに参加しようとする端末装置2からネットワーク6を介して接続先紹介要求を受信したとき、端末装置2の接続先紹介要求に対する接続先候補を、トポロジーデータベース315に記憶された接続状態情報から選択する。
(About connection destination candidate selection means)
When the connection destination candidate selection means receives a connection destination introduction request via the
(接続先候補通知手段について)
接続先候補通知手段は、接続先候補選択手段によって選択された接続先候補を、接続先紹介要求を送信した端末装置2へネットワーク6を介して通知する機能を有する。この接続先候補の通知は、接続先候補の情報、すなわち接続先候補の端末装置2の通信プロトコル、IPアドレスやポート番号などの情報を含む。
(About connection destination candidate notification means)
The connection destination candidate notification unit has a function of notifying the
[5.コンテンツ投入装置4の構成等の説明]
次に、図20を参照して、コンテンツ投入装置4の構成及び動作について説明する。
[5. Description of Configuration of Content Input Device 4]
Next, the configuration and operation of the
図20は、本実施形態におけるコンテンツ投入装置4の概略構成例を示す図である。コンテンツ投入装置4は、一般のサーバコンピュータを適用可能であり、図20に示すように、CPU(Central Processing Unit)402と、各種プログラム等を記憶(格納)する書き換え可能な主記憶装置405と、各種データ等を記憶するハードディスク装置403と、ネットワーク6を介してコンテンツ配信装置1、端末装置2及び接続管理装置3等との間で通信を行うネットワークインタフェース404と、所定の情報を入力可能なキーボード407やマウス408等の入力手段を制御する周辺機器制御チップ406と、CPU402からイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込むと共にこのビデオメモリに書き込んだデータをディスプレイ410に表示するビデオチップ409とを備えて構成され、これらの各種構成要素はシステムバス401を介して相互に接続されている。
FIG. 20 is a diagram illustrating a schematic configuration example of the
なお、本実施形態においては、CPU402と主記憶装置405とで制御部430を構成している。なお、ネットワークインタフェース404は、ルータ10dを介して、ネットワーク6に接続されている。このルータ10dは、図1に示すルータ10に相当するものである。
In the present embodiment, the
(主記憶装置405について)
また、主記憶装置405には、コンテンツ投入装置4のコンピュータとしての基本的な機能を提供するためのOSプログラム417と、第1配信形態におけるコンテンツ配信装置1や第2配信形態における端末装置2に対してコンテンツデータの送信及び管理を行うためのコンテンツ管理プログラム419と、第1配信形態や第2配信形態において投入された複数のコンテンツデータのコンテンツの名称とコンテンツIDを関連付けた識別情報リストである識別情報リストを生成してハードディスク装置403の識別情報リスト記憶領域に記憶したり、ハードディスク装置403の識別情報リスト記憶領域から識別情報リストを取り出して、端末装置2へ送信するためのカタログ管理プログラム418等が記憶されており、これらはCPU402によって読み出され、CPU402によってこれらのプログラムに従った機能が実行される。
(Regarding main memory 405)
The
ここで、OSプログラム417は、CPU402によって読み出されて実行されることにより、キーボード407やマウス408の入出力に関する機能や、主記憶装置405やハードディスク装置403などのメモリ管理などのコンテンツ投入装置4であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム417がCPU402によって実行された状態で、上述のカタログ管理プログラム418、コンテンツ管理プログラム419等が実行される。
Here, the
なお、OSプログラム417、カタログ管理プログラム418、コンテンツ管理プログラム419等は、例えば、ネットワーク6に接続されたサーバ等から主記憶装置405にダウンロードされるようにしてもよく、また、CD−ROM等の記録媒体に記録されてから記録媒体のドライブを介して、主記憶装置405に読み込まれるようにしてもよい。
The
(制御部430について)
制御部430は、上述のようにCPU402と主記憶装置405とから構成され、CPU402が主記憶装置405に記憶された各種プログラム417〜419を読み出して実行することにより、コンテンツ投入装置4全体を統括制御し、かつ、後述するコンテンツ投入手段、識別情報リスト生成手段、識別情報リスト送信手段等として機能する。更に、ハードディスク装置403は、第1配信形態におけるコンテンツ配信装置1や第2配信形態のコンテンツ保持端末装置へ送信して投入するコンテンツデータを記憶するコンテンツデータ記憶領域と、コンテンツ配信装置1や第2配信形態のコンテンツ保持端末装置へ投入したコンテンツデータに関する識別情報リストを記憶する識別情報リスト記憶手段としての識別情報リスト記憶領域等から構成される。
(About control unit 430)
The
ここで、識別情報リスト記憶手段は、上述のようにコンテンツ配信装置1によってストリーミング配信するコンテンツデータ以外のコンテンツデータの識別情報を含む識別情報リストをも記憶する。従って、放送形態で直接配信されるコンテンツデータ以外のコンテンツデータを第2配信形態で取得することができる。例えば、コンテンツデータが音楽コンテンツの場合には、過去に視聴した音楽コンテンツを第2配信形態で取得することが可能となる。
Here, the identification information list storage means also stores an identification information list including identification information of content data other than the content data to be streamed by the
なお、CPU402がカタログ管理プログラム418を実行することによって、識別情報リスト生成手段、識別情報リスト送信手段等として、またCPU402がコンテンツ管理プログラム419を実行することによってコンテンツ投入手段等として、それぞれ機能する。
The
(コンテンツ投入手段について)
コンテンツ投入手段は、第2配信形態にて配信するコンテンツデータを複数の端末装置2のうち一部の端末装置2に送信する。具体的には、以下のように動作する。
(About content input means)
The content input means transmits content data distributed in the second distribution form to some
コンテンツ配信装置1からの要求或いはキーボード407やマウス408等の入力手段からの操作によって、コンテンツデータの投入指示があったとき、コンテンツ投入手段は、その投入指示に対応するコンテンツデータをハードディスク装置403のコンテンツデータ記憶領域から取り出す。
When there is a content data input instruction by a request from the
ハードディスク装置403から取り出したコンテンツデータは、コンテンツ投入手段によって、第1配信形態及び第2配信形態の両方の配信形態に送信され、投入される。但し、コンテンツ投入手段は第1配信形態へ投入されないコンテンツデータであっても、第2配信形態へ投入されることがある。
The content data extracted from the
すなわち、コンテンツ投入手段は、ハードディスク装置403から取り出したコンテンツデータをコンテンツ配信装置1に送信する。コンテンツ配信装置1に送信されたコンテンツデータは、第1配信形態で各端末装置2へストリーミング配信される。
In other words, the content input unit transmits the content data extracted from the
また、コンテンツ投入手段は、ハードディスク装置403から取り出したコンテンツデータを第2配信形態におけるいくつかの端末装置2に送信し、コンテンツ保持端末装置として機能させる。送信先の端末装置2はコンテンツ投入手段によってランダムに決定される。
In addition, the content input unit transmits the content data extracted from the
(識別情報リスト生成手段について)
識別情報リスト生成手段は、コンテンツ投入手段によってコンテンツデータの投入が行われると、ハードディスク装置403の識別情報リスト記憶領域に記憶した識別情報リストを更新する。すなわち、コンテンツ投入手段によって新たに投入したコンテンツデータのコンテンツの名称及びコンテンツIDとを関連付けた情報を識別情報リストに加える。
(Identification information list generation means)
The identification information list generation unit updates the identification information list stored in the identification information list storage area of the
(識別情報リスト送信手段について)
識別情報リスト送信手段は、識別情報リスト記憶手段に記憶した識別情報リストを複数の端末装置に送信する。すなわち、コンテンツ配信装置1や端末装置2から識別情報リスト送信要求があったときには、ハードディスク装置403の識別情報リスト記憶領域に記憶した識別情報リストを要求した装置に対して送信する。
(Identification information list transmission means)
The identification information list transmission unit transmits the identification information list stored in the identification information list storage unit to the plurality of terminal devices. That is, when there is an identification information list transmission request from the
[6.コンタクト先紹介装置5の構成等の説明]
次に、図21を参照して、コンタクト先紹介装置5の構成及び動作について説明する。
[6. Description of the configuration of the contact introduction device 5]
Next, the configuration and operation of the contact
図21は、本実施形態におけるコンタクト先紹介装置5の概略構成例を示す図である。コンタクト先紹介装置5は、一般のサーバコンピュータを適用可能であり、図21に示すように、CPU(Central Processing Unit)502と、各種プログラム等を記憶(格納)する書き換え可能な主記憶装置505と、各種データ等を記憶するハードディスク装置503と、ネットワーク6を介して端末装置2との間で通信を行うネットワークインタフェース504と、所定の情報を入力可能なキーボード507やマウス508等の入力手段を制御する周辺機器制御チップ506と、CPU502からイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込むと共にこのビデオメモリに書き込んだデータをディスプレイ510に表示するビデオチップ509とを備えて構成され、これらの各種構成要素はシステムバス501を介して相互に接続されている。
FIG. 21 is a diagram illustrating a schematic configuration example of the
なお、本実施形態においては、CPU502と主記憶装置505とで制御部530を構成している。なお、ネットワークインタフェース504は、ルータ10eを介して、ネットワーク6に接続されている。このルータ10eは、図1に示すルータ10に相当するものである。
In the present embodiment, the
(主記憶装置505について)
また、主記憶装置505には、コンタクト先紹介装置5のコンピュータとしての基本的な機能を提供するためのOSプログラム517と、複数の端末装置2の所在情報(IPアドレスやポート番号など)などを管理するための端末管理プログラム518と、第2配信形態に参加していない端末装置2からの要求に応じて、コンタクト先の他の端末装置2を紹介するためのコンタクト先端末装置紹介プログラム519等が記憶されており、これらはCPU502によって読み出され、CPU502によってこれらのプログラムに従った機能が実行される。
(About the main memory 505)
The
ここで、OSプログラム517は、CPU502によって読み出されて実行されることにより、キーボード507やマウス508の入出力に関する機能や、主記憶装置505やハードディスク装置503などのメモリ管理などのコンタクト先紹介装置5であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム517がCPU502によって実行された状態で、上述の端末管理プログラム518、コンタクト先端末装置紹介プログラム519等が実行される。
Here, the
なお、OSプログラム517、端末管理プログラム518、コンタクト先端末装置紹介プログラム519等は、例えば、ネットワーク6に接続されたサーバ等から主記憶装置505にダウンロードされるようにしてもよく、また、CD−ROM等の記録媒体に記録されてから記録媒体のドライブを介して、主記憶装置505に読み込まれるようにしてもよい。
The
(制御部530について)
制御部530は、上述のようにCPU502と主記憶装置505とから構成され、CPU502が主記憶装置505に記憶された各種プログラム517〜519を読み出して実行することにより、コンタクト先紹介装置5全体を統括制御し、かつ、後述する端末装置管理手段、コンタクト先端末装置紹介手段等として機能する。
(About control unit 530)
The
なお、CPU502が端末管理プログラム518を実行することによって、端末管理手段等として、またCPU502がコンタクト先端末装置紹介プログラム519を実行することによってコンタクト先端末装置紹介手段等として、それぞれ機能する。
The
(端末管理手段について)
端末管理手段は、端末装置2からの第2配信形態に対する登録要求を受信すると、端末管理データベース515へこの端末装置2の所在情報であるIPアドレスなどを登録する。なお、これらの端末装置2の所在情報は端末装置2からの登録要求に含まれ、この登録要求から所在情報を取得する。
(About terminal management means)
Upon receiving a registration request for the second distribution form from the
(コンタクト先端末装置紹介手段について)
コンタクト先端末装置紹介手段は、端末装置2からの第2配信形態に対する登録要求を受信したとき、端末管理データベース515に登録した端末装置2から、登録要求を行った端末装置2が参加メッセージを送信すべき端末装置2を選択する。
(Contacting terminal device introduction means)
When the contact destination terminal device introduction means receives a registration request for the second distribution form from the
コンタクト先端末装置紹介手段は、選択した端末装置2の所在情報を端末管理データベース515から取り出し、登録要求を行った端末装置2に送信する。
The contact destination terminal device introduction means retrieves the location information of the selected
[7.コンテンツ配信システムSの動作]
以下、コンテンツ配信装置1、端末装置2、接続管理装置3、コンテンツ投入装置4及びコンタクト先紹介装置5の詳細動作について、フローチャートを用いて更に具体的に説明する。
[7. Operation of Content Distribution System S]
Hereinafter, detailed operations of the
(コンテンツ配信装置1の処理フローの説明)
まず、コンテンツ配信装置1の更に具体的な動作について、図22を参照して説明する。図22は、コンテンツ配信装置1における処理全体を示すフローチャートである。なお、以下の各処理は、コンテンツ配信装置1の制御部130が上述した手段等として機能することによって実行されるものである。
(Description of processing flow of content distribution apparatus 1)
First, a more specific operation of the
まず、図22に示すように、コンテンツ配信装置1の電源がONされると、コンテンツ配信装置1において、CPU102は、主記憶装置105やハードディスク装置103のアクセス許可、作業領域を初期化等の初期設定処理を実行し(ステップS100)、各プログラム115〜120をCPU102による実行状態とし、制御部130としての機能を動作させた後、ステップS101に処理を移す。
First, as shown in FIG. 22, when the power of the
ステップS101において、コンテンツ配信装置1における制御部130は、コンテンツ投入装置4に対して第1配信形態において放送するコンテンツデータを要求し、当該要求に対してコンテンツ投入装置4から送信されるコンテンツデータをハードディスク装置103における放送コンテンツ記憶領域に記憶する。
In step S101, the
ステップS102において、コンテンツ配信装置1における制御部130は、放送運営者から放送の開始要求又は停止要求があったか否かを判定する。ここで、放送運営者から放送の開始要求又は停止要求があったか否かは、キーボード107やマウス108等の入力手段から放送開始の操作がなされたか否か、或いはキーボード107やマウス108等の入力手段から放送停止の操作がなされたか否かにより判断される。ここで、放送運営者とは、第1配信形態及び第2配信形態によるコンテンツ配信の管理を行う事業者を意味するが、第1配信形態によるコンテンツ配信と第2配信形態とを別々の事業者によって行うようにしてもよい。
In step S102, the
この処理において、放送運営者から放送の開始要求があったと判定されると(ステップS102:Yes)、制御部130は、ハードディスク装置103から取り出したコンテンツデータを所定容量毎に分割しながらコンテンツパケットに格納し、ネットワーク6を介して、このコンテンツパケットを下流に論理接続された端末装置2へ送信する準備を行う。一方、同様に、放送運営者から放送の停止要求があったと判定されると(ステップS102:Yes)、制御部130は、下流に論理接続されている端末装置2に対して行っているコンテンツパケットの生成を停止し(ステップS103)、処理をステップS130に移す。
In this process, if it is determined that a broadcast start request has been received from the broadcast operator (step S102: Yes), the
一方、ステップS102において、制御部130は、放送運営者から放送の開始要求がなかったと判定した場合には(ステップS102:NO)、ステップS110に処理を移す。
On the other hand, in step S102, when the
ステップS110において、コンテンツ配信装置1における制御部130は、端末装置2からセッション開設か切断の要求があったか否かを判断する。この処理において、コンテンツ配信装置1における制御部130は、ネットワーク6を介して、端末装置2からセッション開設か切断の要求があったか否かを判断することとなる。
In step S <b> 110, the
この処理において、制御部130は、セッション開設の要求があったと判定した場合には(ステップS110:YES)、その端末装置2との接続を開設し(ステップS111)、セッション切断の要求があったと判定した場合には(ステップS110:YES)、その端末装置2との接続を切断し(ステップS111)、ステップS112に処理を移す。つまり、制御部130は、端末装置2からの要求に応じて、端末装置2の接続状態を変更設定させる制御を行うこととなる。
In this process, if the
ステップS110においてセッション開設の要求があったと判定した場合(ステップS110:YES)、制御部130は、ステップS112において、コンテンツ配信装置1の下流に論理接続されている端末装置2に対して、コンテンツデータをストリーミング送信する。すなわち、ステップS103において生成したコンテンツパケットを、ネットワーク6を介して、下流に論理接続された端末装置2へ順次送信する。また、セッション切断の要求があったと判定されると(ステップS110:YES)、制御部130は、コンテンツ配信装置1の下流に論理接続されている端末装置2に対して、コンテンツデータのストリーミング送信を停止する。すなわち、ステップS103において生成したコンテンツパケットの送信を停止する(ステップS112)。ステップS112の処理が終了すると、制御部130は、ステップS120に処理を移す。
If it is determined in step S110 that there is a session establishment request (step S110: YES), the
一方、ステップS110において、制御部130は、端末装置2からセッション開設も切断も要求がなかったと判定した場合には(ステップS110:NO)、ステップS120に処理を移す。
On the other hand, in step S110, when it is determined that neither the session opening nor the disconnection is requested from the terminal device 2 (step S110: NO), the
ステップS120において、制御部130は、電源がオフであるか否かを判断し、電源がオフであると判定した場合には(ステップS120:YES)、本処理を終了する一方、電源がオフではないと判定した場合には(ステップS120:NO)、ステップS102から繰り返し処理を実行することとなる。
In step S120, the
(端末装置2の処理フローの説明)
次に、端末装置2の更に具体的な動作について、図23〜図32のフローチャートを参照して説明する。図23〜図32は端末装置2における処理を示すフローチャートである。なお、以下の各処理は、端末装置2の制御部230が上述した手段等として機能することによって実行されるものである。
(Description of processing flow of terminal device 2)
Next, a more specific operation of the
図23に示すように、端末装置2の電源がONになると、端末装置2のCPU202は、主記憶装置205やハードディスク装置203のアクセス許可、作業領域確保を初期化等の初期設定動作を実行し、各プログラム215〜219,221をCPU202による実行状態とし、制御部230としての機能を動作させた後(ステップS200)、ステップS201に処理を移す。
As shown in FIG. 23, when the power of the
ステップS201において、制御部230は、コンテンツ投入装置4から識別情報リストを取得する。この識別情報リストの取得は、制御部230がコンテンツ投入装置4に対して、識別情報リストを要求し、当該要求に対して送信される識別情報リストを受信することによって行う。
In step S <b> 201, the
この識別情報リストは、上述のように第2配信形態において取得可能な複数のコンテンツデータの名称等とコンテンツIDとが関連付けられた情報であり、制御部230がこの識別情報リストを取得し、内蔵ディスプレイ210に表示することによって、端末装置2のユーザがリモコン208等の操作により、第2配信形態でのコンテンツデータの取得を行うことができるようにしている。
This identification information list is information in which names of a plurality of content data that can be acquired in the second distribution form and content IDs are associated with each other as described above, and the
次に、制御部230は、ステップS202における初期チャンネル設定処理を行った後、ステップS203に処理を移す。このステップS202の処理は、図26におけるS240〜S247の処理であり、後述で詳説する。
Next, after performing the initial channel setting process in step S202, the
ステップS203において、制御部230は、ユーザからのチャンネル選択指示があったか否かを判定する。ユーザからのチャンネル選択指示があったか否かは、リモコン208等のチャンネル選択手段からチャンネル選択指示の操作がなされたか否かにより判断される。
In step S203, the
この処理において、制御部230は、ユーザからのチャンネル選択指示があったと判定した場合には(ステップS203:YES)、チャンネル変更処理に移行する(ステップS204)。このステップS204の処理は、図27及び図28におけるS250〜S254,S260〜S267の処理であり、後述で詳説する。
In this process, if the
一方、ステップS203において、ユーザからのチャンネル選択指示がなかったと判定すると(ステップS203:NO)、制御部230は、接続管理装置3から上流装置の候補を受信したか否かを判定する(ステップS205)。すなわち、ステップS204におけるチャンネル変更処理において行った接続先候補の紹介要求に対して、接続管理装置3から上流装置の接続先候補が通知されたか否かを判定するのである。
On the other hand, if it is determined in step S203 that there has been no channel selection instruction from the user (step S203: NO), the
この処理において、接続管理装置3から上流装置の接続先候補を受信したと判定すると(ステップS205:YES)、制御部230は、接続管理装置3から通知された上流装置の接続先候補の中から1つの接続先候補の上流装置を選択した後(ステップS206)、ステップS207の処理に移行する。
In this process, if it is determined that the upstream device connection destination candidate is received from the connection management device 3 (step S205: YES), the
ステップS207において、制御部230は、選択した接続先候補の上流装置にネットワーク6を介して論理接続する。上流装置への論理接続は、制御部230が、当該上流装置へネットワーク6を介して接続要求を行うことによって実行される。ステップS207の処理が終了すると、制御部130は、ステップS208に処理を移す。
In step S207, the
その後、ステップS208において、制御部230は、ネットワーク6を介して、上流装置に対してコンテンツデータのストリーミング配信を要求し、ステップS209の処理に移行する。
Thereafter, in step S208, the
ステップS209において、制御部230は、ネットワーク6を介して接続管理装置3へトポロジー参加報告を送信する。
In step S209, the
一方、ステップS205において、接続管理装置3から上流装置の候補を受信しなかったと判定すると(ステップS205:NO)、制御部230は、上流装置からコンテンツパケットを受信したか否かを判定する(ステップS210)。
On the other hand, if it is determined in step S205 that no upstream device candidate has been received from the connection management device 3 (step S205: NO), the
この処理において、制御部230は、上流装置からコンテンツパケットを受信したと判定すると(ステップS210:YES)、上流装置から受信したコンテンツパケットからコンテンツデータを取り出してリングバッファ領域220に記憶し、更にそのコンテンツデータを取り出してコンテンツパケットとして下流側の端末装置2へ転送する(ステップS211)。
In this process, when the
その後、制御部230は、上流装置から受信したコンテンツパケットが選択チャンネルのコンテンツパケットであるか否かを判定する(ステップS212)。選択チャンネルのコンテンツパケットであるか否かは、制御部230がネットワーク6を介して上流装置から受信したコンテンツパケットのヘッダ部に基づいて判定する。すなわち、制御部230は、コンテンツパケットのヘッダ部に含まれるチャンネル情報が、選択チャンネルであるか否かにより判定するのである。
Thereafter, the
ここで、選択チャンネルとは、参加している複数のチャンネルのうちチャンネル選択ボタン等によって最後に選択された最新のチャンネルを意味する。 Here, the selected channel means the latest channel selected last by a channel selection button or the like among a plurality of participating channels.
この処理において、上流装置から受信したコンテンツパケットが選択チャンネルのコンテンツパケットであると判定されると(ステップS212:YES)、制御部230は、リングバッファ領域220に記憶したコンテンツデータを取得して再生する(ステップS213)。コンテンツパケットの再生は、音源チップ211やビデオチップ209を動作させることによってこの機能を実現しており、リングバッファ領域220に格納したコンテンツデータのうち再生時刻となったコンテンツパケットを順次取り出して、所定のコンテンツデータ形式(たとえば、Wave形式)に変換して音源チップ211やビデオチップ209へ入力し、コンテンツの再生を行う。
In this process, when it is determined that the content packet received from the upstream device is the content packet of the selected channel (step S212: YES), the
一方、自上流装置から受信したコンテンツパケットが選択チャンネルのコンテンツパケットではないと判定すると(ステップS212:NO)、制御部230は、ステップS213の処理は行わない。
On the other hand, when determining that the content packet received from the own upstream device is not the content packet of the selected channel (step S212: NO), the
ステップS210において、上流装置からコンテンツパケットを受信しなかったと判定されると(ステップS210:NO)、制御部230は、ストリーミングの配信開始/停止要求があるか否かを判定する(ステップS214)。ストリーミングの配信開始/停止要求があるか否かは、下流の端末装置2から送信されるストリーミングの配信開始要求を受信したか否か、或いは下流の端末装置2から送信されるストリーミングの配信停止要求を受信したか否かによって判断される。
If it is determined in step S210 that the content packet has not been received from the upstream device (step S210: NO), the
この処理において、制御部230は、ストリーミングの配信の開始要求があったと判定すると(ステップS214:YES)、当該ストリーミング配信の開始要求を行った下流装置に対してのコンテンツパケットの転送を開始する(ステップS215)。また、制御部230は、ストリーミングの配信の停止要求があったと判定すると(ステップS214:YES)、当該ストリーミング配信の停止要求を行った下流装置に対してのコンテンツパケットの転送を停止する(ステップS215)。
In this process, when the
この処理は、ステップS211におけるコンテンツパケットの転送を行うか否かの設定となり、ストリーミングの配信の開始要求があったと判定すると、コンテンツパケットの下流装置への転送を行う設定となり、ストリーミングの配信の停止要求があったと判定すると、コンテンツパケットの下流装置への転送の停止を行う設定となる。 This process sets whether or not to transfer the content packet in step S211, and if it is determined that there is a request to start streaming distribution, the setting is performed to transfer the content packet to the downstream device, and the streaming distribution is stopped. If it is determined that there is a request, the setting is made to stop the transfer of the content packet to the downstream device.
一方、ステップS214において、ストリーミングの配信の開始要求/停止要求がなかったと判定すると(ステップS214:NO)、制御部230は、コンテンツ登録メッセージを受信したか否かを判定する(ステップS216)。コンテンツ登録メッセージを受信したか否かは、コンテンツ保持端末装置からネットワーク6を介して送信されるコンテンツ登録メッセージが自端末装置2で受信されたか否かによって判断される。
On the other hand, if it is determined in step S214 that there is no request for starting / stopping streaming delivery (step S214: NO), the
この処理において、コンテンツ登録メッセージを受信したと判定すると(ステップS216:YES)、制御部230は、主記憶装置205のインデックステーブル222に受信したコンテンツ登録メッセージに含まれるコンテンツ保持端末装置の所在情報及びコンテンツ保持端末装置が保持するコンテンツデータのコンテンツID等を関連付けてインデックステーブル222に追加する(ステップS217)。
In this process, if it is determined that the content registration message has been received (step S216: YES), the
その後、制御部230は、自端末装置2がルート端末装置であるか否かを判定する(ステップS218)。端末装置2がルート端末装置であるか否かは、受信したコンテンツ登録メッセージの宛先識別情報とルーティングテーブル223とに基づいて判断される。
Thereafter, the
この処理において、制御部230は、自端末装置2がルート端末装置でないと判定すると(ステップS218:NO)、ルーティングテーブル223に基づいて、コンテンツ登録メッセージを他の端末装置2へ転送する(ステップS219)。一方、自端末装置2がルート端末装置であると判定すると(ステップS218:YES)、制御部230は、ステップS219の処理は行わない。
In this process, when the
ステップS216において、コンテンツ登録メッセージを受信しなかったと判定すると(ステップS216:NO)、制御部230は、コンテンツ削除メッセージを受信したか否かを判定する(ステップS220)。コンテンツ削除メッセージを受信したか否かは、ネットワーク6を介して、コンテンツ保持端末装置から送信されるコンテンツ削除メッセージが受信されたか否かによって判断される。
If it is determined in step S216 that a content registration message has not been received (step S216: NO), the
この処理において、制御部230は、コンテンツ削除メッセージを受信したと判定すると(ステップS220:YES)、インデックステーブル222からコンテンツ削除メッセージに対応するインデックス情報(コンテンツID、コンテンツ保持ノード装置の所在位置等)を削除した後(ステップS221)、ステップS218の処理に移行する。
In this process, when the
ステップS220において、コンテンツ削除メッセージを受信しなかったと判定すると(ステップS220:NO)、制御部230は、投入されるコンテンツデータを受信したか否かを判定する(ステップS222)。
If it is determined in step S220 that the content deletion message has not been received (step S220: NO), the
この処理において、制御部230は、コンテンツ投入装置4から投入されるコンテンツデータを受信したと判定すると(ステップS222:YES)、投入コンテンツ受信処理を行う(ステップS223)。この投入コンテンツ受信処理は、図29におけるS275〜S278の処理であり、後述にて詳説する。
In this process, when it is determined that the content data input from the
ステップS222において、投入されるコンテンツデータ受信しなかったと判定すると(ステップS222:NO)、制御部230は、ユーザからのコンテンツ購入指示があるか否かを判定する(ステップS224)。ユーザからのコンテンツ購入指示があるか否かは、リモコン208等の入力手段からコンテンツ購入指示の操作がなされたか否かにより判断される。
If it is determined in step S222 that the content data to be input has not been received (step S222: NO), the
この処理において、制御部230は、ユーザによるダウンロード要求の操作、すなわちコンテンツ購入指示があったと判定すると(ステップS224:YES)、コンテンツ購入処理を行う(ステップS225)。このコンテンツ購入処理は、図30におけるS280〜S289の処理であり、後述にて詳説する。ユーザによるダウンロード要求の操作は、例えば、内蔵ディスプレイ210に図16に示すような画面が表示されている状態で、ユーザによるリモコン208の所定操作が行われたときに、ユーザによるダウンロード要求の操作が行われたと判定する。
In this process, when the
ステップS224において、ユーザからのコンテンツ購入指示がなかったと判定すると(ステップS224:NO)、制御部230は、他の端末装置2からコンテンツダウンロード要求があるか否かを判定する(ステップS226)。このコンテンツダウンロード要求は、第2配信形態でのコンテンツデータ全体の一括送信の要求であり、自端末装置2がコンテンツ保持端末装置或いはコンテンツダウンロード要求に係るコンテンツデータをキャッシュするキャッシュ装置であるときに、コンテンツダウンロード要求を受信したと判定される。
If it is determined in step S224 that there is no content purchase instruction from the user (step S224: NO), the
この処理において、制御部230は、他の端末装置2からコンテンツダウンロード要求があったと判定すると(ステップS226:YES)、コンテンツダウンロード要求に対応するコンテンツデータをハードディスク装置203から取り出し、コンテンツダウンロード要求を行った他の端末装置2へ取り出したコンテンツデータを送信する(ステップS227)。
In this process, when the
また、この処理において、制御部230は、他の端末装置2からコンテンツダウンロード要求がなかったと判定すると(ステップS226:NO)、購入コンテンツデータをダウンロードしたか否かを判定する(ステップS228)。購入コンテンツデータをダウンロードしたか否かは、ユーザによるダウンロード要求の操作、すなわちコンテンツ購入指示があったときに、ダウンロード要求したコンテンツ保持端末装置からコンテンツデータが受信されたか否かにより判断される。
In this process, when the
この処理において、購入コンテンツデータをダウンロードしたと判定すると(ステップS228:YES)。ダウンロードした購入コンテンツデータをハードディスク装置203に記憶し、保存する(ステップS229)。なお、コンテンツデータは、コンテンツ保持端末装置から所定の容量に分割されてコンテンツパケットとして送信され、制御部230は、コンテンツパケット毎に受信して、ハードディスク装置203に記憶することになる。
In this process, if it is determined that the purchase content data has been downloaded (step S228: YES). The downloaded purchased content data is stored in the
ステップS229の処理が終了すると、制御部230は、接続管理装置3に対して、ザッピング対策チャンネルに関する上流装置の接続先候補の紹介要求を送信する(ステップS230)。この処理は、後述するステップS284において脱退したザッピング対策チャンネルに再度参加させるための処理である。
When the process of step S229 ends, the
ステップS228において、購入コンテンツデータをダウンロードしていないと判定されると(ステップS228:NO)、制御部230は、コンテンツ検索メッセージを受信したか否かを判定する(ステップS231)。コンテンツ検索メッセージを受信したか否かは、端末装置2からネットワーク6を介して、リクエスト端末装置から送信されるコンテンツ検索メッセージが受信されたか否かによって判断される。
If it is determined in step S228 that purchased content data has not been downloaded (step S228: NO), the
この処理において、制御部230は、コンテンツ検索メッセージを受信したと判定すると(ステップS231:YES)、ステップS232においてコンテンツ検索処理を行う。このコンテンツ検索処理は、図32におけるS290〜S294の処理であり、後述にて詳説する。
In this process, when the
ステップS231において、コンテンツ検索メッセージを受信しなかったと判定されると(ステップS231:NO)、制御部230は、コンテンツ保持端末装置情報を受信したか否かを判定する(ステップS233)。このコンテンツ保持端末装置情報は、コンテンツ保持端末装置の所在情報を含む情報であり、コンテンツ保持端末装置情報を受信したと判定すると(ステップS233:YES)、制御部230は、取得したコンテンツ保持端末装置の所在情報に基づいて、コンテンツ保持端末装置に対してコンテンツデータ全体の一括送信を要求する(ステップS234)。
If it is determined in step S231 that a content search message has not been received (step S231: NO), the
ステップS233において、コンテンツ保持端末装置情報を受信しなかったと判定されると(ステップS233:NO)、制御部230は、第2配信形態への参加メッセージを受信したか否かを判定する(ステップS235)。
If it is determined in step S233 that the content holding terminal device information has not been received (step S233: NO), the
この処理において、制御部230は、第2配信形態への参加メッセージを受信したと判定すると(ステップS235:YES)、所持しているテーブル情報を参加メッセージの送信元の端末装置へ送信する(ステップS236)。すなわち、ルーティングテーブル223のテーブル情報のうち、参加メッセージの宛先識別情報と合致しないレベルのうち最もレベルの小さいレベルのテーブル情報をルーティングテーブル223から取り出し、参加メッセージを送信した端末装置2へ送信する。
In this process, when the
その後、制御部230は、端末装置2がルート端末装置であるか否かを判定する(ステップS237)。端末装置2がルート端末装置であるか否かは、受信した参加メッセージの宛先識別情報とルーティングテーブル223とに基づいて判断される。
Thereafter, the
この処理において、制御部230は、自端末装置2がルート端末装置でないと判定すると(ステップS237:NO)、ルーティングテーブル223に基づいて、参加メッセージを他の端末装置2へ転送する(ステップS238)。一方、自端末装置2がルート端末装置であると判定すると(ステップS237:YES)、制御部230は、ステップS238の処理は行わない。
In this process, when the
次に、S202における初期チャンネル設定処理について図26のフローチャートを参照して具体的に説明する。 Next, the initial channel setting process in S202 will be specifically described with reference to the flowchart of FIG.
図26に示すように、制御部230は、まず最終視聴チャンネル保存ファイルから視聴チャンネルを取得する(ステップS240)。この最終視聴チャンネル保存ファイルは、端末装置2の電源OFF時直前に視聴しているチャンネル(以下、「最終視聴チャンネル」と呼ぶ。)が制御部230によってハードディスク装置203に記憶され、保存されたものである。ハードディスク装置203には、最終視聴チャンネル保存ファイル記憶用領域が確保される。
As shown in FIG. 26, the
次に、制御部230は、最終視聴チャンネルを取得できたか否かを判定する(ステップS241)。最終視聴チャンネルを取得できたか否かは、ハードディスク装置203に最終視聴チャンネル保存ファイルが記憶されているか否かによって判断される。すなわち、最終視聴チャンネル保存ファイルが記憶されているときには、そのファイルから最終視聴チャンネルを取得するのである。
Next, the
この処理において、最終視聴チャンネルを取得できないと判定されると(ステップS241:NO)、制御部230は、最初に視聴するチャンネルをデフォルトチャンネル(ここでは、チャンネルch1とする。)に設定する。
In this process, when it is determined that the final viewing channel cannot be acquired (step S241: NO), the
一方、最終視聴チャンネルを取得できると判定されたとき(ステップS241:YES)、或いはステップS242において視聴チャンネルをチャンネルch1としたとき、制御部230は、最初に視聴するチャンネルを最終視聴チャンネル或いはチャンネルch1に決定し、接続管理装置3に対して、視聴チャンネルに関する上流装置の接続先候補を要求(ステップS243)し、ステップS244の処理に移行する。
On the other hand, when it is determined that the final viewing channel can be acquired (step S241: YES), or when the viewing channel is set to channel ch1 in step S242, the
ステップS244において、制御部230は、接続管理装置3に対して、視聴チャンネルのチャンネル番号よりも1だけ小さいチャンネルに関する上流装置の接続先候補を要求して、ステップS245の処理に移行する。
In step S244, the
ステップS245において、制御部230は、接続管理装置3に対して、視聴チャンネルのチャンネル番号よりも2だけ小さいチャンネルに関する上流装置の接続先候補を要求して、ステップS246の処理に移行する。
In step S245, the
ステップS246において、制御部230は、接続管理装置3に対して、視聴チャンネルのチャンネル番号よりも1だけ大きいチャンネルに関する上流装置の接続先候補を要求して、ステップS247の処理に移行する。
In step S246, the
ステップS247において、制御部230は、接続管理装置3に対して、視聴チャンネルのチャンネル番号よりも2だけ大きいチャンネルに関する上流装置の接続先候補を要求する。
In step S247, the
以上のように、初期チャンネル設定処理においては、最終視聴チャンネル或いはデフォルトチャンネルを視聴チャンネルとしてそのチャンネルの接続先候補を要求するとともに、視聴チャンネルのチャンネル番号よりも±2の範囲のチャンネルに関する接続先候補を要求するようにしている。この接続先候補の要求に対して接続管理装置3から通知される接続先候補は、前述したステップS205においてそれぞれ受信することになる。たとえば、全チャンネルがch1〜ch10である場合において、最終視聴チャンネルがch1であれば接続先候補を要求するチャンネルは、ch1のほか、ch2(ch1+1),ch3(ch1+2),ch9(ch1−1),ch10(ch1−2)となる。
As described above, in the initial channel setting process, the final viewing channel or the default channel is used as a viewing channel and a connection destination candidate for the channel is requested, and connection destination candidates for channels in the range of ± 2 from the channel number of the viewing channel. To request. Connection destination candidates notified from the
次に、S204における初期チャンネル処理について図27のフローチャート及び図28のフローチャートを参照して具体的に説明する。 Next, the initial channel processing in S204 will be specifically described with reference to the flowchart of FIG. 27 and the flowchart of FIG.
図27に示すように、まず制御部230は、「+」ボタンが押下されたか否かを判定する(ステップS250)。「+」ボタンが押下されたか否かは、例えば、内蔵ディスプレイ210に表示されたチャンネル選択画面が表示されている状態で、リモコン208等の操作によって、「+」ボタンが押下されたか否かによって判断される。図15には、端末装置2の内蔵ディスプレイ210に表示されるチャンネル選択画面の例を示しており、チャンネル選択ボタン22が「+」ボタンに、チャンネル選択ボタン23が「−」ボタンに対応する。なお、表示枠21にはストリーミング再生手段によって再生されるコンテンツが表示される。
As shown in FIG. 27, first, the
この処理において、制御部230は、「+」ボタンが押下されたと判定すると(ステップS250:YES)、ステップS251において「チャンネル変更処理(+)」を実行する。
In this process, when it is determined that the “+” button has been pressed (step S250: YES), the
この処理は、図28(a)に示すように、ステップS260〜S263の処理からなる。まず、制御部230は、現在の視聴チャンネルのチャネル番号よりも2だけ小さいザッピング対策チャンネルにおけるコンテンツ供給元端末である上流装置に対して、コンテンツストリームの停止を要求する(ステップS260)。すなわち、現在の視聴チャンネルのチャネル番号よりも2だけ小さいザッピング対策チャンネルに関し、自端末装置2と論理接続され、自端末装置2に対して第1配信形態でストリーミング配信を行っているコンテンツ配信装置1又は他の端末装置2に対して、コンテンツデータのストリーミング配信を停止するようにネットワーク6を介して要求する。
This process consists of the process of step S260-S263, as shown to Fig.28 (a). First, the
その後、制御部230は、現在の視聴チャンネルのチャネル番号よりも2だけ小さいザッピング対策チャンネルのトポロジーから脱退する(ステップS261)。すなわち、制御部230は、現在の視聴チャンネルのチャネル番号よりも2だけ小さいザッピング対策チャンネルに関する上流装置とのセッションの切断するとともに、同ザッピング対策チャンネルに関する下流装置がある場合には、下流装置とのセッションを切断することにより、同ザッピング対策チャンネルのトポロジーから脱退し、ステップS262の処理に移行する。
Thereafter, the
ステップS262において、制御部230は、接続管理装置3に対して、現在の視聴チャンネルのチャネル番号よりも3だけ大きいチャンネルをザッピング対策チャンネルとし、このザッピング対策チャンネルに関する上流装置の接続先候補を要求して、ステップS263の処理に移行する。
In step S262, the
ステップS263において、制御部230は、視聴チャンネルを現在の視聴チャンネルのチャネル番号に+1だけしたチャンネルに切り替える。例えば、現在の視聴チャンネルがチャンネルch5の場合、チャンネルch6を視聴チャンネルとする。
In step S263, the
一方、図27のステップS250の処理において、制御部230は、「+」ボタンが押下されなかったと判定すると(ステップS251:NO)、「−」ボタンが押下されたか否かを判定する(ステップS252)。
On the other hand, in the process of step S250 of FIG. 27, when determining that the “+” button has not been pressed (step S251: NO), the
この処理において、制御部230は、「−」ボタンが押下されたと判定すると(ステップS252:YES)、ステップS253において「チャンネル変更処理(−)」を実行する。
In this process, if the
この処理は、図28(b)に示すように、ステップS264〜S267の処理からなる。まず、制御部230は、現在の視聴チャンネルのチャネル番号よりも2だけ大きいザッピング対策チャンネルにおけるコンテンツ供給元端末である上流装置に対して、コンテンツストリームの停止を要求する(ステップS264)。すなわち、現在の視聴チャンネルのチャネル番号よりも2だけ大きいザッピング対策チャンネルに関し、自端末装置2と論理接続され、自端末装置2に対して第1配信形態でストリーミング配信を行っているコンテンツ配信装置1又は他の端末装置2に対して、コンテンツデータのストリーミング配信を停止するようにネットワーク6を介して要求する。
As shown in FIG. 28B, this process includes steps S264 to S267. First, the
その後、制御部230は、現在の視聴チャンネルのチャネル番号よりも2だけ大きいザッピング対策チャンネルのトポロジーから脱退する(ステップS265)。すなわち、制御部230は、現在の視聴チャンネルのチャネル番号よりも2だけ大きいザッピング対策チャンネルに関する上流装置とのセッションの切断するとともに、同ザッピング対策チャンネルに関する下流装置がある場合には、下流装置とのセッションを切断することにより、同ザッピング対策チャンネルのトポロジーから脱退し、ステップS266の処理に移行する。
Thereafter, the
ステップS266において、制御部230は、接続管理装置3に対して、現在の視聴チャンネルのチャネル番号よりも3だけ小さいチャンネルをザッピング対策チャンネルとし、このザッピング対策チャンネルに関する上流装置の接続先候補を要求して、ステップS267の処理に移行する。
In step S266, the
ステップS268において、制御部230は、視聴チャンネルを現在の視聴チャンネルのチャネル番号に−1だけしたチャンネルに切り替える。例えば、現在の視聴チャンネルがチャンネルch5の場合、チャンネルch4を視聴チャンネルとする。
In step S268, the
図28(a)に示すステップS251の「チャンネル変更処理(+)」の処理が終了したとき、或いは図28(b)に示すステップS253の「チャンネル変更処理(−)」の処理が終了したとき、図27に示すステップS254の処理に移行する。 When the “channel change process (+)” process in step S251 shown in FIG. 28A is completed, or the “channel change process (−)” process in step S253 shown in FIG. Then, the process proceeds to step S254 shown in FIG.
この処理において、最終視聴チャンネル保存ファイルに視聴チャンネルの番号を書く。すなわち、ハードディスク装置203に記憶される最終視聴チャンネル保存ファイルの視聴チャンネル番号を、ステップS263又はステップS267で切替えた視聴チャンネルのチャンネル番号に上書きする。
In this process, the viewing channel number is written in the final viewing channel storage file. That is, the viewing channel number of the last viewing channel storage file stored in the
以上のように、チャンネル変更処理では、ユーザによる視聴チャンネルの切替え操作が行なわれると、視聴チャンネルの切替えを行なうとともに、ザッピング対策チャンネルの切替え処理を行なうようにしている。 As described above, in the channel change process, when the viewing channel switching operation is performed by the user, the viewing channel is switched and the zapping countermeasure channel switching process is performed.
なお、本実施形態においては、視聴チャンネルのチャンネル番号の±2の範囲内のチャンネルをザッピング対策チャンネルとしたが、視聴チャンネルの番号ごとに、ザッピング対策チャンネルを設定するようにしてもよい。例えば、チャンネル毎に視聴頻度を検出しておき、視聴頻度の低いチャンネルが視聴チャンネルの場合には、ザッピング対策チャンネルの数を増やし、視聴頻度の高いチャンネルが視聴チャンネルの場合には、ザッピング対策チャンネルの数を減らすことにより、効率よくザッピング対策チャンネルを設定することができる。 In the present embodiment, the channel within the range of ± 2 of the channel number of the viewing channel is set as the zapping countermeasure channel, but a zapping countermeasure channel may be set for each viewing channel number. For example, if the viewing frequency is detected for each channel and the channel with low viewing frequency is the viewing channel, the number of channels for preventing zapping is increased, and if the channel with high viewing frequency is the viewing channel, the channel for preventing zapping By reducing the number of channels, it is possible to efficiently set the zapping countermeasure channel.
次に、S223における投入コンテンツ受信処理について図29を参照して具体的に説明する。 Next, the input content reception process in S223 will be specifically described with reference to FIG.
まず、端末装置2の制御部230は、ステップS222において受信した投入コンテンツデータをハードディスク装置203のコンテンツデータ記憶領域に記憶し、保存する(ステップS275)。
First, the
その後、制御部230は、自端末装置2がルート端末装置であるか否かを判定する(ステップS276)。端末装置2がルート端末装置であるか否かは、受信したコンテンツデータのコンテンツの名称を所定のハッシュ関数によって演算してコンテンツIDを有する端末装置が自端末装置であるか否かによって判断される。
Thereafter, the
この処理において、制御部230は、自端末装置2がルート端末装置でないと判定すると(ステップS276:NO)、ルーティングテーブル223に基づいて、ネットワーク6を介してコンテンツ登録メッセージを他の端末装置2へ送信する(ステップS278)。一方、自端末装置2がルート端末装置であると判定すると(ステップS276:YES)、制御部230は、インデックステーブル222にコンテンツIDと自端末装置の所在情報を追加して登録する(ステップS277)。
In this process, when the
以上のように、投入コンテンツ受信処理では、コンテンツ投入装置4から投入されたコンテンツデータをハードディスク装置203に記憶して保存するとともに、ルート端末装置のインデックステーブルに登録するようにしている。
As described above, in the input content reception process, the content data input from the
次に、S225におけるコンテンツ購入処理について図30を参照して具体的に説明する。 Next, the content purchase processing in S225 will be specifically described with reference to FIG.
まず、端末装置2の制御部230は、識別情報リストから購入するコンテンツIDを取得する(ステップS280)。すなわち、ステップS224においてユーザからのコンテンツ購入指示があったと判定したコンテンツデータに関するコンテンツIDをコンテンツ投入装置4から取得した識別情報リストから取得する。
First, the
次に、制御部230は、リングバッファ領域220内に購入コンテンツデータの完全版が存在するか否かを判定する(ステップS281)。購入コンテンツデータの完全版が存在するか否かは、ステップS225においてユーザからのコンテンツ購入指示があったと判定したコンテンツデータ全体がリングバッファ領域220に蓄積されているか否かによる判定する。なお、放送形態で視聴途中のコンテンツデータはリングバッファ領域220にその全体が蓄積されておらず、ステップS281の判定がYESとなるのは、放送形態ですでに視聴終了したコンテンツデータであって、リングバッファ領域220に蓄積されているものに限られることになる。
Next, the
この処理において、リングバッファ領域220内に購入コンテンツデータの完全版が存在すると判定されると(ステップS281:YES)、制御部230は、この購入コンテンツデータをハードディスク装置203のコンテンツデータ記憶領域に記憶する(ステップS282)。リングバッファ領域220に記憶されたコンテンツデータは、ストリーミング再生用のコンテンツデータであるため、このステップS282の処理においては、リングバッファ領域220に記憶されたコンテンツデータを購入コンテンツ形式(ダウンロード形式)に変換した後、ハードディスク装置203のコンテンツデータ記憶領域に記憶することになる。また、リングバッファ領域220内に購入コンテンツデータの完全版が存在すると判定されると(ステップS281:YES)、制御部230は、ザッピング対策チャンネルのコンテンツ供給元端末である上流装置に対してコンテンツストリームの停止を要求せず、ザッピング対策チャンネルのトポロジーからの脱退も行わない。すなわち、制御部230は、ザッピング対策チャンネルに関する上流装置とのセッションを切断しない。
In this process, if it is determined that the complete version of the purchased content data exists in the ring buffer area 220 (step S281: YES), the
一方、ステップS281において、リングバッファ領域220内に購入コンテンツデータの完全版が存在しないと判定されると(ステップS281:NO)、制御部230は、全てのザッピング対策チャンネルのコンテンツ供給元端末である上流装置に対してコンテンツストリームの停止を要求する(ステップS283)。すなわち、全てのザッピング対策チャンネルに関し、自端末装置2と論理接続され、自端末装置2に対して第1配信形態でストリーミング配信を行っているコンテンツ配信装置1又は他の端末装置2に対して、コンテンツデータのストリーミング配信を停止するようにネットワーク6を介して要求する。
On the other hand, if it is determined in step S281 that the complete version of the purchased content data does not exist in the ring buffer area 220 (step S281: NO), the
その後、制御部230は、全てのザッピング対策チャンネルのトポロジーから脱退する(ステップS284)。すなわち、制御部230は、全てのザッピング対策チャンネルに関する上流装置とのセッションの切断するとともに、同ザッピング対策チャンネルに関する下流装置がある場合には、下流装置とのセッションを切断することにより、同ザッピング対策チャンネルのトポロジーから脱退し、ステップS285の処理に移行する。
Thereafter, the
ステップS285の処理は、第2配信形態への参加処理であり、このステップS285の処理は、図31におけるS270〜S274の処理であり、後述で詳説する。 The process of step S285 is a process of participating in the second distribution form, and the process of step S285 is the process of S270 to S274 in FIG. 31, and will be described in detail later.
ステップS285における第2配信形態への参加処理が終了すると、制御部230は、制御部230は、インデックステーブル222にコンテンツIDが存在するか否かを判定する(ステップS286)。
When the participation process to the second distribution form in step S285 ends, the
この処理において、インデックステーブル222にコンテンツIDが存在すると判定されると(ステップS286:YES)、制御部230は、インデックステーブル222からコンテンツ保持端末装置の所在情報を取得し(ステップS287)、ステップS288の処理に移行する。
In this process, if it is determined that the content ID exists in the index table 222 (step S286: YES), the
ステップS288において、制御部230は、インデックステーブル222から取得したコンテンツ保持端末装置の所在情報宛に、コンテンツ送信要求を送信する。すなわち、制御部230は、コンテンツ保持端末装置に対してダウンロード送信要求を行う。
In step S288, the
インデックステーブル222にコンテンツIDが存在しないと判定されると(ステップS286:NO)、制御部230は、ネットワーク6を介して次の端末装置へメッセージを転送する(ステップS289)。すなわち、制御部230は、ルーティングテーブル223に基づいて、ネットワーク6を介してコンテンツ検索メッセージを他の端末装置2へ転送する。
If it is determined that the content ID does not exist in the index table 222 (step S286: NO), the
ここで、S285における第2配信形態への参加処理について図31を参照して具体的に説明する。 Here, the participation process in the second distribution form in S285 will be specifically described with reference to FIG.
まず、端末装置2の制御部230は、コンタクト先紹介装置5へネットワーク6を介して、コンタクト先情報を要求する(ステップS270)。このコンタクト先情報の要求に対して、コンタクト先紹介装置5からネットワーク6を介して送信されてくるコンタクト先情報をネットワークインタフェース204を介して受信する(ステップS271)。
First, the
受信したコンタクト先情報には、コンタクト先の端末装置の所在情報が含まれており、制御部230は、受信したコンタクト先情報に含まれるコンタクト先の端末装置に対して参加メッセージをネットワーク6を介して送信する(ステップS272)。この参加メッセージは、自端末装置の識別情報を宛先識別情報としている。
The received contact destination information includes the location information of the contact destination terminal device, and the
このように送信した参加メッセージは、コンタクト先の端末装置2から順次転送され、転送できない位置の端末装置2まで辿り着く。そして、参加メッセージを受信した複数の端末装置から各レベル毎のテーブル情報を受信する(ステップS273)。
The participation message transmitted in this way is sequentially transferred from the
次に、制御部230は、このように受信した複数のテーブル情報に基づいて、ルーティングテーブルを生成する(ステップS274)。
Next, the
このように端末装置2は、購入要求要求があると、第2配信形態へ参加するようにしており、これにより複数の端末装置2間で第2配信形態によってコンテンツを送受信することが可能となっている。
As described above, when a purchase request is requested, the
以上のように、コンテンツ購入処理では、ユーザによるコンテンツの購入操作が行なわれると、全てのザッピング対策チャンネルのツリー状階層構造から脱退し、その後、第2配信形態でコンテンツデータを取得するようにしている。従って、第2配信形態でコンテンツデータを取得するときには、ザッピング対策チャンネルのツリー状階層構造から脱退するため、第2配信形態でのコンテンツデータの取得の際にザッピング対策チャンネルによる影響が無い。 As described above, in the content purchase processing, when a content purchase operation is performed by the user, the tree-like hierarchical structure of all the zapping countermeasure channels is withdrawn, and then the content data is acquired in the second distribution form. Yes. Therefore, when content data is acquired in the second distribution form, the tree-like hierarchical structure of the zapping countermeasure channel is withdrawn, and therefore there is no influence of the zapping countermeasure channel when acquiring content data in the second distribution form.
なお、全てのザッピング対策チャンネルのツリー状階層構造から脱退するのではなく、第2配信形態でコンテンツデータの取得に大きな影響を与えないような場合には、一部のみのザッピング対策チャンネルのツリー状階層構造から脱退するようにしてもよい。 In the case where the second distribution form does not significantly affect the acquisition of content data instead of leaving the tree-like hierarchical structure of all the zapping countermeasure channels, only a part of the zapping countermeasure channels is in a tree form. You may make it leave the hierarchical structure.
一部のみのザッピング対策チャンネルのツリー状階層構造から脱退する場合、制御部230は、視聴チャンネルの番号ごとに脱退するザッピング対策チャンネルを設定するようにしてもよい。
When withdrawing from a tree-like hierarchical structure of only a part of the zapping countermeasure channels, the
例えば、制御部230は、チャンネル毎に視聴頻度を検出しておき、視聴頻度の低いチャンネルが視聴チャンネルの場合には、脱退するザッピング対策チャンネルの数を少なくし、視聴頻度の高いチャンネルが視聴チャンネルの場合には、脱退するザッピング対策チャンネルの数を増やすようにすることもできる。
For example, the
また、制御部230は、第2配信形態でのコンテンツデータの取得状況に応じて、脱退するザッピング対策チャンネルを設定するようにしてもよい。この場合、制御部230は、第2配信形態でのコンテンツデータの取得前に、一部のザッピング対策チャンネルから脱退し、その後、第2配信形態でのコンテンツデータの取得状況(例えば、第2配信形態でのコンテンツデータの受信速度など)に応じて、脱退するザッピング対策チャンネルを増減させる。例えば、第2配信形態でのコンテンツデータの受信速度が所定速度範囲内となるように、脱退するザッピング対策チャンネルを増減させるのである。
Further, the
次に、S232におけるコンテンツ検索処理について図32を参照して具体的に説明する。 Next, the content search processing in S232 will be specifically described with reference to FIG.
まず、端末装置2の制御部230は、ステップS231において受信したコンテンツ検索メッセージからコンテンツIDを取得する(ステップS290)。
First, the
次に、制御部230は、コンテンツ検索メッセージから取得したコンテンツIDがインデックステーブル222に存在するか否かを判定する(ステップS291)。
Next, the
この処理において、制御部230は、コンテンツ検索メッセージから取得したコンテンツIDがインデックステーブル222に存在すると判定すると(ステップS291:YES)、インデックステーブル222からコンテンツ保持端末装置の所在情報を取得し(ステップS292)、ステップS293の処理に移行する。
In this process, when the
ステップS293において、制御部230は、インデックステーブル222から取得したコンテンツ保持端末装置の所在情報をネットワーク6を介してリクエスト端末装置へ送信する。
In step S293, the
一方、ステップS291において、コンテンツ検索メッセージから取得したコンテンツIDがインデックステーブル222に存在しないと判定されると(ステップS291:NO)、制御部230は、ネットワーク6を介して次の端末装置へメッセージを転送する(ステップS294)。すなわち、制御部230は、ルーティングテーブル223に基づいて、コンテンツ検索メッセージをネットワーク6を介して他の端末装置2へ転送する。
On the other hand, when it is determined in step S291 that the content ID acquired from the content search message does not exist in the index table 222 (step S291: NO), the
このように端末装置2のユーザは、コンテンツ配信装置から放送形態でストリーミング配信されるコンテンツを視聴中にチャンネルを切替えた場合であっても、切替え先チャンネルのコンテンツをザッピング対策用に受信しているため、切替え先のコンテンツデータをすぐに視聴することができる。しかも、第2配信形態であるP2Pグリッド型配信形態でコンテンツをダウンロードするときには、ザッピング対策チャンネルから脱退するようにしているため、第2配信形態によるコンテンツのダウロードのために通信帯域を確保することができる。
As described above, even when the user of the
また、本実施形態における端末装置2は、放送形態で配信されるコンテンツデータをリングバッファ領域に一時的にキャッシュしておき、購入するコンテンツデータがこのリングバッファ領域に蓄積されているときには、リングバッファ領域に蓄積されたコンテンツデータを購入することができる。
Further, the
従って、新たにP2Pグリッド型配信形態でコンテンツデータを取得するのに比べコンテンツデータの購入処理を短縮することができる。リングバッファ領域の容量を大きくすることによって、放送形態で配信されたコンテンツデータを多数キャッシュすることができるので、コンテンツデータを視聴した後にダウンロードすることが多いようなユーザに対してダウンロード時間の短縮効果が大きい。 Accordingly, it is possible to shorten the content data purchase process compared to newly acquiring content data in the P2P grid type distribution form. By increasing the capacity of the ring buffer area, it is possible to cache a large amount of content data distributed in broadcast form, so that the download time can be shortened for users who often download the content data after viewing it. Is big.
(接続管理装置3の処理フローの説明)
次に、接続管理装置3の更に具体的な動作について、図33を参照して説明する。図33は接続管理装置3における処理全体を示すフローチャートである。なお、以下の各処理は、接続管理装置3の制御部330が上述した各手段として機能することによって実行されるものである。
(Description of processing flow of connection management device 3)
Next, a more specific operation of the
接続管理装置3の電源がONになると、接続管理装置3のCPU302は、主記憶装置305やハードディスク装置303のアクセス許可、作業領域確保を初期化等の初期設定動作を実行し、各プログラム317〜320をCPU302による実行状態とし、制御部330としての機能を動作させた後(ステップS300)、ステップS301に処理を移す。
When the power of the
ステップS301において、制御部330は、端末装置2からの参加要求があるか否かを判定する。この処理において、制御部330は、端末装置2からの第1配信形態への参加要求がネットワーク6を介して受信されたか否かを判定することになる。また、端末装置2からの参加要求には、第1配信形態のうち端末装置2が参加したいチャンネル情報が含まれている。
In step S <b> 301, the
この処理において、制御部330は、端末装置2から第1配信形態への参加要求を受信したと判定すると(ステップS301:YES)、受信した参加要求に含まれる端末装置2の所在情報をハードディスク装置の端末管理データベース314へ登録する(ステップS302)。
In this process, when the
一方、ステップS301において、端末装置2から第1配信形態への参加要求を受信しなかったと判定すると(ステップS301:NO)、制御部330は、コンテンツ配信装置1からの登録要求を受信したか否かを判定する(ステップS310)。
On the other hand, if it is determined in step S301 that a request for participation in the first distribution form has not been received from the terminal device 2 (step S301: NO), the
ステップS310において、コンテンツ配信装置1からの登録要求を受信したと判定すると(ステップS310:YES)、制御部330は、受信した登録要求に含まれるコンテンツ配信装置1の所在情報を端末管理データベース314へ登録する(ステップS311)。
If it is determined in step S310 that the registration request from the
次に、制御部330は、新しいチャンネルの情報をトポロジーデータベース315に登録する。すなわち、トポロジーデータベース315に新しいチャンネルのトポロジーテーブルを生成するのである(ステップS312)。
Next, the
ステップS310において、コンテンツ配信装置1からの登録要求を受信していないと判定すると(ステップS310:NO)、制御部330は、端末装置2から接続先紹介要求をネットワーク6を介して受信したか否かを判定する(ステップS320)。
If it is determined in step S310 that the registration request from the
ステップS320において、端末装置2から接続先紹介要求をネットワーク6を介して受信したと判定すると(ステップS320:YES)、制御部330は、トポロジーデータベース315から接続先紹介要求にかかるチャンネルに対する接続先候補となる端末装置2またはコンテンツ配信装置1を選択する(ステップS321)。
If it is determined in step S320 that the connection destination introduction request has been received from the
接続管理装置3の制御部330は、このように選択した接続先候補を、接続先紹介要求を行った端末装置2へネットワーク6を介して返信して通知する(ステップS322)。
The
ステップS320において、端末装置2から接続先紹介要求を受信していないと判定すると(ステップS320:NO)、制御部330は、端末装置2からトポロジー参加報告があったか否かを判定する(ステップS330)。端末装置2からトポロジー参加報告があったか否かは、端末装置2からネットワーク6を介してトポロジー参加報告を受信したか否かにより判定する。
If it is determined in step S320 that the connection destination introduction request has not been received from the terminal device 2 (step S320: NO), the
ステップS330において、端末装置2からトポロジー参加報告があったと判定すると(ステップS330:YES)、制御部330は、このトポロジー参加報告に含まれる端末装置2の所在情報を取り出し、トポロジーデータベース315の更新処理を行う(ステップS331)。すなわち、制御部330は、トポロジーの変動をトポロジーデータベース315へ登録する。
If it is determined in step S330 that there is a topology participation report from the terminal device 2 (step S330: YES), the
ステップS302,S312,S322,S331の処理が終了したとき、或いはステップS330において端末装置2からトポロジー参加報告がないと判定したとき(ステップS330:NO)、制御部330は、接続管理装置3のサービス終了の操作が行われたか否かを判定する(ステップS340)。サービスの終了操作が行われていないと判定すると(S340:NO)、ステップS301からの処理を繰り返し、接続管理装置3のサービス終了の操作が行われたと判定すると(S340:YES)、処理を終了する。
When the processing of steps S302, S312, S322, and S331 is completed, or when it is determined in step S330 that there is no topology participation report from the terminal device 2 (step S330: NO), the
(コンテンツ投入装置4の処理フローの説明)
次に、コンテンツ投入装置4の更に具体的な動作について、図34を参照して説明する。図34はコンテンツ投入装置4における処理全体を示すフローチャートである。なお、以下の各処理は、コンテンツ投入装置4の制御部430が上述した手段等として機能することによって実行されるものである。
(Description of processing flow of content input device 4)
Next, a more specific operation of the
コンテンツ投入装置4の電源がONになると、コンテンツ投入装置4のCPU402は、主記憶装置405やハードディスク装置403のアクセス許可、作業領域確保を初期化等の初期設定動作を実行し、各プログラム417〜419をCPU402による実行状態とし、制御部430としての機能を動作させた後(ステップS400)、ステップS401に処理を移す。
When the power of the
ステップS401において、制御部430は、コンテンツ投入指示があるか否かを判定する(ステップS401)。ここで、コンテンツ投入指示があるか否かは、制御部430は、キーボード407やマウス408等の入力手段からのコンテンツ投入の操作がなされたか否か、或いは後述するステップS410においてコンテンツ配信装置1からコンテンツデータの送信要求があったか否かにより判断される。このコンテンツ投入指示は、コンテンツの名称によってコンテンツデータを特定して行われるものである。
In step S401, the
この処理において、コンテンツ投入指示があると判定されると(ステップS401:YES)、制御部430は、コンテンツ投入指示によって特定されたコンテンツデータに対応するコンテンツIDをハードディスク装置403に記憶した管理テーブルに記憶した後(ステップS402)、ステップS403に処理を移す。この管理テーブルは、ハードディスク装置403に記憶している複数のコンテンツデータとコンテンツIDとが関連付けて記憶され、更に、ハードディスク装置403に記憶しているコンテンツデータそれぞれについて、コンテンツ配信装置1やコンテンツ保持端末装置へ投入したものであるか否かのフラグが各コンテンツに関連付けて記憶されるものである。なお、フラグには、未投入フラグ(フラグの値が「0」)と投入済フラグ(フラグの値が「1」)とがある。
In this process, when it is determined that there is a content input instruction (step S401: YES), the
ステップS403において、制御部430は、識別情報リストを更新し、ステップS404に処理を移す。この識別情報リストの更新は、コンテンツ投入指示によって特定されたコンテンツデータに対応するコンテンツID及びコンテンツの名称とを、ハードディスク装置403に記憶した識別情報リストに追加記憶することによって行う。
In step S403, the
ステップS404において、制御部430は、コンテンツ投入指示によって特定されたコンテンツデータを第2配信形態によって配信可能とするために、コンテンツ投入指示によって特定されたコンテンツデータのコンテンツ保持端末装置となる端末装置2をランダムに1以上決定する。このように決定した端末装置2に対して、制御部430は、コンテンツ投入指示によって特定されたコンテンツデータをネットワーク6を介して送信する。
In step S404, the
一方、ステップS401において、コンテンツ投入指示がないと判定されると(ステップS401:NO)、制御部430は、コンテンツ配信装置1からコンテンツデータの送信要求があったか否かを判定する。コンテンツデータの送信要求には、コンテンツの名称などによってコンテンツデータを特定して行われるものである。
On the other hand, when it is determined in step S401 that there is no content input instruction (step S401: NO), the
この処理において、コンテンツ配信装置1からコンテンツデータの送信要求があったと判定されると(ステップS410:YES)、制御部430は、コンテンツデータの送信要求に対応するコンテンツデータをハードディスク装置403から取り出し、ネットワーク6を介してコンテンツ配信装置1へ送信する(ステップS411)。
In this process, when it is determined that there is a content data transmission request from the content distribution device 1 (step S410: YES), the
また、ステップS410において、コンテンツ配信装置1からコンテンツデータの送信要求がないと判定されると(ステップS410:NO)、制御部430は、端末装置2から識別情報リストの送信要求があったか否かを判定する(ステップS420)。
If it is determined in step S410 that there is no content data transmission request from the content distribution device 1 (step S410: NO), the
この処理において、端末装置2から識別情報リストの送信要求があったと判定すると(ステップS420:YES)、制御部430は、ハードディスク装置403に記憶している識別情報リストを取り出す。制御部430は、この識別情報リストを、ネットワーク6を介して識別情報リストの送信要求を行った端末装置へ送信する(ステップS421)。
In this process, if it is determined that there is a request for transmission of the identification information list from the terminal device 2 (step S420: YES), the
ステップS404,S411,S421の処理が終了したとき、或いはステップS420において端末装置2からトポロジー参加報告がないと判定したとき(ステップS420:NO)、制御部430は、コンテンツ投入装置4のサービス終了の操作が行われたか否かを判定する(ステップS430)。サービスの終了操作が行われていないと判定すると(S430:NO)、ステップS401からの処理を繰り返し、コンテンツ投入装置4のサービス終了の操作が行われたと判定すると(S430:YES)、処理を終了する。
When the processing of steps S404, S411, and S421 is completed, or when it is determined in step S420 that there is no topology participation report from the terminal device 2 (step S420: NO), the
以上のように、コンテンツ投入装置4は、第1配信形態におけるコンテンツ配信装置1と第2配信形態における端末装置2とに対してコンテンツデータを送信して投入するようにしており、コンテンツ投入装置4によってコンテンツ配信システムSにおける第1配信形態と第2配信形態へ投入するコンテンツデータを管理することができる。また、識別情報リストを生成及び更新し、端末装置2からの要求に応じて送信するようにしており、これにより端末装置2は、第1配信形態で配信されるコンテンツデータを、第2配信形態での取得を容易にしている。
As described above, the
また、コンテンツ投入装置4は、コンテンツ配信装置1によってストリーミング配信するコンテンツデータ以外のコンテンツデータの識別情報を含む識別情報リストを記憶することができるので、放送形態で直接配信されるコンテンツデータ以外のコンテンツデータをP2Pグリッド型配信形態で取得することができる。例えば、コンテンツデータが音楽コンテンツの場合には、過去に視聴した音楽コンテンツをP2Pグリッド型配信形態で取得することが可能となる。
Further, since the
(コンタクト先紹介装置5の処理フローの説明)
次に、コンタクト先紹介装置5の更に具体的な動作について、図35を参照して説明する。図35はコンタクト先紹介装置5における処理全体を示すフローチャートである。なお、以下の各処理は、コンタクト先紹介装置5の制御部530が上述した手段等として機能することによって実行されるものである。
(Description of the processing flow of the contact introduction device 5)
Next, a more specific operation of the contact
コンタクト先紹介装置5の電源がONになると、コンタクト先紹介装置5のCPU502は、主記憶装置505やハードディスク装置503のアクセス許可、作業領域確保を初期化等の初期設定動作を実行し、各プログラム517〜519をCPU502による実行状態とし、制御部530としての機能を動作させた後(ステップS500)、ステップS501に処理を移す。
When the power of the
ステップS501において、制御部430は、コンタクト先紹介要求があるか否かを判定する(ステップS501)。ここで、コンタクト先紹介要求があるか否かは、制御部530が端末装置から送信されるコンタクト先紹介要求をネットワーク6を介して受信したか否かによって判断される。
In step S501, the
この処理において、コンタクト先紹介要求があると判定されると(ステップS501:YES)、制御部530は、コンタクト先紹介要求を行った端末装置に対して、第2配信形態におけるコンタクト先候補を返信する(ステップS502)。
In this process, when it is determined that there is a contact destination introduction request (step S501: YES), the
ステップS502の処理が終了したとき、或いはステップS501においてコンタクト先紹介要求がないと判定したとき(ステップS501:NO)、制御部530は、コンタクト先紹介装置5のサービス終了の操作が行われたか否かを判定する(ステップS503)。サービスの終了操作が行われていないと判定すると(S503:NO)、ステップS501からの処理を繰り返し、コンタクト先紹介装置5のサービス終了の操作が行われたと判定すると(S503:YES)、処理を終了する。
When the process of step S502 is completed or when it is determined in step S501 that there is no contact destination introduction request (step S501: NO), the
[8.変形例1]
上記実施形態においては、識別情報リストの端末装置2への送信をコンテンツ投入装置4から行うようにしたが、本変形例1では、以下に述べる構成を上記実施形態に付加することによってコンテンツ配信装置1から送信する。なお、コンテンツ投入装置4は、識別情報リストを生成及び更新せず、又端末装置2はコンテンツ投入装置4に対して識別リストの送信要求を行わない。
[8. Modification 1]
In the embodiment described above, the identification information list is transmitted from the
コンテンツ配信装置1の制御部130は、コンテンツデータの識別情報を第1配信形態を用いて送信する。コンテンツデータの識別情報の送信は、そのコンテンツデータに含ませて送信するようにしてもよく、又コンテンツデータとは別に送信するようにしてもよい。この処理は、コンテンツ管理プログラム121をCPU102が主記憶装置105から読み出して実行されることにより、識別情報送信手段として機能するものである。すなわち、識別情報送信手段は、配信手段によってストリーミング配信するコンテンツデータの識別情報を送信するのである。
The
また、端末装置2は、コンテンツ配信装置1から送信されるコンテンツデータの識別情報を用いて、ダウンロード要求されたコンテンツデータの識別情報を取得する。この処理は、コンテンツ購入プログラム221を主記憶装置205からCPU202が読み出して実行することにより、識別情報受信手段として機能するものである。すなわち、識別情報受信手段は、コンテンツ配信装置1から送信されるコンテンツデータの識別情報を受信するのである。そして、識別情報取得手段は、識別情報受信手段によって受信したコンテンツデータの識別情報からダウンロード要求されたコンテンツデータの識別情報を取得する。
Further, the
このように、P2Pグリッド型配信形態においてコンテンツデータをダウンロードするために必要なコンテンツデータの識別情報がコンテンツ配信装置1から端末装置2へ送信される。従って、端末装置2では、ダウンロードするコンテンツデータの識別情報をコンテンツ投入装置4などに要求して取得する必要がないため、コンテンツ投入装置における処理を軽減することができる。また、コンテンツデータの識別情報をストリーミング配信するコンテンツパケットのヘッダに含ませてコンテンツ配信装置から送信するようにすることもできる。
In this way, content data identification information necessary for downloading content data in the P2P grid distribution mode is transmitted from the
[9.変形例2]
上記実施形態においては、ルート端末装置がリクエスト端末装置に対してコンテンツデータの所在情報を送信し、リクエスト端末装置がコンテンツ保持端末装置から、そのコンテンツデータをダウンロードして取得するものであったが、ルート端末装置がコンテンツ保持端末装置に対して、リクエスト端末装置へのコンテンツデータの送信を要求するようにしてもよい。
[9. Modification 2]
In the above embodiment, the root terminal device transmits the location information of the content data to the request terminal device, and the request terminal device downloads and acquires the content data from the content holding terminal device. The root terminal device may request the content holding terminal device to transmit content data to the requesting terminal device.
この場合、図36に示すように、ルート端末装置2Zは、リクエスト端末装置2Xから要求されたコンテンツデータを保持するコンテンツ保持端末装置2Yの所在情報をインデックステーブル222から取り出す。そして、当該コンテンツ保持端末装置2Yの所在情報に基づいて、リクエスト端末装置2Xの所在情報を含めたコンテンツデータの送信要求をコンテンツ保持端末装置2Yへ送信する。コンテンツ保持端末装置2Yは、コンテンツデータの送信要求を受信すると、このコンテンツデータの送信要求に含まれるリクエスト端末装置2Xの所在情報に対して、コンテンツデータの送信要求に対応するコンテンツデータを送信することになる。
In this case, as shown in FIG. 36, the root terminal device 2Z takes out the location information of the content holding terminal device 2Y that holds the content data requested from the requesting
すなわち、端末装置2の制御部230は、リクエスト端末装置2Xからコンテンツ検索メッセージをルート端末装置2Zとして受信したとき、コンテンツ保持端末装置情報返信手段の機能に代えて、コンテンツ保持端末装置情報選択手段によって選択されたコンテンツ保持端末装置2Yの所在情報を宛先として、リクエスト端末装置2Xの所在情報を含めたコンテンツデータの送信要求を送信するコンテンツデータ送信要求手段として機能する。
That is, when receiving the content search message from the
なお、リクエスト端末装置2Xは、ダウンロード先検索手段によって検索メッセージを送信し、ダウンロードデータ受信手段は、この検索メッセージに応じたコンテンツデータをコンテンツ保持端末装置2Yから受信する。
The
このようにルート端末装置がコンテンツ保持端末装置に対して、リクエスト端末装置へのコンテンツデータの送信を要求するように第2配信形態を構成することも可能である。 As described above, the second distribution form can be configured such that the root terminal device requests the content holding terminal device to transmit the content data to the request terminal device.
[10.その他の変形例]
上記実施形態においては、各端末装置2は、コンテンツ配信システムSに参加する場合、第1配信形態に参加すると同時に、第2配信形態にも参加するようにしたが、端末装置2のユーザからダウンロード要求があったときに、第2配信形態に参加するようにしてもよい。第1配信形態に参加すると同時に、第2配信形態にも参加するようにした場合、第2配信形態に参加する端末装置2の数を増加させることができ、第2配信形態におけるコンテンツ配信を安定させて動作することができるが、端末装置2のユーザからダウンロード要求があったときに、第2配信形態に参加するようにすれば、端末装置2や第2配信形態における負荷を低減することができる。
[10. Other variations]
In the above embodiment, when each
また、第1配信形態の放送形態としてツリー状階層構造を例にして説明したが、これに限られず、サーバ−クライアント型の放送形態でもよい。 Moreover, although the tree-like hierarchical structure has been described as an example of the broadcast form of the first distribution form, it is not limited to this, and a server-client type broadcast form may be used.
また、第2配信形態として、Pastry型のコンテンツ配信システムを例にして説明したが、これに限られず、メッセージの転送方法が異なるkademlia型、chord型、Viceroy型、CAN型などのコンテンツ配信システムにも本発明を適用可能である。 In addition, the past delivery type content delivery system has been described as an example of the second delivery form. However, the present invention is not limited to this, and the present invention is not limited to this. The present invention is also applicable.
S コンテンツ配信システム
1 コンテンツ配信装置
2 端末装置
3 接続管理装置
4 コンテンツ投入装置
5 コンタクト先紹介装置
6 ネットワーク
130,230,330,430,530 制御部
S
Claims (16)
前記コンテンツ配信装置は、
前記ネットワークを介して前記コンテンツデータをストリーミング配信する配信手段を備え、
前記接続管理装置は、
前記チャンネル毎に前記階層構造を構成する前記端末装置の接続状態情報を記憶する接続状態情報記憶手段と、
前記ネットワークを介して前記端末装置から接続先紹介要求を受信したとき、前記接続状態情報記憶手段に記憶された前記接続状態情報から接続先候補を選択する接続先候補選択手段と
前記接続先候補選択手段によって選択された前記接続先候補を、前記接続先紹介要求を送信した前記端末装置へ前記ネットワークを介して通知する通知手段と、を備え、
前記端末装置は、
前記チャンネルを選択するためのチャンネル選択手段と、
前記チャンネル選択手段によって選択されたチャンネルに関する前記接続先紹介要求と当該チャンネルと所定の関係を有するチャンネルに関する前記接続先紹介要求とを前記接続管理装置へ送信し、その後、前記接続管理装置から前記チャンネル毎に通知された前記接続先候補にそれぞれ接続して複数のチャンネルで前記第1配信形態に参加する接続手段と、
前記ネットワークを介して接続した前記接続先候補から前記コンテンツデータを前記チャンネル毎にストリーミング受信するストリーミング受信手段と、
前記ストリーミング受信手段により受信したコンテンツデータを前記チャンネル毎に一時的に蓄積するリングバッファ領域と、
前記リングバッファ領域に蓄積したコンテンツデータのうち前記チャンネル選択手段によって選択されたチャンネルのコンテンツデータをストリーミング再生するストリーミング再生手段と、
他の前記端末装置から前記コンテンツデータの中継依頼を受信すると、当該中継依頼を行った端末装置へ受信した前記コンテンツデータをストリーミング転送するストリーミング中継手段と、
前記第2配信形態によるコンテンツデータのダウンロード要求の操作を検出するダウンロード操作検出手段と、
前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、前記接続手段によって接続状態にあるチャンネルのうち、前記チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネルに関する前記接続先候補との接続を切断する切断手段と、
前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、当該ダウンロード要求されたコンテンツデータを第2配信形態で取得するために、当該コンテンツデータの識別情報を取得する識別情報取得手段と、
前記識別情報取得手段によって取得された前記コンテンツデータの識別情報に基づいて、前記ダウンロード要求されたコンテンツデータを前記第2配信形態の端末装置からダウンロードするダウンロード処理手段と、
前記ダウンロード処理手段によりダウンロードした前記コンテンツデータを記憶するコンテンツデータ記憶手段と、
前記ダウンロード処理手段での前記ダウンロード要求されたコンテンツデータのダウンロードが完了すると、前記切断手段によって切断したチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に再接続する再接続手段と、
を備えるコンテンツ配信システム。 The content distribution device is managed by a connection management device so that a plurality of terminal devices are logically connected in multiple layers in a hierarchical structure for each channel on the network, with the content distribution device streaming the content data through a plurality of channels, respectively. A first distribution form in which the content data transmitted from a device is sequentially stream-distributed from the upstream terminal device of the hierarchical structure to the downstream terminal device for each channel by the relay function of the terminal device; and the plurality of terminal devices A content delivery system having a second delivery form in which another terminal device that holds the content data delivers the content data based on a content data download request from one terminal device,
The content distribution device includes:
A delivery means for streaming delivery of the content data via the network;
The connection management device includes:
Connection state information storage means for storing connection state information of the terminal device constituting the hierarchical structure for each channel;
A connection destination candidate selection unit that selects a connection destination candidate from the connection state information stored in the connection state information storage unit when a connection destination introduction request is received from the terminal device via the network; and the connection destination candidate selection Notification means for notifying the connection destination candidate selected by the means to the terminal device that has transmitted the connection destination introduction request via the network;
The terminal device
Channel selection means for selecting the channel;
The connection destination introduction request for the channel selected by the channel selection means and the connection destination introduction request for a channel having a predetermined relationship with the channel are transmitted to the connection management device, and then the connection management device transmits the channel. A connection means for connecting to each of the connection destination candidates notified every time and participating in the first distribution form through a plurality of channels;
Streaming receiving means for streaming receiving the content data for each channel from the connection destination candidates connected via the network;
A ring buffer area for temporarily storing the content data received by the streaming receiving means for each channel;
Streaming reproduction means for streaming reproduction of the content data of the channel selected by the channel selection means among the content data stored in the ring buffer area;
When receiving a relay request for the content data from another terminal device, streaming relay means for streaming transfer the received content data to the terminal device that has made the relay request;
Download operation detection means for detecting an operation of a download request for content data according to the second distribution form;
When the download request operation is detected by the download operation detection means, the connection destination candidates relating to channels having a predetermined relationship with the channel selected by the channel selection means among the channels connected by the connection means Cutting means for cutting off the connection with
Identification information acquisition means for acquiring identification information of the content data in order to acquire the content data requested to be downloaded in the second distribution form when the download operation detection means detects the download request operation;
Download processing means for downloading the content data requested to be downloaded from the terminal device of the second distribution form based on the identification information of the content data acquired by the identification information acquisition means;
Content data storage means for storing the content data downloaded by the download processing means;
When the download of the content data requested for download by the download processing unit is completed, the connection destination introduction request for the channel disconnected by the disconnection unit is transmitted to the connection management device, and then notified from the connection management device. Reconnection means for reconnecting to the connection destination candidate;
A content distribution system comprising:
前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されているか否かを判定する判定手段と、
前記判定手段によって、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されていると判定すると、前記第2配信形態によって前記コンテンツデータのダウンロードを行わずに、前記リングバッファ領域に蓄積されているコンテンツデータを前記コンテンツデータ記憶手段に記憶するコンテンツデータ記憶制御手段と、を有し、
前記判定手段によって、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されていると判定すると、前記切断手段は、前記接続状態にあるチャンネルの前記接続先候補との接続を切断しない
ことを特徴とする請求項1に記載のコンテンツ配信システム。 The terminal device
Determining means for determining whether or not the entire content data requested to be downloaded is stored in the ring buffer area;
If it is determined by the determination means that the entire content data requested to be downloaded is stored in the ring buffer area, the content data is not downloaded according to the second distribution form, but is stored in the ring buffer area. Content data storage control means for storing the content data stored in the content data storage means,
If the determining means determines that the entire content data requested for download is stored in the ring buffer area, the disconnecting means does not disconnect the connection destination candidate of the channel in the connected state. The content distribution system according to claim 1.
前記ダウンロード要求されたコンテンツデータが前記コンテンツデータ記憶手段に記憶されているか否かを判定する判定手段を有し、
前記判定手段によって、前記ダウンロード要求されたコンテンツデータが前記コンテンツデータ記憶手段に記憶されていると判定すると、前記切断手段は、前記接続状態にあるチャンネルの前記接続先候補との接続を切断せず、かつ前記ダウンロード処理手段は、前記第2配信形態によって前記コンテンツデータのダウンロードを行わない
ことを特徴とする請求項1又は請求項2に記載のコンテンツ配信システム。 The terminal device
Determination means for determining whether or not the content data requested to be downloaded is stored in the content data storage means;
If the determination unit determines that the content data requested for download is stored in the content data storage unit, the disconnection unit does not disconnect the connection destination candidate of the channel in the connected state. The content distribution system according to claim 1, wherein the download processing unit does not download the content data according to the second distribution form.
前記コンテンツ配信装置によってストリーミング配信するコンテンツデータの識別情報を複数含む識別情報リストを記憶する識別情報リスト記憶手段と、
前記識別情報リスト記憶手段に記憶した前記識別情報リストを前記複数の端末装置に送信する識別情報リスト送信手段と、を有するコンテンツ投入装置を備え、
前記端末装置は、
前記コンテンツ投入装置から送信される識別情報リストを受信する識別情報リスト受信手段を有し、
前記識別情報取得手段は、
前記識別情報リスト受信手段により受信した当該識別情報リストから前記ダウンロード要求されたコンテンツデータの識別情報を取得する
ことを特徴とする請求項1から3のいずれか1項に記載のコンテンツ配信システム。 Content input means for transmitting content data distributed in the second distribution mode to some of the plurality of terminal devices;
Identification information list storage means for storing an identification information list including a plurality of identification information of content data to be streamed by the content distribution device;
An identification information list transmission means for transmitting the identification information list stored in the identification information list storage means to the plurality of terminal devices, and a content input device comprising:
The terminal device
An identification information list receiving means for receiving an identification information list transmitted from the content input device;
The identification information acquisition means includes
The content distribution system according to any one of claims 1 to 3, wherein identification information of the content data requested to be downloaded is acquired from the identification information list received by the identification information list receiving unit.
ことを特徴とする請求項4に記載のコンテンツ配信システム。 5. The content distribution system according to claim 4, wherein the identification information list storage unit stores an identification information list including identification information of content data other than content data to be streamed by the content distribution device.
前記配信手段によってストリーミング配信するコンテンツデータの識別情報を送信する識別情報送信手段を有し、
前記端末装置は、
前記コンテンツ配信装置から送信される前記コンテンツデータの識別情報を受信する識別情報受信手段を有し、
前記識別情報取得手段は、
前記識別情報受信手段によって受信した前記コンテンツデータの識別情報から、前記ダウンロード要求されたコンテンツデータの識別情報を取得する
ことを特徴とする請求項1から3のいずれか1項に記載のコンテンツ配信システム。 The content distribution device includes:
Identification information transmitting means for transmitting identification information of content data to be streamed by the distribution means;
The terminal device
Having identification information receiving means for receiving identification information of the content data transmitted from the content distribution device;
The identification information acquisition means includes
The content distribution system according to any one of claims 1 to 3, wherein the identification information of the content data requested to be downloaded is acquired from the identification information of the content data received by the identification information receiving means. .
前記チャンネルを選択するためのチャンネル選択手段と、
前記チャンネル選択手段によって選択されたチャンネルに関する前記接続先紹介要求と当該チャンネルと所定の関係を有するチャンネルに関する前記接続先紹介要求とを前記接続管理装置へ送信し、その後、前記接続管理装置から前記チャンネル毎に通知された前記接続先候補にそれぞれ接続して複数のチャンネルで前記第1配信形態に参加する接続手段と、
前記ネットワークを介して接続した前記接続先候補から前記コンテンツデータを前記チャンネル毎にストリーミング受信するストリーミング受信手段と、
前記ストリーミング受信手段により受信したコンテンツデータを前記チャンネル毎に一時的に蓄積するリングバッファ領域と、
前記リングバッファ領域に蓄積したコンテンツデータのうち前記チャンネル選択手段によって選択されたチャンネルのコンテンツデータをストリーミング再生するストリーミング再生手段と、
他の前記端末装置から前記コンテンツデータの中継依頼を受信すると、当該中継依頼を行った端末装置へ受信した前記コンテンツデータをストリーミング転送するストリーミング中継手段と、
前記第2配信形態によるコンテンツデータのダウンロード要求の操作を検出するダウンロード操作検出手段と、
前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、前記接続手段によって接続状態にあるチャンネルのうち、前記チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネルに関する前記接続先候補との接続を切断する切断手段と、
前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、当該ダウンロード要求されたコンテンツデータを第2配信形態で取得するために、当該コンテンツデータの識別情報を取得する識別情報取得手段と、
前記識別情報取得手段によって取得された前記コンテンツデータの識別情報に基づいて、前記ダウンロード要求されたコンテンツデータを前記第2配信形態の端末装置からダウンロードするダウンロード処理手段と、
前記ダウンロード処理手段によりダウンロードした前記コンテンツデータを記憶するコンテンツデータ記憶手段と、
前記ダウンロード処理手段での前記ダウンロード要求されたコンテンツデータのダウンロードが完了すると、前記切断手段によって切断したチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に再接続する再接続手段と、
を備える端末装置。 The content distribution device is managed by a connection management device so that a plurality of terminal devices are logically connected in multiple layers in a hierarchical structure for each channel on the network, with the content distribution device streaming the content data through a plurality of channels, respectively. A first distribution form in which the content data transmitted from a device is sequentially stream-distributed from the upstream terminal device of the hierarchical structure to the downstream terminal device for each channel by the relay function of the terminal device; and the plurality of terminal devices The terminal device in the content distribution system has a second distribution form in which another terminal device that holds the content data distributes the content data based on a content data download request from one terminal device. And
Channel selection means for selecting the channel;
The connection destination introduction request for the channel selected by the channel selection means and the connection destination introduction request for a channel having a predetermined relationship with the channel are transmitted to the connection management device, and then the connection management device transmits the channel. A connection means for connecting to each of the connection destination candidates notified every time and participating in the first distribution form through a plurality of channels;
Streaming receiving means for streaming receiving the content data for each channel from the connection destination candidates connected via the network;
A ring buffer area for temporarily storing the content data received by the streaming receiving means for each channel;
Streaming reproduction means for streaming reproduction of the content data of the channel selected by the channel selection means among the content data stored in the ring buffer area;
When receiving a relay request for the content data from another terminal device, streaming relay means for streaming transfer the received content data to the terminal device that has made the relay request;
Download operation detection means for detecting an operation of a download request for content data according to the second distribution form;
When the download request operation is detected by the download operation detection means, the connection destination candidates relating to channels having a predetermined relationship with the channel selected by the channel selection means among the channels connected by the connection means Cutting means for cutting off the connection with
Identification information acquisition means for acquiring identification information of the content data in order to acquire the content data requested to be downloaded in the second distribution form when the download operation detection means detects the download request operation;
Download processing means for downloading the content data requested to be downloaded from the terminal device of the second distribution form based on the identification information of the content data acquired by the identification information acquisition means;
Content data storage means for storing the content data downloaded by the download processing means;
When the download of the content data requested for download by the download processing unit is completed, the connection destination introduction request for the channel disconnected by the disconnection unit is transmitted to the connection management device, and then notified from the connection management device. Reconnection means for reconnecting to the connection destination candidate;
A terminal device comprising:
前記判定手段によって、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されていると判定すると、前記第2配信形態によって前記コンテンツデータのダウンロードを行わずに、前記リングバッファ領域に蓄積されているコンテンツデータを前記コンテンツデータ記憶手段に記憶するコンテンツデータ記憶制御手段と、を有し、
前記判定手段によって、前記ダウンロード要求されたコンテンツデータ全体が前記リングバッファ領域に蓄積されていると判定すると、前記切断手段は、前記接続状態にあるチャンネルの前記接続先候補との接続を切断しない
ことを特徴とする請求項7に記載の端末装置。 Determining means for determining whether or not the entire content data requested to be downloaded is stored in the ring buffer area;
If it is determined by the determination means that the entire content data requested to be downloaded is stored in the ring buffer area, the content data is not downloaded according to the second distribution form, but is stored in the ring buffer area. Content data storage control means for storing the content data stored in the content data storage means,
If the determining means determines that the entire content data requested for download is stored in the ring buffer area, the disconnecting means does not disconnect the connection destination candidate of the channel in the connected state. The terminal device according to claim 7.
前記判定手段によって、前記ダウンロード要求されたコンテンツデータが前記コンテンツデータ記憶手段に記憶されていると判定すると、前記切断手段は、前記接続状態にあるチャンネルの前記接続先候補との接続を切断せず、かつ前記ダウンロード処理手段は、前記第2配信形態によって前記コンテンツデータのダウンロードを行わない
ことを特徴とする請求項7又は請求項8に記載の端末装置。 Determination means for determining whether or not the content data requested to be downloaded is stored in the content data storage means;
If the determination unit determines that the content data requested for download is stored in the content data storage unit, the disconnection unit does not disconnect the connection destination candidate of the channel in the connected state. The terminal device according to claim 7 or 8, wherein the download processing unit does not download the content data according to the second distribution form.
前記識別情報取得手段は、
前記識別情報リスト受信手段により受信した当該識別情報リストから前記ダウンロード要求されたコンテンツデータの識別情報を取得する
ことを特徴とする請求項7から9のいずれか1項に記載の端末装置。 The plurality of identification information lists including a plurality of pieces of identification information of content data to be streamed and distributed by the content distribution device by transmitting content data to be distributed by the content distribution device to a part of the plurality of terminal devices. An identification information list receiving means for receiving the identification information list from the content input device to be transmitted to the terminal device,
The identification information acquisition means includes
10. The terminal device according to claim 7, wherein the identification information of the content data requested to be downloaded is acquired from the identification information list received by the identification information list receiving unit.
ことを特徴とする請求項10に記載の端末装置。 The terminal device according to claim 10, wherein the identification information list includes identification information of content data other than content data that is stream-distributed by the content distribution device.
前記識別情報取得手段は、
前記識別情報受信手段によって受信した前記コンテンツデータの識別情報から、前記ダウンロード要求されたコンテンツデータの識別情報を取得する
ことを特徴とする請求項7から9のいずれか1項に記載の端末装置。 Having identification information receiving means for receiving identification information of the content data transmitted from the content distribution device;
The identification information acquisition means includes
The terminal device according to any one of claims 7 to 9, wherein the identification information of the content data requested to be downloaded is acquired from the identification information of the content data received by the identification information receiving means.
前記チャンネル選択手段によって選択されたチャンネルと所定の関係を有するチャンネルが複数ある場合であって、前記ダウンロード操作検出手段によって前記ダウンロード要求の操作が検出されたとき、前記接続手段によって接続状態にあるチャンネルのうち、前記チャンネル選択手段によって選択されたチャンネルと所定の関係を有する全てのチャンネルに関する前記接続先候補との接続を切断する
ことを特徴とする請求項7〜12のいずれか1項に記載の端末装置。 The cutting means is
A channel that has a predetermined relationship with a channel selected by the channel selection means, and that is in a connected state by the connection means when the download request operation is detected by the download operation detection means The connection with the said connection destination candidate regarding all the channels which have a predetermined relationship with the channel selected by the said channel selection means among these is cut | disconnected. The any one of Claims 7-12 characterized by the above-mentioned. Terminal device.
ことを特徴とする請求項7〜12のいずれか1項に記載の端末装置。 The terminal device according to any one of claims 7 to 12, wherein the channel having the predetermined relationship is a channel having a channel number adjacent to the channel number selected by the channel selection unit.
前記配信装置が、前記コンテンツデータをストリーミング配信するステップと、
前記接続管理装置が、前記階層構造を構成する前記端末装置の接続状態情報を接続状態情報記憶手段に記憶するステップと、
前記端末装置が、前記チャンネルを選択するためのチャンネル選択手段によって選択されたチャンネルに関する接続先紹介要求と当該チャンネルと所定の関係を有するチャンネルに関する前記接続先紹介要求とを前記ネットワークを介して前記接続管理装置に送信するステップと、
前記接続管理装置が、前記ネットワークを介して前記端末装置から前記接続先紹介要求を受信したとき、前記接続状態情報記憶手段に記憶された前記接続状態情報から接続先候補を選択するステップと、
前記接続管理装置が、前記選択した接続先候補を、前記接続先紹介要求を送信した前記端末装置へ前記ネットワークを介して通知するステップと、
前記端末装置が、前記接続管理装置から通知された前記チャンネル毎の前記接続先候補にそれぞれ接続して複数のチャンネルで前記第1配信形態に参加するステップと、
前記端末装置が、前記ネットワークを介して接続した前記接続先候補から前記コンテンツデータを前記チャンネル毎にストリーミング受信するステップと、
前記端末装置が、前記ストリーミング受信したコンテンツデータを前記チャンネル毎にリングバッファ領域に一時的に蓄積するステップと、
前記端末装置が、前記リングバッファ領域に蓄積したコンテンツデータのうち前記チャンネル選択手段によって選択されたチャンネルのコンテンツデータをストリーミング再生するステップと、
前記端末装置が、他の前記端末装置から前記コンテンツデータの中継依頼を受信すると、当該中継依頼を行った端末装置へ受信した前記コンテンツデータをストリーミング転送するステップと、
前記端末装置が、前記第2配信形態によるコンテンツデータのダウンロード要求の操作を検出すると、前記接続状態にあるチャンネルのうち、前記選択されたチャンネルと所定の関係を有するチャンネルに関する前記接続先候補との接続を切断するステップと、
前記端末装置が、前記第2配信形態によるコンテンツデータのダウンロード要求の操作があると、当該ダウンロード要求されたコンテンツデータを第2配信形態で取得するために、当該コンテンツデータの識別情報を取得するステップと、
前記端末装置が、前記取得されたコンテンツデータの識別情報に基づいて、前記ダウンロード要求されたコンテンツデータを前記第2配信形態の端末装置からダウンロードするステップと、
前記端末装置が、前記ダウンロードしたコンテンツデータをコンテンツデータ記憶手段に記憶するステップと、
前記端末装置が、前記ダウンロード要求されたコンテンツデータのダウンロードが完了すると、前記切断したチャンネルに関する前記接続先紹介要求を前記接続管理装置へ送信し、その後、前記接続管理装置から通知された前記接続先候補に再接続するステップと、
を有するコンテンツ配信方法。 The content distribution device is managed by a connection management device so that a plurality of terminal devices are logically connected in multiple layers in a hierarchical structure for each channel on the network, with the content distribution device streaming the content data through a plurality of channels, respectively. A first distribution form in which the content data transmitted from a device is sequentially stream-distributed from the upstream terminal device of the hierarchical structure to the downstream terminal device for each channel by the relay function of the terminal device; and the plurality of terminal devices A content distribution method in a content distribution system having a second distribution form in which another terminal device that holds the content data distributes the content data based on a content data download request from one terminal device. And
The delivery device streaming delivering the content data;
The connection management device storing connection state information of the terminal devices constituting the hierarchical structure in a connection state information storage unit;
The terminal device connects the connection destination introduction request for the channel selected by the channel selection means for selecting the channel and the connection destination introduction request for the channel having a predetermined relationship with the channel via the network. Sending to the management device;
When the connection management device receives the connection destination introduction request from the terminal device via the network, selecting a connection destination candidate from the connection state information stored in the connection state information storage unit;
The connection management device notifying the selected connection destination candidate to the terminal device that has transmitted the connection destination introduction request via the network;
The terminal device is connected to the connection destination candidates for each channel notified from the connection management device, and participates in the first distribution form through a plurality of channels;
The terminal device streaming receiving the content data from the connection destination candidates connected via the network for each channel;
The terminal device temporarily storing the streaming-received content data in a ring buffer area for each channel;
The terminal device performs streaming reproduction of the content data of the channel selected by the channel selection means among the content data stored in the ring buffer area;
When the terminal device receives a relay request for the content data from another terminal device, streaming the received content data to the terminal device that has made the relay request;
When the terminal device detects an operation of downloading content data according to the second distribution form, the connection destination candidate for the channel having a predetermined relationship with the selected channel among the channels in the connection state Disconnecting the connection;
A step of acquiring identification information of the content data in order to acquire the content data requested to be downloaded in the second distribution form when the terminal device has an operation of requesting download of the content data in the second distribution form; When,
The terminal device downloads the content data requested to be downloaded from the terminal device of the second distribution form based on the identification information of the acquired content data;
The terminal device storing the downloaded content data in content data storage means;
When the terminal device completes the download of the content data requested to be downloaded, the terminal device transmits the connection destination introduction request regarding the disconnected channel to the connection management device, and then the connection destination notified from the connection management device. Reconnecting to the candidate,
A content distribution method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006168109A JP4635966B2 (en) | 2006-06-16 | 2006-06-16 | CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006168109A JP4635966B2 (en) | 2006-06-16 | 2006-06-16 | CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007336397A JP2007336397A (en) | 2007-12-27 |
JP4635966B2 true JP4635966B2 (en) | 2011-02-23 |
Family
ID=38935417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006168109A Expired - Fee Related JP4635966B2 (en) | 2006-06-16 | 2006-06-16 | CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4635966B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009187141A (en) * | 2008-02-04 | 2009-08-20 | Brother Ind Ltd | Information distribution system and method of regulating duplicate number therein |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003324711A (en) * | 2002-02-27 | 2003-11-14 | Matsushita Electric Ind Co Ltd | Information browsing method, transmitting apparatus, and receiving apparatus |
JP2006033515A (en) * | 2004-07-16 | 2006-02-02 | Brother Ind Ltd | Connection state control apparatus, connection state control method, and connection state control program |
-
2006
- 2006-06-16 JP JP2006168109A patent/JP4635966B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003324711A (en) * | 2002-02-27 | 2003-11-14 | Matsushita Electric Ind Co Ltd | Information browsing method, transmitting apparatus, and receiving apparatus |
JP2006033515A (en) * | 2004-07-16 | 2006-02-02 | Brother Ind Ltd | Connection state control apparatus, connection state control method, and connection state control program |
Also Published As
Publication number | Publication date |
---|---|
JP2007336397A (en) | 2007-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4640307B2 (en) | CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF | |
JP2007193626A (en) | Content distribution system, node device, information processing method therefor and program therefor | |
JP2008294626A (en) | Content distributed storage system, content storing method, node device, and node processing program | |
JP2008198047A (en) | Information distribution system, information distribution method, distribution unit, node unit, etc | |
WO2006103800A1 (en) | Information processing device and storage device, information processing method and storing method, and information processing program and program for storage device | |
JP2008033406A (en) | Node device, information processing program, content distribution method and content distribution system | |
JP2007233652A (en) | Content distribution system, information processing method thereof, and terminal device | |
JP5293533B2 (en) | Information communication system and information communication method | |
JP4623026B2 (en) | CONTENT DISTRIBUTION SYSTEM, TERMINAL DEVICE, CONTENT DISTRIBUTION METHOD, AND PROGRAM USED FOR THE SAME | |
JP4692278B2 (en) | Content distribution system, terminal device, information processing method thereof, and program thereof | |
JP2007336396A (en) | Content distribution system, content distribution method, terminal device and program therefor | |
JP4765876B2 (en) | TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM | |
JP4635966B2 (en) | CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF | |
JP4539598B2 (en) | CONTENT DATA DISTRIBUTION SYSTEM, CONTENT DATA DISTRIBUTION METHOD, TERMINAL DEVICE, AND OPERATION PROGRAM FOR THE TERMINAL DEVICE | |
JP4797679B2 (en) | CONTENT DISTRIBUTION SYSTEM, CONTENT DATA MANAGEMENT DEVICE, ITS INFORMATION PROCESSING METHOD, AND ITS PROGRAM | |
JP2008085678A (en) | Content distribution system, content distribution method, terminal device in the content distribution system and program thereof | |
JP4924389B2 (en) | TERMINAL DEVICE, INFORMATION PROCESSING PROGRAM, AND INFORMATION PROCESSING METHOD USED FOR INFORMATION DISTRIBUTION SYSTEM | |
JP2008035337A (en) | Node device, distribution device, management device, information processing program, content distribution method and content distribution system | |
JP2008059398A (en) | Identification information allocation device, information processing method therefor, and program therefor | |
JP2009232272A (en) | Content distributive storage system, content playback method, node device, management apparatus, node-processing program, and management processing program | |
JP5326968B2 (en) | Information communication system, support apparatus, support apparatus program, and content acquisition method | |
JP2007274244A (en) | Content data distribution system, content data distribution method, terminal device, and program thereof | |
JP2007272467A (en) | Distribution system, control device, program for control device, management device, program for management device, auxiliary device, program for auxiliary device, and distribution system control method | |
JP5007624B2 (en) | Content distributed storage system, content data acquisition method, node device, and node processing program | |
JP5157770B2 (en) | Node device, program, and storage instruction method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090402 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101001 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101026 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101108 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131203 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |