(57)【特許請求の範囲】
【請求項１】
通信ネットワークを介して配信される第１のマルチキャストフローを受信する受信手段と、
該受信された第１のマルチキャストフローを記憶する記憶手段と、
前記記憶された第１のマルチキャストフローから複数の第２のマルチキャストフローを生成するマルチキャストフロー生成手段と、
第２のマルチキャストフローを前記通信ネットワークへ送信する送信手段と、を備え、
前記マルチキャストフロー生成手段は、第１のマルチキャストフローに対して各々異なる遅延時間を有する複数の第２のマルチキャストフローを生成し、
該複数の第２のマルチキャストフローの各々は一定時間ずつ遅延している、
ことを特徴とするマルチキャスト配信装置。
【請求項２】
前記マルチキャストフロー生成手段は、前記複数の第２のマルチキャストフローのうち必ず一緒に受信されるものを一マルチキャストフローにまとめる、
ことを特徴とする請求項１に記載のマルチキャスト配信装置。
【請求項３】
前記マルチキャストフロー生成手段は、
マルチキャスト受信装置の受信パターン毎に、受信対象の第２のマルチキャストフローをグループ化した第１の集合を生成し、
第２のマルチキャストフロー毎に、当該第２のマルチキャストフローを含む前記第１の集合をグループ化した第２の集合を生成し、
前記第２の集合の中から、各々の要素が完全同一である第２の集合を検出し、
該各々の要素が完全同一である第２の集合に各々対応する第２のマルチキャストフローを一マルチキャストフローにまとめる、
ことを特徴とする請求項２に記載のマルチキャスト配信装置。
【請求項４】
通信ネットワークから第１のマルチキャストフローを受信する第１の受信手段と、
第１のマルチキャストフローに対して各々異なる遅延時間を有すると共に一定時間ずつ遅延している複数の第２のマルチキャストフローの中から、利用可能な通信帯域に合った第２のマルチキャストフローを前記通信ネットワークから選択受信する第２の受信手段と、
を備えたことを特徴とするマルチキャスト受信装置。
【請求項５】
前記複数の第２のマルチキャストフローのうち必ず一緒に受信されるものが、一マルチキャストフローにまとめられている、
ことを特徴とする請求項４に記載のマルチキャスト受信装置。
【請求項６】
通信ネットワークを介して配信される第１のマルチキャストフローを受信する機能と、
該受信された第１のマルチキャストフローを記憶手段に記憶する機能と、
前記記憶された第１のマルチキャストフローから複数の第２のマルチキャストフローを生成するマルチキャストフロー生成機能と、
第２のマルチキャストフローを前記通信ネットワークへ送信する機能と、をコンピュータに実現させるコンピュータプログラムであり、
前記マルチキャストフロー生成機能は、第１のマルチキャストフローに対して各々異なる遅延時間を有する複数の第２のマルチキャストフローを生成し、
該複数の第２のマルチキャストフローの各々は一定時間ずつ遅延している、
ことを特徴とするコンピュータプログラム。
【請求項７】
前記マルチキャストフロー生成機能は、前記複数の第２のマルチキャストフローのうち必ず一緒に受信されるものを一マルチキャストフローにまとめる、
ことを特徴とする請求項６に記載のコンピュータプログラム。
【請求項８】
前記マルチキャストフロー生成機能は、
マルチキャスト受信装置の受信パターン毎に、受信対象の第２のマルチキャストフローをグループ化した第１の集合を生成し、
第２のマルチキャストフロー毎に、当該第２のマルチキャストフローを含む前記第１の集合をグループ化した第２の集合を生成し、
前記第２の集合の中から、各々の要素が完全同一である第２の集合を検出し、
該各々の要素が完全同一である第２の集合に各々対応する第２のマルチキャストフローを一マルチキャストフローにまとめる、
ことを特徴とする請求項７に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチキャスト配信装置、マルチキャスト受信装置およびコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、ブロードバンド通信網の発達によって、大容量の映像コンテンツをＩＰ（Internet Protocol）網経由で配信するサービスの要求が高まっている。その映像コンテンツ配信サービスにおいて、予め配信時間が決められている場合には、ＩＰマルチキャスト方式によって同じ映像コンテンツを同時に且つ多数の視聴者へ効率的に配信することができる。
【０００３】
例えば、インターネットを利用したテレビ放送（以下、「インターネットテレビ放送（ＩＰＴＶ）」と称する）では、一サービスとして、番組表に従って複数のチャネルで各々の番組が同時に配信されている（放送波の場合と同等）。ＩＰＴＶでは、各チャネルで別々のマルチキャストアドレスを用いることにより、複数のチャネルの各々に対応するマルチキャストトグループが構成されている。各チャネルの切替は、新たに視聴するチャネルのマルチキャストグループに参加することで行われる。これにより、視聴者は、ＩＰＴＶ受像機で任意のチャネルを選択することができ、自由にチャネルを切り替えて各チャネルの番組を視聴することができる。
【０００４】
チャネル切替時には、ＩＰＴＶ受像機におけるデータ蓄積等の要因で、新たなチャネルの番組再生の開始に遅れが生じる。例えば、デジタル圧縮符号化された映像コンテンツの復号用データの蓄積や、伝送誤り対策の誤り訂正符号の復号のためのデータ蓄積等、もしくはデータ到達間隔のゆらぎを補正するための再生バッファリング等に時間がかかっている。このため、迅速なチャネル切替を実現するためのチャネル切替技術が特許文献１，２に開示されている。
【特許文献１】特開２００４−８０７８５号公報
【特許文献２】特開２００５−１２４１９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１，２に開示された従来のチャネル切替技術では、各視聴者からの新たなチャネルへの切替要求に対し、チャネル切替用配信サーバが個々に応答して、ビデオデータをユニキャストで送信する。このため、各視聴者のチャネル切替に対する個別のデータ送信処理が発生し、多数の視聴者から同時にチャネル切替要求があった場合には、チャネル切替用配信サーバに多大な負荷がかかる。さらに、従来のチャネル切替技術では、新たなチャネルへの切替要求と、チャネル切替用配信サーバからの通信に対する応答とを視聴者からチャネル切替用配信サーバに対して送信する必要があり、新たなマルチキャストグループへの参加のみの単純な通信手順でチャネル切替を実現することができず、通信手順が複雑である。
【０００６】
そこで、本発明者は、チャネル切替時の初期再生処理に利用可能なチャネル切替用マルチキャストフローを生成し、元のマルチキャストフローとは別に送信することにより、ＩＰＴＶ受像機におけるチャネル切替時の初期バッファリングを高速化し、チャネル切替遅延を低減する技術を提案している（特願２００６−１９１４６２号、特願２００７−０５９０９７号、特願２００７−１０５６９７号）。
【０００７】
一方で、近年のアクセスネットワークの多様化により、アクセス網の通信帯域は不均質になっている。例えば、固定網は100Mbpsの通信帯域を有するＦＴＴＨ（Fiber To The Home）が利用可能となる一方で、ワイヤレスアクセスについては数Mbps程度の通信帯域となっている。従って、各視聴者のＩＰＴＶ受像機が接続されるアクセス網の通信帯域は均一ではないことが予想され、一律のチャネル切替用マルチキャストフローでは、各視聴者の受信環境に合わせることができないと考えられる。このため、アクセス網の通信帯域に合わせてチャネル切替の高速化を図ろうとすると、配信先のアクセス網の通信帯域ごとに該通信帯域に合わせたチャネル切替用マルチキャストフローが必要になるために、アクセス網の通信帯域のバリエーションの数だけ、各々異なるチャネル切替用マルチキャストフローを用意しなければならない。この結果、多数のチャネル切替用マルチキャストフローが同時にネットワークに流入するので、マルチキャストの上流のネットワークに冗長なトラヒックが流れ通信帯域を圧迫すると共に、多数のチャネル切替用マルチキャストフローの生成および配信を行うサーバ装置の規模が大きくなることが懸念される。
【０００８】
本発明は、このような事情を考慮してなされたもので、その目的は、マルチキャストフローの配信に利用される各通信網の通信帯域に合わせたマルチキャストデータバッファリングの高速化を図る際に、マルチキャストフローの個数を削減することのできるマルチキャスト配信装置、マルチキャスト受信装置およびコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明に係るマルチキャスト配信装置は、通信ネットワークを介して配信される第１のマルチキャストフローを受信する受信手段と、該受信された第１のマルチキャストフローを記憶する記憶手段と、前記記憶された第１のマルチキャストフローから複数の第２のマルチキャストフローを生成するマルチキャストフロー生成手段と、第２のマルチキャストフローを前記通信ネットワークへ送信する送信手段と、を備え、前記マルチキャストフロー生成手段は、第１のマルチキャストフローに対して各々異なる遅延時間を有する複数の第２のマルチキャストフローを生成し、該複数の第２のマルチキャストフローの各々は一定時間ずつ遅延していることを特徴とする。
【００１０】
本発明に係るマルチキャスト配信装置においては、前記マルチキャストフロー生成手段は、前記複数の第２のマルチキャストフローのうち必ず一緒に受信されるものを一マルチキャストフローにまとめることを特徴とする。
【００１１】
本発明に係るマルチキャスト配信装置においては、前記マルチキャストフロー生成手段は、マルチキャスト受信装置の受信パターン毎に、受信対象の第２のマルチキャストフローをグループ化した第１の集合を生成し、第２のマルチキャストフロー毎に、当該第２のマルチキャストフローを含む前記第１の集合をグループ化した第２の集合を生成し、前記第２の集合の中から、各々の要素が完全同一である第２の集合を検出し、該各々の要素が完全同一である第２の集合に各々対応する第２のマルチキャストフローを一マルチキャストフローにまとめることを特徴とする。
【００１２】
本発明に係るマルチキャスト受信装置は、通信ネットワークから第１のマルチキャストフローを受信する第１の受信手段と、第１のマルチキャストフローに対して各々異なる遅延時間を有すると共に一定時間ずつ遅延している複数の第２のマルチキャストフローの中から、利用可能な通信帯域に合った第２のマルチキャストフローを前記通信ネットワークから選択受信する第２の受信手段と、を備えたことを特徴とする。
【００１３】
本発明に係るマルチキャスト受信装置においては、前記複数の第２のマルチキャストフローのうち必ず一緒に受信されるものが、一マルチキャストフローにまとめられていることを特徴とする。
【００１４】
本発明に係るコンピュータプログラムは、通信ネットワークを介して配信される第１のマルチキャストフローを受信する機能と、該受信された第１のマルチキャストフローを記憶手段に記憶する機能と、前記記憶された第１のマルチキャストフローから複数の第２のマルチキャストフローを生成するマルチキャストフロー生成機能と、第２のマルチキャストフローを前記通信ネットワークへ送信する機能と、をコンピュータに実現させるコンピュータプログラムであり、前記マルチキャストフロー生成機能は、第１のマルチキャストフローに対して各々異なる遅延時間を有する複数の第２のマルチキャストフローを生成し、該複数の第２のマルチキャストフローの各々は一定時間ずつ遅延していることを特徴とする。
【００１５】
本発明に係るコンピュータプログラムにおいては、前記マルチキャストフロー生成機能は、前記複数の第２のマルチキャストフローのうち必ず一緒に受信されるものを一マルチキャストフローにまとめることを特徴とする。
【００１６】
本発明に係るコンピュータプログラムにおいては、前記マルチキャストフロー生成機能は、マルチキャスト受信装置の受信パターン毎に、受信対象の第２のマルチキャストフローをグループ化した第１の集合を生成し、第２のマルチキャストフロー毎に、当該第２のマルチキャストフローを含む前記第１の集合をグループ化した第２の集合を生成し、前記第２の集合の中から、各々の要素が完全同一である第２の集合を検出し、該各々の要素が完全同一である第２の集合に各々対応する第２のマルチキャストフローを一マルチキャストフローにまとめることを特徴とする。
これにより、前述のマルチキャスト配信装置がコンピュータを利用して実現できるようになる。
【発明の効果】
【００１７】
本発明によれば、マルチキャストフローの配信に利用される各通信網の通信帯域に合わせたマルチキャストデータバッファリングの高速化を図る際に、マルチキャストフローの個数を削減することができるという効果が得られる。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照し、本発明の実施形態について説明する。
図１は、本発明の一実施形態に係るＩＰＴＶシステムの構成を示している。図１において、チャネル切替用マルチキャスト配信サーバ１、コンテンツ配信サーバ２及び視聴者装置３は、ＩＰマルチキャスト方式に対応している通信ネットワーク４に接続されている。ここで、各視聴者装置３が接続されるアクセス網の通信帯域は、それぞれ異なっていてもよい。例えば、ある視聴者装置３は狭帯域のアクセス網に接続されており、利用可能な通信帯域は狭い。又、ある視聴者装置３は広帯域のアクセス網に接続されており、利用可能な通信帯域は広い。
【００１９】
コンテンツ配信サーバ２は、ＩＰ放送で提供する番組のコンテンツデータをマルチキャストフローＧとして、通信ネットワーク４に送信する。マルチキャストフローは、マルチキャスト伝送される一連のデータ列である。
【００２０】
本実施形態では、マルチキャストフローは、ＩＰマルチキャスト方式のパケット（以下、単に「パケット」と称する）の列として構成される。パケットは、データ伝送単位である。各パケットにはコンテンツデータが格納される。パケットは、マルチキャストグループを特定するＩＰアドレスを有する。マルチキャストグループとマルチキャストフローとは対応している。
【００２１】
マルチキャストフロー（つまり、マルチキャストグループ）の区別は、マルチキャストアドレスによって行うようにしてもよく、或いは、同一マルチキャストアドレスにおいてソースアドレスによって行うようにしてもよい。マルチキャストアドレスは、パケットの宛先ＩＰアドレス部に格納される。ソースアドレスは、パケットのソースＩＰアドレス部に格納される。マルチキャストアドレスによってマルチキャストフローを区別する場合、視聴者装置３は、マルチキャストアドレスを指定してマルチキャストグループに参加することで、該マルチキャストグループに対応するマルチキャストフローを受信することができる。一方、同一マルチキャストアドレスにおいてソースアドレスによってマルチキャストフローを区別する場合、視聴者装置３は、マルチキャストアドレス及びソースアドレスを指定してマルチキャストグループに参加すること、若しくは、マルチキャストアドレスの指定のみ（ソースアドレスは未指定）でマルチキャストグループに参加することで、該マルチキャストグループに対応するマルチキャストフローを受信することができる。
【００２２】
マルチキャストフローＧは、ＩＰ放送のチャネル毎に設けられる。視聴者装置３は、所望のチャネルのマルチキャストフローＧを、該当するマルチキャストグループに参加することで受信することができる。視聴者装置３は、マルチキャストフローＧに係るマルチキャストグループへの参加（Ｊｏｉｎ）命令１１０を通信ネットワーク４に送信することで、マルチキャストフローＧを通信ネットワーク４から受信する。
【００２３】
チャネル切替用マルチキャスト配信サーバ１は、通信ネットワーク４を介して配信されるマルチキャストフローＧを受信する。チャネル切替用マルチキャスト配信サーバ１は、コンテンツ配信サーバ２から直接にマルチキャストフローＧを受信してもよく、或いは、通信ネットワーク４を介してマルチキャストフローＧを受信してもよい。但し、マルチキャストフローＧがコンテンツ配信サーバ２から通信ネットワーク４に送信される時刻に対して、できる限り遅延なく、チャネル切替用マルチキャスト配信サーバ１がルチキャストフローＧを受信できるように構成する。図１では、チャネル切替用マルチキャスト配信サーバ１は、コンテンツ配信サーバ２から直接に、通信ネットワーク４へ送信されるマルチキャストフローＧを受信している。
【００２４】
チャネル切替用マルチキャスト配信サーバ１は、受信したマルチキャストフローＧから生成したチャネル切替用マルチキャストフローＧ’を通信ネットワーク４に送信する。チャネル切替用マルチキャストフローＧ’は、ＩＰ放送のチャネル毎に設けられる。視聴者装置３は、所望のチャネルのチャネル切替用マルチキャストフローＧ’を、該当するマルチキャストグループに参加することで受信することができる。視聴者装置３は、チャネル切替用マルチキャストフローＧ’に係るマルチキャストグループへの参加命令２１０を通信ネットワーク４に送信することで、チャネル切替用マルチキャストフローＧ’を通信ネットワーク４から受信する。
【００２５】
チャネル切替が発生した場合には、視聴者装置３は、新たなチャネルのマルチキャストフローＧを受信開始すると共に、該新たなチャネルへのチャネル切替用マルチキャストフローＧ’も受信開始する。これにより、視聴者装置３は、新たなチャネルのマルチキャストフローＧ及び該新たなチャネルへのチャネル切替用マルチキャストフローＧ’の両方を受信する。
【００２６】
図２は、図１に示すチャネル切替用マルチキャスト配信サーバ１の構成を示している。図２において、送受信部１１は、マルチキャストフローＧの受信およびチャネル切替用マルチキャストフローＧ’の送信を行う。コンテンツデータ記憶部１２は、ハードディスクドライブや半導体メモリ等での記憶装置から構成されており、送受信部１１によって受信されたマルチキャストフローＧを記憶する。送信データ生成部１３は、コンテンツデータ記憶部１２に格納されているマルチキャストフローＧからチャネル切替用マルチキャストフローＧ’を生成する。
【００２７】
チャネル切替用マルチキャスト配信サーバ１は、より具体的には以下のように動作する。送受信部１１は、コンテンツ配信サーバ２から送信されたマルチキャストフローＧを直接に受信し、コンテンツデータ記憶部１２に格納する。マルチキャストフローＧは、チャネル毎に区別されてコンテンツデータ記憶部１２に格納される。コンテンツデータ記憶部１２は、チャネル毎に、マルチキャストフローＧのパケットを受信順序に従って格納する。これにより、チャネル毎に、マルチキャストフローＧのパケットを受信順序に従ってコンテンツデータ記憶部１２から読み出すことができる。
【００２８】
送信データ生成部１３は、チャネル毎に、コンテンツデータ記憶部１２からマルチキャストフローＧを読み出し、マルチキャストフローＧからチャネル切替用マルチキャストフローＧ’を生成し、チャネル切替用マルチキャストフローＧ’を送受信部１１へ出力する。各チャネルにおいて、チャネル切替用マルチキャストフローＧ’は、マルチキャストフローＧと区別される。つまり、あるチャネルに関し、マルチキャストフローＧとチャネル切替用マルチキャストフローＧ’とは、異なるマルチキャストフロー（つまり、異なるマルチキャストグループ）である。送受信部１１は、チャネル切替用マルチキャストフローＧ’を通信ネットワーク４に送信する。
【００２９】
以下、本実施形態のマルチキャスト配信に係る動作について、チャネル切替用マルチキャストフローＧ’の実施例を挙げて説明する。なお、以下の説明では、ある１つのチャネルに着目して説明を行う。また、チャネル切替用マルチキャストフローＧ’の生成は、チャネル切替用マルチキャスト配信サーバ１の送信データ生成部１３が行う。
【実施例１】
【００３０】
図３は、本発明に係るチャネル切替用マルチキャストフローＧ’の実施例１である。図３において、マルチキャストフローＧ及びチャネル切替用マルチキャストフローＧ’は、それぞれパケット列から構成されている。図３上の時間は、チャネル切替用マルチキャスト配信サーバ１におけるチャネル切替用マルチキャストフローＧ’の送信時刻を表す。マルチキャストフローＧは、各時間ｔ１，ｔ２，ｔ３，ｔ４，ｔ５，ｔ６，ｔ７においてそれぞれパケット「１０」、パケット「１１」、パケット「１２」、パケット「１３」、パケット「１４」、パケット「１５」、パケット「１６」を有する。括弧内の数字（図中のマルチキャストフローを構成する各パケットに付された数字）は、パケットの順序を示すシーケンス番号に対応する。
【００３１】
視聴者装置３において、チャネル切替が発生した場合、新たなチャネルの再生開始のためのコンテンツデータの初期バッファリングが行われる。ここでは、その初期バッファリング量は、パケットの１０個分とする。本実施形態では、初期バッファリングの高速化を図るために、新たなチャネルへのチャネル切替用マルチキャストフローＧ’は、新たなチャネルのマルチキャストフローＧを遅延させたものにする。これにより、視聴者装置３は、マルチキャストフローＧ及びチャネル切替用マルチキャストフローＧ’の両方を受信することにより、マルチキャストフローＧのみを受信する場合よりも早く初期バッファリングを完了することができる。
【００３２】
さらに、本実施形態では、視聴者装置３が接続される各アクセス網の通信帯域に合わせた初期バッファリングの高速化を図るために、チャネル切替用マルチキャストフローＧ’として、マルチキャストフローＧに対して各々異なる遅延時間を有する複数（ｒ個）のマルチキャストフローを生成する。それら複数のチャネル切替用マルチキャストフローＧ’の各々は、一定時間ずつ遅延している。複数のチャネル切替用マルチキャストフローＧ’は通信ネットワーク４に送信される。
【００３３】
図３の例では、チャネル切替用マルチキャストフローＧ’として、９個（ｒ＝９）のマルチキャストフローＧ’（１），Ｇ’（２），Ｇ’（３），Ｇ’（４），Ｇ’（５），Ｇ’（６），Ｇ’（７），Ｇ’（８），Ｇ’（９）が生成される。これらチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）は、コンテンツ配信サーバ２がパケットを送信する間隔に等しい時間ずつ、マルチキャストフローＧを遅延させたものである。チャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）は、図３中の送信時刻の関係を持って通信ネットワーク４に送信される。これにより、視聴者装置３は、チャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の中から、利用可能な通信帯域に合ったチャネル切替用マルチキャストフローＧ’を選択受信することにより、利用可能な通信帯域に合わせた初期バッファリングの高速化を図ることができる。図４〜図８に、チャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の選択受信の方法が示されている。
【００３４】
まず、視聴者装置３の利用可能な通信帯域が仮にマルチキャストフローの１個分であった場合、視聴者装置３は、マルチキャストフローＧのみしか受信することができない。従って、初期バッファリングの完了には、初期バッファリング量のパケット１０個分を受信する時間（ｔ１〜ｔ１０）がかかる。以下、このパケット１０個分の時間（ｔ１〜ｔ１０）を基準として、図４〜図８に係る初期バッファリング高速化を説明する。
【００３５】
図４の例は、視聴者装置３の利用可能な通信帯域が少なくともマルチキャストフローの２個分である場合である。この場合、チャネル切替用マルチキャストフローＧ’（５）のみをマルチキャストフローＧと共に受信する。これにより、視聴者装置３は、マルチキャストフローＧのみを受信する場合に比べて、２倍の速度でマルチキャストフローＧを受信する換算となり、半分の時間（ｔ１〜ｔ５）で初期バッファリングが完了する。
【００３６】
図５の例は、視聴者装置３の利用可能な通信帯域が少なくともマルチキャストフローの３個分である場合である。この場合、チャネル切替用マルチキャストフローＧ’（４）及びＧ’（８）をマルチキャストフローＧと共に受信する。これにより、視聴者装置３は、マルチキャストフローＧのみを受信する場合に比べて、３倍弱の速度でマルチキャストフローＧを受信する換算となり、１／３強の時間（ｔ１〜ｔ４）で初期バッファリングが完了する。
【００３７】
図６の例は、視聴者装置３の利用可能な通信帯域が少なくともマルチキャストフローの４個分である場合である。この場合、チャネル切替用マルチキャストフローＧ’（３）、Ｇ’（６）及びＧ’（９）をマルチキャストフローＧと共に受信する。これにより、視聴者装置３は、マルチキャストフローＧのみを受信する場合に比べて、４倍弱の速度でマルチキャストフローＧを受信する換算となり、１／４強の時間（ｔ１〜ｔ３）で初期バッファリングが完了する。
【００３８】
図７の例は、視聴者装置３の利用可能な通信帯域が少なくともマルチキャストフローの５個分である場合である。この場合、チャネル切替用マルチキャストフローＧ’（２）、Ｇ’（４）、Ｇ’（６）及びＧ’（８）をマルチキャストフローＧと共に受信する。これにより、視聴者装置３は、マルチキャストフローＧのみを受信する場合に比べて、５倍の速度でマルチキャストフローＧを受信する換算となり、１／５の時間（ｔ１〜ｔ２）で初期バッファリングが完了する。
【００３９】
図８の例は、視聴者装置３の利用可能な通信帯域がマルチキャストフローの１０個分以上である場合である。この場合、チャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の全てをマルチキャストフローＧと共に受信する。これにより、視聴者装置３は、マルチキャストフローＧのみを受信する場合に比べて、１０倍の速度でマルチキャストフローＧを受信する換算となり、１／１０の時間（ｔ１）で初期バッファリングが完了する。
【００４０】
ここで、視聴者装置３がどのチャネル切替用マルチキャストフローＧ’を選択受信するのか、を算出する方法の一例を説明する。
まず、視聴者は、マルチキャストフローＧのみを受信する場合の初期バッファリング速度を基準速度とし、基準速度の何倍の初期バッファリング速度を希望するかを視聴者装置３に入力する。ここでは、基準速度に対する希望倍率「Ｒ」を入力する。例えば、基準速度の２倍の初期バッファリング速度（基準速度×２）を希望する場合は希望倍率「Ｒ＝２」となり、基準速度の３倍の初期バッファリング速度（基準速度×３）を希望する場合は希望倍率「Ｒ＝３」となる。視聴者装置３は、希望倍率「Ｒ」に基づいて、選択受信するチャネル切替用マルチキャストフローＧ’を算出する。
【００４１】
まず、視聴者装置３は、希望倍率「Ｒ」に基づいて、（１）式により整数ｎ（但し、ｎ≦ｒ）を次式により導出する。但し、ｒは、チャネル切替用マルチキャストフローＧ’の個数である。［ｘ］は、ｘ未満の最大の整数である。
ｎ＝［（１＋ｒ）／Ｒ］＋１          ・・・（１）
【００４２】
次いで、視聴者装置３は、ｎに基づいて、チャネル切替用マルチキャストフローＧ’（ｎ×ｊ）をマルチキャストフローＧと共に受信すべきものに決定する。但し、ｊは、「ｎ×ｊ≦ｒ」を満たす全ての自然数である。
【００４３】
例えば、図４に対応した例として、「ｒ＝９」、希望倍率「Ｒ＝２」の場合、「ｎ＝５」となり、チャネル切替用マルチキャストフローＧ’（５）のみの１個がマルチキャストフローＧと共に受信すべきものとなる。従って、視聴者装置３は、マルチキャストフローＧとチャネル切替用マルチキャストフローＧ’（５）の合計２個のマルチキャストフローを共に受信する。
【００４４】
図５に対応した例として、「ｒ＝９」、希望倍率「Ｒ＝３」の場合、「ｎ＝４」となり、チャネル切替用マルチキャストフローＧ’（４）及びＧ’（８）の２個がマルチキャストフローＧと共に受信すべきものとなる。従って、視聴者装置３は、マルチキャストフローＧとチャネル切替用マルチキャストフローＧ’（４）及びＧ’（８）の合計３個のマルチキャストフローを共に受信する。
【００４５】
図６に対応した例として、「ｒ＝９」、希望倍率「Ｒ＝４」の場合、「ｎ＝３」となり、チャネル切替用マルチキャストフローＧ’（３），Ｇ’（６）及びＧ’（９）の３個がマルチキャストフローＧと共に受信すべきものとなる。従って、視聴者装置３は、マルチキャストフローＧとチャネル切替用マルチキャストフローＧ’（３），Ｇ’（６）及びＧ’（９）の合計４個のマルチキャストフローを共に受信する。
【００４６】
図７に対応した例として、「ｒ＝９」、希望倍率「Ｒ＝５」の場合、「ｎ＝２」となり、チャネル切替用マルチキャストフローＧ’（２），Ｇ’（４），Ｇ’（６）及びＧ’（８）の４個がマルチキャストフローＧと共に受信すべきものとなる。従って、視聴者装置３は、マルチキャストフローＧとチャネル切替用マルチキャストフローＧ’（２），Ｇ’（４），Ｇ’（６）及びＧ’（８）の合計５個のマルチキャストフローを共に受信する。
【００４７】
図８に対応した例として、「ｒ＝９」、希望倍率「Ｒ＝１０」の場合、「ｎ＝１」となり、チャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の９個がマルチキャストフローＧと共に受信すべきものとなる。従って、視聴者装置３は、マルチキャストフローＧとチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の合計１０個のマルチキャストフローを共に受信する。
【００４８】
上述のように実施例１によれば、視聴者装置３は、チャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の中から、利用可能な通信帯域に合ったチャネル切替用マルチキャストフローＧ’を選択受信することにより、利用可能な通信帯域に合わせた初期バッファリングの高速化を図ることができる。さらに、チャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）は、利用可能な通信帯域が各々異なる視聴者装置３において、共通して利用することができるものである。これにより、マルチキャストフローの個数を削減することが可能となる。
【００４９】
なお、実質的な倍率「Ｒ’」は、（２）式により算出することができる。但し、［［ｘ］］は、ｘ以下の最大の整数を表す。
Ｒ’＝［［（１＋ｒ）／ｎ］］          ・・・（２）
【００５０】
例えば、図４に対応した上記例の、「ｒ＝９」、希望倍率「Ｒ＝２」の場合、「ｎ＝５」であり、実質倍率は「Ｒ’＝２」から２倍となり希望倍率を満たす。
図５に対応した上記例の、「ｒ＝９」、希望倍率「Ｒ＝３」の場合、「ｎ＝４」であり、実質倍率は「Ｒ’＝２」から２倍となり希望倍率に満たない。
図６に対応した上記例の、「ｒ＝９」、希望倍率「Ｒ＝４」の場合、「ｎ＝３」であり、実質倍率は「Ｒ’＝３」から３倍となり希望倍率に満たない。
図７に対応した上記例の、「ｒ＝９」、希望倍率「Ｒ＝５」の場合、「ｎ＝２」であり、実質倍率は「Ｒ’＝５」から５倍となり希望倍率を満たす。
図８に対応した上記例の、「ｒ＝９」、希望倍率「Ｒ＝１０」の場合、「ｎ＝１」であり、実質倍率は「Ｒ’＝１０」から１０倍となり希望倍率を満たす。
【実施例２】
【００５１】
実施例２は、実施例１の改良であり、複数のチャネル切替用マルチキャストフローＧ’を１個のマルチキャストフローにまとめることにより、さらなるマルチキャストフロー数の削減を図るものである。まとることができる複数のチャネル切替用マルチキャストフローＧ’とは、必ず一緒に受信されるものであり、いずれか１個のみで受信されることがないものである。
【００５２】
例えば、チャネル切替用マルチキャストフローＧ’（４）及びＧ’（８）は、希望倍率「Ｒ＝３，５，１０」に係る図５，図７，図８に示される各パターンで共通して一緒に受信される。さらに、全ての希望倍率「Ｒ＝２，３，４，５，１０」に係る図４，図５，図６，図７，図８に示される各パターンにおいて、チャネル切替用マルチキャストフローＧ’（４）又はＧ’（８）のいずれか一方のみを受信するパターンは存在しない。従って、チャネル切替用マルチキャストフローＧ’（４）及びＧ’（８）をまとめて１個のマルチキャストフローにすることができる。これにより、視聴者装置３は、そのまとめられた１個のチャネル切替用マルチキャストフローＧ’を受信すれば、元のチャネル切替用マルチキャストフローＧ’（４）及びＧ’（８）を受信することができる。これにより、マルチキャストフロー数の削減が可能となる。
【００５３】
他の例では、チャネル切替用マルチキャストフローＧ’（３）及びＧ’（９）は、希望倍率「Ｒ＝４，１０」に係る図６，図８に示される各パターンで共通して一緒に受信される。さらに、全ての希望倍率「Ｒ＝２，３，４，５，１０」に係る図４，図５，図６，図７，図８に示される各パターンにおいて、チャネル切替用マルチキャストフローＧ’（３）又はＧ’（９）のいずれか一方のみを受信するパターンは存在しない。従って、チャネル切替用マルチキャストフローＧ’（３）及びＧ’（９）をまとめて１個のマルチキャストフローにすることができる。これにより、視聴者装置３は、そのまとめられた１個のチャネル切替用マルチキャストフローＧ’を受信すれば、元のチャネル切替用マルチキャストフローＧ’（３）及びＧ’（９）を受信することができる。これにより、マルチキャストフロー数の削減が可能となる。
【００５４】
さらに他の例では、チャネル切替用マルチキャストフローＧ’（１）及びＧ’（７）は、希望倍率「Ｒ＝１０」に係る図８に示されるパターンで一緒に受信される。さらに、全ての希望倍率「Ｒ＝２，３，４，５，１０」に係る図４，図５，図６，図７，図８に示される各パターンにおいて、チャネル切替用マルチキャストフローＧ’（１）又はＧ’（７）のいずれか一方のみを受信するパターンは存在しない。従って、チャネル切替用マルチキャストフローＧ’（１）及びＧ’（７）をまとめて１個のマルチキャストフローにすることができる。これにより、視聴者装置３は、そのまとめられた１個のチャネル切替用マルチキャストフローＧ’を受信すれば、元のチャネル切替用マルチキャストフローＧ’（１）及びＧ’（７）を受信することができる。これにより、マルチキャストフロー数の削減が可能となる。
【００５５】
図９に、上記した図４，図５，図６，図７，図８に示される各パターンにおいてまとめることができる複数のチャネル切替用マルチキャストフローＧ’をそれぞれ１個にまとめた結果が示されている。図９において、元のチャネル切替用マルチキャストフローＧ’（１）及びＧ’（７）をまとめて新たなチャネル切替用マルチキャストフローＧ’（１）としている。又、元のチャネル切替用マルチキャストフローＧ’（３）及びＧ’（９）をまとめて新たなチャネル切替用マルチキャストフローＧ’（３）としている。又、元のチャネル切替用マルチキャストフローＧ’（４）及びＧ’（８）をまとめて新たなチャネル切替用マルチキャストフローＧ’（４）としている。これにより、元々はチャネル切替用マルチキャストフローＧ’として９個あったのが、チャネル切替用マルチキャストフローＧ’の集約後は６個に削減されている。
【００５６】
ここで、チャネル切替用マルチキャストフローＧ’の集約方法の一例を説明する。ここでは、図３の例を挙げて説明する。
【００５７】
まず、図３に示されるように、マルチキャストフローＧに対して９個（ｒ＝９）のチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）を定義する。
【００５８】
次いで、変数「ｒｉ’：ｒ１’＜ｒ２’，・・・，＜ｒｍ’」を希望倍率「Ｒｉ：Ｒ１＜Ｒ２，・・・，＜Ｒｍ」から「ｒｉ’＝Ｒｉ−１」として算出する。但し、ｉは１からｍまでの自然数、ｒｍ’＝ｒ、である。ここでは、５個（ｍ＝５）の希望倍率「Ｒ１，Ｒ２，Ｒ３，Ｒ４，Ｒ５＝２，３，４，５，１０」に対して、５個の変数「ｒ１’，ｒ２’，ｒ３’，ｒ４’，ｒ５’，＝１，２，３，４，９」が算出される。
【００５９】
次いで、変数「ｎｉ：ｎ１≧ｎ２，・・・，≧ｎｍ」を（３）式により算出する。但し、ｎｍ＝１、［ｘ］はｘ未満の最大の整数である。
ｎｉ＝［（１＋ｒ）／（１＋ｒｉ’）］＋１        ・・・（３）
【００６０】
これにより、変数「ｒ１’，ｒ２’，ｒ３’，ｒ４’，ｒ５’，＝１，２，３，４，９」に対して、変数「ｎ１，ｎ２，ｎ３，ｎ４，ｎ５＝５，４，３，２，１」となる。
【００６１】
次いで、第１の集合「Ｆ（ｎｉ）＝｛Ｇ’（ｊ×ｎｉ）｝」を算出する。但し、ｊは自然数であり、ｊ×ｎｉ≦ｒ、である。
【００６２】
これにより、変数「ｎ１，ｎ２，ｎ３，ｎ４，ｎ５＝５，４，３，２，１」に対して、
Ｆ（５）＝｛Ｇ’（５）｝、
Ｆ（４）＝｛Ｇ’（４），Ｇ’（８）｝、
Ｆ（３）＝｛Ｇ’（３），Ｇ’（６），Ｇ’（９）｝、
Ｆ（２）＝｛Ｇ’（２），Ｇ’（４），Ｇ’（６），Ｇ’（８）｝、
Ｆ（１）＝｛Ｇ’（１），Ｇ’（２），Ｇ’（３），Ｇ’（４），Ｇ’（５），Ｇ’（６），Ｇ’（７），Ｇ’（８），Ｇ’（９）｝、
となる。
【００６３】
次いで、第２の集合Ｅ（ｋ）を算出する。集合Ｅ（ｋ）は、Ｇ’（ｋ）を有する集合Ｆ（ｎｉ）の集合である。但し、ｋは自然数であり、ｋ≦ｒ、である。
【００６４】
これにより、
Ｅ（１）＝｛Ｆ（１）｝、
Ｅ（２）＝｛Ｆ（１），Ｆ（２）｝、
Ｅ（３）＝｛Ｆ（１），Ｆ（３）｝、
Ｅ（４）＝｛Ｆ（１），Ｆ（２），Ｆ（４）｝、
Ｅ（５）＝｛Ｆ（１），Ｆ（５）｝、
Ｅ（６）＝｛Ｆ（１），Ｆ（２），Ｆ（３）｝、
Ｅ（７）＝｛Ｆ（１）｝、
Ｅ（８）＝｛Ｆ（１），Ｆ（２），Ｆ（４）｝、
Ｅ（９）＝｛Ｆ（１），Ｆ（３）｝、
となる。
【００６５】
次いで、集合Ｅ（ａ）＝Ｅ（ｌ）の関係を満たすものを検出する。但し、１≦ａ≦ｒ、ａ＋１≦ｌ≦ｒ、である。
【００６６】
これにより、
Ｅ（１）＝Ｅ（７）、
Ｅ（３）＝Ｅ（９）、
Ｅ（４）＝Ｅ（８）、
が検出される。
【００６７】
次いで、集合Ｅ（ａ）＝Ｅ（ｌ）に関して、Ｇ’（ａ）とＧ’（ｌ）を合わせて新たなＧ’（ａ）とする。集合Ｅ（ｌ）は空集合とし、Ｇ’（ｌ）は削除する。
【００６８】
これにより、
Ｇ’（１）←Ｇ’（１）＋Ｇ’（７）、
Ｇ’（３）←Ｇ’（３）＋Ｇ’（９）、
Ｇ’（４）←Ｇ’（４）＋Ｇ’（８）、
となる。この結果として、図９に示されるように、集約後のチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（６）が生成される。
【００６９】
これにより、図９において、希望倍率「Ｒ１，Ｒ２，Ｒ３，Ｒ４，Ｒ５＝２，３，４，５，１０」と、視聴者装置３が受信すべきチャネル切替用マルチキャストフローＧ’の関係は、以下となる。
希望倍率「Ｒ１＝２」：チャネル切替用マルチキャストフローＧ’（５）
希望倍率「Ｒ２＝３」：チャネル切替用マルチキャストフローＧ’（４）
希望倍率「Ｒ３＝４」：チャネル切替用マルチキャストフローＧ’（３）及びＧ’（６）
希望倍率「Ｒ４＝５」：チャネル切替用マルチキャストフローＧ’（２）、Ｇ’（４）及びＧ’（６）
希望倍率「Ｒ５＝１０」：チャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（６）
【００７０】
なお、視聴者装置３は、実施例１と同様にして、（１）式により受信すべきチャネル切替用マルチキャストフローＧ’を決定してもよい。この場合、集約によって削除されたチャネル切替用マルチキャストフローＧ’（７）、Ｇ’（８）及びＧ’（９）については受信することができないが、受信しているチャネル切替用マルチキャストフローＧ’に含まれているので、初期バッファリングは成功する。
【００７１】
或いは、視聴者装置３は、上述したチャネル切替用マルチキャストフローＧ’の集約方法と同様にして、受信すべきチャネル切替用マルチキャストフローＧ’を決定してもよい。或いは、チャネル切替用マルチキャスト配信サーバ１が集約後のチャネル切替用マルチキャストフローＧ’の情報を各視聴者装置３へ配信し、視聴者装置３はその配信情報に基づいて受信すべきチャネル切替用マルチキャストフローＧ’を決定してもよい。
【００７２】
また、初期バッファリング完了時のパケット格納数が初期バッファリング量（上述の実施例では１０個）に一致するような希望倍率「Ｒｉ：Ｒ１＜Ｒ２，・・・，＜Ｒｍ」は、（４）式を満たす変数「ｒｉ’：ｒ１’＜ｒ２’，・・・，＜ｒｍ’」から、「Ｒｉ＝ｒｉ’＋１」として算出することができる。但し、ｎ≦ｒ、ｍ≦ｎ、である。
１＋ｒ＝ｎ×（１＋ｒｉ’）        （４）
【００７３】
なお、上述したチャネル切替用マルチキャストフローＧ’の集約方法を実現するコンピュータプログラムの一例を以下に示す。本コンピュータプログラムはＣ言語で記述されている。
「for (a=1, a≦r, a++){
if (E(a) !=φ){
for (l = a+1, l≦r, l++){
if (E(l) !=φ && E(a) == E(l)) { /* 全要素が一致 */
for{b=1, b≦|E(l)|, b++}{
/* E(l)内にある全てのF(i)を列挙し、各F(i)からG’(l)を削除 */
F(b) = F(b) - G’(l);
}
G’(a) = G’(a) + G’(l); /* G’(l)をG’(a)にマージ */
G’(l) = NULL; /* G’(l)を削除 */
E(l) =φ;
}
}
}
}」
【００７４】
上述した実施形態によれば、マルチキャストフローの配信に利用される各通信網の通信帯域に合わせたマルチキャストデータバッファリングの高速化を図る際に、マルチキャストフローの個数を削減することができる。これにより、マルチキャストの上流のネットワークに冗長なトラヒックが流れることを防止し、通信帯域の利用効率の向上に寄与することができるという効果が得られる。さらに、チャネル切替用マルチキャストフローの生成および配信を行うサーバ装置の規模縮小に寄与することができるという効果が得られる。さらに、視聴者装置においては、アクセス網の通信帯域に応じたチャンネル切替の高速化が可能となり、放送サービスの品質向上に寄与することができるという効果が得られる。
【００７５】
なお、本実施形態に係るチャネル切替用マルチキャスト配信サーバ１は、専用のハードウェアにより実現されるものであってもよく、あるいはパーソナルコンピュータ等のコンピュータシステムにより構成され、図２に示されるチャネル切替用マルチキャスト配信サーバ１の各部の機能を実現するためのプログラムを実行することによりその機能を実現させるものであってもよい。
【００７６】
また、そのチャネル切替用マルチキャスト配信サーバ１には、周辺機器として入力装置、表示装置等（いずれも図示せず）が接続されるものとする。ここで、入力装置とはキーボード、マウス等の入力デバイスのことをいう。表示装置とはＣＲＴ（Cathode Ray Tube）や液晶表示装置等のことをいう。
また、上記周辺機器については、チャネル切替用マルチキャスト配信サーバ１に直接接続するものであってもよく、あるいは通信回線を介して接続するようにしてもよい。
【００７７】
また、図２に示すチャネル切替用マルチキャスト配信サーバ１の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、マルチキャスト配信処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＤＶＤ（Digital Versatile Disk）等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００７８】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００７９】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
例えば、上述した実施形態では、ＩＰＴＶシステムを例に挙げて説明したが、本発明は、マルチキャストデータのバッファリングを行う各種システムに適用することができる。
【図面の簡単な説明】
【００８０】
【図１】本発明の一実施形態に係るＩＰＴＶシステムの全体構成図である。
【図２】図１に示すチャネル切替用マルチキャスト配信サーバ１の構成を示すブロック図である。
【図３】本発明に係るチャネル切替用マルチキャストフローＧ’の実施例１を示す概念図である。
【図４】本発明の実施例１に係るチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の選択受信の方法を説明するための概念図である。
【図５】本発明の実施例１に係るチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の選択受信の方法を説明するための概念図である。
【図６】本発明の実施例１に係るチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の選択受信の方法を説明するための概念図である。
【図７】本発明の実施例１に係るチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の選択受信の方法を説明するための概念図である。
【図８】本発明の実施例１に係るチャネル切替用マルチキャストフローＧ’（１）〜Ｇ’（９）の選択受信の方法を説明するための概念図である。
【図９】本発明に係るチャネル切替用マルチキャストフローＧ’の実施例２を示す概念図である。
【符号の説明】
【００８１】
１…チャネル切替用マルチキャスト配信サーバ（マルチキャスト配信装置）、２…コンテンツ配信サーバ、３…視聴者装置（マルチキャスト受信装置）、４…通信ネットワーク、１１…送受信部、１２…コンテンツデータ記憶部、１３…送信データ生成部（マルチキャストフロー生成手段）、Ｇ…マルチキャストフロー（第１のマルチキャストフロー）、Ｇ’…チャネル切替用マルチキャストフロー（第２のマルチキャストフロー）
【図１】
0004903167.tif 000002
【図２】
0004903167.tif 000003
【図３】
0004903167.tif 000004
【図４】
0004903167.tif 000005
【図５】
0004903167.tif 000006
【図６】
0004903167.tif 000007
【図７】
0004903167.tif 000008
【図８】
0004903167.tif 000009
【図９】
0004903167.tif 000010