JP5696032B2 - Content reception amount estimation apparatus and program - Google Patents

Content reception amount estimation apparatus and program Download PDF

Info

Publication number
JP5696032B2
JP5696032B2 JP2011282032A JP2011282032A JP5696032B2 JP 5696032 B2 JP5696032 B2 JP 5696032B2 JP 2011282032 A JP2011282032 A JP 2011282032A JP 2011282032 A JP2011282032 A JP 2011282032A JP 5696032 B2 JP5696032 B2 JP 5696032B2
Authority
JP
Japan
Prior art keywords
packet
data
reception
sequence number
received
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011282032A
Other languages
Japanese (ja)
Other versions
JP2013132019A (en
Inventor
大介 池上
大介 池上
泰理 本多
泰理 本多
山本 浩司
浩司 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011282032A priority Critical patent/JP5696032B2/en
Publication of JP2013132019A publication Critical patent/JP2013132019A/en
Application granted granted Critical
Publication of JP5696032B2 publication Critical patent/JP5696032B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、コンテンツ受信量推定装置及びプログラムに係り、特に、ネットワークを介してコンテンツデータを配信するシステムにおいて、時系列に従い、端末側が受信したデータ量を推定するためのコンテンツ受信量推定装置及びプログラムに関する。   The present invention relates to a content reception amount estimation apparatus and program, and in particular, in a system for distributing content data via a network, a content reception amount estimation apparatus and program for estimating the amount of data received by a terminal side in time series About.

近年のネットワーク技術の進展に伴い、様々なデータをネットワークを介して送受信するストリームデータを扱うアプリケーションが登場している。特に、映像系サービスの普及は目覚しく、VoDやストリームデータを扱うアプリケーションが登場している。特に、映像系サービスの普及は目覚しく、VoDやストリーミングサービス等様々な種類のアプリケーションが登場した。しかし、これらのストリームデータを扱うアプリケーションでは、一般に、受信したデータを再生バッファに蓄積し、ある一定量のバッファが蓄積された後に再生バッファからデータを逐次的に取り出し、再生するという挙動をとることが多い。   With the progress of network technology in recent years, applications that handle stream data that transmits and receives various data via a network have appeared. In particular, the spread of video services is remarkable, and applications that handle VoD and stream data have appeared. In particular, the spread of video services has been remarkable, and various types of applications such as VoD and streaming services have appeared. However, in applications that handle these stream data, generally, the received data is accumulated in the reproduction buffer, and after a certain amount of buffer is accumulated, the data is sequentially extracted from the reproduction buffer and reproduced. There are many.

こういったアプリケーションでは、再生バッファから途切れることない場合にユーザの体感品質を高めることができる。反対に、再生バッファが頻繁に枯渇し、渡されるデータが連続的ではなくなると、ユーザの体感品質を低下させる。   In such an application, the user's quality of experience can be improved when the playback buffer is not interrupted. On the other hand, if the playback buffer is frequently depleted and the data passed is not continuous, the quality of experience of the user is degraded.

このような状況に鑑み、受信端末内の再生プログラムの外部から再生バッファの状態を推定し、再生バッファからのデータの読み出し状況がどのようになっているかを推定することは、ユーザ体感品質の評価にとって重要な要素となる。 In view of such a situation, estimating the state of the reproduction buffer from outside the reproduction program in the receiving terminal and estimating how the data is read from the reproduction buffer is an evaluation of the user experience quality. It is an important element.

一方、再生バッファの状態を推定するためには、サーバから送信されたデータがいつ、どのくらい到着し、再生バッファに蓄積されたかを適切に評価することが重要である。 On the other hand, in order to estimate the state of the reproduction buffer, it is important to appropriately evaluate when and how much data transmitted from the server has arrived and accumulated in the reproduction buffer.

サーバからのデータ転送時に、用いられるプロトコルとして、UDP(User Datagram Protocol)とTCP(Transmission Control Protocol)の両者が用いられる。各転送プロトコルは以下の特徴を持つ。   As a protocol used when transferring data from the server, both UDP (User Datagram Protocol) and TCP (Transmission Control Protocol) are used. Each transfer protocol has the following characteristics.

UDPは、送信側から任意のデータレートでデータを送出できる反面、転送経路上でのパケット損失の検知、再送をアプリケーションから行わなければならない。UDPでは、パケットの順序逆転や損失等について関しないプロトコルであるため、データ受信量は再送パケット等を除き、原則として到達したパケットの累積量で決定される。   Although UDP can send data at an arbitrary data rate from the transmission side, it must detect and retransmit the packet loss on the transfer path from the application. Since UDP is a protocol that does not relate to packet order reversal or loss, the amount of data received is determined by the cumulative amount of packets that arrive in principle, except for retransmission packets.

一方、TCPでは、各データパケットがクライアントに到着しているかの受信確認を行い、未着のパケットの再送制御やウィンドウ制御による送信レート制御を持つプロトコルであり、上位のアプリケーションからは、パケットの順序逆転やパケット損失等を気にせず扱うことが可能となる(例えば、非特許文献1参照)。   TCP, on the other hand, confirms whether each data packet has arrived at the client, and is a protocol that has retransmission rate control for unarrived packets and transmission rate control by window control. It is possible to handle the reversal and packet loss without concern (for example, see Non-Patent Document 1).

RFC793: Transmission control Protocol.RFC793: Transmission control Protocol.

しかしながら、TCPを用いてデータ通信を行うフローに対して、パケットレイヤの情報のみを用いて、順序逆転や損失による再送パケット等の情報を再構成し、アプリケーションに渡されるデータ受信量の時系列を推定することは困難であった。そのため、データ配信サーバからの送信データに対する受信端末上でのデータ受信状況、及び、再生バッファへの蓄積/再生バッファからの読み出しの状況について、再生装置の外部からパケットレイヤの情報のみを用いて適切に把握し、再生バッファの状態を時系列に沿って推定することは困難であった。   However, for flows that perform data communication using TCP, only the packet layer information is used, information such as retransmission packets due to order reversal or loss is reconstructed, and the time series of data reception amount passed to the application is changed. It was difficult to estimate. Therefore, the data reception status on the receiving terminal for the transmission data from the data distribution server and the status of accumulation / reading from the playback buffer / reading from the playback buffer are appropriate using only packet layer information from outside the playback device. It was difficult to grasp the state of the playback buffer along the time series.

本発明は、上記の点に鑑みなされたもので、データパケット及びACKパケット、または、データパケットを適切に処理することで、端末における受信バイト量の推定を行うことが可能なコンテンツ受信量推定装置及びプログラムを提供することを目的とする。   The present invention has been made in view of the above points, and is a content reception amount estimation device capable of estimating the amount of received bytes in a terminal by appropriately processing data packets and ACK packets or data packets. And to provide a program.

上記の課題を解決するため、本発明は、ネットワークを介してコンテンツデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、
前記ネットワークを介して前記配信サーバから送信されたデータパケットと、前記端末から受信を確認するために送信された受信確認応答パケットのパケット情報を取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、
前記記憶手段に格納された前記パケット情報の受信時刻、データ1バイト毎に1ずつ増えていくシーケンス番号、受信確認応答番号及びパケットサイズに加えて、取得可能な場合には、部分受信が確認された範囲の始点と終点のシーケンス番号である部分受信確認応答番号を用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、
を有し、
前記受信量推定手段は
続して受信したパケットのシーケンス番号から受信した最大のバイト数を減算した値から1減算し差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力する手段と、
前記コンテンツデータの送受信が完了した後に、前記記憶手段に格納された前記パケット情報の受信時刻、前記シーケンス番号、前記パケットサイズを用いて、最終のシーケンス番号と前記配信サーバから送信されたシーケンス番号を比較し、最終のシーケンス番号の方が大きい場合に、該シーケンス番号、パケットの到着時刻及びバイト量を受信量記憶手段に格納する処理をすべてのシーケンス番号について行い、最後に、該受信量記憶手段に格納されたデータを受信時刻の新しい順に並び替えて出力する手段と、
を含む。
In order to solve the above problems, the present invention provides a system including a content data distribution server that distributes content data via a network and a terminal that receives the content data received from the distribution server. A content reception amount estimation device that estimates a reception data amount of content data at a time,
A packet that acquires packet information of a data packet transmitted from the distribution server via the network and a reception confirmation response packet transmitted to confirm reception from the terminal, and stores the packet information together with the acquired time information in a storage unit Information acquisition means;
In addition to the reception time of the packet information stored in the storage means, the sequence number that increases by 1 for each byte of data, the reception confirmation response number, and the packet size, if it can be acquired, partial reception is confirmed. A reception amount estimation means for estimating the amount of content data received by the terminal at each time using a partial reception confirmation response number that is a sequence number of a start point and an end point of the range;
Have
The reception amount estimation means includes :
Calculates a difference from a value obtained by subtracting the maximum number of bytes received from the continuous to the sequence number of the received packet 1 subtraction to either state packet by said difference is normally received in time series, unreached It is determined whether there is a packet or a packet loss, the packet information is stored in the storage means according to each state, and the data amount of the packet that has finally arrived to determine the retransmission packet is Means for reading from the storage means and outputting in time series;
After the transmission / reception of the content data is completed, the final sequence number and the sequence number transmitted from the distribution server are obtained using the reception time of the packet information stored in the storage means, the sequence number, and the packet size. When the final sequence number is larger, the processing for storing the sequence number, the arrival time of the packet, and the byte amount in the received amount storage unit is performed for all the sequence numbers. Finally, the received amount storage unit Means for rearranging the data stored in the data in order of reception time, and outputting,
including.

本発明によれば、パケット情報の一部から、前回のパケット取得時におけるデータ範囲の最大値と新たに取得したパケットのデータ範囲の差分をとることにより、時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定することにより、その状態に応じてパケット取得時刻におけるコンテンツデータ量を求めるため、受信側において正常に受信できた受信量を出力することが可能になる。   According to the present invention, from a part of the packet information, the difference between the maximum value of the data range at the previous packet acquisition time and the data range of the newly acquired packet is normally received in time series. In order to determine the content data amount at the packet acquisition time according to the state by determining whether there is an unreachable packet or a packet loss, the reception amount that can be normally received on the receiving side It becomes possible to output.

本発明の一実施の形態におけるシステム構成図である。1 is a system configuration diagram according to an embodiment of the present invention. 本発明の一実施の形態におけるコンテンツ受信量推定装置の構成図である。It is a block diagram of the content reception amount estimation apparatus in one embodiment of this invention. 本発明の一実施の形態における記憶部の構成図である。It is a block diagram of the memory | storage part in one embodiment of this invention. 本発明の一実施の形態におけるパケット到着リストの更新例である。It is an example of a packet arrival list update in one embodiment of the present invention. 本発明の第1の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。It is a flowchart of operation | movement of the content reception amount estimation apparatus in the 1st Embodiment of this invention. 本発明の第1の実施の形態におけるギャップリストGの例である。It is an example of the gap list G in the 1st Embodiment of this invention. 本発明の第2の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。It is a flowchart of operation | movement of the content reception amount estimation apparatus in the 2nd Embodiment of this invention. 本発明の第3の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。It is a flowchart of operation | movement of the content reception amount estimation apparatus in the 3rd Embodiment of this invention. 本発明の第4の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。It is a flowchart of operation | movement of the content reception amount estimation apparatus in the 4th Embodiment of this invention. 本発明の第5の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。It is a flowchart of operation | movement of the content reception amount estimation apparatus in the 5th Embodiment of this invention.

以下図面と共に、本発明の実施の形態を説明する。   Embodiments of the present invention will be described below with reference to the drawings.

本発明では、TCPフローのパケット情報から、データ受信量の時系列を推定する。   In the present invention, the time series of the data reception amount is estimated from the packet information of the TCP flow.

具体的には、データパケット、ACKパケットを対象として、パケットレイヤの情報である順序逆縁や損失による再送パケット等の情報を再構成し、処理することで、受信端末側のアプリケーションに渡されるデータ受信量を時系列に沿って推定する。   Specifically, for data packets and ACK packets, data is passed to the application on the receiving terminal side by reconstructing and processing information such as the packet layer information such as reverse order edge and retransmission packet due to loss. The quantity is estimated along the time series.

図1は、本発明の実施の形態におけるシステム構成を示す。 Figure 1 shows a system configuration of an embodiment of the present invention.

本発明は、ネットワーク30を介してコンテンツデータを配信するコンテンツデータの配信サーバ10と配信サーバ10からコンテンツデータを受信する受信端末20と、配信サーバ10と受信端末20からネットワーク30を介してデータパケット、ACKパケットを取得してデータ受信量を推定するコンテンツ受信量推定装置100から構成される。   The present invention includes a content data distribution server 10 that distributes content data via a network 30, a reception terminal 20 that receives content data from the distribution server 10, and a data packet from the distribution server 10 and reception terminal 20 via the network 30. , A content reception amount estimation apparatus 100 that acquires an ACK packet and estimates a data reception amount.

図2は、本発明の一実施の形態におけるコンテンツ受信量推定装置の構成を示す。   FIG. 2 shows a configuration of a content reception amount estimation apparatus according to an embodiment of the present invention.

同図に示すコンテンツ受信量推定装置100は、パケット情報取得部110、記憶部120、受信量推定部130、パケット廃棄率推定部140を有する。   The content reception amount estimation apparatus 100 shown in the figure includes a packet information acquisition unit 110, a storage unit 120, a reception amount estimation unit 130, and a packet discard rate estimation unit 140.

パケット情報取得部110は、ネットワーク30を介して送受信されるパケット情報を取得し、記憶部120に格納する。   The packet information acquisition unit 110 acquires packet information transmitted / received via the network 30 and stores it in the storage unit 120.

記憶部120は、パケット情報取得部110で取得したパケット情報を格納する。記憶部の構成を図3に示す。記憶部120には、ギャップリストG121,パケット到着リストR122,受信確認リストS123、パケットデータ記憶部124、パケットカウンタ125、パケット通過時刻記録部126、受信量記録部127の各領域がある。   The storage unit 120 stores the packet information acquired by the packet information acquisition unit 110. The configuration of the storage unit is shown in FIG. The storage unit 120 includes areas of a gap list G121, a packet arrival list R122, a reception confirmation list S123, a packet data storage unit 124, a packet counter 125, a packet passage time recording unit 126, and a reception amount recording unit 127.

ギャップリストG121は、データパケットが連続してない場合に、抜けた番号等を記録する。パケット到着リストR122は、再送パケットを判定するために到着したパケットを記録する。パケット到着リストの例を図4に示す。受信確認リストS123は、ACKパケットの重複を検知するためのものである。パケットデータ記憶部124には、パケット情報としては、各パケットをパケット情報取得部110で受信した時刻、シーケンス番号、受信確認応答番号、パケットサイズ、部分受信確認応答番号等がある。受信量記録部127は、パケット系列から受信バイト数を推定するために使用する。   The gap list G121 records missing numbers and the like when data packets are not continuous. The packet arrival list R122 records packets that have arrived to determine retransmission packets. An example of the packet arrival list is shown in FIG. The reception confirmation list S123 is for detecting duplication of ACK packets. In the packet data storage unit 124, the packet information includes the time at which each packet is received by the packet information acquisition unit 110, a sequence number, a reception confirmation response number, a packet size, a partial reception confirmation response number, and the like. The reception amount recording unit 127 is used for estimating the number of received bytes from the packet series.

受信量推定部130は、記憶部120からパケット情報を読み出して、受信端末20において各時刻に受信したコンテンツデータ量を推定する。   The reception amount estimation unit 130 reads the packet information from the storage unit 120 and estimates the amount of content data received at each time at the reception terminal 20.

パケット廃棄率推定部140は、配信サーバ10側のネットワークにおけるパケット廃棄率及び受信端末20側のネットワークにおけるパケット廃棄率を推定する。   The packet discard rate estimation unit 140 estimates the packet discard rate in the network on the distribution server 10 side and the packet discard rate in the network on the receiving terminal 20 side.

TCPでは、配信サーバ10から送られるデータパケットと、クライアント(受信端末)20から送られる受信確認応答のACKパケットがある。データパケットはパケットヘッダにシーケンス番号が記録されており、当該パケットが送信したいデータのどこに該当するのかを示すオフセット情報相当となる。   In TCP, there are a data packet sent from the distribution server 10 and an ACK packet of a reception confirmation response sent from the client (receiving terminal) 20. A data packet has a sequence number recorded in the packet header, and corresponds to offset information indicating where the packet corresponds to data to be transmitted.

また、ACKパケットでは、受信したパケットのシーケンス番号に、受信端末20がこれまでに連続して受信したデータのバイト数に1byteを足した値を加算し、受信確認応答として報告する。   In the ACK packet, a value obtained by adding 1 byte to the number of bytes of data continuously received by the receiving terminal 20 so far is added to the sequence number of the received packet and reported as a reception confirmation response.

データパケットは、通信の状態によって再送されることがある。再送は、
1.データパケットがクライアントに到着する前に廃棄された;
2.ACKパケットがサーバに到着する前に廃棄された;
の2通りのケースが考えられる。
The data packet may be retransmitted depending on the communication status. Resend is
1. The data packet was discarded before it arrived at the client;
2. The ACK packet was discarded before it arrived at the server;
There are two possible cases.

また、パケット情報を取得する箇所の上部・下部の損失可能性を考慮すると、
a.データパケットはパケット情報取得部110を通過したが、クライアント到着前に廃棄された;
b.データパケットはパケット情報取得部110の通過前に廃棄された;
c.ACKパケットはパケット情報取得部110を通過したが、サーバ到着前に廃棄された;
d.ACKパケットはパケット情報取得部110の通過前に廃棄された;
の4通りが考えられ、各廃棄パターンにおいてパケットの再送が発生する可能性がある。
Also, considering the possibility of loss at the top and bottom of the location where packet information is acquired,
a. The data packet passed through the packet information acquisition unit 110 but was discarded before the client arrived;
b. The data packet was discarded before passing through the packet information acquisition unit 110;
c. The ACK packet passed through the packet information acquisition unit 110 but was discarded before arrival at the server;
d. The ACK packet was discarded before passing through the packet information acquisition unit 110;
There is a possibility that retransmission of a packet occurs in each discard pattern.

パケットロス推定部130は、パケット情報取得部110で観測されるデータパケットとACKパケットを突合させることによって、パケット情報を取得する箇所の上部・下部の損失可能性について、上記bまたはdの場合には、パケット情報取得部110を通過したパケットは廃棄されないため、高い精度でデータの受信量を判定することができる。一方、上記a,cの場合には、誤差の要因となる。   The packet loss estimation unit 130 matches the data packet observed by the packet information acquisition unit 110 with the ACK packet to determine the possibility of loss at the upper and lower portions of the location where the packet information is acquired in the case of b or d above. Since the packet that has passed through the packet information acquisition unit 110 is not discarded, the amount of data received can be determined with high accuracy. On the other hand, in the case of a and c described above, it causes an error.

そのため、重複して送信されるデータパケットや、受信確認応答されたパケットや、部分受信確認応答が有効であればその情報も活用することでより受信量の時系列を精度よく出力することができる。   Therefore, it is possible to accurately output the time series of the received amount by utilizing the data packet transmitted repeatedly, the packet that has been acknowledged, and the information if the partial acknowledgment is valid. .

以下に、各実施の形態を説明する。   Each embodiment will be described below.

[第1の実施の形態]
図2の構成に基づいて説明する。なお、本実施の形態では、配信サーバ10から送信されたデータパケットと受信端末20から受信を確認するために送信された受信確認応答パケット(ACKパケット)を用いて受信量を推定する場合について説明する。
[First Embodiment]
This will be described based on the configuration of FIG. In the present embodiment, a case where the reception amount is estimated using a data packet transmitted from distribution server 10 and a reception confirmation response packet (ACK packet) transmitted to confirm reception from receiving terminal 20 will be described. To do.

パケット情報取得部110において、配信サーバ10及び受信端末20から送信されるデータパケットまたはACKケットを取得すると、以下の処理を行う。   When the packet information acquisition unit 110 acquires data packets or ACK packets transmitted from the distribution server 10 and the receiving terminal 20, the following processing is performed.

図5は、本発明の第1の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。   FIG. 5 is a flowchart of the operation of the content reception amount estimation apparatus in the first embodiment of the present invention.

ステップ101) まず、パケット情報取得部110は、パケットを取得すると、取得したパケットの情報を記憶部12のパケットデータ記憶部124に記録する。取得したパケットがデータパケットである場合は、ステップ102に移行し、ACKパケットである場合は、ステップ121に移行する。   Step 101) First, when the packet information acquisition unit 110 acquires a packet, the packet information acquisition unit 110 records the acquired packet information in the packet data storage unit 124 of the storage unit 12. If the acquired packet is a data packet, the process proceeds to step 102, and if it is an ACK packet, the process proceeds to step 121.

