(57)【要約】【課題】  Ｐ２Ｐを用いた階層構造によるコンテンツ配信において、その階層構造の状態に応じた適切な制御を行うこと。【解決手段】  コンテンツデータを配信する配信装置と、配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、配信装置から配信されるコンテンツデータが端末装置の中継機能により順次下層へ中継されて複数の端末装置全てに配信されるコンテンツ配信システムにおいて、配信装置は、階層構造の階層レベルを取得する階層数取得手段と、取得した階層構造の階層レベルに応じてコンテンツデータの再生時刻を決定する再生時刻決定手段と、再生時刻決定手段が決定した再生時刻情報を含むコンテンツデータを端末装置へ送信する送信手段とを備え、端末装置は、配信されたコンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段を備える。【選択図】  図１０
2007086484.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおいて、
前記配信装置は、
前記階層構造の階層数を取得する階層数取得手段と、
取得した前記階層構造の最大階層数に応じて前記コンテンツデータの再生時刻を決定する再生時刻決定手段と、
前記再生時刻決定手段が決定した再生時刻情報を含む前記コンテンツデータを前記端末装置へ送信する送信手段とを備え、
前記端末装置は、
配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段を備え
たことを特徴とするコンテンツ配信システム。
【請求項２】
前記配信装置において、
前記送信手段は、前記コンテンツデータの種類に応じた複数の通信プロトコルにて前記コンテンツデータを送信し、
前記再生時刻決定手段は、前記階層構造の最大階層数及び前記通信プロトコルの種類に応じて再生時刻を決定する
ことを特徴とする請求項１に記載のコンテンツ配信システム。
【請求項３】
コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおいて、
前記配信装置は、
前記階層構造の階層数を取得する階層数取得手段と、
取得した前記階層構造の最大階層数と前記コンテンツデータの再生時刻とに基づいて、前記コンテンツデータの配信時刻を決定する配信時刻決定手段と、
前記配信時刻決定手段が決定した配信時刻に、再生時刻情報を含む前記コンテンツデータを前記端末装置へ送信する送信手段とを備え、
前記端末装置は、
配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段を備え
たことを特徴とするコンテンツ配信システム。
【請求項４】
前記配信装置において、
前記送信手段は、前記コンテンツデータの種類に応じた複数の通信プロトコルにて前記コンテンツデータを送信し、
前記配信時刻決定手段は、階層構造の最大階層数及び前記通信プロトコルの種類に応じて配信時刻を決定する
ことを特徴とする請求項３に記載のコンテンツ配信システム。
【請求項５】
前記配信装置の前記送信手段は、
伝送エラー時の再生制御を有する第１配信プロトコルにて前記コンテンツデータを送信する第１通信手段と、
伝送エラー時の再生制御を有しない第２配信プロトコルにて前記コンテンツデータを送信する第２通信手段とを有し、
データ損失が小さいときに再生品質が高くなる第１コンテンツデータを前記第１通信手段によって送信し、配信遅延が小さいときに再生品質が高くなる第２コンテンツデータを前記第２通信手段によって送信し、
前記端末装置は、
前記第１配信プロトコルにて前記コンテンツデータを受信する第１通信手段と、
前記第２配信プロトコルにて前記コンテンツデータを受信する第２通信手段とを有することを特徴とする請求項２又は請求項４に記載のコンテンツ配信システム。
【請求項６】
前記配信装置において、
前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、
前記再生時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの再生時刻を決定し、
前記送信手段は、前記第１コンテンツデータのトラック再生開始前に前記再送制御時間に相当するデータのプリバッファリングを行うために、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記端末装置へ第３コンテンツデータを送信した後、前記第１通信手段によって前記第１コンテンツデータの送信を開始し、
前記端末装置は、
前記第２コンテンツデータのトラックの再生終了直後、送信された前記第３コンテンツデータを再生し、前記第３コンテンツデータ受信後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段を備えた
ことを特徴とする請求項５に記載のコンテンツ配信システム。
【請求項７】
前記配信装置において、
前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、
前記再生時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの再生時刻を決定し、
前記送信手段は、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記第１通信手段によって前記第１コンテンツデータの送信を開始し、
前記端末装置は、
第３コンテンツデータを記憶する第３コンテンツデータ記憶手段と、
前記第２コンテンツデータのトラックの再生終了後、前記第３コンテンツデータ記憶手段に記憶された前記第３コンテンツデータを再生し、前記再生終了した前記第２コンテンツデータのトラックの直後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段とを備えた
ことを特徴とする請求項５に記載のコンテンツ配信システム。
【請求項８】
前記配信装置において、
前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、
前記配信時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの配信時刻を決定し、
前記送信手段は、前記第１コンテンツデータのトラック再生開始前に前記再送制御時間に相当するデータのプリバッファリングを行うために、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記端末装置へ第３コンテンツデータを送信した後、前記第１通信手段によって前記第１コンテンツデータの送信を開始し、
前記端末装置は、
前記第２コンテンツデータのトラックの再生終了直後、送信された前記第３コンテンツデータを再生し、前記第３コンテンツデータ受信後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段を備えた
ことを特徴とする請求項５に記載のコンテンツ配信システム。
【請求項９】
前記配信装置において、
前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、
前記配信時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの配信時刻を決定し、
前記送信手段は、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記第１通信手段によって前記第１コンテンツデータの送信を開始し、
前記端末装置は
第３コンテンツデータを記憶する第３コンテンツデータ記憶手段と、
前記第２コンテンツデータのトラックの再生終了後、前記第３コンテンツデータ記憶手段に記憶された前記第３コンテンツデータを再生し、前記再生終了した前記第２コンテンツデータのトラックの直後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段とを備えた
ことを特徴とする請求項５に記載のコンテンツ配信システム。
【請求項１０】
平均パケット損失率、パケット総量、パケット中継レート、平均再送制御時間のうちすくなくともいずか一つと、前記階層構造における最大階層数とを用いて前記再送制御時間の予測を行う再送制御時間予測手段を備えた
ことを特徴とする請求項６〜９のいずれかに記載のコンテンツ配信システム。
【請求項１１】
コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおけるコンテンツ配信方法において、
前記階層構造の階層数を取得する階層数取得ステップと、
取得した前記階層構造の最大階層数に応じて前記コンテンツデータの再生時刻を前記配信装置が決定する再生時刻決定ステップと、
前記再生時刻決定ステップにて決定された再生時刻情報を含むコンテンツデータを前記配信装置が前記端末装置へ送信する送信ステップと、
前記端末装置が、配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生ステップと
を備えたことを特徴とするコンテンツ配信方法。
【請求項１２】
コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおけるコンテンツ配信方法において、
前記階層構造の階層数を取得する階層数取得ステップと、
取得した前記階層構造の最大階層数と前記コンテンツデータの再生時刻とに基づいて、前記コンテンツデータの配信時刻を前記配信装置が決定する配信時刻決定ステップと、
前記配信時刻決定ステップにて決定された配信時刻に、再生時刻情報を含むコンテンツデータを前記配信装置が前記端末装置へ送信する送信ステップと、
前記端末装置が、配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生ステップと
を備えたことを特徴とするコンテンツ配信方法。
【請求項１３】
コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおける前記配信装置において、
前記階層構造の階層数を取得する階層数取得手段と、
取得した前記階層構造の最大階層数に応じて前記コンテンツデータの再生時刻を決定する再生時刻決定手段と、
前記再生時刻決定手段が決定した再生時刻情報を含む前記コンテンツデータを前記端末装置へ送信する送信手段と
を備えたことを特徴とする配信装置。
【請求項１４】
前記送信手段は、前記コンテンツデータの種類に応じた複数の通信プロトコルにて前記コンテンツデータを送信し、
前記再生時刻決定手段は、階層構造の最大階層数及び前記通信プロトコルの種類に応じて再生時刻を決定する
ことを特徴とする請求項１３に記載の配信装置。
【請求項１５】
コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおける前記配信装置において、
前記階層構造の階層数を取得する階層数取得手段と、
取得した前記階層構造の最大階層数と前記コンテンツデータの再生時刻とに基づいて、前記コンテンツデータの配信時刻を決定する配信時刻決定手段と、
前記配信時刻決定手段が決定した配信時刻に、再生時刻情報を含む前記コンテンツデータを前記端末装置へ送信する送信手段と
を備えたことを特徴とする配信装置。
【請求項１６】
前記送信手段は、前記コンテンツデータの種類に応じた複数の通信プロトコルにて前記コンテンツデータを送信し、
前記配信時刻決定手段は、階層構造の最大階層数及び前記通信プロトコルの種類に応じて配信時刻を決定する
ことを特徴とする請求項１５に記載の配信装置。
【請求項１７】
前記送信手段は、
伝送エラー時の再生制御を有する第１配信プロトコルにて前記コンテンツデータを送信する第１通信手段と、
伝送エラー時の再生制御を有しない第２配信プロトコルにて前記コンテンツデータを送信する第２通信手段とを有し、
前記送信手段は、データ損失が小さいときに再生品質が高くなる第１コンテンツデータを前記第１通信手段によって送信し、配信遅延が小さいときに再生品質が高くなる第２コンテンツデータを前記第２通信手段によって送信する
ことを特徴とする請求項１４又は１６に記載の配信装置。
【請求項１８】
前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、
前記再生時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの再生時刻を決定し、
前記送信手段は、前記第１コンテンツデータのトラック再生開始前に前記再送制御時間に相当するデータのプリバッファリングを行うために、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記端末装置へ第３コンテンツデータを送信した後、前記第１通信手段によって前記第１コンテンツデータの送信を開始する
ことを特徴とする請求項１７に記載の配信装置。
【請求項１９】
前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、
前記配信時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの配信時刻を決定し、
前記送信手段は、前記第１コンテンツデータのトラック再生開始前に前記再送制御時間に相当するデータのプリバッファリングを行うために、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記端末装置へ第３コンテンツデータを送信した後、前記第１通信手段によって前記第１コンテンツデータの送信を開始する
ことを特徴とする請求項１７に記載の配信装置。
【請求項２０】
平均パケット損失率、パケット総量、パケット中継レート、平均再送制御時間のうちすくなくともいずか一つと、前記階層構造における最大階層数とを用いて前記再送制御時間の予測を行う再送制御時間予測手段を備えた
ことを特徴とする請求項１８または１９に記載の配信装置。
【請求項２１】
コンピュータを、請求項１３〜２０のいずれかに記載の配信装置の各手段として機能させるためのプログラム。
【請求項２２】
コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおける前記端末装置において、
配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段と、
伝送エラー時の再生制御を有する第１配信プロトコルにて前記コンテンツデータを受信する第１通信手段と、
伝送エラー時の再生制御を有しない第２配信プロトコルにて前記コンテンツデータを受信する第２通信手段と、
前記第２コンテンツデータの再生終了直後に、受信した第３コンテンツデータを再生し、前記第３コンテンツデータ受信後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段と
を備えたことを特徴とする端末装置。
【請求項２３】
コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおける前記端末装置において、
配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段と、
伝送エラー時の再生制御を有する第１配信プロトコルにて前記コンテンツデータを受信する第１通信手段と、
伝送エラー時の再生制御を有しない第２配信プロトコルにて前記コンテンツデータを受信する第２通信手段と、
第３コンテンツデータを記憶する第３コンテンツデータ記憶手段と、
前記第２コンテンツデータの再生終了直後に、前記第３コンテンツデータ記憶手段に記憶された前記第３コンテンツデータを再生し、前記再生終了した前記第２コンテンツデータの直後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段と
を備えたことを特徴とする端末装置。
【請求項２４】
コンピュータを、請求項２２または２３に記載の端末装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
近年、インターネットなどのネットワークを介して、音楽、映画、トーク番組などコンテンツデータ（以下、「コンテンツ」ともいう。）のストリーミング配信を行うコンテンツ配信サービスが開始され始めている。
【０００２】
このようなコンテンツ配信サービスは、一つの配信サーバから複数のクライアント端末装置に対して直接コンテンツの配信を行うものが主流であった。
【０００３】
ところが、配信サーバに蓄積するコンテンツの急速な増加に伴い、そのコンテンツ配信サーバに対してコンテンツの配信を要求するクライアント端末装置が増加し、配信サーバの負荷が増大していくのに加え、ネットワークにおけるトラフィックの集中が深刻な影響を及ぼすようになってきた。
【０００４】
このような配信サーバへの負荷やトラフィックの増大を回避するため、オリジナルの配信サーバに加え、ミラーサーバやキャッシュなどのサーバをネットワーク内に複数配置することにより負荷分散する技術が実用化されているが、コンテンツを配信するサーバが複数必要となり設備のコストが増大する。
【０００５】
そのため、クライアント端末装置間でのコンテンツの中継、すなわちＰ２Ｐ通信形態を用いることにより配信サーバを増加することなく負荷やトラフィックの集中を低減することができるコンテンツ配信方法が提案されている。このコンテンツ配信方法は、配信サーバを頂点としたツリー構造で多層に複数の端末装置を論理接続し、配信サーバからコンテンツを下層の端末装置へ順次配信していくものである。すなわち、配信サーバから配信されたコンテンツは、最上位層（第１階層）に位置する端末装置へ配信され、この最上位層に位置する端末装置は配信サーバから配信されたコンテンツを第２階層に位置する端末装置へ中継し、このコンテンツの中継を最下層に位置する端末装置へ配信するまで行うものである（たとえば、特許文献１参照。）。
【０００６】
ところで、ネットワーク上のコンテンツ配信では音楽コンテンツのみを収集して配信する方式が一般的であるが、音楽コンテンツのみの無味乾燥な状況を鑑みて、音楽トラックの前奏時間にＤＪ（ディスクジョッキー）の発話もしくはナレーションを付加することができるコンテンツ出力装置が提案されている（たとえば、特許文献２参照。）。
【特許文献１】特開２００４−３４１５７６号公報
【特許文献２】特開２００４−０６２７６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このようなＤＪの発話やナレーションを付加することができるコンテンツ出力装置は上述のＰ２Ｐを用いたツリー構造によるコンテンツ配信に適用することが可能である。すなわち、従来の電波を用いたラジオ放送のように音楽やＤＪの発話などを混在させてネットワーク上の端末装置へ放送形式により配信することができる。
【０００８】
ところで、音楽コンテンツ配信は、その通信品質を向上させるために伝送エラー時に再送制御を行うような通信プロトコルを用いることが望ましく、一方でＤＪの発話や時報などのデータはリアルタイム性を要求されるため伝送エラー時に再送制御を行わないことにより伝送遅延が少ない通信プロトコルを用いることが望ましい。すなわち、音楽やＤＪの発話などの異なるコンテンツを混在させる場合には、その配信するコンテンツの種別に応じて通信プロトコルを切り替えることが望ましい。
【０００９】
ところが、放送形式のコンテンツ配信において、このように通信プロトコルを切り替えながら配信を行った場合、たとえば、ＤＪの発話などのコンテンツ配信から音楽などのコンテンツ配信へ切り替えるときに、次のような問題が生じる。
【００１０】
まず、ＤＪの発話は、伝送エラー時に再送制御を行わない通信プロトコルによって、コンテンツ出力配信からの配信がほぼリアルタイムで最下層の端末装置まで伝送される。このＤＪの発話の配信が終了すると、コンテンツ出力配信は音楽コンテンツの配信を開始する。
【００１１】
この音楽コンテンツの配信は、伝送エラー時に再送制御を行う通信プロトコルを用いるため、Ｐ２Ｐ通信での中継では累積的な遅延が発生する。そのため、Ｐ２Ｐ通信による階層構造の最上層の端末装置と最下層の端末装置とでこの音楽コンテンツの再生時刻が変わってしまう。一方で、この再生時刻が変わらないように配信時刻と再生時刻との間に十分な時間の余裕(マージン)を持たせることも考えられるが、動的な階層構造においてはその階層が最大となる場合を考慮する必要があり、階層が最大時のときにでも同時再生ができるような所定マージンをもって配信を行うと、端末装置でのＤＪの発話の再生終了から音楽コンテンツの再生までの空白の時間（ギャップ）が大きくなりすぎ、コンテンツ配信の利用者に違和感や焦燥感を与えてしまうことになる。
【００１２】
そこで、本発明は、Ｐ２Ｐを用いた階層構造によるコンテンツ配信において、その階層構造の状態に応じた適切な制御を行うことにより、かかる課題を解決することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、請求項１に記載の発明は、コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおいて、前記配信装置は、前記階層構造の階層数を取得する階層数取得手段と、取得した前記階層構造の最大階層数に応じて前記コンテンツデータの再生時刻を決定する再生時刻決定手段と、前記再生時刻決定手段が決定した再生時刻情報を含む前記コンテンツデータを前記端末装置へ送信する送信手段とを備え、前記端末装置は、配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段を備えたことを特徴とする。
【００１４】
また、請求項２に記載の発明は、前記配信装置において、前記送信手段は、前記コンテンツデータの種類に応じた複数の通信プロトコルにて前記コンテンツデータを送信し、前記再生時刻決定手段は、前記階層構造の最大階層数及び前記通信プロトコルの種類に応じて再生時刻を決定することを特徴とする。
【００１５】
また、請求項３に記載の発明は、コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおいて、前記配信装置は、前記階層構造の階層数を取得する階層数取得手段と、取得した前記階層構造の最大階層数と前記コンテンツデータの再生時刻とに基づいて、前記コンテンツデータの配信時刻を決定する配信時刻決定手段と、前記配信時刻決定手段が決定した配信時刻に、再生時刻情報を含む前記コンテンツデータを前記端末装置へ送信する送信手段とを備え、前記端末装置は、配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段を備えたことを特徴とする。
【００１６】
また、請求項４に記載の発明は、請求項３に記載の発明において、前記配信装置において、前記送信手段は、前記コンテンツデータの種類に応じた複数の通信プロトコルにて前記コンテンツデータを送信し、前記配信時刻決定手段は、階層構造の最大階層数及び前記通信プロトコルの種類に応じて配信時刻を決定することを特徴とする。
【００１７】
また、請求項５に記載の発明は、請求項２又は請求項４に記載の発明において、前記配信装置の前記送信手段は、伝送エラー時の再生制御を有する第１配信プロトコルにて前記コンテンツデータを送信する第１通信手段と、伝送エラー時の再生制御を有しない第２配信プロトコルにて前記コンテンツデータを送信する第２通信手段とを有し、データ損失が小さいときに再生品質が高くなる第１コンテンツデータを前記第１通信手段によって送信し、配信遅延が小さいときに再生品質が高くなる第２コンテンツデータを前記第２通信手段によって送信し、一方で前記端末装置は、前記第１配信プロトコルにて前記コンテンツデータを受信する第１通信手段と、前記第２配信プロトコルにて前記コンテンツデータを受信する第２通信手段とを有することを特徴とする。
【００１８】
また、請求項６に記載の発明は、請求項５に記載の発明において、前記配信装置において、前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、前記再生時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの再生時刻を決定し、前記送信手段は、前記第１コンテンツデータのトラック再生開始前に前記再送制御時間に相当するデータのプリバッファリングを行うために、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記端末装置へ第３コンテンツデータを送信した後、前記第１通信手段によって前記第１コンテンツデータの送信を開始し、一方で前記端末装置は、前記第２コンテンツデータのトラックの再生終了直後、送信された前記第３コンテンツデータを再生し、前記第３コンテンツデータ受信後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段を備えたことを特徴とする。
【００１９】
また、請求項７に記載の発明は、請求項５に記載の発明において、前記配信装置において、前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、前記再生時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの再生時刻を決定し、前記送信手段は、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記第１通信手段によって前記第１コンテンツデータの送信を開始し、一方で前記端末装置は、第３コンテンツデータを記憶する第３コンテンツデータ記憶手段と、前記第２コンテンツデータのトラックの再生終了後、前記第３コンテンツデータ記憶手段に記憶された前記第３コンテンツデータを再生し、前記再生終了した前記第２コンテンツデータのトラックの直後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段とを備えたことを特徴とする。
【００２０】
また、請求項８に記載の発明は、請求項５に記載の発明において、前記配信装置において、前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、前記配信時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの配信時刻を決定し、前記送信手段は、前記第１コンテンツデータのトラック再生開始前に前記再送制御時間に相当するデータのプリバッファリングを行うために、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記端末装置へ第３コンテンツデータを送信した後、前記第１通信手段によって前記第１コンテンツデータの送信を開始し、一方で前記端末装置は、前記第２コンテンツデータのトラックの再生終了直後、送信された前記第３コンテンツデータを再生し、前記第３コンテンツデータ受信後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段を備えたことを特徴とする。
【００２１】
また、請求項９に記載の発明は、請求項５に記載の発明において、前記配信装置において、前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、前記配信時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの配信時刻を決定し、前記送信手段は、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記第１通信手段によって前記第１コンテンツデータの送信を開始し、一方で前記端末装置は第３コンテンツデータを記憶する第３コンテンツデータ記憶手段と、前記第２コンテンツデータのトラックの再生終了後、前記第３コンテンツデータ記憶手段に記憶された前記第３コンテンツデータを再生し、前記再生終了した前記第２コンテンツデータのトラックの直後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段とを備えたことを特徴とする。
【００２２】
また、請求項１０に記載の発明は、請求項６〜９のいずれか１項に記載の発明において、平均パケット損失率、パケット総量、パケット中継レート、平均再送制御時間のうちすくなくともいずか一つと、前記階層構造における最大階層数とを用いて前記再送制御時間の予測を行う再送制御時間予測手段を備えたことを特徴とする。
【００２３】
また、請求項１１に記載の発明は、コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおけるコンテンツ配信方法において、前記階層構造の階層数を取得する階層数取得ステップと、取得した前記階層構造の最大階層数に応じて前記コンテンツデータの再生時刻を前記配信装置が決定する再生時刻決定ステップと、前記再生時刻決定ステップにて決定された再生時刻情報を含むコンテンツデータを前記配信装置が前記端末装置へ送信する送信ステップと、前記端末装置が、配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生ステップとを備えたことを特徴とする。
【００２４】
また、請求項１２に記載の発明は、コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおけるコンテンツ配信方法において、前記階層構造の階層数を取得する階層数取得ステップと、取得した前記階層構造の階層数と前記コンテンツデータの再生時刻とに基づいて、前記コンテンツデータの配信時刻を前記配信装置が決定する配信時刻決定ステップと、前記配信時刻決定ステップにて決定された配信時刻に、再生時刻情報を含むコンテンツデータを前記配信装置が前記端末装置へ送信する送信ステップと、前記端末装置が、配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生ステップとを備えたことを特徴とする。
【００２５】
また、請求項１３に記載の発明は、コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおける前記配信装置において、前記階層構造の階層数を取得する階層数取得手段と、取得した前記階層構造の最大階層数に応じて前記コンテンツデータの再生時刻を決定する再生時刻決定手段と、前記再生時刻決定手段が決定した再生時刻情報を含む前記コンテンツデータを前記端末装置へ送信する送信手段と、を備えたことを特徴とする。
【００２６】
また、請求項１４に記載の発明は、請求項１３に記載の発明において、前記送信手段は、前記コンテンツデータの種類に応じた複数の通信プロトコルにて前記コンテンツデータを送信し、前記再生時刻決定手段は、階層構造の最大階層数及び前記通信プロトコルの種類に応じて再生時刻を決定することを特徴とする。
【００２７】
また、請求項１５に記載の発明は、コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおける前記配信装置において、前記階層構造の階層数を取得する階層数取得手段と、取得した前記階層構造の最大階層数と前記コンテンツデータの再生時刻とに基づいて、前記コンテンツデータの配信時刻を決定する配信時刻決定手段と、前記配信時刻決定手段が決定した配信時刻に、再生時刻情報を含む前記コンテンツデータを前記端末装置へ送信する送信手段とを備えたことを特徴とする。
【００２８】
また、請求項１６に記載の発明は、請求項１５に記載の発明において、前記送信手段は、前記コンテンツデータの種類に応じた複数の通信プロトコルにて前記コンテンツデータを送信し、前記再生時刻決定手段は、階層構造の最大階層数及び前記通信プロトコルの種類に応じて再生時刻を決定することを特徴とする。
【００２９】
また、請求項１７に記載の発明は、請求項１４又は請求項１６に記載の発明において、前記送信手段は、伝送エラー時の再生制御を有する第１配信プロトコルにて前記コンテンツデータを送信する第１通信手段と、伝送エラー時の再生制御を有しない第２配信プロトコルにて前記コンテンツデータを送信する第２通信手段とを有し、前記送信手段は、データ損失が小さいときに再生品質が高くなる第１コンテンツデータを前記第１通信手段によって送信し、配信遅延が小さいときに再生品質が高くなる第２コンテンツデータを前記第２通信手段によって送信することを特徴とする。
【００３０】
また、請求項１８に記載の発明は、請求項１７に記載の発明において、前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、前記再生時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの再生時刻を決定し、前記送信手段は、前記第１コンテンツデータのトラック再生開始前に前記再送制御時間に相当するデータのプリバッファリングを行うために、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記端末装置へ第３コンテンツデータを送信した後、前記第１通信手段によって前記第１コンテンツデータの送信を開始することを特徴とする。
【００３１】
また、請求項１９に記載の発明は、請求項１７に記載の発明において、前記第１コンテンツデータと前記第２コンテンツデータをトラック単位で交互に連結して配信する場合であって、
前記配信時刻決定手段は、前記第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して前記第１コンテンツデータの配信時刻を決定し、
前記送信手段は、前記第１コンテンツデータのトラック再生開始前に前記再送制御時間に相当するデータのプリバッファリングを行うために、前記第２通信手段による前記第２コンテンツデータのトラック送信終了直後に、前記端末装置へ第３コンテンツデータを送信した後、前記第１通信手段によって前記第１コンテンツデータの送信を開始することを特徴とする。
【００３２】
また、請求項２０に記載の発明は、請求項１８又は請求項１９に記載の発明において、平均パケット損失率、パケット総量、パケット中継レート、平均再送制御時間のうちすくなくともいずか一つと、前記階層構造における最大階層数とを用いて前記再送制御時間の予測を行う再送制御時間予測手段を備えたことを特徴とする。
【００３３】
また、請求項２１に記載の発明は、コンピュータを、請求項１３〜２０のいずれかに１項に記載の配信装置の各手段として機能させることを特徴とする。
【００３４】
また、請求項２２に記載の発明は、コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおける前記端末装置において、配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段と、伝送エラー時の再生制御を有する第１配信プロトコルにて前記コンテンツデータを受信する第１通信手段と、伝送エラー時の再生制御を有しない第２配信プロトコルにて前記コンテンツデータを受信する第２通信手段と、前記第２コンテンツデータの再生終了直後に、受信した第３コンテンツデータを再生し、前記第３コンテンツデータ受信後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段とを備えたことを特徴とする。
【００３５】
また、請求項２３に記載の発明は、コンテンツデータを配信する配信装置と、前記配信装置を頂点として階層構造で多層に論理接続される複数の端末装置とを有し、前記配信装置から配信される前記コンテンツデータが前記端末装置の中継機能により順次下層へ中継されて前記複数の端末装置全てに配信されるコンテンツ配信システムにおける前記端末装置において、配信された前記コンテンツデータを、当該コンテンツデータに含まれる再生時刻情報が示す再生時刻に再生する再生手段と、伝送エラー時の再生制御を有する第１配信プロトコルにて前記コンテンツデータを受信する第１通信手段と、伝送エラー時の再生制御を有しない第２配信プロトコルにて前記コンテンツデータを受信する第２通信手段と、第３コンテンツデータを記憶する第３コンテンツデータ記憶手段と、前記第２コンテンツデータの再生終了直後に、前記第３コンテンツデータ記憶手段に記憶された前記第３コンテンツデータを再生し、前記再生終了した前記第２コンテンツデータの直後に受信した前記第１コンテンツデータの再生時刻まで、前記第３コンテンツデータの再生を維持する第３コンテンツデータ再生手段とを備えたことを特徴とする。
【００３６】
また、請求項２４に記載の発明は、コンピュータを、請求項２２又は請求項２３に記載の各手段として機能させることを特徴とする。
【発明の効果】
【００３７】
請求項１，１１，１３の発明によれば、Ｐ２Ｐを用いた階層構造によるコンテンツ配信システムおいて最大階層数に応じてコンテンツデータの再生開始時刻を決定し、このように決定した再生時刻の情報をコンテンツデータに含ませて端末装置へ送信するので、この再生開始時刻の調整により階層構造の変化に応じて生じる累積的配信遅延の影響を適切に吸収して、端末装置におけるコンテンツの再生同期をとることができる。
【００３８】
また、請求項３，１２，１５の発明によれば、Ｐ２Ｐを用いた階層構造によるコンテンツ配信システムおいて最大階層数に応じてコンテンツデータの配信時刻を決定し、このように決定した配信時刻でコンテンツデータ端末装置へ送信するので、この配信時刻の調整により階層構造の変化に応じて生じる累積的配信遅延の影響を適切に吸収して、端末装置におけるコンテンツの再生同期をとることができる。
【００３９】
また、請求項２，４，１４，１６の発明によれば、階層構造の最大階層数及びコンテンツを配信するためのプロトコル（以下、「通信プロトコル」という。）の種類に応じて再生時刻あるいは配信時刻を決定するので、階層構造の最大階層数に加え、コンテンツ再生時の再生品質（ＱｏＳ）を考慮した端末装置の再生同期が行える。
【００４０】
また、請求項５，１７の発明によれば、データ損失が小さいときに再生品質が高くなるコンテンツ（たとえば、音楽データ）に対しては伝送エラー時に再送制御を行うプロトコルを用いることで再生品質を確保し、他方、配信遅延が小さいときに再生品質が高くなるコンテンツ（たとえば、配信装置側のディスクジョッキーＤＪと端末装置側のユーザの会話）に対しては配信遅延が小さい再送制御を行わないプロトコルを用いることで再生品質を確保するので、異なる種類のコンテンツが混在するような複合コンテンツでも良好な再生品質を確保できる。
【００４１】
また、請求項６，７，８，９，１８，１９，２２，２３の発明によれば、端末装置にコンテンツに関連した画像を表示した状態で第１コンテンツデータのプリバッファリング処理が行うことができるようにしたので、このプリバッファリング期間中にコンテンツの再生が停止していてもユーザの不快感を軽減させることができる。
【００４２】
また、請求項１０，２０の発明によれば、階層構造の最大階層数と配信経路の通信品質から再送処理時間を予測するため、上述のプリバッファリング量の決定に関する処理精度を高めることができる。
【発明を実施するための最良の形態】
【００４３】
（第１実施形態）
以下、本発明の最良の第１実施形態を図面に基づいて説明する。なお、以下に説明する実施形態は、Ｐ２Ｐを用いたツリー状階層構造（以下、「トポロジー」と呼ぶ場合がある）によるコンテンツ配信システムであって、放送局端末１から配信されるコンテンツを、ツリー状階層構造を構成するユーザ端末２がＰ２Ｐによって順次受信するように構成したコンテンツ配信システムＳに対して本発明を適用した場合の実施形態である。
【００４４】
［１．コンテンツ配信システムＳの構成等］
まず、図１を参照して、コンテンツ配信システムＳの概要構成等について説明する。
【００４５】
図１は、本実施形態に係るコンテンツ配信システムＳの概要構成例を示す図である。図１に示すように、本実施形態に係るコンテンツ配信システムＳは、配信装置としての放送局端末１と、複数の端末装置としての複数のユーザ端末２a1，２a2，２b1〜２b4，２c1〜２c8，２d1〜２d16と、この複数のユーザ端末２a1，２a2，２b1〜２b4，２c1〜２c8，２d1〜２d16の接続先を管理等し、接続管理装置としての接続先紹介サーバ３とを備えている。なお、本実施の形態においては、放送局端末１は、一つの放送チャンネルのみ有しているものとして以下説明する。
【００４６】
物理ネットワーク上では、放送局端末１、ユーザ端末２a1，２a2，２b1〜２b4，２c1〜２c8，２d1〜２d16、接続先紹介サーバ３には、各々ＩＰアドレスが割り当てられており、これら装置は、ネットワークの一例としてのインターネット４にルータ10等を介して接続されている。そして、通信接続先の端末装置のＩＰアドレスを宛先ＩＰアドレス、自装置のＩＰアドレスを送信元ＩＰアドレスとしたヘッダを含むパケットを送信すること等によって通信接続が可能となっている。なお、接続先紹介サーバ３を放送局端末１の内部に有する形態としてもよい。この場合、接続先紹介サーバ３にＩＰアドレスを割り当てなくてもよく、放送局端末１のＩＰアドレスと共用するようにしてもよい。
【００４７】
なお、ユーザ端末２a1，２a2，２b1〜２b4，２c1〜２c8，２d1〜２d16のいずれかのユーザ端末又はすべてのユーザ端末を示す場合には、便宜上、ユーザ端末２と呼ぶ場合がある。また、第１階層のユーザ端末２a1，２a2は便宜上ユーザ端末２ａと、第２階層のユーザ端末２b1〜２b4は便宜上ユーザ端末２ｂと、第３階層のユーザ端末２c1〜２c8は便宜上ユーザ端末２ｃと、第４階層のユーザ端末２d1〜２d16は便宜上ユーザ端末２ｄと呼ぶ場合がある。
【００４８】
このコンテンツ配信システムＳは、放送局端末１を頂点（ここでは、便宜上第０階層とする。）として複数のユーザ端末２がツリー状階層構造で多層に論理接続されるように接続先紹介サーバ３によって管理される。なお、本実施形態においては、ツリー状階層構造として説明するが、これに限らず、複数のユーザ端末２がチェーン状階層構造で多層に論理接続されるようにしてもよい。
【００４９】
接続先紹介サーバ３は、コンテンツ配信システムＳに参加していないユーザ端末２、言い換えればツリー状階層構造を構成していないユーザ端末２から接続先紹介要求を受信する。そして、コンテンツ配信システムＳのツリー状階層構造の状態等に基づいて、接続先候補（放送局端末１又はユーザ端末２）を選択する。すなわち、接続先紹介サーバ３は、そのユーザ端末２がストリーミング配信を受けるために接続が可能な上層の端末装置を選択する。そして、このように選択した接続先候補のＩＰアドレス、ポート番号及び通信プロトコル等を通知する。ここで、通信プロトコルとして、ＭＭＳ（Microsoft Media Server）プロトコル、ＲＴＳＰ(Real Time Streaming Protocol)等が用いられる。また、コンテンツデータの形式として、ＭＰＥＧ−ＴＳ(Motion Picture Expert Group - Transport Stream)、ＡＳＦ（Advanced Streaming Format）、ＷＭＡ（Windows(登録商標) Media Audio）、ＷＭＶ（Windows(登録商標) Media Video）等が用いられる。
【００５０】
ユーザ端末２は、接続先紹介サーバ３から接続先候補のＩＰアドレスを受信すると、そのＩＰアドレスの接続先候補に対して、コンテンツ配信システムＳへの参加（接続）を要求する。これによりユーザ端末２がコンテンツ配信システムＳにおける階層構造へ組み込まれる。すなわち、放送局端末１からのコンテンツ配信に対して受信可能となる。
【００５１】
コンテンツ配信システムＳは、このようにユーザ端末２が次々と参加することによって、放送局端末１を頂点として複数のユーザ端末２がツリー状階層構造で多層に論理接続される。そして、放送局端末１から配信されるコンテンツデータは、ユーザ端末２のＰ２Ｐによる中継機能により順次下層のユーザ端末２へ中継されて複数のユーザ端末２に配信される。
【００５２】
すなわち、音楽等のコンテンツファイルのデータ、もしくはリアルタイムエンコーディングされたデータ（たとえば、ＤＪとユーザによる掛け合い音声等）は、まず、放送局端末１によって所定容量に分割され、複数のパケット（以下、「コンテンツパケット」という。）に格納されて順次送信される。そして、放送局端末１の下層に位置するユーザ端末２a1，２a2（第1階層目の端末装置）は、図２に示すように、上層の放送局端末１から順次受信したコンテンツパケットを一旦リングバッファに蓄積し、さらに、このように蓄積したコンテンツパケットを取り出して、下層のユーザ端末２b1〜２b4（第２階層目の端末装置）へ順次送信する。
【００５３】
以下同様に、コンテンツパケットは、ユーザ端末２b1〜２b4からユーザ端末２c1〜２c8（第３階層目の端末装置）へ、ユーザ端末２c1〜２c8からユーザ端末２d1〜２d16（第４階層目の端末装置）へと順に中継される。
【００５４】
なお、ユーザ端末２は、組み込まれた階層構造の位置の上層のユーザ端末２又は放送局端末１のＩＰアドレスと、その位置の下層のユーザ端末２のＩＰアドレスとを後述の第１記憶部202に記憶しており、このように記憶したＩＰアドレスに基づいて、コンテンツデータの中継を行う。
【００５５】
（コンテンツパケットについて）
ここで、このコンテンツパケットの構成について具体的に説明する。図３は本実施形態におけるコンテンツパケットの構造を示す図である。
【００５６】
図３に示すように、コンテンツパケットは、パケットヘッダ部20、ペイロード長情報格納部30、ペイロード部40とから構成されている。
【００５７】
パケットヘッダ部20は、ペイロード部40に埋め込まれたデータを識別したり、ストリームを制御したりするための付帯情報が格納される領域であり、署名領域21、バージョン領域22、パケットタイプ領域23、プロトコル領域24、シーケンス番号領域25、再生時刻（タイムスタンプ）領域26、トラック番号領域27とから構成される。
【００５８】
署名領域21は、このコンテンツパケットがコンテンツ配信システムＳから送信されたものであることを示すために用いられ、システム固有の文字情報が格納される。また、バージョン領域22には、システムのバージョン情報が格納される。
【００５９】
パケットタイプ領域23には、コンテンツパケット、ACKパケット、状態報告パケットのいずれか識別するためのパケットの種別が格納される。
【００６０】
プロトコル領域24には、コンテンツパケットを送信する際に用いる通信プロトコルの種別が格納される。本実施の形態においては、高遅延低損失プロトコルまたは低遅延高損失プロトコルの２つのプロトコルの種別を示す情報のいずれかが格納される。
【００６１】
シーケンス番号領域25には、コンテンツパケットの連続性を保証するための整数値が格納される。このコンテンツパケットを受信した端末装置は、シーケンス番号の連続性を検証することで欠損したコンテンツパケットを検知することが可能となる。
【００６２】
再生時刻領域26には、当該コンテンツパケットを再生する時刻の情報（以下、「再生時刻情報」とする。）が格納されている。各ユーザ端末２はこの再生時刻情報に従ってコンテンツデータの再生を行うことでユーザ端末２間の再生同期をとることができる。すなわち、このコンテンツパケットを受信したユーザ端末２は、再生時刻領域26に格納された再生時刻情報に従ってコンテンツデータの再生を行うことで、複数のユーザ端末２において同時刻にコンテンツを再生することができる。
【００６３】
トラック番号領域27には、ストリーミングの単位であるトラック毎のシーケンス番号が格納されている。放送局端末１における後述のストリーム制御手段はトラックが切り替わるとこのシーケンス番号を０に初期化するので、任意のユーザ端末２はシーケンス番号を検査することでトラックの切り替わりを判定することができる。なお、本実施形態においては、１トラックとは１コンテンツデータか、又は通信プロトコルが同じでかつ連続する複数のコンテンツデータを意味するものとする。
【００６４】
ペイロード長情報格納部30は、ペイロード部40に格納されたコンテンツデータのサイズが格納される。
【００６５】
ペイロード部40は、ストリーミング配信用に符号化された音楽データや音声データ、ユーザ端末２上に表示する静止画データなどのコンテンツデータが所定容量毎に分割されて格納される領域である。
【００６６】
（配信コンテンツデータについて）
本コンテンツ配信システムＳは視聴者参加型でかつ放送形式のコンテンツ配信システムであり、放送局端末１から提供されるコンテンツデータとしては、データ損失が小さいときに再生品質が高くなる第１コンテンツデータと配信遅延が小さいときに再生品質が高くなる第２コンテンツデータがある。
【００６７】
ここで、第１コンテンツデータは、放送局端末１からユーザ端末２へ一方向性の音楽データなどのコンテンツデータであり、放送局端末１からユーザ端末２へのコンテンツパケットの配信遅延がある場合（放送局端末１がコンテンツパケットを送信してからすべてのユーザ端末２で受信されるまでの時間が大きい場合）であっても、コンテンツデータの再生が音切れなくできるか否かによってＱｏＳが大きく左右されるコンテンツデータである。
【００６８】
また、第２コンテンツデータは、放送局端末１のＤＪ（ディスクジョッキー）とユーザ端末２のユーザとの間の会話（以下、「ＤＪとの掛け合い」という。）などのコンテンツのデータであり、放送局端末１とユーザ端末２との間のリアルタイム性によって、ユーザ端末２にとってのＱｏＳ（サービス品質）が大きく左右されるものであり、一方で多少の音切れがあってもＱｏＳは満たすようなコンテンツデータである。
【００６９】
このように本コンテンツ配信システムＳは、第１コンテンツデータと第２コンテンツデータとを配信する視聴者参加型の放送形式のコンテンツ配信システムであり、たとえば、複数のユーザ端末２に対して、第１コンテンツデータと第２コンテンツデータと適宜入れ替えながら配信する、いわゆる視聴者参加型のインターネットラジオに適用できるものである。
【００７０】
図４は、視聴者参加型のインターネットラジオ放送のトラック構成を示す図である。図４に示すように、音楽データなどの第１コンテンツデータが配信される低損失伝送向きトラックと、ＤＪとの掛け合いデータなどの第２コンテンツデータが配信される低遅延伝送向きトラックとが放送局端末１から交互に配信される。このように、視聴者参加型のインターネットラジオ放送は、複数の音楽データを配信しながら、その音楽の合間にＤＪとの掛け合いを配信する放送構成となっている。なお、図４に示すように、低遅延伝送向きトラックから低損失伝送向きトラックへ切り替わる際、コンテンツの再生が途切れる状態（トラックギャップ）が生じる（詳細後述）。
【００７１】
図５に示すように、第１コンテンツデータはその再生品質が高くなるように高遅延低損失の通信プロトコルである第１配信プロトコルによって配信され、第２コンテンツデータはその再生品質が高くなるように低遅延高損失の通信プロトコルである第２配信プロトコルによって配信される。そして、これらの通信プロトコルは配信するコンテンツに応じて適宜切り替えられる。
【００７２】
第１配信プロトコルは、図６に示すように、ＡＣＫパケットによる送達確認を行う通信プロトコルである。このプロトコルは通信エラーによって所定期間内に受信側からのＡＣＫパケットが送信側に到達しないときに、再送制御を行うことによってコンテンツパケットの確実な送達を保証することができるが、その再送処理によって送信遅延が発生する通信プロトコルである。
【００７３】
一方、第２配信プロトコルは、図７に示すように、ＡＣＫによる送達確認を行なわない通信プロトコルである。このプロトコルは再送処理を行わないため送信遅延が発生せずリアルタイムな通信が可能であるが、通信エラーが発生するとコンテンツパケットが損失する通信プロトコルである。
【００７４】
ここで、ユーザ端末２が内蔵する後述のリングバッファの挙動について、第１配信プロトコルを用いた通信に対する場合と、第２配信プロトコルを用いた通信に対する場合について、それぞれ具体的に説明する。
【００７５】
図８に示すように、第１配信プロトコルを用いた通信では、再送処理による送信遅延を考慮して、送受信ポイントと再生ポイントとの間にマージン（以下、「再生マージン」とする。）を持たせておく必要がある。すなわち、１トラック当りのストリーム中継処理で発生する可能性がある再送時間を考慮した再生マージンをもってコンテンツデータの配信をしなければならない。この再生マージンとは、言い換えれば、放送局端末１による１トラックのコンテンツ配信開始から配信終了までに消費してもよいコンテンツパケット損失に対する回復処理時間である。
【００７６】
図８（ａ）は、第１配信プロトコルを用いた通信において、再送処理が発生しなかったときのユーザ端末２のリングバッファの様子を示すものである。本実施形態においては、１階層当たりのユーザ端末２の再生マージンが３パケット分に設定されている。この図の例では、未だ再送処理が発生していないため、最下層のユーザ端末２ｃでは再生ポイントと受信ポイントとに９パケット分の再生マージンが存在している。
【００７７】
一方、図８（ｂ）に示すように、第１配信プロトコルを用いた通信において、第１階層目のユーザ端末２ａで２パケット分の再送処理が、第２階層目のユーザ端末２ｂで３パケット分の再送制御が発生したとき、最下層のユーザ端末２ｃでは再生マージンが４パケット分まで縮減する。すなわち、放送局端末１から最下層のユーザ端末２ｃまでの経路で行なわれた累積再送時間分の再生マージンが最下層のユーザ端末２ｃまでに失われることを表している。
【００７８】
したがって、コンテンツパケットに格納された時刻情報によって、全てのユーザ端末２において同時刻にコンテンツデータの再生を行わせるためには、放送局端末１から最下層のユーザ端末２ｃまでの経路において、コンテンツデータ１トラックのストリーム中継処理で発生する可能性がある再送時間をもった再生マージンが必要となり、この再生マージンを持つためのリングバッファが必要となる。
【００７９】
図９に示すように、第２配信プロトコルを用いた通信では、再送処理による送信遅延がないために再生マージンを考慮する必要がなく、受信したコンテンツパケットの再生が始まるまでに、次のコンテンツパケットの受信が完了すればよい。したがって、再生ポイントと受信ポイントとの間の再生マージンは最小限でよい。
【００８０】
この第２配信プロトコルには、再送処理がないためにコンテンツパケットの損失が発生する。図９（ｂ）では、第１階層のユーザ端末２ａから第２階層のユーザ端末２ｂへコンテンツパケットを送信するときにコンテンツパケット（５番）の損失が発生していることを示している。この例では第２階層のユーザ端末２ｂ及び最下層のユーザ端末２ｃではコンテンツパケット（５番）を受信できないことになる。
【００８１】
このように、視聴者参加型のインターネットラジオ放送は、複数の音楽データを高遅延低損失の通信プロトコルにより配信しながら、その音楽の合間にＤＪとユーザとの掛け合い低遅延高損失の通信プロトコルにより配信する番組編成となっている。
【００８２】
ここで、放送局端末１によって、音楽トラックとＤＪとの掛け合いトラックとを交互に連結して配信したときの放送局端末１からの各トラック伝送開始時刻と各トラックの再生開始時刻の様子を図１０に示す。
【００８３】
まず、音楽トラックからＤＪとの掛け合いトラックに切り替わるときは、高遅延低損失の通信プロトコルによるコンテンツデータの配信から低遅延高損失の通信プロトコルによるコンテンツデータの配信へ切り替わる。この低遅延高損失の通信プロトコルでのコンテンツデータの配信は、上述のように再生マージンを最小限に抑える必要があるので、トラックの切り替わり時には、図１１に示すように、音楽トラックの再生が完了するまで下流への送信を停止する。そして、音楽トラックの再生完了後、ＤＪとの掛け合いトラックのコンテンツパケットの配信を開始する。このように、音楽トラックからＤＪとの掛け合いトラックへ移行するときには、トラックギャップは発生しない。
【００８４】
一方、ＤＪとの掛け合いトラックから音楽トラックに切り替わるときは、低遅延高損失の通信プロトコルによるコンテンツデータの配信から高遅延低損失の通信プロトコルによるコンテンツデータの配信へ切り替わる。先の場合とは異なりこの高遅延低損失の通信プロトコルでのコンテンツデータの配信では、再送処理による送信遅延を考慮してトラック先頭部において再生マージン、すなわちプリバッファリング期間を持たせる必要がある。つまり、図１２に示すように、ＤＪとの掛け合いトラックの配信が終了したあと、音楽トラックのプリバッファリングが行われる。
【００８５】
ここで、このプリバッファリング期間が長すぎると、再送開始までのトラックのコンテンツが再生されない無音時間であるトラックギャップが長くなるという問題が生じる。他方、このプリバッファリング期間が短すぎると、再送制御による欠損パケットの回復処理を待たずに再生時刻となり、コンテンツ再生切れが発生する問題が生じる。
【００８６】
そこで、ＤＪとの掛け合いトラックから音楽トラックに切り替わったとき、放送局端末１では、最下層までの再送制御処理を考慮した最適な再生マージン、すなわちプリバッファリング期間を発生させるような仕組みを設ける。このように最適なプリバッファリング期間を適切に持たせることにより、１トラックの配信を完了する間に、下層のユーザ端末２において再送制御が複数発生したような場合であっても、再生開始時刻までにユーザ端末２へコンテンツパケットが届かないといった問題を回避することができると共に、トラックギャップも不必要に長くならないようにできる。
【００８７】
さらに本実施形態のおけるコンテンツ配信システムＳにおいては、後述のようにこのプリバッファリング期間をトポロジーの構成やネットワーク品質などに基づいて適切な量になるよう調整することで、ユーザ端末２におけるトラックギャップを最適な量にすることができる。
【００８８】
また、図１０、１２に示すように、プリバッファリング期間中は、ユーザ端末２は放送局端末１から受信したＪＰＥＧパケットからＪＰＥＧデータを取り出して表示手段に表示するようにしている。この仕組みにより音楽コンテンツの再生が停止していてもユーザに対して情報を提示し続けられるので、ユーザの不快感を軽減させることができる。
【００８９】
以下、コンテンツ配信システムＳを構成する放送局端末１、ユーザ端末２及び接続先紹介サーバ３についてそれらの具体的な構成及び動作について図面を参照して説明する。
【００９０】
［２．放送局端末１の構成等の説明］
次に、図１３を参照して、放送局端末１の構成及び動作について説明する。
【００９１】
図１３は、本実施形態における放送局端末１の概略構成例を示す図である。放送局端末１は、一般のサーバコンピュータを適用可能であり、図１３に示すように、ＣＰＵ（Central  Processing  Unit）101と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置としての第１記憶部102と、各種データ等を記憶するＨＤＤ（Hard  Disc  Drive）等から構成された第２記憶部103と、インターネット４を介してユーザ端末２や接続先紹介サーバ３との間で通信を行うネットワークインターフェイス104と、所定の情報を入力可能なキーボード105やマウス106等の入力手段を制御する周辺機器制御チップ107と、ＣＰＵ101からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを後述のディスプレイ109に表示するビデオチップ108と、ビデオチップ108から送信される信号に応じた表示を行うディスプレイ109と、ＦＭ音源(Frequency Modulation)やWave Table音源などの音源を有する音源チップ110と、音源チップ110から出力されるオーディオ信号を音波に変換する内蔵スピーカ111と、ＤＪの発話内容をオーディオ信号に変換して音源チップ110へ出力するためのマイク112とを備えて構成され、これらの各種構成要素はシステムバス113を介して相互に接続されている。なお、ネットワークインターフェイス104は、ルータ10aを介してインターネット４に接続される。
【００９２】
また、第２記憶部103には、放送用の多数のコンテンツファイルが格納される放送用コンテンツデータベース115と、前記コンテンツファイルに関連する第３のコンテンツデータとしてのＪＰＥＧファイルを含むＪＰＥＧファイルデータベース116と、ユーザ端末２から送信される平均損失パケット率や平均再送処理時間などが格納される登録リスト117とを有している。なお、コンテンツファイルに関連するとは、たとえばある歌手の音楽ファイルのときにはその歌手に関する画像を含むＪＰＥＧファイルであり、映画音楽ファイルのときには映画に関する画像を含むＪＰＥＧファイルである。
【００９３】
なお、本実施形態においては、ＣＰＵ101と第１記憶部102とで制御手段114を構成している。また、放送局端末１には、上述のようにディスプレイ（液晶ディスプレイ等）109等が接続されるようになっており、例えば、コンテンツ配信システムＳを運用する運営側のＤＪ（ディスクジョッキー）は、このディスプレイ109を見ながら入力手段から所定の情報を入力することができる。また、ＤＪは、内蔵スピーカ111とマイク112を使用して、ユーザ端末２のユーザとの会話を行うことができる。
【００９４】
（第１記憶部102について）
また、第１記憶部102には、放送局端末１のコンピュータとしての基本的な機能を提供するためのＯＳ（オペレーティングシステム）プログラム120と、第２記憶部103に記憶されたコンテンツデータを取り出してユーザ端末２へストリーミング配信等を行うためのストリーム制御プログラム121と、接続先紹介サーバ３に自放送局端末１のＩＰアドレス等を登録すると共に第１階層のユーザ端末２aのＩＰアドレスの管理等を行うためのトポロジー制御プログラム122と、階層構造のネットワークの品質を監視するためのネットワーク品質モニタプログラム123と、ディスプレイ109への表示内容を制御するための画面制御プログラム124と、コンテンツデータやマイク112からのオーディオ信号をエンコードするためのエンコーダ／デコーダプログラム126と、コンテンツデータの再生処理を行うためのプレイヤプログラム125と、上流端末装置から受信したパケットを一時蓄積するためのリングバッファ127と、任意のユーザ端末２とＳＩＰ（Session Initiation Protocol）等のプロトコルを使ってＶｏＩＰ（Voice over Internet Protocol）を実施するためのＶｏＩＰ制御プログラム128等を記憶しており、これらはＣＰＵ101によって読み出され、ＣＰＵ101によってこれらのプログラムに従った機能が実行される。
【００９５】
ここで、ＯＳプログラム120は、ＣＰＵ101によって読み出されて実行されることにより、キーボード105やマウス106の入出力に関する機能や、第１記憶部102や第２記憶部103などのメモリ管理などの放送局端末１であるコンピュータの基本的な機能を実行可能にするものである。そして、このＯＳプログラム120がＣＰＵ101によって実行された状態で、上述のストリーム制御プログラム121、トポロジー制御プログラム122、ネットワーク品質モニタプログラム123、画面制御プログラム124、エンコーダ／デコーダプログラム126、プレイヤ125、ＶｏＩＰ制御プログラム128等が第１記憶部102から読み出されて実行される。
【００９６】
なお、ＯＳプログラム120、ストリーム制御プログラム121、トポロジー制御プログラム122、ネットワーク品質モニタプログラム123と、画面制御プログラム124と、エンコーダ／デコーダプログラム126、プレイヤプログラム125、ＶｏＩＰ制御プログラム128等は、例えば、インターネット４に接続されたサーバ等から第１記憶部102にダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記録媒体に記録されてから当該記録媒体のドライブを介して、第１記憶部102に読み込まれるようにしてもよい。
【００９７】
（制御手段114について）
制御手段114は、上述のようにＣＰＵ101と第１記憶部102とから構成され、ＣＰＵ101が第１記憶部102に記憶された各種プログラム120〜126，128を読み出して実行することにより、放送局端末１全体を統括制御し、かつ、後述する第１通信手段、第２通信手段、階層数取得手段、ネットワーク品質取得手段、再生時刻決定手段、ストリーム送信手段、再送制御時間予測手段、エンコード手段、再生手段、画面制御手段、トポロジー管理手段、ＶｏＩＰ制御手段等として機能するようになっている。
【００９８】
なお、ＣＰＵ101がストリーム制御プログラム121を実行することによって、第１通信手段、第２通信手段、再送制御時間予測手段、再生時刻決定手段、ストリーム送信手段等として、ＣＰＵ101がトポロジー制御プログラム122を実行することによって、トポロジー管理手段として、またＣＰＵ101がネットワーク品質モニタプログラム123を実行することによって階層数取得手段、ネットワーク品質取得手段として、また、ＣＰＵ101が画面制御プログラム124を実行することによって、表示制御手段等として、ＣＰＵ101がエンコーダ／デコーダプログラム126を実行することによってエンコード手段及びデコーダ手段として、ＣＰＵ101がプレイヤプログラム125を実行することによって再生手段として、ＣＰＵ101がＶｏＩＰ制御プログラム128を実行することによってＶｏＩＰ制御手段としてそれぞれ機能するようになっている。
【００９９】
（第１通信手段、第２通信手段について）
第１通信手段は、第１配信プロトコルを用いてユーザ端末２へコンテンツデータの配信を行うものである。この第１配信プロトコルは、上述のように通信エラー発生時に再送制御を行う高遅延低損失の通信プロトコルであり、たとえばＴＣＰの下でのストリーミング配信用プロトコル（ＲＴＳＰなど）などを用いることができるほか、独自の専用プロトコルを用いるようにすることもできる。
【０１００】
一方、第２通信手段は、第２配信プロトコルを用いてユーザ端末２へコンテンツデータの配信を行うものである。この第２配信プロトコルは、上述のように通信エラー発生時に再送制御を行わない低遅延高損失の通信プロトコルであり、たとえば、ＵＤＰの下での上述のストリーミング配信用プロトコルなどを用いることができるほか、独自の専用プロトコルを用いるようにすることもできる。
【０１０１】
（階層数取得手段について）
階層数取得手段は、コンテンツ配信システムＳのツリー状階層構造における最大の階層数（以下、「階層レベル」ともいう。）を接続先紹介サーバ３へ問い合わせ、該階層レベルを接続先紹介サーバ３から取得する。
【０１０２】
たとえば、図１のような階層構造の場合、接続先紹介サーバ３における後述のトポロジー管理手段は、この階層構造の最大の階層数が第４階層まであると判定して、階層レベルを４として放送局端末１へ報告する。
（ネットワーク品質取得手段について）
ネットワーク品質取得手段は、放送局端末１を頂点としたツリー状階層構造で多層に接続される複数のユーザ端末２から平均パケット損失率、平均再送制御時間などを取得するように動作する。
【０１０３】
ここで、平均パケット損失率とは、たとえばユーザ端末２b1の場合、自ユーザ端末２b1と上層のユーザ端末２a1との間の中継パスにおいてコンテンツパケット中継時に発生する平均パケット損失率をいう。たとえば、３００個のコンテンツパケットの中継が行なわれたときに３個のコンテンツパケットが損失したときの平均パケット損失率は１％となる。
【０１０４】
また、平均再送制御時間は、上記コンテンツパケット中継時に発生するコンテンツパケット損失に対して、その損失にかかるコンテンツパケットを再送するまでに要する平均再送制御の時間をいう。たとえば、３個のコンテンツパケットが損失した際に、それぞれ再送制御に４５０ms，５５０ms，５００msの再送時間を要したとすると、平均再送制御時間は５００msとなる。
【０１０５】
（再送制御時間予測手段について）
再送制御時間予測手段は、階層数取得手段によって取得した階層レベルと、ネットワーク品質取得手段等で取得した平均パケット損失率、平均再送制御時間を用いて再送制御時間の予測を行う。
【０１０６】
すなわち、再送制御時間予測手段は、以下の式（１）に示すように、ネットワーク品質取得手段によって複数のユーザ端末２から取得された平均パケット損失率Ｘ及び平均再送制御時間Ｙをそれぞれ平均化したものと、トラック毎に定まるコンテンツパケット総数α及びコンテンツパケット転送レートβとから１階層当りの再送制御時間の予測値に対応する再生マージンＺを算出する。
Ｚ＝ｆ（Ｘ，Ｙ，α，β）      ・・・式（１）
Ｚ：１階層かつ１トラック当りの再生マージン
Ｘ：放送チャンネル全体の平均パケット損失率
Ｙ：放送チャンネル全体の平均再送制御時間
α：１トラックのコンテンツパケット総数
β：１トラックのコンテンツパケット転送レート
なお、パケット総数αとは、一つのトラックのコンテンツデータをストリーミング配信するために必要なコンテンツパケット数をいう。
【０１０７】
再送制御時間予測手段は、このように算出した再生マージンＺに、階層数取得手段によって取得した階層レベルｋを積算（＝Ｚ×ｋ）し、再送制御時間を予測する。
【０１０８】
（再生時刻決定手段について）
再生時刻決定手段は、再送制御時間予測手段によって上述のように算出される再送制御時間の予測値に基づいて、コンテンツパケットの再生時刻Ｔａを以下の式（２）のように決定する。
Ｔａ＝Ｔr＋Ｚ×ｋ・・・式（２）
Ｔａ：再生時刻
Ｔｒ：現時刻
Ｚ：１階層かつ１トラック当りの再生マージン
ｋ：階層レベル（最大の階層数）
【０１０９】
すなわち、放送局端末１から最下層のユーザ端末２へ１トラックのコンテンツデータを配信する際、先頭のコンテンツパケットの送信開始から最下層のユーザ端末２における最後のコンテンツパケットの受信完了までに消費してもよいコンテンツパケット損失に対する再送制御時間、すなわち回復処理時間を予測してコンテンツデータの再生時刻Ｔａを決定するのである。そして、再生時刻決定手段で決定される再生時刻Ｔａは、再生時刻情報として、後述のストリーム送信手段によって送信されるコンテンツパケットの再生時刻領域26に格納され、トポロジーを構成する全ユーザ端末２に配信される。
【０１１０】
たとえば、平均パケット損失率＝１％、コンテンツパケット総量＝３００個、コンテンツパケット転送レート＝５００ms、１回当りの平均再送制御時間＝５００msとし、1回の再送処理により送信エラーを回復できるとすれば、１階層あたりの再生マージンＺは約コンテンツパケット３個分となる。そして、第４階層までユーザ端末２が接続されているときには、階層レベルの最大値＝４となるから、Ｚ×ｋ＝コンテンツパケット１２個分（６秒）となる。その結果、再生時刻決定手段は現時刻から６秒後を再生時刻として決定する。
【０１１１】
このように再生時刻決定手段が再生時刻を決定するため、ユーザ端末２のリングバッファ225は最適なプリバッファリングとなると共に、トラックギャップも最適化することができる。
【０１１２】
そして、再生時刻決定手段によって決定された再生時刻が再生時刻情報として再生時刻領域に格納され、コンテンツパケットが生成される。そして、このように生成されたコンテンツパケットは、後述のストリーム送信手段によって下層のユーザ端末２ａへ送信される。なお、本実施形態においては、コンテンツパケットの生成及び送信のための処理時間は、１つのコンテンツパケットを送信するのに比べて小さく無視できるものとする。
【０１１３】
また、再生時刻決定手段は、階層構造の階層レベルのみならず、通信プロトコルの種類に応じて再生時刻を決定する。すなわち、第１配信プロトコル時でのコンテンツ配信のときには上述（２）で示される式に基づいて再生時刻を決定し、第２配信プロトコル時でのコンテンツ配信では再送制御を考慮せず１コンテンツパケット分先の時刻に再生時刻を決定する。なお、第２配信プロトコル時に、階層レベルの最大値が大きく最下層のユーザ端末２に配信されるまでに再生時刻が始まってしまうような場合には、数コンテンツパケット分先の時刻に再生時刻を決定するようにしてもよい。
【０１１４】
つまり、第１コンテンツデータのトラックと第２コンテンツデータのトラックを交互に連結して配信するような場合、再生時刻決定手段は、上述のように、第１配信プロトコルによる第１コンテンツデータに対するトラックの配信を完了するまでに必要とされる再送制御時間を予測して第１コンテンツデータの再生時刻を決定する一方、第２配信プロトコルによる第２コンテンツデータに対するトラックの配信は再送制御時間を考慮せずに再生時刻を決定する。
【０１１５】
（エンコード手段、デコード手段について）
エンコード手段は、第２記憶部103の放送用コンテンツデータベース115に記憶されているコンテンツファイルのデータやＤＪの発話の音声データなどを、ストリーミング配信用のデータ形式、たとえばＡＳＦ、ＷＭＡ、ＷＭＶ等のデータ形式にエンコードする。なお、このデータ形式は、ＤＪ等が上述の入力手段を操作することによって選択することができると共に、ユーザ端末２からのデータ形式指定パケットに応じて選択することも可能である。
【０１１６】
一方、デコード手段は、ユーザ端末２から送信されるＤＪへの発話の音声データをストリーミング配信形式からビデオチップ108や音源チップ110で処理できるデータ形式へデコードする。また、放送用コンテンツデータベース115に記憶されているコンテンツデータをディスプレイ109などに表示するために、エンコードされたこのコンテンツデータをデコードする。
【０１１７】
（ストリーム送信手段について）
送信手段としてのストリーム送信手段は、キーボード105などの入力手段によって指定された放送用コンテンツデータベース115内のコンテンツデータや、マイク入力された音声データなどをネットワークインターフェイス104を介して、第１階層のユーザ端末２a1，２a2にストリーミング配信する。
【０１１８】
このストリーム送信手段によるユーザ端末２a1，２a2等へのストリーミング配信は、以下の手順で実行される（コンテンツファイルを配信する場合）。
【０１１９】
キーボード105やマウス106などの入力手段によってＤＪが配信したいコンテンツを選択すると、ストリーム送信手段は、このように選択されたコンテンツに対応するコンテンツファイルのデータを放送用コンテンツデータベース115から取り出す。
【０１２０】
次に、ストリーム送信手段は、放送用コンテンツデータベース115から取り出したコンテンツファイルのデータを、エンコード手段によってストリーミング配信用のデータ形式にエンコードし、コンテンツ符号化データとする。
【０１２１】
その後、ストリーム送信手段は、第１通信手段を制御し、ネットワークインターフェイス104を介して、エンコードされたコンテンツデータをユーザ端末２a1，２a２へ送信する。すなわち、ストリーム送信手段は、エンコードされたコンテンツデータを所定データ単位ごとに分割し、このように分割したコンテンツデータをパケットのペイロード部40に格納し、コンテンツパケットとして、第１通信手段によってネットワークインターフェイス104を介して順次ユーザ端末２a1，２a２へ送信するものである。
【０１２２】
（再生手段について）
再生手段は、マイク112から入力され、音源チップ110によってデジタル化されたＤＪの発話データと、放送用コンテンツデータベース115から取り出されたコンテンツファイルのデータと、ＶｏＩＰ制御手段によってユーザ端末２から受信した音声パケットのデータとをミキシングし、音源チップ110を介して内蔵スピーカ111から出力する。このように、再生手段は、リングバッファ127を介さずにそれぞれのデータを再生するため、放送局端末１側のＤＪ等は、ストリーム送信手段によってこれらのデータがユーザ端末２へ送信される前に、放送内容を確認することができる。なお、上述のミキシングは、再生手段ではなく別途設けたミキシング手段（図示せず）によって行うようにしてもよい。
【０１２３】
また、さらに第２の内蔵スピーカ（図示せず）を設け、再生手段は、リングバッファ127に蓄積されたコンテンツパケットをその再生時刻情報に基づいて再生し、この第２の内蔵スピーカから出力するようにしてもよい。なお、マウス106などの操作手段からの操作により、第２の内蔵スピーカから出力するか、或いは前記内蔵スピーカ111から出力するかを選択することができる。
【０１２４】
再生手段は、リングバッファ127コンテンツパケットをその再生時刻情報に基づいて再生するために、リングバッファ127に蓄積されたコンテンツパケットを順次取り出す。そして、取り出したコンテンツパケットの再生時刻領域26に格納された再生時刻情報と放送局端末１に内蔵されたタイマ（図示せず）が計時する時計時刻情報とから、今がコンテンツパケットの再生時刻であるかどうかを判定する。コンテンツの再生時刻である場合はコンテンツパケットのペイロード部40に格納されたコンテンツデータを音源チップ110及び第２の内蔵スピーカを介して音楽等のデータを出力する。
【０１２５】
なお、再生手段は、コンテンツパケットがＪＰＥＧパケットであれば、その再生時刻領域26を参照せずに、ディスプレイ109にＪＰＥＧ画像を表示する。なお、ＪＰＥＧパケットとは、コンテンツパケットのペイロード部40にＪＰＥＧファイルデータが格納されているコンテンツパケットをいい、再生手段は、データの拡張子などからそのファイル種別を判定することによってＪＰＥＧパケットを識別する。
【０１２６】
（トポロジー管理手段）
トポロジー管理手段は、ツリー状階層構造の第１階層に参加しているユーザ端末２ａのＩＰアドレスを管理している。また、トポロジー管理手段は、放送局端末１のＩＰアドレスである配信用ＩＰアドレスを管理している。そして、上述のストリーム送信手段はトポロジー管理手段が管理するユーザ端末２のＩＰアドレスを宛先アドレスとし、配信用ＩＰアドレスを送信元としてユーザ端末２へコンテンツデータの配信を行う。また、接続先紹介サーバ３に放送局端末１を登録するために、接続先紹介サーバ３へその登録に必要な情報を送信する。
【０１２７】
（表示制御手段について）
表示制御手段は、ビデオチップ108及びディスプレイ109を制御して、コンテンツデータや各種情報を表示する機能を有している。すなわち、表示制御手段は、ディスプレイ109にどのようにコンテンツの映像や各種情報を表示するかを制御する。
【０１２８】
（リングバッファについて）
リングバッファ127は、ストリーム送信手段から出力されるコンテンツパケットを順次蓄積する。そして、再生手段によって再生時刻になったコンテンツパケットがリングバッファ127から取り出され、そのペイロード部40のコンテンツデータが再生される。なお、リングバッファ127は、コンテンツパケットを格納する位置を示すライトポインタと次に取り出すコンテンツパケットを格納する位置を示すリードポインタを有しており、再生手段はこれらを利用してリングバッファ127への格納及び取り出しを行っている。
このように、リングバッファ127は、ストリーム送信手段から出力されたコンテンツパケットを、その再生時刻になるまで蓄積するために用いられるため、少なくとも最下層のユーザ端末２までの総再生マージン（Ｚ×ｋ）を吸収できる程度の容量のリングバッファが必要となる。
【０１２９】
（ＶｏＩＰ制御手段について）
ＶｏＩＰ制御手段は、所謂ＩＰ電話の仕組みを利用して放送局のＤＪと放送を視聴しているユーザとの会話を実現させるための機能を提供する。マイク112から入力されたＤＪによる発話内容は音源チップ110によってデジタル化された後、さらにＶｏＩＰ制御手段によってパケット化されてユーザ端末２へ送信される。一方、ユーザ端末２から受信した音声パケットはＶｏＩＰ制御手段へ送られ、音源チップ110によって音声データが復元されてから内蔵スピーカ111へ出力される。
【０１３０】
ここで、ストリーム送信手段が第２通信手段を使ってストリームを配信する場合には、上記ＶｏＩＰ制御手段によって取得された音声データがストリーム制御手段に渡されて配信されるかたちとなる。また、マイク112から入力された音声データと共に音楽などのコンテンツデータをも同時に送信するときには、ミキシング手段（図示せず）によって、ＶｏＩＰ制御手段によって取得された音声データと音楽などのコンテンツデータとがデジタルミキシングされ、その後エンコードされてストリーム送信手段によってユーザ端末２へ送信される。
【０１３１】
［３．ユーザ端末２の構成等の説明］
次に、図１４を参照して、ユーザ端末２の構成及び動作について説明する。
【０１３２】
図１４は、本実施形態におけるユーザ端末２の概略構成例を示す図である。ユーザ端末２は、専用のコンピュータのほか、一般のパーソナルコンピュータを適用可能であり、図１４に示すように、ＣＰＵ（Central  Processing  Unit）201と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置としての第１記憶部202と、各種データ等を記憶するＨＤＤ（Hard  Disc  Drive）等から構成された第２記憶部203と、インターネット４を介して放送局端末１や接続先紹介サーバ３との間で通信を行うネットワークインターフェイス204と、ユーザがユーザ端末２を遠隔操作するために所定の赤外線信号を送信及び受信するリモコン205と、このリモコン205と赤外線により通信を行うための赤外線ポート206と、赤外線ポート206を制御する周辺機器制御チップ207と、ＣＰＵ201からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを後述のディスプレイ209に表示するビデオチップ208と、ビデオチップ208から送信される信号に応じた表示を行うディスプレイ209と、ＦＭ音源(Frequency Modulation)やWave Table音源などの音源を有する音源チップ210と、音源チップ210から出力されるオーディオ信号を音波に変換する内蔵スピーカ211と、ユーザの発話内容をオーディオ信号に変換して音源チップ210へ出力するためのマイク214とを備えて構成され、これらの各種構成要素はシステムバス212を介して相互に接続されている。なお、本実施形態においては、ＣＰＵ201と第１記憶部202とで制御手段213を構成している。また、ネットワークインターフェイス204は、ルータ10bを介して、インターネット４に接続されている。
【０１３３】
（第１記憶部202について）
また、第１記憶部202には、ユーザ端末２のコンピュータとしての基本的な機能を提供するためのＯＳプログラム220と、ツリー接続された１段上層の端末装置（放送局端末１又はユーザ端末２）のＩＰアドレスとツリー接続された１段下層のユーザ端末２のＩＰアドレスの管理等を行うためのトポロジー制御プログラム221と、放送局端末１から直接又は他のユーザ端末２に中継されてストリーミング配信されるコンテンツデータをストリーム受信等を行うためのストリーム制御プログラム222と、ディスプレイ209を制御等を行うための画面制御プログラム223と、配信されたコンテンツデータを再生等を行うためのプレイヤプログラム224、上流端末装置から受信したパケットを一時蓄積するためのリングバッファ225と、放送局端末1とＳＩＰ等のプロトコルを使ってＶｏＩＰを実施するためのＶｏＩＰ制御プログラム226等を記憶しており、これらはＣＰＵ201によって読み出され、ＣＰＵ201によってこれらのプログラムに従った機能が実行される。
【０１３４】
ここで、ＯＳプログラム220は、ＣＰＵ201によって読み出されて実行されることにより、リモコン205の入出力に関する機能や、第１記憶部202や第２記憶部203などのメモリ管理などのユーザ端末２であるコンピュータの基本的な機能を実行可能にするものである。そして、このＯＳプログラム220がＣＰＵ201によって実行された状態で、上述のトポロジー制御プログラム221、ストリーム制御プログラム222、画面制御プログラム223、プレイヤプログラム224、ＶｏＩＰ制御プログラム226等が第１記憶部202から読み出されて実行される。
【０１３５】
なお、ＯＳプログラム220、トポロジー制御プログラム221、ストリーム制御プログラム222、画面制御プログラム223、プレイヤプログラム224、ＶｏＩＰ制御プログラム226等は、例えば、インターネット４に接続されたサーバ等から第１記憶部202にダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第１記憶部202に読み込まれるようにしてもよい。
【０１３６】
（制御手段213について）
制御手段213は、上述のようにＣＰＵ201と第１記憶部202とから構成され、ＣＰＵ201が第１記憶部202に記憶された各種プログラム220〜224，226を読み出して実行することにより、ユーザ端末２全体を統括制御し、かつ、後述する第１通信手段、第２通信手段、接続先紹介要求送信手段、接続先候補受信手段、接続手段、トポロジー管理手段、ストローミング制御手段、デコード手段、再生手段、表示制御手段、ＶｏＩＰ制御手段等として機能するようになっている。
【０１３７】
なお、ＣＰＵ201がストリーム制御プログラム222を実行することによって、第１通信手段、第２通信手段、ストリーム制御手段等として、またＣＰＵ201がトポロジー制御プログラム221を実行することによってトポロジー管理手段、接続先紹介要求送信手段、接続先候補受信手段、接続手段等として、またＣＰＵ201が画面制御プログラム223を実行することによって表示制御手段等として、さらにＣＰＵ201がプレイヤプログラム224を実行することによってデコード手段及び再生手段等として、ＣＰＵ201がＶｏＩＰ制御プログラム226を実行することによってＶｏＩＰ制御手段としてそれぞれ機能するようになっている。
【０１３８】
（第１通信手段、第２通信手段について）
第１通信手段は、通信エラー発生時に再送制御を行う上述の第１配信プロトコルを用いて、ツリー接続された１段上層の端末装置から配信されるコンテンツデータを受信し、このように受信したコンテンツデータをツリー接続された１段下層のユーザ端末２へ配信するために用いられる。
【０１３９】
一方、第２通信手段は、通信エラー発生時に再送制御を行わない上述の第２配信プロトコルを用いて、ツリー接続された１段上層の端末装置から配信されるコンテンツデータを受信し、このように受信したコンテンツデータをツリー接続された１段下層のユーザ端末２へ配信するために用いられる。
【０１４０】
（接続先紹介要求送信手段について）
接続先紹介要求送信手段は、自ユーザ端末２をコンテンツ配信システムＳへ参加させるために、接続先紹介サーバ３へ自ユーザ端末２の登録を要求すると共に、接続先紹介要求を送信して接続先紹介サーバ３へ接続先候補を要求する機能を有している。
【０１４１】
（接続先候補受信手段について）
接続先候補受信手段は、接続先紹介要求送信手段によって接続先紹介サーバ３へ送信された接続先紹介要求に対して、接続先紹介サーバ３から送信される接続先候補の情報、すなわち接続先候補の端末装置のＩＰアドレスやポート番号など（以下、接続先候補の情報を含めて、「接続先候補」と呼ぶことがある。）を受信する機能を有する。
【０１４２】
（接続手段について）
接続手段は、接続先候補受信手段によって受信した接続先候補の情報に基づいて、その接続先候補への接続を行う機能を有する。すなわち、接続手段は、接続先候補のＩＰアドレス及びポート番号等をあて先とした接続要求を行い、接続先候補との論理接続を行う。このように接続先候補と接続することによって自ユーザ端末２をツリー状階層構造の一部に組み込むことが可能となる。
【０１４３】
（トポロジー管理手段について）
トポロジー管理手段は、現在接続している配信チャンネルにおいて、接続手段によって接続したツリー状階層構造の１段上層の端末装置のＩＰアドレスやポート番号を第１記憶部202に記憶して管理し、また、後述するストリーム中継制御手段によってコンテンツデータを転送するツリー状階層構造の１段下層のユーザ端末２のＩＰアドレス及びポート番号などを第１記憶部202に記憶して管理する。
【０１４４】
（デコード手段について）
デコード手段は、ストリーミング配信用のデータ形式にエンコードされたデータを内蔵スピーカ211やディスプレイ209などに表示するためにデコードする。
【０１４５】
（ストリーム制御手段）
ストリーム制御手段は、上層の端末装置からストリーミング配信されるコンテンツデータを受信するストリーム受信制御手段と、ストリーム受信制御手段により受信したコンテンツデータを下層のユーザ端末２へストリーミング配信するストリーム中継制御手段と、損失パケットを検知して平均パケット損失率を計算すると共に、平均再送制御時間を計算する遅延情報検出手段しての機能を有している。
【０１４６】
ストリーム受信制御手段は、上層のユーザ端末２又は放送局端末１から第１配信プロトコル又は第２配信プロトコルにより順次送信されるコンテンツパケットを順次受信する機能を有し、上層の端末装置がコンテンツデータの配信に用いる通信プロトコルと同一の通信プロトコルを用いてこの上層の端末装置との通信を行う。なお、このストリーム受信制御手段は、順次受信したコンテンツパケットをリングバッファ225へ蓄積する。
【０１４７】
また、ストリーム受信制御手段は、上層の端末装置からのコンテンツパケットの受信状態を常に監視する機能を有している。すなわち、最後にコンテンツパケットを受信した時刻から一定時間経過しても次のコンテンツパケットを受信できないとき、上層の端末装置からのストリーミング配信が途絶されたと判定し、接続先紹介要求送信手段を動作させて、接続先紹介サーバ３へ接続先紹介要求を送信する。
【０１４８】
ストリーム中継制御手段は、上層の端末装置から順次ストリーミング配信されるコンテンツパケットを下層のユーザ端末２へ順次送信する機能を有し、上層の端末装置がコンテンツ配信に用いている通信プロトコルと同様の通信プロトコルを用いて下層のユーザ端末２との通信を行う。
【０１４９】
遅延情報検出手段は、所定間隔でリングバッファ225を走査することによって、損失パケットの数を検出して、この損失パケットの数に基づいて平均損失パケット率を算出する。また、遅延情報検出手段は、第１記憶部202の再送時間記憶領域に格納された再送制御にかかった時間に基づき、平均再送制御時間を算出する。
【０１５０】
このように算出された平均損失パケット率と平均再送制御時間は、遅延情報検出手段によって、放送局端末１へ送信される。
【０１５１】
なお、損失パケットの数は、リングバッファ225に格納されたコンテンツパケットのトラック番号領域27のシーケンス番号の連続性を検査することによって行われる。すなわち、再生トラックにおいて送信される複数のコンテンツパケットには、そのシーケンス番号領域25に連続のシーケンス番号が割り当てられており、コンテンツパケットが損失するとそのシーケンス番号のコンテンツパケットが欠落するために、そのシーケンス番号の連続性を検出するのである。
【０１５２】
（再生手段について）
再生手段は、接続先候補から受信したコンテンツデータ、すなわちストリーム受信制御手段で受信したコンテンツパケットを順次再生する機能を有している。この再生手段は、音源チップ210を動作させることによってこの機能を実現しており、デコード手段により所定のコンテンツデータ形式（たとえば、Wave形式）に変換されたデータを音源チップ210やビデオチップ208によってオーディオ信号やビデオ信号へ変換した後、このオーディオ信号を内蔵スピーカ211へ出力したり、ビデオ信号をディスプレイ209へ出力したりすることによってコンテンツデータの再生を行う。なお、上述のデコード手段を含めて再生手段とすることもできる。
【０１５３】
（リングバッファについて）
リングバッファ225は、ストリーム受信制御手段によって受信されたコンテンツパケットを順次蓄積する。そして、再生手段によって再生時刻になったコンテンツパケットがリングバッファ225から取り出され、そのペイロード部40のコンテンツデータが再生される。なお、リングバッファ225は、コンテンツパケットを格納する位置を示すライトポインタと次に取り出すコンテンツパケットを格納する位置を示すリードポインタを有しており、再生手段はこれらを利用してリングバッファ225への格納及び取り出しを行っている。
【０１５４】
このように、リングバッファ225は、ストリーム受信制御手段により受信されたコンテンツパケットを、その再生時刻になるまで蓄積するために用いられるため、再生マージンＺ×ｋが吸収できる程度の容量のリングバッファが必要となる。
【０１５５】
（表示制御手段について）
表示制御手段は、ビデオチップ208及びディスプレイ209を制御して、コンテンツデータや各種情報を表示する機能を有している。すなわち、表示制御手段は、ディスプレイ209にどのようにコンテンツの映像や各種情報を表示するかを制御することができる。ここで、表示制御手段は、第３コンテンツデータ再生手段に対応する。
【０１５６】
また、表示制御手段は、第２コンテンツデータのトラックの再生終了直後、送信された第３コンテンツデータとしての画像データを表示装置であるディスプレイ209上に表示し、画像データ受信後に受信した第１コンテンツデータの再生時刻まで、画像データのディスプレイ209での表示を維持する制御を行う。
【０１５７】
このように、第２コンテンツデータのトラックの再生後、第１コンテンツデータのトラックを再生するまでに発生するインターバルにディスプレイ209上に放送局端末１から送信された画像を表示することができるため、音楽コンテンツの再生が停止していてもユーザの不快感を軽減させることができる。さらに、放送局端末１から配信する画像データを次に再生する第１コンテンツデータと関連するものとすれば、上記効果を促進できる。
【０１５８】
なお、放送局端末１から画像データが配信されないような場合には、表示制御手段は、予め第１記憶部202または第２記憶部203に記憶させた画像データをディスプレイ209に表示するようにしてもよい。
【０１５９】
すなわち、画像データ記憶手段として第１記憶部202または第２記憶部203に画像データを予め記憶しておき、第２コンテンツデータのトラックの再生終了後、表示制御手段は、この第１記憶部202または第２記憶部203に記憶された画像データをディスプレイ209上に表示し、再生終了した第２コンテンツデータのトラックの直後に受信した第１コンテンツデータの再生時刻まで、画像データの表示装置での表示を維持する制御を行う。
【０１６０】
このように画像データを放送局端末１からユーザ端末２へ送信するではなく、自ユーザ端末２に予め画像データを格納しておき、このように格納した画像データをディスプレイ209上に表示するようにすれば、放送局端末１の処理負荷を軽減することができ、ユーザ端末２に格納する画像データを選択又は設定可能とすることによって、ユーザの好みにあった画像を表示させることができる。
【０１６１】
（ＶｏＩＰ制御手段について）
ＶｏＩＰ制御手段は、ＩＰ電話の仕組みを利用して放送局のＤＪと放送を視聴しているユーザとの会話を実現させるための機能を提供する。マイク214から入力されたユーザによる発話内容は音源チップ210によってデジタル化された後、さらにＶｏＩＰ制御手段によってパケット化されて放送局端末1へ送信される。一方、放送局端末1から受信した音声パケットはＶｏＩＰ制御手段へ送られ、音源チップ210によって音声データが復元されてから内蔵スピーカ211へ出力される。
【０１６２】
［４．接続先紹介サーバ３の構成等の説明］
次に、図１５を参照して、接続先紹介サーバ３の構成及び動作について説明する。
【０１６３】
図１５は、本実施形態における接続先紹介サーバ３の概略構成例を示す図である。接続先紹介サーバ３は、専用サーバコンピュータのほか、一般のサーバコンピュータを適用可能であり、図１５に示すように、ＣＰＵ（Central  Processing  Unit）301と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置としての第１記憶部302と、各種データ等を記憶するＨＤＤ（Hard  Disc  Drive）等から構成された第２記憶部303と、インターネット４を介して放送局端末１やユーザ端末２との間で通信を行うネットワークインターフェイス304と、所定の情報を入力可能なキーボード305やマウス306等の入力手段を制御する周辺機器制御チップ307と、ＣＰＵ301からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを後述のディスプレイ309に表示するビデオチップ308とを備えて構成され、これらの各種構成要素はシステムバス310を介して相互に接続されている。なお、本実施形態においては、ＣＰＵ301と第１記憶部302とで制御手段311を構成している。なお、ネットワークインターフェイス304は、ルータ10cを介して、インターネット４に接続されている。
【０１６４】
また、第２記憶部303には、放送チャンネルのトポロジーの状態、すなわち放送局端末１やユーザ端末２の接続状態を記憶するトポロジーデータベース312と、放送局端末１やユーザ端末２の所在位置であるＩＰアドレスを記憶する端末管理データベース313とを有している。
【０１６５】
（第１記憶部302について）
また、第１記憶部302には、接続先紹介サーバ３のコンピュータとしての基本的な機能を提供するためのＯＳプログラム320と、配信チャンネルに接続される複数のユーザ端末２のＩＰアドレスや放送局端末１のＩＰアドレス等を管理するための端末管理プログラム321と、放送チャンネルのツリー状階層構造を構築及び管理等を行うためのトポロジー管理プログラム322と、ユーザ端末２から送信される接続先紹介要求に対応する配信チャンネルの接続先候補を判定し、ユーザ端末２へ接続先候補の情報を送信等を行うための接続先紹介プログラム323と、コンテンツ配信システムＳの運用管理等を行うための運用管理プログラム324等を記憶しており、これらはＣＰＵ301によって読み出され、ＣＰＵ301によってこれらのプログラムに従った機能が実行される。
【０１６６】
ここで、ＯＳプログラム320は、ＣＰＵ301によって読み出されて実行されることにより、キーボード305やマウス306の入出力に関する機能や、第１記憶部302や第２記憶部303などのメモリ管理などのコンピュータの基本的な機能を実行可能にするものである。そして、このＯＳプログラムがＣＰＵ301によって実行された状態で、上述の端末管理プログラム321、トポロジー管理プログラム322、接続先紹介プログラム323、運用管理プログラム324等が実行される。
【０１６７】
なお、ＯＳプログラム320、端末管理プログラム321、トポロジー管理プログラム322、接続先紹介プログラム323、運用管理プログラム324等は、例えば、インターネット４に接続されたサーバ等から第１記憶部302にダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第１記憶部302に読み込まれるようにしてもよい。
【０１６８】
（制御手段311について）
制御手段311は、上述のようにＣＰＵ301と第１記憶部302とから構成され、ＣＰＵ301が第１記憶部302に記憶された各種プログラム320〜324を読み出して実行することにより、接続先紹介サーバ３全体を統括制御し、かつ、後述する接続先候補選択手段、通知手段、トポロジー管理手段、端末管理手段等として機能させる。
【０１６９】
なお、ＣＰＵ301が端末管理プログラム321を実行することによって、端末管理手段等として、またＣＰＵ301がトポロジー管理プログラム322を実行することによってトポロジー管理手段等として、さらにＣＰＵ301が接続先紹介プログラム323を実行することによって接続先候補選択手段、通知手段等として、それぞれ機能するようになっている。
【０１７０】
（接続先候補選択手段について）
接続先候補選択手段は、ユーザ端末２から接続先紹介要求を受信したとき、コンテンツ配信システムＳの階層構造の構築状況等に基づいて、適切な接続先候補を選択する。
【０１７１】
（通知手段について）
通知手段は、接続候補選択手段によって選択された接続先候補を、接続先紹介要求を送信したユーザ端末２へ通知する機能を有する。この接続先候補の通知は、接続先候補の情報、すなわち接続先候補の端末装置のＩＰアドレスやポート番号などの情報を含む。
【０１７２】
（トポロジー管理手段について）
トポロジー管理手段は、放送局端末１から送信される放送局端末登録処理要求に基づいて、新規配信チャンネルのツリー状階層構造を生成するための新規トポロジー生成手段と、ユーザ端末２の接続先紹介要求や接続切断通知などのトポロジー変動通知によってユーザ端末２の接続情報を変更するトポロジー変更手段としての機能を有している。
【０１７３】
新規トポロジー生成手段は、放送局端末１から放送局端末登録処理要求を受信すると、放送局端末登録処理要求のトポロジーテーブルを生成してトポロジーデータベース312へ登録する。
【０１７４】
また、トポロジー変更手段は、トポロジーデータベース312に記憶されるトポロジーテーブルにユーザ端末２の情報を追加又は削除する機能を実行するものであり、ユーザ端末２からの接続先紹介要求、接続切断要求等に基づいて、トポロジーテーブルへの追加又は変更を行うものである。
【０１７５】
（端末管理手段について）
端末管理手段は、ユーザ端末２からのユーザ端末登録要求を受信すると、端末管理データベース313へこのユーザ端末２の所在情報であるＩＰアドレスを登録する。また、放送局端末１からの放送局端末登録要求を受信した場合も、この放送局端末１の所在情報であるＩＰアドレスを端末管理データベース313に登録する。なお、これらのＩＰアドレスはユーザ端末登録要求や放送局端末登録要求に含まれ、これらの登録要求からＩＰアドレスを取得する。
【０１７６】
以下、放送局端末１及びユーザ端末２の詳細動作について、フローチャートを用いて更に具体的に説明する。
【０１７７】
（放送局端末１の処理フローの説明）
放送局端末１のさらに具体的な動作について、図１６〜１９を参照して説明する。図１６は放送局端末１における処理全体を示すフローチャート、図１７は放送局端末１におけるネットワーク品質記録処理を示すフローチャート、図１８は放送局端末１におけるパケット配信処理を示すフローチャート、図１９は放送局端末１におけるコンテンツ再生処理を示すフローチャートである。
【０１７８】
まず、図１６を参照して、放送局端末における処理全体の概要を説明する。
【０１７９】
まず、放送局端末１の電源がＯＮされると、放送局端末１のトポロジー管理手段は、接続先紹介サーバ３に対して自放送局端末１の登録処理を行う（ステップＳ１）。すなわち、このトポロジー管理手段は、放送局端末１のＩＰアドレスや放送内容などの必要な情報を接続先紹介サーバ３へ送信し、接続先紹介サーバ３においてこれらの情報が登録される。
【０１８０】
次に、ネットワーク品質取得手段は、ツリー状階層構造で多層に接続される全てのユーザ端末２からネットワーク品質に関する情報である平均パケット損失率及び平均再送制御時間を取得するためのネットワーク品質記録処理を行う（ステップＳ２）。この放送局端末１の再参加処理については、図１７を用いて後に詳説する。
【０１８１】
その後、制御手段114は、第１記憶部102のネットワーク品質処理分岐フラグ領域に格納されたネットワーク品質処理分岐フラグの状態がＯＦＦ状態となっているかを判定する（ステップＳ３）。
【０１８２】
そして、ネットワーク品質処理分岐フラグがＯＮ状態であると判定する（ステップＳ３：Ｎｏ）と、制御手段114は、コンテンツデータのストリーミング配信を行うためのパケット配信処理を実行する（ステップＳ４）。この放送局端末１のパケット配信処理については、図１８を用いて後に詳説する。
【０１８３】
パケット配信処理の実行終了後、制御手段は、第１記憶部102のパケット配信処理分岐フラグ領域に格納されたパケット配信処理分岐フラグの状態がＯＦＦ状態となっているかを判定する（ステップＳ５）。そして、パケット配信処理分岐フラグの状態がＯＮ状態となっている（ステップＳ５：Ｎｏ）とき、制御手段114は、コンテンツ再生処理を実行する（ステップＳ６）。この放送局端末１のコンテンツ再生処理については、図１９を用いて後に詳説する。
【０１８４】
コンテンツ再生処理の実行が終了したとき、または、ステップＳ３でネットワーク品質処理分岐フラグの状態がＯＦＦ状態であるとき、または、ステップＳ５でパケット配信処理分岐フラグの状態がＯＦＦ状態であるとき、制御手段114は、放送局端末１の電源状態を検査（ステップＳ７）し、電源がＯＮ状態の時には、ステップＳ２からの処理を繰り返し行う。
【０１８５】
また、電源がＯＦＦ状態の時には、放送局端末１の全体処理を終了する。なお、放送局端末１の電源がＯＮからＯＦＦされたことを検出すると、各処理（たとえば、Ｓ２やＳ４の処理）の途中であっても、全体処理を終了する。
【０１８６】
（ネットワーク品質記録処理）
次に、図１７を参照して、放送局端末１におけるネットワーク品質記録処理について説明する。
【０１８７】
ネットワーク品質記録処理が開始されると、ネットワーク品質取得手段は、ネットワークインターフェイス104における受信パケットの有無を検出する。そして、受信パケットがあるとき、ネットワーク品質取得手段は、その受信パケットがユーザ端末２からの状態報告パケットであるか否かを判定する（ステップＳ１０）。
【０１８８】
ユーザ端末２からの状態報告パケットを受信したと判定する（ステップＳ１０：Ｙｅｓ）と、ネットワーク品質取得手段は、受信した状態報告パケットのペイロード部40に含まれる平均パケット損失率と平均再送制御時間を登録リスト117へ登録する（ステップＳ１１、Ｓ１２）。そして、ネットワーク品質取得手段は、ネットワーク品質処理分岐フラグの状態をＯＦＦ状態にして（ステップＳ１３）、ネットワーク品質記録処理を終了する。
【０１８９】
また、ステップＳ１０において、受信パケットがない場合や、受信したパケットが状態報告パケットでないと判定すると、ネットワーク品質取得手段は、ネットワーク品質処理分岐フラグの状態をＯＮ状態にして（ステップＳ１４）、ネットワーク品質記録処理を終了する。
【０１９０】
このように、ネットワーク品質取得手段は、階層構造に接続された複数のユーザ端末２から送信されるネットワーク品質情報を順次取得して、登録リスト117へ登録する。
【０１９１】
（パケット配信処理）
次に、図１８を参照して、放送局端末１におけるパケット配信処理について説明する。
【０１９２】
パケット配信処理が開始されると、ストリーム送信手段は、放送局端末１に内蔵されたタイマ（図示せず）が計時する時計時刻情報を参照して、パケットの送信契機となったか否かを判定する（ステップＳ２０）。なお、この送信契機は、配信するコンテンツのコンテンツパケット転送レートβ（ここでは、1秒間に流れるデータの伝送量を表す数値とする）によって定まるものである。すなわち、この送信契機の間隔は、コンテンツパケット転送レートβが小さいときには大きくなり、コンテンツパケット転送レートβが大きいときには小さくなる。
【０１９３】
ストリーム送信手段は、コンテンツパケットの送信契機となったと判定すると（ステップＳ２０：Ｙｅｓ）、さらに現在の配信モード、すなわち配信するトラックの種別が音楽トラックであるか否かを判定する（ステップＳ２１）。
【０１９４】
そして、現在の配信モードが音楽トラックとなっているとき（ステップＳ２１：Ｙｅｓ）、ストリーム送信手段は、次に送信すべきコンテンツパケットがその音楽トラックの先頭部分であるか否かを判定する（ステップＳ２２）。なお、音楽トラックの先頭部分であるか否かの判定は、その送信すべきコンテンツパケットのトラック番号領域27を検査することによって行なわれる。
【０１９５】
送信すべきコンテンツパケットがその音楽トラックの先頭部分であると判定する（ステップＳ２２：Ｙｅｓ）と、階層数取得手段は、接続先紹介サーバ３へ現在のトポロジーにおける最大の階層数、すなわち階層レベルを問い合わせ、接続先紹介サーバ３から現在の階層レベルを取得する（ステップＳ２３）。
【０１９６】
その後、再送制御時間予測手段によって、放送チャンネル全体の平均パケット損失率が計算される。すなわち、再送制御時間予測手段は、登録リスト117からトポロジーを構成する全てのユーザ端末２の平均パケット損失率を取り出し、これらの平均値を計算することによって、放送チャンネル全体の平均パケット損失率とする（ステップＳ２４）。
【０１９７】
また、再送制御時間予測手段は、登録リスト117からトポロジーを構成する全てのユーザ端末２の平均再送制御時間を取り出し、これらの平均値を計算することによって、放送チャンネル全体の平均再送制御時間とする（ステップＳ２５）。
【０１９８】
その後、再送制御時間予測手段によって、トポロジー１階層当りの再生マージンが計算される、すなわち、再生制御時間予測手段は、ステップＳ２４で算出した放送チャンネル全体の平均パケット損失率と、ステップＳ２５で算出した放送チャンネル全体の平均再送制御時間と、音楽トラックのパケット総数αと、音楽トラックのパケット転送レートβとパラメータとして上述の式（１）によってトポロジー１階層当りの再生マージンＺを計算する（ステップＳ２６）。
【０１９９】
続いて、再生時刻決定手段によって、このように算出されたトポロジー１階層当りの再生マージンＺとトポロジーの階層レベルｋとを用いて、音楽トラックにおけるコンテンツパケット損失に対する回復処理時間を計算する。そして、再生時刻決定手段は、この回復処理時間に基づいてプリバッファリング量を計算する（ステップＳ２７）。なお、このプリバッファリング量とは、放送局端末１がコンテンツパケットの送信を開始してから放送局端末１及びユーザ端末２において音楽コンテンツの再生が開始されるまでに放送局端末１やユーザ端末２においてバッファリングされる最大コンテンツパケット数である。
【０２００】
そして、ストリーム送信手段は、音楽トラックとして配信するコンテンツファイルを放送用コンテンツデータベース115から取り出し、このコンテンツファイルを所定データ単位に分割する。さらに、ストリーム送信手段は、分割したデータをコンテンツパケットのペイロード部40に格納する（ステップＳ２８）。
【０２０１】
次に、再生時刻決定手段によって、ステップＳ２７で算出したプリバッファリング量と放送局端末１に内蔵されたタイマが計時する時計時刻情報とから上述の式（２）を用いてコンテンツデータの再生時刻Ｔａが決定され、コンテンツパケットの再生時刻領域26に再生時刻Ｔａの情報が格納される。その後、ストリーム送信手段によってコンテンツパケットがネットワークインターフェイス104を介して下層のユーザ端末２へ配信される（ステップＳ２９）。
【０２０２】
このように、音楽トラックの先頭のコンテンツパケットを送信する際に、プリバッファリング量を算出すると共にこのプリバッファリング量と時計時刻とに基づいて再生時刻Ｔａが算出され、この再生時刻Ｔａがコンテンツパケットに格納される。これにより、階層構造の変化に応じて生じる配信遅延の影響を適切に吸収して、端末装置におけるコンテンツの再生同期をとることができるのである。
【０２０３】
また、ステップＳ２２において、送信すべきコンテンツパケットがその音楽トラックの先頭部分ではないと判定する（ステップＳ２２：Ｎｏ）と、ストリーム送信手段は、送信すべきコンテンツパケットがその音楽トラックの終端部分であるか否かを判定する（ステップＳ３０）。
【０２０４】
そして、送信すべきコンテンツパケットがその音楽トラックの終端部分であると判定する（ステップＳ３０：Ｙｅｓ）と、現在の配信モードをＤＪとの掛け合いトラックの配信へ切り替える（ステップＳ３１）。
【０２０５】
その後、ストリーム送信手段は、コンテンツパケットの送信インターバル、すなわち送信契機の間隔をＤＪとの掛け合いトラック用へと切り替え（ステップＳ３２）、第１記憶部102の送信許可フラグ領域に格納された送信許可フラグの状態をＯＦＦ状態にする（ステップＳ３３）。なお、この送信許可フラグは、コンテンツパケットの生成及びユーザ端末２への送信を許可するか否かのフラグであり、この送信許可フラグをＯＦＦ状態にすることによって、コンテンツパケットの生成及びユーザ端末２への送信が停止される。
【０２０６】
一方、ステップＳ３０において、送信すべきコンテンツパケットがその音楽トラックの終端部分でないと判定すると（ステップＳ３０：Ｎｏ）、ステップＳ２８の処理を開始する。
【０２０７】
また、ステップＳ２１において、現在の配信モードが音楽トラックではないとき、すなわちＤＪとの掛け合いトラックであると判定する（ステップＳ２１：Ｎｏ）と、ストリーム送信手段は、次に送信すべきコンテンツパケットがそのＤＪとの掛け合いトラックの先頭部分であるか否かを判定する（ステップＳ３４）。
【０２０８】
送信すべきコンテンツパケットがそのＤＪとの掛け合いトラックの先頭部分であると判定する（ステップＳ３４：Ｙｅｓ）と、ストリーム送信手段は、送信許可フラグの状態がＯＮ状態であるか否かを判定する（ステップＳ３５）。
【０２０９】
送信許可フラグの状態がＯＮ状態であると判定する（ステップＳ３５：Ｙｅｓ）と、マイク112から得たＤＪの発話データとＶｏＩＰ制御手段から取得したユーザの発話データとが上述のミキシング手段により合成される（ステップＳ３６）。そして、この合成データはエンコード手段によってエンコードされ、データ所定のデータ単位毎にコンテンツパケットのペイロード部40に格納される（ステップＳ３７）。
【０２１０】
さらに、再生時刻決定手段によって、再送制御を考慮しない１コンテンツパケット分先の時刻を再生時刻と再生時刻情報してこのコンテンツパケットの再生時刻領域26へ格納される。その後、ストリーム送信手段によってコンテンツパケットがネットワークインターフェイス104を介して下層のユーザ端末２へ配信される（ステップＳ３８）。
【０２１１】
また、ステップＳ３４において、送信すべきコンテンツパケットがそのＤＪとの掛け合いトラックの先頭部分ではないと判定する（ステップＳ３４：Ｎｏ）と、ストリーム送信手段は、送信すべきコンテンツパケットがＤＪとの掛け合いトラックの終端部分であるか否かを判定する（ステップＳ３９）。
【０２１２】
そして、送信すべきコンテンツパケットがＤＪとの掛け合いトラックの終端部分であると判定する（ステップＳ３９：Ｙｅｓ）と、ストリーム送信手段は、次に配信されるべき音楽コンテンツファイルに関連したＪＰＥＧファイルをＪＰＥＧファイルデータベース116から取り出し、所定データ単位に分割して順次コンテンツパケットのペイロード部40に格納しながら、ネットワークインターフェイス104を介して、下層のユーザ端末２へ送信する（ステップＳ４０）。
【０２１３】
一方、ステップＳ３９において、送信すべきコンテンツパケットがＤＪとの掛け合いトラックの終端部分でないと判定すると（ステップＳ３９：Ｎｏ）、ステップＳ３６の処理を実行する。
【０２１４】
その後、ストリーム送信手段は、現在の配信モードを音楽トラックの配信へ切り替える（ステップＳ４１）と共に、コンテンツパケットの送信インターバル、すなわち送信契機の間隔を音楽トラック用へと切り替える（ステップＳ４２）。
【０２１５】
ステップＳ２９、Ｓ３３、Ｓ３８、Ｓ４２での処理終了後、或いはステップＳ３５において送信許可フラグの状態がＯＮ状態ではないとき（ステップＳ３５：Ｎｏ）、ストリーム送信手段は、配信処理分岐フラグの状態をＯＦＦ状態へ変更し（ステップＳ４３）、パケット配信処理を終了する。またステップＳ２０において、ストリーム送信手段は、コンテンツパケットの送信契機となっていないと判定すると（ステップＳ２０：Ｎｏ）、配信処理分岐フラグの状態をＯＮ状態にして（ステップＳ４４）、パケット配信処理を終了する。
【０２１６】
（コンテンツ再生処理）
次に、図１９を参照して、放送局端末１におけるコンテンツ再生処理について説明する。
【０２１７】
コンテンツ再生処理が開始されると、再生手段は、リングバッファ127においてリードポインタ位置に格納されたコンテンツパケットをリングバッファ127から取り出す。そして、このように取り出したリングバッファ127のプロトコル領域24を検査し（ステップＳ６０）、トラック種別を判別する（ステップＳ６１）。すなわち、再生手段は、プロトコル領域24に格納された通信プロトコルの種別が高遅延低損失プロトコルの場合は音楽トラックと判別（ステップＳ６１：Ｙｅｓ）し、低遅延高損失プロトコルの場合は、ＤＪとの掛け合いトラックであると判別する（ステップＳ６１：Ｎｏ）。
【０２１８】
高遅延低損失プロトコルの場合（ステップＳ６１：Ｙｅｓ）、再生手段は、その再生すべきコンテンツパケットがトラックの終端部分であるか否かを判定する（ステップＳ６２）。
【０２１９】
再生すべきコンテンツパケットがトラックの終端部分であると判定すると（ステップＳ６２；Ｙｅｓ）、再生手段は、送信許可フラグの状態をＯＮ状態にする（ステップＳ６３）。このように送信許可フラグをＯＮ状態にすることによって、ストリーム送信手段によるコンテンツパケットの生成処理及びユーザ端末２への送信処理が再開する。
【０２２０】
ステップＳ６２において再生すべきコンテンツパケットがトラックの終端部分ではないと判定したとき（ステップＳ６２：Ｎｏ）、またはステップＳ６３の処理が終了すると、再生手段は、再生すべきコンテンツパケットの再生時刻領域26から再生時刻情報を取り出し、この再生時刻情報と放送局端末１に内蔵されたタイマが計時する時計時刻情報とからコンテンツの再生時刻であるか否かを判定する（ステップＳ６４）。
【０２２１】
そして、コンテンツの再生時刻である判定すると（ステップＳ６４：Ｙｅｓ）、再生手段はリングバッファ127から再生すべきコンテンツパケットを取り出し、このコンテンツパケットのペイロード部40に格納されたコンテンツデータの再生を行い（ステップＳ６５）、コンテンツ再生処理を終了する。一方、コンテンツの再生時刻でないと判定すると（ステップＳ６４：Ｎｏ）、リングバッファ127からコンテンツパケットを取り出さずにコンテンツの再生は行わずにコンテンツ再生処理を終了する。
【０２２２】
また、ステップＳ６１で、現在の再生トラックが音楽トラックでない、すなわちＤＪとの掛け合いトラックであると判定すると（ステップＳ６１：Ｎｏ）、再生手段は再生すべきコンテンツパケットがＪＰＥＧデータを有するＪＰＥＧパケットであるか否かを判定する（ステップＳ６６）。
【０２２３】
そして、再生すべきコンテンツパケットがＪＰＥＧパケットであると判定すると（ステップＳ６６：Ｙｅｓ）、再生手段はリングバッファ127から再生すべきコンテンツパケットを取り出し、このコンテンツパケットのペイロード部40に格納されたＪＰＥＧデータの再生を行う（ステップＳ６７）。このＪＰＥＧデータの再生は、ディスプレイに表示することによって行い、コンテンツ再生処理を終了する。
【０２２４】
一方、再生すべきコンテンツパケットがＪＰＥＧパケットでないと判定すると（ステップＳ６６：Ｎｏ）、ユーザ端末２のユーザの発話であると判定してステップＳ６４の処理を行う。
【０２２５】
以上のように、再生手段によるコンテンツ再生処理では、再生すべきコンテンツパケットのデータが音楽データや音声データなどのオーディオデータであるときには、このコンテンツパケットが再生時刻であるか否かを判定して再生処理を行い、一方で再生すべきコンテンツパケットのデータがＪＰＥＧデータであるときには再生時刻の判定なしに再生処理を行うものである。
【０２２６】
（ユーザ端末２の処理フローの説明）
ユーザ端末２のさらに具体的な動作について、図２０〜２６を参照して説明する。図２０はユーザ端末２における処理全体を示すフローチャート、図２１はユーザ端末２における再参加処理を示すフローチャート、図２２はユーザ端末２におけるパケット中継処理を示すフローチャート、図２３はユーザ端末２におけるパケット再送処理を示すフローチャート、図２４はユーザ端末２におけるパケットモニタ処理を示すフローチャート、図２５はユーザ端末２におけるパケットコンテンツ再生処理を示すフローチャート、図２６はユーザ端末２におけるＶｏＩＰ送信処理を示すフローチャートである。
【０２２７】
まず、図２０を参照して、ユーザ端末２における処理全体の概要を説明する。
【０２２８】
まず、ユーザ端末２の電源がＯＮされると、ユーザ端末２のトポロジー管理手段は、接続先紹介サーバ３に対して自ユーザ端末２の登録処理を行う（ステップＳ１００）。すなわち、このトポロジー管理手段は、ユーザ端末２のＩＰアドレスなどの必要な情報を接続先紹介サーバ３へ送信する。そして、接続先紹介サーバ３のトポロジー管理手段によって、これらの情報がトポロジーデータベース312と端末管理データベース313へ登録される。また、ユーザ端末２の接続先紹介要求送信手段は、接続先紹介サーバ３へ接続先紹介要求を送信する。
【０２２９】
次に、ユーザ端末２の再参加処理が、ストリーム制御手段、接続先紹介要求送信手段、接続先候補受信手段、接続手段等によって実行される（ステップＳ１０１）。このユーザ端末２の再参加処理については、図２１を用いて後に詳説する。
【０２３０】
ユーザ端末２の再参加処理が終了すると、制御手段は、第１記憶部202の再参加処理分岐フラグ領域に格納される再参加処理分岐フラグの状態がＯＦＦ状態か否かを判別する（ステップＳ１０２）。
【０２３１】
そして、再参加処理分岐フラグの状態がＯＦＦ状態でない、すなわちＯＮ状態であると判定すると（ステップＳ１０２：Ｎｏ）、ストリーム制御手段によってパケット中継処理が実行される（ステップＳ１０３）。このユーザ端末２のパケット中継処理については、図２２を用いて後に詳説する。
【０２３２】
このパケット中継処理が終了すると、制御手段は、第１記憶部202のパケット中継処理分岐フラグ領域に格納されるパケット中継処理分岐フラグの状態がＯＦＦ状態か否かを判別する（ステップＳ１０４）。
【０２３３】
そして、パケット中継処理分岐フラグの状態がＯＦＦ状態でない、すなわちＯＮ状態であると判定すると（ステップＳ１０４：Ｎｏ）、ストリーム制御手段によってパケット再送処理が実行される（ステップＳ１０５）。このユーザ端末２のパケット再送処理については、図２３を用いて後に詳説する。
【０２３４】
このパケット再送処理が終了すると、制御手段は、第１記憶部202のパケット再送処理分岐フラグ領域に格納されるパケット再送処理分岐フラグの状態がＯＦＦ状態か否かを判別する（ステップＳ１０６）。
【０２３５】
そして、パケット中継処理分岐フラグの状態がＯＦＦ状態でない、すなわちＯＮ状態であると判定すると（ステップＳ１０６：Ｎｏ）、表示制御手段等によってモニタ処理が実行される（ステップＳ１０７）。このユーザ端末２のモニタ処理については、図２４を用いて後に詳説する。
【０２３６】
このモニタ処理が終了すると、制御手段は、第１記憶部202のモニタ処理分岐フラグ領域に格納されるモニタ処理分岐フラグの状態がＯＦＦ状態か否かを判別する（ステップＳ１０８）。
【０２３７】
そして、モニタ処理分岐フラグの状態がＯＦＦ状態でない、すなわちＯＮ状態であると判定すると（ステップＳ１０８：Ｎｏ）、再生手段等によってコンテンツ再生処理が実行される（ステップＳ１０９）。このユーザ端末２のコンテンツ再生処理については、図２５を用いて後に詳説する。
【０２３８】
このコンテンツ再生処理が終了すると、制御手段は、第１記憶部202のコンテンツ再生処理分岐フラグ領域に格納されるコンテンツ再生処理分岐フラグの状態がＯＦＦ状態か否かを判別する（ステップＳ１１１）。
【０２３９】
そして、コンテンツ再生処理分岐フラグの状態がＯＦＦでない、すなわちＯＮ状態であると判定すると（ステップＳ１１１：Ｎｏ）、ＶｏＩＰ制御手段によってＶｏＩＰデータ送信処理が実行される（ステップＳ１１２）。このユーザ端末２のＶｏＩＰデータ送信処理については、図２６を用いて後に詳説する。
【０２４０】
ステップＳ１０２において再参加処理分岐フラグの状態がＯＦＦ状態であると判定したとき、ステップＳ１０４においてパケット中継処理分岐フラグの状態がＯＦＦ状態であると判定したとき、ステップＳ１０６においてパケット再送処理分岐フラグの状態がＯＦＦ状態であると判定したとき、ステップＳ１０８においてモニタ処理分岐フラグの状態がＯＦＦ状態であると判定したとき、ステップＳ１１１においてコンテンツ再生処理分岐フラグの状態がＯＦＦ状態であると判定したとき、或いはステップＳ１１２のＶｏＩＰデータ送信処理が終了したとき、制御手段は、ユーザ端末２の電源の状態がＯＦＦ状態であるかを判定（ステップＳ１１０）し、ＯＦＦ状態であるときには処理を終了し、ＯＦＦ状態でないときには再びステップＳ１０１の処理へ戻る。
【０２４１】
（再参加処理）
次に、図２１を参照して、ユーザ端末２における再参加処理について説明する。
【０２４２】
ユーザ端末２のストリーム制御手段は、上層の端末装置からストリーム状態を監視し、ストリーム状態が途絶したか否かを判定する（ステップＳ１２０）。すなわち、最後にコンテンツパケットを受信したときから所定期間内に次のコンテンツパケットが受信できないときにストリーム状態が途絶したと判定する。
【０２４３】
そして、ストリーム状態が途絶したと判定すると（ステップＳ１２０：Ｙｅｓ）、ストリーム制御手段は、上流端末、すなわち上層の端末装置との接続状態を解除し（ステップＳ１２１）、接続先紹介要求送信手段は、接続先紹介サーバ３へ接続先紹介要求を送信する（ステップＳ１２２）。
【０２４４】
その後、制御手段は、再参加処理分岐フラグ領域に格納された再参加処理分岐フラグの状態をＯＦＦ状態とする（ステップＳ１２６）。
【０２４５】
また、ステップＳ１２０において、上流端末からのストリーム状態が途絶していないと判定すると（ステップＳ１２０：Ｎｏ）、ストリーム制御手段はステップＳ１２２において送信した接続先紹介要求に対して接続先紹介サーバ３の通信手段から上流ノードの接続先候補を接続先候補受信手段によって受信したか否かを判定する（ステップＳ１２３）。接続先候補を受信したと判定すると（ステップＳ１２３：Ｙｅｓ）、ユーザ端末２の接続手段は、接続先候補受信手段によって受信した接続先候補の情報に基づいて、その上流ノードの接続先候補への接続を行う（ステップＳ１２４）。
【０２４６】
接続先候補との接続が行われた後、ストリーム制御手段は、上層の端末装置からの開始されるストリーミング配信を受信し（ステップＳ１２５）、その後再参加処理分岐フラグの状態をＯＦＦ状態にする（ステップＳ１２６）。
【０２４７】
また、ステップＳ１２３において接続先候補を受信していないと判定すると（ステップＳ１２３：Ｎｏ）、再参加処理分岐フラグの状態をＯＮ状態にする（ステップＳ１２７）。
【０２４８】
ステップＳ１２６、Ｓ１２７の処理が終了すると、ユーザ端末２の再参加処理を終了する。
【０２４９】
（パケット中継処理）
次に、図２２を参照して、ユーザ端末２におけるパケット中継処理について説明する。
【０２５０】
ユーザ端末２のストリーム受信制御手段は、ネットワークインターフェイス204において、上流端末からコンテンツパケットを受信したか否かを判定する（ステップＳ１３０）。
【０２５１】
そして、上流端末からのコンテンツパケットを受信しているとき（ステップＳ１３０：Ｙｅｓ）、ストリーム受信制御手段は、このコンテンツパケットをリングバッファ225のライトポインタ位置に格納する（ステップＳ１３１）。一方、上流端末からコンテンツパケットを受信していないとき（ステップＳ１３０：Ｎｏ）、パケット中継処理フラグの状態をＯＮ状態にする（ステップＳ１４１）。
【０２５２】
ステップＳ１３１においてコンテンツパケットをリングバッファ225に格納したあと、ストリーム中継制御手段は、リングバッファ225のリードポインタ位置に格納されたコンテンツパケットを取り出し、このコンテンツパケットのプロトコル領域24に格納された通信プロトコルの種別に基づいて、現在の伝送モードが高遅延低損失プロトコルである第１配信プロトコルであるか否かを判定する（ステップＳ１３２）。
【０２５３】
第１配信プロトコルであると判定すると（ステップＳ１３２：Ｙｅｓ）、ストリーム中継制御手段は、取り出したコンテンツパケットのトラック番号領域27に格納されたシーケンス番号に基づき、トラックの切り替わりを検出する。すなわち、トラック番号領域27に格納されたシーケンス番号が０のときには、トラックが切り替わったと判定する。
【０２５４】
そして、トラックの切り替わりを検出すると（ステップＳ１３３：Ｙｅｓ）、ストリーム中継制御手段は、現在の転送モードを低遅延高損失プロトコルである第２配信プロトコルへ設定する（ステップＳ１３６）。
【０２５５】
一方、トラックの切り替わりではないとき（ステップＳ１３３：Ｎｏ）、ストリーム中継制御手段は、リングバッファ225から取り出したコンテンツパケットを下流端末、すなわち下層のユーザ端末２へ転送する（ステップＳ１３４）。
【０２５６】
コンテンツパケットを下流端末へ転送した後、ストリーム中継制御手段は、下流端末からのＡＣＫパケット（送達確認応答）の受信待ちタイマ（以下、「ＡＣＫ受信待ちタイマ」とする。）を起動する（ステップＳ１３５）。
【０２５７】
また、ステップＳ１３２において、現在の伝送モードが低遅延高損失プロトコルである第２配信プロトコルであると判定すると（ステップＳ１３２：Ｎｏ）、ストリーム中継制御手段は、第２通信手段を用いて、リングバッファ225から取り出したコンテンツパケットを下流端末へ転送する（ステップＳ１３７）。
【０２５８】
そして、ストリーム中継制御手段は、取り出したコンテンツパケットのトラック番号領域27に格納されたシーケンス番号に基づき、トラックの切り替わりを検出する（ステップＳ１３８）。すなわち、トラック番号領域27に格納されたシーケンス番号が０のときには、トラックが切り替わったと判定する。
【０２５９】
そして、トラックの切り替わりを検出すると（ステップＳ１３８：Ｙｅｓ）、ストリーム中継制御手段は、現在の転送モードを高遅延低損失プロトコルである第１配信プロトコルへ設定する（ステップＳ１３９）。
【０２６０】
ステップＳ１３５、Ｓ１３６、Ｓ１３９の処理が終了したとき、或いはＳ１３８においてトラックの切り替わりが検出できないとき（ステップＳ１３８：Ｎｏ）、再参加処理分岐フラグの状態をＯＦＦ状態として（ステップＳ１４０）、パケット中継処理を終了する。
【０２６１】
（パケット再送処理）
次に、図２３を参照して、ユーザ端末２におけるパケット再送処理について説明する。
【０２６２】
ユーザ端末２のストリーム中継制御手段は、下流端末からＡＣＫパケットを受信したか否かを判定する（ステップＳ１５０）。そして、ＡＣＫパケットを受信したと判定する（ステップS１５０：Ｙｅｓ）と、ＡＣＫ受信待ちタイマの起動状態を解除する（ステップＳ１５１）。
【０２６３】
その後、ストリーム中継制御手段は、前回のコンテンツパケットの送信が再送制御を行ったものであるか否かを判定する（ステップＳ１５２）。そして、再送制御を行ったものであると判定すると（ステップＳ１５２：Ｙｅｓ）、ストリーム中継制御手段は、再送制御にかかった時間を第１記憶部202の再送時間記録領域に格納する（ステップＳ１５３）。また、再送制御を行ったものでないと判定したとき（ステップＳ１５２：Ｎｏ）、或いはステップＳ１５３の処理が終了したとき、パケット再送処理分岐フラグの状態をＯＦＦ状態とする（ステップＳ１５８）。
【０２６４】
また、ステップＳ１５０において、下流端末からのＡＣＫパケットを受信していないと判定すると（ステップＳ１５０：Ｎｏ）、ストリーム中継制御手段は、ＡＣＫ受信待ちタイマにおいてタイムアウトが発生しているか否かを判定する（ステップＳ１５４）。
【０２６５】
そして、ＡＣＫ受信待ちタイマでタイムアウトが発生していると判定すると（ステップＳ１５４：Ｙｅｓ）、第１記憶部202の再送回数記憶領域に格納された再送回数が予め設定された上限に達しているか否かを判定する（ステップＳ１５５）。再送回数が上限に達していないとき（ステップＳ１５５：Ｎｏ）、ストリーム中継制御手段は、ＡＣＫ受信待ちタイマを起動させ（ステップＳ１５６）、前回送信したコンテンツパケットを再度下流端末へ転送し（ステップＳ１５７）、パケット再送処理分岐フラグの状態をＯＦＦ状態とする（ステップＳ１５８）。
【０２６６】
一方、ＡＣＫ受信待ちタイマでタイムアウトが発生していないと判定すると（ステップＳ１５４：Ｎｏ）、パケット再送処理分岐フラグの状態をＯＮ状態とする（ステップＳ１５９）。
【０２６７】
ステップＳ１５８、Ｓ１５９の処理が終了すると、パケット再送処理を終了する。
【０２６８】
（モニタ処理）
次に、図２４を参照して、ユーザ端末２におけるモニタ処理について説明する。
【０２６９】
ユーザ端末２の遅延情報検出手段は、ユーザ端末２内蔵のタイマ（図示せず）に基づき、遅延情報のモニタ契機であるか否かを判定する（ステップＳ１６０）。ここで、遅延情報のモニタ契機には、たとえば１分というような定数が使用される。
【０２７０】
そして、遅延情報のモニタ契機であると判定すると（ステップＳ１６０：Ｙｅｓ）、遅延情報検出手段はリングバッファ225を走査する（ステップＳ１６１）。このリングバッファ225の走査により損失パケットの数を検出し、この損失パケット数に基づいて平均損失パケット率を算出する（ステップＳ１６２）。
【０２７１】
次に、遅延情報検出手段は、第１記憶部202の再送時間記憶領域に格納された再送制御にかかった時間に基づき、平均再送制御時間を算出する（ステップＳ１６３）。
【０２７２】
このように算出された平均損失パケット率と平均再送制御時間は、遅延情報検出手段によって、状態報告パケットのペイロード部40に格納されて放送局端末１へ送信される（ステップＳ１６４）。
【０２７３】
そして、遅延情報検出手段によって、モニタ処理分岐フラグの状態をＯＦＦ状態として（ステップＳ１６５）、モニタ処理を終了する。また、ステップＳ１６０においてモニタ契機になっていないと判定する（ステップＳ１６０：Ｎｏ）と、モニタ処理分岐フラグの状態をＯＮ状態にして（ステップＳ１６６）、モニタ処理を終了する。
【０２７４】
（コンテンツ再生処理）
次に、図２５を参照して、ユーザ端末２におけるコンテンツ再生処理について説明する。
【０２７５】
ユーザ端末２の再生手段は、リングバッファ225のリードポインタ位置に格納されたコンテンツパケットを取り出す。そして、このコンテンツパケットのプロトコル領域24に格納された通信プロトコルを検査し（ステップＳ１７０）、これにより現在のトラック種別を判別する（ステップＳ１７１）。すなわち、通信プロトコルが高遅延低損失プロトコルの場合は音楽トラックであり、低遅延高損失プロトコルの場合はDJとの掛け合いトラックであるとの判別を行う。
【０２７６】
このように再生手段は、プロトコル領域24に格納された通信プロトコルの種別が高遅延低損失プロトコルの場合は音楽トラックと判別（ステップＳ１７１：Ｙｅｓ）し、低遅延高損失プロトコルの場合は、ＤＪとの掛け合いトラックであると判別する（ステップＳ１７１：Ｎｏ）。
【０２７７】
現在のトラックが音楽トラックである場合（ステップＳ１７１：Ｙｅｓ）、再生手段は、再生すべきコンテンツパケットの再生時刻領域26から再生時刻情報を取り出し、この再生時刻情報と放送局端末１に内蔵されたタイマが計時する時計時刻情報とからコンテンツの再生時刻であるか否かを判定する（ステップＳ１７２）。
【０２７８】
そして、コンテンツの再生時刻である判定すると（ステップＳ１７２：Ｙｅｓ）、再生手段はリングバッファ225から再生すべきコンテンツパケットを取り出し、このコンテンツパケットのペイロード部40に格納されたコンテンツデータの再生を行い（ステップＳ１７３）、コンテンツ再生処理を終了する。そして、コンテンツ再生処理分岐フラグをＯＦＦ状態にしてから（ステップＳ１７６）コンテンツ再生処理を終了する。
【０２７９】
一方、コンテンツの再生時刻でないと判定すると（ステップＳ１７２：Ｎｏ）、リングバッファ225からコンテンツパケットの再生は行わずにコンテンツ再生処理分岐フラグをＯＮ状態にしてから（ステップＳ１７７）コンテンツ再生処理を終了する。
【０２８０】
また、ステップＳ１７１で、現在の再生トラックが音楽トラックでない、すなわちＤＪとの掛け合いトラックであると判定すると（ステップＳ１７１：Ｎｏ）、再生手段は再生すべきコンテンツパケットがＪＰＥＧデータを有するＪＰＥＧパケットであるか否かを判定する（ステップ１７４）。
【０２８１】
そして、再生すべきコンテンツパケットがＪＰＥＧパケットであると判定すると（ステップＳ１７４：Ｙｅｓ）、再生手段はリングバッファ225から再生すべきコンテンツパケットを取り出し、このコンテンツパケットのペイロード部40に格納されたＪＰＥＧデータの再生を行う（ステップＳ１７５）。このＪＰＥＧデータの再生は、ディスプレイ209に表示することによって行う。そして、コンテンツ再生処理分岐フラグをＯＦＦ状態にしてから（ステップＳ１７８）コンテンツ再生処理を終了する。
【０２８２】
一方、再生すべきコンテンツパケットがＪＰＥＧパケットでないと判定すると（ステップＳ１７４：Ｎｏ）、ユーザ端末２のユーザの発話であると判定してステップＳ１７２以降の処理を行う。
【０２８３】
以上のように、ユーザ端末２の再生手段によるコンテンツ再生処理では、再生すべきコンテンツパケットのデータが音楽データや音声データなどのオーディオデータであるときには、このコンテンツパケットが再生時刻であるか否かを判定して再生処理を行い、一方で再生すべきコンテンツパケットのデータがＪＰＥＧデータであるときには再生時刻の判定なしに再生処理を行う。
【０２８４】
（ＶｏＩＰ送信処理）
次に、図２６を参照して、ユーザ端末２におけるＶｏＩＰ送信処理について説明する。
【０２８５】
まず、ユーザ端末２のＶｏＩＰ制御手段は、放送局端末１とのＶｏＩＰ用セッションが確立済みか否かを検査する（ステップＳ１８１）。通常、放送局端末側のＤＪは一度に一人のユーザとしか会話できないので、本実施例では放送局端末1とユーザ端末２が１対１でセッションを確立するものと仮定する。
【０２８６】
ステップＳ１８１で放送局とのセッションが確立済みであれば（ステップＳ１８１：Ｙｅｓ）、マイク214入力によって得られるユーザの発話内容をパケット化し（ステップＳ１８２）、該パケットを放送局端末1へ送信して（ステップＳ１８３）、ＶｏＩＰ送信処理を終了する。
【０２８７】
ステップＳ１８１で放送局端末１とのセッションが確立済みでないならば（ステップＳ１８１：Ｎｏ）、放送局端末１とのセッションが確立可能であるか否かを検査する（ステップＳ１８４）。例えば、ユーザがリモコン205に付随するＤＪとの会話ボタン（図示せず）を押下ことにより、ユーザ端末２のＶｏＩＰ制御手段がユーザ端末２と放送局端末１とのセッション確立シーケンスをスタートさせ、一方で、放送局端末１のＶｏＩＰ制御手段が該確立シーケンスで肯定応答すればセッション確立可能状態と判定することができる。
【０２８８】
ステップＳ１８４で放送局端末１とのセッションが確立可能な状態であれば（ステップＳ１８４：Ｙｅｓ）、放送局端末１とのセッションを確立（ステップＳ１８５）した後、ステップＳ１８１に戻る。
【０２８９】
ステップＳ１８４で放送局端末１とのセッションが確立可能な状態でないならば（ステップＳ１８４：Ｎｏ）、ＶｏＩＰ送信処理を終了する。
【０２９０】
このように、本実施形態におけるコンテンツ配信システムＳは、Ｐ２Ｐを用いたトポロジーによるコンテンツ配信において、トポロジーの階層レベルやネットワーク品質に応じて再生時刻を決定し、これによりプリバッファリング期間を調整するようにしており、階層構造やネットワーク品質の変化に応じて生じる配信遅延の影響を適切に吸収して、端末装置におけるコンテンツの再生同期をとることができ、しかもプリバッファリング期間を不必要に大きくすることもない。
【０２９１】
（第２実施形態）
上述第１実施形態のコンテンツ配信システムＳでは、放送局端末１の再生時刻決定手段が再生マージンを考慮して再生時刻を決定することによってプリバッファリング期間を適切に調整することにしていたが、本第２実施形態のコンテンツ配信システムＳ１においては、再生時刻決定手段等によって予め再生時刻を決定してコンテンツパケットを生成しておき、配信時刻決定手段によって決定された時刻になったときに、そのコンテンツパケットを送信することでプリバッファリング期間を調整する。
【０２９２】
以下、本発明の最良の第２実施形態を図面に基づいて説明する。なお、本実施形態においては、第１実施形態の放送局端末１における再生時刻決定手段に代えて、さらに配信時刻決定手段が追加されたものであり、その他は同様である。以下の説明では第１実施形態と異なる部分のみ説明する。
【０２９３】
なお、配信時刻決定手段は、ＣＰＵ101がストリーム制御プログラム121を実行することによって、機能するものである。
【０２９４】
配信時刻決定手段は、上述のように再送制御時間予測手段によって算出される再送制御時間の予測値に基づいて、コンテンツパケットの配信開始時刻である配信時刻Ｔｃを以下の式（３）のように決定する。
Ｔｃ＝Ｔr＋Ｚ×ｋ・・・式（３）
Ｔｃ：配信時刻
Ｔｒ：現時刻
Ｚ：１階層かつ１トラック当りの再生マージン
ｋ：階層レベル（最大の階層数）
【０２９５】
すなわち、放送局端末１から最下層のユーザ端末２へ１トラックのコンテンツデータを配信する際、先頭のコンテンツパケットの送信開始から最下層のユーザ端末２における最後のコンテンツパケットの受信終了までに消費してもよいパケット損失に対する再送制御時間、すなわち回復処理時間を予測してコンテンツデータの配信時刻Ｔｃを決定するのである。そして、放送局端末１のストリーム送信手段は、配信時刻決定手段で決定される配信時刻Ｔｃと放送局端末１に内蔵されたタイマ（図示せず）が計時する時計時刻情報とからコンテンツパケットの配信時刻であると判定し、コンテンツパケットの配信時刻であると判定すると、コンテンツパケットをユーザ端末２へ送信する。
【０２９６】
たとえば、平均パケット損失率＝１％、コンテンツパケット総量＝３００個、コンテンツパケット転送レート＝５００ms、１回当りの平均再送制御時間＝５００msとし、1回の再送処理により送信エラーを回復できるとすれば、１階層あたりの再生マージンＺは約コンテンツパケット３個分（１．５秒）となる。そして、第４階層までユーザ端末２が接続されているときには、階層レベルの最大値＝４となるから、Ｚ×ｋ＝コンテンツパケット１２個分（６秒）となる。その結果、配信時刻決定手段は現時刻から６秒後を配信時刻として決定する。そして、ストリーム送信手段は、６秒後に再生されるコンテンツデータをペイロード部に格納したコンテンツパケットを下層のユーザ端末２へ送信する。
【０２９７】
このように配信時刻決定手段が適切な配信時刻を決定するため、ユーザ端末２のリングバッファ225は最適なプリバッファリングとなると共に、トラックギャップも最適化することができる。
【０２９８】
また、配信時刻決定手段は、階層構造の階層レベルのみならず、通信プロトコルの種類に応じて配信時刻を決定する。すなわち、第１配信プロトコル時でのコンテンツ配信のときには上述（３）で示される式に基づいて配信時刻を決定し、第２配信プロトコル時でのコンテンツ配信では再送制御を考慮せず１コンテンツパケット分先の時刻に配信時刻を決定する。なお、第２配信プロトコル時に、階層レベルの最大値が大きく最下層のユーザ端末２に配信されるまでに再生時刻となってしまうような場合には、数コンテンツパケット分先の時刻に配信時刻を決定するようにしてもよい。
【０２９９】
また、第１コンテンツデータのトラックと第２コンテンツデータのトラックを交互に連結して配信するような場合、配信時刻決定手段は、上述のように、第１配信プロトコルによる第１コンテンツデータに対するトラックの配信を完了（言い換えれば、すべてのユーザ端末２への配信が終了）するまでに必要とされる再送制御時間を予測して第１コンテンツデータの配信時刻を決定する一方、第２配信プロトコルによる第２コンテンツデータに対するトラックの配信は再送制御時間を考慮せずに配信時刻を決定するのである。
【０３００】
このように、本実施形態におけるコンテンツ配信システムＳは、Ｐ２Ｐを用いたトポロジーによるコンテンツ配信において、トポロジーの階層レベルやネットワーク品質に応じて配信時刻を決定し、これによりプリバッファリング期間を調整するようにしており、階層構造やネットワーク品質の変化に応じて生じる配信遅延の影響を適切に吸収して、端末装置におけるコンテンツの再生同期をとることができ、しかもプリバッファリング期間を不必要に大きくすることもない。
【０３０１】
なお、本実施形態においては、第３コンテンツデータを画像データとして説明したが、これに限られるものではなく、繰り返し再生する短い音楽データでもよい。また、ユーザ端末２にこの第３コンテンツデータを記憶する場合には、音楽と映像とを含む映画データであってもよく、音楽データであってもよい。
【図面の簡単な説明】
【０３０２】
【図１】本実施形態におけるコンテンツ配信システムＳの概要構成例を示す図。
【図２】本実施形態におけるユーザ端末のコンテンツ中継動作の説明図。
【図３】本実施形態におけるコンテンツパケットの構造を示す図。
【図４】本実施形態における視聴者参加型のインターネットラジオ放送のトラック構成を示す図。
【図５】通信プロトコルの切替制御の説明図。
【図６】第１配信プロトコルの通信制御の説明図。
【図７】第２配信プロトコルの通信制御の説明図。
【図８】第１配信プロトコルによるパケット蓄積の説明図。
【図９】第２配信プロトコルによるパケット蓄積の説明図。
【図１０】第１コンテンツデータと第２コンテンツデータとがトラック単位で交互に配信されたときのコンテンツデータの再生状態の関係を示す図。
【図１１】第２コンテンツデータから第１コンテンツデータへの切り替えが行なわれたときのパケット蓄積の説明図。
【図１２】第１コンテンツデータから第２コンテンツデータへの切り替えが行なわれたときのパケット蓄積の説明図。
【図１３】本実施形態における放送局端末の概略構成例を示す図。
【図１４】本実施形態におけるユーザ端末の概略構成例を示す図。
【図１５】本実施形態における接続先紹介サーバの概略構成例を示す図。
【図１６】放送局端末における処理全体を示すフローチャート。
【図１７】放送局端末におけるネットワーク品質記録処理を示すフローチャート。
【図１８】放送局端末におけるパケット配信処理を示すフローチャート。
【図１９】放送局端末におけるコンテンツ再生処理を示すフローチャート。
【図２０】ユーザ端末における処理全体を示すフローチャート。
【図２１】ユーザ端末における再参加処理を示すフローチャート。
【図２２】ユーザ端末におけるパケット中継処理を示すフローチャート。
【図２３】ユーザ端末におけるパケット再送処理を示すフローチャート。
【図２４】ユーザ端末におけるパケットモニタ処理を示すフローチャート。
【図２５】ユーザ端末におけるパケットコンテンツ再生処理を示すフローチャート。
【図２６】ユーザ端末におけるＶｏＩＰ送信処理を示すフローチャート。
【符号の説明】
【０３０３】
１  放送局端末
２  ユーザ端末
３  接続先紹介サーバ
４  インターネット
１０  ルータ
１１４  放送局端末の制御手段
１１５  放送用コンテンツデータベース
２１３  ユーザ端末の制御手段
３１２  トポロジーデータベース
３１３  端末管理データベース
３１５  接続先紹介サーバの制御手段
Ｓ  コンテンツ配信システム
【図１】
2007086484.tif 000003
【図２】
2007086484.tif 000004
【図３】
2007086484.tif 000005
【図４】
2007086484.tif 000006
【図５】
2007086484.tif 000007
【図６】
2007086484.tif 000008
【図７】
2007086484.tif 000009
【図８】
2007086484.tif 000010
【図９】
2007086484.tif 000011
【図１０】
2007086484.tif 000012
【図１１】
2007086484.tif 000013
【図１２】
2007086484.tif 000014
【図１３】
2007086484.tif 000015
【図１４】
2007086484.tif 000016
【図１５】
2007086484.tif 000017
【図１６】
2007086484.tif 000018
【図１７】
2007086484.tif 000019
【図１８】
2007086484.tif 000020
【図１９】
2007086484.tif 000021
【図２０】
2007086484.tif 000022
【図２１】
2007086484.tif 000023
【図２２】
2007086484.tif 000024
【図２３】
2007086484.tif 000025
【図２４】
2007086484.tif 000026
【図２５】
2007086484.tif 000027
【図２６】
2007086484.tif 000028