(57)【要約】【課題】分散型マルチメディアサーバシステムから複数のコンテンツ（の一部）を連続して再生することができる技術を提供する。【解決手段】分割マルチメディアサーバシステムは、ネットワークまたはバスシステムによって互いに接続されたバッファサーバ２１とディスクサーバを有する。バッファサーバ２１は、端末から受信したマルチメディア情報を分割し、分割した分割マルチメディア情報を複数個のディスクサーバに循環的に転送すると共に、フレーム番号−ＤＳ番号対照表７１を記憶する。ディスクサーバはバッファサーバから転送された分割マルチメディア情報を記憶装置に蓄積する。バッファサーバ２１は、端末からの再生要求８５とフレーム番号−ＤＳ番号対照表７１に基づいて、プレイリスト８１を作成し、プレイリスト８１に基づいて、ディスクサーバから分割マルチメディア情報の転送を受け、端末に配信する。【選択図】図５
2008311948.tif 000002
【特許請求の範囲】
【請求項１】
分割したマルチメディア情報である分割マルチメディア情報を分割した単位で蓄積し、端末からの再生要求に応じて、要求されたマルチメディア情報を配信する分散型マルチメディアサーバシステムであって、
ネットワークまたはバスシステムによって互いに接続された第１のサーバと第２のサーバを有し、
第１のサーバは、端末から受信したマルチメディア情報を分割し、分割した分割マルチメディア情報を複数個の第２のサーバに循環的に転送すると共に、分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送した第２のサーバを特定する情報の対応関係を記憶し、
第２のサーバは、第１のサーバから転送された分割マルチメディア情報を記憶装置に蓄積する、
ことを特徴とする分散型マルチメディアサーバシステム。
【請求項２】
請求項１に記載の分散型マルチメディアサーバシステムであって、
第１のサーバは、端末からの再生要求と、記憶している前記対応関係に基づいて、再生する分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送した第２のサーバを特定する情報の関係を記述したプレイリストを作成し、作成したプレイリストに基づいて、第２のサーバから分割マルチメディア情報の転送を受け、端末に配信し、
第２のサーバは、記憶装置に蓄積された分割マルチメディア情報を読み込み、第１のサーバに転送する、
ことを特徴とする分散型マルチメディアサーバシステム。
【請求項３】
請求項２に記載の分散型マルチメディアサーバシステムであって、
第１のサーバは、前記プレイリストに基づいて、分割マルチメディア情報の再生要求を第２のサーバに送信し、
前記分割マルチメディア情報の再生要求を受信した第２のサーバは、当該分割マルチメディア情報を記憶装置から読み込み、第１のサーバに転送する、
ことを特徴とする分散型マルチメディアサーバシステム。
【請求項４】
請求項２または３に記載の分散型マルチメディアサーバシステムであって、
第１のサーバは、前記プレイリストに記述された順番に、第２のサーバから分割マルチメディア情報の転送を受け、端末に配信することを特徴とする分散型マルチメディアサーバシステム。
【請求項５】
請求項２ないし４のうちいずれか１項に記載の分散型マルチメディアサーバシステムであって、
第１のサーバは、前記プレイリストを繰り返し用いて、第２のサーバから分割マルチメディア情報の転送を繰り返し受け、端末に配信することを特徴とする分散型マルチメディアサーバシステム。
【請求項６】
請求項１ないし５のうちいずれか１項に記載の分散型マルチメディアサーバシステムであって、
第１のサーバは、マルチメディア情報を特定する情報毎に分割マルチメディア情報を特定する情報と第２のサーバを特定する情報を記述した対照表を、前記対応関係として記憶することを特徴とする分散型マルチメディアサーバシステム。
【請求項７】
請求項１ないし６のうちいずれか１項に記載の分散型マルチメディアサーバシステムであって、
第１のサーバは、端末から受信したマルチメディア情報をフレーム毎に分割し、フレーム毎に分割した分割マルチメディア情報を複数個の第２のサーバに循環的に転送することを特徴とする分散型マルチメディアサーバシステム。
【請求項８】
請求項１ないし７のうちいずれか１項に記載の分散型マルチメディアサーバシステムであって、
第１のサーバと第２のサーバを接続する前記ネットワークまたはバスシステムは遠隔ダイレクトメモリアクセス機能を有し、
第１のサーバと第２のサーバ間の分割マルチメディア情報の転送は、前記ネットワークまたはバスシステムによる遠隔ダイレクトメモリアクセス機能により行われる、
ことを特徴とする分散型マルチメディアサーバシステム。
【請求項９】
請求項１ないし８のうちいずれか１項に記載の分散型マルチメディアサーバシステムであって、
第１のサーバを複数個有することを特徴とする分散型マルチメディアサーバシステム。
【請求項１０】
請求項９に記載の分散型マルチメディアサーバシステムであって、
複数個の第１のサーバそれぞれが、他の第１のサーバが記憶する前記対応関係を利用することを特徴とする分散型マルチメディアサーバシステム。
【請求項１１】
分割したマルチメディア情報である分割マルチメディア情報を分割した単位で蓄積し、端末からの再生要求に応じて、要求されたマルチメディア情報を配信する分散型マルチメディアサーバシステムにおけるバッファサーバであって、
バッファサーバから転送された分割マルチメディア情報を記憶装置に蓄積する複数個のディスクサーバとネットワークまたはバスシステムによって接続され、
端末から受信したマルチメディア情報を分割し、分割した分割マルチメディア情報を複数個のディスクサーバに循環的に転送すると共に、分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送したディスクサーバを特定する情報の対応関係を記憶することを特徴とするバッファサーバ。
【請求項１２】
請求項１１に記載のバッファサーバであって、
端末からの再生要求と、記憶している前記対応関係に基づいて、再生する分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送したディスクサーバを特定する情報の関係を記述したプレイリストを作成し、作成したプレイリストに基づいて、ディスクサーバから分割マルチメディア情報の転送を受け、端末に配信することを特徴とするバッファサーバ。
【請求項１３】
分割したマルチメディア情報である分割マルチメディア情報を分割した単位で蓄積し、端末からの再生要求に応じて、要求されたマルチメディア情報を配信する分散型マルチメディアサーバシステムにおけるバッファサーバの分割マルチメディア情報蓄積配信方法であって、
前記バッファサーバは、バッファサーバから転送される分割マルチメディア情報を記憶装置に蓄積する複数個のディスクサーバとネットワークまたはバスシステムによって接続され、
端末から受信したマルチメディア情報を分割し、分割した分割マルチメディア情報を複数個のディスクサーバに循環的に転送すると共に、分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送したディスクサーバを特定する情報の対応関係を記憶することを特徴とするバッファサーバの分割マルチメディア情報蓄積配信方法。
【請求項１４】
請求項１３に記載のバッファサーバの分割マルチメディア情報蓄積配信方法であって、
端末からの再生要求と、記憶している前記対応関係に基づいて、再生する分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送したディスクサーバを特定する情報の関係を記述したプレイリストを作成し、作成したプレイリストに基づいて、ディスクサーバから分割マルチメディア情報の転送を受け、端末に配信することを特徴とするバッファサーバの分割マルチメディア情報蓄積配信方法。
【請求項１５】
請求項１３または１４に記載のバッファサーバの分割マルチメディア情報蓄積配信方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末からの要求に応じて、要求されたマルチメディア情報を端末に配信、または、端末から送信されたマルチメディア情報を蓄積することが可能な分散型マルチメディアサーバシステム、そのためのバッファサーバ、その分割マルチメディア情報蓄積配信方法、およびそのプログラムに関する。
【背景技術】
【０００２】
従来の分散型マルチメディアサーバシステムの構成例として、特許文献１等に記載されたものがある。特許文献１に記載された分散型マルチメディアサーバシステムは、通信サーバモジュール、複数個の蓄積サーバモジュールおよびローカルエリアネットワークを有している。マルチメディア情報の配信は次の手順で行われる。通信サーバモジュールが端末からの読み取り要求を受信し、要求されたマルチメディア情報の読み取り要求をローカルエリアネットワークを介して蓄積サーバモジュールに対しで送信する。この読み出し要求を受信した蓄積サーバモジュールは、要求されたマルチメディア情報をローカルエリアネットワークを介して通信サーバモジュールに送信する。それを受信した通信サーバモジュールは、マルチメディア情報をくみ上げ、配信用のネットワークを通じて端末へ送信する。同様に、通信サーバモジュールはマルチメディア情報の読み出し要求を他の蓄積サーバモジュールに対して送信し、蓄積サーバモジュールは要求されたマルチメディア情報を通信サーバモジュールに送信し、これを繰り返す。
【０００３】
非特許文献１、２（執筆者に本発明者の一部が含まれている）には、複数のバッファサーバと複数のディスクサーバをＩｎｆｉｎｉＢａｎｄ（非特許文献３参照）を用いた相互結合網で接続した分散型マルチメディアサーバシステムが記載されている。この分散型マルチメディアサーバシステムでは、マルチメディア情報の配信は次の手順で行われる。送信開始メッセージを受信したバッファサーバは先頭の映像フレームを格納しているディスクサーバに対して読み出し要求メッセージを送信する。読み出し要求を受信したディスクサーバはＲＡＩＤ（Redundant Array of Inexpensive Disk）から映像フレームを読み出し、ディスクサーバ内のバッファメモリにその映像フレームを格納し、バッファサーバに対して映像フレームを格納しているメモリ情報を応答メッセージにのせて通知する。以降、ディスクサーバは、疑似リアルタイムモジュールの機能を使って一定時間間隔で、自律的にＲＡＩＤからデータ読み出しを実行する。バッファサーバは、ディスクサーバから送られてきたメモリ情報を元に映像フレームをＲＤＭＡ（遠隔ダイレクトメモリアクセス）を使ってディスクサーバから読み出す。この処理と並行して、疑似リアルタイム制御モジュールの機能を使って、一定時間間隔で、映像フレームをパケット化して再生用の端末に送信する。疑似リアルタイム制御モジュールの機能により、一定時間後に、次の映像フレームが格納されているディスクサーバに対して読み出しの要求を行う。これを繰り返す。
【０００４】
【特許文献１】特許第３４６１２７８号公報
【非特許文献１】小倉毅外５名、「ＩｎｆｉｎｉＢａｎｄを用いたＰＣクラスタ型高速ストリームサーバアーキテクチャ」、信学技報、Ｖｏｌ．１０５、Ｎｏ．８６、ｐｐ．３３−３６、発表日２００５／５／２７
【非特許文献２】君山博之外５名、「ＰＣクラスタを用いたＩＰネットワークベースの非圧縮ＨＤＴＶ１０多重ストリームサーバ」、マルチメディア，分散，協調とモバイル（ＤＩＣＯＭＯ２００５）シンポジュウム予稿集、ｐｐ．７９７−８００（巻数、号なし）、発表日２００５／７／８
【非特許文献３】ＩＮＦＩＮＩＢＡＮＤ（ＳＭ）  ＴＲＡＤＥ  ＡＳＳＯＣＩＡＴＩＯＮ、[online]、［平成１７年５月６日検索］、インターネット＜http://www.infinibandta.org/events/past/it_roadshow/fabric_tco_ibm.pdf＞
【非特許文献４】Ｍｙｒｉｎｅｔ  Ｏｖｅｒｖｉｅｗ、[online]、［平成１７年５月６日検索］、インターネット＜http://www.myrinet.com/myrinet/overview/＞
【非特許文献５】独立行政法人 産業技術総合研究所 先端情報計算センター、“ＡＩＳＴスーパークラスタ”、[online]、［平成１７年５月６日検索］、インターネット＜http://unit.aist.go.jp/tacc/supercluster.html＞
【非特許文献６】伊能英男、“1.485Gbpsハイビジョン放送用インタフェースの設計事例”、デザインウェーブマガジン、２００４年３月号、ｐｐ．６８−７４
【非特許文献７】宇野潤三訳、“ＳＭＰＴＥデジタル規格集”、ｐｐ．１３９−１５５、１９９８年９月
【発明の開示】
【発明が解決しようとする課題】
【０００５】
非特許文献１、２に記載されるような分散型マルチメディアサーバシステムでは、映像フレームまたはセグメント等の決まった単位に映像を分割し、蓄積サーバモジュールに接続されているＲＡＩＤに格納する方式をとる。ユーザからの映像の「部分に対する再生リクエストは、どの映像フレーム（またはセグメント。以下、単にフレームとする）から、どのフレームへ、というように行われるのが一般的である。このリクエストに応えるためには、どの蓄積サーバモジュールに接続されているＲＡＩＤにリクエストされたフレームが格納されているかを、通信サーバモジュールで判定し、その蓄積サーバモジュールに読み出し要求を実行する必要がある。
【０００６】
ところが、ユーザからの再生リクエストにおいて、フレームを指定する方法は、人間の直感に判りやすく、時分秒フレーム番号の全ての情報が判るタイムコードを使うことが一般的である。タイムコードはユーザが映像の撮影時や編集時に勝手に付与するものであるため、連続性が全く保障されていない。そのため、リクエストされたフレームがどの蓄積サーバモジュールに格納されているかを計算によって求めることが出来ず、ＳＤＩフォーマットであれば、フレームデータの補助データ領域中に書かれているタイムコード情報（非特許文献６および７参照）をＶＴＲのように先頭から順に検索し、該当フレームを探し出し再生することとなり、その結果、使い勝手の悪いシステムとなってしまうという問題があった。
【０００７】
本発明の目的は、分散型マルチメディアサーバシステムに対して、映像を含むマルチメディア情報の頭出し速度を早め、その一部の再生、複数の映像の連続再生、複数の映像の一部の連続再生等を行うことができる技術を提供することにある。また、これらの繰り返し再生を行うことができる技術を提供することにある。
【課題を解決するための手段】
【０００８】
本明細書において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
【０００９】
第１の発明は、分割したマルチメディア情報である分割マルチメディア情報を分割した単位で蓄積し、端末からの再生要求に応じて、要求されたマルチメディア情報を配信する分散型マルチメディアサーバシステムであって、ネットワークまたはバスシステムによって互いに接続された第１のサーバと第２のサーバを有し、第１のサーバは、端末から受信したマルチメディア情報を分割し、分割した分割マルチメディア情報を複数個の第２のサーバに循環的に転送すると共に、分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送した第２のサーバを特定する情報の対応関係を記憶し、第２のサーバは、第１のサーバから転送された分割マルチメディア情報を記憶装置に蓄積する、ことを特徴とする。
【００１０】
第２の発明は、第１の発明において、第１のサーバは、端末からの再生要求と、記憶している前記対応関係に基づいて、再生する分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送した第２のサーバを特定する情報の関係を記述したプレイリストを作成し、作成したプレイリストに基づいて、第２のサーバから分割マルチメディア情報の転送を受け、端末に配信し、第２のサーバは、記憶装置に蓄積された分割マルチメディア情報を読み込み、第１のサーバに転送する、ことを特徴とする。
【００１１】
第３の発明は、第２の発明において、第１のサーバは、前記プレイリストに基づいて、分割マルチメディア情報の再生要求を第２のサーバに送信し、前記分割マルチメディア情報の再生要求を受信した第２のサーバは、当該分割マルチメディア情報を記憶装置から読み込み、第１のサーバに転送する、ことを特徴とする。
【００１２】
第４の発明は、第２または第３の発明において、第１のサーバは、前記プレイリストに記述された順番に、第２のサーバから分割マルチメディア情報の転送を受け、端末に配信することを特徴とする。
【００１３】
第５の発明は、第２〜第４の発明において、第１のサーバは、前記プレイリストを繰り返し用いて、第２のサーバから分割マルチメディア情報の転送を繰り返し受け、端末に配信することを特徴とする。
【００１４】
第６の発明は、第１〜第５の発明において、第１のサーバは、マルチメディア情報を特定する情報毎に分割マルチメディア情報を特定する情報と第２のサーバを特定する情報を記述した対照表を、前記対応関係として記憶することを特徴とする。
【００１５】
第７の発明は、第１〜第６の発明において、第１のサーバは、端末から受信したマルチメディア情報をフレーム毎に分割し、フレーム毎に分割した分割マルチメディア情報を複数個の第２のサーバに循環的に転送することを特徴とする。
【００１６】
第８の発明は、第１〜第７の発明において、第１のサーバと第２のサーバを接続する前記ネットワークまたはバスシステムは遠隔ダイレクトメモリアクセス機能を有し、第１のサーバと第２のサーバ間の分割マルチメディア情報の転送は、前記ネットワークまたはバスシステムによる遠隔ダイレクトメモリアクセス機能により行われる、ことを特徴とする。
【００１７】
第９の発明は、第１〜第８の発明において、第１のサーバを複数個有することを特徴とする。
【００１８】
第１０の発明は、第９の発明において、複数個の第１のサーバそれぞれが、他の第１のサーバが記憶する前記対応関係を利用することを特徴とする。
【００１９】
第１１の発明は、分割したマルチメディア情報である分割マルチメディア情報を分割した単位で蓄積し、端末からの再生要求に応じて、要求されたマルチメディア情報を配信する分散型マルチメディアサーバシステムにおけるバッファサーバであって、バッファサーバから転送された分割マルチメディア情報を記憶装置に蓄積する複数個のディスクサーバとネットワークまたはバスシステムによって接続され、端末から受信したマルチメディア情報を分割し、分割した分割マルチメディア情報を複数個のディスクサーバに循環的に転送すると共に、分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送したディスクサーバを特定する情報の対応関係を記憶することを特徴とする。
【００２０】
第１２の発明は、第１１の発明において、端末からの再生要求と、記憶している前記対応関係に基づいて、再生する分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送したディスクサーバを特定する情報の関係を記述したプレイリストを作成し、作成したプレイリストに基づいて、ディスクサーバから分割マルチメディア情報の転送を受け、端末に配信することを特徴とする。
【００２１】
第１３の発明は、分割したマルチメディア情報である分割マルチメディア情報を分割した単位で蓄積し、端末からの再生要求に応じて、要求されたマルチメディア情報を配信する分散型マルチメディアサーバシステムにおけるバッファサーバの分割マルチメディア情報蓄積配信方法であって、前記バッファサーバは、バッファサーバから転送される分割マルチメディア情報を記憶装置に蓄積する複数個のディスクサーバとネットワークまたはバスシステムによって接続され、端末から受信したマルチメディア情報を分割し、分割した分割マルチメディア情報を複数個のディスクサーバに循環的に転送すると共に、分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送したディスクサーバを特定する情報の対応関係を記憶することを特徴とする。
【００２２】
第１４の発明は、第１３の発明において、端末からの再生要求と、記憶している前記対応関係に基づいて、再生する分割マルチメディア情報を特定する情報とその分割マルチメディア情報を転送したディスクサーバを特定する情報の関係を記述したプレイリストを作成し、作成したプレイリストに基づいて、ディスクサーバから分割マルチメディア情報の転送を受け、端末に配信することを特徴とする。
【００２３】
第１５の発明は、第１３または第１４の発明のバッファサーバの分割マルチメディア情報蓄積配信方法をコンピュータに実行させるためのプログラムである。
【発明の効果】
【００２４】
本発明により、分散型マルチメディアサーバシステムから、コンテンツの一部の再生、複数のコンテンツの連続再生、複数のコンテンツの一部の連続再生等を行うことができる。また、これらの繰り返し再生を行うことができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明を実施例を用いて詳細に説明する。なお、各図において同じ機能を有するものには同じ符号を付け、重複した説明は省略する。
【００２６】
図１は、本発明の実施例の分散型マルチメディアサーバシステムを有する全体のシステムを示す図である。図１において、１０は分散型マルチメディアサーバシステムであり、１１、１２はユーザが操作する端末であり、６１は配信用ネットワークである。図には端末を２個示しているが、何個でもよい。分散型マルチメディアサーバシステム１０は、バッファサーバ（第１のサーバ）とディスクサーバ（第２のサーバ）と記憶装置を備える。すなわち、分散型マルチメディアサーバシステム１０は、バッファサーバ２１（ＢＳ１）、バッファサーバ２２（ＢＳ２）、バッファサーバ２３（ＢＳ３）、…と、ディスクサーバ３１（ＤＳ１）、ディスクサーバ３２（ＤＳ２）、ディスクサーバ３３（ＤＳ３）、…と、ディスク４１、４２、４３、…とを有する。図１ではバッファサーバはＭ個、ディスクサーバはＮ個であるが、バッファサーバとディスクサーバの個数は何個でもよく、またバッファサーバとディスクサーバの個数が同じでも異なっていてもよい。５１はクラスタ間接続ネットワークであり、５２はローカルエリアネットワークである。
【００２７】
バッファサーバ２１、２２、２３、…は、端末１１、１２からの要求を受けて、マルチメディア情報の送信または受信を行うサーバである。ディスクサーバ３１、３２、３３、…は、マルチメディア情報を例えば１フレーム毎に分割して格納するディスク４１、４２、４３、…をそれぞれ持っており、ディスク４１、４２、４３、…からのマルチメディア情報の読み出し、またはディスク４１、４２、４３、…への書き込みを行う。なお、マルチメディア情報の分割の単位は１フレーム毎に限定されない。
【００２８】
バッファサーバ２１、２２、２３、…とディスクサーバ３１、３２、３３、…との間は、遠隔ダイレクトメモリアクセス機能が利用できるネットワークまたはバスシステムで接続されている。図１ではクラスタ間接続ネットワーク５１で接続されている。バッファサーバ２１、２２、２３、…とディスクサーバ３１、３２、３３、…とは、遠隔ダイレクトメモリアクセス機能を用いて、お互いのバッファメモリ中のデータを参照することが可能である。本実施例では、ネットワーク５１として並列計算機用のクラスタ間接続ネットワークを利用することを目的としているため、メッセージ通信の機能は備えているものとする。しかし、それが不可能な場合などの場合は、後述する分割マルチメディア情報再生要求やその応答などのメッセージの交換用に、例えば図１に示すようなローカルエリアネットワーク５２を利用することも可能である。この場合は、バッファサーバ２１、２２、２３、…とディスクサーバ３１、３２、３３、…は、遠隔ダイレクトメモリアクセス機能を用いることができるネットワーク５１と遠隔ダイレクトメモリアクセス機能を用いることができないローカルエリアネットワーク５２の両方で接続される。端末１１、１２と分散型マルチメディアサーバシステム１０の間はワイドエリアネットワークなどの配信用ネットワーク６１で結ばれている。
【００２９】
本実施例においてクラスタ間接続ネットワーク５１として使用する並列計算機を構成するためのクラスタ間接続ネットワークの具体例としては、例えば非特許文献３、非特許文献４、非特許文献５などがある。本実施例では非特許文献３のＩｎｆｉｎｉＢａｎｄを用いてクラスタ間接統ネットワークを構成する。このネットワークは、ハードウエアで通信の信頼性の確保を実現しているため、高速低負荷、低コストである反面、サーバ間のメッセージの送受信やメモリ共有に使う目的で設計されているため、映像データのようなストリームの転送機能は持ち合わせていない。しかし、この遠隔ダイレクトメモリアクセス機能と呼ばれるメモリ共有機能は、このクラスタ間接続ネットワークにより接続されたサーバのメモリを他のサーバから自由にアクセス出来るようにする機能で、ほとんどの処理をネットワークカードのハードウエアで実現しており、サーバのＣＰＵに負荷をほとんどかけずにデータの転送を行うことが出来る。さらに、この遠隔ダイレクトメモリアクセス機能では、相手側のアドレスを得てしまえば、相手側が何もしなくてもデータの転送が行えるため、例えば、ＴＣＰ／ＩＰを使った処理では相手側はsend()などのシステムコールを呼び出さなければならないが、この機能を使うことによって、余計な処理を相手側で行わずにデータの転送が実現出来る。このネットワークを使うことが出来れば、低負荷でデータの転送が出来るため、高価でハイスペックなサーバシステムを導入することなく、低コストなサーバにより高い転送能力を持つサーバシステムを構築することが出来、サーバと内部結合ネットワークのコストを削減することが出来る。
【００３０】
分散型マルチメディアサーバシステム１０は、例えばバッファサーバ２１（ＢＳ１）が端末１１から蓄積要求を受信した場合は、ＢＳ１は端末１１から配信用ネットワーク６１を介して受信したマルチメディア情報（コンテンツ）を例えば１フレーム毎に分割し、分割マルチメディア情報をクラスタ間接続ネットワーク５１を介して遠隔ダイレクトメモリアクセス機能によりディスクサーバ３１、３２、３３、…（ＤＳ１−ＤＳＮ）に循環的に転送する。すなわち、フレーム＃１をＤＳ１に転送し、フレーム＃２をＤＳ２に転送し、フレーム＃３をＤＳ３に転送し、…、フレーム＃ＮをＤＳＮに転送し、ＤＳ１にフレーム＃Ｎ＋１を転送し、ＤＳ２にフレーム＃Ｎ＋２を転送し、ＤＳ３にフレーム＃Ｎ＋３を転送し、これを繰り返す。ＤＳ１、ＤＳ２、ＤＳ３、…は転送された分割マルチメディア情報をそれぞれディスク４１、４２、４３、…に蓄積する。これにより、図１に示すように、ディスク４１にフレーム＃１、＃Ｎ＋１、…、ディスク４２にフレーム＃２、＃Ｎ＋２、…、ディスク４３にフレーム＃３、＃Ｎ＋３、…が蓄積される。
【００３１】
分散型マルチメディアサーバシステム１０は、例えばバッファサーバ２１（ＢＳ１）が端末１１から再生要求を受信した場合は、ＢＳ１はディスクサーバ３１、３２、３３、…（ＤＳ１〜ＤＳＮ）から循環的に分割マルチメディア情報をクラスタ間接続ネットワーク５１を介して遠隔ダイレクトメモリアクセス機能により転送を受け、転送されたマルチメディア情報を配信用ネットワーク６１を介して端末１１に配信する。すなわち、ＤＳ１がディスク４１からフレーム＃１を読み込みこれをＢＳ１に転送し、ＤＳ２がディスク４２からフレーム＃２を読み込みこれをＢＳ１に転送し、ＤＳ３がディスク４３からフレーム＃３を読み込みこれをＢＳ１に転送し、…、ＤＳＮがディスクからフレーム＃Ｎを読み込みこれをＢＳ１に転送し、ＤＳ１がディスク４１からフレーム＃Ｎ＋１を読み込みこれをＢＳ１に転送し、これを繰り返す。
【００３２】
この蓄積、再生の動作は非特許文献１、２に示す従来技術でも同様であるが、従来技術では、分散型マルチメディアサーバシステムから複数のコンテンツ（の一部）を繰り返し再生する場合、分散型マルチメディアサーバシステムから各コンテンツを取り出し、かつ、端末側からコンテンツの順序および繰り返しを制御する必要があった。
【００３３】
これに対して、本実施例の分散型マルチメディアサーバシステム１０では、各バッファサーバ２１、２２、２３、…（ＢＳ１〜ＢＳＮ）が、それぞれ、コンテンツ毎にフレーム番号とそのフレームが蓄積されているディスクサーバ３１、３２、３３、…（ＤＳ１〜ＤＳＮ）の対照表を保持し、各バッファサーバ２１、２２、２３、…（ＢＳ１〜ＢＳＮ）が、端末から再生要求を受けると、その再生要求と対照表に基づいて、プレイリストを作成し、そのプレイリストに基づいて、ディスクサーバから必要なフレームの転送を受け、それを端末に送信するので、端末側からコンテンツの順序および繰り返しを制御する必要がなく、複数のコンテンツ（の一部）を連続して、また繰り返し再生することができる。
【００３４】
図２は、本実施例の分散型マルチメディアサーバシステムに複数のコンテンツを蓄積した状態を示す図である。ここでは、説明を簡単にするために、バッファサーバは１個、ディスクサーバは３個とし、蓄積したコンテンツは３個とする。端末１１がバッファサーバ２１（ＢＳ１）にコンテンツＣ１蓄積要求を行い、バッファサーバ２１（ＢＳ１）は、端末１１から受信したコンテンツＣ１を１フレーム毎、ディスクサーバ３１〜３３（ＤＳ１〜ＤＳ３）に循環的に転送し、ディスクサーバ３１〜３３（ＤＳ１〜ＤＳ３）は転送されたフレームをディスク４１〜４３に蓄積する。その結果、ディスク４１にＣ１−＃１、Ｃ１−＃４、…が蓄積され、ディスク４２にＣ１−＃２、Ｃ１−＃５、…が蓄積され、ディスク４３にＣ１−＃３、Ｃ１−＃６、…が蓄積される。同様にして、コンテンツＣ２については、ディスク４１にＣ２−＃１、Ｃ２−＃４、…が蓄積され、ディスク４２にＣ２一＃２、Ｃ２−＃５、…が蓄積され、ディスク４３にＣ２−＃３、Ｃ２−＃６、…が蓄積される。同様にして、コンテンツＣ３については、ディスク４１にＣ３−＃１、Ｃ３−＃４、…が蓄積され、ディスク４２にＣ３−＃２、Ｃ３−＃５、…が蓄積され、ディスク４３にＣ３−＃３、Ｃ３−＃６、…が蓄積される。なお、本実施例では、３つのコンテンツのどれについても、ディスク４１から循環的に蓄積しているが、コンテンツにより他のディスクから循環的に蓄積するようにしてもよい。
【００３５】
図３は、各コンテンツがどのディスクサーバに蓄積されたのかを示す図である。コンテンツＣ１については、フレーム＃１がＤＳ１に、フレーム＃２がＤＳ２に、フレーム＃３がＤＳ３に蓄積される。コンテンツＣ２については、フレーム＃１がＤＳ１に、フレーム＃２がＤＳ２に、フレーム＃３がＤＳ３に蓄積される。コンテンツＣ３については、フレーム＃１がＤＳ１に、フレーム＃２がＤＳ２に、フレーム＃３がＤＳ３に蓄積される。
【００３６】
図４は、バッファサーバ２１（ＢＳ１）内にフレーム番号−ＤＳ番号対照表が作成されることを示す図である。７１はフレーム番号−ＤＳ番号対照表であり、バッファサーバ２１（ＢＳ１）内の記憶装置に記憶される。７２は、コンテンツ欄であり、コンテンツ名（一般的にはコンテンツを識別する情報）が記述される。７３はフレーム番号欄であり、フレーム番号（一般的には分割マルチメディア情報を識別する情報）が記述される。７４はディスクサーバ番号（ＤＳ番号）であり、フレーム番号欄７３に記述されたフレームが転送されたディスクサーバの番号（一般的にはディスクサーバを識別する情報）が記述される。
【００３７】
バッファサーバ２１（ＢＳ１）は、コンテンツＣ１をディスクサーバ３１〜３３（ＤＳ１〜ＤＳ３）に転送すると、フレーム番号−ＤＳ番号対照表７１に、７５に示すようにコンテンツＣ１の各フレームがどのＤＳに蓄積されたのかを登録する。また、ディスクサーバ２１（ＢＳ１）は、コンテンツＣ２をディスクサーバ３１〜３３（ＤＳ１〜ＤＳ３）に転送すると、フレーム番号−ＤＳ番号対照表７１に、７６に示すようにコンテンツＣ２の各フレームがどのＤＳに蓄積されたのかを登録する。また、ディスクサーバ２１（ＢＳ１）は、コンテンツＣ３をディスクサーバ３１〜３３（ＤＳ１〜ＤＳ３）に転送すると、フレーム番号−ＤＳ番号対照表７１に、７７に示すようにコンテンツＣ３の各フレームがどのＤＳに蓄積されたのかを登録する。
【００３８】
図５は、バッファサーバ内にプレイリストが作成されることを示す図である。８１はプレイリストである。プレイリスト８１は、再生するコンテンツのフレームを記述する再生コンテンツ欄８２と、再生コンテンツ欄８２に記述されたフレームが蓄積されたディスクサーバを記述する蓄積ＤＳ欄８３を有する。８５は端末から送信された再生要求である。
【００３９】
図５に示すように、バッファサーバ２１（ＢＳ１）は、端末から再生要求８５を受信する。再生要求８５には、再生したいコンテンツ名、フレーム番号が記述される。再生要求８５には複数のコンテンツ名、フレーム番号を記述することができ、また、繰り返し再生を要求する旨も記述することができる。また、多数の連続したフレームの再生を要求する場合に、再生要求８５に最初のフレーム番号と最後のフレーム番号と連続して再生する旨を記述するようにしてもよい。ここでは、再生要求８５が、コンテンツＣ１のフレーム＃２、＃３、コンテンツＣ３のフレーム＃１、＃２、コンテンツ２のフレーム＃１をこの順番で繰り返し再生することを要求するものであるとする。なお、一般的には、再生要求８５には、再生したい分割マルチメディア情報を特定する情報が記述される。
【００４０】
この再生要求８５を受けると、バッファサーバ２１（ＢＳ１）は、再生要求に記述されたフレームが転送され蓄積されたディスクサーバの番号を、フレーム番号−ＤＳ番号対照表７１を用いて検索し、図５に示すプレイリスト８１を作成する。すなわち、バッファサーバ２１（ＢＳ１）は、プレイリスト８１の再生コンテンツの欄に、再生要求８５が要求する順に、再生するコンテンツ名、フレーム番号を記述し、そのフレームが転送され蓄積された蓄積ＤＳを蓄積ＤＳ欄８３に記述する。バッファサーバ２１（ＢＳ１）は、プレイリスト８１に基づいて、プレイリスト８１の再生コンテンツ欄８２に記述されたコンテンツのフレームを、記述された順番に、蓄積ＤＳ欄８３に記述されたディスクサーバから転送を受け、端末に送信する。この場合の再生要求８５は、繰り返し再生を要求しているものであるから、バッファサーバ２１（ＢＳ１）は、プレイリスト８１に基づいて、繰り返しコンテンツを端末に送信する。
【００４１】
図６に、バッファサーバが端末に送信するコンテンツを示す。バッファサーバ２１（ＢＳ１）は、プレイリスト８１に基づいて、図６に示すように、コンテンツＣ１のフレーム＃２、＃３、コンテンツＣ３のフレーム＃１、＃２、コンテンツＣ２のフレーム＃１をこの順で、繰り返し、端末に送信する。
【００４２】
以上の説明から明らかなように、本実施例の分散型マルチメディアサーバシステム１０では、端末からの１回の再生要求により、コンテンツの一部の再生、複数のコンテンツの連続再生、複数のコンテンツの一部の連続再生等を行うことができ、また、それらの繰り返し再生を行うことができる。
【００４３】
図７は、図２に示す分散型マルチメディアサーバシステム１０のコンテンツＣ１の蓄積シーケンス図である。
【００４４】
まず、ユーザが端末を使って、コンテンツＣ１蓄積要求をバッファサーバ２１（ＢＳ１）に対して送信する（段階１０１）。それを受け取ったＢＳ１は、分割マルチメディア情報蓄積要求をＤＳ１に対して送信する（段階１０２）。この要求を受け取ったＤＳ１は、ＢＳ１から分割マルチメディア情報を受け取るための自モジュール内のバッファメモリに関する情報（メモリ情報）を応答として返す（段階１０３）。その応答を受信したＢＳ１は、コンテンツＣ１を受信し、分割するとともに（段階１０４）、分割したコンテンツＣ１のフレーム＃１を遠隔ダイレクトメモリアクセス機能を使って、分割マルチメディア情報蓄積要求に対する応答中に含まれているメモリ情報を元に、ＤＳ１内のバッファに転送する（段階１０５）。ＤＳ１は、転送されたコンテンツＣ１のフレーム＃１をディスク４１に蓄積する（段階１０６）。ＢＳ１は、フレーム番号−ＤＳ番号対照表７１にコンテンツＣ１、フレーム＃１、ＤＳ１を登録する（段階１０７）。
【００４５】
ＢＳ１は、分割マルチメディア情報蓄積要求をＤＳ２に対して送信する（段階１０８）。この要求を受け取ったＤＳ２は、ＢＳ１から分割マルチメディア情報を受け取るための自モジュール内のバッファメモリに関する情報（メモリ情報）を応答として返す（段階１０９）。その応答を受信したＢＳ１は、コンテンツＣ１を受信し、分割するとともに（段階１１０）、分割したコンテンツＣ１のフレーム＃２を遠隔ダイレクトメモリアクセス機能を使って、分割マルチメディア情報蓄積要求に対する応答中に含まれているメモリ情報を元に、ＤＳ２内のバッファに転送する（段階１１１）。ＤＳ２は、転送されたコンテンツＣ１のフレーム＃２をディスク４２に蓄積する（段階１１２）。ＢＳ１は、フレーム番号−ＤＳ番号対照表７１にコンテンツＣ１、フレーム＃２、ＤＳ２を登録する（段階１１３）。
【００４６】
ＢＳ１は、分割マルチメディア情報蓄積要求をＤＳ３に対して送信する（段階１１４）。この要求を受け取ったＤＳ３は、ＢＳ１から分割マルチメディア情報を受け取るための自モジュール内のバッファメモリに関する情報（メモリ情報）を応答として返す（段階１１５）。その応答を受信したＢＳ１は、コンテンツＣ１を受信し、分割するとともに（段階１１６）、分割したコンテンツＣ１のフレーム＃３を遠隔ダイレクトメモリアクセス機能を使って、分割マルチメディア情報蓄積要求に対する応答中に含まれているメモリ情報を元に、ＤＳ３内のバッファに転送する（段階１１７）。ＤＳ３は、転送されたコンテンツＣ１のフレーム＃３をディスク４３に蓄積する（段階１１８）。ＢＳ１は、フレーム番号−ＤＳ番号対照表７１にコンテンツＣ１、フレーム＃３、ＤＳ３を登録する（段階１１９）。
【００４７】
ＢＳ１は、分割マルチメディア情報蓄積要求をＤＳ１に対して送信し（段階１２０）、段階１０２〜１１９を繰り返し実行する。
【００４８】
このように、バッファサーバＢＳ１はディスクサーバＤＳ１、ＤＳ２、ＤＳ３に対して、この順番で循環的に、コンテンツＣ１を１フレーム毎転送し、ディスクサーバＤＳ１、ＤＳ２、ＤＳ３は転送されたコンテンツＣ１を１フレーム毎ディスクに記憶する。それにより、ディスク４１には、コンテンツＣ１のフレーム＃１、＃４、…が蓄積され、ディスク４２にはコンテンツＣ１のフレーム＃２、＃５、…が蓄積され、ディスク４３にはコンテンツＣ１のフレーム＃３、＃６、…が蓄積される。
【００４９】
また、バッファサーバＢＳ１は、ディスクサーバＤＳ１、ＤＳ２、ＤＳ３に対して、この順番で循環的に、コンテンツＣ１を１フレーム毎転送すると共に、フレーム番号−ＤＳ番号対照表７１に、７５に示すように、コンテンツ名、フレーム番号、ＤＳ番号を登録する。図７においては、バッファサーバＢＳ１は、１フレームをディスクサーバに転送するたびに、そのフレームをフレーム番号−ＤＳ番号対照表７１に登録しているが、どのフレームをどのディスクサーバに転送したのかを一時的に記憶しておき、１つのコンテンツの転送が全て終わった後、フレーム番号−ＤＳ番号対照表７１に一括して登録してもよい。
【００５０】
図７を用いて、コンテンツＣ１の蓄積について説明したが、コンテンツＣ２、コンテンツＣ３の蓄積も同様にして行うことができる。
【００５１】
図８および図９は、図２に示す分散型マルチメディアサーバシステム１０のコンテンツの再生シーケンス図である。
【００５２】
まず、ユーザが端末から再生要求８５を送信する（段階２０１）。再生要求８５は、前述のように、コンテンツＣ１のフレーム＃２、＃３、コンテンツＣ３のフレーム＃１、＃２、コンテンツ２のフレーム＃１をこの順番で繰り返し再生することを要求するものであるとする。その要求を受信したＢＳ１は、プレイリストを作成する（段階２０２）。
【００５３】
ＢＳ１は、プレイリストの最初の行に基づいて、コンテンツＣ１のフレーム＃２が格納されているディスク４２が接続されているＤＳ２に対して、Ｃ１−＃２再生要求（分割マルチメディア再生要求）を送信する（段階２０３）。その要求を受けたＤＳ２は、ディスク４２からＣ１−＃２をＤＳ２内のバッファメモリ中に読み込み（段階２０４）、そのバッファメモリのアドレスやメモリ中のデータのサイズなどこのバッファメモリに関する情報（メモリ情報）を応答として返す（段階２０５）。この情報を元に、ＢＳ１は、コンテンツＣ１のフレーム＃２を、遠隔ダイレクトメモリアクセス機能を使用することによってＤＳ２内から読み出し（段階２０６）、再生要求により指定された端末へ配信用ネットワーク６１を使用して送信する（段階２０７）。送信先は、最初の要求を発した端末でももちろん構わない。
【００５４】
ＢＳ１は、プレイリストの２番目の行に基づいて、コンテンツＣ１のフレーム＃３が格納されているディスク４３が接続されているＤＳ３に対して、Ｃ１−＃３再生要求を送信する（段階２０８）。その要求を受けたＤＳ３は、ディスク４３からＣ１−＃３をＤＳ３内のバッファメモリ中に読み込み（段階２０９）、そのバッファメモリのアドレスやメモリ中のデータのサイズなどこのバッファメモリに関する情報（メモリ情報）を応答として返す（段階２１０）。この情報を元に、ＢＳ１は、コンテンツＣ１のフレーム＃３を、遠隔ダイレクトメモリアクセス機能を使用することによってＤＳ３内から読み出し（段階２１１）、再生要求により指定された端末へ配信用ネットワーク６１を使用して送信する（段階２１２）。
【００５５】
ＢＳ１は、プレイリストの３番目の行に基づいて、コンテンツＣ３のフレーム＃１が格納されているディスク４１が接続されているＤＳ１に対して、Ｃ３−＃１再生要求を送信する（段階２１３）。その要求を受けたＤＳ１は、ディスク４１からＣ３−＃１をＤＳ１内のバッファメモリ中に読み込み（段階２１４）、そのバッファメモリのアドレスやメモリ中のデータのサイズなどこのバッファメモリに関する情報（メモリ情報）を応答として返す（段階２１５）。この情報を元に、ＢＳ１は、コンテンツＣ３のフレーム＃１を、遠隔ダイレクトメモリアクセス機能を使用することによってＤＳ１内から読み出し（段階２１６）、再生要求により指定された端末へ配信用ネットワーク６１を使用して送信する（段階２１７）。
【００５６】
ＢＳ１は、プレイリストの４番目の行に基づいて、コンテンツＣ３のフレーム＃２が格納されているディスク４２が接続されているＤＳ２に対して、Ｃ３−＃２再生要求を送信する（図９の段階２１８）。その要求を受けたＤＳ２は、ディスク４２からＣ３−＃２をＤＳ２内のバッファメモリ中に読み込み（段階２１９）、そのバッファメモリのアドレスやメモリ中のデータのサイズなどこのバッファメモリに関する情報（メモリ情報）を応答として返す（段階２２０）。この情報を元に、ＢＳ１は、コンテンツＣ３のフレーム＃２を、遠隔ダイレクトメモリアクセス機能を使用することによってＤＳ２内から読み出し（段階２２１）、再生要求により指定された端末へ配信用ネットワーク６１を使用して送信する（段階２２２）。
【００５７】
ＢＳ１は、プレイリストの５番目の行に基づいて、コンテンツＣ２のフレーム＃１が格納されているディスク４１が接続されているＤＳ１に対して、Ｃ２−＃１再生要求を送信する（段階２２３）。その要求を受けたＤＳ１は、ディスク４１からＣ２−＃１をＤＳ１内のバッファメモリ中に読み込み（段階２２４）、そのバッファメモリのアドレスやメモリ中のデータのサイズなどこのバッファメモリに関する情報〈メモリ情報）を応答として返す（段階２２５）。この情報を元に、ＢＳ１は、コンテンツＣ２のフレーム＃１を、遠隔ダイレクトメモリアクセス機能を使用することによってＤＳ１内から読み出し（段階２２６）、再生要求により指定された端末へ配信用ネットワーク６１を使用して送信する（段階２２７）。
【００５８】
再生要求８５は繰り返し再生を要求するものであるから、ＢＳ１は、プレイリストの最初の行に戻り、上記と同様にして、コンテンツＣ１のフレーム＃２、＃３、コンテンツＣ３のフレーム＃１、＃２、コンテンツ２のフレーム＃１の送信をこの順番で繰り返す。
【００５９】
図２に示す分散型マルチメディアサーバシステム１０はバッファサーバを１個しか有さないが、図１に示すように複数個のバッファサーバを有してもよい。その場合は、各バッファサーバが上記と同じように動作する。また、複数個のバッファサーバそれぞれが、他のバッファサーバが記憶するフレーム番号−ＤＳ番号対照表７１を利用できるようにしてもよい。例えば、各バッファサーバが自分のフレーム番号−ＤＳ番号対照表７１をクラスタ間接続ネットワーク５１またはローカルエリアネットワーク５２を介して他のバッファサーバに送信し、各バッファサーバが受信した他のバッファサーバのフレーム番号−ＤＳ番号対照表７１を記憶しておけば、他のバッファサーバにより蓄積されたマルチメディア情報を再生することができる。
【００６０】
本実施例では、各コンテンツのフレーム番号を連続としたが、もちろん、連続である必要はない。
【００６１】
以上説明した各サーバは、それぞれの機能、動作、段階を実現するための手段を有しており、それらの手段はコンピュータとプログラムによって構成することができ、そのプログラムは記憶媒体に記憶することができる。また、プログラムを用いる代わりに、その一部または全部をハードウエアで構成することもできる。
【００６２】
以上、本発明者によってなされた発明を、前記実施例に基づき具体的に説明したが、本発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【図面の簡単な説明】
【００６３】
【図１】実施例の分散型マルチメディアサーバシステムを有する全体のシステムを示す図である。
【図２】実施例の分散型マルチメディアサーバシステムに複数のコンテンツを蓄積した状態を示す図である。
【図３】各コンテンツがどのディスクサーバに蓄積されたのかの例を示す図である。
【図４】バッファサーバ内にフレーム番号−ＤＳ番号対照表が作成されることを示す図である。
【図５】バッファサーバ内にプレイリストが作成されることを示す図である。
【図６】バッファサーバが端末に送信するコンテンツの例を示す図である。
【図７】コンテンツの蓄積シーケンスの例を示す図である。
【図８】コンテンツの再生シーケンスの例を示す図（その１）である。
【図９】コンテンツの再生シーケンスの例を示す図（その２）である。
【符号の説明】
【００６４】
１０…分散型マルチメディアサーバシステム、１１、１２…端末、２１、２２，２３…バッファサーバ、３１、３２、３３…ディスクサーバ、４１、４２、４３…ディスク、５１…クラスタ間接続ネットワーク、５２…ローカルエリアネットワーク、６１…配信用ネットワーク、７１…フレーム番号−ＤＳ番号対照表、７２…コンテンツ欄、７３…フレーム番号欄、７４…ＤＳ番号欄、７５…コンテンツＣ１のフレーム番号とＤＳ番号、７６…コンテンツＣ２のフレーム番号とＤＳ番号、７７…コンテンツＣ３のフレーム番号とＤＳ番号、８１…プレイリスト、８２…再生コンテンツ欄、８３…蓄積ＤＳ欄、８５…再生要求
【図１】
2008311948.tif 000003
【図２】
2008311948.tif 000004
【図３】
2008311948.tif 000005
【図４】
2008311948.tif 000006
【図５】
2008311948.tif 000007
【図６】
2008311948.tif 000008
【図７】
2008311948.tif 000009
【図８】
2008311948.tif 000010
【図９】
2008311948.tif 000011