ステップ102)受信量推定部130は、メモリ(図示せず)に格納されているこれまでに連続して受信できたデータ範囲の最大値(latest_data)と、ステップ101で新たに取得したパケットのデータ範囲の先頭のバイト数の差分(パケット間の差分gap)を求める。具体的には、当該パケットのシーケンス番号seq_noから受信した最大のバイト数latest_dataを減算し、1を引いた値(gap=seq_no−latest_data−1)として計算する。   Step 102) The reception amount estimation unit 130 stores the maximum value (latest_data) of the data range that has been continuously received and stored in the memory (not shown), and the data of the packet newly acquired in Step 101 Find the difference in the number of bytes at the beginning of the range (difference gap between packets). Specifically, the maximum number of bytes latest_data received is subtracted from the sequence number seq_no of the packet, and a value obtained by subtracting 1 (gap = seq_no−latest_data−1) is calculated.

上記の差分gapが0である場合はパケットが連続していることを表し、gap>0であれば、パケットは連続しておらず、当該gapの値がパケットのシーケンスが離れている範囲を示す。gap<0であれば、パケットロスが発生し、当該パケットが再送された状態を示す。   If the difference gap is 0, it means that the packets are continuous. If gap> 0, the packets are not continuous, and the gap value indicates the range where the sequence of packets is separated. . If gap <0, a packet loss has occurred and the packet has been retransmitted.

