JP4107968B2 - Content distribution server, content receiving terminal, and content distribution system - Google Patents
Content distribution server, content receiving terminal, and content distribution system Download PDFInfo
- Publication number
- JP4107968B2 JP4107968B2 JP2003000809A JP2003000809A JP4107968B2 JP 4107968 B2 JP4107968 B2 JP 4107968B2 JP 2003000809 A JP2003000809 A JP 2003000809A JP 2003000809 A JP2003000809 A JP 2003000809A JP 4107968 B2 JP4107968 B2 JP 4107968B2
- Authority
- JP
- Japan
- Prior art keywords
- content
- distribution
- data
- terminal
- content data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Reverberation, Karaoke And Other Acoustics (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、コンテンツ配信サーバ、コンテンツ受信端末及びコンテンツ配信システムに関し、例えば音楽データなどのコンテンツデータをインターネットやLAN等のネットワークを介してストリーミング配信するに際し、特に、ネットワークの回線容量を効率的に利用することを可能とするコンテンツ配信サーバ、コンテンツ受信端末及びコンテンツ配信システムに関する。
【0002】
【従来の技術】
サーバが、ネットワークを介してクライアント端末に対してデータを配信する場合に、クライアント端末が全てのデータを受信する前に、再生を開始することを可能とする技術として、ストリーミング技術が一般に広く知られている。
近年においては、インターネット等のネットワークに接続されたパーソナルコンピュータ向けに送信する映像や音楽などのコンテンツ配信サービスとして、ストリーミング技術が広く用いられている。かかるストリーミング技術を用いてコンテンツデータを配信する際に、ネットワークが混んでいる場合や、回線の帯域を上回るコンテンツデータを配信するような場合であっても、ストリーミング配信されたコンテンツデータを受信した再生プレイヤーが途切れることなく再生し続けることを可能とするために、クライアント端末内部に設けられているキャッシュメモリにストリーミング配信されたコンテンツデータを蓄積しながら再生を行なう手法や、コンテンツデータを配信するサーバとは異なるネットワーク上の位置に配設されているキャッシュ装置に対してコンテンツデータを配信して予め蓄積した後、該キャッシュ装置からクライアント端末に対して配信するという手法が採用されている。
【0003】
例えば、特許文献1に示す特開2002−183019号公報においては、コンテンツデータと共に該コンテンツデータの特徴を示すメタ情報を受信し、該メタ情報及びユーザのプロファイルに応じて、一時的な記憶手段であるキャッシュメモリに記憶すべきコンテンツデータを判断して保存するというキャッシュ装置に関する技術が開示されている。かかる技術を用いることにより、ある特定のクライアント端末がコンテンツ配信サーバ内のコンテンツデータにアクセスする際に、ネットワークのアクセス時間が制限されたり、あるいは、ネットワークの混雑による影響を受けることなく、所望のコンテンツデータをストリーミング受信することができるとされている。
【0004】
【特許文献1】
特開2002−183019号公報(第3−第5頁、図1)
【0005】
【発明が解決しようとする課題】
しかしながら、特許文献1に示す特開2002−183019号公報において開示されているような技術を用いる場合、コンテンツ配信サーバからクライアント端末に対して事前に登録されているコンテンツデータをプッシュ配信するような場合にあっては、当該クライアント端末にとって実際には全く利用されないコンテンツデータまでも自動的に配信されてしまう可能性があり、ネットワークを転送されるコンテンツデータの総送出量が大きくなってしまうという課題がある。
【0006】
また、ストリーミング配信の一般的な課題として、ユーザがキャッシュ装置に蓄えられていないコンテンツデータを再生する要求をしたい場合、かかる要求時点においてユーザ側のクライアント端末をサービス提供者側のコンテンツ配信サーバにネットワークを介して接続する必要がある。このため、多くのユーザが前記キャッシュ装置に蓄積されていないコンテンツデータを一斉に再生するような要求がなされた場合、1ユーザ当たりの占有帯域に一斉に要求するユーザ数を乗じた通信帯域がネットワークに必要となり、更には、ネットワークに接続されているクライアント端末全てが一斉にサービス提供者側のコンテンツ配信サーバに接続を要求するような状況の発生により、ネットワークの許容帯域をはるかに越えて、全てのクライアント端末に一斉にコンテンツデータを配信せんとするような事態も排除できないという課題が残されている。
【0007】
また、コンテンツデータのストリーミング配信は、要求されたクライアント端末の要求順序に従って順次行なわれるが、ネットワークの許容帯域を超えてしまった場合には、後続する配信要求元のクライアント端末に対しては配信することができなくなることとなり、公平さに欠けてしまうという問題点も生じている。
【0008】
本発明は、かかる事情に鑑みてなされたものであり、コンテンツ受信端末からコンテンツデータの配信を要求する配信要求を送信する際に、キャッシュメモリにキャッシュされているコンテンツデータに関する情報(例えば、再生した回数を表す再生回数や再生した日時を表す再生日時やキャッシュされた日時を表すキャッシュ日時など)を配信優先順位付け情報として合わせて送信し、コンテンツ配信サーバが、予め定められた一定の時間間隔である配信要求受付期間内に受信した前記配信優先順位付け情報に基づいて、各コンテンツ受信端末の配信優先順位を判定し、ネットワークの許容帯域(即ち、転送可能容量)に応じて、優先して配信するコンテンツ受信端末を決定して、コンテンツデータを配信し、残りのコンテンツ受信端末に対しては、過去にキャッシュメモリにキャッシュされているコンテンツデータを読み出してそれぞれ内部再生することを可能にせんとするものであり、もって、ネットワークを効果的に利用可能とすると共に、各コンテンツ受信端末に対して、分け隔てなく公平にコンテンツデータを配信することを可能にせんとするものである。
【0009】
【問題を解決するための手段】
第1の技術手段は、コンテンツ受信端末に対して配信するコンテンツデータを蓄積し、各コンテンツ受信端末から送信されるコンテンツデータの配信要求を受付けてコンテンツデータをストリーミング配信するコンテンツ配信サーバにおいて、所定期間単位毎に受付けた前記配信要求に添付されてくる当該コンテンツ受信端末内のキャッシュメモリに記録された配信済みコンテンツデータのリストと、当該リストのコンテンツ毎のキャッシュ日時、又は、再生回数、最新再生日時のうちの1つ又は複数より成るコンテンツ配信優先順位付け情報に基づいて、予め設定した選定基準により受付けたコンテンツ受信端末についてコンテンツデータの配信優先順位を決定し、決定された前記配信優先順位に応じて、予め定められた配信可能端末数に該当する前記配信優先順位が高いコンテンツ受信端末に対してコンテンツデータのストリーミング配信を行うことを特徴とするコンテンツ配信サーバ。
【0010】
第2の技術手段は、前記配信優先順位が低く前記単位期間内に配信ができないコンテンツ受信端末に対し、当該受信端末内のキャッシュメモリによる内部再生の指示を行うことを特徴とする。
【0011】
第3の技術手段は、前記配信優先順位が、前記配信優先順位付け情報における再生回数の記録の合計回数が多いコンテンツ受信端末順、又は、前記キャッシュ日時の記録のうちの最も古い最古キャッシュ日時の記録が古いコンテンツ受信端末順、前記最新再生日時の記録のうちの最も古い最古再生日時の記録が新しいコンテンツ受信端末順、各コンテンツデータの前記再生回数のうち最も多い最多再生回数の多いコンテンツ受信端末順、のいずれかであることを特徴とする。
【0012】
第4の技術手段は、コンテンツ配信サーバから配信されるコンテンツデータをその都度キャッシュメモリにキャッシュすると共に、キャッシュされている各コンテンツデータを復号して再生するコンテンツ受信端末において、前記配信サーバに対し、コンテンツ配信要求を、前記キャッシュメモリにキャッシュされている各コンテンツデータのリストと、当該リストのコンテンツ毎のキャッシュ日時、又は、再生回数、最新再生日時のうちの1つ又は複数より成るコンテンツ配信優先順位付け情報と共に送信し、該配信要求における前記コンテンツ配信順位付け情報に基づいて決定された配信優先順位情報に従った前記配信サーバからの指示応答が、コンテンツデータのストリーミング配信のときは配信されたコンテンツデータを再生し、キャッシュメモリによる内部再生の指示のときは前記キャッシュされている所定のコンテンツデータを読み出して内部再生するコンテンツ受信端末を特徴とする。
【0013】
第5の技術手段は、前記配信要求の送信から予め定めた一定の経過時間内に前記指示応答がない場合、自動的に前記キャッシュメモリからコンテンツデータを読み出して内部再生することを特徴とする。
【0014】
第6の技術手段は、前記キャッシュメモリから読み出して内部再生するコンテンツデータは、各コンテンツデータを再生した回数を表す再生回数が少ないコンテンツデータ、又は各コンテンツデータ最新再生日時が最も古いコンテンツデータであることを特徴とする。
【0015】
第7の技術手段は、前記キャッシュメモリにキャッシュされているコンテンツデータは、各コンテンツデータを再生した再生回数の多いコンテンツデータ順、又は各コンテンツデータをキャッシュした日時を表すキャッシュ日時が古いコンテンツデータ順、前記再生回数あるいは前記キャッシュ日時に関して予め設定した順のいずれかにより前記キャッシュメモリから削除されることを特徴とする。
【0016】
第8の技術手段は、第1〜3のいずれかの技術手段のコンテンツ配信サーバと、第4〜7のいずれかの技術手段のコンテンツ受信端末よりなるコンテンツ配信システムを特徴とする。
【0035】
【発明の実施の形態】
以下、本発明に係るコンテンツ配信サーバ、コンテンツ受信端末及びコンテンツ配信システムの実施形態について、図面を参照しながら詳細に説明する。なお、以下の説明においては、コンテンツ配信システムとして、音楽配信システムを用いる場合を例にとって説明することとする。
【0036】
図1は、本発明に係るコンテンツ配信システムの実施形態の一例である音楽配信システムにおけるネットワーク構成の概念を示すネットワーク構成図である。図1に示す音楽配信システムは、音楽データを配信要求元のクライアント端末に配信するコンテンツ配信サーバ101(即ち、音楽配信サーバ:以下、単にサーバと略記する)と、サーバ101に対して音楽データの配信要求を行ない、サーバ101から配信されてくる音楽データを受信して再生するクライアント端末102例えば13台のクライアント端末1 102-1乃至クライアント端末13102-13(即ち、コンテンツ受信端末:以下、単に端末と略記する)とが、それぞれ、インターネット103に接続されている。また、各端末1 102-1乃至端末13 102-13のそれぞれには、サーバ101が各端末を識別するために用いる端末IDとして、「1」から「13」の番号で順次予め付与されて、各端末に内蔵されている。
【0037】
図2は、図1の本発明に係るコンテンツ配信サーバ即ち音楽配信サーバ101内の機能ブロック構成の一例を示す機能ブロック図である。図2において、インターネット103に接続されてなる音楽配信サーバ101は、端末に対して配信すべき音楽データを蓄える配信データ蓄積部111、インターネット103を介して端末からの配信要求を受け付ける受付周期を示す配送要求受付期間を設定すると共に、設定された配信要求受付期間毎に、端末から受信された配信要求順に端末を配信優先順位付け情報と共に登録する配信要求リスト114と、受付け終了時に、配信要求リスト114に登録されている端末の配信優先順位を、前記配信優先順位付け情報に基づいて並べ替えを行なったりして設定すると共に、設定された配信優先順位に応じて、各端末に対して配信するコンテンツデータに関し、ストリーミング配信を許可するか、又は、端末内のキャッシュメモリから読み出して再生する内部再生を指示するかのいずれとするかを端末毎に決定する配信端末選定部112とを備えている。更に、音楽配信サーバ101は、ストリーミング配信を許可した端末に対してストリーミング配信する旨を示す指示応答を送信すると共に、音楽データをストリーミング配信する配信部113と、音楽データを端末に配信するためにインターネット103に接続するためのネットワーク接続部115とを備えている。
【0038】
なお、配信要求リスト114には、後述する図5に示すように、配信要求された端末から送信されてくる当該端末を識別する端末IDを登録するための端末ID領域114aと、該配信要求に添付されて送信されてくる、配信優先順位付け情報を登録するための配信優先順位付け情報領域114bとが設けられている。ここで、配信要求リスト114の配信優先順位付け情報領域114bに登録される前記配信優先順位付け情報とは、配信要求した端末に関する配信優先順位の順序付けを行なうための情報であり、過去に配信されて各端末のキャッシュメモリにキャッシュされているコンテンツデータに関する情報(例えば、再生回数、再生日時、キャッシュ日時などの情報)から生成される情報である。
【0039】
図3は、図1の本発明に係る端末(コンテンツ受信端末)102内の機能ブロック構成の一例を示す機能ブロック図である。図3において、インターネット103に接続されてなる端末102は、サーバ101からインターネット103を介して配信されてくる音楽データをその都度キャッシュするキャッシュメモリ123と、キャッシュメモリ123にキャッシュされている音楽データを管理するための管理情報を記憶している管理テーブル121と、キャッシュメモリ123にキャッシュされている音楽データの削除又は更新又は再生を行なうためのタイミングを決定するキャッシュマネージャ122とを備えている。
【0040】
更に、端末102は、インターネット103を介して配信されてくる又はキャッシュメモリ123にキャッシュされている音楽データを復号し、再生する音楽データデコーダ124と、インターネット103を介してサーバ101に対して配信要求を配信優先順位付け情報と共に送信し、一方、該配信要求に対するサーバ101からの指示応答を受信すると共に、サーバ101から配信されてきた音楽データを受信する送受信部125と、音楽データをコンテンツ配信サーバ101から受信するためにインターネット103に接続するためのネットワーク接続部126とを備えている。
【0041】
図4は、図3に示す端末102に内蔵されている管理テーブル121に記憶する管理情報の一例を示すメモリ構成図である。図4において、管理テーブル121は、キャッシュメモリ123にキャッシュされている各音楽データを一意に識別するための音楽データ番号121a、キャッシュメモリ123にキャッシュされている各音楽データを再生した回数を表す再生回数データ121b、キャッシュメモリ123にキャッシュされている各音楽データをキャッシュした日時を表すキャッシュ日時データ121c、キャッシュメモリ123にキャッシュされている各音楽データを、最も最近に再生した日時を表す最新再生日時データ121d、及び、キャッシュメモリ123にキャッシュされているいずれかの音楽データを再生した回数の合計を示す合計再生回数データ121eとのうち、1つ以上のデータ項目を格納している。
【0042】
図5は、或る配信要求受付期間に図2に示すサーバ101に内蔵されている配信要求リスト114に配信要求のあった順番に端末を時系列的に登録した状態の一例を示すメモリ構成図である。図5において、配信要求リスト114には、配信要求と共に端末102からそれぞれ送信されてきた、端末IDを格納する端末ID領域114aと、該端末102内の管理テーブル121に設定されていた合計再生回数データ121eを格納する合計再生回数データ領域114bとが備えられており、それぞれ配信要求が受信された端末順に順番に登録されるようになっている。ここで、合計再生回数データ領域114bに登録される合計再生回数データ121eとは、図2に示した配信要求リスト114の配信優先順位付け情報領域114bに登録され、端末毎の配信優先順位の順序付けを行なうための前記配信優先順位付け情報の一例を示すものである。
【0043】
図6は、図5に示す配信要求リスト114に登録された端末102について、配信要求受付期間終了後に、配信すべきコンテンツデータに関する端末102の配信優先順位の並べ替えを施した後の配信優先順位の一例を示すメモリ構成図である。図6に示す本実施例においては、かかる配信優先順位の並べ替えを行なう前記配信優先順位付け情報として、合計再生回数データ領域114bに登録された合計再生回数データ121eを用いる例を示しており、図4に示す各端末102毎の合計再生回数データ121eの大きい順、即ち、各端末102からサーバ101に送信されてきて、配信要求リスト114の合計再生回数データ領域114bに格納されている合計再生回数データ121eの大きい順に並べ替えが行なわれている例を示している。
【0044】
次に、サーバ101及び端末102のそれぞれにおける音楽データの送受信処理について、図7を用いて更に詳細に説明する。図7は、或る配信要求受付期間毎にサーバ101が受信した配信要求の端末台数に応じて、サーバ101からの配信を指示する端末102と内部再生を指示する端末102とのそれぞれの台数が変化する時間的な流れの一例を表した模式図である。
図7に示す例においては、サーバ101から同時に100台の端末102に対してインターネット103を介して音楽データの配信を行なうことが可能であり、経過時刻10秒から20秒までの最初の配信要求受付期間Aの初期時点にあっては、インターネット103における配信可能トラフィック容量である100台に対して既に97台の端末が接続されて音楽データの配信が行なわれている状態にあることを示している。また、本実施例における音楽配信システムにおいては、配信要求受付期間は、常に10秒間隔という固定した時間間隔の受付周期に設定されている場合を示している。
【0045】
ここで、配信要求受付期間Aにおいて新たに追加して配信することが可能な追加配信可能端末数は、3台(=100台(同時配信可能端末数)−97台(配信中端末数))であり、残り3台の追加配信可能端末数に対して、5台の端末(それぞれ端末IDが「1」,「2」,「3」,「4」,「5」)から新たに配信要求があり、図2に示す配信要求リスト114には、図5に表すように、配信要求の受付けをした端末順に合計再生回数データ領域114bに合計再生回数データが登録されている。
配信要求受付期間Aが終了すると、図2に示す配信端末選定部112は、登録されている配信要求リスト114の配信要求の端末を合計再生回数データ領域114bに格納された合計再生回数データの大きい順に配信優先順位とするように並べ替えを行なう。合計再生回数データの大きい順に並べ替えがなされた後の配信要求リスト114は、図6に示すようになる。
【0046】
従って、配信端末選定部112においては、並べ替えられた図6に示す配信優先順位に応じて、端末IDが「4」,「2」,「1」の3台の端末に対しては、音楽データの配信を許可して、配信部113からそれぞれの端末に対してストリーミング配信を行なう旨を示す指示応答をすると共に、音楽データのストリーミング配信を行ない、一方、端末IDが「5」と「3」の2台の端末に対しては、配信端末選定部112において、それぞれの端末内部にあるキャッシュメモリにキャッシュされている音楽データにより内部再生(ローカル再生)を行なう指示をして、音楽データの配信を行なう指示は行なわない。
【0047】
一方、図7の「期間内に配信終了する端末数」の欄に記載しているように、配信要求受付期間Aの期間内に配信を終了する端末数は4台となっているものとする。
従って、配信要求受付期間Aに続いて実施される配信要求受付期間Bにおいて、新たに追加して配信することが可能な追加配信可能端末数としては、配信要求受付期間A中に配信を終了した端末数である4台となる。残り4台の追加配信可能端末数に対して、2台の端末(端末IDが「6」と「7」)から新たに配信要求のアクセスがあれば、配信要求リスト114に配信要求受付期間Aの場合と同様に各新規配信要求端末が登録されるが、配信端末選定部112においては、新たに受け付けた配信要求端末数が2台と追加配信可能端末数4台に満たないため、新たに受け付けた端末IDが「6」と「7」の2台の端末に対しては、無条件に音楽データの配信を許可する指示がなされる。
【0048】
一方、配信要求受付期間Bの期間内に配信を終了する端末数は1台となっているものとする。
従って、配信要求受付期間Bに続いて実施される配信要求受付期間Cにおいて、新たに追加して配信することが可能な追加配信可能端末数としては、3台(=2台(配信要求受付期間Bで許可した端末数の残りの追加配信可能端末数)+1台(配信要求受付期間B中に配信を終了した端末数))となる。残り3台の追加配信可能端末数に対して、4台の端末(端末IDが「8」,「9」,「10」,「11」)から新たに配信要求のアクセスがあれば、配信要求リスト114に配信要求受付期間Aの場合と同様に各新規配信要求端末が登録され、配信要求受付期間Cが終了すると、配信端末選定部112において、配信要求受付期間Aの場合と同様に、配信要求リスト114を合計再生回数データの大きい順に並べ替えが行なわれる。
ここで、端末IDが「8」,「9」,「10」,「11」の端末の順に、合計再生回数データが大きい端末であったとすると、配信優先順位に応じて、端末IDが「8」,「9」,「10」の3台の端末に対しては、ストリーミング配信の接続を許可し、残りの端末IDが「11」の1台の端末に対しては、当該端末内部のキャッシュメモリによる内部再生(ローカル再生)を行なう指示がなされる。
【0049】
一方、配信要求受付期間Cの期間内に配信を終了する端末数は0台となっているものとする。
従って、配信要求受付期間Cに続いて実施される配信要求受付期間Dにおいて、新たに追加して配信することが可能な追加配信可能端末数としては、0台(=0台(配信要求受付期間Cで許可した端末数の残りの追加配信可能端末数)+0台(配信要求受付期間C中に配信を終了した端末数))となる。残り0台の追加配信可能端末数に対して、2台の端末(端末IDが「12」,「13」)から新たに配信要求のアクセスがあれば、配信要求リスト114に配信要求受付期間Aの場合と同様に各新規配信要求端末が登録される。配信要求受付期間Dが終了した時点で、配信端末選定部112においては、追加配信可能端末数が0台であるために、新たに受け付けた端末IDが「12」と「13」との2台の端末に対して、無条件に各端末内部のキャッシュメモリによる内部再生(ローカル再生)を行なう指示がなされる。
【0050】
図8は、前述した図7の模式図に示した配信要求受付期間Aの受付期間において、サーバ101(音楽配信サーバ)に対して配信要求がある端末1 102-01乃至端末5 102-05(即ち、端末IDが、「1」,「2」,「3」,「4」,「5」)が配信要求を行なった場合のインターネット103上の通信の流れを表すシーケンスチャートである。サーバ101における処理は、図8の右側に示すように、1)配信要求受付期間が示す所定期間の間、端末102からの配信要求を受け付けて、時系列的に順に前記配信優先順位付け情報を配信要求リスト114に登録する登録処理、続いて、2)配信要求リスト114に登録されている前記配信優先順位付け情報の所定条件に応じて配信する配信優先順位を決定する配信優先順位決定処理、更に続いて、3)決定された配信優先順位に応じて、予め定められた配信可能端末数に該当する高い配信優先順位にある端末に対しては配信許可の指示を、該配信可能端末数に該当しない低い配信優先順位にある残りの端末に対しては各端末のキャッシュメモリによる内部再生の指示を行なう配信端末決定処理の3つの処理プロセスに分けることができる。
【0051】
即ち、図8においては、図7に示す配信要求受付の開始から配信要求受付の終了までの配信要求受付期間A内に端末1 102-1乃至端末5 102-5からの配信要求1乃至5を時系列的に順次受け付けて配信要求リスト114に順次登録し、配信要求受付期間終了後に配信要求リスト114に登録されている前記配信優先順位付け情報に基づいて各端末の配信優先順位を決定して、予め算出された追加配信可能端末数に該当する配信優先順位が高い順に、端末4 102-4、端末2 102-2、端末1 102-1の3台の端末に対しては、順次、コンテンツデータの配信部113への接続の許可4,2,1を指示し、一方、該追加配信可能端末数を越えた配信優先順位が低い端末5 102-5乃至端末3 102-3の2台の端末に対しては、それぞれの端末内のキャッシュメモリによる内部再生5,3を指示する。
【0052】
次に、図7及び図8に示すサーバ101内の処理について、図9に示すフローチャートを用いて更に説明する。ここに、図9は、サーバ101内の処理プロセスの一例を説明するためのフローチャートである。
まず、サーバ101の配信端末選定部112は、配信要求リスト114の過去の登録内容をクリアして初期状態に復旧させると共に、配信要求受付期間を計測するためのタイマをスタートさせて、端末102からのコンテンツデータの配信要求の受け付けを開始する(ステップS101)。次いで、配信端末選定部112は、インターネット103を介して配信要求をしてくる端末102があるか否かを判断し、ある場合には(ステップS102のYES)、配送要求をしてきた端末102からの配信要求に添付されて送信されてきている、端末IDと合計再生回数データとを配信要求リスト114の第1番目に登録する(ステップS103)。
【0053】
次に、配信要求受付期間、例えば、図7に示す10秒が経過したか否かが判断され(ステップS104)、受付終了時刻に達するまで(ステップS104のNO)、ステップS102及びS103を繰り返し、配信要求のあった端末102を順番に時系列的に配信要求リスト114に登録していく。
受付終了時刻に達した場合(ステップS104のYES)、配信端末選定部112は、端末102からの配信要求の受付けを終了させ(ステップS105)、配信要求リスト114に登録されている配信要求端末を参照し、合計再生回数データを取り出す(ステップS106)。
【0054】
しかる後に、取り出された合計再生回数データが大きい順に、配信要求リスト114の端末IDと合計再生回数データとを並べ替えて、音楽データを配信する配信優先順位を端末毎に決定する(ステップS107)。次いで、並べ替えられた配信要求リスト114のうちの配信優先順位が第1番目の端末IDを取り出す(ステップS108)。
しかる後に、配信優先順位がストリーミング配信可能な端末台数以下の順位か否かが判断され(ステップS109)、配信可能端末数よりも高い配信優先順位にある場合には(ステップS109のNO)、当該端末IDの端末102に対するストリーミング配信の接続を許可し(ステップS111)、一方、配信可能端末数以下の配信優先順位にある場合には(ステップS109のYES)、当該端末IDの端末102については、該端末内部のキャッシュメモリによる内部再生を指示する(ステップS110)。
【0055】
以後、配信要求受付期間中に配信要求があった端末102全てに対して再生方法に関する指示を行なう処理が終了したか否かが判断され(ステップS112)、まだ終了していない場合(ステップS112のNO)、ステップS108に戻り、ステップS109,S110,S111を、全ての配信要求のあった端末102について繰り返す。
【0056】
図9のフローチャートの右側に示すように、サーバ101における前述した3つの処理プロセスのうち、1)の登録処理が、ステップS101乃至S105の各ステップに、また、2)の配信優先順位決定処理が、ステップS106からS107に、また、3)の配信端末決定処理が、ステップS108乃至S112にそれぞれ対応している。
【0057】
なお、サーバ101の配信端末選定部112が音楽データをストリーミング配信する端末102を選択する配信優先順位を決定する論理としては、各端末102におけるコンテンツデータの再生回数の合計をなるべく少なくするために、前記配信優先順位付け情報として、各端末102からの配信要求に添付されて送信してくる合計再生回数データ(即ち、各端末102に設けられている図3の管理テーブル121内の合計再生回数データ121e)を用い、各端末102について該合計再生回数データの大きい順とする論理を用いる場合を示したが、本発明は、かかる場合のみに限るものではない。
【0058】
例えば、各端末102のキャッシュメモリ123にキャッシュされている音楽データのキャッシュ期間をなるべく短くするために、各端末102からの配信要求に添付される前記配信優先順位付け情報として、各音楽データがキャッシュメモリ123にキャッシュされたキャッシュ日時(即ち、各端末102に設けられている図3の管理テーブル121内のキャッシュ日時データ121c)のうち最も古い最古キャッシュ日時を抽出して用いることとして、各端末102についての該最古キャッシュ日時が古い順番に、配信要求リスト114の配信優先順位を決定するようにしても良い。
【0059】
あるいは、各端末102における同じ音楽データの再生間隔をなるべく長くするために、各端末102からの配信要求に添付される前記配信優先順位付け情報として、各音楽データを最も最近に再生した日時を表す最新再生日時(即ち、各端末102に設けられている図3の管理テーブル121内の最新再生日時データ121d)のうち最も古い最新再生日時を表す最古再生日時を用いることとして、各端末102についての該最古再生日時が新しい順番に、配信要求リスト114の配信優先順位を決定するようにしても良い。
【0060】
あるいは、各端末102の個々の音楽データの再生回数をなるべく少なくするために、各端末102からの配信要求に添付される前記配信優先順位付け情報として、各音楽データをそれぞれ再生した再生回数(即ち、各端末に設けられている図3の管理テーブル121内の再生回数データ121b)のうち回数が最も多い最多再生回数を抽出して用いることとして、各端末102についての該最多再生回数の回数が多い順番に、配信要求リスト114の配信優先順位を決定するようにしても良い。
【0061】
あるいは、配信要求リスト114に登録されている端末102の中からランダムに選択した順番に、配信要求リスト114の配信優先順位を決定するようにしても良い。
【0062】
また、各端末102からの配信要求に添付される前記配信優先順位付け情報として、管理テーブル121内に格納されている各種データのうち、1乃至複数のデータ(例えば、合計再生回数データ121e、再生回数データ121bの中の最多再生回数、キャッシュ日時データ121cの中の最古キャッシュ日時、最新再生日時データ121dの中の最古再生日時など)を用いるようにして、1乃至複数のデータに対して、予め設定されている優先順に基づいて総合的に判定することにより、配信要求リスト114の配信優先順位を決定するようにしても良い。
更には、前述したごとき各種のデータ以外に、配信要求リスト114の配信優先順位を決定することができる任意のデータを配信要求リスト114に登録することを可能とし、かかる任意のデータに基づいて、配信要求リスト114の配信優先順位を決定するようにしても良い。
【0063】
一方、端末102(即ち、図1に示す端末1〜13 102-1〜102-13)の音楽データデコーダ124における処理プロセスとしては、1)送受信部125を動作させて、サーバ101に対して配信要求を送信してサーバ101からの指示応答を待つ待ち合わせ処理、続いて、2)サーバ101からの指示応答に基づいて、サーバ101からストリーミング配信された音楽データの再生、又は、キャッシュメモリ123にキャッシュされている音楽データの内部再生のいずれかの再生方法を特定する再生方法特定処理、更に続いて、3)特定された再生方法により音楽データを再生する再生処理、の3つの処理プロセスに分けることができる。
【0064】
図10は、端末102内の処理プロセスの一例を説明するためのフローチャートである。ユーザからの音楽データの再生指示に応じて、図10に示すフローチャートがスタートし、まず、端末102はサーバ101に対して配信要求を行なうために、当該端末102を識別可能な端末IDと管理テーブル121に格納されている所望のデータ(合計再生回数データ121e、再生回数データ121b、キャッシュ日時データ121c、最新再生日時データ121dなどの中の1乃至複数のデータ)とを前記配信要求に添付して前記配信優先順位付け情報として送信するための準備を行なう(ステップS201)。
【0065】
送信準備として抽出された端末IDと管理テーブル121の所望のデータとを前記配信優先順位付け情報として配信要求に添付してサーバ101に対して送信する(ステップS202)。
しかる後に、サーバ101から該配信要求に対する指示応答が到達するまで待ち合わせる待ち合わせ処理が行なわれ(ステップS203)、サーバ101からの指示応答が受信されると、次のステップS204へ移行する。
【0066】
まず、当該端末102に届いたサーバ101からの指示応答を参照して、該指示応答がサーバ101からの音楽データのストリーミング配信が許可されたことを示す配信接続が可能とされているか否かの判断が行なわれ(ステップS204)、配信が許可されていない場合には(ステップS204のNO)、ステップS209に移行して、サーバ101からの配信ではなく、当該端末102のキャッシュメモリ123にキャッシュされている音楽データを内部再生する動作を行なうが、一方、配信が許可された旨を示している場合(即ち、ストリーミング再生指示であることを示している場合)は(ステップS204のYES)、サーバ101から配信されてくる音楽データを受信可能とするために、該音楽データをキャッシュメモリ123に蓄える空き容量が存在しているか否かを判断する(ステップS205)。
【0067】
該音楽データをキャッシュメモリ123に蓄えるための空き容量が存在していないフル状態にあると判断された場合(ステップS205のYES)、キャッシュマネージャ122は、管理テーブル121の再生回数データ121bを参照して、再生回数が最も多い音楽データを選択して削除を行なうことにより、キャッシュメモリ123に空き容量を確保して(ステップS206)、まだフル状態にはないと判断された場合(ステップS205のNO)と共に、ステップS207へ移行する。ここで、図4に示す管理テーブル121のような状態にある場合であれば、ステップS206において、管理テーブル121の再生回数データ121bが10回と最も多い音楽データ番号「200366」の音楽データが削除される。
【0068】
また、ステップS207においては、サーバ101へのストリーミング配信用の接続を行ない、サーバ101からストリーミング配信されてくる音楽データを逐次受信して、キャッシュメモリ123にキャッシュしながら受信が終了するまでストリーミング再生を行なう(ステップS207)。
しかる後、管理テーブル121に、ステップS207においてストリーミング再生された音楽データに関する、音楽データ番号(当該音楽データを特定する識別番号)、再生回数(1回の再生を示すデータ)、キャッシュ日時(キャッシュされた日時としての現在の日時)、最新の再生日時(最新再生日時としての現在の日時)を、それぞれ、音楽データ番号121a、再生回数データ121b、キャッシュ日時データ121c、最新再生日時データ121dとして登録すると共に、合計の再生回数を算出し直して、合計再生回数データ121eとして設定した後(ステップS208)、ステップS212に移行する。
【0069】
一方、配信が許可されていなく、内部再生の指示がなされていた場合(ステップS204のNO)においては、管理テーブル121の再生回数データ121bを参照して、再生回数が最も少ない音楽データを選択する(ステップS209)。
選択された再生回数が最も少ない音楽データの再生が終了するまで、キャッシュメモリ123から逐次読み出して内部再生を行なう(ステップS210)。即ち、管理テーブル121が図4に示す状態であれば、再生回数が1回という最も少ない音楽データ番号「100331」の音楽データが内部再生される。
【0070】
しかる後に、内部再生された音楽データに関する管理テーブル121の再生回数データ121bに「1」を加えて更新すると共に、最新再生日時データ121dとして現在の日時を設定し、かつ、合計の再生回数を算出し直して、合計再生回数データ121eとして設定する(ステップS211)。
S212においては、引き続き、ユーザが継続して再生するか否かを判断し、継続して再生を要求している場合は(ステップS212のYES)、ステップS201へ戻り、ステップS202乃至S211の処理を繰返し、終了する場合は(ステップS212のNO)、処理を終了する。
【0071】
図10のフローチャートの右側に示すように、端末102における前述した3つの処理プロセスのうち、1)のサーバに配信要求を送信してサーバからの指示応答を待ち合わせる待ち合わせ処理が、ステップS201乃至S203の各ステップに、また、2)の音楽データを再生する再生方法を特定する再生方法特定処理が、ステップS204乃至S206及びS209の各ステップに、また、3)の音楽データを再生する再生処理が、ステップS207、S208及びS210乃至S212の各ステップにそれぞれ対応している。
【0072】
なお、図10に示すフローチャートのステップS206において、キャッシュマネージャ122が、キャッシュメモリ123にキャッシュされている音楽データを削除する削除優先順位を決定する論理として、キャッシュされている音楽データの再生回数をなるべく少なくするために、キャッシュされている音楽データのうち、再生回数(即ち、各端末に設けられている図3の管理テーブル121内の再生回数データ121b)が最も多い音楽データから順番に削除する場合を示したが、本発明は、かかる場合のみに限るものではない。
【0073】
例えば、キャッシュされている音楽データのキャッシュ期間をなるべく短くするために、キャッシュメモリ123から削除する音楽データの削除優先順位として、キャッシュされた日時を表すキャッシュ日時(即ち、各端末に設けられている図3の管理テーブル121内のキャッシュ日時データ121c)を用いることとして、キャッシュされた日時のうち、最も古くキャッシュされた音楽データから順番に削除することとしても良い。
【0074】
あるいは、キャッシュメモリ123から削除する音楽データの削除優先順位として、管理テーブル121に登録されている音楽データの中からランダムに選択した音楽データの順番としても良い。
【0075】
また、キャッシュメモリ123から削除する音楽データの削除優先順位として、管理テーブル121内に格納されている各種管理データのうち、複数の管理データ(例えば、再生回数データ121bとキャッシュ日時データ121c)を用いるようにし、複数の管理データに対して予め設定されている優先順に基づいて総合的に判定することにより、削除する順番を決定するようにしても良い。
更には、前述したごとき各種の管理データ以外に、キャッシュメモリ123から削除する音楽データの削除優先順位を決定することができる任意のデータを管理テーブル121に登録することを可能とし、かかる任意のデータに基づいて、キャッシュメモリ123から削除する音楽データの削除優先順位を決定するようにしても良い。
【0076】
なお、図10に示すフローチャートのステップS209乃至S211において、音楽データデコーダ124が、キャッシュメモリ123からキャッシュされている音楽データを内部再生する再生優先順位を決定する論理として、キャッシュされている個々の音楽データの再生回数をなるべく均等にするために、キャッシュされている各音楽データのうち、再生回数(即ち、各端末に設けられている図3の管理テーブル121内の再生回数データ121b)が最も少ない音楽データから順番に再生する場合を示したが、本発明は、かかる場合のみに限るものではない。
【0077】
例えば、キャッシュされている個々の音楽データの再生間隔をなるべく長くするために、キャッシュメモリ123からキャッシュされている音楽データを内部再生する再生優先順位として、最も最近に再生された日時を表す最新再生日時(即ち、各端末に設けられている図3の管理テーブル121内の最新再生日時データ121d)を用いることとして、最も最近に再生された最新再生日時のうち、最も古く再生された音楽データから順番に再生することとしても良い。
【0078】
あるいは、キャッシュメモリ123からキャッシュされている音楽データを内部再生する再生優先順位として、管理テーブル121に登録されている音楽データの中からランダムに選択した音楽データの順番としても良い。
【0079】
また、キャッシュメモリ123からキャッシュされている音楽データを内部再生する再生優先順位として、管理テーブル121内に格納されている各種管理データのうち、複数の管理データ(例えば、再生回数データ121bと最新再生日時データ121d)を用いるようにし、複数の管理データに対して予め設定されている優先順に基づいて総合的に判定することにより、内部再生する順番を決定するようにしても良い。
更には、前述したごとき各種の管理データ以外に、キャッシュメモリ123から内部再生する音楽データの再生優先順位を決定することができる任意のデータを管理テーブル121に登録することを可能とし、かかる任意のデータに基づいて、キャッシュメモリ123から内部再生する音楽データの再生優先順位を決定するようにしても良い。
【0080】
また、前述の実施例において示した音楽データをストリーミング配信する配信システムとして、端末102のキャッシュメモリ123からの内部再生を指示する場合も、サーバ101から当該端末102に対する指示応答として、内部再生の指示を送信する例を示したが、サーバ101は、ストリーミング配信が可能な端末102に対してのみ、ストリーミング配信する旨を示す指示応答を送信する一方、キャッシュメモリ123からの内部再生を指示する端末102に対しては、内部再生を指示する旨の指示応答を送信しないようにすると共に、端末102側においても、配信要求を行なった時点から予め定められた一定の経過時間が経過する間にサーバ101からの指示応答が返送されてこない場合には、自動的にキャッシュメモリ123から再生する音楽データを読み出して、内部再生するように構成しても良い。
【0081】
更には、音楽データを配信する前述した配信システムにおいては、ユーザが選択することができるチャンネルが1個のチャンネルのみにより構成されていて、ユーザが端末102の電源を投入した際には、常に音楽が再生されて流れるような配信システムについて説明したが、例えば、チャンネル毎に対応した複数のサーバ101をインターネット103に接続し、インターネット103に接続された各端末102は、複数のチャンネルの中から任意のチャンネルを選択することができるチャンネル選択キーと各チャンネル毎に対応したそれぞれの管理テーブル121とキャッシュメモリ123とを有するように構成し、ユーザがチャンネル選択キーによりチャンネルを選択すると、該チャンネルに対応した管理テーブル121に格納されている各種管理データと端末IDとを用いて、前記配信優先順位付け情報を作成して、当該チャンネルに対応したサーバ101に対して送信する配信要求に添付して送信することにより、指定されたサーバ101から返信されてくる指示応答に基づいて、選択したチャンネルに関するコンテンツデータをストリーミング配信させて配信再生させたり、当該端末102のキャッシュメモリ123から内部再生させるように、配信システムを構成しても良い。
【0082】
また、前述した配信システムに適用されるネットワークとしては、図1に示すようにインターネット103を用いる場合を示したが、例えば、企業内や家庭内などのLAN(Local Area Network:ローカルエリアネットワーク)であっても構わない。
【0083】
【発明の効果】
本発明に係るコンテンツ配信サーバ、コンテンツ受信端末及びコンテンツ配信システムにおいては、以下のごとき効果を奏することができる。
即ち、本発明に係るコンテンツ配信サーバによれば、コンテンツデータの配信を要求する配信要求を送信するコンテンツ受信端末から、過去に配信されてキャッシュされているコンテンツデータに関する各種管理データを、配信優先順位付けを行なう配信優先順位付け情報として受信することにより、受信した配信優先順位付け情報に基づいて、ストリーミング配信を行なう対象とするコンテンツ受信端末の配信優先順位を設定して、当該コンテンツ配信サーバからストリーミング配信を行なうことが可能な端末数と前記配信優先順位とに応じて、当該コンテンツ配信サーバからストリーミング配信を行なうコンテンツ受信端末を決定することができる。もって、ストリーミング配信サービスを利用する全てのコンテンツ受信端末に対して、分け隔てなく公平に新しいコンテンツデータに関するストリーミング配信を行なうことを可能とすると共に、コンテンツデータの配信に伴うネットワークの転送データ量を効果的に制御することが可能となる。
【0084】
また、本発明に係るコンテンツ受信端末によれば、コンテンツ配信サーバから受信したコンテンツデータをキャッシュメモリにキャッシュすることにより、前記配信優先順位付け情報を添付してコンテンツ配信サーバに送信した配信要求に対して、当該コンテンツ配信サーバからのコンテンツデータの配信を示す指示応答が無い場合であっても、キャッシュメモリに以前キャッシュされたコンテンツデータの中から選択して効率良く内部再生することが可能である。もって、前記配信要求により、コンテンツ配信サーバから新鮮なコンテンツデータのストリーミング配信を受けることが可能であるのみならず、コンテンツ配信サーバからストリーミング配信を受けることができない場合であっても、キャッシュされているコンテンツデータを内部再生することが可能であり、ユーザは常に新鮮なコンテンツデータを視聴することができる。更に、コンテンツデータの配信に伴うネットワークの転送データ量を効果的に制御することも可能となる。
【0085】
したがい、前記コンテンツ配信サーバと前記コンテンツ受信端末とをネットワークに接続することにより構成される本発明に係るコンテンツ配信システムによれば、前記コンテンツ受信端末の端末数の総数に関わりなく、前記コンテンツ配信サーバと前記コンテンツ受信端末とに介在する前記ネットワークのネットワーク容量の許容範囲以内に収めてコンテンツデータをストリーミング配信することが可能であり、もって、ネットワーク容量を最大限に活用して、コンテンツデータの配信サービスを利用する全ての前記コンテンツ受信端末に対して、分け隔てなく公平に、新鮮なコンテンツデータを配信することができる。
【図面の簡単な説明】
【図1】本発明に係るコンテンツ配信システムの実施形態の一例である音楽配信システムにおけるネットワーク構成の概念を示すネットワーク構成図である。
【図2】図1の本発明に係るコンテンツ配信サーバ内の機能ブロック構成の一例を示す機能ブロック図である。
【図3】図1の本発明に係るコンテンツ受信端末内の機能ブロック構成の一例を示す機能ブロック図である。
【図4】図3に示す端末に内蔵されている管理テーブルに記憶する管理情報の一例を示すメモリ構成図である。
【図5】或る配信要求受付期間に図2に示すコンテンツ配信サーバに内蔵されている配信要求リストに、配信要求のあった順番にコンテンツ受信端末を時系列的に登録した状態の一例を示すメモリ構成図である。
【図6】図5に示す配信要求リストに登録されたコンテンツ受信端末について、配信要求受付期間終了後に、配信すべきコンテンツデータに関するコンテンツ受信端末の配信優先順位の並べ替えを施した後の配信優先順位の一例を示すメモリ構成図である。
【図7】或る配信要求受付期間毎にコンテンツ配信サーバが受信した配信要求の端末台数に応じて、コンテンツ配信サーバからの配信を指示するコンテンツ受信端末と内部再生を指示するコンテンツ受信端末とのそれぞれの台数が変化する時間的な流れの一例を表した模式図である。
【図8】図7の配信要求受付期間の受付期間において、サーバに対して配信要求がある端末が配信要求を行なった場合のインターネット上の通信の流れを表すシーケンスチャートである。
【図9】サーバ内の処理プロセスの一例を説明するためのフローチャートである。
【図10】端末内の処理プロセスの一例を説明するためのフローチャートである。
【符号の説明】
101…コンテンツ配信サーバ(音楽配信サーバ、サーバ)、102,102-1〜102-13…クライアント端末(コンテンツ受信端末、端末)、103…インターネット、111…配信データ蓄積部、112…配信端末選定部、113…配信部、114…配信要求リスト、114a…端末ID領域、114b…配信優先順位付け情報領域(合計再生回数データ領域)、115…ネットワーク接続部、121…管理テーブル、121a…音楽データ番号、121b…再生回数データ、121c…キャッシュ日時データ121c、121d…最新再生日時データ、121e…合計再生回数データ、122…キャッシュマネージャ、123…キャッシュメモリ、124…音楽データデコーダ、125…送受信部、126…ネットワーク接続部。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a content distribution server, a content receiving terminal, and a content distribution system. For example, when streaming content data such as music data via a network such as the Internet or a LAN, the line capacity of the network is used efficiently. The present invention relates to a content distribution server, a content receiving terminal, and a content distribution system that can be performed.
[0002]
[Prior art]
When a server distributes data to a client terminal via a network, a streaming technique is generally widely known as a technique that allows a client terminal to start playback before receiving all data. ing.
In recent years, streaming technology has been widely used as a content distribution service such as video and music transmitted to a personal computer connected to a network such as the Internet. When content data is distributed using such streaming technology, even if the network is busy or content data that exceeds the bandwidth of the line is distributed, the content data that has been distributed is received and played back. In order to enable the player to continue playing without interruption, a method for playing while storing the streamed content data in a cache memory provided in the client terminal, a server for delivering the content data, A technique is adopted in which content data is distributed and stored in advance to cache devices arranged at different network locations, and then distributed from the cache device to the client terminal.
[0003]
For example, in Japanese Patent Application Laid-Open No. 2002-183019 disclosed in
[0004]
[Patent Document 1]
Japanese Patent Laid-Open No. 2002-183019 (page 3-5, FIG. 1)
[0005]
[Problems to be solved by the invention]
However, when the technology disclosed in Japanese Patent Laid-Open No. 2002-183019 shown in
[0006]
Further, as a general problem of streaming distribution, when a user wants to request reproduction of content data not stored in a cache device, the client terminal on the user side is networked to the content distribution server on the service provider side at the time of the request. Need to connect through. For this reason, when a request is made so that many users simultaneously reproduce the content data not stored in the cache device, the communication bandwidth obtained by multiplying the occupied bandwidth per user by the number of users requested at once is the network. In addition, all of the client terminals connected to the network are requested to connect to the content distribution server on the service provider side at the same time. The problem remains that it is not possible to eliminate the situation where content data is not delivered to all client terminals simultaneously.
[0007]
Further, streaming distribution of content data is sequentially performed in accordance with the requested order of client terminals, but when it exceeds the allowable bandwidth of the network, it is distributed to the client terminal that is the subsequent distribution request source. It becomes impossible to do so, and there is a problem of lack of fairness.
[0008]
The present invention has been made in view of such circumstances, and when transmitting a distribution request for requesting distribution of content data from a content receiving terminal, information about content data cached in a cache memory (for example, reproduced) The number of times of reproduction representing the number of times, the reproduction date and time representing the date and time of reproduction, the cache date and time representing the cached date and time, and the like are transmitted together as distribution prioritization information, and the content distribution server transmits them at predetermined time intervals. Based on the distribution prioritization information received within a certain distribution request acceptance period, the distribution priority of each content receiving terminal is determined, and the distribution is preferentially performed according to the allowable bandwidth (that is, transferable capacity) of the network. Content receiving terminals to be determined, content data is distributed, and the remaining content receiving terminals are distributed. Therefore, it is possible to read out the content data cached in the cache memory in the past and internally reproduce it, thereby making it possible to effectively use the network and each content receiving terminal. On the other hand, content data can be distributed fairly and without separation.
[0009]
[Means for solving problems]
In a content distribution server that accumulates content data to be distributed to content receiving terminals, receives a distribution request for content data transmitted from each content receiving terminal, and distributes the content data in a streaming manner, the first technical means unit A list of distributed content data recorded in the cache memory in the content receiving terminal attached to the distribution request received every time, and the cache date and time, or the number of times of reproduction and the latest reproduction date and time for each content in the list Content distribution consisting of one or more of them priority Rank Date Based on information, based on preset selection criteria Accepted content About receiving terminal Content data Determine delivery priority, In accordance with the determined distribution priority, streaming distribution of content data is performed to content receiving terminals having a high distribution priority corresponding to a predetermined number of distributable terminals. A content distribution server characterized by the above.
[0010]
The second technical means is the above Delivery Low priority Unit Cannot deliver within the period content The receiving terminal is instructed to perform internal reproduction using a cache memory in the receiving terminal.
[0011]
The third technical means is the above Delivery The priority is In delivery prioritization information In order of the content receiving terminal in which the total number of reproduction times is recorded, or in the order of oldest content receiving terminal in the record of the oldest cache among the records of the cache date and time, the oldest of the records of the latest reproduction date and time The record of the oldest playback date is new content In order of receiving terminal, the largest number of times of reproduction of the largest number of times of reproduction of each content data content It is one of receiving terminal order.
[0012]
The fourth technical means caches the content data distributed from the content distribution server in the cache memory each time, and at the content receiving terminal that decodes and reproduces each cached content data, A content distribution request is a content distribution consisting of a list of each content data cached in the cache memory and one or more of the cache date and time, the number of times of reproduction, and the latest reproduction date and time for each content in the list priority Rank Date And send it along with the information According to the distribution priority information determined based on the content distribution ranking information Instruction response from the distribution server But, content Data Streaming delivery of When playing the distributed content data, When instructing internal playback using cache memory The content receiving terminal reads out the predetermined content data cached and internally reproduces the content data.
[0013]
The fifth technical means is If the instruction response is not received within a predetermined elapsed time from the transmission of the distribution request, the content data is automatically read from the cache memory and internally reproduced. It is characterized by that.
[0014]
The sixth technical means is The content data read from the cache memory and internally reproduced is content data with a small number of reproductions representing the number of times each content data has been reproduced, or content data with the oldest reproduction date of each content data. It is characterized by that.
[0015]
The seventh technical means is The content data cached in the cache memory is in the order of content data in which each content data is played back in the order of the number of playbacks, or in the order of content data in which the cache date and time indicating the date and time when each content data is cached is in the oldest order. Deleted from the cache memory in any of a preset order with respect to date and time It is characterized by that.
[0016]
The eighth technical means is A content distribution system comprising a content distribution server of any one of the first to third technical means and a content receiving terminal of any of the fourth to seventh technical means. Features.
[0035]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of a content distribution server, a content receiving terminal, and a content distribution system according to the present invention will be described in detail with reference to the drawings. In the following description, a case where a music distribution system is used as the content distribution system will be described as an example.
[0036]
FIG. 1 is a network configuration diagram showing a concept of a network configuration in a music distribution system which is an example of an embodiment of a content distribution system according to the present invention. A music distribution system shown in FIG. 1 includes a content distribution server 101 (that is, a music distribution server: hereinafter simply abbreviated as a server) that distributes music data to a client terminal that is a distribution request source, A
[0037]
FIG. 2 is a functional block diagram showing an example of a functional block configuration in the content distribution server, that is, the
[0038]
In the
[0039]
FIG. 3 is a functional block diagram showing an example of a functional block configuration in the terminal (content receiving terminal) 102 according to the present invention in FIG. In FIG. 3, a terminal 102 connected to the
[0040]
Further, the terminal 102 decodes the music data distributed via the
[0041]
FIG. 4 is a memory configuration diagram showing an example of management information stored in the management table 121 built in the terminal 102 shown in FIG. In FIG. 4, the management table 121 is a music data number 121a for uniquely identifying each music data cached in the
[0042]
FIG. 5 is a memory configuration diagram showing an example of a state in which terminals are registered in time series in the order of delivery requests in the
[0043]
FIG. 6 shows the distribution priorities of the
[0044]
Next, music data transmission / reception processing in each of the
In the example shown in FIG. 7, it is possible to distribute music data from the
[0045]
Here, the number of additionally distributable terminals that can be newly distributed in the distribution request acceptance period A is 3 (= 100 (the number of terminals capable of simultaneous distribution) −97 (the number of terminals being distributed)) And a new distribution request from five terminals (terminal IDs “1”, “2”, “3”, “4”, “5”, respectively) for the remaining three additional distributable terminals. In the
When the distribution request acceptance period A ends, the distribution
[0046]
Therefore, in the distribution
[0047]
On the other hand, as described in the column “Number of terminals whose distribution ends within the period” in FIG. 7, the number of terminals whose distribution ends within the period of the distribution request reception period A is four. .
Accordingly, in the distribution request reception period B that follows the distribution request reception period A, the number of additional distributable terminals that can be newly distributed can be distributed during the distribution request reception period A. The number of terminals is four. If there is a new distribution request access from two terminals (terminal IDs “6” and “7”) for the remaining four additional distributable terminals, the distribution request acceptance period A in the
[0048]
On the other hand, it is assumed that the number of terminals that end distribution within the period of the distribution request reception period B is one.
Accordingly, in the distribution request reception period C that follows the distribution request reception period B, the number of additional distributable terminals that can be newly distributed and distributed is 3 (= 2 (distribution request reception period). The remaining number of additional distributable terminals of the number of terminals permitted in B) +1 (the number of terminals that have ended distribution during the distribution request acceptance period B)). If there is a new distribution request access from four terminals (terminal IDs “8”, “9”, “10”, “11”) for the remaining three additional distributable terminals, the distribution request Each new distribution request terminal is registered in the
Here, if the terminal ID is “8”, “9”, “10”, “11” in the order of the terminal with the largest total number of reproduction times data, the terminal ID is “8” according to the distribution priority. ”,“ 9 ”, and“ 10 ”are permitted to be connected for streaming distribution, and the remaining terminal ID“ 11 ”is cached inside the terminal. An instruction to perform internal reproduction (local reproduction) by the memory is issued.
[0049]
On the other hand, it is assumed that the number of terminals that end distribution within the period of the distribution request reception period C is zero.
Therefore, in the distribution request reception period D that follows the distribution request reception period C, the number of additional distributable terminals that can be additionally distributed is 0 (= 0 (distribution request reception period). The remaining number of additional distributable terminals of the number of terminals permitted in C) +0 (the number of terminals that ended distribution during the distribution request acceptance period C)). If there is a new distribution request access from two terminals (terminal IDs “12” and “13”) with respect to the remaining number of additional distributable terminals, the distribution request reception period A Each new distribution request terminal is registered as in the case of. At the time when the delivery request acceptance period D ends, the delivery
[0050]
8 shows a
[0051]
That is, in FIG. 8, the
[0052]
Next, the processing in the
First, the distribution
[0053]
Next, it is determined whether or not a delivery request acceptance period, for example, 10 seconds shown in FIG. 7 has elapsed (step S104), and steps S102 and S103 are repeated until the acceptance end time is reached (NO in step S104), The
When the reception end time is reached (YES in step S104), the distribution
[0054]
Thereafter, the terminal IDs of the
Thereafter, it is determined whether or not the distribution priority is equal to or lower than the number of terminals capable of streaming distribution (step S109). If the distribution priority is higher than the number of distributable terminals (NO in step S109), When streaming delivery connection to the terminal 102 with the terminal ID is permitted (step S111), and when the distribution priority is equal to or lower than the number of distributable terminals (YES in step S109), the terminal 102 with the terminal ID is The internal reproduction by the cache memory inside the terminal is instructed (step S110).
[0055]
Thereafter, it is determined whether or not the processing for instructing the playback method for all the
[0056]
As shown on the right side of the flowchart in FIG. 9, among the above-described three processing processes in the
[0057]
In addition, in order to reduce the total number of reproductions of the content data in each terminal 102 as the logic for determining the distribution priority for the distribution
[0058]
For example, in order to shorten the cache period of music data cached in the
[0059]
Alternatively, in order to make the playback interval of the same music data in each terminal 102 as long as possible, the most recent playback date and time of each music data is represented as the distribution prioritization information attached to the distribution request from each terminal 102 As for each terminal 102, the oldest playback date and time representing the oldest latest playback date and time among the latest playback date and time (that is, the latest playback date and time data 121d in the management table 121 of FIG. 3 provided in each terminal 102) is used. The distribution priority order of the
[0060]
Alternatively, in order to reduce the number of times of reproduction of individual music data of each terminal 102 as much as possible, the number of times of reproduction of each music data (that is, as the distribution prioritization information attached to the distribution request from each terminal 102) (that is, In the management table 121 of FIG. 3 provided in each terminal, the maximum number of times of reproduction is extracted and used, and the number of times of the maximum number of times of reproduction for each terminal 102 is obtained. The distribution priority order of the
[0061]
Alternatively, the distribution priority order of the
[0062]
In addition, as the distribution prioritization information attached to the distribution request from each terminal 102, one to a plurality of data (for example, total
Furthermore, in addition to the various data as described above, it is possible to register arbitrary data that can determine the distribution priority of the
[0063]
On the other hand, the terminal 102 (that is, the
[0064]
FIG. 10 is a flowchart for explaining an example of a processing process in the
[0065]
The terminal ID extracted as the preparation for transmission and the desired data in the management table 121 are attached to the distribution request as the distribution prioritization information and transmitted to the server 101 (step S202).
Thereafter, a waiting process is performed for waiting until an instruction response to the distribution request arrives from the server 101 (step S203). When the instruction response from the
[0066]
First, referring to an instruction response from the
[0067]
If it is determined that there is no free space for storing the music data in the cache memory 123 (YES in step S205), the
[0068]
In step S207, streaming distribution is connected to the
Thereafter, in the management table 121, the music data number (identification number for identifying the music data), the number of times of reproduction (data indicating one time reproduction), the cache date and time (cached) regarding the music data streamed and reproduced in step S207. Current date and time) and latest playback date and time (current date and time as latest playback date and time) are registered as music data number 121a,
[0069]
On the other hand, when the distribution is not permitted and the instruction for internal reproduction is given (NO in step S204), the music data with the smallest number of reproductions is selected with reference to the
Until the reproduction of the music data with the smallest number of reproductions is completed, the data is sequentially read from the
[0070]
Thereafter, “1” is added to the
In S212, it is determined whether or not the user continues to play back, and if playback is continuously requested (YES in Step S212), the process returns to Step S201, and the processes in Steps S202 to S211 are performed. If the process is to be repeated repeatedly (NO in step S212), the process is terminated.
[0071]
As shown on the right side of the flowchart of FIG. 10, among the above-described three processing processes in the terminal 102, a waiting process for sending a distribution request to the server 1) and waiting for an instruction response from the server is performed in steps S201 to S203. In each step, the reproduction method specifying process for specifying the reproduction method for reproducing the music data in 2) is performed in each step in steps S204 to S206 and S209, and the reproduction process for reproducing the music data in 3) is performed. This corresponds to each of steps S207, S208 and S210 to S212.
[0072]
Note that in step S206 of the flowchart shown in FIG. 10, the
[0073]
For example, in order to shorten the cache period of the cached music data as much as possible, the cache date and time indicating the cached date and time (that is, each terminal is provided as the deletion priority of music data to be deleted from the cache memory 123). The cache date /
[0074]
Alternatively, as the deletion priority order of music data to be deleted from the
[0075]
In addition, as the deletion priority of music data to be deleted from the
Furthermore, in addition to the various types of management data as described above, it is possible to register arbitrary data that can determine the deletion priority of music data to be deleted from the
[0076]
Note that, in steps S209 to S211 of the flowchart shown in FIG. 10, the
[0077]
For example, in order to make the playback interval of each cached music data as long as possible, the latest playback indicating the most recently played date and time as the playback priority for internally playing the music data cached from the
[0078]
Alternatively, the music data cached from the
[0079]
Further, among the various management data stored in the management table 121, a plurality of management data (for example, the
Furthermore, in addition to the various types of management data as described above, it is possible to register in the management table 121 any data that can determine the playback priority of music data that is internally played from the
[0080]
In addition, as a distribution system for streaming distribution of music data shown in the above-described embodiment, when the internal playback is instructed from the
[0081]
Furthermore, in the above-described distribution system for distributing music data, the channel that can be selected by the user is composed of only one channel, and when the user turns on the terminal 102, music is always transmitted. Has been described, for example, a plurality of
[0082]
Further, as the network applied to the above-described distribution system, the case where the
[0083]
【The invention's effect】
The content distribution server, content receiving terminal, and content distribution system according to the present invention can achieve the following effects.
That is, according to the content distribution server according to the present invention, various management data related to content data that has been distributed and cached in the past is transmitted from a content receiving terminal that transmits a distribution request for requesting distribution of content data to a distribution priority order. By receiving as distribution prioritization information to be attached, based on the received distribution prioritization information, the distribution priority of the content receiving terminal to be subjected to streaming distribution is set, and streaming is performed from the content distribution server. Depending on the number of terminals that can perform distribution and the distribution priority, it is possible to determine a content receiving terminal that performs streaming distribution from the content distribution server. Therefore, it is possible to perform streaming distribution of new content data fairly and equally to all the content receiving terminals that use the streaming distribution service, and at the same time, the network transfer data amount accompanying the distribution of content data is effective. Can be controlled automatically.
[0084]
Further, according to the content receiving terminal according to the present invention, the content data received from the content distribution server is cached in a cache memory, so that the distribution request attached to the content distribution server is attached to the distribution request. Even when there is no instruction response indicating the distribution of the content data from the content distribution server, it is possible to select the content data previously cached in the cache memory and efficiently perform internal reproduction. Therefore, not only can the streaming delivery of fresh content data be received from the content delivery server by the delivery request, but also the case where the streaming delivery cannot be received from the content delivery server is cached. The content data can be reproduced internally, and the user can always view fresh content data. Furthermore, it is possible to effectively control the amount of network transfer data that accompanies the distribution of content data.
[0085]
Therefore, according to the content distribution system according to the present invention configured by connecting the content distribution server and the content receiving terminal to a network, the content distribution server regardless of the total number of terminals of the content receiving terminal. Content data can be streamed within the allowable range of the network capacity of the network interposed between the content receiving terminal and the content receiving terminal. Fresh content data can be distributed fairly and fairly to all the content receiving terminals that use.
[Brief description of the drawings]
FIG. 1 is a network configuration diagram showing a concept of a network configuration in a music distribution system which is an example of an embodiment of a content distribution system according to the present invention.
2 is a functional block diagram showing an example of a functional block configuration in the content distribution server according to the present invention of FIG. 1. FIG.
3 is a functional block diagram showing an example of a functional block configuration in the content receiving terminal according to the present invention of FIG. 1. FIG.
4 is a memory configuration diagram showing an example of management information stored in a management table built in the terminal shown in FIG. 3; FIG.
5 shows an example of a state in which content receiving terminals are registered in the distribution request list built in the content distribution server shown in FIG. 2 in a certain distribution request acceptance period in the order in which distribution requests are made. It is a memory block diagram.
FIG. 6 shows distribution priority for content receiving terminals registered in the distribution request list shown in FIG. 5 after rearranging the distribution priority of the content receiving terminals regarding the content data to be distributed after the end of the distribution request acceptance period. It is a memory block diagram which shows an example of an order | rank.
FIG. 7 shows a relationship between a content receiving terminal instructing distribution from the content distribution server and a content receiving terminal instructing internal reproduction according to the number of terminals of the distribution request received by the content distribution server every certain distribution request reception period. It is the schematic diagram showing an example of the time flow in which each number changes.
8 is a sequence chart showing a communication flow on the Internet when a terminal having a distribution request to the server makes a distribution request in the reception period of the distribution request reception period of FIG.
FIG. 9 is a flowchart for explaining an example of a processing process in the server.
FIG. 10 is a flowchart for explaining an example of a processing process in the terminal.
[Explanation of symbols]
101: Content distribution server (music distribution server, server), 102, 102 -1 ~ 102 -13 ... Client terminal (content receiving terminal, terminal) 103 ...
Claims (8)
所定期間単位毎に受付けた前記配信要求に添付されてくる当該コンテンツ受信端末内のキャッシュメモリに記録された配信済みコンテンツデータのリストと、当該リストのコンテンツ毎のキャッシュ日時、又は、再生回数、最新再生日時のうちの1つ又は複数より成るコンテンツ配信優先順位付け情報に基づいて、予め設定した選定基準により受付けたコンテンツ受信端末についてコンテンツデータの配信優先順位を決定し、
決定された前記配信優先順位に応じて、予め定められた配信可能端末数に該当する前記配信優先順位が高いコンテンツ受信端末に対してコンテンツデータのストリーミング配信を行うことを特徴とするコンテンツ配信サーバ。In a content distribution server that accumulates content data to be distributed to a content receiving terminal, accepts a distribution request for content data transmitted from each content receiving terminal, and distributes the content data by streaming.
A list of distributed content data recorded in the cache memory in the content receiving terminal attached to the distribution request received every predetermined period unit, and the cache date and time or the number of times of reproduction for each content in the list based on one or content delivery prioritization information comprising a plurality of reproduction time, to determine the distribution priority of the content data for the content receiving terminal received by the selection criteria set in advance,
A content distribution server for performing streaming distribution of content data to a content receiving terminal having a high distribution priority corresponding to a predetermined number of distributable terminals according to the determined distribution priority .
前記配信サーバに対し、コンテンツ配信要求を、前記キャッシュメモリにキャッシュされている各コンテンツデータのリストと、当該リストのコンテンツ毎のキャッシュ日時、又は、再生回数、最新再生日時のうちの1つ又は複数より成るコンテンツ配信優先順位付け情報と共に送信し、
該配信要求における前記コンテンツ配信順位付け情報に基づいて決定された配信優先順位情報に従った前記配信サーバからの指示応答が、コンテンツデータのストリーミング配信のときは配信されたコンテンツデータを再生し、キャッシュメモリによる内部再生の指示のときは前記キャッシュされている所定のコンテンツデータを読み出して内部再生することを特徴とするコンテンツ受信端末。In the content receiving terminal that caches the content data distributed from the content distribution server in the cache memory each time and decrypts and reproduces each cached content data,
One or more of a list of content data cached in the cache memory and a cache date / time for each content in the list, or the number of times of reproduction and the latest reproduction date / time are sent to the distribution server. sent together with a more composed content delivery prioritization information,
Instruction response from the distribution server in accordance with the delivery priority information determined based on the content distribution ranking information definitive to the delivery request, when the streaming distribution of the content data to reproduce the distributed content data, A content receiving terminal characterized in that , when an internal reproduction instruction is issued by a cache memory, the cached predetermined content data is read and reproduced internally.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003000809A JP4107968B2 (en) | 2003-01-07 | 2003-01-07 | Content distribution server, content receiving terminal, and content distribution system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003000809A JP4107968B2 (en) | 2003-01-07 | 2003-01-07 | Content distribution server, content receiving terminal, and content distribution system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004212754A JP2004212754A (en) | 2004-07-29 |
JP4107968B2 true JP4107968B2 (en) | 2008-06-25 |
Family
ID=32818991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003000809A Expired - Fee Related JP4107968B2 (en) | 2003-01-07 | 2003-01-07 | Content distribution server, content receiving terminal, and content distribution system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4107968B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4835053B2 (en) | 2005-07-05 | 2011-12-14 | ソニー株式会社 | Content reproduction system, content provision method, content reproduction apparatus, content provision apparatus, content reproduction program, and content provision program |
JP5113233B2 (en) * | 2010-09-21 | 2013-01-09 | ヤフー株式会社 | Web content management apparatus and method |
KR101497325B1 (en) * | 2013-10-16 | 2015-03-04 | (주)컴버스테크 | System and method for processing virtual interview by division contents |
JP6140060B2 (en) * | 2013-11-26 | 2017-05-31 | 株式会社ピープル アンド モバイル ジャパン | Content providing system and content providing method |
CN112653636B (en) * | 2020-12-19 | 2022-09-20 | 珍岛信息技术(上海)股份有限公司 | Network data intelligent distribution service system |
-
2003
- 2003-01-07 JP JP2003000809A patent/JP4107968B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004212754A (en) | 2004-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0658055B1 (en) | Multimedia distribution over wide area networks | |
US9176955B2 (en) | Method and apparatus for sharing media files among network nodes | |
US7043558B2 (en) | Data communication apparatus and data communication method | |
US7293066B1 (en) | Methods and apparatus supporting access to stored data | |
KR100256016B1 (en) | Scheduling of real-time i/o in the presence of replication in a client-server environment | |
US7024485B2 (en) | System for controlling and enforcing playback restrictions for a media file by splitting the media file into usable and unusable portions for playback | |
JP2007080161A (en) | Data distribution system, partial content storing server, method and program for increasing response speed | |
JP2003167813A (en) | Stream data storing and distributing method and system | |
US8640178B2 (en) | Server, content providing apparatus, content receiving apparatus, content providing method, content receiving method, and program | |
EP1398969A1 (en) | Video distributing system and video distributing method | |
US20080291926A1 (en) | Distributed content storage system, content storage method, node device, and node processing program | |
US20080163303A1 (en) | Video playback device for channel browsing | |
JP4343978B2 (en) | Data management apparatus and program | |
JP2014042124A (en) | Content distribution system and content distribution method | |
JP4107968B2 (en) | Content distribution server, content receiving terminal, and content distribution system | |
WO2010024228A1 (en) | Content distribution system | |
KR101165903B1 (en) | Method for generating data enabling the search for content, system, terminal, and server complements to implement the method | |
JP4203528B1 (en) | Video data acquisition method, video data acquisition system, video reception device, and video distribution device | |
JP2013045273A (en) | Cache server, method for determining cache object, content distribution system, and cache object determination program | |
KR101858247B1 (en) | System and method for providing content using integrated identification | |
JP5560545B2 (en) | Distribution system and distribution method | |
JP2004030423A (en) | Content distribution controller and program | |
EP1992145B1 (en) | Managing playlists | |
KR101137248B1 (en) | System and Method for Multimedia Streaming of Distributed Contents Using Mobile Agent | |
JP2011070567A (en) | Content rearrangement system, content distribution system, content rearrangement method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050810 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20060913 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071009 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080212 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080306 |
|
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: 20080401 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080401 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110411 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120411 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120411 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130411 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130411 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |