(57)【要約】【課題】  プロキシサーバによるキャッシングを最適化することにより、受信側からの要求に対する応答性能を上げる。【解決手段】  本開示のプロキシサーバ装置は、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、前記解析部の解析結果を蓄積するデータベース部とを備える。本開示は、コンテンツをストリーミング配信するシステムに適用できる。【選択図】  図３
2015043486.tif 000002
【特許請求の範囲】
【請求項１】
適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、
モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、
前記解析部の解析結果を蓄積するデータベース部と
を備えるプロキシサーバ装置。
【請求項２】
前記モニタリング部は、さらに、前記コンテンツ供給装置に対して前記端末装置が前記メタファイルに基づいて送信した、前記コンテンツのストリームの取得要求をモニタリングし、
前記解析部は、さらに、モニタリングされた前記ストリームの前記取得要求を解析する
請求項１に記載のプロキシサーバ装置。
【請求項３】
蓄積された前記解析結果に基づく優先度に従い、前記ネットワークを介して配信された前記メタファイルまたは前記ストリームの少なくとも一方をキャッシングするキャッシング部を
さらに備える請求項２に記載のプロキシサーバ装置。
【請求項４】
前記キャッシング部は、前記端末装置からの要求に応じ、前記キャッシングの方針を登録または登録削除する
請求項３に記載のプロキシサーバ装置。
【請求項５】
プロキシサーバ装置の情報処理方法において、
前記プロキシサーバ装置による、
適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリングステップと、
モニタリングされた前記メタファイルの前記取得要求を解析し、その解析結果を蓄積する解析ステップと
を含む情報処理方法。
【請求項６】
コンピュータを、
適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、
モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、
前記解析部の解析結果を蓄積するデータベース部と
して機能させるプログラム。
【請求項７】
適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求を送信し、前記メタファイルの前記取得要求に応じて前記コンテンツ供給装置から配信された前記メタファイルを受信し、前記メタファイルに基づいて前記コンテンツ供給装置に前記コンテンツのストリームの取得要求を送信し、前記ストリームの前記取得要求に応じて前記コンテンツ供給装置から配信された前記ストリームを受信、再生する受信再生部と、
前記コンテンツ供給装置の動作を代行するプロキシサーバ装置に対して、前記メタファイルまたは前記ストリームの少なくとも一方のキャッシングの方針の登録を要求する登録部と
を備え、
前記プロキシサーバ装置は、
適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、
モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、
前記解析部の解析結果を蓄積するデータベース部とを備える
端末装置。
【請求項８】
前記登録部は、さらに、前記コンテンツ供給装置の動作を代行するプロキシサーバ装置に対して、前記キャッシングの方針の登録削除を要求する
請求項７に記載の端末装置。
【請求項９】
自身にとって最適なプロキシサーバに接続するための設定を行なうスクリプトをポータルサーバに要求し、前記ポータルサーバから提供された前記スクリプトを実行することによって前記設定を行なうスクリプト要求部を
さらに備える請求項８に記載の端末装置。
【請求項１０】
適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置と、前記コンテンツのストリームを受信、再生する端末装置と、前記コンテンツ供給装置と前記端末装置との間に設けられたプロキシサーバ装置とから成るコンテンツ供給システムおいて、
前記プロキシサーバ装置は、
前記コンテンツ供給装置に対して前記端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、
モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、
前記解析部の解析結果を蓄積するデータベース部とを備え、
前記端末装置は、
前記コンテンツ供給装置に対して前記メタファイルの前記取得要求を送信し、前記メタファイルの前記取得要求に応じて前記コンテンツ供給装置から配信された前記メタファイルを受信し、前記メタファイルに基づいて前記コンテンツ供給装置に前記コンテンツのストリームの前記取得要求を送信し、前記ストリームの前記取得要求に応じて前記コンテンツ供給装置から配信された前記ストリームを受信、再生する受信再生部と、
前記コンテンツ供給装置の動作を代行する前記プロキシサーバ装置に対して、前記メタファイルまたは前記ストリームの少なくとも一方のキャッシングの方針の登録を要求する登録部と
を備える
コンテンツ供給システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、プロキシサーバ装置、情報処理方法、プログラム、端末装置、およびコンテンツ供給システムに関し、特に、コンテンツのストリーミング配信を効率的に実行できるようにしたプロキシサーバ装置、情報処理方法、プログラム、端末装置、およびコンテンツ供給システムに関する。
【背景技術】
【０００２】
インターネットを介する動画配信に利用可能な国際標準化された動画配信プロトコルとして、Webサイトなどの閲覧と同様のHTTPユニキャスト配信を用いるMPEG-DASH（Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP、以下、DASHと称する）が知られている（例えば、非特許文献１を参照）。
【０００３】
DASHでは適応型ストリーミング技術が実現されている。すなわち、DASHにおけるコンテンツの供給側は、同一内容のコンテンツとして、配信パスの通信環境や受信側の能力や状態に応じて画質や画角サイズなどが変更されている複数のストリームを用意するようになされている。一方、受信側は、供給側が用意している複数のストリームのうち、自己が受信可能であって自己のデコード能力などに応じた最適なストリームを選択して受信、再生するようになされている。
【０００４】
このように、DASHにおいては、受信側がストリームを適応的に選択して受信できるように、MPD(Media Presentation Description)と称されるメタデータが供給側から受信側に供給される。
【０００５】
MPDには、チャンク化されたコンテンツのセグメントストリーム(Audio/Video/Subtitle等のメディアデータ)の供給元となるWEBサーバのアドレス(url情報)が記述されている。受信側は該url情報に基づいて、コンテンツの供給元となるWEBサーバにHTTPリクエストを送信し、このHTTPリクエストに応じてWEBサーバがユニキャスト配信するセグメントストリームを受信、再生することになる。
【０００６】
図１は、DASHに基づいてコンテンツのセグメントストリームを配信するコンテンツ供給システムの構成の一例を示している。
【０００７】
このコンテンツ供給システム１０は、コンテンツを供給する側の複数のコンテンツ供給装置２０−１乃至２０−Ｋと、コンテンツを受信する側の多数のDASHクライアント３０−１乃至３０−Ｎから構成される。以下、コンテンツ供給装置２０−１乃至２０−Ｋを個々に区別する必要がない場合、単にコンテンツ供給装置２０と称する。DASHクライアント３０−１乃至３０−Ｎについても同様とする。
【０００８】
コンテンツ供給装置２０とDASHクライアント３０は、それぞれインターネット１１に接続されている。インターネット１１上には、CDN(Contents Delivery Network)１２が構築されている。
【０００９】
コンテンツ供給装置２０は、同一内容のコンテンツであってビットレートが異なる複数のセグメントストリームを配信するものであり、チャネルストリーマ２１、DASHセグメントストリーマ２２、およびDASH MPDサーバ２３を有する。
【００１０】
チャネルストリーマ２１は、DASHクライアント３０に配信するためのコンテンツのソースデータを管理しており、コンテンツのソースデータからビットレートが異なる複数のストリーミングデータを生成してDASHセグメントストリーマ２２に出力する。
【００１１】
DASHセグメントストリーマ２２は、各ストリーミングデータを時間的にセグメントに分割して（チャンク化して）セグメントストリームを生成する。また、DASHセグメントストリーマ２２は、セグメントストリームをファイル化して保持し、WEBサーバとして、DASHクライアント３０からの要求（HTTPリクエスト）に応じ、セグメントストリームのファイルを、CDN１２を介して要求元のDASHクライアント３０にHTTPユニキャスト配信する。さらに、DASHセグメントストリーマ２２は、セグメントストリームのファイルの供給元のアドレスをDASH MPDサーバ２３に通知する。
【００１２】
DASH MPDサーバ２３は、DASHクライアント３０がセグメントストリームのファイルを取得するために必要な、セグメントストリームのファイルの供給元を表すアドレスなどが記述されたMPDを生成する。また、DASH MPDサーバ２３は、WEBサーバとして、DASHクライアント３０からの要求（HTTPリクエスト）に応じ、生成したMPDをCDN１２を介して要求元のDASHクライアント３０にHTTPユニキャスト配信する。
【００１３】
DASHクライアント３０は、DASH MPDサーバ２３に対してMPDを要求し、これに応じてHTTPユニキャスト配信されたMPDを受信する。さらに、DASHクライアント３０は、受信したMPDに基づき、DASHセグメントストリーマ２２にセグメントストリームのファイルを要求し、これに応じてHTTPユニキャスト配信されるセグメントストリームのファイルを受信、再生する。
【００１４】
なお、CDN１２には、CND１２を介してHTTPユニキャスト配信されるMPDやセグメントストリームのファイルをキャッシングするプロキシサーバ１３が設けられている。プロキシサーバ１３は、WEBサーバとしてのDASH MPDサーバ２３またはDASHセグメントストリーマ２２に代わり、HTTPリクエストを送信したDASHクライアント３０に対してキャッシングしているMPDまたはセグメントストリームのファイルを要求元にHTTPユニキャスト配信する。
【先行技術文献】
【非特許文献】
【００１５】
【非特許文献１】「既存のWebサーバーで途切れない動画配信を実現」、平林光浩、NIKKEI ELECTRONICS 2012.3.19
【発明の概要】
【発明が解決しようとする課題】
【００１６】
上述したように、CDN１２上にプロキシサーバ１３を設けることにより、DASHクライアント３０からの要求に対する応答性能を高めることができる。
【００１７】
ただし、プロキシサーバ１３がWEBサーバとしてのDASH MPDサーバ２３またはDASHセグメントストリーマ２２に代わってMPDやセグメントストリームを配信できるのは、それを既にキャッシングしている場合に限られる。すなわち、他のDASHクライアント３０が要求し、それ応じて配信されたものはキャッシングされていて速やかに対応できるが、キャッシングされていないものが要求された場合には、それに応じることができなかった。
【００１８】
本開示はこのような状況に鑑みてなされたものであり、プロキシサーバによるキャッシングを最適化することにより、受信側からの要求に対する応答性能を上げられるようにするものである。
【課題を解決するための手段】
【００１９】
本開示の第１の側面であるプロキシサーバ装置は、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、前記解析部の解析結果を蓄積するデータベース部とを備える。
【００２０】
前記モニタリング部は、さらに、前記コンテンツ供給装置に対して前記端末装置が前記メタファイルに基づいて送信した、前記コンテンツのストリームの取得要求をモニタリングすることができ、前記解析部は、さらに、モニタリングされた前記ストリームの前記取得要求を解析することができる。
【００２１】
本開示の第１の側面であるプロキシサーバ装置は、蓄積された前記解析結果に基づく優先度に従い、前記ネットワークを介して配信された前記メタファイルまたは前記ストリームの少なくとも一方をキャッシングするキャッシング部をさらに備えることができる。
【００２２】
前記キャッシング部は、前記端末装置からの要求に応じ、前記キャッシングの方針を登録または登録削除することができる。
【００２３】
本開示の第１の側面である情報処理方法は、プロキシサーバ装置の情報処理方法において、前記プロキシサーバ装置による、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリングステップと、モニタリングされた前記メタファイルの前記取得要求を解析し、その解析結果を蓄積する解析ステップとを含む。
【００２４】
本開示の第１の側面であるプログラムは、コンピュータを、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、前記解析部の解析結果を蓄積するデータベース部として機能させる。
【００２５】
本開示の第１の側面においては、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求がモニタリングされ、モニタリングされた前記メタファイルの前記取得要求が解析されて、その解析結果が蓄積される。
【００２６】
本開示の第２の側面である端末装置は、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求を送信し、前記メタファイルの前記取得要求に応じて前記コンテンツ供給装置から配信された前記メタファイルを受信し、前記メタファイルに基づいて前記コンテンツ供給装置に前記コンテンツのストリームの取得要求を送信し、前記ストリームの前記取得要求に応じて前記コンテンツ供給装置から配信された前記ストリームを受信、再生する受信再生部と、前記コンテンツ供給装置の動作を代行するプロキシサーバ装置に対して、前記メタファイルまたは前記ストリームの少なくとも一方のキャッシングの方針の登録を要求する登録部とを備え、前記プロキシサーバ装置は、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、前記解析部の解析結果を蓄積するデータベース部とを備える。
【００２７】
前記登録部は、さらに、前記コンテンツ供給装置の動作を代行するプロキシサーバ装置に対して、前記キャッシングの方針の登録削除を要求することができる。
【００２８】
本開示の第２の側面である端末装置は、自身にとって最適なプロキシサーバに接続するための設定を行なうスクリプトをポータルサーバに要求し、前記ポータルサーバから提供された前記スクリプトを実行することによって前記設定を行なうスクリプト要求部をさらに備えることができる。
【００２９】
本開示の第２の側面においては、コンテンツ供給装置の動作を代行するプロキシサーバ装置に対して、メタファイルまたはストリームの少なくとも一方のキャッシングの方針の登録が要求される。
【００３０】
本開示の第３の側面であるコンテンツ供給システムは、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置と、前記コンテンツのストリームを受信、再生する端末装置と、前記コンテンツ供給装置と前記端末装置との間に設けられたプロキシサーバ装置とから成るコンテンツ供給システムおいて、前記プロキシサーバ装置が、前記コンテンツ供給装置に対して前記端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、前記解析部の解析結果を蓄積するデータベース部とを備え、前記端末装置が、前記コンテンツ供給装置に対して前記メタファイルの前記取得要求を送信し、前記メタファイルの前記取得要求に応じて前記コンテンツ供給装置から配信された前記メタファイルを受信し、前記メタファイルに基づいて前記コンテンツ供給装置に前記コンテンツのストリームの前記取得要求を送信し、前記ストリームの前記取得要求に応じて前記コンテンツ供給装置から配信された前記ストリームを受信、再生する受信再生部と、前記コンテンツ供給装置の動作を代行する前記プロキシサーバ装置に対して、前記メタファイルまたは前記ストリームの少なくとも一方のキャッシングの方針の登録を要求する登録部とを備える。
【００３１】
本開示の第３の側面においては、プロキシサーバ装置により、適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求がモニタリングされ、モニタリングされた前記メタファイルの前記取得要求が解析されて、その解析結果が蓄積される。また、端末装置により、コンテンツ供給装置の動作を代行するプロキシサーバ装置に対して、メタファイルまたはストリームの少なくとも一方のキャッシングの方針の登録が要求される。
【発明の効果】
【００３２】
本開示の第１の側面によれば、キャッシングを最適化することができ、受信側からの要求に対する応答性能を上げることができる。
【００３３】
本開示の第２の側面によれば、プロキシサーバによるキャッシングを最適化することができる。
【００３４】
本開示の第３の側面によれば、受信側に対して速やかにストリームを配信することができる。
【図面の簡単な説明】
【００３５】
【図１】従来のコンテンツ供給システムの構成の一例を示すブロック図である。
【図２】本開示を適用したコンテンツ供給システムの構成例を示すブロック図である。
【図３】最適化プロキシサーバの構成例を示すブロック図である。
【図４】コンテンツ供給装置の処理を説明するフローチャートである。
【図５】コンテンツ供給システムによる要求解析処理を説明するフローチャートである。
【図６】コンテンツ供給システムによるマルチキャストプリキャッシュ処理を説明するフローチャートである。
【図７】コンテンツ供給システムによるユニキャストプリキャッシュ処理を説明するフローチャートである。
【図８】コンテンツ供給システムによるスクリプト提供処理を説明するフローチャートである。
【図９】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００３６】
以下、本開示を実施するための最良の形態（以下、実施の形態と称する）について説明する。
【００３７】
＜コンテンツ供給システムの構成例＞
図６は、本開示の実施の形態であるコンテンツ供給システムの構成例を示している。
【００３８】
このコンテンツ供給システム５０は、複数のコンテンツ供給装置６０−１乃至６０−Ｋ、ネットワーク７１上に構築されたCDN７２、および多数の端末装置８０−１乃至８０−Ｎから構成される。コンテンツ供給装置６０−１乃至６０−Ｋと端末装置８０−１乃至８０−Ｎは、ネットワーク７１に接続されている。
【００３９】
以下、コンテンツ供給装置６０−１乃至６０−Ｋを個々に区別する必要がない場合、単にコンテンツ供給装置６０と称する。端末装置８０−１乃至８０−Ｎについても同様とする。
【００４０】
コンテンツ供給装置６０は、チャネルストリーマ６１、DASHセグメンタ６２、FLUTEストリーマ６３、MPDジェネレータ６４、WEBサーバ６５、およびマルチキャストサーバ６６を備える。
【００４１】
なお、コンテンツ供給装置６０が有するチャネルストリーマ６１乃至マルチキャストサーバ６６は、集積して配置してもよいし、インターネットなどを介して分散して配置してもよい。
【００４２】
チャネルストリーマ６１は、端末装置８０に配信するためのコンテンツのソースデータを管理しており、同一内容の該ソースデータからビットレートの異なる複数のストリーミングデータを生成する。さらに、チャネルストリーマ６１は、生成したストリーミングデータをDASHセグメンタ６２に出力する。
【００４３】
DASHセグメンタ６２は、ストリーミングデータを時間的にピリオドに区切り、さらにセグメント(segment)に分割することにより、fragmentedMP4などのセグメントストリームを生成してWEBサーバ６５およびFLUTEストリーマ６３に出力する。さらに、DASHセグメンタ６２は、生成したセグメントストリームのファイルの供給元となるWEBサーバ６５のアドレス情報などを含むメタデータをMPDジェネレータ６４に通知する。
【００４４】
MPDジェネレータ６４は、端末装置８０がセグメントストリームを受信するために必要なMPDを生成してFLUTEストリーマ６３およびWEBサーバ６５に出力する。
【００４５】
FLUTEストリーマ６３は、DASHセグメンタ６２から入力されるセグメントストリームをFLUTEパケットに格納することによりFLUTEストリームを生成してマルチキャストサーバ６６に出力する。また、FLUTEストリーマ６３は、MPDジェネレータ６４から入力されるMPDをマルチキャストサーバ６６に出力する。
【００４６】
WEBサーバ６５は、端末装置８０からのMPD取得要求（HTTPリクエスト）に応じ、MPDジェネレータ６４から入力されるMPDを、CDN７２を介して要求元の端末装置８０にHTTPユニキャスト配信する。また、WEBサーバ６５は、端末装置８０からのセグメントストリーム取得要求（HTTPリクエスト）に応じ、DASHセグメンタ６２から入力されるセグメントストリームのファイルを、CDN７２を介して要求元の端末装置８０にHTTPユニキャスト配信する。
【００４７】
マルチキャストサーバ６６は、FLUTEストリーマ６３からのMPDを、CDN７２を介してFLUTEマルチキャスト配信する。また、マルチキャストサーバ６６は、FLUTEストリーマ６３からのFLUTEストリームを、CDN７２を介してFLUTEマルチキャスト配信する。なお、FLUTEマルチキャスト配信のポータルチャネルの周知には、例えば、(e)MBMSのUSD、OMA-ESGなどが利用される。
【００４８】
ネットワーク７１は、インターネットに代表される双方向通信網、地上波放送網や衛星波放送網などの片方向通信網、双方向通信を行なうインタラクションチャネルと片方向通信を行なうブロードキャスト・マルチキャストチャネルを有する(e)MBMSなどの携帯電話通信網などを包含する。
【００４９】
ネットワーク７１上には、CDN７２が構築されている。CDN７２には、複数の最適化プロキシサーバ７３、MPDポータルサーバ７４、およびスクリプトサーバ７５が設けられている。さらに図示は省略するが、CDN７２には従来のプロキシサーバ１３が存在してもよい。
【００５０】
最適化プロキシサーバ７３は、端末装置８０からのMPD取得要求およびセグメントストリーム取得要求をモニタリングして解析することにより、自身に接続している端末装置８０の受信能力、デコード能力、ユーザの嗜好、状態などを類推し、それらを統計情報としてデータベース化する（要求解析処理として後述する）。
【００５１】
また、最適化プロキシサーバ７３は、CDN７２を介してマルチキャスト配信されるMPDおよびFLUTEストリームの内容が記述されたメタデータ（OMA-ESGなど）を監視し、自身のデータベースと照合することにより、優先度が高いもの（自身に接続している端末装置８０から、以降に取得要求が送信される可能性が高いもの）であるか否かを判断する。そして、優先度が高いMPDやFLUTEストリームをキャッシングする（マルチキャストプリキャッシュ処理として後述する）。
【００５２】
また、最適化プロキシサーバ７３は、CDN７２を介してユニキャスト配信されるMPDおよびセグメントストリームを監視し、自身のデータベースと照合することにより、優先度が高いものであるか否かを判断する。そして、優先度が高いMPDやセグメントストリームをキャッシングする（ユニキャストプリキャッシュ処理として後述する）。
【００５３】
さらに、最適化プロキシサーバ７３は、MPDポータルサーバ７４から優先度が高いMPDとセグメントストリームを検索、特定し、特定したMPDとセグメントストリームをコンテンツ供給装置６０に要求し、それに応じてHTTPユニキャスト配信されたものをキャッシングすることもできる。
【００５４】
またさらに、最適化プロキシサーバ７３は、マルチキャストプリキャッシュ処理とユニキャストプリキャッシュ処理の方針を、端末装置８０からの制御に基づいて登録、登録解除する（プリキャッシュ方針登録処理として後述する）。
【００５５】
MPDポータルサーバ７４は、多数存在するコンテンツ供給装置６０にアクセスし、所定の条件を満たすMPDやセグメントストリームを検索する。
【００５６】
スクリプトサーバ７５は、端末装置８０からの要求に応じ、該端末装置８０にとって最適な（例えば、最も近傍に位置するとか、端末装置８０がマルチキャスト配信を受信できない場合にそれを有していない受信できるとか）最適化プロキシサーバ７３に対して優先的に接続するためのスクリプトを提供する（スクリプト提供処理）。
【００５７】
端末装置８０は、受信再生部８１、登録部８２、およびスクリプト要求部８３を備える。受信再生部８１は、MPDを取得し、MPDに基づいてセグメントストリームやFLUTEストリームを受信、再生する。登録部８２は、最適化プロキシサーバ７３におけるプロキャッシュ処理のプリキャッシュ方針を登録または登録解除する処理を実行する。スクリプト要求部８３は、スクリプトサーバ７５に対し、自身にとって最適な（例えば、最も近傍に位置する、自身が受信できない放送網を受信できるなど）最適化プロキシサーバ７３に自動的に接続するためのスクリプトを要求する。
【００５８】
＜最適化プロキシサーバ７３の詳細な構成例＞
次に、図３は、最適化プロキシサーバ７３の詳細な構成例を示している。
【００５９】
最適化プロキシサーバ７３は、モニタリング代行部９１、保持部９２、解析部９３、解析結果データベース９４、およびチューナ部９５を備える。
【００６０】
モニタリング代行部９１は、端末装置８０からのMPD取得要求およびセグメントストリーム取得要求をモニタリングし、要求されていているMPDやセグメントストリームが保持部９２にキャッシングされている場合、それを保持部９２から読み出して要求元にユニキャスト配信する。また、モニタリング代行部９１は、モニタリングしたMPD取得要求およびセグメントストリーム取得要求を解析部９３に出力する。さらに、モニタリング代行部９１は、HTTPユニキャスト配信されるMPDおよびセグメントストリームをモニタリングして解析部９３に出力する。
【００６１】
保持部９２は、解析部９３から入力される、優先度が高いと判断されたMPDやセグメントストリームを保持（キャッシング）する。また、保持部９２は、プリキャシュ部９５から入力される、優先度が高いと判断されたMPDやFLUTEストリームを保持する。
【００６２】
解析部９３は、モニタリングされたMPD取得要求およびセグメントストリーム取得要求を解析する。具体的には、MPDのurl名、MPD/@profileに記載されているプロファイル情報、セグメントサイズの最大値(segmentBase/@durationまたは@maxSegmentDuration,@maxSubSegmentDurationの値)、ProgramInformationにて参照されるコンテンツの内容を記述するメタデータの内容(特にコンテンツのタイトル、概要、ジャンル等についても処理負荷の許す限り検索解析して嗜好情報として集積する)、Roleにより参照されるスキーマやAccessibilityにより参照されるアクセシビリティスキーマの内容(例えば、音声解説を含むストリームのセグメント取得要求があることがモニタリングされた場合には端末装置８０のユーザの音声ストリームの嗜好、障害度合い等が類推できる)、@langに記載される言語の種類、Ratingにて参照されるレーティングの情報、@bandwidthの分布、@widthと@heightの組により表現される縦横画素数の情報、@audioSamplingRateに記載されるサンプリングレートの情報、@codecに記載されるコーデックの種類、audioChannelConfigurationにより参照される音声チャンネル構成情報、contentProtectionにより参照されるDRMの種類等を読み出し、これらの内容をその取得要求頻度にからめた統計情報として解析結果データベース９４に保持させる。
【００６３】
さらに、解析部９３は、モニタリング代行部９１から入力される、HTTPユニキャスト配信からモニタリングされたMPDおよびセグメントストリームの優先度を判断し、優先度が高いものは保持部９２に保持させる。また、解析部９３は、チューナ部９５から入力される、FLUTEマルチキャスト配信されたMPDおよびFLUTEストリームの優先度を判断し、優先度が高いものは保持部９２に保持させる。
【００６４】
解析結果データベース９４は、解析部９３から入力される解析結果の時計情報を保持する。
【００６５】
チューナ部９５は、FLUTEマルチキャスト配信されるMPDやFLUTEストリームとそのメタデータを受信して解析部９３に出力する。
【００６６】
＜コンテンツ供給システム５０の動作＞
次に、コンテンツ供給システム５０の動作について説明する。
【００６７】
＜コンテンツ配信処理の説明＞
図４は、コンテンツ供給装置６０によるコンテンツ配信処理を説明するフローチャートである。
【００６８】
ステップＳ１において、チャネルストリーマ６１は、コンテンツのソースデータからビットレートの異なる複数のストリーミングデータを生成し、DASHセグメンタ６２およびWEBサーバ６５に出力する。
【００６９】
ステップＳ２において、DASHセグメンタ６２は、ストリーミングデータからfragmentedMP4などのセグメントストリームを生成してFLUTEストリーマ６３およびWEBサーバ６５に出力する。また、DASHセグメンタ６２は、生成したセグメントストリームの供給元のURLなどをMPDジェネレータ６４に通知する。
【００７０】
ステップＳ３において、FLUTEストリーマ６３は、セグメントストリームをFLUTEパケットに格納することによりFLUTEストリームを生成してマルチキャストサーバ６６に出力する。ステップＳ４において、MPDジェネレータ６４は、MPDを生成してFLUTEストリーマ６３およびWEBサーバ６５に出力する。
【００７１】
ステップＳ５において、FLUTEストリーマ６３は、MPDをマルチキャストサーバ６６に出力する。マルチキャストサーバ６６は、MPDをCDN７２を介してFLUTEマルチキャスト配信する。
【００７２】
ステップＳ６において、WEBサーバ６５は、端末装置８０からMPD取得要求（HTTPリクエスト）があった場合、それに応じてMPDをCDN７２を介して要求元にHTTPユニキャスト配信する。
【００７３】
ステップＳ７において、マルチキャストサーバ６６は、FLUTEストリームをCDN７２を介してFLUTEマルチキャスト配信する。ステップＳ８において、WEBサーバ６５は、端末装置８０からセグメントストリーム取得要求（HTTPリクエスト）があった場合、それに応じてセグメントストリームをCDN７２を介して要求元にHTTPユニキャスト配信する。以上で、コンテンツ供給装置６０によるコンテンツ供給処理の説明を終了する。
【００７４】
＜要求解析処理の説明＞
次に、図５は、最適化プロキシサーバ７３による要求解析処理を説明するフローチャートである。
【００７５】
ステップＳ１１として、端末装置８０がMPD取得要求をCDN８２を介してWEBサーバ６５に送信すると、ステップＳ２１において、最適化プロキシサーバ７３のモニタリング代行部９１は、該MPD取得要求をモニタリングして解析部９３に出力する。ステップＳ２２において、解析部９３は、該MPD取得要求を解析し、その結果を解析結果データベース９４に記録させる。
【００７６】
なお、ステップＳ２１でモニタリングしたMPD取得要求に対応するMPDを保持部９２が既にキャッシングしている場合には、モニタリング代行部９１は該MPDを保持部９２から読み出して要求元にHTTTPユニキャスト配信する。図５は該MPDがキャッシングされていなかった場合の例であり、この場合、上述したコンテンツ供給処理のステップＳ６として、WEBサーバ６５がMPD取得要求に対応するMPDを、CDN７２を介して要求元にHTTPユニキャスト配信する。
【００７７】
HTTPユニキャスト配信されたMPDは、ステップＳ１２として端末装置８０により受信される。ステップＳ１３として、端末装置８０がMPDに基づいてセグメントストリーム取得要求をCDN８２を介してWEBサーバ６５に送信すると、ステップＳ２３において、モニタリング代行部９１は、該セグメントストリーム取得要求をモニタリングして解析部９３に出力する。ステップＳ２４において、解析部９３は、該セグメントストリーム取得要求を解析し、その結果を解析結果データベース９４に記録させる。
【００７８】
なお、ステップＳ２３でモニタリングしたセグメントストリーム取得要求に対応するセグメントストリームを保持部９２が既にキャッシングしている場合には、モニタリング代行部９１は該セグメントストリームを保持部９２から読み出して要求元にHTTTPユニキャスト配信する。図５は該セグメントストリームがキャッシングされていなかった場合の例であり、この場合、上述したコンテンツ供給処理のステップＳ８として、WEBサーバ６５がセグメントストリーム取得要求に対応するセグメントストリームを、CDN７２を介して要求元にHTTPユニキャスト配信する。
【００７９】
HTTPユニキャスト配信されたセグメントストリームは、ステップＳ１４として端末装置８０により受信、再生される。以上で、要求解析処理は終了される。
【００８０】
以上に説明した要求解析処理により、最適化プロキシサーバ７３の解析結果データベース９４に、端末装置８０の受信能力、デコード能力、ユーザの嗜好、状態などに関する統計情報を蓄積することができる。
【００８１】
＜マルチキャストプリキャッシュ処理の説明＞
次に、図６は、最適化プロキシサーバ７３によるマルチキャストプリキャッシュ処理を説明するフローチャートである。
【００８２】
上述したコンテンツ供給処理のステップＳ５として、コンテンツ供給装置６０のマルチキャストサーバ６６がMPDをFLUTEマルチキャスト配信すると、ステップＳ３１において、最適化プロキシサーバ７３のチューナ部９５は該MPDを受信して解析部９３に出力する。解析部９３は、解析結果データベース９４を参照して、該MPDが優先度の高いものである場合には保持部９２にキャッシングさせる。
【００８３】
同様に、上述したコンテンツ供給処理のステップＳ７として、コンテンツ供給装置６０のマルチキャストサーバ６６がFLUTEストリームをFLUTEマルチキャスト配信すると、ステップＳ３２において、チューナ部９５は該FLUTEストリームを受信して解析部９３に出力する。解析部９３は、解析結果データベース９４を参照して、該FLUTEストリームが優先度の高いものである場合には保持部９２にキャッシングさせる。以上で、マルチキャストプリキャッシュ処理は終了される。
【００８４】
以上に説明したマルチキャストプリキャッシュ処理により、優先度が高いMPDやFLUTEストリームを保持部９２にキャッシングしておくことができる。なお、キャッシュシングしているMPDやFLUTEストリームを端末装置８０に供給する場合にはユニキャスト配信するようにする。したがって、例えば、端末装置８０がFLUTEストリームを受信する機能を有していない場合であっても、これらを端末装置８０に供給することができる。
【００８５】
＜ユニキャストプリキャッシュ処理の説明＞
次に、図７は、最適化プロキシサーバ７３によるユニキャストプリキャッシュ処理を説明するフローチャートである。
【００８６】
ステップＳ４１として、端末装置８０がMPD取得要求を送信すると、上述したコンテンツ供給処理のステップＳ６として、WEBサーバ６５がMPD取得要求に対応するMPDをHTTPユニキャスト配信し、ステップＳ４２として端末装置８０がHTTPユニキャスト配信されたMPDを受信する。
【００８７】
ステップＳ５１として、最適化プロキシサーバ７３のモニタリング代行部９１は、このHTTPユニキャスト配信されたMPDをモニタリングして解析部９３に出力する。解析部９３は、HTTPユニキャスト配信されたMPDの優先度を判断し、優先度が高いものは保持部９２に保持させる。なお、端末装置８０が送信したMPD取得要求については、要求解析処理として上述したように、モニタリングされて解析され、その結果が解析結果データベース９４に蓄積される。
【００８８】
ステップＳ４３として、端末装置８０が受信したMPDに基づいてセグメントストリーム取得要求を送信すると、上述したコンテンツ供給処理のステップＳ８として、WEBサーバ６５がセグメントストリーム取得要求に対応するセグメントストリームをHTTPユニキャスト配信し、ステップＳ４２として端末装置８０がHTTPユニキャスト配信されたセグメントストリームを受信、再生する。
【００８９】
ステップＳ５２として、最適化プロキシサーバ７３のモニタリング代行部９１は、このHTTPユニキャスト配信されたセグメントストリームをモニタリングして解析部９３に出力する。解析部９３は、HTTPユニキャスト配信されたセグメントストリームの優先度を判断し、優先度が高いものは保持部９２に保持させる。なお、端末装置８０が送信したセグメントストリーム取得要求については、要求解析処理として上述したように、モニタリングされて解析され、その結果が解析結果データベース９４に蓄積される。
【００９０】
以上に説明したユニキャストプリキャッシュ処理により、優先度が高いMPDやセグメントストリームを保持部９２にキャッシングしておくことができる。したがって、これらが端末装置８０から要求された場合、WEBサーバ６５がユニキャスト配信するよりも速やかに要求元に配信することができる。
【００９１】
＜スクリプト提供処理の説明＞
次に、図８はスクリプト提供処理を説明するフローチャートである。
【００９２】
ステップＳ６１において、端末装置８０のスクリプト要求部８３は、自身にとって最適な最適化プロキシサーバ７３に優先的に接続できる設定を行なうPAC（Proxy Auto-Config）スクリプトの要求をWPAD(Web Proxy Auto-Discovery Protocol)などを用いてCDN７２に送信すると、この要求はスクリプトサーバ７５によって受信される。
【００９３】
ステップＳ７１において、スクリプトサーバ７５は、PACスクリプト要求を送信した端末装置８０にとって最適な最適化プロキシサーバ７３を特定し、端末装置８０にて該最適化プロキシサーバ７３に接続する設定を行なうスクリプトを要求元に提供する。
【００９４】
ステップＳ７２において、端末装置８０のスクリプト要求部８３は、提供されたスクリプトを実行する。これにより、端末装置８０にとって最適な最適化プロキシサーバ７３に優先的に接続できる設定が行なわれる。以上で、スクリプト提供処理は終了される。
【００９５】
以上に説明したスクリプト要求処理によれば、端末装置８０は、CDN７２に複数存在する最適化プロキシサーバ７３のうち、自身にとって最適なものに優先的に接続できる設定を自動的の行なうことができる。
【００９６】
＜プリキャッシュ方針登録処理の説明＞
次に、端末装置８０側からの制御により、プリキャッシュの方針を登録または登録解除する処理について説明する。
【００９７】
プリキャッシュ方針を登録する場合、最適化プロキシサーバ７３が提要するAPI(Application Program Interface)を利用し、端末装置８０の登録部８２が、最適化プロキシサーバ７３にてプリキャッシュ方針の登録を制御するサーバサイドスクリプトに例えば以下のようなAPIを指定する。
http://dashProxy.a.com/precacheManager/subscribe?codec=”urn:b.com:codecType:avc”&rating=”urn: c.com:ratingLevel:PG-13”&priority=1
【００９８】
上記APIにおけるhttp://dashProxy.a.com/precacheManager/subscribeは、最適化プロキシサーバ７３におけるサーバサイドスクリプトのアドレスを示している。後続の"urn:b.com:codecType:avc”&rating=”urn: c.com:ratingLevel:PG-13”&priority=1はサーバサイドスクリプトに引き渡されるAPIパラメタである。
【００９９】
上述したAPIパラメタの例は、プリキャッシュの対象とするMPDに記載（またはMPDから参照されるストリームのメタデータに記述）されるcodecの種類がコーデック辞書項目uriである”urn:a.com:codecType:avc”で指定されるコーデックであり、且つ、ratingの種類がレーティング辞書項目uriである”urn: c.com:ratingLevel:PG-13”で指定されるレーティングレベルであり、これら２つの条件を満たすストリームについて記述するMPDのプリキャッシュ優先度をpriority=1(小さい数ほど優先度が高いものとする)に指定するものである。
【０１００】
以下は、最適化プロキシサーバ７３にて統計情報の追加を制御するサーバサイドスクリプトに対して指定されるAPIの他の例である。
http://dashProxy.a.com/precacheManager/subscribe?genre=”urn:b.com:genre:sports” &priority=2
【０１０１】
上記APIにおけるAPIパラメータは、プリキャッシュの対象とするMPDに記載（またはMPDから参照されるストリームのメタデータに記述）されるジャンルの種類がジャンル辞書項目uriである”urn:b.com:genre:sports”で指定されるジャンルであり、プリキャッシュ優先度をpriority=2に指定するものである。
【０１０２】
プリキャッシュ方針を登録解除する場合、最適化プロキシサーバ７３が提要するAPIを利用し、端末装置８０の登録部８２が、最適化プロキシサーバ７３にてプリキャッシュ方針の削除を制御するサーバサイドスクリプトに例えば以下のようなAPIを指定する。
http://dashProxy.a.com/precacheManager/unsubscribe?genre=”urn:b.com:genre:sports”
【０１０３】
上記APIにおけるAPIパラメータは、ジャンルの種類がジャンル辞書項目uriである”urn:b.com:genre:sports”で指定されるジャンルが記述されているMPDをプリキャッシュの候補から登録解除するものである。
【０１０４】
以上説明したプリキャッシュ方針登録または登録解除処理によれば、解析結果データベース９４に蓄積されている統計情報だけでなく、端末装置８０側からの直接的な制御により、プリキャッシュの方針を登録したり登録解除したりすることができる。なお、解析結果データベース９４の統計情報に基づく優先度と、端末装置８０側からの直接的な制御により登録された優先度のいずれをプリキャッシュ処理の最終的な優先度とするかは、データベースコンフィギュレーションパラメタ(あるいはそれを設定するAPI)等により定義できる。
【０１０５】
以上のように、本実施の形態においては、CDN７２に最適化プロキシサーバ７３を設けたことにより、端末装置８０からの要求に対する応答性能を高めることができる。
【０１０６】
ところで、上述した一連の処理を実行するコンテンツ供給装置６０、および端末装置８０は、それぞれをハードウェアにより構成する他、コンピュータがソフトウェアを実行することにより実現することもできる。このコンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０１０７】
図９は、上述したコンピュータのハードウェアの構成例を示すブロック図である。
【０１０８】
このコンピュータ２００において、CPU（Central Processing Unit）２０１，ROM（Read Only Memory）２０２，RAM（Random Access Memory）２０３は、バス２０４により相互に接続されている。
【０１０９】
バス２０４には、さらに、入出力インタフェース２０５が接続されている。入出力インタフェース２０５には、入力部２０６、出力部２０７、記憶部２０８、通信部２０９、およびドライブ２１０が接続されている。
【０１１０】
入力部２０６は、キーボード、マウス、マイクロフォンなどよりなる。出力部２０７は、ディスプレイ、スピーカなどよりなる。記憶部２０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部２０９は、ネットワークインタフェースなどよりなる。ドライブ２１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア２１１を駆動する。
【０１１１】
以上のように構成されるコンピュータ２００では、CPU２０１が、例えば、記憶部２０８に記憶されているプログラムを、入出力インタフェース２０５およびバス２０４を介して、RAM２０３にロードして実行することにより、上述した一連の処理が行われる。
【０１１２】
コンピュータ２００（CPU２０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア２１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０１１３】
コンピュータ２００では、プログラムは、リムーバブルメディア２１１をドライブ２１０に装着することにより、入出力インタフェース２０５を介して、記憶部２０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部２０９で受信し、記憶部２０８にインストールすることができる。その他、プログラムは、ROM２０２や記憶部２０８に、あらかじめインストールしておくことができる。
【０１１４】
なお、コンピュータ２００が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであってもよいし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
【０１１５】
本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【０１１６】
本開示は以下のような構成もとることができる。
（１）
適応的ストリーミング技術に従い、コンテンツをネットワークを介して配信するコンテンツ供給装置に対して端末装置が送信した、前記端末装置が前記コンテンツのストリームを受信するために必要な情報が記述されているメタファイルの取得要求をモニタリングするモニタリング部と、
モニタリングされた前記メタファイルの前記取得要求を解析する解析部と、
前記解析部の解析結果を蓄積するデータベース部と
を備えるプロキシサーバ装置。
（２）
前記モニタリング部は、さらに、前記コンテンツ供給装置に対して前記端末装置が前記メタファイルに基づいて送信した、前記コンテンツのストリームの取得要求をモニタリングし、
前記解析部は、さらに、モニタリングされた前記ストリームの前記取得要求を解析する
前記（１）に記載のプロキシサーバ装置。
（３）
蓄積された前記解析結果に基づく優先度に従い、前記ネットワークを介して配信された前記メタファイルまたは前記ストリームの少なくとも一方をキャッシングするキャッシング部を
さらに備える前記（１）または（２）に記載のプロキシサーバ装置。
（４）
前記キャッシング部は、前記端末装置からの要求に応じ、前記キャッシングの方針を登録または登録削除する
前記（３）に記載のプロキシサーバ装置。
【符号の説明】
【０１１７】
５０  コンテンツ供給システム，  ６０  コンテンツ供給装置，  ６１  チャネルストリーマ，  ６２  DASHセグメンタ，  ６３  FLUTEストリーマ，  ６４  MPDジェネータ，  ６５  WEBサーバ，  ６６  マルチキャストサーバ，  ７１  ネットワーク，  ７２  CDN，  ７３  最適化プロキシサーバ，  ７４  MPDポータブルサーバ，  ７５  スクリプトサーバ，  ８０  端末装置，  ８１  受信再生部，  ８２  登録部，  ８３  スクリプト要求部，  ２００  コンピュータ，  ２０１  CPU
【図１】
2015043486.tif 000003
【図２】
2015043486.tif 000004
【図３】
2015043486.tif 000005
【図４】
2015043486.tif 000006
【図５】
2015043486.tif 000007
【図６】
2015043486.tif 000008
【図７】
2015043486.tif 000009
【図８】
2015043486.tif 000010
【図９】
2015043486.tif 000011