また、latest_dataはそれまでに連続して受信できたデータの最大の大きさである。これまでのすべてのパケットが抜けなく受信していれば、latest_data=seq_no+length(パケット長)となる。また、直前のパケットが廃棄された等の理由で不達の場合は、latest_dataは不達前のパケットのseq_noとlengthで更新されたままとなる。   Also, latest_data is the maximum size of data that has been received continuously. If all previous packets have been received without omission, latest_data = seq_no + length (packet length). Also, if the previous packet is not delivered because it has been discarded, the latest_data remains updated with the seq_no and length of the previous packet.

ステップ103)受信量推定部130は、記憶部120内のパケット到着リストR122に、当該パケットのシーケンス番号seq_noを始点とし、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加えた値
seq_no+(length−1)
を終点とする範囲に対して、当該パケット到着時刻を記録する。すでに前記範囲が記録されている場合には、該当する範囲を重複がないように縮小または削除の更新をした上でデータを追加する。これはTCP再送制御により、重複パケットになる場合であり、例えば、ACKパケットがネットワーク中で廃棄された場合に、同一データパケットが再送されることを考慮している。再送パケットが送られる際、元のデータパケットのパケットサイズが異なることがあるため、例えば、時刻t1に100〜200バイト受信し、時刻t2に301〜400バイト受信し、時刻t3に150〜300バイトを受信した場合、t3受信後に以下のようにサイズを縮小してもよい。
Step 103) The reception amount estimation unit 130 sets a value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet in the packet arrival list R122 in the storage unit 120, starting from the sequence number seq_no of the packet. Added value
seq_no + (length-1)
The packet arrival time is recorded for a range having the end point as. If the range has already been recorded, data is added after the corresponding range is reduced or updated so as not to overlap. This is a case where duplicate packets are formed by TCP retransmission control. For example, when an ACK packet is discarded in the network, it is considered that the same data packet is retransmitted. When the retransmission packet is sent, the packet size of the original data packet may be different. For example, 100 to 200 bytes are received at time t1, 301 to 400 bytes are received at time t2, and 150 to 300 bytes are received at time t3. May be reduced as follows after receiving t3.

t1 100〜149バイト
t2 150〜300バイト
t3 301〜400バイト
ステップ104) さらに、受信量推定部130は、パケットカウンタN125(初期値0)を1増加させる。
t1 100 to 149 bytes t2 150 to 300 bytes t3 301 to 400 bytes Step 104) Further, the reception amount estimation unit 130 increments the packet counter N125 (initial value 0) by one.

ステップ105)受信量推定部130は、パケット間の差分gapが0の場合は、ステップ106に移行し、gap>0の場合はステップ107に移行し、gap<0の場合はステップ108に移行する。   Step 105) The reception amount estimation unit 130 proceeds to Step 106 when the difference gap between packets is 0, proceeds to Step 107 when gap> 0, and proceeds to Step 108 when gap <0. .

ステップ106) メモリ(図示せず)の受信した最大のバイト数latest_dataを、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加算した値(latest_data=seq_no+(length−1))に更新する。   Step 106) Value obtained by adding the value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet, the maximum number of bytes received in the memory (not shown) latest_data (latest_data = seq_no + (length−1) ).

ステップ107) あるパケットの到着前にロスや順序逆転等で受信端末20に未達のパケットがある状態を示す、パケット間の差分gapが正の場合(gap>0)には、ギャップリストG121に、受信した最大のバイト数latest_data+1を始点とし、当該パケットのシーケンス番号seq_noから1を引いた値を終点とした範囲を追加する。受信した最大バイト数latest_dataが1500であり、当該パケットのシーケンス番号seq_noが2000であるとき、図6のように更新される。   Step 107) If the gap gap between packets is positive (gap> 0), indicating that there is a packet that has not reached the receiving terminal 20 due to loss, order reversal, or the like before arrival of a packet, the gap list G121 is entered. Then, a range with the maximum number of received bytes latest_data + 1 as the start point and the value obtained by subtracting 1 from the sequence number seq_no of the packet as an end point is added. When the received maximum number of bytes latest_data is 1500 and the sequence number seq_no of the packet is 2000, it is updated as shown in FIG.

ステップ108) パケットロスが発生し、当該パケットが再送された状態を示す、パケット間の差分gapが負(gap<0)であり、かつ、当該パケットのシーケンス番号seq_noがギャップリストG121に含まれている場合は、ステップ109に移行し、そうでない場合はステップ110に移行する。   Step 108) When packet loss occurs and the packet is retransmitted, the gap gap between the packets is negative (gap <0), and the sequence number seq_no of the packet is included in the gap list G121 If yes, the process goes to Step 109; otherwise, the process goes to Step 110.

ステップ109) ギャップリストG121から、当該パケットのシーケンス番号seq_noを始点とし、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲を削除する。   Step 109) From the gap list G121, delete the range starting from the sequence number seq_no of the packet and ending with a value obtained by adding 1 to the sequence number seq_no of the packet from the packet length length of the packet.

ステップ110) パケットロスが発生し、当該パケットが再送対象になっており、上記のステップ109の処理を通ったが、下流で再びロスとなった場合、つまり、パケット間の差分gapが負(gap<0)であり、かつ、当該パケットのシーケンス番号seq_noがギャップリストG121に含まれていない場合であり、かつ、当該パケットのシーケンス番号seq_noが、これまでに受信確認されたACKパケットの最大のシーケンス番号latest_ack_noよりも大きい場合は、ステップ111に移行し、そうでない場合は、処理を終了する。   Step 110) When packet loss has occurred and the packet is to be retransmitted and passed through the processing of Step 109 above, but lost again downstream, that is, the difference gap between packets is negative (gap <0), and the sequence number seq_no of the packet is not included in the gap list G121, and the maximum sequence of the ACK packet whose reception has been confirmed so far is the sequence number seq_no of the packet. If it is greater than the number latest_ack_no, the process proceeds to step 111, and if not, the process ends.

