(57)【要約】【課題】アプリケーションの機能としてコンテンツの同期制御をする必要なく、コンテンツの同期を実現する。【解決手段】同期配信制御装置１２１,１２２,１２３,１２４は、それぞれ、同一グループ内の同期配信制御装置間の転送時間（伝搬遅延）の計測を行い、その情報を同期配信制御装置間で共有する。各受信ノード機器が接続している同期配信制御装置１２１〜１２４において、遅延時間分バッファリングする事で、コンテンツを送信する送信ノード機器１１が送信したデータを、コンテンツの受信ノード機器１３１,１３２,１３３が受信するタイミングが制御される。【選択図】図１
2013066088.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して送信されるストリーミングデータを複数の受信ノード機器に対して同期して配信するためのネットワークシステムであって、
前記ストリーミングデータを送信する送信ノード機器と、
前記ネットワーク上において、前記送信ノード機器から送信された前記ストリーミングデータを前記複数の受信ノード機器に伝送するための複数のネットワーク機器とを備え、
各前記複数のネットワーク機器は、
定期的に、相互間の通信の遅延時間を計測するための遅延時間計測手段と、
前記複数のネットワーク機器間の各経路の遅延時間を共有するための遅延時間共有手段とを含み、
前記複数のネットワーク機器のうち、前記受信ノード機器のネットワークゲートウェイとして機能する複数の受信側のネットワーク機器の各々は、
前記共有された各経路の遅延時間のうち所定の許容範囲内の最大の遅延時間と、前記送信ノード機器のゲートウェイとして機能するネットワーク機器から自身までの遅延時間とに基づいて、前記受信ノード機器へ同期して配信されるように、伝送される前記ストリーミングデータの遅延時間の調整を実行する調整手段をさらに含む、ネットワークシステム。
【請求項２】
各前記複数のネットワーク機器は、前記受信ノード機器を、前記ストリーミングデータを再生するアプリケーションプログラムおよび再生されるコンテンツごとにグループ分けして管理し、
前記遅延時間計測手段は、前記グループごとに、前記遅延時間を計測し、
前記遅延時間共有手段は、前記グループごとに、前記遅延時間を共有し、
前記調整手段は、前記グループごとに、前記調整を実行する、請求項１記載のネットワークシステム。
【請求項３】
前記遅延時間計測手段は、同期配信の対象となる前記受信ノード機器との間に存在する前記ネットワーク機器間の転送時間を計測し、
前記調整手段は、前記ストリーミングデータを蓄積するバッファを含み、計測した遅延時間から同期配信の対象となる複数の前記受信ノード機器への配信時刻が同時となるよう遅延時間を算出し、前記バッファにおいて、算出した前記遅延時間に合わせて前記ストリーミングデータを一時蓄積する、請求項１または２記載のネットワークシステム。
【請求項４】
送信ノード機器からネットワークを介して送信されるストリーミングデータを複数の受信ノード機器に対して同期して配信するために前記ネットワーク上に配置されるネットワーク機器であって、
前記ストリーミングデータを前記受信ノード機器に向けて転送するための通信手段と、
定期的に、相互間の通信の遅延時間を計測するための遅延時間計測手段と、
前記ネットワーク上に配置される他のネットワーク機器との間の各経路の遅延時間を共有するための遅延時間共有手段と、
前記受信ノード機器のネットワークゲートウェイとして機能する場合に、前記共有された各経路の遅延時間のうち所定の許容範囲内の最大の遅延時間と、前記送信ノード機器のゲートウェイとして機能するネットワーク機器から自身までの遅延時間とに基づいて、前記受信ノード機器へ同期して配信されるように、伝送される前記ストリーミングデータの遅延時間の調整を実行する調整手段とを備える、ネットワーク機器。
【請求項５】
前記ネットワーク機器は、前記受信ノード機器を、前記ストリーミングデータを再生するアプリケーションプログラムおよび再生されるコンテンツごとにグループ分けして管理し、
前記遅延時間計測手段は、前記グループごとに、前記遅延時間を計測し、
前記遅延時間共有手段は、前記グループごとに、前記遅延時間を共有し、
前記調整手段は、前記グループごとに、前記調整を実行する、請求項４記載のネットワーク機器。
【請求項６】
前記遅延時間計測手段は、同期配信の対象となる前記受信ノード機器との間に存在する前記ネットワーク機器間の転送時間を計測し、
前記調整手段は、前記ストリーミングデータを蓄積するバッファを含み、計測した遅延時間から同期配信の対象となる複数の前記受信ノード機器への配信時刻が同時となるよう遅延時間を算出し、前記バッファにおいて、算出した前記遅延時間に合わせて前記ストリーミングデータを一時蓄積する、請求項４または５記載のネットワーク機器。
【請求項７】
ネットワークを介して送信されるストリーミングデータを複数の受信ノード機器に対して同期して配信するための配信方法であって、
前記ストリーミングデータを送信するステップと、
前記ネットワーク上において、前記送信ノード機器から送信された前記ストリーミングデータを複数のネットワーク機器を介して前記複数の受信ノード機器に向けて伝送するステップと、
定期的に、前記複数のネットワーク機器の相互間の通信の遅延時間を計測するステップと、
前記複数のネットワーク機器間で各伝送経路の遅延時間の情報を共有するステップと、
前記ネットワーク機器が、前記受信ノード機器のネットワークゲートウェイとして機能する場合に、前記共有された各経路の遅延時間のうち所定の許容範囲内の最大の遅延時間と、前記送信ノード機器のゲートウェイとして機能するネットワーク機器から自身までの遅延時間とに基づいて、前記受信ノード機器へ同期して配信されるように、伝送される前記ストリーミングデータの遅延時間の調整を実行するステップとを備える、配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して映像や音声などのストリーミングコンテンツを配信する技術に関し、各受信側ノード機器でのストリーミングコンテンツの同期した再生を実現するためのネットワークシステム、ネットワーク機器およびネットワークを介した配信方法に関する。
【背景技術】
【０００２】
近年、ネットワーク技術の発達によって、実空間の範囲を超えた世界中の人々と、様々な生活体験を共有できるようになりつつある。たとえば、電話網の登場によって、直接声の届かない場所にいる人と会話を行うことが可能となり、さらには、ビデオ会議システムの登場によって、音声だけではなく相手の様子を見ながら会話を楽しむことが可能となった。
【０００３】
そのような共有体験の一つとして、ネットワークを介して遠隔地にいる人間同士で、一緒に動画コンテンツを視聴し、互いに感想を共有する体験を想定する。このような体験は、家族が一緒にテレビを見ながら語らったり、スポーツバーなどで知人らと一緒にスポーツイベントを観戦したりといった形で、実空間で近くにいる人同士では日常的に享受できている体験である。
【０００４】
このような体験をネットワーク越えて実現するには、複数の遠隔地の体験を同期させることが重要となる。たとえば、ストリーミング配信されている同じ動画を複数の地点で視聴している場合、一般には、ストリーミングの配信元から各地点へのネットワーク上の経路が異なるため、遅延に差が生じ、ストリーミングの到達タイミングにずれが生じてしまう。このずれによって、地点間で感動のタイミングにずれが生じ、実空間で近くにいる人同士が感想を共有するような体験を得ることが困難となる。
【０００５】
特許文献１には、ストリーミングコンテンツ（映像、音声など）を複数の利用者端末に配信する際に、利用者端末間でのコンテンツ再生位置の同期を図るための技術が開示されている。
【０００６】
この特許文献１に開示の技術では、ストリーミングコンテンツの送信側で、利用者端末からそのようなストリーミングコンテンツの再生位置情報を受信して管理し、各利用者端末ごとに、その利用者端末におけるコンテンツ再生位置を推定する。さらに、再生位置の推定の情報を用いて、同一のコンテン ツを視聴中の複数の利用者端末間でのコンテンツ再生位置の時間的なずれを算出して、それぞれの利用者端末でのコンテンツ再生位置の制御を指示する技術が開示されている。
【０００７】
すなわち、現在のインターネット上では、送信機側の装置または受信機側の端末で動作するアプリケーションに同期機能を実装することで、同期した体験が実現される。そこで、複数のノードで体験を同期させるためには、アプリケーション側に同期のメカニズムを作り込まなければならない。そして、送信元から受信先へのネットワーク遅延のばらつきを、アプリケーションの機能として吸収して同期を実現する。特許文献１に記載の技術の他、たとえば、具体的には送信側で同期配信を行うデータにタイムスタンプ等を付加して送信し、受信側のアプリケーションにてデータ受信時にタイムスタンプの示す時刻から再生開始時間を逆算し、バッファリングしてから再生する等の技術も実現されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００５−２４４６０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述したような従来技術のアプローチでは、アプリケーションで実現したい同期方法や取り扱う情報の違いなどから、それぞれのアプリケーション毎に独自に同期配信システムを作り込まねばならず、開発コストの増大につながる。
【００１０】
この発明の目的は、アプリケーションの機能としてコンテンツの同期制御をする必要なく、コンテンツ再生の同期を実現するネットワークシステム、ネットワーク機器および配信方法を提供することである。
【課題を解決するための手段】
【００１１】
この発明の１つの局面に従うと、ネットワークを介して送信されるストリーミングデータを複数の受信ノード機器に対して同期して配信するためのネットワークシステムであって、ストリーミングデータを送信する送信ノード機器と、ネットワーク上において、送信ノード機器から送信されたストリーミングデータを複数の受信ノード機器に伝送するための複数のネットワーク機器とを備え、各複数のネットワーク機器は、定期的に、相互間の通信の遅延時間を計測するための遅延時間計測手段と、複数のネットワーク機器間の各経路の遅延時間を共有するための遅延時間共有手段とを含み、複数のネットワーク機器のうち、受信ノード機器のネットワークゲートウェイとして機能する複数の受信側のネットワーク機器の各々は、共有された各経路の遅延時間のうち所定の許容範囲内の最大の遅延時間と、送信ノード機器のゲートウェイとして機能するネットワーク機器から自身までの遅延時間とに基づいて、受信ノード機器へ同期して配信されるように、伝送されるストリーミングデータの遅延時間の調整を実行する調整手段をさらに含む。
【００１２】
好ましくは、各複数のネットワーク機器は、受信ノード機器を、ストリーミングデータを再生するアプリケーションプログラムおよび再生されるコンテンツごとにグループ分けして管理し、遅延時間計測手段は、グループごとに、遅延時間を計測し、遅延時間共有手段は、グループごとに、遅延時間を共有し、調整手段は、グループごとに、調整を実行する。
【００１３】
好ましくは、遅延時間計測手段は、同期配信の対象となる受信ノード機器との間に存在するネットワーク機器間の転送時間を計測し、調整手段は、ストリーミングデータを蓄積するバッファを含み、計測した遅延時間から同期配信の対象となる複数の受信ノード機器への配信時刻が同時となるよう遅延時間を算出し、バッファにおいて、算出した遅延時間に合わせてストリーミングデータを一時蓄積する。
【００１４】
この発明の他の局面に従うと、送信ノード機器からネットワークを介して送信されるストリーミングデータを複数の受信ノード機器に対して同期して配信するためにネットワーク上に配置されるネットワーク機器であって、ストリーミングデータを受信ノード機器に向けて転送するための通信手段と、定期的に、相互間の通信の遅延時間を計測するための遅延時間計測手段と、ネットワーク上に配置される他のネットワーク機器との間の各経路の遅延時間を共有するための遅延時間共有手段と、受信ノード機器のネットワークゲートウェイとして機能する場合に、共有された各経路の遅延時間のうち所定の許容範囲内の最大の遅延時間と、送信ノード機器のゲートウェイとして機能するネットワーク機器から自身までの遅延時間とに基づいて、受信ノード機器へ同期して配信されるように、伝送されるストリーミングデータの遅延時間の調整を実行する調整手段とを備える。
【００１５】
好ましくは、ネットワーク機器は、受信ノード機器を、ストリーミングデータを再生するアプリケーションプログラムおよび再生されるコンテンツごとにグループ分けして管理し、遅延時間計測手段は、グループごとに、遅延時間を計測し、遅延時間共有手段は、グループごとに、遅延時間を共有し、調整手段は、グループごとに、調整を実行する。
【００１６】
好ましくは、遅延時間計測手段は、同期配信の対象となる受信ノード機器との間に存在するネットワーク機器間の転送時間を計測し、調整手段は、ストリーミングデータを蓄積するバッファを含み、計測した遅延時間から同期配信の対象となる複数の受信ノード機器への配信時刻が同時となるよう遅延時間を算出し、バッファにおいて、算出した遅延時間に合わせてストリーミングデータを一時蓄積する。
【００１７】
この発明のさらに他の局面に従うと、ネットワークを介して送信されるストリーミングデータを複数の受信ノード機器に対して同期して配信するための配信方法であって、ストリーミングデータを送信するステップと、ネットワーク上において、送信ノード機器から送信されたストリーミングデータを複数のネットワーク機器を介して複数の受信ノード機器に向けて伝送するステップと、定期的に、複数のネットワーク機器の相互間の通信の遅延時間を計測するステップと、複数のネットワーク機器間で各伝送経路の遅延時間の情報を共有するステップと、ネットワーク機器が、受信ノード機器のネットワークゲートウェイとして機能する場合に、共有された各経路の遅延時間のうち所定の許容範囲内の最大の遅延時間と、送信ノード機器のゲートウェイとして機能するネットワーク機器から自身までの遅延時間とに基づいて、受信ノード機器へ同期して配信されるように、伝送されるストリーミングデータの遅延時間の調整を実行するステップとを備える。
【発明の効果】
【００１８】
本発明によれば、アプリケーション側による同期制御をすることなく、同期システムを実現することができ、アプリケーションの開発コストを抑制することが可能である。
【００１９】
また、ＬＡＮ（Local Area Network）内部等の遅延が殆ど無い環境での運用を想定して開発されたアプリケーションを、本発明のネットワークシステムに接続することで、汎用性の高いネットワークを実現することができる。
【図面の簡単な説明】
【００２０】
【図１】コンテンツ同期配信を行うためのネットワーク構成１０００の構成を示す概念図である。
【図２】同期型のストリーミング再生の概念を示す図である。
【図３】送信ノード機器１１または、受信ノード機器１３１〜１３３に使用される機器の構成を示すブロック図である。
【図４】同期配信制御装置１２１の構成を示す機能ブロック図である。
【図５】ネットワーク上の同期配信制御装置は、同期配信を実現するための構成を説明するための概念図である。
【図６】同期配信制御装置が、ノード機器、アプリケーションおよびコンテンツのグループについて同期配信を行う状態を示す概念図である。
【図７】グループ管理、グループ検索、グループへの参加および離脱、グループ情報の更新のフローを説明するための図である。
【図８】同期配信制御装置４５〜４８の各々が管理するグループ管理のためのテーブルを示す図である。
【図９】グループ検索のためにノード機器４４と同期配信制御装置４８との間で授受されるデータを説明するための図である。
【図１０】参加処理のためにノード機器４４と同期配信制御装置４８との間で授受されるデータを説明するための図である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態の同期配信制御装置およびネットワークの構成について、図に従って説明する。なお、以下の実施の形態において、同じ符号を付した構成要素および処理工程は、同一または相当するものであり、必要でない場合は、その説明は繰り返さない。
【００２２】
図１は、コンテンツ同期配信を行うためのネットワーク構成１０００の構成を示す概念図である。
【００２３】
図１を参照して、ネットワーク構成１０００においては、コンテンツの送信元の送信ノード機器１１およびコンテンツの配信を受ける受信ノード機器１３１，１３２，１３３の各々は、ネットワーク上に複数配置された同期配信制御装置１２１,１２２,１２３,１２４を介して、ネットワーク上にある他のノードと通信を行う。
【００２４】
したがって、特に限定されないが、同期配信制御装置１２１〜１２４は、ネットワーク上のルータ装置やスイッチ装置のようなネットワーク通信機器としても機能する。
【００２５】
同期配信制御装置１２１〜１２４の各々は、データを同時に到達させるノード、アプリケーションおよびコンテンツをグループ化して保持し、このグループ毎に、後に説明するような遅延制御を実施する。
【００２６】
ここで、同期配信制御装置１２１,１２２,１２３,１２４は、それぞれ、同一グループ内の同期配信制御装置間の転送時間（伝搬遅延）の計測を行い、その情報を同期配信制御装置間で共有する。送信ノード機器１１が送信したパケットを複数の受信ノード機器に対して同時に到達するよう配信する場合、各受信ノード機器が接続している同期配信制御装置１２１〜１２４において、それぞれ対応する遅延時間分バッファリングする事で、コンテンツを送信する送信ノード機器１１が送信したデータを、コンテンツの受信ノード機器１３１,１３２,１３３が受信するタイミングが制御される。
【００２７】
ここで、「グループ」とは、ネットワーク上に配置される複数の同期配信制御装置のうち、コンテンツの配信を実行する送信ノード機器１１のゲートウェイとして機能する同期配信制御装置１２１と、この送信ノード機器１１から同一のアプリケーションで同一のコンテンツの配信を受ける受信ノード機器１３１,１３２,１３３のゲートウェイとして機能する同期配信制御装置１２２,１２３,１２４とを意味する。
【００２８】
また、「ゲートウェイ」とは、別のコンピュータネットワークへの入り口となるネットワーク拠点であり、ここでは、コンピュータネットワーク間のプロトコル変換をする機器の他、ルータのように同様のプロトコルを用いたネットワークだけを越えてパケットを転送、受信、中継する機器も含むものとする。
【００２９】
図１に示されるように、送信ノード機器１１から、時刻ｔ１に送信されたデータパケットＰＫＴは、ネットワーク内での転送時間の大小に関わらず、受信ノード機器１３１,１３２,１３３では、同一の時刻ｔ２に受信される。
【００３０】
すなわち、図１に示されるネットワーク構成１０００は、体験を同期したいユーザ、すなわち、受信ノード機器をグループ化し、グループ内のあるユーザが送信したデータを、他の全てのユーザに同一タイミングで到達させることが可能なネットワークである。このようなネットワークを、以下、「同時到達保証ネットワーク」と呼ぶ。
【００３１】
この同時到達保証ネットワークを用いることで、ネットワーク側でデータが同時に到達することを保証し、アプリケーション側で同期処理をすることなく同期型のストリーミング再生が実現可能となる。
【００３２】
図２は、上述した同期型のストリーミング再生の概念を示す図である。
【００３３】
同時到達保証ネットワークにおける「同時」とは、究極的には完全な同時が望ましいものの、現実には、完全に同時とすることは、技術的には非常に困難である。このため、図２に示すように、全ての受信者間で遅延時間の広がりをできるだけ小さくし、ストリーミング再生を視聴するユーザが、体感上、遅延を無視できる程度の遅延広がりに抑制された状態（実線）を意味するものとする。
【００３４】
図３は、送信ノード機器１１または、受信ノード機器１３１〜１３３に使用される機器（以下、総称して「ノード機器」と称す）の構成を示すブロック図である。
【００３５】
図３に示されるように、特に限定されないが、このような送信ノード機器１１または、受信ノード機器１３１〜１３３は、汎用のパーソナルコンピュータの構成を有するものとしてよい。
【００３６】
すなわち、ノード機器は、外部記録媒体６４に記録されたデータを読み取ることができるドライブ装置５２と、バス６６に接続された中央演算装置（ＣＰＵ：Central Processing Unit）５６と、ＲＯＭ（Read Only Memory) ５８と、ＲＡＭ（Random Access Memory）６０と、不揮発性記憶装置５４と、ネットワーク３０との間で通信をするためのネットワークインタフェース（以下、ネットワークＩ／Ｆ）６８とを含んでいる。
【００３７】
外部記録媒体６４としては、たとえば、光学ディスクやメモリカードを使用することができる。ただし、ドライブ装置５２の機能を実現する装置は、光学ディスクやフラッシュメモリなどのように不揮発的にデータを記録できる媒体からデータを読み出せる装置であればよく、対象となる記録媒体は、光学ディスクやメモリカードに限定されない。また、不揮発性記憶装置５４の機能を実現する装置も、不揮発的にデータを記憶し、かつ、ランダムアクセスできる装置であれば、ハードディスクのような磁気記憶装置を使用してもよいし、フラッシュメモリなどの不揮発性半導体メモリを記憶装置として用いるソリッドステートドライブ（ＳＳＤ：Solid State Drive）を用いることもできる。
【００３８】
このノード機器の主要部は、コンピュータハードウェアと、ＣＰＵ５６により実行されるソフトウェアとにより実現される。一般的にこうしたソフトウェアは、マスクＲＯＭやプログラマブルＲＯＭなどによりノード機器の製造時に記録されており、これが実行時にＲＡＭ６０に読みだされる構成としてもよいし、ドライブ装置５２により記録媒体６４から読取られて不揮発性記憶装置５４に一旦格納され、実行時にＲＡＭ６０に読みだされる構成としてもよい。または、当該ノード機器がネットワークに接続されている場合には、ネットワーク上のサーバから、一旦、不揮発性記憶装置５４にコピーされ、不揮発性記憶装置５４からＲＡＭ６０に読出されてＣＰＵ５６により実行される構成であってもよい。
【００３９】
ここでは、上述したように、ノード機器上で実行されるプログラムとしては、たとえば、ストリーミングコンテンツを再生できるアプリケーションソフトであるものとする。
【００４０】
なお、「ストリーミングコンテンツを再生」とは、音声を伴う映像を再生することの他に、音声を伴わない映像を再生することや、音声のみを再生することも含まれるものとする。
【００４１】
図４は、同期配信制御装置１２１の構成を示す機能ブロック図である。
【００４２】
なお、図４においては、同期配信制御装置１２１の構成を例示的に示すものの、他の同期配信制御装置も同様の構成を有するものとする。また、同期配信制御装置１２１の機能のうち、ルータ装置やスイッチ装置のようなネットワーク通信機器として機能するために必要な構成については、周知であるため図示を省略している。さらに、図４で示される機能ブロックは、特に限定されないが、たとえば、同期配信制御装置１２１内の記憶装置に格納されたプログラムに基づいて、同期配信制御装置１２１の演算装置が実行するソフトウェア（同期マネージャ・ソフトウェア）の機能として実現することが可能である。
【００４３】
図４を参照して、同期配信制御装置１２１は、データ受信処理部２６と、データ送信処理部２８と、グループ管理機能部２２と、転送時間計測部２３と、遅延制御部２７とを含む。
【００４４】
データ受信処理部２６は、ノード機器や他の同期配信制御装置からのデータを受信する。一方、データ送信処理部２８は、ノード機器や他の同期配信制御装置へのデータを送信する。
【００４５】
グループ管理機能部２２は、同期配信対象のアプリケーション、コンテンツ、ノード機器に関する情報を受信して保持する。転送時間計測部２３は、同期配信制御装置間の転送時間計測結果を受信し、保持する。遅延制御部２７は、データ受信処理部２６から引き渡されたデータを元に、グループ管理機能部２２から該当するグループを取得し、グループに該当する同期配信制御装置間の転送時間を参照し、同期配信制御装置１２１にてバッファリングすべき遅延時間を算出するとともに、当該遅延時間だけコンテンツデータをバッファリングするバッファを有する。
【００４６】
図５は、ネットワーク上の同期配信制御装置は、同期配信を実現するための構成を説明するための概念図である。
【００４７】
以下では、説明のために、図５に示すように、５台のノード機器が同期配信グループに参加している状態を用いて説明する。
【００４８】
なお、図５において、同期配信制御装置３６，３７，３８，３９の各々は、図４に示した同期配信制御装置１２１と同様の構成を有するものとする。
【００４９】
ネットワーク上の同期配信制御装置３６，３７，３８，３９は、同期配信を実現するために、以下の方法でノード間の同期配信制御装置間の転送時間を管理する。
【００５０】
同期配信制御装置３６〜３９は、同期配信対象をアプリケーション、コンテンツ、ノード機器を関連付けてグループとして管理する。ここで、同期配信制御装置間の最短経路による転送時間を、ｄsrc-dstで表す。
【００５１】
たとえば、ノード機器３１が、同一グループ内のノード機器３２、ノード機器３３、ノード機器３４、ノード機器３５へデータを送信する場合、ノード間の通信経路に応じて、転送時間ｄ36-37、転送時間ｄ36-38、転送時間ｄ36-3９の転送時間情報が必要となる。同期配信制御装置３６〜３９の各々は、付加する遅延時間を調整するために、転送時間ｄ36-37、転送時間ｄ36-38、転送時間ｄ36-3９を周期的に計測する。
【００５２】
転送時間ｄ36-37、転送時間ｄ36-38、転送時間ｄ36-3９の計測方法としては、pingを用いた往復時間の計測や、同期配信制御装置の時刻をＧＰＳ（Global Positioning System）等を用いて同期した上で転送時間計測用パケットを送り、送信時の時間と受信時の時間の差異を受信側で計測した結果を送信側に返信する等の方法が考えられる。ただし、転送時間の計測方法としては、このような方法に限定されず、他の方法でも良い。
【００５３】
同期配信制御装置間の転送時間の計測時には、たとえば、あるグループに関わる同期配信制御装置がｎ台の場合、同期配信制御装置間の転送時間を相互に計測する必要であるため、ｎ2オーダの計測を周期的に行うことになる。また、ｎ2オーダの転送時間の情報は、各同期配信制御装置にて共有される必要がある。
【００５４】
各同期配信制御装置間で計測した転送時間情報を基に、各受信ノード機器が接続する同期配信制御装置３７〜３９の各々は、送信ノード機器３６が送信したパケットが、グループ内の全ての受信者に対して同時に到達するよう、各々の遅延量を決定する。
【００５５】
ここで、「ノード機器が接続する同期配信制御装置」とは、「ノード機器のゲートウェイとして機能する同期配信制御装置」のことを意味する。
【００５６】
ただし、アプリケーションの要求遅延時間を超える転送時間が発生する同期配信制御装置間の遅延は、制御対象外として扱う。グループ内のｎ台の同期配信制御装置に対して、送信ノード機器が接続する同期配信制御装置をＭi、受信ノードが接続する同期配信制御装置をＭjとすると、計測される遅延量の集合Ｄ１は、以下のように表される。
【００５７】
【数１】
2013066088.tif 000003
アプリケーションの要求遅延時間をＴとすると、遅延制御の対象となる遅延量の集合Ｄ２は、次のように表せる。
【００５８】
【数２】
2013066088.tif 000004
ここで、係数αは、アプリケーションの許容遅延率（０＜α＜１）である。この遅延制御の対象となる集合Ｄ２のうち最大となるものを、グループ内の最大転送時間として以下のように算出する。
【００５９】
【数３】
2013066088.tif 000005
同期配信制御装置Ｍjで調整する遅延時間τjは、最大転送時間ｄmaxを用いて、次式のように算出する。
【００６０】
【数４】
2013066088.tif 000006
遅延量の調整は、受信ノード機器が接続する各同期配信制御装置において、τjだけパケットをバッファリングし、その後受信ノード機器に転送することで実施する。
【００６１】
このように、各同期配信制御装置にて遅延量を調整することで、各ノードでパケットを受信するタイミングが同一となる。本実施の形態では、アプリケーションの許容遅延率を用いて、調整する時間を算出したが、他の方法を用いて算出しても良い。
【００６２】
なお、アプリケーションとコンテンツの判別はデータパケットのＩＰアドレスとポート番号で判別することが可能である。ただし、他の方法でアプリケーションとコンテンツの判別を行っても良い。
【００６３】
また、複数の同期配信グループが存在する場合には同期配信グループ間で、輻輳が起こらない様に遅延時間の調整を行うことも可能である。
【００６４】
図６は、同期配信制御装置が、ノード機器、アプリケーションおよびコンテンツのグループについて同期配信を行う状態を示す概念図である。
【００６５】
以下、ネットワーク上の同期配信制御装置４５，４６，４７，４８がノード、アプリケーションとコンテンツの組み合わせによって、同時配信を保証するグループを管理する例を説明する。
【００６６】
図６に示すように、送信ノード機器である動画配信サーバ４９が配信するあるスポーツ動画のライブ配信に、ノード機器４１、４２、４３が受信ノード機器として参加している。一方、受信ノード機器４２、４３、４４が、同時に音声通話に参加しているとする。
【００６７】
この場合、ノード機器４２は、スポーツ動画の受信時には、ノード機器４１、４３と同期するものの、音声通話の受信時にはノード機器４３、４４と同期するため、調整すべき到達時間がノード、アプリケーションとコンテンツの組み合わせによって異なる。
【００６８】
そのため、同期配信制御装置４５〜４８は、同時到達性を保証したいノードとアプリケーションの組み合わせ毎にグループ化して管理する。同期配信グループに関する機能としては、同期配信制御装置４５〜４８によるグループ管理、グループ検索、グループへの参加および離脱、グループ情報の更新等が挙げられる。
【００６９】
図７は、このようなグループ管理、グループ検索、グループへの参加および離脱、グループ情報の更新のフローを説明するための図である。
【００７０】
一方、図８は、同期配信制御装置４５〜４８の各々が管理するグループ管理のためのテーブルを示す図である。
【００７１】
以下では、ノード機器４４が、同期配信グループに参加し、離脱するまでの手続きを例にとって説明する。
【００７２】
[１  同期配信制御装置によるグループ管理]
図８を参照して、同期配信制御装置４８は、ノード機器４４からの要求に従ったグループの作成、削除とグループに必要な情報を管理する。
【００７３】
ここで、必要な情報とは図８に示したように、同期配信グループ毎にアプリケーション名（文字列型等）５１１，５１２、アプリケーションの要求遅延時間（実数型等）５２１，５２２、コンテンツのハッシュ（文字列型等）５３１，５３２、同期配信グループへの参加ノード毎に、参加ノードのアドレス（文字列型等）５４１，５４２，５７１，５７２、参加ノードの接続同期配信制御装置（文字列型等）５５１，５８１，５５２，５８２、参加ノードの接続同期配信制御装置間の上り転送時間（実数型等）５６１１，５９１１，５６２１，５９２１，参加ノードの接続同期配信制御装置間の下り転送時間（実数型等）５６１２，５９１２，５６２２，５９２２である。
【００７４】
[２  グループ検索]
図９は、グループ検索のためにノード機器４４と同期配信制御装置４８との間で授受されるデータを説明するための図である。
【００７５】
図９に加えて、再び、図７を参照して、グループへ新規加入を行うノード機器４４は、グループの検索を行うため、アプリケーション名（ＢＢＢＢ）とコンテンツのハッシュ（Ｂ２Ｂ２）を含んだ検索用リクエストパケット６０２を同期配信制御装置４８に送信する（Ｓ００２）。同期配信制御装置４８は、検索リクエストに含まれるコンテンツのハッシュと紐づけられたアプリケーションを基に、保持しているグループ情報を検索する。アプリケーション名およびコンテンツのハッシュが一致するグループリストが含まれるグループ情報を検索レスポンス６０４としてノード機器４４に送信する（Ｓ００４）。
【００７６】
[３  グループへの参加]
ノード機器４４は、同期配信制御装置４８から受信したグループリストを基に、参加したいグループへの参加要求を送信する（Ｓ００６）。
【００７７】
図１０は、参加処理のためにノード機器４４と同期配信制御装置４８との間で授受されるデータを説明するための図である。
【００７８】
図１０に加えて、再び、図７を参照して、参加要求７０４を受信した同期配信制御装置４８は、ノード機器４４の情報を該当するグループに登録し、参加応答７０５をノード機器４４に返信する（Ｓ００８）。
【００７９】
[４  グループ情報の更新]
一方、同期配信制御装置４８は、グループに新たなノードが参加した場合には、保持しているグループ情報を他の同期配信制御装置に送信する（Ｓ０１０）。
【００８０】
また、同期配信制御装置４８は、設定ファイル等で指定した定期的なタイミングで、他の同期配信制御装置との間の転送時間（遅延量）を計測する（Ｓ０１２）とともに、他の同期配信制御装置で計測された転送時間（遅延量）を受信して（Ｓ０１４）、管理テーブルに登録・更新することで、同期配信制御装置間の転送時間（遅延量）に関する情報を共有する。
【００８１】
なお、このような情報の共有を定期的なタイミングで実施する場合には、アプリケーションの要求遅延時間に応じて実施間隔を調整する構成としてもよい。
【００８２】
また、同期配信制御装置４８が、初期に他の同期配信制御装置のネットワーク上の位置を得る方法としては、初期ノードとして他のいずれかの同期配信制御装置のネットワーク上の位置を設定ファイル等で指定し、初期ノードから他の同期配信制御装置の情報を取得する方法や、同期配信制御装置の情報を管理するサーバを用意し、設定ファイル等で管理するサーバの位置を取得し問い合わせる等の方法が考えられる。ただし、初期に他の同期配信制御装置のネットワーク上の位置を得る方法は、このような構成に限定されることなく、他の方法でも良い。
【００８３】
[５  同期配信]
あるタイミングで、送信ノード機器４９からのコンテンツの送信が開始されると（Ｓ０１６）、他の同期配信制御装置で、コンテンツデータが転送処理され（Ｓ０１８）、同期配信制御装置４８においては、上述したような方法により、遅延時間の調整を実行された後（Ｓ０２０）、受信ノード機器４４に対してコンテンツデータが配信される（Ｓ０２２）。応じて、受信ノード機器４４において、コンテンツの再生処理が実行される（Ｓ０２８）。
【００８４】
なお、コンテンツのストリーミング配信中であっても、定期的なタイミングで、同期配信制御装置４８は、他の同期配信制御装置との間の転送時間（遅延量）を計測し（Ｓ０２４）とともに、他の同期配信制御装置で計測された転送時間（遅延量）を受信して（Ｓ０２６）、管理テーブル上で更新する。
【００８５】
ストリーミング配信の期間が終了するまで、同期配信制御装置４８は、更新された情報に基づいて、ストリーミングデータの転送を実行する（Ｓ０３０）。
【００８６】
[６  グループからの離脱]
グループ脱退時には、ノード機器４４から同期配信制御装置４８に脱退要求を送信し（Ｓ０３２）、同期配信制御装置４８は、ノード機器４４の情報を該当するグループから削除し、他の同期配信制御装置に対しては、ノード削除の登録のための情報を送信する（Ｓ０３６）。また、同期配信制御装置４８は、ノード機器４４に対して、脱退応答を返信する（Ｓ０３４）ことで、グループからの離脱処理が完了する。
【００８７】
以上説明したようなネットワーク構成１０００における同期配信制御装置の処理により、アプリケーション側による同期制御をすることなく、同期システムを実現することができ、アプリケーションの開発コストを抑制することが可能である。
【００８８】
今回開示された実施の形態は、本発明を具体的に実施するための構成の例示であって、本発明の技術的範囲を制限するものではない。本発明の技術的範囲は、実施の形態の説明ではなく、特許請求の範囲によって示されるものであり、特許請求の範囲の文言上の範囲および均等の意味の範囲内での変更が含まれることが意図される。
【符号の説明】
【００８９】
１１  送信ノード機器、２２  グループ管理機能部、２３  転送時間計測部、２７  遅延制御部、２６  データ受信処理部、２８  データ送信処理部、１３１，１３２，１３３  受信ノード機器、１２１,１２２,１２３,１２４  同期配信制御装置、１０００  ネットワーク構成。
【図２】
2013066088.tif 000007
【図３】
2013066088.tif 000008
【図４】
2013066088.tif 000009
【図５】
2013066088.tif 000010
【図７】
2013066088.tif 000011
【図８】
2013066088.tif 000012
【図９】
2013066088.tif 000013
【図１０】
2013066088.tif 000014
【図１】
2013066088.tif 000015
【図６】
2013066088.tif 000016