"ネットワークを介してコンテンツでデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、前記ネットワークを介して前記配信サーバから送信されたデータパケットと、前記端末から受信を確認するために送信された受信確認応答パケットのパケット情報を取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、前記記憶手段に格納された前記パケット情報の受信時刻、シーケンス番号、受信確認応答番号及びパケットサイズに加えて、取得可能な場合には、部分受信確認応答番号を用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、を有し、前記受信量推定手段は、前記記憶手段に格納されている既に連続して受信したパケットのデータ範囲の最大値と新たに受信したパケットのデータ範囲の先頭のバイト数の差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力することを特徴とするコンテンツ受信量推定装置。ネットワークを介してコンテンツでデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、前記ネットワークを介して前記配信サーバから送信されたデータパケットを取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、前記記憶手段に格納された前記パケット情報の受信時刻、シーケンス番号、パケットサイズを用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、を有し、前記受信量推定手段は、前記記憶手段に格納されている既に連続して受信したパケットのデータ範囲の最大値と新たに受信したパケットのデータ範囲の先頭のバイト数の差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力することを特徴とするコンテンツ受信量推定装置。ネットワークを介してコンテンツでデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、前記ネットワークを介して前記配信サーバから送信されたデータパケットと、前記端末から受信を確認するために送信された受信確認応答パケットのパケット情報を取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、前記記憶手段に格納された前記パケット情報の受信時刻、シーケンス番号、受信確認応答番号及びパケットサイズに加えて、取得可能な場合には、部分受信確認応答番号を用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、前記パケット情報取得手段よりサーバ側のネットワークにおけるパケット廃棄率及び該パケット情報取得手段より前記端末側のネットワークにおけるパケット廃棄率を求めるパケット廃棄率推定手段と、を有し、前記受信量推定手段は、前記記憶手段に格納されている既に連続して受信したパケットのデータ範囲の最大値と新たに受信したパケットのデータ範囲の先頭のバイト数の差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力することを特徴とするコンテンツ受信量推定装置。ネットワークを介してコンテンツでデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、前記ネットワークを介して前記配信サーバから送信されたデータパケットを取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、前記記憶手段に格納された前記パケット情報の受信時刻、シーケンス番号、パケットサイズを用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、前記パケット情報取得手段よりサーバ側のネットワークにおけるパケット廃棄率及び該パケット情報取得手段より前記端末側のネットワークにおけるパケット廃棄率を求めるパケット廃棄率推定手段と、を有し、前記受信量推定手段は、前記記憶手段に格納されている既に連続して受信したパケットのデータ範囲の最大値と新たに受信したパケットのデータ範囲の先頭のバイト数の差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力することを特徴とするコンテンツ受信量推定装置。ネットワークを介してコンテンツでデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、前記ネットワークを介して前記配信サーバから送信されたデータパケットと、前記端末から受信を確認するために送信された受信確認応答パケットのパケット情報を取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、前記コンテンツデータの送受信が完了した後に、前記記憶手段に格納された前記パケット情報の受信時刻、シーケンス番号、パケットサイズを用いて、最終のシーケンス番号と前記配信サーバから送信されたシーケンス番号を比較し、最終のシーケンス番号の方が大きい場合に、該シーケンス番号とパケットの到着時刻を受信量記憶手段に格納する処理をすべてのシーケンス番号について行い、最後に、該受信量記憶手段記憶に格納されたデータを時系列に並び替えて出力する受信量推定手段と、を有することを特徴とするコンテンツ受信量推定装置。コンピュータを、請求項1乃至5のいずれか1項に記載のコンテンツ受信量推定装置の各手段として機能させるためのコンテンツ受信量推定プログラム。しかしながら、TCPを用いてデータ通信を行うフローに対して、パケットレイヤの情報のみを用いて、順序逆転や損失による再送パケット等の情報を再構成し、アプリケーションに渡されるデータ受信量の時系列を推定することは困難であった。そのため、データ配信サーバからの送信データに対する受信端末上でのデータ受信状況、及び、再生バッファへの蓄積/再生バッファからの読み出しの状況について、再生装置の外部からパケットレイヤの情報のみを用いて適切に把握し、再生バッファの状態を時系列に沿って推定することは困難であった。本発明は、上記の点に鑑みなされたもので、データパケット及びACKパケット、または、データパケットを適切に処理することで、端末における受信バイト量の推定を行うことが可能なコンテンツ受信量推定装置及びプログラムを提供することを目的とする。上記の課題を解決するため、本発明は、ネットワークを介してコンテンツでデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、前記ネットワークを介して前記配信サーバから送信されたデータパケットと、前記端末から受信を確認するために送信された受信確認応答パケットのパケット情報を取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、前記記憶手段に格納された前記パケット情報の受信時刻、シーケンス番号、受信確認応答番号及びパケットサイズに加えて、取得可能な場合には、部分受信確認応答番号を用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、を有し、前記受信量推定手段は、前記記憶手段に格納されている既に連続して受信したパケットのデータ範囲の最大値と新たに受信したパケットのデータ範囲の先頭のバイト数の差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力する。本発明によれば、パケット情報の一部から、前回のパケット取得時におけるデータ範囲の最大値と新たに取得したパケットのデータ範囲の差分をとることにより、時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定することにより、その状態に応じてパケット取得時刻におけるコンテンツデータ量を求めるため、受信側において正常に受信できた受信量を出力することが可能になる。以下図面と共に、本発明の実施の形態を説明する。本発明では、TCPフローのパケット情報から、データ受信量の時系列を推定する。具体的には、データパケット、ACKパケットを対象として、パケットレイヤの情報である順序逆縁や損失による再送パケット等の情報を再構成し、処理することで、受信端末側のアプリケーションに渡されるデータ受信量を時系列に沿って推定する。図1は、本発明の位置実施の形態におけるシステム構成を示す。本発明は、ネットワーク30を介してコンテンツデータを配信するコンテンツデータの配信サーバ10と配信サーバ10からコンテンツデータを受信する受信端末20と、配信サーバ10と受信端末20からネットワーク30を介してデータパケット、ACKパケットを取得してデータ受信量を推定するコンテンツ受信量推定装置100から構成される。図2は、本発明の一実施の形態におけるコンテンツ受信量推定装置の構成を示す。同図に示すコンテンツ受信量推定装置100は、パケット情報取得部110、記憶部120、受信量推定部130、パケット廃棄率推定部140を有する。パケット情報取得部110は、ネットワーク30を介して送受信されるパケット情報を取得し、記憶部120に格納する。記憶部120は、パケット情報取得部110で取得したパケット情報を格納する。記憶部の構成を図3に示す。記憶部120には、ギャップリストG121,パケット到着リストR122,受信確認リストS123、パケットデータ記憶部124、パケットカウンタ125、パケット通過時刻記録部126、受信量記録部127の各領域がある。ギャップリストG121は、データパケットが連続してない場合に、抜けた番号等を記録する。パケット到着リストR122は、再送パケットを判定するために到着したパケットを記録する。パケット到着リストの例を図4に示す。受信確認リストS123は、ACKパケットの重複を検知するためのものである。パケットデータ記憶部124には、パケット情報としては、各パケットをパケット情報取得部110で受信した時刻、シーケンス番号、受信確認応答番号、パケットサイズ、部分受信確認応答番号等がある。受信量記録部127は、パケット系列から受信バイト数を推定するために使用する。受信量推定部130は、記憶部120からパケット情報を読み出して、受信端末20において各時刻に受信したコンテンツデータ量を推定する。パケット廃棄率推定部140は、配信サーバ10側のネットワークにおけるパケット廃棄率及び受信端末20側のネットワークにおけるパケット廃棄率を推定する。TCPでは、配信サーバ10から送られるデータパケットと、クライアント20から送られる受信確認応答のACKパケットがある。データパケットはパケットヘッダにシーケンス番号が記録されており、当該パケットが送信したいデータのどこに該当するのかを示すオフセット情報相当となる。また、ACKパケットでは、受信したパケットのシーケンス番号に、受信端末20がこれまでに連続して受信したデータのバイト数に1byteを足した値を加算し、受信確認応答として報告する。データパケットは、通信の状態によって再送されることがある。再送は、1.データパケットがクライアントに到着する前に廃棄された;2.ACKパケットがサーバに到着する前に廃棄された;の2通りのケースが考えられる。また、パケット情報を取得する箇所の上部下部の損失可能性を考慮すると、a.データパケットはパケット情報取得部110を通過したが、クライアント到着前に廃棄された;b.データパケットはパケット情報取得部110の通過前に廃棄された;c.ACKパケットはパケット情報取得部110を通過したが、サーバ到着前に廃棄された;d.ACKパケットはパケット情報取得部110の通過前に廃棄された;の4通りが考えられ、各廃棄パターンにおいてパケットの再送が発生する可能性がある。パケットロス推定部130は、パケット情報取得部110で観測されるデータパケットとACKパケットを突合させることによって、パケット情報を取得する箇所の上部下部の損失可能性について、上記bまたはdの場合には、パケット情報取得部110を通過したパケットは廃棄されないため、高い精度でデータの受信量を判定することができる。一方、上記a,cの場合には、誤差の要因となる。そのため、重複して送信されるデータパケットや、受信確認応答されたパケットや、部分受信確認応答が有効であればその情報も活用することでより受信量の時系列を精度よく出力することができる。以下に、各実施の形態を説明する。[第1の実施の形態]図2の構成に基づいて説明する。なお、本実施の形態では、配信サーバ10から送信されたデータパケットと受信端末20から受信を確認するために送信された受信確認応答パケットACKパケットを用いて受信量を推定する場合について説明する。パケット情報取得部110において、配信サーバ10及び受信端末20から送信されるデータパケットまたはACKケットを取得すると、以下の処理を行う。図5は、本発明の第1の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。ステップ101まず、パケット情報取得部110は、パケットを取得すると、取得したパケットの情報を記憶部12のパケットデータ記憶部124に記録する。取得したパケットがデータパケットである場合は、ステップ102に移行し、ACKパケットである場合は、ステップ121に移行する。ステップ102受信量推定部130は、メモリ図示せずに格納されているこれまでに連続して受信できたデータ範囲の最大値latestdataと、ステップ101で新たに取得したパケットのデータ範囲の先頭のバイト数の差分パケット間の差分gapを求める。具体的には、当該パケットのシーケンス番号seqnoから受信した最大のバイト数latestdataを減算し、1を引いた値gapseqno-latestdata-1として計算する。上記の差分gapが0である場合はパケットが連続していることを表し、gap>0であれば、パケットは連続しておらず、当該gapの値がパケットのシーケンスが離れている範囲を示す。gap<0であれば、パケットロスが発生し、当該パケットが再送された状態を示す。また、latestdataはそれまでに連続して受信できたデータの最大の大きさである。これまでのすべてのパケットが抜けなく受信していれば、latestdataseqnolengthパケット長となる。また、直前のパケットが廃棄された等の理由で不達の場合は、latestdataは不達前のパケットのseqnoとlengthで更新されたままとなる。ステップ103受信量推定部130は、記憶部120内のパケット到着リストR122に、当該パケットのシーケンス番号seqnoを始点とし、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加えた値seqnoを終点とする範囲に対して、当該パケット到着時刻を記録する。すでに前記範囲が記録されている場合には、該当する範囲を重複がないように縮小または削除の更新をした上でデータを追加する。これはTCP再送制御により、重複パケットになる場合であり、例えば、ACKパケットがネットワーク中で廃棄された場合に、同一データパケットが再送されることを考慮している。再送パケットが送られる際、元のデータパケットのパケットサイズが異なることがあるため、例えば、時刻t1に100~200バイト受信し、時刻t2に301~400バイト受信し、時刻t3に150~300バイトを受信した場合、t3受信後に以下のようにサイズを縮小してもよい。t1100~149バイトt2150~300バイトt3301~400バイトステップ104さらに、受信量推定部130は、パケットカウンタN125を1増加させる。ステップ105受信量推定部130は、パケット間の差分gapが0の場合は、ステップ106に移行し、gap>0の場合はステップ107に移行し、gap<0の場合はステップ108に移行する。ステップ106メモリの受信した最大のバイト数latestdataを、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加算した値latestdataseqnoに更新する。ステップ107あるパケットの到着前にロスや順序逆転等で受信端末20に未達のパケットがある状態を示す、パケット間の差分gapが正の場合gap>0には、ギャップリストG121に、受信した最大のバイト数latestdata1を始点とし、当該パケットのシーケンス番号seqnoから1を引いた値を終点とした範囲を追加する。受信した最大バイト数latestdataが1500であり、当該パケットのシーケンス番号seqnoが2000であるとき、図6のように更新される。ステップ108パケットロスが発生し、当該パケットが再送された状態を示す、パケット間の差分gapが負gap<0であり、かつ、当該パケットのシーケンス番号seqnoがギャップリストG121に含まれている場合は、ステップ109に移行し、そうでない場合はステップ110に移行する。ステップ109ギャップリストG121から、当該パケットのシーケンス番号seqnoを始点とし、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲を削除する。ステップ110パケットロスが発生し、当該パケットが再送対象になっており、上記のステップ109の処理を通ったが、下流で再びロスとなった場合、つまり、パケット間の差分gapが負gap0であり、かつ、当該パケットのシーケンス番号seqnoがギャップリストG121に含まれていない場合であり、かつ、当該パケットのシーケンス番号seqnoが、これまでに受信確認されたACKパケットの最大のシーケンス番号latestacknoよりも大きい場合は、ステップ111に移行し、そうでない場合は、処理を終了する。ステップ111当該パケットのシーケンス番号seqnoが、記憶部120内の受信確認リストS123に含まれていない場合、当該パケットは再送パケットであると判断し、ステップ104で増加させたパケットカウンタNを1減少させN=N-1、再送パケットをロス率の計算から除外してもよい。ステップ121ステップ101において、受信量推定部130は、パケットデータ記憶部124を参照し、取得したパケットがACKパケットの場合は、受信確認リストS123のこれまでに受信確認されたACKパケットの最大のシーケンス番号latestacknoを当該ACKパケットの受信確認番号から1減算した値とし更新する。ステップ122当該ACKパケットにselectiveACKに格納されている受信した最大のバイト数latestdataを減算し、1を引いた値gap=seqno-latestdata-1として計算する。ステップ203また、受信量推定部130は、パケット到着リストR122に、当該パケットのシーケンス番号seqnoを始点とし、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲に対して、当該パケット到着時刻を記録する。例えば、シーケンス番号が1000byteで、パケット長が500byteのパケットを時刻t1に受信したとするとき、始点が1000byte、終点が1500byteの範囲に対して対応する時刻t1をパケット到着リストR122に記録する。すでに前記範囲が記録されている場合には、該当する範囲を重複がないように縮小または削除の更新をしたうえでデータをパケット到着リストR122に追加する。ステップ204受信量推定部130は、さらにパケットカウンタNを1増加させる。ステップ205ステップ202で求められたパケット間の差分gapが0の場合は、ステップ206に移行し、gap>0の場合はステップ207に移行し、gap<0の場合はステップ208に移行する。ステップ206受信量推定部130は、受信した最大のバイト数latestdataを、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加算した値に更新するlatestdataseqno。ステップ207受信量推定部130は、gap>0の場合は、ギャップリストG121に、受信した最大のバイト数latestdata1を始点とし、当該パケットのシーケンス番号seqnoから1を引いた値を終点とした範囲を追加する。例えば、latestdataを1500byteとし、受信した当該パケットのシーケンス番号が2000byteであった場合には、始点が1501byte,終点が1999byteの範囲をギャップリストG121に記録する。ステップ208受信量推定部130は、パケット間の差分gapが負であり、かつ、当該パケットのシーケンス番号seqnoがギャップリストGに含まれている場合は、ステップ209に移行し、シーケンス番号seqnoがギャップリストG121に含まれていない場合はステップ210に移行する。ステップ209受信量推定部130は、ギャップリストG121から、当該パケットのシーケンス番号seqnoを始点とし、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲を削除する。ステップ210受信量推定部130は、パケット間の差分gapが負であり、かつ、当該パケットのシーケンス番号seqnoがギャップリストG121に含まれていない場合、当該パケットは再送パケットであると判断し、ステップ204で増加させたパケットカウンタNを1減少させN=N-1、再送パケットをロス率の計算から除外してもよい。なお、パケットロス率推定部140のパケットロス率の計算は、パケットロスが発生した上記のステップ208、ステップ210において行ってもよいし、一連のフローが終了した後で行ってもよい。各パケットの取得時に上記の手続きを踏むことにより、データパケットを用いた受信量推定として、最終的なパケット到着リストR122の値を出力する。[第3の実施の形態]本実施の形態では、パケット情報取得部110において、配信サーバ10から送信されるデータパケット及び受信端末20から送信されるACKパケットを取得して受信量の推定を行う場合を説明する。ステップ301パケット情報取得部110は、取得したパケットのデータをパケットデータ記憶部124に格納する。取得したパケットがデータパケットであれば、ステップ302に移行し、ACKパケットであれば、ステップ321に移行する。ステップ302受信量推定部130は、メモリ図示せずに格納されている、これまでに連続して受信できたデータ範囲の最大値と、次に新たに取得したパケットのデータ範囲の先頭のバイト数の差分パケット間の差分gapを求める。gapは、当該パケットのシーケンス番号seqnoから受信した最大のバイト数latestdataを減算し、1を引いた値として計算する。ステップ303また、受信料推定部130は、パケット到着リストR122に、当該パケットのシーケンス番号seqnoを始点とし、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲に対して、当該パケット到着時刻を記録する。すでに前記範囲が記録されている場合には、該当する範囲を重複がないように縮小または削除の更新をしたうえでデータを追加する。ステップ304さらにパケットカウンタNを1増加させるN=N1。ステップ305パケット間の差分gapが0の場合はステップ306に移行し、gap>0の場合はステップ307に移行し、gap<0の場合はステップ308に移行する。ステップ306gap0の場合は、受信した最大のバイト数latestdataを、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加算した値に更新する。ステップ307パケット間の差分がgap>0の場合、ギャップリストG121に、受信した最大のバイト数latestdata1を始点とし、当該パケットのシーケンス番号seqnoから1を引いた値を終点とした範囲を追加する。ステップ308パケット間の差分がgap<0であり、かつ、当該パケットのシーケンス番号seqnoがギャップリストGに含まれている場合は、ステップ309に移行し、含まれていない場合はステップ310に移行する。ステップ309上流のネットワークデ起きたパケットロスのカウンタlossAを1パケット増加させ、ギャップリストG121から、当該パケットのシーケンス番号seqnoを始点とし、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲を削除する。ステップ310パケット間の差分gapが負でありgap<0、かつ、当該パケットのシーケンス番号seqnoがギャップリストG121に含まれていない場合であり、かつ、当該パケットのシーケンス番号seqnoが、これまでに受信確認された最大のシーケンス番号latestacknoよりも大きい場合は、ステップ311に移行する。それ以外は処理を行わない。この状況は、パケットロスが発生し、再送対象となっており、ステップ309の処理を行ったが、下流のネットワークで再びパケットロスとなった場合である。ステップ311当該パケットのシーケンス番号seqnoが受信確認リストS123に含まれていない場合、下流のネットワークのパケットロスカウンタlossBを1パケット増加させる。また、当該パケットは再送パケットであると判断し、ステップ304で増加させたパケットカウンタを1減少させ、再送パケットをロス率の計算から除外してもよい。ステップ321また、取得したパケットがACKパケットの場合は、受信量推定部130は、これまでに受信確認された最大のシーケンス番号latestacknoを当該ACKパケットの受信確認番号から1減算した値とし更新する。ステップ322当該ACKパケットにSACKが含まれている場合には、ステップ323に移行し、含まれていない場合は、処理を終了する。ステップ323受信量推定部130は、部分受信確認された範囲始点と終点のシーケンス番号を受信確認リストS123に追加する。ステップ324パケット到着リストR122から、これまでに受信確認された最大のシーケンス番号latestackno以下の範囲にあるすべてのデータが到着したとみなし、パケット到着リストR122中の各データの通過時刻が記録されていない場合は、ステップ325に移行する。ステップ325当該ACKパケットが到着を確認したデータの到着時刻としてパケット到着リストR122に記録する。上記のパケットロス率は、各々以下で与えられる。パケットロス率推定部140は、上記のステップ309において、パケット情報取得部110よりサーバ側のネットワークにおけるパケットロス率を、カウンタlossAをパケットカウントNで割った値とし、パケット情報取得部140より端末側のネットワークにおけるパケットロス率は、ステップ311において、lossBをパケットカウントNで割った値とする。なお、パケットロス率推定部140のパケットロス率の計算は、パケットロスが発生した上記のステップ309、ステップ311において行ってもよいし、一連のフローが終了した後で行ってもよい。各パケットの取得時に上記の手続きを踏むことにより、データパケット及びACKパケットを用いた受信量推定として、最終的なパケット到着リストR122の値を出力する。[第4の実施の形態]本実施の形態では、パケット情報取得部110において、配信サーバ10から送信されるデータパケットを用いて受信量を推定する場合を説明する。図9は、本発明の第4の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。ステップ401パケット情報取得部110は、取得したパケット情報が配信サーバ10から取得したデータパケットの場合には、ステップ402に移行し、その他のパケットの場合は当該処理をスルーする。ステップ402受信量推定部130は、メモリに格納されているこれまでに連続して受信できたデータ範囲の最大値と、新たに取得したパケットのデータ範囲の先頭のバイト数の差分gapを計算する。パケット間の差分gapは、当該パケットのシーケンス番号seqnoから受信した最大のバイト数latestdataを減算し、1を引いた値として計算する。ステップ403また、パケット到着リストR122に、当該パケットのシーケンス番号seqnoを始点とし、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲に対して、当該パケット到着時刻を記録する。すでに前記範囲が記録されている場合には、該当する範囲を重複がないように縮小または削除の更新をしたうえでデータを追加する。ステップ404さらにパケットカウンタNを1増加させる。ステップ405パケット間の差分gapが0の場合は、ステップ406に移行し、gap>0の場合は、ステップ407に移行し、gap<0の場合は、ステップ408に移行する。ステップ406gap0の場合は、受信した最大のバイト数latestdataを、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加算した値に更新する。ステップ407gap>0の場合、ギャップリストGに、受信した最大のバイト数latestdata1を始点とし、当該パケットのシーケンス番号seqnoから1を引いた値を終点とした範囲を追加する。ステップ408gap<0の場合、当該パケットのシーケンス番号seqnoがギャップリストG121に含まれている場合はステップ409に移行し、含まれていない場合は、ステップ410に移行する。ステップ409ギャップリストG121に含まれている場合は、lossAを1パケット増加させ、ギャップリストG121から、当該パケットのシーケンス番号seqnoを始点とし、当該パケットのシーケンス番号seqnoに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲をから削除する。ステップ410ギャップリストG121に含まれていない場合は、lossBを1パケット増加させる.また、当該パケットは再送パケットであると判断し、手順1で増加させたパケットカウンタNを1減少させ、再送パケットをロス率の計算から除外してもよい。パケットロス率は、パケットロス率推定部140により各々以下で与えられる。パケット情報取得部110よりサーバ側のネットワークにおけるパケットロス率は、lossAをパケットカウンタNで割った値とし、パケット情報取得部より端末側のネットワークにおけるパケットロス率は、lossBをパケットカウンタNで割った値で算出する。各パケットロス率は、パケット情報取得の都度、値を更新してもよいし、フローの完了後に出力してもよい。各パケットの取得時に上記の手続きを踏むことにより、データパケット及びACKパケットを用いた受信量推定として、最終的なパケット到着リストR122の値とパケットロス率推定部140で求められたパケットロス率を出力する。[第5の実施の形態]上記の第1~第4の実施の形態では、各パケットの状態を保持し、多くのメモリを使用するため、本実施の形態では、フローの終了後に省メモリで動作可能な受信量の推定方法を述べる。以下の説明では、パケット情報取得部110において、配信サーバ10から送信された、i番目のデータパケットの通過時刻tiおよびシーケンス番号xiを取得し記憶部120の、パケット通過時刻記録部126に格納する。ここで、シーケンス番号とは、TCPコネクションの開始時の値をもとにした相対値を指す。図10は、本発明の第5の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。ステップ501パケット情報取得部110において、データパケットを取得した場合は、以下の処理を行い、それ以外のパケットを取得した場合は当該処理をスルーする。ステップ502パケット情報取得部110は、データパケットを取得すると、パケットの通信時刻及びシーケンス番号をパケット通過時刻記録部126に記録する。ステップ503フローが終了するまで上記の処理を繰り返し、フローが終了すればステップ504に移行する。ステップ504フローの終了後、受信量推定部130は、パケット通過時刻記録部126に格納されている最大のシーケンス番号を取得する。その後、パケット通過時刻記録部の時刻が新しい順に以下の処理を行う。フローの最大のシーケンス番号をメモリ内の変数lastseqの初期値とする。フローのシーケンス番号が循環している際には、前後のパケットのシーケンス番号をもとに、循環を判断し、新たに循環していない番号を割り当てる.以下の処理において、シーケンス番号は、この新たに割り当てた循環していない番号を指すものとする。ステップ505受信量推定部130は、パケット通過時刻記録部126からパケットの情報を読み出す。ステップ506読み出した当該パケットのシーケンス番号seqiとlastseqと比較し、lastseqがseqiより大きい場合は、ステップ507に移行する。そうでない場合は、当該処理を終了する。ステップ507当該パケットの到着時刻、シーケンス番号及びバイト量を受信量記録部127に格納する。ステップ508フロー最大のシーケンス番号lastseqをseqiに更新する。ステップ509全パケットの処理が完了するまでステップ505以降の処理を繰り返す。ステップ510最後に、受信量記録部127に格納されたデータを時系列順に並び変えて格納時と逆順にする、受信量推定の結果を出力する。上記の図2に示すコンテンツ受信量推定装置の構成要素の動作をプログラムとして構築し、コンテンツ受信量推定装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更応用が可能である。"