ステップ111) 当該パケットのシーケンス番号seq_noが、記憶部120内の受信確認リストS123に含まれていない場合、当該パケットは再送パケットであると判断し、ステップ104で増加させたパケットカウンタNを1減少させ(N=N−1)、再送パケットをロス率の計算から除外してもよい。   Step 111) If the sequence number seq_no of the packet is not included in the reception confirmation list S123 in the storage unit 120, it is determined that the packet is a retransmission packet, and the packet counter N increased in Step 104 is decreased by 1. (N = N−1), and retransmission packets may be excluded from the loss rate calculation.

ステップ121) ステップ101において、受信量推定部130は、パケットデータ記憶部124を参照し、取得したパケットがACKパケット(端末から配信サーバへ送信)の場合は、受信確認リストS123のこれまでに受信確認されたACKパケットの最大のシーケンス番号latest_ack_noを当該ACKパケットの受信確認番号から1減算した値とし更新する。   Step 121) In step 101, the reception amount estimation unit 130 refers to the packet data storage unit 124. If the acquired packet is an ACK packet (transmitted from the terminal to the distribution server), the reception confirmation list S123 has received it so far. The maximum sequence number latest_ack_no of the confirmed ACK packet is updated to a value obtained by subtracting 1 from the reception confirmation number of the ACK packet.

ステップ122) 当該ACKパケットにselective ACK(SACK) が含まれている場合には、ステップ123に移行し、含まれていない場合は当該処理を終了する。   Step 122) If selective ACK (SACK) is included in the ACK packet, the process proceeds to step 123, and if not included, the process is terminated.

ステップ123) 部分受信確認された範囲(始点と終点のシーケンス番号)を受信確認リストS123に追加する。   Step 123) The range (start and end sequence numbers) for which partial reception has been confirmed is added to the reception confirmation list S123.

ステップ124) パケット到着リストR122から、これまでに受信確認された最大のシーケンス番号latest_ack_no以下の範囲にあるすべてのデータが到着したとみなし、パケット到着リストR122中の各データの通過時刻が記録されていない場合は、ステップ125に移行し、記録されている場合は当該処理を終了する。   Step 124) From the packet arrival list R122, it is considered that all the data within the range of the maximum sequence number latest_ack_no confirmed so far has arrived, and the transit time of each data in the packet arrival list R122 is recorded. If not, the process proceeds to step 125, and if it is recorded, the process ends.

ステップ125) 当該ACKパケットが到着を確認したデータの通過時刻として、パケット到着リストR122に記録する。   Step 125) Record in the packet arrival list R122 as the passage time of the data for which the arrival of the ACK packet is confirmed.

また、パケット到着リストR122の到着時刻を、記録されているデータパケットの通過時刻と当該ACKパケットの平均値とし、前記端末とのネットワーク遅延を簡易に補正してもよい。   Further, the arrival time of the packet arrival list R122 may be the average value of the recorded data packet transit time and the ACK packet, and the network delay with the terminal may be simply corrected.

なお、パケットロス率推定部140のパケットロス率の計算は、パケットロスが発生した上記のステップ108、ステップ111において行ってもよいし、一連のフローが終了した後で行ってもよい。   The packet loss rate calculation by the packet loss rate estimation unit 140 may be performed in the above-described step 108 and step 111 where the packet loss has occurred, or may be performed after a series of flows is completed.

各パケットの取得時に上記の手続きを踏むことにより、データパケットおよびACKパケットを用いて受信量推定を行う。具体的には、最終的なパケット到着リストR122の内容を出力する。   The reception amount is estimated using the data packet and the ACK packet by following the above procedure when acquiring each packet. Specifically, the contents of the final packet arrival list R122 are output.

[第2の実施の形態]
本実施の形態では、データパケットを用いて推定を行う例を説明する。
[Second Embodiment]
In this embodiment, an example in which estimation is performed using a data packet will be described.

図7は、本発明の第2の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。   FIG. 7 is a flowchart of the operation of the content reception amount estimation apparatus in the second embodiment of the present invention.

以下、図2、図3の構成に基づいて説明する。   Hereinafter, a description will be given based on the configurations of FIGS. 2 and 3.

パケット情報取得部110において、配信サーバ10から送信されるデータパケット取得し、パケットデータ記憶部124に格納し、以下の処理を行う。   The packet information acquisition unit 110 acquires a data packet transmitted from the distribution server 10, stores it in the packet data storage unit 124, and performs the following processing.

ステップ201) パケット情報取得部110において、取得したパケットがデータパケットの場合には、ステップ202に移行し、それ以外のパケットである場合には、当該処理はスルーする。   Step 201) In the packet information acquisition unit 110, if the acquired packet is a data packet, the process proceeds to step 202. If the acquired packet is any other packet, the process passes through.

ステップ202) パケット情報取得部110は、配信サーバ10から送信されたデータパケットをパケットデータ記憶部124に格納し、受信量推定部130は、ギャップリストG121のこれまでに連続して受信できたデータ範囲の最大値と、パケットデータ記憶部124の次に新たに取得したパケットのデータ範囲の先頭のバイト数との差分(パケット間の差分gap)を求める。具体的には、差分gapは、パケットデータ記憶部124に格納されている新たに取得したパケットのシーケンス番号seq_noからメモリ(図示せず)に格納されている受信した最大のバイト数latest_dataを減算し、1を引いた値(gap=seq_no−latest_data−1)として計算する。   Step 202) The packet information acquisition unit 110 stores the data packet transmitted from the distribution server 10 in the packet data storage unit 124, and the reception amount estimation unit 130 receives the data that has been continuously received in the gap list G121 so far. A difference (difference gap between packets) between the maximum value of the range and the number of leading bytes of the data range of the packet newly acquired next to the packet data storage unit 124 is obtained. Specifically, the difference gap subtracts the received maximum number of bytes latest_data stored in a memory (not shown) from the sequence number seq_no of a newly acquired packet stored in the packet data storage unit 124. It is calculated as a value obtained by subtracting 1 (gap = seq_no−latest_data−1).

ステップ203) また、受信量推定部130は、パケット到着リストR122に、当該パケットのシーケンス番号seq_noを始点とし、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲に対して、当該パケット到着時刻を記録する。例えば、シーケンス番号が1000byteで、パケット長が500byteのパケットを時刻t1に受信したとするとき、始点が1000byte、終点が1500byteの範囲に対して対応する時刻t1をパケット到着リストR122に記録する。すでに前記範囲が記録されている場合には、該当する範囲を重複がないように縮小または削除の更新をしたうえでデータをパケット到着リストR122に追加する。   Step 203) Also, the reception amount estimation unit 130 adds the value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet, starting from the sequence number seq_no of the packet, in the packet arrival list R122 The packet arrival time is recorded for a range having the end point as. For example, when a packet having a sequence number of 1000 bytes and a packet length of 500 bytes is received at time t1, the time t1 corresponding to the range where the start point is 1000 bytes and the end point is 1500 bytes is recorded in the packet arrival list R122. If the range has already been recorded, the corresponding range is reduced or deleted so as not to overlap, and data is added to the packet arrival list R122.

ステップ204) 受信量推定部130は、さらにパケットカウンタN(初期値0)を1増加させる。   Step 204) The reception amount estimation unit 130 further increases the packet counter N (initial value 0) by one.

ステップ205) ステップ202で求められたパケット間の差分gapが0の場合は、ステップ206に移行し、gap>0の場合はステップ207に移行し、gap<0の場合はステップ208に移行する。   Step 205) If the gap gap between the packets obtained in step 202 is 0, the process proceeds to step 206. If gap> 0, the process proceeds to step 207. If gap <0, the process proceeds to step 208.

ステップ206) 受信量推定部130は、受信した最大のバイト数latest_dataを、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加算した値に更新する(latest_data=seq_no+(length−1)。   Step 206) The reception amount estimation unit 130 updates the received maximum number of bytes latest_data to a value obtained by adding the value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet (latest_data = seq_no + (length -1).

ステップ207) 受信量推定部130は、gap>0の場合は、ギャップリストG121に、受信した最大のバイト数latest_data+1を始点とし、当該パケットのシーケンス番号seq_noから1を引いた値を終点とした範囲を追加する。例えば、latest_dataを1500byteとし、受信した当該パケットのシーケンス番号が2000byteであった場合には、始点が1501byte,終点が1999byteの範囲をギャップリストG121に記録する。   Step 207) When gap> 0, the reception amount estimation unit 130 sets the maximum number of received bytes latest_data + 1 as the start point in the gap list G121, and the value obtained by subtracting 1 from the sequence number seq_no of the packet as the end point Add the selected range. For example, when latest_data is 1500 bytes and the sequence number of the received packet is 2000 bytes, the range where the start point is 1501 bytes and the end point is 1999 bytes is recorded in the gap list G121.

ステップ208) 受信量推定部130は、パケット間の差分gapが負であり、かつ、当該パケットのシーケンス番号seq_noがギャップリストGに含まれている場合は、ステップ209に移行し、シーケンス番号seq_noがギャップリストG121に含まれていない場合はステップ210に移行する。   Step 208) If the gap gap between the packets is negative and the sequence number seq_no of the packet is included in the gap list G, the reception amount estimation unit 130 proceeds to Step 209, and the sequence number seq_no is If it is not included in the gap list G121, the process proceeds to step 210.

