(57)【要約】【課題】データ取得要求側の制御を必要とせず、データの低遅延を達成することのできるデータ蓄積装置を得る。【解決手段】データ蓄積手段１１は、データ取得装置２０からのデータ取得要求に対して、該当するデータを提供し、また、蓄積しているデータの情報を内部用蓄積データ情報として蓄積データ情報提供手段１２に送る。蓄積データ情報提供手段１２は、データ蓄積手段１１が実際に蓄積している最新のデータよりも、まだ流入していない新しいデータを蓄積しているとした公開用蓄積データ情報をデータ取得装置２０に送出する。データ蓄積手段１１は、流入していない新しいデータに対するデータ取得要求を受けた場合は、一時的に応じられない旨の応答を送出する。【選択図】図１
2013210803.tif 000002
【特許請求の範囲】
【請求項１】
継続的に流入するデータを一時的に保持し、データ取得要求に応じて前記保持したデータを提供するデータ蓄積装置において、
前記流入するデータを蓄積し、前記データ取得要求に対して、該当するデータを提供すると共に、蓄積しているデータの情報を内部用蓄積データ情報として送出するデータ蓄積手段と、
前記内部用蓄積データ情報が示す実際に蓄積している最新のデータよりも、まだ流入していない新しいデータを蓄積しているとした公開用蓄積データ情報を前記データ取得要求元に対して送出する蓄積データ情報提供手段とを備え、
前記データ蓄積手段は、前記流入していない新しいデータに対するデータ取得要求を受けた場合は、一時的に応じられない旨の応答を送出することを特徴とするデータ蓄積装置。
【請求項２】
データ蓄積手段が受けるデータ取得要求がＨＴＴＰ要求で、当該ＨＴＴＰ要求に対する応答がＨＴＴＰ応答であり、かつ、公開用蓄積データ情報がHTTP Live Streamingプレイリストであることを特徴とする請求項１記載のデータ蓄積装置。
【請求項３】
一時的に応じられない旨の応答が、ステータスコードを503 Service UnavailableとしたＨＴＴＰ応答であることを特徴とする請求項２記載のデータ蓄積装置。
【請求項４】
継続的に流入するデータを一時的に保持し、データ取得要求に応じて前記保持したデータを提供するデータ蓄積装置としてコンピュータを機能させるデータ蓄積プログラムであって、
前記流入するデータを蓄積し、前記データ取得要求に対して、該当するデータを提供すると共に、蓄積しているデータの情報を内部用蓄積データ情報として送出するデータ蓄積手段と、
前記内部用蓄積データ情報が示す実際に蓄積している最新のデータよりも、まだ流入していない新しいデータを蓄積しているとした公開用蓄積データ情報を前記データ取得要求元に対して送出する蓄積データ情報提供手段として機能させると共に、
前記データ蓄積手段が、前記流入していない新しいデータに対するデータ取得要求を受けた場合は、一時的に応じられない旨の応答を送出するよう機能させることを特徴とするデータ蓄積プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部からの継続的なデータの流入があり、内部に備えたバッファにそのデータを一時的に蓄積した上で、他に蓄積データ情報を提供し、また他からの求めに応じてデータを提供するデータ蓄積装置及びそのプログラムに関する。
【背景技術】
【０００２】
データ蓄積装置にデータを要求する装置としては、提供された蓄積データ情報を基に判断してデータを要求し、取得したデータをなんらかの形で使用する装置を想定する。この装置をデータ取得装置と呼ぶことにする。データ取得装置は、データ蓄積装置の制御下になく、自身の判断でデータ蓄積装置にデータ要求を行う。ここで、データ蓄積装置とデータ取得装置を別装置としたが、これら装置が同一機器上に備わっていても、別の機器に備わっており通信回線によって接続されていてもよい。この構成は、データの入出力があるバッファ管理、そのバッファにアクセスするために用意されるインタフェース、そのインタフェースからデータを取得して使用するアプリケーションの一連の構成としては、一般的であり、バッファ管理部分がデータ蓄積装置に、アプリケーション部分がデータ取得装置に当たる。
【０００３】
従来、このような装置として、バッファにダミーデータを記憶させ、バッファからの読出しレートを維持するようにしたものがあった（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１３５８３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、データ取得装置の動作はデータ蓄積装置の制御下にないので、データ取得装置によるデータ要求のタイミングや一度に要求するデータ量などを制御することができない。この場合、データ蓄積装置へのデータ流入からデータ取得装置でのデータの使用までの時間（遅延）をデータ蓄積装置が制御することはできないため、データ蓄積装置が意図しない大きな遅延がデータ取得装置によって挿入される可能性がある。ストリーミングサービスにおいてこのことは典型的に起こる。
【０００６】
例えば、データ蓄積装置が映像データ受信バッファ装置であり、データ取得装置が映像表示装置である場合、映像表示装置は、通常再生時に流入データ量の揺らぎによる再生映像の途切れが起こらないように、データ蓄積装置に未取得データが一定量蓄えられるのを待ってからでないと映像の表示をしないように動作する場合がある。この場合、データ蓄積装置（またはその管理者、あるいはその製作者）が、低遅延再生を希望しても、データ取得装置の制御権がないため、達成されない。
【０００７】
また、バッファにダミーデータを記憶させるようにした場合は、データ取得装置側でダミーデータであることを認識し、これに対応した処理を行う必要があるが、このようなデータ取得装置の動作はデータ蓄積装置の制御下にはないため、実現できないものであった。
【０００８】
この発明は上記のような課題を解決するためになされたもので、データ取得要求側の制御を必要とせず、データの低遅延を達成することのできるデータ蓄積装置及びデータ蓄積プログラムを得ることを目的とする。
【課題を解決するための手段】
【０００９】
この発明に係るデータ蓄積装置は、継続的に流入するデータを一時的に保持し、データ取得要求に応じて保持したデータを提供するデータ蓄積装置において、流入するデータを蓄積し、データ取得要求に対して、該当するデータを提供すると共に、蓄積しているデータの情報を内部用蓄積データ情報として送出するデータ蓄積手段と、内部用蓄積データ情報が示す実際に蓄積している最新のデータよりも、まだ流入していない新しいデータを蓄積しているとした公開用蓄積データ情報をデータ取得要求元に対して送出する蓄積データ情報提供手段とを備え、データ蓄積手段は、流入していない新しいデータに対するデータ取得要求を受けた場合は、一時的に応じられない旨の応答を送出するようにしたものである。
【発明の効果】
【００１０】
この発明のデータ蓄積装置は、実際に蓄積している最新のデータよりも、まだ流入していない新しいデータを蓄積しているとした公開用蓄積データ情報をデータ取得要求元に対して送出し、流入していない新しいデータに対するデータ取得要求を受けた場合は、一時的に応じられない旨の応答を送出するようにしたので、データ取得要求側の制御を必要とせずにデータの低遅延を達成することができる。
【図面の簡単な説明】
【００１１】
【図１】この発明の実施の形態１によるデータ蓄積装置とデータ取得装置を示す構成図である。
【図２】この発明の実施の形態１によるデータ蓄積装置において実在するデータに対してデータ取得要求を受けた場合の動作を示す説明図である。
【図３】この発明の実施の形態１によるデータ蓄積装置においてまだ蓄積していないデータに対してデータ取得要求を受けた場合の動作を示す説明図である。
【図４】この発明の実施の形態１によるデータ蓄積装置の動作を示すフローチャートである。
【図５】この発明の実施の形態１と実施の形態２との対応関係を示す説明図である。
【発明を実施するための形態】
【００１２】
実施の形態１．
図１は、この発明の実施の形態１によるデータ蓄積装置１０と、このデータ蓄積装置１０に接続されるデータ取得装置２０を示す構成図である。データ蓄積装置１０は、外部から継続的に流入するデータを一時的に保持し、保持しているデータに関する情報を外部に提供し、外部からのデータ要求に対して応答することで保持しているデータを提供する機能を有し、自身の制御下にないデータ取得要求元に対し、データ要求を促すことができるものである。また、データ取得装置２０は、データ蓄積装置１０に対してデータ取得要求を送出し、データを取得、使用する装置である。なお、データ取得装置２０は、実施の形態１のデータ蓄積装置１０を説明するために便宜的に定義したものであって、データ蓄積装置１０の構成要件となるものではない。
【００１３】
まず、データ取得装置２０について簡単に説明する。データ取得装置２０は、データ蓄積装置１０から、データ蓄積装置１０が保持しているデータに関する情報（公開用蓄積データ情報とする）を適宜取得する。蓄積データ情報取得の方法は、データ蓄積装置１０側からデータ取得装置２０側に定期的にあるいは更新時に蓄積データ情報を提供するのでもよいし、データ取得装置２０が蓄積データ情報を必要とする際に要求して取得するのでもよく、任意の方法をとることができる。ただし、データの提供は、データ取得装置２０からの要求にデータ蓄積装置１０が応答する形で行う想定とする。データ取得装置２０は、蓄積データ情報から取得すべきデータを判断し、データ蓄積装置１０に対してデータ取得要求を行う。どこまでデータを取得したかをデータ取得装置２０側で判断し、未取得のデータを古い方から要求していくのが一般的な動作である。このデータ取得要求に対し、データ蓄積装置１０は、応答として要求されたデータを提供する。データ取得装置２０は取得データを何らかの形で使用する。ここで、データ取得装置２０におけるデータ取得手段２１は、上述したデータ取得要求を行う手段であり、データ使用手段２２は、データ取得手段２１で取得したデータを何らかの形で使用する手段である。
【００１４】
次に、データ蓄積装置１０について説明する。データ蓄積装置１０は、データ蓄積手段１１と蓄積データ情報提供手段１２とを備えている。データ蓄積手段１１は、図示しない内部バッファを備え、この内部バッファに流入データを蓄積し、また、データ取得装置２０からのデータ取得要求に対して、該当するデータを提供すると共に、蓄積しているデータの情報を内部用蓄積データ情報として蓄積データ情報提供手段１２に送出する手段である。また、データ蓄積手段１１は、流入していない新しいデータに対するデータ取得要求を受けた場合は、一時的に応じられない旨の応答を送出するよう構成されている。蓄積データ情報提供手段１２は、データ蓄積手段１１からの内部用蓄積データ情報が示す実際に蓄積している最新のデータよりも、まだ流入していない新しいデータを蓄積しているとした公開用蓄積データ情報を生成してデータ取得要求元であるデータ取得装置２０に対して送出する手段である。
【００１５】
以下、実施の形態１のデータ蓄積装置の動作について説明する。
データ蓄積手段１１は、データ蓄積装置１０の外部から継続的に流入するデータを一時的に保持し、データ取得装置２０からのデータ要求に応答することで保持しているデータを提供する。また、蓄積データ情報提供手段１２に蓄積データ情報を提供する。流入データはどのような形態でもよいが、継続的なビットストリームであったり、一定サイズまたは任意サイズにセグメント化されてバースト的に到着するデータ（以下、セグメントと呼ぶ）であるのが一般的である。ここでは流入データをセグメントとして説明する。すなわち、実施の形態１のデータ蓄積手段１１は、流入するセグメントを順次内部バッファに蓄積していくものとする。バッファには通常サイズの上限があり、オーバーフローを起こさないように古いセグメントから廃棄していく。廃棄方法は、この発明において重要な部分ではなく、任意の廃棄方法でよい。他にも、データ取得装置２０に提供し終わったデータを廃棄したり、蓄積するセグメント数と同じ数だけ古いセグメントを廃棄したりする方法が考えられる。
【００１６】
蓄積データ情報提供手段１２には、その時点で保持しているデータに関する情報を提供する。データ蓄積手段１１が蓄積データ情報提供手段１２に提供する蓄積データ情報は、保持しているセグメントと、その新旧（順序）に関する情報などである。セグメントサイズやその他セグメントに関連する付加情報を提供してもよい。データ取得装置２０からのデータ要求は、要求するセグメントを指定する形でなされる。一度に複数セグメントを要求できるか否かなどは、任意の実装形態が可能だが、ここでは一度のデータ要求で１セグメントを要求するものとする。そのため、データ蓄積手段１１は、データ要求で指定されたセグメントを、応答で提供する。廃棄済みのデータが要求された場合などは、データを提供できない旨を示す恒久的エラー応答を返すこととなる。一方で、データ蓄積手段１１が保持している最新のデータより新しいデータが要求された場合に、データを一時的に提供できない旨を示す一時的エラー応答を返す。恒久的エラー応答は、二度と要求に応じられない旨の応答であるのに対し、一時的エラー応答は、一時的には応じられないが再度要求されればその時は応じられる可能性がある旨の応答である。一時的エラー応答で、再要求までの推奨待ち時間を提供することで、無駄な再要求の乱発を防ぐことができる。
【００１７】
蓄積データ情報提供手段１２は、データ蓄積手段１１から入手した蓄積データ情報を基に、外部に提供する目的の蓄積データ情報を作成し、データ取得装置２０に提供する。ここで、データ蓄積手段１１から取得した蓄積データ情報をそのまま外部に提供するのが一般的だが、蓄積データ情報提供手段１２は、データ蓄積手段１１から取得した蓄積データ情報にある最も新しいデータよりも新しいデータがあるように見せかけるため、ダミーのデータを載せた蓄積データ情報（公開用蓄積データ情報）を提供するものとする。図２および図３は、それぞれ、実在するデータとダミーデータを要求された際のデータ蓄積装置１０の内部状態と動作の一例を説明する図である。実在するデータＳ４を要求された場合には、要求に応じてデータＳ４を提供する（図２参照）。すなわち、データ蓄積手段１１にはデータＳ１〜Ｓ４が実際に蓄積されており、蓄積データ情報提供手段１２は、さらにダミーデータＳａ，Ｓｂが蓄積されているという蓄積データ情報をデータ取得装置２０に送出する。一方、データ取得装置２０からダミーデータＳａを要求された場合には、要求に応じられないため、データ蓄積手段１１は一時的エラー応答を返す（図３参照）。
【００１８】
次に、図４のフローチャートを用いてデータ蓄積装置１０の動作を更に説明する。
データ蓄積装置１０は、まず、流入データを受け取り、データ蓄積手段１１内部に蓄積する（ステップＳＴ１）。この際、バッファオーバーフロー等の理由で蓄積不可能な場合は、古いデータを廃棄する措置を取る（ステップＳＴ２、ＳＴ３、ＳＴ４）。流入データの受け取りや、データ廃棄によってデータ蓄積手段１１が保持するデータに変化があれば、蓄積データ情報を更新する（ステップＳＴ５）。その上で、蓄積データ情報提供手段１２は、最新の蓄積データ情報に、ダミーのデータを載せた、公開用蓄積データ情報を送出する（ステップＳＴ６）。データ取得装置２０からデータ要求があれば、要求に応じ、データ蓄積手段１１は、要求されたデータの提供、恒久的エラー応答、一時的エラー応答のいずれかの応答処理を行う（ステップＳＴ７、ＳＴ８）。この手順は一例であって、他の手順でもよい。これらのステップの順序は任意でよい。また、図４ではシングルスレッドで全ての処理を行う手順としたが、マルチスレッドの構成として、流入データの蓄積、古いデータの廃棄、蓄積データの更新を行うスレッド、蓄積データ情報の提供を行うスレッド、応答を行うスレッドを別にしてもよい。更に他のスレッド構成でもよい。
【００１９】
このように、蓄積データ情報提供手段１２がダミーのデータを載せた蓄積データ情報を提供するように構成したことで、データ取得装置２０に対し、実際に保持しているデータよりも多くのデータをデータ蓄積装置１０が保持しているように見せかけることができる。データ取得装置２０が、ある程度の未取得データが蓄積データ情報内に見られるようになるのを待ってからデータ要求をするように動作する場合、データ取得装置２０のデータ要求を促す効果がある。その結果として、データ蓄積手段１１へのデータ流入からデータ取得装置２０でのデータの使用までの時間（遅延）を小さくできる効果がある。例えば、図２において、データ取得装置２０が蓄積データ情報に未取得データが３セグメント記載されるまで、新しい未取得データを取得しない動作をするとする。もし、蓄積データ情報にダミーデータの記載がなければ、データＳ２を取得し、未取得データがＳ３、Ｓ４の２セグメントとなった時点で、データＳ３の要求を待機する動作をすることになる。一方、蓄積データ情報にダミーデータが記載されていれば、ダミーデータＳａ、Ｓｂがあることによって、データＳ４まで要求する動作をすることになる。そのため、データＳ３やＳ４がデータ蓄積手段１１内で滞留するのを防ぎ、遅延を小さくできる。
【００２０】
また、実施の形態１では、データ蓄積手段１１が保持している最新のデータより新しいデータが要求された場合に、データを一時的に提供できない旨を示す一時的エラー応答を返すように構成したことで、データ取得装置２０が誤ってダミーデータを正しいデータと勘違いして取得、使用してしまうことを防ぐことができる。更に、エラーが恒久的ではなく一時的であることをデータ取得装置２０に伝えられるので、データ取得装置２０は、データの取得を諦める必要はなく、時間を空けて再度要求すればよいと判断することができ、結果として、再度データ要求することで正しいデータを取得することができる。例えば、図３において、データ取得装置２０が蓄積データ情報に記載された未取得データＳａを要求したら、一時的エラー応答が返る。それによって、データ取得装置２０は、データＳａを提供できないのは一時的であるということを判断でき、適当な時間を空けて再度データＳａを要求すればいずれはデータＳａを取得できるであろうことを判断することができる。実際、データＳ４の次のデータが流入した時点で、元々はダミーだったＳａに相当するデータの提供が可能となり、データ蓄積装置１０は、データＳａが要求された際に、そのデータを提供することで、問題なく動作する。もしここで、恒久的エラー応答が返って来れば、データ取得装置２０はデータ蓄積装置１０に何か問題があってデータの取得が継続できないと判断し、データの取得、使用をやめてしまうかもしれない。このように、一時的エラー応答を使用することで、意図しないデータ取得装置２０の停止を防ぐことができる。
【００２１】
とりわけ、ストリーミング受信再生システムにおいて、効果的に遅延を抑制することができる。ストリーミング受信再生システムが内部に実施の形態１のデータ蓄積装置１０を備える場合、データ蓄積装置１０は受信バッファ管理機構に、データ取得装置２０は再生アプリケーションに相当する。すなわち、再生アプリケーションが受信バッファ管理機構の提供するインタフェースからデータを取得するのである。ストリーミング受信再生では、通常、受信データ量の揺らぎによる映像や音声の途切れを防ぐため、再生アプリケーションは、ある程度のデータが受信バッファ管理機構に蓄えられるまで、データの取得あるいは使用を控える動作が一般的である。そのため、受信バッファ管理機構にデータが到着してから再生アプリケーションがデータを再生するまでの時間（遅延）が増大する。一方、実施の形態１のデータ蓄積装置１０を構成する受信バッファ管理機構が備わっていれば、再生アプリケーションを作り変えることなく、受信バッファ管理機構主導で、遅延を小さくすることができる。
【００２２】
以上説明したように、実施の形態１のデータ蓄積装置によれば、継続的に流入するデータを一時的に保持し、データ取得要求に応じて前記保持したデータを提供するデータ蓄積装置において、流入するデータを蓄積し、データ取得要求に対して、該当するデータを提供すると共に、蓄積しているデータの情報を内部用蓄積データ情報として送出するデータ蓄積手段と、内部用蓄積データ情報が示す実際に蓄積している最新のデータよりも、まだ流入していない新しいデータを蓄積しているとした公開用蓄積データ情報をデータ取得要求元に対して送出する蓄積データ情報提供手段とを備え、データ蓄積手段は、流入していない新しいデータに対するデータ取得要求を受けた場合は、一時的に応じられない旨の応答を送出するようにしたので、データ取得要求側の制御を必要とせずにデータの低遅延を達成することができる。
【００２３】
また、実施の形態１のデータ蓄積プログラムによれば、継続的に流入するデータを一時的に保持し、データ取得要求に応じて保持したデータを提供するデータ蓄積装置としてコンピュータを機能させるデータ蓄積プログラムであって、流入するデータを蓄積し、データ取得要求に対して、該当するデータを提供すると共に、蓄積しているデータの情報を内部用蓄積データ情報として送出するデータ蓄積手段と、内部用蓄積データ情報が示す実際に蓄積している最新のデータよりも、まだ流入していない新しいデータを蓄積しているとした公開用蓄積データ情報をデータ取得要求元に対して送出する蓄積データ情報提供手段として機能させると共に、データ蓄積手段が、流入していない新しいデータに対するデータ取得要求を受けた場合は、一時的に応じられない旨の応答を送出するよう機能させるようにしたので、データ取得要求側の制御を必要とせずにデータの低遅延を達成することのできるデータ蓄積装置をコンピュータ上に実現することができる。
【００２４】
実施の形態２．
発明の実施の形態２では、HTTP Live Streaming（以下、ＨＬＳという）サーバの機能を持つデータ蓄積装置について説明する。図面上の構成は実施の形態１と同様であるため、図１を用いて説明する。
図５に実施の形態１と実施の形態２の対応関係を示す。実施の形態２では、データ蓄積装置１０はＨＬＳサーバに、データ取得装置２０はＨＬＳクライアントに当たる。データ蓄積装置１０で流入、蓄積、提供の対象となるデータは、ＨＬＳ規格（ここではdraft-pantos-http-live-streaming-07を指す）におけるメディアセグメント（media segment）に当たる。公開する蓄積データ情報は、ＨＬＳ規格におけるプレイリスト（playlist）に当たる。そして、データの要求、提供の方法、蓄積データ情報の提供の方法はＨＴＴＰである。すなわち、実施の形態２のデータ蓄積装置１０では、蓄積データ情報は、データ取得装置２０からの要求（ＨＴＴＰ要求）に対する応答で提供される。
【００２５】
実施の形態２のデータ蓄積装置１０では、ダミーデータはまだデータ蓄積装置１０に流入していないメディアセグメントであり、プレイリストの最後尾に記載する。恒久的エラー応答にはＨＴＴＰ応答の404 Not Foundを、一時的エラー応答にはＨＴＴＰ応答の503 Service Unavailableを用いることができる。
【００２６】
ＨＬＳクライアントには、プレイリストの最後尾からターゲットデュレーション（target duration）の３倍の期間内に開始位置があるメディアを再生しない推奨規定が敷かれており、この推奨規定を守るＨＬＳクライアントは、プレイリストの最後尾からターゲットデュレーションの３倍の期間に開始位置があるメディアをＨＬＳサーバに対して要求しないか、または取得済みであっても再生せずに保留する可能性がある。そのため、遅延が増大する。実施の形態２のデータ蓄積装置１０は、プレイリスト中にダミーのメディアセグメントを記載するため、上記推奨規定を守るＨＬＳクライアントに対し、メディアセグメントの取得または再生を促す効果がある。その結果として、遅延を小さくできる。
【００２７】
なお、ターゲットデュレーションはメディアセグメントの長さの最大値であって、ＨＬＳでは通常はターゲットデュレーションとほぼ同じ長さのメディアセグメントを提供する。例えば、ターゲットデュレーションを１０秒とした場合、１個のメディアセグメントのサイズは再生時間で１０秒またはそれ未満のそれに近い期間に相当するデータ量となる。そのため、ダミーデータは２メディアセグメントとするのが効果的である。なぜなら、ＨＬＳクライアントは当該推奨規定によりプレイリストの新しい方から２つのメディアセグメントを取得または再生せずに待機する可能性があるが、プレイリストの新しい方から３つ目のメディアセグメントは、そのセグメントの開始位置がプレイリストの最後尾からターゲットデュレーションの３倍にあたるため、待機の必要がなくなるタイミングであり、ＨＬＳクライアントはそれを取得する動作をすると考えられるからである。
【００２８】
メディアセグメントがターゲットデュレーションに対して極端に小さい場合に備え、ダミーデータを２ターゲットデュレーションに相当する長さとなるよう調整してもよい。このようにすると、メディアセグメントが小さい場合であっても、ＨＬＳクライアントにデータ要求を促すのに十分なダミーデータをプレイリストに記載することができる。勿論、ダミーデータの量は他の決め方でもよい。例えば、保持する最新のメディアセグメントとダミーデータの合計が３ターゲットデュレーションとなるようにダミーデータの量を調節してもよい。このようにすると、最新のメディアセグメントのサイズによらず、ＨＬＳクライアントにデータ要求を促すことができる。
【００２９】
更に、ダミーのメディアセグメントを要求した場合に、503 Service Unavailableのステータスを返すことによって、データ蓄積装置１０（ＨＬＳサーバ）が一時的にメディアセグメントを提供できないだけであることをデータ取得装置２０（ＨＬＳクライアント）に伝えることができるため、ダミーの取得による誤動作を防ぎ、かつ再取得を促すことができる。このように、低遅延をサポートするＨＬＳサーバを構成することができる。更に、一時的エラー応答（503 Service Unavailable）を返す際、ＨＴＴＰ応答のRetry-Afterフィールドに再取得までの推奨待ち時間を指定してもよい。そのようにすることで、無駄な再取得要求を減らし、負荷軽減を図ることができる。ここでRetry-Afterフィールドに指定する値をターゲットデュレーションに合わせると効果的である。なぜなら、ターゲットデュレーションだけ待てば、次のメディアセグメントはすでにＨＬＳサーバに到着しているため、無駄な再取得要求を減らし、かつ待ち過ぎないように制御する効果が期待されるからである。勿論、Retry-Afterフィールドの値をターゲットデュレーションより小さい値（例えば、ターゲットデュレーションが１０秒の場合にRetry-Afterフィールドの値を５秒）にすることもできる。この場合は、再取得要求が無駄になる可能性が上がるものの、待ち過ぎの可能性を更に減らすことができるため、遅延を更に小さくできる。
【００３０】
これまで説明してきた実施の形態２のデータ蓄積装置１０は、ＨＬＳサーバの機能を実現する他のストリーミングサーバを構成することもできる。例えば、Dynamic Adaptive Streaming over HTTP（ISO/IEC 23009-1、以下ＤＡＳＨとする）サーバの機能を実現することもできる。この場合は、データはＤＡＳＨ規定のセグメント（segment）であり、公開する蓄積データ情報はMedia Presentation Description：ＭＰＤ）である。ＭＰＤやセグメントの提供方法はＨＴＴＰである。更に、その他のサーバを構成することもでき、要求に応じてデータを提供する動作を行う任意のサーバの機能を持つデータ蓄積装置１０を構成可能である。
【００３１】
以上説明したように、実施の形態２のデータ蓄積装置によれば、データ蓄積手段が受けるデータ取得要求がＨＴＴＰ要求で、ＨＴＴＰ要求に対する応答がＨＴＴＰ応答であり、かつ、公開用蓄積データ情報がHTTP Live Streamingプレイリストであるようにしたので、ＨＬＳサーバとして、ＨＬＳクライアント側の制御を必要とせずにデータの低遅延を達成することができる。
【００３２】
また、実施の形態２のデータ蓄積装置によれば、一時的に応じられない旨の応答が、ステータスコードを503 ServiceUnavailableとしたＨＴＴＰ応答であるようにしたので、ダミーによる誤動作を防止し、かつ、再取得を促すことができる。
【００３３】
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
【符号の説明】
【００３４】
１０  データ蓄積装置、１１  データ蓄積手段、１２  蓄積データ情報提供手段、２０  データ取得装置、２１  データ取得手段、２２  データ使用手段。
【図１】
2013210803.tif 000003
【図２】
2013210803.tif 000004
【図３】
2013210803.tif 000005
【図４】
2013210803.tif 000006
【図５】
2013210803.tif 000007