(57)【要約】【課題】マルチキャスト通信によるデータ受信に失敗した配信データを配信先装置間のＰ２Ｐ通信で補完する際にはデータの補完が完了するまでに無駄なトラフィックが発生する。【解決手段】配信元装置は、配信対象データを構成する各部分データに誤り検出符号を付加してマルチキャスト通信により複数の配信先装置へ送信する。各配信先装置は、受信した部分データに誤りがないか否かを判定し、部分データごとの判定結果を配信元装置へ送信する。配信元装置は、各配信先装置から受信した判定結果に基づいて、部分データの補完を必要としている配信先装置とその部分データの送信元とする配信先装置との組み合わせを決定し、送信元とする配信先装置に対して、補完依頼要求を送信する。補完依頼要求を受信した配信先装置は、補完依頼要求に従って、送信対象となる部分データをＰ２Ｐ通信により送信対象となる配信先装置へ送信する。【選択図】図１
2011160023.tif 000002
【特許請求の範囲】
【請求項１】
配信元装置が、配信対象データを構成する各部分データに誤り検出符号を付加してマルチキャスト通信により複数の配信先装置へ送信し、
各配信先装置が、前記配信元装置から受信した部分データに誤りがないか否かを前記誤り検出符号を用いて判定し、部分データごとの判定結果を予め設定された特定の装置へ送信し、
前記特定の装置が、各配信先装置から受信した部分データごとの判定結果に基づいて、部分データの補完を必要としている配信先装置と該補完のための部分データの送信元とする配信先装置との組み合わせを決定し、前記送信元とする配信先装置に対して、送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を送信し、
前記補完依頼要求を受信した前記配信先装置が、前記補完依頼要求に従って、送信対象となる部分データをＰ２Ｐ通信により送信対象となる配信先装置へ送信する
ことを特徴とするデータ配信方法。
【請求項２】
前記特定の装置は、前記配信元装置である
ことを特徴とする請求項１に記載のデータ配信方法。
【請求項３】
前記配信元装置は、全ての前記配信先装置が正常に受信できなかった部分データに関しては、その補完のための部分データを自装置から前記配信先装置へＰ２Ｐ通信により送信する
ことを特徴とする請求項１または２に記載のデータ配信方法。
【請求項４】
前記特定の装置は、少なくとも１つの配信先装置で正常に受信されていない部分データごとに、その部分データを正常に受信している配信先装置のうち、現時点までの補完のための部分データの送信量が一番少ない配信先装置を当該補完のための部分データの送信元に決定する
ことを特徴とする請求項１乃至３の何れか１項に記載のデータ配信方法。
【請求項５】
前記特定の装置は、現時点までの補完のための部分データの送信量が一番少ない配信先装置が複数存在する場合、判定結果の受信時刻がより早い配信先装置を当該補完のための部分データの送信元に決定する
ことを特徴とする請求項４に記載のデータ配信方法。
【請求項６】
ネットワークを介して相互に接続された配信元装置と複数の配信先装置とから構成され、
前記配信元装置は、
配信対象データを構成する各部分データに誤り検出符号を付加してマルチキャスト通信により複数の配信先装置へ送信するマルチキャスト配信手段と、
前記配信先装置から受信した、正常に受信したか否かを部分データごとに示す判定結果に基づいて、部分データの補完を必要としている配信先装置と該補完のための部分データの送信元とする配信先装置との組み合わせを決定し、前記送信元とする配信先装置に対して、送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を送信するＰ２Ｐ通信手段とを備え、
前記配信先装置は、
前記配信元装置から前記部分データを受信し、該受信した部分データに誤りがないか否かを前記誤り検出符号を用いて判定するマルチキャスト受信手段と、
自装置における前記部分データごとの判定結果を前記配信元装置へ送信し、前記配信元装置から前記補完依頼要求を受信した場合には、前記補完依頼要求に従って、送信対象となる部分データをＰ２Ｐ通信により送信対象となる配信先装置へ送信するＰ２Ｐ通信手段とを備える
ことを特徴とするデータ配信システム。
【請求項７】
配信対象データを構成する各部分データに誤り検出符号を付加してマルチキャスト通信により複数の配信先装置へ送信するマルチキャスト配信手段と、
前記配信先装置から受信した、正常に受信したか否かを部分データごとに示す判定結果に基づいて、部分データの補完を必要としている配信先装置と該補完のための部分データの送信元とする配信先装置との組み合わせを決定し、前記送信元とする配信先装置に対して、送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を送信するＰ２Ｐ通信手段と
を備えることを特徴とする配信元装置。
【請求項８】
配信元装置から配信対象データを構成する各部分データを誤り検出符号と共に受信し、該受信した部分データに誤りがないか否かを前記誤り検出符号を用いて判定するマルチキャスト受信手段と、
前記部分データごとの判定結果を予め設定された特定の装置へ送信し、前記特定の装置から送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を受信した場合には、前記補完依頼要求に従って、送信対象となる部分データをＰ２Ｐ通信により送信対象となる配信先装置へ送信するＰ２Ｐ通信手段と
を備えることを特徴とする配信先装置。
【請求項９】
コンピュータを、
配信対象データを構成する各部分データに誤り検出符号を付加してマルチキャスト通信により複数の配信先装置へ送信するマルチキャスト配信手段と、
前記配信先装置から受信した、正常に受信したか否かを部分データごとに示す判定結果に基づいて、部分データの補完を必要としている配信先装置と該補完のための部分データの送信元とする配信先装置との組み合わせを決定し、前記送信元とする配信先装置に対して、送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を送信するＰ２Ｐ通信手段と
して機能させるためのプログラム。
【請求項１０】
コンピュータを、
配信元装置から配信対象データを構成する各部分データを誤り検出符号と共に受信し、該受信した部分データに誤りがないか否かを前記誤り検出符号を用いて判定するマルチキャスト受信手段と、
前記部分データごとの判定結果を予め設定された特定の装置へ送信し、前記特定の装置から送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を受信した場合には、前記補完依頼要求に従って、送信対象となる部分データをＰ２Ｐ通信により送信対象となる配信先装置へ送信するＰ２Ｐ通信手段と
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配信元装置から複数の配信先装置へデータを配信するデータ配信方法に関する。
【背景技術】
【０００２】
大容量のデータ（例えば映像データなど）を配信する場合、配信元となる装置から複数の配信先となる装置へユニキャスト通信によりデータを送信すると、配信元装置およびネットワークの負荷が著しく増大する。このため、マルチキャスト通信を用いてデータを配信するシステムが提案ないし実用化されている。しかし、マルチキャスト通信自体にはデータの到達を保証する機能がないため、受信に失敗した配信先装置へ、補完のために配信データを再度送信する仕組みが必要になる。
【０００３】
配信データをマルチキャスト通信により配信した後、配信データの受信に失敗した配信先装置へ補完のためにデータを送信するデータ配信方法の一例が特許文献１に記載されている。特許文献１に記載のデータ配信方法では、配信元装置は、配信データを複数の部分データに分割し、個々の部分データをマルチキャスト通信により多数の配信先装置へ送信する。配信先装置は、部分データの受信に失敗した場合、必要とする部分データの送信をＰ２Ｐ（Peer To Peer）通信により他の配信先装置へ要求する。要求を受信した他の配信先装置は、要求された部分データを自装置で正常に受信している場合には、その部分データを要求元の配信先装置に対してＰ２Ｐ通信により送信する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−７２５５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したデータ配信方法では、部分データの送信を要求された配信先装置がその部分データを正常に受信している保証はない。このため、配信先装置間に無駄なトラフィックが発生し、データの補完を早期に完了するのが困難になる。このような問題は、その部分データを正常に受信している配信先装置の割合が小さい場合に特に顕著である。
【０００６】
本発明の目的は、マルチキャスト通信によるデータ受信に失敗したデータを配信先装置間のＰ２Ｐ通信で補完する際にはデータの補完が完了するまでに無駄なトラフィックが発生する、という課題を解決するデータ配信方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一形態にかかるデータ配信方法は、
配信元装置が、配信対象データを構成する各部分データに誤り検出符号を付加してマルチキャスト通信により複数の配信先装置へ送信し、
各配信先装置が、上記配信元装置から受信した部分データに誤りがないか否かを上記誤り検出符号を用いて判定し、部分データごとの判定結果を予め設定された特定の装置へ送信し、
上記特定の装置が、各配信先装置から受信した部分データごとの判定結果に基づいて、部分データの補完を必要としている配信先装置と該補完のための部分データの送信元とする配信先装置との組み合わせを決定し、上記送信元とする配信先装置に対して、送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を送信し、
上記補完依頼要求を受信した上記配信先装置が、上記補完依頼要求に従って、送信対象となる部分データをＰ２Ｐ通信により送信対象となる配信先装置へ送信する、
という構成を採る。
【発明の効果】
【０００８】
本発明は上述のように構成されているため、マルチキャスト通信によるデータ受信に失敗したデータを配信先装置間のＰ２Ｐ通信で補完する際、無駄なトラフィックが発生せず、データの補完を早期に完了することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態にかかるデータ配信システムのブロック図である。
【図２】本発明の第２の実施形態にかかるデータ配信システムで使用する配信元装置のブロック図である。
【図３】本発明の第２の実施形態にかかるデータ配信システムで使用する配信先装置のブロック図である。
【図４】配信対象データの構成例を示す図である。
【図５】判定結果群情報の構成例を示す図である。
【図６】本発明の第２の実施形態にかかるデータ配信システムの動作を示すシーケンス図である。
【発明を実施するための形態】
【００１０】
次に本発明の実施の形態について図面を参照して詳細に説明する。
[第１の実施形態]
図１を参照すると、本発明の第１の実施形態にかかるデータ配信システムは、配信元装置１と、複数の配信先装置２と、これらを相互に通信可能に接続するネットワーク３とから構成される。
【００１１】
配信元装置１は、配信対象データを複数の部分データに分割し、個々の部分データごとに、それに誤り検出符号を付加してマルチキャスト通信によりネットワーク３を通じて複数の配信先装置２へ送信する機能を有している。また、配信元装置１は、正常に受信したか否かを部分データごとに示す判定結果をＰ２Ｐ通信によりネットワーク３を通じて配信先装置２から受信する機能と、この判定結果に基づいて部分データの補完を必要としている配信先装置２とその補完のための部分データの送信元とする配信先装置２との組み合わせを決定する機能と、送信元とする配信先装置２に対して、送信対象となる部分データと送信対象となる配信先装置２とを記述した補完依頼要求をＰ２Ｐ通信により送信する機能とを有している。
【００１２】
各配信先装置２は、配信元装置１から配信対象データを構成する各部分データをマルチキャスト通信によりネットワーク３を通じて受信し、この受信した部分データに誤りがないか否かを誤り検出符号を用いて判定する機能を有している。また、各配信先装置２は、自装置における部分データごとの判定結果を配信元装置１へＰ２Ｐ通信により送信する機能と、配信元装置１から補完依頼要求を受信した場合には、その補完依頼要求に従って、送信対象となる部分データをＰ２Ｐ通信により送信対象となる他の配信先装置２へ送信する機能とを有している。
【００１３】
上述のように構成された本実施形態にかかるデータ配信システムは、以下のように動作する。
【００１４】
まず配信元装置１は、配信対象データを構成する各部分データに誤り検出符号を付加してマルチキャスト通信によりネットワーク３を通じて複数の配信先装置２へ送信する。
【００１５】
各配信先装置２は、配信元装置１から受信した部分データに誤りがないか否かを誤り検出符号を用いて判定し、部分データごとの判定結果を予め設定された特定の装置へＰ２Ｐ通信により送信する。特定の装置は、例えば配信元装置１とすることができる。また、特定の装置は、複数の配信先装置２の何れかの装置とすることができる。以下では、配信元装置１が特定の装置であるものとして、動作を説明する。
【００１６】
配信元装置１は、各配信先装置２から受信した部分データごとの判定結果に基づいて、部分データの補完を必要としている配信先装置２とその補完のための部分データの送信元とする配信先装置２との組み合わせを決定する。
【００１７】
この組み合わせを決定するアルゴリズムは任意である。一例として、特定の配信先装置２に部分データの送信処理の負荷が集中しないように、複数の配信先装置２に負荷を分散するようにしても良い。この負荷分散の方法は任意である。一例として、配信元装置１は、少なくとも１つの配信先装置２で正常に受信されていない部分データごとに、その部分データを正常に受信している配信先装置のうち、現時点までの補完のための部分データの送信量が一番少ない配信先装置２を当該補完のための部分データの送信元に決定する、という方法を用いることができる。また、現時点までの補完のための部分データの送信量が一番少ない配信先装置２が複数存在する場合、判定結果の受信時刻がより早い配信先装置２を当該補完のための部分データの送信元に決定するようにしても良い。判定結果をより早く送信してきた配信先装置２は、より負荷が少なくなっていると予想されるためである。
【００１８】
なお、配信元装置１は、自装置を全ての部分データを正常に受信している１台の配信先装置に見立てて、補完のための部分データの送信元の候補に含めるようにしても良い。この場合、全ての配信先装置２が正常に受信できなかった部分データに関してのみ、配信元装置１を候補に含めるようにしても良い。この場合は、その補完のための部分データを配信元装置１から配信先装置２へＰ２Ｐ通信により送信されることになる。
【００１９】
続いて配信先装置２は、上記の決定に従って、送信元とする配信先装置２に対して、送信対象となる部分データと送信対象となる配信先装置２とを記述した補完依頼要求をネットワーク３を通じてＰ２Ｐ通信により送信する。
【００２０】
補完依頼要求を受信した配信先装置２は、補完依頼要求に従って、送信対象となる部分データをＰ２Ｐ通信によりネットワーク３を通じて送信対象となる配信先装置２へ送信する。
【００２１】
このように本実施形態によれば、マルチキャスト通信によるデータ受信に失敗した部分データを配信先装置２間のＰ２Ｐ通信で補完する際、無駄なトラフィックが発生せず、データの補完を早期に完了することが可能になる。
【００２２】
その理由は、特定の装置が、各配信先装置から受信した判定結果に基づいて、部分データの補完を必要としている配信先装置とその補完のための部分データの送信元とする配信先装置との組み合わせを決定し、送信元とする配信先装置に対して、送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を送信し、この補完依頼要求に従って、部分データを正常に受信している配信先装置が、その部分データの補完を必要としている配信先装置へその部分データをＰ２Ｐ通信により送信するためである。
【００２３】
[第２の実施形態]
次に、図２および図３を参照して、本発明の第２の実施形態にかかるデータ配信システムについて説明する。図２は本発明の第２の実施形態にかかるデータ配信システムで使用する配信元装置のブロック図である。図３は本発明の第２の実施形態にかかるデータ配信システムで使用する配信先装置のブロック図である。
【００２４】
＜配信元装置＞
まず、図２を参照して、本発明の第２の実施形態にかかるデータ配信システムで使用する配信元装置の構成を説明する。
【００２５】
配信元装置１は、配信先装置２に対して配信対象データを送信する機能を有する装置であり、例えば映像データを衛星などを通じて多数の映画館や配信拠点にマルチキャスト配信するセンタ装置などに設置されたサーバ装置で構成される。
【００２６】
配信元装置１は、主な機能部として、演算処理部１１、記憶部１２、通信インターフェース部（以下、通信Ｉ／Ｆ部と称す）１３、および操作入力部１４を有している。
【００２７】
通信Ｉ／Ｆ部１３は、専用のデータ通信回路からなり、通信回線およびネットワーク３を介して接続された配信先装置２などの各種装置との間でデータ通信を行う機能を有している。操作入力部１４は、キーボードやマウスなどの操作入力装置からなり、オペレータの操作を検出して演算処理部１１へ出力する機能を有している。
【００２８】
記憶部１２は、ハードディスクやメモリなどの記憶装置からなり、演算処理部１１における各種処理に必要な処理情報やプログラム１２Ｐを記憶する機能を有している。プログラム１２Ｐは、演算処理部１１に読み込まれて実行されることにより各種処理部を実現するプログラムであり、通信Ｉ／Ｆ部１３などのデータ入出力機能を介して外部装置や記録媒体から予め読み込まれて記憶部１２に保存される。記憶部１２で記憶される主な処理情報として、配信対象データ１２Ａ、および判定結果群情報１２Ｂがある。
【００２９】
配信対象データ１２Ａは、配信元装置１から配信先装置２へ配信されるデータであり、例えば映像データである。図４は配信対象データ１２Ａの構成例である。この配信対象データ１２Ａは、マルチキャスト通信により一度に送信できるサイズ以下の複数の部分データから構成されている。個々の部分データは、データ本体と管理データとで構成される。データ本体は映像データなど、配信対象となるデータそのものである。管理データは、その部分データがどの配信対象データのものであるかを示すデータＩＤや、その部分データが先頭から何番目の部分データであるかを示す番号を含む。データＩＤは、配信対象データを一意に識別する識別子である。
【００３０】
判定結果群情報１２Ｂは、配信先装置２から受信した判定結果に管理情報を付加した情報である。図５は判定結果群情報１２Ｂの構成例である。この判定結果群情報１２Ｂは、配信先装置ごとの判定結果２２Ｃ、配信先装置ごとの管理情報１２１、および補完必要データ判定結果１２２から構成されている。
【００３１】
配信先装置ごとの判定結果２２Ｃは、配信対象データ１２Ａを構成する部分データごとに、その配信先装置がその部分データを正常に受信していればその旨を示す「正」のフラグを設定し、その部分データを正常に受信していなければその旨を示す「誤」のフラグを設定したデータである。補完必要データ判定結果１２２は、配信対象データ１２Ａを構成する部分データごとに、その部分データの補完を必要とする配信先装置２が存在していればその旨を示す「必要」のフラグを設定し、その部分データの補完を必要とする配信先装置２が存在していなければその旨を示す「不要」のフラグを設定したデータである。配信先装置ごとの管理情報１２１は、配信先装置の識別子や、補完データの送信元を決定する際の判断材料としての負荷情報を記憶する部分である。
【００３２】
演算処理部１１は、ＣＰＵなどのプロセッサとその周辺回路を有し、記憶部１２からプログラム１２Ｐを読み込んで実行することにより、上記ハードウェアとプログラム１２Ｐとを協働させて各種処理部を実現する機能を有している。演算処理部１１で実現される主な処理部として、マルチキャスト配信部１１ＡとＰ２Ｐ通信部１１Ｂとがある。
【００３３】
マルチキャスト配信部１１Ａは、操作入力部１４や外部装置からの指示入力に基づき、記憶部１２に記憶された配信対象データ１２Ａを構成する各部分データごとに、それに誤り検出符号を付加して、通信Ｉ／Ｆ１３を使用して、マルチキャスト通信によりネットワーク３を通じて複数の配信先装置２へ送信する機能を有している。
【００３４】
Ｐ２Ｐ通信部１１Ｂは、通信Ｉ／Ｆ部１３を使用して、配信先装置２ごとの判定結果２２ＣをＰ２Ｐ通信によりネットワーク３を通じて配信先装置２から受信する機能と、配信先装置２ごとの判定結果２２Ｃに基づいて、部分データの補完を必要としている配信先装置２とその補完のための部分データの送信元とする配信先装置２との組み合わせを決定する機能と、この決定に従って、送信元とする配信先装置２に対して、送信対象となる部分データと送信対象となる配信先装置２とを記述した補完依頼要求を、通信Ｉ／Ｆ部１３を使用してＰ２Ｐ通信により送信する機能とを有している。
【００３５】
＜配信先装置＞
次に、図３を参照して、本発明の第２の実施形態にかかるデータ配信システムで使用する配信先装置の構成を説明する。
【００３６】
配信先装置２は、配信元装置１から配信されるデータを受信する機能を有する装置であり、例えばセンタ装置から衛星などを通じて配信される映像データを受信する映画館や配信拠点などに設置されたサーバ装置で構成される。
【００３７】
配信先装置２は、主な機能部として、演算処理部２１、記憶部２２、および通信Ｉ／Ｆ部２３を有している。
【００３８】
通信Ｉ／Ｆ部２３は、専用のデータ通信回路からなり、通信回線およびネットワーク３を介して接続された配信元装置１などの各種装置との間でデータ通信を行う機能を有している。
【００３９】
記憶部２２は、ハードディスクやメモリなどの記憶装置からなり、演算処理部２１における各種処理に必要な処理情報やプログラム２２Ｐを記憶する機能を有している。プログラム２２Ｐは、演算処理部２１に読み込まれて実行されることにより各種処理部を実現するプログラムであり、通信Ｉ／Ｆ部２３などのデータ入出力機能を介して外部装置や記録媒体から予め読み込まれて記憶部２２に保存される。記憶部２２で記憶される主な処理情報として、配信メタ情報２２Ａ、受信データ２２Ｂ、および判定結果２２Ｃがある。
【００４０】
配信メタ情報２２Ａは、配信元装置１から配信されるデータのデータＩＤ、部分データのサイズ、部分データの数などの情報を含んで構成される。この配信メタ情報２２Ａは、配信に先立って記憶部２２に記憶される。配信メタ情報２２Ａは、配信元装置１から各配信先装置２へマルチキャスト通信やユニキャスト通信により送信しておいても良いし、通信によらずに配信先装置２に接続された外部装置から入力して記憶しておいても良い。
【００４１】
受信データ２２Ｂは、配信元装置１から配信されてきた配信対象データである。
【００４２】
判定結果２２Ｃは、配信元装置１から配信された配信データの各部分データごとの受信状況を示すデータである。この判定結果２２Ｃには、受信データ２２Ｂを構成する部分データごとに、その部分データが正常に受信されていればその旨を示す「正」のフラグが設定され、その部分データが正常に受信されていなければその旨を示す「誤」のフラグが設定されている。
【００４３】
演算処理部２１は、ＣＰＵなどのプロセッサとその周辺回路を有し、記憶部２２からプログラム２２Ｐを読み込んで実行することにより、上記ハードウェアとプログラム２２Ｐとを協働させて各種処理部を実現する機能を有している。演算処理部２１で実現される主な処理部として、マルチキャスト受信部２１ＡとＰ２Ｐ通信部２１Ｂとがある。
【００４４】
マルチキャスト受信部２１Ａは、配信元装置１からマルチキャスト通信により配信される配信対象データの各部分データを通信Ｉ／Ｆ部２３を用いて受信する機能と、受信した部分データに誤りがないか否かを判定し、判定結果２２Ｃを作成する機能とを有する。
【００４５】
Ｐ２Ｐ通信部２１Ｂは、通信Ｉ／Ｆ部２３を用いて、判定結果２２Ｃを配信元装置１へ送信する機能と、配信元装置１から通信Ｉ／Ｆ部２３を通じて補完依頼要求を受信した場合に、この補完依頼要求に従って、通信Ｉ／Ｆ部２３を用いて、送信対象となる部分データをＰ２Ｐ通信により送信対象となる他の配信先装置２へ送信する機能とを有する。
【００４６】
＜第２の実施形態の動作＞
次に、図６を参照して、本発明の第２の実施形態にかかるデータ配信システムの動作を説明する。以下では、配信元装置１が、合計ｎ個の部分データＤ１〜Ｄｎから構成される配信対象データＶＤを、複数の配信先装置２に配信する場合を例に説明する。また、この配信対象データＶＤのデータＩＤに対応して、部分データＤ１〜Ｄｎのサイズと部分データ数ｎとを含む配信メタ情報２２Ａが、各配信先装置２の記憶部２２に事前に記憶されているものとする。さらに、配信元装置１と各配信先装置２の通信アドレスは、それら装置の識別子に対応付けて事前に各装置に配布されているものとする。また、複数の配信先装置２には、同一のユニキャストアドレスが割り当てられているものとする。
【００４７】
まず配信元装置１のマルチキャスト配信部１１Ａは、配信対象データＶＤを構成する各部分データを１つのパケットとして、マルチキャスト通信によりネットワーク３を通じて複数の配信先装置２へ送信する（ステップＳ１１）。各パケットのペイロードには、部分データと誤り検出符号としてのチェックサムデータとが含まれる。また、部分データは、前述したようにデータ本体と、部分データの番号やデータＩＤを含む管理データとが含まれる。
【００４８】
各配信先装置２のマルチキャスト受信部２１Ａは、配信元装置１からマルチキャスト通信により送信されたパケットを受信し、記憶部２２に記憶する（ステップＳ２１）。その際、マルチキャスト受信部２１Ａは、受信した部分データに誤りがないか否かをチェックサムデータを用いて判定し、判定結果２２Ｃを生成して、記憶部２２に記憶する。判定結果２２Ｃは、配信メタ情報２２Ａで示される部分データ数に等しいフラグから構成され、初期状態では、全てのフラグは「誤」に設定されている。マルチキャスト受信部２１Ａは、或るパケットを受信し、チェックサムデータによる誤り判定でそのパケット中の部分データに誤りが無いと判定した場合、その部分データから管理データを取り出し、データＩＤと部分データ番号とを確認する。そして、マルチキャスト受信部２１Ａは、確認したデータＩＤに対応する判定結果２２Ｃ中の、確認した部分データ番号に対応するフラグを操作して「誤」から「正」に変更する。他方、マルチキャスト受信部２１Ａは、部分データに誤りが有ると判定した場合、対応するフラグは「誤」のままにしておく。マルチキャスト受信部２１Ａは、判定結果２２Ｃ中のすべてのフラグの操作を終えるか、終えなくても最初のフラグの操作から予め設定された一定時間が経過したときに、Ｐ２Ｐ通信部２１Ｂに対して受信完了の通知を送出する。
【００４９】
各配信先装置２のＰ２Ｐ通信部２１Ｂは、マルチキャスト受信部２１Ａから受信完了の通知を受けると、記憶部２２に記憶された判定結果２２ＣとデータＩＤとを含むパケットを生成し、配信元装置１のＰ２Ｐ通信部１１Ｂへ送信する（ステップＳ２２）。
【００５０】
配信元装置１のＰ２Ｐ通信部１１Ｂは、各配信先装置２から判定結果２２ＣとデータＩＤとを含むパケットを受信すると、その判定結果２２Ｃを記憶部１２の判定結果群情報１２Ｂの箇所に記憶する（ステップＳ１２）。具体的には、判定結果２２Ｃを受信した順に記憶し、判定結果２２Ｃに対応する管理情報１２１に、その判定結果２２Ｃを送信してきた配信先装置２の識別子を記述する。そして、全ての配信先装置から判定結果の受信を終えるか、終えなくても最初の判定結果の受信から予め定められた一定期間が経過したときに、判定結果群情報２２Ｂに基づいて、部分データの補完を必要としている配信先装置２とその補完のための部分データの送信元とする配信先装置２との組み合わせを決定する（ステップＳ１３）。この決定は、例えば以下のような方法により行う。
【００５１】
まずＰ２Ｐ通信部１１Ｂは、同じ部分データに対応する全ての判定結果２２Ｃのフラグの論理積を採ることにより、少なくとも１つの配信先装置２で正常に受信されていない部分データのリストである補完必要データ判定結果１２２を生成する。なお、本実施形態では、必要フラグ、不要フラグからなる補完必要データ判定結果１２２を生成しているが、このような必要フラグ、不要フラグの生成を省略し、誤フラグからＰ２Ｐで補完する部分データを決定し、正フラグから部分データの送信元とする配信先装置を決定するようにしても良い。
【００５２】
次に、Ｐ２Ｐ通信部１１Ｂは、補完必要データ判定結果１２２で補完が必要と判定された最初の１つの部分データに注目する。次に、この注目した部分データを送信対象の部分データ、この注目した部分データに対応するフラグが「誤」になっている判定結果を持つ配信先装置２を送信対象の配信先装置とする。また、この注目した部分データを正常に受信している配信先装置のうち、現時点までの補完のための部分データの送信量が一番少ない配信先装置２を当該補完のための部分データの送信元に決定する。最初の一つの部分データに注目した時点では、全ての部分データの送信量は０である。このように送信量が一番少ない配信先装置２が複数存在する場合は、それらの中の任意の１つの配信先装置２を当該補完のための部分データの送信元に決定する。あるいは、判定結果の受信時刻がより早い配信先装置２を当該補完のための部分データの送信元に決定しても良い。
【００５３】
次にＰ２Ｐ通信部１１Ｂは、或る配信先装置２を送信元に決定した場合には、その決定した配信先装置２の判定結果２２Ｃに対応する管理情報１２１に、補完対象となる部分データの番号と、その部分データを送信する配信先装置２の情報（例えばＩＤ）を記載する。例えば、１番目の部分データの補完を必要とする配信先装置２がＸ、Ｙの２台あり、その補完データの送信元を配信先装置Ｚに決定した場合、配信先装置Ｚに対応する管理情報１２１に、[１]→[Ｘ、Ｙ]を記載する。ここで、前半の[]は送信対象とする部分データを特定する情報、後半の[]は送信対象とする配信先情報を特定する情報である。
【００５４】
Ｐ２Ｐ通信部１１Ｂは、補完必要データ判定結果１２２中に補完が必要と判定された他の部分データが存在すれば、それらについても上記と同様の処理を行って、送信対象とする部分データと補完のためにその部分データを配信する送信元の配信先装置との組み合わせを決定する。２つ目以降の部分データの場合、それ以前に送信元に決定された配信先装置の送信量を考慮して、特定の配信先装置に負荷が偏らないように送信元を決定する。例えば、[１]→[Ｘ、Ｙ]という情報が管理情報１２１に記述されている配信先装置の送信量は「２単位」とカウントし、より負荷の少ない配信先装置を送信元に決定する。
【００５５】
Ｐ２Ｐ通信部１１Ｂは、補完が必要な部分データのすべてについて送信元とする配信先装置を決定すると、その決定に従って、補完依頼要求を作成し、Ｐ２Ｐ通信により、該当する送信元の配信先装置２へ送信する（ステップＳ１４）。具体的には、図５の管理情報１２１の一つ一つについて注目し、以下の処理を行う。
【００５６】
注目した管理情報１２１に、配信対象となる部分データと配信対象となる配信先装置の組み合わせが記述されているか否かを判定する。記述されていなければ、この管理情報１２１に対する処理を終える。記述されていれば、記述されている全ての組み合わせを参照して、送信対象となる部分データと送信対象となる配信先装置とを記述した補完依頼要求を生成し、この補完依頼要求を、当該管理情報１２１中に記述されている識別子で特定される配信先装置２へ送信する。例えば、或る配信先装置Ｚに対応する管理情報１２１に、[１]→[Ｘ、Ｙ]と[６]→[Ｘ]とが記述されていれば、１番目の部分データを配信先装置Ｘ、Ｙに送信し、６番目の部分データを配信先装置Ｘに送信することを要求する補完依頼要求を、配信先装置Ｚに送信する。
【００５７】
判定結果を配信元装置１へ送信した各配信先装置２は、配信元装置１から自装置宛ての補完依頼要求が送信されてくる可能性があるので、待機している。また、一部の部分データをマルチキャスト通信により正常に受信できなかった配信先装置２は、補完データが送信されてくる可能性があるので、待機している。
【００５８】
配信先装置２のＰ２Ｐ通信部２１Ｂは、配信元装置１から送信された自装置宛ての補完依頼要求を受信すると（ステップＳ２３）、受信した補完依頼要求に従って、送信対象となる部分データを記憶部２２の受信データ２２Ｂから読み出し、パケットを生成して、Ｐ２Ｐ通信により送信対象となる配信先装置へ送信する。自装置宛ての部分データを受信した配信先装置２のＰ２Ｐ通信部２１Ｂは、受信した部分データにより受信データ２２Ｂ中の欠落している部分データを完成させる。配信先装置２間のＰ２Ｐ通信による補完データの送受信には、上位レイヤに例えばＴＣＰを使用し、データの到達性をトランスポート層で保証するようにしても良い。また、上位レイヤにＵＤＰを使用し、部分データに誤り検出符号を付加して送信し、データの到達性をアプリケーション層における再送機能で保証するようにしても良い。また、送信対象となる配信先装置に複数の部分データを送信する必要がある場合、１つのパケットで送信しても良いし、複数のパケットに分けて送信しても良い。
【００５９】
なお、配信元装置１は、自装置を全ての部分データを正常に受信している１台の配信先装置に見立てて、補完のための部分データの送信元の候補に含めるようにしても良い。この場合、全ての配信先装置２が正常に受信できなかった部分データに関してのみ、配信元装置１を候補に含めるようにしても良い。
【００６０】
このように本実施形態によれば、配信元装置１から複数の配信先装置２に対するデータの配信を、配信元装置１や特定の各配信先装置２に負荷をかけずに効率良く行うことが可能となる。
【産業上の利用可能性】
【００６１】
本発明によれば、デジタルシネマや大容量ビデオオンデマンド配信といった、映像データの映画館や配信拠点への配信といった用途に適用できる。また、映像データに限らず、データの複数拠点配信用途にも適用可能である。
【符号の説明】
【００６２】
１      配信元装置
２      配信先装置
３      ネットワーク
１１    演算処理部
１１Ａ  マルチキャスト配信部
１２    記憶部
１２Ａ  配信対象データ
１２Ｂ  判定結果群情報
１２Ｐ  プログラム
１３    通信Ｉ／Ｆ部
１４    操作入力部
２１    演算処理部
２１Ａ  マルチキャスト受信部
２２    記憶部
２２Ａ  配信メタ情報
２２Ｂ  受信データ
２２Ｃ  判定結果
２２Ｐ  プログラム
２３    通信Ｉ／Ｆ部
【図１】
2011160023.tif 000003
【図２】
2011160023.tif 000004
【図３】
2011160023.tif 000005
【図４】
2011160023.tif 000006
【図５】
2011160023.tif 000007
【図６】
2011160023.tif 000008