ステップ209) 受信量推定部130は、ギャップリストG121から、当該パケットのシーケンス番号seq_noを始点とし、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲を削除する。   Step 209) From the gap list G121, the reception amount estimation unit 130 uses the sequence number seq_no of the packet as the start point, and adds the value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet as the end point Delete the range.

ステップ210) 受信量推定部130は、パケット間の差分gapが負であり、かつ、当該パケットのシーケンス番号seq_noがギャップリストG121に含まれていない場合、当該パケットは再送パケットであると判断し、ステップ204で増加させたパケットカウンタNを1減少させ(N=N−1)、再送パケットをロス率の計算から除外してもよい。   Step 210) When the gap gap between packets is negative and the sequence number seq_no of the packet is not included in the gap list G121, the reception amount estimation unit 130 determines that the packet is a retransmission packet, The packet counter N increased in step 204 may be decreased by 1 (N = N−1), and the retransmitted packet may be excluded from the loss rate calculation.

なお、パケットロス率推定部140のパケットロス率の計算は、パケットロスが発生した上記のステップ208、ステップ210において行ってもよいし、一連のフローが終了した後で行ってもよい。   The packet loss rate calculation by the packet loss rate estimation unit 140 may be performed in the above-described step 208 and step 210 where the packet loss has occurred, or may be performed after a series of flows is completed.

各パケットの取得時に上記の手続きを踏むことにより、データパケットを用いた受信量推定として、最終的なパケット到着リストR122の値を出力する。   By performing the above procedure when acquiring each packet, the final packet arrival list R122 value is output as the reception amount estimation using the data packet.

[第3の実施の形態]
本実施の形態では、パケット情報取得部110において、配信サーバ10から送信されるデータパケット及び受信端末20から送信されるACKパケットを取得して受信量の推定を行う場合を説明する。
[Third Embodiment]
In the present embodiment, a case will be described in which the packet information acquisition unit 110 acquires a data packet transmitted from the distribution server 10 and an ACK packet transmitted from the receiving terminal 20 to estimate the reception amount.

ステップ301) パケット情報取得部110は、取得したパケットのデータをパケットデータ記憶部124に格納する。取得したパケットがデータパケットであれば、ステップ302に移行し、ACKパケットであれば、ステップ321に移行する。   Step 301) The packet information acquisition unit 110 stores the acquired packet data in the packet data storage unit 124. If the acquired packet is a data packet, the process proceeds to step 302, and if it is an ACK packet, the process proceeds to step 321.

ステップ302) 受信量推定部130は、メモリ(図示せず)に格納されている、これまでに連続して受信できたデータ範囲の最大値と、次に新たに取得したパケットのデータ範囲の先頭のバイト数の差分(パケット間の差分gap)を求める。gapは、当該パケットのシーケンス番号seq_noから受信した最大のバイト数latest_dataを減算し、1を引いた値として計算する。   Step 302) The reception amount estimation unit 130 stores the maximum value of the data range that has been stored continuously in the memory (not shown), and the start of the data range of the next newly acquired packet. Find the difference in the number of bytes (difference gap between packets). The gap is calculated as a value obtained by subtracting the maximum number of received bytes last_data from the sequence number seq_no of the packet and subtracting 1.

ステップ303) また、受信料推定部130は、パケット到着リストR122に、当該パケットのシーケンス番号seq_noを始点とし、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲に対して、当該パケット到着時刻を記録する。すでに前記範囲が記録されている場合には、該当する範囲を重複がないように縮小または削除の更新をしたうえでデータを追加する。   Step 303) Also, the reception fee estimation unit 130 adds the value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet, starting from the sequence number seq_no of the packet, in the packet arrival list R122 The packet arrival time is recorded for a range having the end point as. If the range has already been recorded, data is added after the corresponding range is reduced or deleted so as not to overlap.

ステップ304) さらにパケットカウンタN(初期値0)を1増加させる(N=N+1)。   Step 304) Further, the packet counter N (initial value 0) is incremented by 1 (N = N + 1).

ステップ305) パケット間の差分gapが0の場合はステップ306に移行し、gap>0の場合はステップ307に移行し、gap<0の場合はステップ308に移行する。   Step 305) If the gap difference between packets is 0, the process proceeds to step 306. If gap> 0, the process proceeds to step 307. If gap <0, the process proceeds to step 308.

ステップ306) gap=0の場合は、受信した最大のバイト数latest_dataを、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加算した値に更新する。   Step 306) When gap = 0, the received maximum number of bytes latest_data is updated to a value obtained by adding a value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet.

ステップ307) パケット間の差分がgap>0の場合、ギャップリストG121に、受信した最大のバイト数latest_data+1を始点とし、当該パケットのシーケンス番号seq_noから1を引いた値を終点とした範囲を追加する。   Step 307) If the difference between packets is gap> 0, the gap list G121 has a range in which the maximum number of received bytes latest_data + 1 is the starting point, and the value obtained by subtracting 1 from the sequence number seq_no of the packet is the end point. to add.

ステップ308) パケット間の差分がgap<0であり、かつ、当該パケットのシーケンス番号seq_noがギャップリストGに含まれている場合は、ステップ309に移行し、含まれていない場合はステップ310に移行する。   Step 308) If the difference between packets is gap <0 and the sequence number seq_no of the packet is included in the gap list G, the process proceeds to Step 309. Otherwise, the process proceeds to Step 310. To do.

ステップ309) 上流のネットワーク起きたパケットロスのカウンタloss_Aを1パケット増加させ、ギャップリストG121から、当該パケットのシーケンス番号seq_noを始点とし、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲を削除する。 Step 309) The packet loss counter loss_A that has occurred in the upstream network is incremented by 1 packet, and from the gap list G121, the sequence number seq_no of the packet is the starting point, and the packet sequence length seq_no is 1 to the packet length length of the packet. Delete the range whose end point is the sum of the subtracted values.

ステップ310) パケット間の差分gapが負であり(gap<0)、かつ、当該パケットのシーケンス番号seq_noがギャップリストG121に含まれていない場合であり、かつ、当該パケットのシーケンス番号seq_noが、これまでに受信確認された最大のシーケンス番号latest_ack_noよりも大きい場合は、ステップ311に移行する。それ以外は処理を行わない。この状況は、パケットロスが発生し、再送対象となっており、ステップ309の処理を行ったが、下流のネットワークで再びパケットロスとなった場合である。   Step 310) The difference gap between packets is negative (gap <0), the sequence number seq_no of the packet is not included in the gap list G121, and the sequence number seq_no of the packet is If it is larger than the maximum sequence number latest_ack_no confirmed to be received until then, the process proceeds to step 311. Otherwise, no processing is performed. This situation is a case where a packet loss has occurred and is subject to retransmission, and the processing of step 309 has been performed, but the packet loss has occurred again in the downstream network.

ステップ311) 当該パケットのシーケンス番号seq_noが受信確認リストS123に含まれていない場合、下流のネットワークのパケットロスカウンタloss_Bを1パケット増加させる。また、当該パケットは再送パケットであると判断し、ステップ304で増加させたパケットカウンタを1減少させ、再送パケットをロス率の計算から除外してもよい。   Step 311) When the sequence number seq_no of the packet is not included in the reception confirmation list S123, the packet loss counter loss_B of the downstream network is incremented by one packet. Further, it may be determined that the packet is a retransmission packet, the packet counter increased in step 304 may be decreased by 1, and the retransmission packet may be excluded from the loss rate calculation.

ステップ321) また、取得したパケットがACKパケット(端末から配信サーバへ送信)の場合は、受信量推定部130は、これまでに受信確認された最大のシーケンス番号latest_ack_noを当該ACKパケットの受信確認番号から1減算した値とし更新する。   Step 321) If the acquired packet is an ACK packet (transmitted from the terminal to the distribution server), the reception amount estimation unit 130 sets the maximum sequence number latest_ack_no confirmed so far to the reception confirmation number of the ACK packet. The value is updated by subtracting 1 from.

ステップ322) 当該ACKパケットにSACKが含まれている場合には、ステップ323に移行し、含まれていない場合は、処理を終了する。   Step 322) When the SACK is included in the ACK packet, the process proceeds to Step 323, and when it is not included, the process is terminated.

ステップ323) 受信量推定部130は、部分受信確認された範囲(始点と終点のシーケンス番号)を受信確認リストS123に追加する。   Step 323) The reception amount estimation unit 130 adds the range (start point and end point sequence numbers) for which partial reception has been confirmed to the reception confirmation list S123.

ステップ324) パケット到着リストR122から、これまでに受信確認された最大のシーケンス番号latest_ack_no以下の範囲にあるすべてのデータが到着したとみなし、パケット到着リストR122中の各データの通過時刻が記録されていない場合は、ステップ325に移行する。   Step 324) From the packet arrival list R122, it is considered that all data within the range below the maximum sequence number latest_ack_no confirmed to be received has arrived, and the transit time of each data in the packet arrival list R122 is recorded. If not, the process proceeds to step 325.

ステップ325) 当該ACKパケットが到着を確認したデータの到着時刻としてパケット到着リストR122に記録する。
上記のパケットロス率は、各々以下で与えられる。パケットロス率推定部140は、上記のステップ309において、パケット情報取得部110よりサーバ側のネットワークにおけるパケットロス率を、カウンタloss_AをパケットカウントNで割った値とし、パケット情報取得部140より端末側のネットワークにおけるパケットロス率は、ステップ311において、loss_BをパケットカウントNで割った値とする。
Step 325) The arrival time of the data for which the arrival of the ACK packet is confirmed is recorded in the packet arrival list R122.
The above packet loss rates are given below respectively. In step 309, the packet loss rate estimation unit 140 sets the packet loss rate in the network on the server side from the packet information acquisition unit 110 to a value obtained by dividing the counter loss_A by the packet count N, and from the packet information acquisition unit 140 to the terminal side The packet loss rate in the network is the value obtained by dividing loss_B by the packet count N in step 311.

なお、パケットロス率推定部140のパケットロス率の計算は、パケットロスが発生した上記のステップ309、ステップ311において行ってもよいし、一連のフローが終了した後で行ってもよい。   The packet loss rate calculation by the packet loss rate estimator 140 may be performed in the above-described step 309 and step 311 in which the packet loss has occurred, or may be performed after a series of flows is completed.

各パケットの取得時に上記の手続きを踏むことにより、データパケット及びACKパケットを用いた受信量推定として、最終的なパケット到着リストR122の値を出力する。   By performing the above procedure when each packet is acquired, the final packet arrival list R122 value is output as the reception amount estimation using the data packet and the ACK packet.

[第4の実施の形態]
本実施の形態では、パケット情報取得部110において、配信サーバ10から送信されるデータパケットを用いて受信量を推定する場合を説明する。
[Fourth Embodiment]
In the present embodiment, a case will be described in which the packet information acquisition unit 110 estimates a reception amount using a data packet transmitted from the distribution server 10.

図9は、本発明の第4の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。   FIG. 9 is a flowchart of the operation of the content reception amount estimation apparatus in the fourth embodiment of the present invention.

ステップ401) パケット情報取得部110は、取得したパケット情報が配信サーバ10から取得したデータパケットの場合には、ステップ402に移行し、その他のパケットの場合は当該処理をスルーする。   Step 401) When the acquired packet information is a data packet acquired from the distribution server 10, the packet information acquisition unit 110 proceeds to Step 402, and in the case of other packets, the packet information acquisition unit 110 passes the processing.

ステップ402) 受信量推定部130は、メモリ(図示せず)に格納されているこれまでに連続して受信できたデータ範囲の最大値と、新たに取得したパケットのデータ範囲の先頭のバイト数の差分(gap)を計算する。パケット間の差分gapは、当該パケットのシーケンス番号seq_noから受信した最大のバイト数latest_dataを減算し、1を引いた値として計算する。   Step 402) The reception amount estimation unit 130 stores the maximum value of the data range that has been stored continuously in the memory (not shown) and the number of first bytes of the data range of the newly acquired packet. The difference (gap) is calculated. The difference gap between packets is calculated as a value obtained by subtracting the maximum number of received bytes latest_data from the sequence number seq_no of the packet and subtracting 1.

ステップ403) また、パケット到着リストR122に、当該パケットのシーケンス番号seq_noを始点とし、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲に対して、当該パケット到着時刻を記録する。すでに前記範囲が記録されている場合には、該当する範囲を重複がないように縮小または削除の更新をしたうえでデータを追加する。   Step 403) Further, in the packet arrival list R122, a range in which the sequence number seq_no of the packet is the starting point, and the value obtained by adding the value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet is the end point The packet arrival time is recorded. If the range has already been recorded, data is added after the corresponding range is reduced or deleted so as not to overlap.

ステップ404) さらにパケットカウンタN(初期値0)を1増加させる。   Step 404) Further, the packet counter N (initial value 0) is incremented by 1.

ステップ405) パケット間の差分gapが0の場合は、ステップ406に移行し、gap>0の場合は、ステップ407に移行し、gap<0の場合は、ステップ408に移行する。   Step 405) If the difference gap between the packets is 0, the process proceeds to Step 406. If gap> 0, the process proceeds to Step 407. If gap <0, the process proceeds to Step 408.

ステップ406) gap=0の場合は、受信した最大のバイト数latest_dataを、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加算した値に更新する。   Step 406) When gap = 0, the received maximum number of bytes latest_data is updated to a value obtained by adding a value obtained by subtracting 1 from the packet length length of the packet to the sequence number seq_no of the packet.

ステップ407) gap>0の場合、ギャップリストGに、受信した最大のバイト数latest_data+1を始点とし、当該パケットのシーケンス番号seq_noから1を引いた値を終点とした範囲を追加する。   Step 407) If gap> 0, add a range to the gap list G starting from the received maximum number of bytes latest_data + 1 and starting from a value obtained by subtracting 1 from the sequence number seq_no of the packet.

ステップ408) gap<0の場合、当該パケットのシーケンス番号seq_noがギャップリストG121に含まれている場合はステップ409に移行し、含まれていない場合は、ステップ410に移行する。   Step 408) When gap <0, if the sequence number seq_no of the packet is included in the gap list G121, the process proceeds to Step 409. Otherwise, the process proceeds to Step 410.

ステップ409) ギャップリストG121に含まれている場合は、loss_Aを1パケット増加させ、ギャップリストG121から、当該パケットのシーケンス番号seq_noを始点とし、当該パケットのシーケンス番号seq_noに当該パケットのパケット長lengthから1減算した値を加えた値を終点とする範囲をから削除する。   Step 409) If it is included in the gap list G121, the loss_A is increased by one packet, and from the gap list G121, the sequence number seq_no of the packet is used as the starting point, and the sequence number seq_no of the packet is calculated from the packet length length of the packet. Delete the range that ends with the value obtained by adding 1 subtracted value.

ステップ410) ギャップリストG121に含まれていない場合は、loss_Bを1パケット増加させる.また、当該パケットは再送パケットであると判断し、手順1で増加させたパケットカウンタNを1減少させ、再送パケットをロス率の計算から除外してもよい。   Step 410) If it is not included in the gap list G121, loss_B is increased by one packet. Further, it may be determined that the packet is a retransmission packet, the packet counter N increased in procedure 1 may be decreased by 1, and the retransmission packet may be excluded from the loss rate calculation.

パケットロス率は、パケットロス率推定部140により各々以下で与えられる。パケット情報取得部110よりサーバ側のネットワークにおけるパケットロス率は、loss_AをパケットカウンタNで割った値とし、パケット情報取得部より端末側のネットワークにおけるパケットロス率は、loss_BをパケットカウンタNで割った値で算出する。各パケットロス率は、パケット情報取得の都度、値を更新してもよいし、フローの完了後に出力してもよい。   The packet loss rate is given by the packet loss rate estimation unit 140 as follows. The packet loss rate in the network on the server side from the packet information acquisition unit 110 is obtained by dividing loss_A by the packet counter N, and the packet loss rate in the network on the terminal side from the packet information acquisition unit is obtained by dividing loss_B by the packet counter N. Calculate by value. Each packet loss rate may be updated each time packet information is acquired, or may be output after the flow is completed.

各パケットの取得時に上記の手続きを踏むことにより、データパケット及びACKパケットを用いた受信量推定として、最終的なパケット到着リストR122の値とパケットロス率推定部140で求められたパケットロス率を出力する。   By performing the above procedure at the time of obtaining each packet, the value of the final packet arrival list R122 and the packet loss rate obtained by the packet loss rate estimator 140 are used as the reception amount estimation using the data packet and the ACK packet. Output.

[第5の実施の形態]
上記の第1〜第4の実施の形態では、各パケットの状態を保持し、多くのメモリを使用するため、本実施の形態では、フローの終了後に省メモリで動作可能な受信量の推定方法を述べる。
[Fifth Embodiment]
In the first to fourth embodiments described above, the state of each packet is held and a large amount of memory is used. Therefore, in this embodiment, a reception amount estimation method that can operate in a memory-saving manner after the flow is completed. To state.

以下の説明では、パケット情報取得部110において、配信サーバ10から送信された、i番目のデータパケットの通過時刻t_iおよびシーケンス番号x_iを取得し記憶部120の、パケット通過時刻記録部126に格納する。ここで、シーケンス番号とは、TCPコネクションの開始時の値をもとにした相対値を指す。   In the following description, the packet information acquisition unit 110 acquires the passage time t_i and the sequence number x_i of the i-th data packet transmitted from the distribution server 10 and stores them in the packet passage time recording unit 126 of the storage unit 120. . Here, the sequence number indicates a relative value based on the value at the start of the TCP connection.

図10は、本発明の第5の実施の形態におけるコンテンツ受信量推定装置の動作のフローチャートである。   FIG. 10 is a flowchart of the operation of the content reception amount estimation apparatus in the fifth embodiment of the present invention.

ステップ501) パケット情報取得部110において、データパケットを取得した場合は、以下の処理を行い、それ以外のパケットを取得した場合は当該処理をスルーする。   Step 501) In the packet information acquisition unit 110, when a data packet is acquired, the following processing is performed, and when other packets are acquired, the processing is passed.

ステップ502) パケット情報取得部110は、データパケットを取得すると、パケットの通信時刻及びシーケンス番号をパケット通過時刻記録部126に記録する。   Step 502) When acquiring the data packet, the packet information acquisition unit 110 records the communication time and sequence number of the packet in the packet passage time recording unit 126.

ステップ503) フローが終了するまで上記の処理を繰り返し、フローが終了すればステップ504に移行する。   Step 503) The above processing is repeated until the flow ends, and when the flow ends, the process proceeds to Step 504.

ステップ504) フローの終了後、受信量推定部130は、パケット通過時刻記録部126に格納されている最大のシーケンス番号を取得する。その後、パケット通過時刻記録部の時刻が新しい順に以下の処理を行う。   Step 504) After the flow is completed, the reception amount estimation unit 130 acquires the maximum sequence number stored in the packet passage time recording unit 126. Thereafter, the following processing is performed in order from the newest time of the packet passage time recording unit.

フローの最大のシーケンス番号をメモリ(図示せず)内の変数last_seqの初期値とする。フローのシーケンス番号が、32ビットの最大値(0xFFFFFFFF)に達し、0に戻り、繰り返し使用されている際には、前後のパケットのシーケンス番号をもとに、繰り返し使用されているかを判断し、新たに使用されていない番号を割り当てる。以下の処理において、シーケンス番号は、この新たに割り当てた循環していない番号を指すものとする。 The maximum sequence number of the flow is set as the initial value of the variable last_seq in the memory (not shown). When the flow sequence number reaches the maximum value of 32 bits (0xFFFFFFFF), returns to 0, and is used repeatedly, it is determined whether it is used repeatedly based on the sequence numbers of the preceding and following packets. Assign a new unused number. In the following processing, the sequence number indicates the newly assigned non-circulating number.

ステップ505) 受信量推定部130は、パケット通過時刻記録部126からパケットの情報を読み出す。   Step 505) The reception amount estimation unit 130 reads packet information from the packet passage time recording unit 126.

ステップ506) 読み出した当該パケットのシーケンス番号seq_iとlast_seqと比較し、last_seqがseq_iより大きい場合は、ステップ507に移行する。そうでない場合は、当該処理を終了する。   Step 506) The sequence numbers seq_i and last_seq of the read packet are compared. If last_seq is larger than seq_i, the process proceeds to Step 507. Otherwise, the process ends.

ステップ507) 当該パケットの到着時刻、シーケンス番号及びバイト量を受信量記録部127に格納する。   Step 507) The arrival time, sequence number and byte amount of the packet are stored in the reception amount recording unit 127.

ステップ508) フロー最大のシーケンス番号last_seqをseq_iに更新する。   Step 508) The sequence number last_seq with the largest flow is updated to seq_i.

ステップ509) 全パケットの処理が完了するまでステップ505以降の処理を繰り返す。   Step 509) Steps 505 and after are repeated until all packets have been processed.

ステップ510) 最後に、受信量記録部127に格納されたデータを時系列順に並び変えて(格納時と逆順にする)、受信量推定の結果を出力する。   Step 510) Finally, the data stored in the reception amount recording unit 127 is rearranged in chronological order (in the reverse order of the storage time), and the reception amount estimation result is output.

上記の図2に示すコンテンツ受信量推定装置の構成要素の動作をプログラムとして構築し、コンテンツ受信量推定装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。   The operation of the components of the content reception amount estimation device shown in FIG. 2 can be constructed as a program and installed in a computer used as the content reception amount estimation device for execution or distributed via a network. It is.

本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。   The present invention is not limited to the above-described embodiments, and various modifications and applications are possible within the scope of the claims.

10 配信サーバ
20 受信端末
100 コンテンツ受信量推定装置
110 パケット情報取得部
120 記憶部
130 受信量推定部
140 パケットロス率推定部
DESCRIPTION OF SYMBOLS 10 Distribution server 20 Receiving terminal 100 Content reception amount estimation apparatus 110 Packet information acquisition part 120 Storage part 130 Reception amount estimation part 140 Packet loss rate estimation part

Claims (5)

ネットワークを介してコンテンツデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、
前記ネットワークを介して前記配信サーバから送信されたデータパケットと、前記端末から受信を確認するために送信された受信確認応答パケットのパケット情報を取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、
前記記憶手段に格納された前記パケット情報の受信時刻、データ1バイト毎に1ずつ増えていくシーケンス番号、受信確認応答番号及びパケットサイズに加えて、取得可能な場合には、部分受信が確認された範囲の始点と終点のシーケンス番号である部分受信確認応答番号を用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、
を有し、
前記受信量推定手段は
続して受信したパケットのシーケンス番号から受信した最大のバイト数を減算した値から1減算し差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力する手段と、
前記コンテンツデータの送受信が完了した後に、前記記憶手段に格納された前記パケット情報の受信時刻、前記シーケンス番号、前記パケットサイズを用いて、最終のシーケンス番号と前記配信サーバから送信されたシーケンス番号を比較し、最終のシーケンス番号の方が大きい場合に、該シーケンス番号、パケットの到着時刻及びバイト量を受信量記憶手段に格納する処理をすべてのシーケンス番号について行い、最後に、該受信量記憶手段に格納されたデータを受信時刻の新しい順に並び替えて出力する手段と、
を含むことを特徴とするコンテンツ受信量推定装置。
In a system comprising a content data distribution server that distributes content data via a network and a terminal that receives the content data received from the distribution server, the received data amount of the content data at each time at the receiving terminal is estimated. A content reception amount estimation device,
A packet that acquires packet information of a data packet transmitted from the distribution server via the network and a reception confirmation response packet transmitted to confirm reception from the terminal, and stores the packet information together with the acquired time information in a storage unit Information acquisition means;
In addition to the reception time of the packet information stored in the storage means, the sequence number that increases by 1 for each byte of data, the reception confirmation response number, and the packet size, if it can be acquired, partial reception is confirmed. A reception amount estimation means for estimating the amount of content data received by the terminal at each time using a partial reception confirmation response number that is a sequence number of a start point and an end point of the range;
Have
The reception amount estimation means includes :
Calculates a difference from a value obtained by subtracting the maximum number of bytes received from the continuous to the sequence number of the received packet 1 subtraction to either state packet by said difference is normally received in time series, unreached It is determined whether there is a packet or a packet loss, the packet information is stored in the storage means according to each state, and the data amount of the packet that has finally arrived to determine the retransmission packet is Means for reading from the storage means and outputting in time series;
After the transmission / reception of the content data is completed, the final sequence number and the sequence number transmitted from the distribution server are obtained using the reception time of the packet information stored in the storage means, the sequence number, and the packet size. When the final sequence number is larger, the processing for storing the sequence number, the arrival time of the packet, and the byte amount in the received amount storage unit is performed for all the sequence numbers. Finally, the received amount storage unit Means for rearranging the data stored in the data in order of reception time, and outputting,
A content reception amount estimation apparatus comprising:
ネットワークを介してコンテンツデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、
前記ネットワークを介して前記配信サーバから送信されたデータパケットを取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、
前記記憶手段に格納された前記パケット情報の受信時刻、データ1バイト毎に1ずつ増えていくシーケンス番号、パケットサイズを用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、
を有し、
前記受信量推定手段は
続して受信したパケットのシーケンス番号から受信した最大のバイト数を減算した値から1減算し差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力する手段と、
前記コンテンツデータの送受信が完了した後に、前記記憶手段に格納された前記パケット情報の受信時刻、前記シーケンス番号、前記パケットサイズを用いて、最終のシーケンス番号と前記配信サーバから送信されたシーケンス番号を比較し、最終のシーケンス番号の方が大きい場合に、該シーケンス番号、パケットの到着時刻及びバイト量を受信量記憶手段に格納する処理をすべてのシーケンス番号について行い、最後に、該受信量記憶手段に格納されたデータを受信時刻の新しい順に並び替えて出力する手段と、
を含むことを特徴とするコンテンツ受信量推定装置。
In a system comprising a content data distribution server that distributes content data via a network and a terminal that receives the content data received from the distribution server, the received data amount of the content data at each time at the receiving terminal is estimated. A content reception amount estimation device,
A packet information acquisition means for acquiring a data packet transmitted from the distribution server via the network and storing it in a storage means together with the acquired time information;
The reception amount estimation for estimating the amount of content data received by the terminal at each time using the reception time of the packet information stored in the storage means, the sequence number increasing by one for each byte of data, and the packet size Means,
Have
The reception amount estimation means includes :
Calculates a difference from a value obtained by subtracting the maximum number of bytes received from the continuous to the sequence number of the received packet 1 subtraction to either state packet by said difference is normally received in time series, unreached It is determined whether there is a packet or a packet loss, the packet information is stored in the storage means according to each state, and the data amount of the packet that has finally arrived to determine the retransmission packet is Means for reading from the storage means and outputting in time series;
After the transmission / reception of the content data is completed, the final sequence number and the sequence number transmitted from the distribution server are obtained using the reception time of the packet information stored in the storage means, the sequence number, and the packet size. When the final sequence number is larger, the processing for storing the sequence number, the arrival time of the packet, and the byte amount in the received amount storage unit is performed for all the sequence numbers. Finally, the received amount storage unit Means for rearranging the data stored in the data in order of reception time, and outputting,
A content reception amount estimation apparatus comprising:
ネットワークを介してコンテンツデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、
前記ネットワークを介して前記配信サーバから送信されたデータパケットと、前記端末から受信を確認するために送信された受信確認応答パケットのパケット情報を取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、
前記記憶手段に格納された前記パケット情報の受信時刻、データ1バイト毎に1ずつ増えていくシーケンス番号、受信確認応答番号及びパケットサイズに加えて、取得可能な場合には、部分受信確認応答番号を用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、
前記パケット情報取得手段よりサーバ側のネットワークにおけるパケット廃棄率及び該パケット情報取得手段より前記端末側のネットワークにおけるパケット廃棄率を推定し、出力するパケット廃棄率推定手段と、
を有し、
前記受信量推定手段は
続して受信したパケットのシーケンス番号から受信した最大のバイト数を減算した値から1減算し差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力する手段と、
前記コンテンツデータの送受信が完了した後に、前記記憶手段に格納された前記パケット情報の受信時刻、前記シーケンス番号、前記パケットサイズを用いて、最終のシーケンス番号と前記配信サーバから送信されたシーケンス番号を比較し、最終のシーケンス番号の方が大きい場合に、該シーケンス番号、パケットの到着時刻及びバイト量を受信量記憶手段に格納する処理をすべてのシーケンス番号について行い、最後に、該受信量記憶手段に格納されたデータを受信時刻の新しい順に並び替えて出力する手段と、
を含むことを特徴とするコンテンツ受信量推定装置。
In a system comprising a content data distribution server that distributes content data via a network and a terminal that receives the content data received from the distribution server, the received data amount of the content data at each time at the receiving terminal is estimated. A content reception amount estimation device,
A packet that acquires packet information of a data packet transmitted from the distribution server via the network and a reception confirmation response packet transmitted to confirm reception from the terminal, and stores the packet information together with the acquired time information in a storage unit Information acquisition means;
In addition to the reception time of the packet information stored in the storage means, the sequence number incrementing by 1 for each byte of data, the reception confirmation response number, and the packet size, if possible, the partial reception confirmation response number Using the received amount estimating means for estimating the amount of content data received by the terminal at each time,
A packet discard rate estimation unit for estimating and outputting a packet discard rate in the network on the server side from the packet information acquisition unit and a packet discard rate in the network on the terminal side from the packet information acquisition unit;
Have
The reception amount estimation means includes :
Calculates a difference from a value obtained by subtracting the maximum number of bytes received from the continuous to the sequence number of the received packet 1 subtraction to either state packet by said difference is normally received in time series, unreached It is determined whether there is a packet or a packet loss, the packet information is stored in the storage means according to each state, and the data amount of the packet that has finally arrived to determine the retransmission packet is Means for reading from the storage means and outputting in time series;
After the transmission / reception of the content data is completed, the final sequence number and the sequence number transmitted from the distribution server are obtained using the reception time of the packet information stored in the storage means, the sequence number, and the packet size. When the final sequence number is larger, the processing for storing the sequence number, the arrival time of the packet, and the byte amount in the received amount storage unit is performed for all the sequence numbers. Finally, the received amount storage unit Means for rearranging the data stored in the data in order of reception time, and outputting,
A content reception amount estimation apparatus comprising:
ネットワークを介してコンテンツデータを配信するコンテンツデータの配信サーバと、該配信サーバから受信したコンテンツデータを受信する端末からなるシステムにおいて、該受信端末における各時刻のコンテンツデータの受信データ量の推定を行うコンテンツ受信量推定装置であって、
前記ネットワークを介して前記配信サーバから送信されたデータパケットを取得し、取得した時刻情報とともに記憶手段に格納するパケット情報取得手段と、
前記記憶手段に格納された前記パケット情報の受信時刻、データ1バイト毎に1ずつ増えていくシーケンス番号、パケットサイズを用いて、前記端末が各時刻に受信したコンテンツデータ量を推定する受信量推定手段と、
前記パケット情報取得手段よりサーバ側のネットワークにおけるパケット廃棄率及び該パケット情報取得手段より前記端末側のネットワークにおけるパケット廃棄率を求めるパケット廃棄率推定手段と、を有し、
前記受信量推定手段は
続して受信したパケットのシーケンス番号から受信した最大のバイト数を減算した値から1減算し差分を求め、該差分によりパケットが時系列に正常に受信している状態か、未達のパケットがある状態か、パケットロスがある状態かを判定し、各状態に応じてパケットの情報を該記憶手段に格納し、最終的に再送パケットを判定するために到着したパケットのデータ量を該記憶手段から読み出して時系列に出力する手段と、
前記コンテンツデータの送受信が完了した後に、前記記憶手段に格納された前記パケット情報の受信時刻、前記シーケンス番号、前記パケットサイズを用いて、最終のシーケンス番号と前記配信サーバから送信されたシーケンス番号を比較し、最終のシーケンス番号の方が大きい場合に、該シーケンス番号、パケットの到着時刻及びバイト量を受信量記憶手段に格納する処理をすべてのシーケンス番号について行い、最後に、該受信量記憶手段に格納されたデータを受信時刻の新しい順に並び替えて出力する手段と、
を含む
ことを特徴とするコンテンツ受信量推定装置。
In a system comprising a content data distribution server that distributes content data via a network and a terminal that receives the content data received from the distribution server, the received data amount of the content data at each time at the receiving terminal is estimated. A content reception amount estimation device,
A packet information acquisition means for acquiring a data packet transmitted from the distribution server via the network and storing it in a storage means together with the acquired time information;
The reception amount estimation for estimating the amount of content data received by the terminal at each time using the reception time of the packet information stored in the storage means, the sequence number increasing by one for each byte of data, and the packet size Means,
A packet discard rate estimating unit for obtaining a packet discard rate in the network on the server side from the packet information obtaining unit and a packet discard rate in the network on the terminal side from the packet information obtaining unit;
The reception amount estimation means includes :
Calculates a difference from a value obtained by subtracting the maximum number of bytes received from the continuous to the sequence number of the received packet 1 subtraction to either state packet by said difference is normally received in time series, unreached It is determined whether there is a packet or a packet loss, the packet information is stored in the storage means according to each state, and the data amount of the packet that has finally arrived to determine the retransmission packet is Means for reading from the storage means and outputting in time series;
After the transmission / reception of the content data is completed, the final sequence number and the sequence number transmitted from the distribution server are obtained using the reception time of the packet information stored in the storage means, the sequence number, and the packet size. When the final sequence number is larger, the processing for storing the sequence number, the arrival time of the packet, and the byte amount in the received amount storage unit is performed for all the sequence numbers. Finally, the received amount storage unit Means for rearranging the data stored in the data in order of reception time, and outputting,
A content reception amount estimation apparatus comprising:
コンピュータを、
請求項1乃至4のいずれか1項に記載のコンテンツ受信量推定装置の各手段として機能させるためのコンテンツ受信量推定プログラム。
Computer
The content reception amount estimation program for functioning as each means of the content reception amount estimation apparatus of any one of Claims 1 thru | or 4.
JP2011282032A 2011-12-22 2011-12-22 Content reception amount estimation apparatus and program Active JP5696032B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011282032A JP5696032B2 (en) 2011-12-22 2011-12-22 Content reception amount estimation apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011282032A JP5696032B2 (en) 2011-12-22 2011-12-22 Content reception amount estimation apparatus and program

Publications (2)

Publication Number Publication Date
JP2013132019A JP2013132019A (en) 2013-07-04
JP5696032B2 true JP5696032B2 (en) 2015-04-08

Family

ID=48909235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011282032A Active JP5696032B2 (en) 2011-12-22 2011-12-22 Content reception amount estimation apparatus and program

Country Status (1)

Country Link
JP (1) JP5696032B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5941853B2 (en) * 2013-02-12 2016-06-29 株式会社日立製作所 Packet communication method and apparatus
JP6053176B2 (en) * 2013-12-03 2016-12-27 日本電信電話株式会社 Video playback state estimation device, video playback state estimation method, and program
JP6363201B2 (en) * 2014-03-20 2018-07-25 テレフオンアクチーボラゲット エルエム エリクソン(パブル) Tunnel congestion policing

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4254555B2 (en) * 2004-01-23 2009-04-15 日本電信電話株式会社 Network quality single point observation type measurement method and apparatus
JP3931988B2 (en) * 2004-08-26 2007-06-20 日本電気株式会社 Network quality measuring method and measuring apparatus

Also Published As

Publication number Publication date
JP2013132019A (en) 2013-07-04

Similar Documents

Publication Publication Date Title
CN101356814B (en) Communication processing device, communication control method
JP3598110B2 (en) Data transmission method and apparatus
CN106341738B (en) Bandwidth calculation method, server side and system for streaming media network transmission
US6996624B1 (en) Reliable real-time transport protocol
US8442052B1 (en) Forward packet recovery
EP1397899B1 (en) Real-time packetization and retransmission in streaming applications
KR100975176B1 (en) Protocol, information processing system and method, information processing device and method, and recording medium
JP5780684B2 (en) Content reproduction information estimation apparatus, method, and program
WO2002005496A1 (en) Data communication system
JP5258938B2 (en) Communication device
US9781488B2 (en) Controlled adaptive rate switching system and method for media streaming over IP networks
US20170034589A1 (en) Adaptive profile switching system and method for media streaming over ip networks
JP5696032B2 (en) Content reception amount estimation apparatus and program
WO2014125680A1 (en) Packet communication method and device
JP5292444B2 (en) Packet loss rate estimation apparatus, method, and program
US7839844B2 (en) System and method for dynamically determining retransmit buffer time
JP5178568B2 (en) Transmission device and transmission control method
CA3001583C (en) Transport of time sensitive information using the internet
Ламри et al. Developing Al-ARQ module for automatic measurement of one-way data transmission delay
JP5246015B2 (en) Server and ACK reply method
JP2007053745A (en) Receiver and program
Mukherjee et al. Time-lined TCP: a transport protocol for delivery of streaming media over the internet
Oh et al. One-way delay estimation using packet intervals for efficient retransmission
Radovanovic et al. Improving TCP performance over last-hop wireless networks for live video delivery
Oh et al. Timer and sequence based packet loss detection scheme for efficient selective retransmission in DCCP

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20131004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140708

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140825

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150209

R150 Certificate of patent or registration of utility model

Ref document number: 5696032

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150