JP4793580B2 - Protocol type determination method, system and program thereof - Google Patents
Protocol type determination method, system and program thereof Download PDFInfo
- Publication number
- JP4793580B2 JP4793580B2 JP2006326707A JP2006326707A JP4793580B2 JP 4793580 B2 JP4793580 B2 JP 4793580B2 JP 2006326707 A JP2006326707 A JP 2006326707A JP 2006326707 A JP2006326707 A JP 2006326707A JP 4793580 B2 JP4793580 B2 JP 4793580B2
- Authority
- JP
- Japan
- Prior art keywords
- protocol
- probability
- packet
- protocol type
- index
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 34
- 238000005070 sampling Methods 0.000 claims description 131
- 238000004364 calculation method Methods 0.000 claims description 28
- 230000005540 biological transmission Effects 0.000 claims description 15
- 230000010365 information processing Effects 0.000 claims description 4
- 238000005259 measurement Methods 0.000 description 22
- 238000004891 communication Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 12
- 238000007619 statistical method Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Landscapes
- Communication Control (AREA)
Description
本発明はネットワークの品質を計測する技術に関し、特に、所定のサンプリング計測下においてパケットのプロトコルの種別を判定するプロトコル種別判別方法、そのシステム及びプログラムに関する。 The present invention relates to a technique for measuring the quality of a network, and more particularly to a protocol type determination method for determining the type of packet protocol under a predetermined sampling measurement, its system, and program.
現在のネットワークシステムでは、種々なプロトコルが存在している。例えば、代表的なプロトコルであるTCPをとってみても、さらに細かく見ると、TCP Tahoe、TCP Reno、TCP NewReno、TCP Vegas、High-Speed TCP、BIC-TCP、TCP-Areno、TCP-Westwood等の多くの種類(ここではTCPのversion)が存在している。 Various protocols exist in the current network system. For example, even if you take TCP, which is a representative protocol, if you look further, TCP Tahoe, TCP Reno, TCP New Reno, TCP Vegas, High-Speed TCP, BIC-TCP, TCP-Areno, TCP-Westwood, etc. There are many types (TCP version here).
このように多くの種類のプロトコルのパケットが流れているネットワークにおいて、Endホスト側では、どのようなプロトコルで通信を行っているかは自明である。 In such a network in which packets of many kinds of protocols flow, it is obvious on the End host side what protocol is used for communication.
しかしながら、ネットワーク中に流れるパケットの中身を観察するだけでは、プロトコルの種別を判断することは難しい。例えば、プロトコルがTCPの場合、輻輳制御のアルゴリズムは異なるが、パケットのヘッダフォーマットは同じであり、ヘッダフォーマットを確認するだけでは、TCPのversionは不明である。 However, it is difficult to determine the type of protocol only by observing the contents of packets flowing in the network. For example, when the protocol is TCP, the congestion control algorithm is different, but the header format of the packet is the same, and the TCP version is unknown only by checking the header format.
一方、プロトコルの種別をネットワークの品質管理に利用する場合、そのプロトコルの種別が重要となる。 On the other hand, when the protocol type is used for network quality management, the protocol type is important.
そこで、本発明は上記課題に鑑みて発明されたものであって、ネットワークに流れているパケットを計測することによって、パケットのプロトコルの判別を行うことができるプロトコル種別判別方法、そのシステム及びプログラムを提供することにある。 Accordingly, the present invention has been invented in view of the above problems, and provides a protocol type determination method, system and program for determining a packet protocol by measuring packets flowing in a network. It is to provide.
上記課題を解決する本発明は、ネットワークに流れるパケットのプロトコルの種別を判別するプロトコル種別判別方法であって、ネットワークに流れるパケットを所定のサンプリング確率で計測して、送信端末のウィンドウ幅の情報を表す指標を計算し、前記指標の統計情報に基づいて、パケットのプロトコルの種別を判別することを特徴とする。 The present invention for solving the above problems is a protocol type determination method for determining the protocol type of a packet flowing in a network, measuring a packet flowing in the network with a predetermined sampling probability, and obtaining window width information of a transmission terminal. An index to be expressed is calculated, and a packet protocol type is determined based on statistical information of the index.
上記課題を解決する本発明は、ネットワークに流れるパケットのプロトコルの種別を判別するプロトコル種別判別システムであって、ネットワークに流れるパケットを所定のサンプリング確率で計測して、送信端末のウィンドウ幅の情報を表す指標を計算する計算手段と、前記指標の統計情報に基づいて、パケットのプロトコルの種別を判別する判別手段とを有することを特徴とする。 The present invention for solving the above problems is a protocol type discrimination system for discriminating the type of a protocol of a packet flowing in a network, measuring a packet flowing in the network with a predetermined sampling probability, and obtaining window width information of a transmission terminal. And calculating means for calculating an index to be expressed, and determining means for determining the type of packet protocol based on statistical information of the index.
上記課題を解決する本発明は、ネットワークに流れるパケットのプロトコルの種別を判別するプログラムであって、ネットワークに流れるパケットを所定のサンプリング確率で計測して、送信端末のウィンドウ幅の情報を表す指標を計算する処理と、前記指標の統計情報に基づいて、パケットのプロトコルの種別を判別する処理とを情報処理装置に実行させることを特徴とする。 The present invention for solving the above-mentioned problems is a program for determining the protocol type of a packet flowing in the network, measuring a packet flowing in the network with a predetermined sampling probability, and indicating an index representing window width information of the transmitting terminal. The information processing apparatus is configured to cause the information processing apparatus to execute a calculation process and a process of determining a packet protocol type based on statistical information of the index.
本発明によれば、パケットを解析するだけでは、プロトコルの種別を判別することができないようなものであっても、ネットワークを流れるパケットを計測して得られたACK重複度、又は、シーケンス番号逆転度を用いて、ネットワークを流れるパケットのプロトコルの判定を行うことができる。何故なら、本発明は、ACK重複度又はシーケンス番号逆転度のヒストグラムは、プロトコルの種別毎に特有な分布を持つことに着目し、それを利用してプロトコルの判定を行うように構成しているからである。 According to the present invention, the ACK duplication degree obtained by measuring the packet flowing through the network or the sequence number inversion even if the protocol type cannot be determined only by analyzing the packet. By using the degree, it is possible to determine the protocol of the packet flowing through the network. This is because the present invention focuses on the fact that the histogram of the ACK duplication degree or sequence number inversion degree has a distribution specific to each type of protocol, and is configured to make a protocol determination by using this distribution. Because.
<第1の実施の形態>
本発明の第1の実施の形態を説明する。
<First Embodiment>
A first embodiment of the present invention will be described.
本発明の特徴は、送信端末のウィンドウ幅の情報を表す指標の統計情報が、プロトコルの種別毎に特有な特徴を持つことに着目し、ネットワークに流れるパケットを所定のサンプリング確率(フルサンプリングも含む)で計測することにより、送信端末のウィンドウ幅の情報を表す指標の統計情報を計算し、この指標の統計情報に基づいて、パケットのプロトコルの種別を判別することを特徴とする。 A feature of the present invention is that the statistical information of the index representing the window width information of the transmitting terminal has a characteristic characteristic for each protocol type, and packets flowing through the network have a predetermined sampling probability (including full sampling). ) To calculate the statistical information of the index representing the window width information of the transmitting terminal, and to determine the type of packet protocol based on the statistical information of this index.
ここで、送信端末のウィンドウ幅とは、送信端末が受信端末からの確認応答を受信しなくてもデータを送信できるパケット数やデータ量の範囲である。そして、送信端末のウィンドウ幅の情報を表す指標とは、ネットワークに流れるパケットを所定のサンプリング確率(フルサンプリングも含む)で計測することによって得られる送信端末のウィンドウ幅を推定する情報であり、例えば、代表的な指標として、同一のACK番号が連続した数を示すACK重複度、又は、送信シーケンス番号の逆転時のシーケンス番号以上のシーケンス番号のサンプリング個数を示すシーケンス番号逆転度等がある。 Here, the window width of the transmitting terminal is a range of the number of packets and the amount of data that can be transmitted without the transmitting terminal receiving an acknowledgment from the receiving terminal. The index indicating the window width information of the transmitting terminal is information for estimating the window width of the transmitting terminal obtained by measuring a packet flowing through the network with a predetermined sampling probability (including full sampling), for example, As a representative index, there is an ACK duplication degree indicating the number of consecutive identical ACK numbers, or a sequence number inversion degree indicating a sampling number of sequence numbers equal to or greater than a sequence number when the transmission sequence number is inverted.
ここで、ACK重複度とは、同一のACK番号が何個連続したかを示すものである。例えば、図1は送信パケットを四角で、ACKパケットを丸で示し、各図形内のそれぞれの数値がシーケンス値、ACK番号を示しており、シーケンス値1、2、3の送信パケットが送信され、それに応答するACKパケットのACK番号が2、3、4と観測されている様子を示している。そして、シーケンス値4の送信パケットはロスし、その後、シーケンス値5、6の送信パケットが送信された後にシーケンス値4の送信パケットが再送されている。このとき、観測されるACK番号は、ACK番号4が3個連続した後に、シーケンス番号4の再送信パケットに応答するACK番号7のACKパケットが観測される。従って、ACK番号4が3個連続しているので、ACK重複度は3となる。
Here, the ACK duplication degree indicates how many identical ACK numbers continue. For example, FIG. 1 shows a transmission packet with a square, an ACK packet with a circle, each numerical value in each figure shows a sequence value and an ACK number, and transmission packets with
また、シーケンス番号逆転度とは、シーケンス値(以下、SNと記載する)の逆転が発生したとき、逆転時のSN以上のSNをいままで何個観測したかをカウントしたものである。SNの逆転とは、観測されるパケットのシーケンス番号が昇順とならず、パケットの再送等により、観測されるシーケンス番号が低下することを言う。 The sequence number inversion degree is a count of the number of SNs that have been observed so far when the sequence value (hereinafter referred to as SN) is inverted. The inversion of SN means that the sequence numbers of the observed packets are not in ascending order, and the observed sequence numbers decrease due to retransmission of the packets.
例えば、図2は送信パケットを四角で、観測パケットを丸で示し、各図形内のそれぞれの数値がシーケンス値を示しており、パケットのシーケンス番号が1、2、3のように昇順している時、次に観測するパケットのシーケンス番号が4とならずに5となり、5、6、7のように昇順後にシーケンス番号が4となり、シーケンス番号が低下する様子を示している。この場合、SNの逆転が発生したとき、逆転時のSN(ここでは、SNが3)以上のSNは、4、5、6、7の4個であるので、シーケンス番号逆転度は4である。 For example, FIG. 2 shows a transmission packet as a square, an observation packet as a circle, each numerical value in each figure indicates a sequence value, and the sequence numbers of the packets are ascending as 1, 2, and 3 At this time, the sequence number of the packet to be observed next becomes 5 instead of 4, and the sequence number becomes 4 after ascending order, such as 5, 6, 7, and the sequence number decreases. In this case, when SN reversal occurs, the SNs at the time of reversal (here, SN is 3) are four SNs of 4, 5, 6, and 7, so the sequence number reversal degree is 4. .
このように、送信端末のウィンドウ幅の写像として、ACK重複度、又は、シーケンス番号逆転度等のような、ネットワークに流れるパケットを観測することによって得られる指標を計算する。 In this way, as a map of the window width of the transmitting terminal, an index obtained by observing a packet flowing through the network, such as an ACK duplication degree or a sequence number inversion degree, is calculated.
続いて、統計情報とは、ヒストグラムや、ヒストグラムを識別できるようなヒストグラムの和(平方和)、極値(最大,最小)、平均値(相加平均、平方平均、幾何平均、調和平均)、モーメント(歪度、尖度)、分散(標準偏差、分散、平均方法誤差、中央値からの平均絶対偏差、平均からの平均絶対偏差)、中央値、最頻値、偏差の平方和、共分散、相関や、後述するようなヒストグラムの特定領域の割合の情報でも良い。 Next, statistical information is the histogram, the sum of the histogram (sum of squares), the extreme value (maximum, minimum), the average value (arithmetic mean, square mean, geometric mean, harmonic mean), Moment (skewness, kurtosis), variance (standard deviation, variance, mean method error, mean absolute deviation from median, mean absolute deviation from mean), median, mode, sum of squares of deviation, covariance Information on the correlation and the ratio of the specific area of the histogram as described later may be used.
このような、ACK重複度又はシーケンス番号逆転度のヒストグラム等の統計情報は、プロトコル、パケットロス率毎に特有な分布を持つ。例えば、図3は、横軸をACK重複度、縦軸をその頻度に取ったヒストグラムであり、プロトコルがTCP RenoとBIC TCPと場合において、パケットロス率が1%の時の各サンプリング確率(100%、50%、25%、12.5%、6.25%)のヒストグラムである。図3に示されるように、同じパケットロス率であっても、プロトコルの種別や、サンプリング確率が異なれば、ACK重複度のヒストグラムが異なることがわかる。 Such statistical information such as a histogram of ACK duplication degree or sequence number inversion degree has a distribution that is unique to each protocol and packet loss rate. For example, FIG. 3 is a histogram in which the horizontal axis represents the ACK duplication degree and the vertical axis represents the frequency. When the protocol is TCP Reno and BIC TCP, each sampling probability (100 %, 50%, 25%, 12.5%, 6.25%). As shown in FIG. 3, it can be seen that even if the packet loss rate is the same, if the protocol type and the sampling probability are different, the histogram of the ACK redundancy is different.
そこで、ACK重複度又はシーケンス番号逆転度の統計情報(ヒストグラム、又はヒストグラムの統計情報)を、各プロトコルに対して、所定のサンプリング確率、パケットロス率毎にデータベース化しておく。そして、ネットワーク上に流れるパケットを所定のサンプリング確率でACK重複度又はシーケンス番号逆転度を計測し、この計測したACK重複度又はシーケンス番号逆転度の統計情報と近似する統計情報をデータベースから見つけることができれば、その統計情報に対応するプロトコルが計測しているパケットのプロトコルであると判断できる。また、統計情報はパケットロス率毎にもデータベース化されているので、同時に計測下のパケットのパケットロス率も求めることができる。 Accordingly, statistical information (histogram or histogram statistical information) of the ACK duplication degree or sequence number inversion degree is stored in a database for each protocol for each predetermined sampling probability and packet loss rate. Then, ACK duplication degree or sequence number inversion degree is measured with a predetermined sampling probability for packets flowing on the network, and statistical information approximate to the measured ACK duplication degree or sequence number inversion degree statistical information can be found from the database. If possible, it can be determined that the protocol corresponding to the statistical information is the protocol of the packet being measured. Further, since the statistical information is stored in a database for each packet loss rate, the packet loss rate of the packet under measurement can be obtained at the same time.
尚、統計情報のマッチングの検索方法であるが、予めデータベース化された、各プロトコルに対して所定のサンプリング確率、パケットロス率毎にACK重複度又はシーケンス番号逆転度の統計情報と、観測したACK重複度又はシーケンス番号逆転度の統計情報とを、ヒストグラムの和(平方和)、極値(最大,最小)、平均値(相加平均、平方平均、幾何平均、調和平均)、モーメント(歪度、尖度)、分散(標準偏差、分散、平均方法誤差、中央値からの平均絶対偏差、平均からの平均絶対偏差)、中央値、最頻値、偏差の平方和、共分散、相関等で比較することができる。そして、観測したACK重複度又はシーケンス番号逆転度の統計情報と近似する統計情報を選択する。尚、上記の統計量を複数組み合わせてマッチングの検索を行うことも可能である。 Note that this is a method for searching for statistical information matching. The statistical information of the ACK duplication degree or sequence number inversion degree for each protocol, which is stored in advance in a database, for each protocol, for each packet loss rate, and the observed ACK Statistical information on the degree of redundancy or sequence number inversion, sum of histogram (sum of squares), extreme value (maximum, minimum), average value (arithmetic mean, square average, geometric mean, harmonic mean), moment (distortion degree) , Kurtosis), variance (standard deviation, variance, mean method error, mean absolute deviation from median, mean absolute deviation from mean), median, mode, sum of squares of deviation, covariance, correlation, etc. Can be compared. Then, statistical information that approximates the statistical information of the observed ACK duplication degree or sequence number inversion degree is selected. It is also possible to search for matching by combining a plurality of the above statistics.
次に、本発明を具体的なシステムに適用した実施の形態を説明する。尚、以下の説明では、ACK重複度を用いる場合について説明する。また、具体例を用いて説明する為、本実施の形態においてのプロトコルの種別とは、TCPのバージョン、例えば、TCP−Renoや、BIC−TCP等をいうものとする。 Next, an embodiment in which the present invention is applied to a specific system will be described. In the following description, a case where the ACK redundancy is used will be described. In order to explain using specific examples, the type of protocol in the present embodiment refers to a TCP version, for example, TCP-Reno, BIC-TCP, or the like.
図4は本発明が適用されるネットワークの概要を示した図である。 FIG. 4 is a diagram showing an outline of a network to which the present invention is applied.
図4中、1はプロトコルの種別を判定する判定装置であり、2,3は通信端末であり、4,5は分岐装置である。尚、分岐装置4,5は、双方向のパケットを取得するように設けられているが、必要に応じて一方のみでもかまわない。また、通信端末2または3は必ずしも通信を終端するものである必要は無く、通信を中継するものでも良い。
In FIG. 4, 1 is a determination device for determining the type of protocol, 2 and 3 are communication terminals, and 4 and 5 are branch devices. Although the
図5は判定装置1の構成を示すブロック図である。
FIG. 5 is a block diagram illustrating the configuration of the
判定装置1は、分岐装置4,5からのデータ入力であるデータ受信部111及びデータ受信部112と、データ受信部111,112で入力されたパケットをN個に一個の確率(サンプリング確率s=1/N)でパケット情報を取得するサンプリング処理部113と、取得したパケットの中の情報を用いてフロー分類するフロー識別部114と、その結果を記憶するフロー情報格納部115とから構成されるデータ前処理部100を備えている。尚、データ受信部111と分岐装置4は、通信端末2から通信端末3へのデータ通信の送信SNの観測と、通信端末3から通信端末2へのACK番号を観測するために設けられている。同様に、データ受信部112と分岐装置5は、通信端末3から通信端末2へのデータ通信の送信SNの観測と、通信端末2から通信端末3へのACK番号を観測するために設けられている。そのため、データ受信部111と分岐装置4、データ受信部112と分岐装置5のそれぞれの組は必ずしも両方の組が必要とされる訳ではなく、必要に応じて一方のみ組のみでもかまわない。
The
また、判定装置1には、フロー情報格納部115から情報を抽出し、ACK番号を識別してEnd-to-End情報格納部205に格納するACK番号識別部201と、フロー情報格納部115から情報を抽出し、ACK重複度を検出してEnd-to-End情報格納部205に格納するACK重複度検出部202と、End-to-End情報格納部205から情報を抽出し、ACK重複度のヒストグラムを計算するヒストグラム計算部203と、各プロトコルに対して、所定のサンプリング確率、パケットロス率毎に、ACK重複度のヒストグラムが格納されているヒストグラムデータベース206と、ヒストグラム計算部203で計算されたヒストグラムに近似したヒストグラムを検索し、そのヒストグラムに対応するプロトコル及びパケットロス率を照合する照合部204とから構成されるプロトコル判定部200を備える。尚、ヒストグラムデータベース206には、上述したように、ACK重複度の統計情報(ヒストグラム、又はヒストグラムの統計情報)が、各プロトコルに対して、所定のサンプリング確率、パケットロス率毎にデータベース化されて格納されているものとする。
Further, the
また、判定装置1は、プロトコル判定部200で判定した結果を記憶しておく結果格納部300を備えている。
Moreover, the
本実施の形態では、はじめにネットワーク上を流れているパケットを計測装置1で取り込み、データ前処理部100に入ることにより処理が開始される。分岐装置4から入力されたデータはデータ受信部111で、分岐装置5から入力されたデータはデータ受信部112で受信する。データ受信部111とデータ受信部112とでデータを受け取った後、受信部はそのデータをサンプリング処理部113へ渡す。
In the present embodiment, processing is started by first capturing a packet flowing on the network by the measuring
サンプリング処理部113ではN個に一個の確率でパケット情報を取得する。このときのサンプリング処理方法としては、乱数を発生させてサンプリング確率s(1/N)と比較し、その大小で取捨判定を行うランダムサンプリングや、パケット全体やプロトコル毎やフロー毎にカウンタを一つ保持しておき、そのカウンタ値とサンプリング確率と比較して、取捨判定を行う均等サンプリングや、ACK番号等パケットヘッダ情報の一部とサンプリング確率とを比較する方法などが考えられる。 The sampling processing unit 113 acquires packet information with a probability of one in N. As a sampling processing method at this time, a random number is generated and compared with the sampling probability s (1 / N), and a random counter is used for determining whether to discard the random number, or one counter is used for each packet, each protocol, or each flow. A method of comparing the sampling value with the sampling value that is retained, comparing the sampling value with the sampling probability, and comparing the sampling probability with a part of packet header information such as the ACK number can be considered.
サンプリング処理部113で取得パケットを決定した後に、フロー識別部114では、取得パケットの情報の一部、IPアドレスやポート番号等の情報を用いてパケットを分類(フロー識別)し、その結果をフロー情報格納部115に記憶しておく。 After the acquisition packet is determined by the sampling processing unit 113, the flow identification unit 114 classifies the packet (flow identification) using a part of the information of the acquisition packet, information such as an IP address and a port number, and flows the result. The information is stored in the information storage unit 115.
ここでデータ前処理部100は,サンプリング処理部113を行ってからフロー識別部114の処理を行っているが、フロー識別処理部114でフロー識別した後に、サンプリング処理部113で取得パケットを決定してもかまわない。また、本実施形態においては、サンプリング処理部113を設けているが、これを省略し、分岐4、5にサンプリング処理の機能を付けても構わない。
Here, the
次に、プロトコル判定部200について説明する。
Next, the
まず、ヒストグラムデータベース206に格納されるヒストグラムの生成について説明する。尚、ヒストグラムデータベース206に格納されるヒストグラムは、プロトコル判定部200が生成しても良いし、予め他の方法により取得したヒストグラムのデータをヒストグラムデータベース206に格納しても良い。
First, generation of a histogram stored in the histogram database 206 will be described. Note that the histogram stored in the histogram database 206 may be generated by the
まず、所定のサンプリング確率sでパケットロス率と、ACK重複度との関係を調査する。サンプリング確率sは1(フルサンプリング)が理想的ではあるが、これに限られない。また、調査は、パケットロス率0.001%(小さい値)から10%程度(大きな値)程度まで、代表的な調査ポイントを設定して、各ポイントでヒストグラムを作成するなどとすることができる。 First, the relationship between the packet loss rate and the ACK redundancy is investigated with a predetermined sampling probability s. The sampling probability s is ideally 1 (full sampling), but is not limited to this. The survey can be performed by setting representative survey points from a packet loss rate of 0.001% (small value) to about 10% (large value) and creating a histogram at each point. .
実際に計測したサンプリング率と、調査段階で計測したサンプリング率が異なるような場合、調査段階で計測したサンプリング率sの調査結果から実際に計測したサンプリング率sの結果を予測する。例えば、予測方法のひとつとして、計測対象がACK重複度である場合を説明すると、フルサンプリング(サンプリング確率s=1)時におけるACK重複度=nの頻度がmとすると、実際のサンプリング確率s1では、n×s1を計算する。この結果(n×s1)は、ACK重複度=k(整数)とACK重複度=k+1との間にある。そして、頻度mをkとk+1とに、n×s1に基づいて重み付け分配する。例えば、フルサンプリング(サンプリング確率s0=1)時におけるACK重複度5の頻度が16個とすると、サンプリング確率s1(=0.25)では、n×s1=5×0.25=1.25となる。そこで、重複度1と重複度2とに頻度16を分配する。すなわち、ACK重複度1に対して16×0.75=12を加算し、ACK重複度2に対して16×0.25=4を加算する。このような処理を各ACK重複度で行い、サンプリング確率s1におけるヒストグラムを予測する。尚、上述した例は一例であり、趣旨を逸脱しない範囲で他の補正方法でもかまわない。
When the actually measured sampling rate is different from the sampling rate measured in the survey stage, the result of the actually measured sampling rate s is predicted from the survey result of the sampling rate s measured in the survey stage. For example, as a prediction method, the case where the measurement target is the ACK duplication degree will be described. When the frequency of ACK duplication degree = n at the time of full sampling (sampling probability s = 1) is m, the actual sampling probability s1 is , N × s1 is calculated. This result (n × s1) is between ACK duplication degree = k (integer) and ACK duplication degree = k + 1. Then, the frequency m is weighted and distributed to k and k + 1 based on n × s1. For example, if the frequency of
このようにして、ネットワークで計測が予測されるプロトコルに対して、サンプリング確率s、パケットロス率毎のヒストグラムを、ヒストグラムデータベース206にデータベース化しておく。 In this way, the histogram for each sampling probability s and packet loss rate is stored in the histogram database 206 for a protocol whose measurement is predicted in the network.
ACK番号識別部201では、フロー情報格納部115から判定解析対象(指定期間の指定フローに該当するパケット)のACKパケットを順番に取り出しACK番号を識別する。そして、その結果をEnd-to-End情報格納部205へ記録する。 The ACK number identifying unit 201 sequentially retrieves ACK packets to be analyzed and analyzed (packets corresponding to the designated flow in the designated period) from the flow information storage unit 115 and identifies the ACK number. Then, the result is recorded in the end-to-end information storage unit 205.
ACK重複度検出部202では、End-to-End情報格納部205から情報を読み出し、重複しているACK番号をカウントアップし、ACK重複度を検出する。 The ACK duplication degree detection unit 202 reads information from the end-to-end information storage unit 205, counts up duplicate ACK numbers, and detects the ACK duplication degree.
ヒストグラム計算部203は、ACK重複度検出部202が検出したACK重複度をEnd-to-End情報格納部205から読み出して、ACK重複度のヒストグラムを作成する。 The histogram calculation unit 203 reads out the ACK duplication degree detected by the ACK duplication degree detection unit 202 from the end-to-end information storage unit 205 and creates a histogram of the ACK duplication degree.
照合部204は、度数分布計算部203が作成したACK重複度のヒストグラムと、ヒストグラムデータベース206に格納されている、サンプリング確率sのヒストグラムとを照合し、近似するヒストグラムを検出する。そして、そのヒストグラムに対応するプロトコル及びパケットロス率を、計測対象であるパケットのプロトコル及びパケットロス率と判定し、その結果を結果格納部300に格納する。
The collation unit 204 collates the histogram of the ACK overlap created by the frequency distribution calculation unit 203 with the histogram of the sampling probability s stored in the histogram database 206, and detects an approximate histogram. Then, the protocol and packet loss rate corresponding to the histogram are determined as the protocol and packet loss rate of the packet to be measured, and the result is stored in the
第1の実施の形態によれば、ACK重複度、又は、シーケンス番号逆転度を計測することにより、計測したパケットのプロトコルを判別することができる。 According to the first embodiment, the protocol of the measured packet can be determined by measuring the ACK duplication degree or the sequence number inversion degree.
尚、上述した第1の実施の形態では、ACK重複度を例にして説明したが、シーケンス番号逆転度を計測してヒストグラムを作成し、このヒストグラムと、各プロトコルに対して、所定のサンプリング確率、パケットロス率毎にデータベース化されたシーケンス番号逆転度のヒストグラムとの照合を行うことにより、ACK重複度と同様に、計測したパケットのプロトコルを判別することができる。 In the first embodiment described above, the ACK duplication degree has been described as an example. However, a histogram is created by measuring the degree of sequence number inversion, and a predetermined sampling probability is set for this histogram and each protocol. The protocol of the measured packet can be discriminated in the same manner as the ACK duplication degree by collating with the sequence number inversion degree histogram stored in the database for each packet loss rate.
実施例1では、ACK重複度のヒストグラムのマッチングの具体例について説明する。尚、以下の説明において、スループット推定式が下記式
(RTTはラウンドトリップ時間、pはパケットロス率、bはdelay ACKパラメタ(送信端末がACKを受け取るごとに1/bウインドサイズを大きくする))
であらわせられるTCP-Renoのうち、b=1及びb=2、サンプリング率100%、ロス率1%の場合のACK重複度のヒストグラムがデータベースに格納されているものとし、b=1のヒストグラムの平均値=16.33、b=2のヒストグラムの平均値=11.55とする。尚、上記スループット推定式は、文献“Jitendra Padhye, Victor Firoiu, Don towsley, Jim Kurose, “Modeling TCP Throughput: A Simple Model and its Empirical Validation”, In ACM SIGCOMM’98”に記載されているものを用いた。
In the first embodiment, a specific example of matching of histograms of ACK duplication degrees will be described. In the following description, the throughput estimation formula is
(RTT is the round trip time, p is the packet loss rate, b is the delay ACK parameter (the 1 / b window size is increased each time the transmitting terminal receives ACK))
, The histogram of ACK duplication in the case of b = 1 and b = 2,
ここで、サンプリング率100%でフローAを計測した結果、フローAでは、173205 pakcetsが通過し、パケットロス量が1732 packetsであった。すると、パケットロス率は1%である。また、そのACK重複度のヒストグラムの平均値が11.55であった。 Here, as a result of measuring the flow A at the sampling rate of 100%, in the flow A, 173205 pakcets passed and the packet loss amount was 1732 packets. Then, the packet loss rate is 1%. Moreover, the average value of the histogram of the ACK duplication degree was 11.55.
同様に、サンプリング率100%でフローBを計測した結果、フローBでは、244949 pakcetsが通過し、パケットロス量が2449 packetsであった。すると、パケットロス率は1%である。また、そのACK重複度のヒストグラムの平均値が16.33であった。 Similarly, as a result of measuring the flow B at a sampling rate of 100%, in the flow B, 244949 pakcets passed and the packet loss amount was 2449 packets. Then, the packet loss rate is 1%. Moreover, the average value of the histogram of the ACK duplication degree was 16.33.
ここで、データベースより、TCP-Renoのうち、b=1、サンプリング率100%、ロス率1%の場合におけるACK重複度のヒストグラムの平均値を読みだすと、平均値は16.33である。
Here, when the average value of the histogram of the ACK duplication degree in the case of b = 1,
フローAのACK重複度のヒストグラムの平均値は11.55であるので、読み出したヒストグラムの平均値16.33とは乖離している。従って、フローAはb=1のTCP-Renoではない。一方、フローBのACK重複度のヒストグラムの平均値は16.33であるので、読み出したヒストグラムの平均値16.33とは一致している。従って、フローAはb=1のTCP-Renoである。 Since the average value of the histogram of the ACK overlap of flow A is 11.55, it is different from the average value 16.33 of the read histogram. Therefore, Flow A is not TCP = 1 Reno with b = 1. On the other hand, since the average value of the histogram of the ACK overlap degree of flow B is 16.33, it matches the average value 16.33 of the read histogram. Therefore, the flow A is TCP-Reno with b = 1.
続いて、データベースより、TCP-Renoのうち、b=2、サンプリング率100%、ロス率1%の場合におけるACK重複度のヒストグラムの平均値を読み出と、平均値は11.55である。
Subsequently, when the average value of the histogram of the ACK duplication degree in the case of b = 2,
フローAのACK重複度のヒストグラムの平均値は11.55であるので、読み出したヒストグラムの平均値11.55と一致している。従って、フローAはb=2のTCP-Renoである。一方、フローBのACK重複度のヒストグラムの平均値は16.33であるので、読み出したヒストグラムの平均値11.55とは乖離している。従って、フローBはb=2のTCP-Renoではない。 Since the average value of the histogram of the ACK overlap of flow A is 11.55, it matches the average value of 11.55 of the read histogram. Therefore, flow A is TCP = 2 Reno with b = 2. On the other hand, since the average value of the histogram of the ACK overlap of flow B is 16.33, it is different from the average value of 11.55 of the read histogram. Therefore, the flow B is not b = 2 TCP-Reno.
これらの結果をまとめると、フローAのプロトコルはb=2のTCP-Renoであり、フローBはb=1のTCP-Renoであることが判定される。
<第2の実施の形態>
第2の実施の形態を説明する。
To summarize these results, it is determined that the protocol of the flow A is TCP = 2 Reno with b = 2 and the flow B is TCP-Reno with b = 1.
<Second Embodiment>
A second embodiment will be described.
第1の実施の形態では、サンプリングしたパケットのプロトコルを判定する場合、計測したACK重複度のヒストグラムを作成し、このヒストグラムとデータベース化されたヒストグラムのうち計測したサンプリング確率に対応するヒストグラムとを照合し、最も近似するヒストグラムに対応するプロトコルを、計測したパケットのプロトコルと判別する例を説明した。 In the first embodiment, when determining the protocol of the sampled packet, a histogram of the measured ACK duplication degree is created, and this histogram is compared with the histogram corresponding to the measured sampling probability among the histograms made in the database. In the above description, the protocol corresponding to the most approximate histogram is determined as the protocol of the measured packet.
第2の実施の形態では、ヒストグラムを作成する処理を省く為、ヒストグラムの特定領域の割合である“観測確率”を統計情報として用いて、算術的に照合を行う例について説明する。尚、以下の説明では、ACK重複度を用いる場合について説明する。 In the second embodiment, an example will be described in which, in order to omit the process of creating a histogram, the “observation probability” that is the ratio of a specific area of the histogram is used as statistical information to perform arithmetic matching. In the following description, a case where the ACK redundancy is used will be described.
まず、観測確率について説明する。 First, the observation probability will be described.
観測確率は検知確率とも呼ばれ、文献“山崎康広、下西英之、村瀬勉、"サンプリング計測でのパケットロス率推定手法の提案"、電子情報通信学会技術研究報告(NS2004-159,TM2004-62)、November, 2004”等に詳細が記載されているが、本発明の理解に必要な部分について説明する。 The observation probability is also called the detection probability, the literature “Yasuhiro Yamazaki, Hideyuki Shimonishi, Tsutomu Murase,“ Proposal of packet loss rate estimation method by sampling measurement ”, IEICE Technical Report (NS2004-159, TM2004-62) ), November, 2004 ”and the like, the details necessary for understanding the present invention will be described.
図6は、ACK重複度jを横軸とし、ACK重複度の個数全体に対して所定のACK重複度の個数が占める割合Pを縦軸とし、サンプリング確率=1(フルキャプチャ)時のヒストグラムと、このヒストグラムから予測したサンプリング確率=s時のヒストグラムとを示した図である。尚、図6中、点線はサンプリング確率=1(フルキャプチャ)時のヒストグラム、実線はサンプリング確率=s時のヒストグラムを示している。 In FIG. 6, the horizontal axis is ACK redundancy j, the ratio P of the number of predetermined ACK redundancy to the total number of ACK redundancy is vertical, and the histogram when sampling probability = 1 (full capture) FIG. 6 is a diagram showing a sampling probability predicted from this histogram = histogram at the time of s. In FIG. 6, a dotted line indicates a histogram when sampling probability = 1 (full capture), and a solid line indicates a histogram when sampling probability = s.
割合Pは、パケットロス率p、サンプリング確率s、ACK重複度jを変数とする関数として定義することができ、P(p,s,j)と表現することができる。そして、サンプリング確率=s時のP(p,s,j)の総数と、サンプリング確率=1の時のP(p,1,j)の総数とは、下記式1で示されるように共に1である。
しかしながら、サンプリング確率sのヒストグラムはjが1以下は観測することができないので、j=2以上の閾値kACKでACK重複度を計測することとなる。この閾値kACKは計測対象となるACK重複度の値を決定する値であり、例えば、閾値kACK=2とした場合には2以上のACK重複度を計測対象とすることを意味する。
The ratio P can be defined as a function having the packet loss rate p, the sampling probability s, and the ACK redundancy j as variables, and can be expressed as P (p, s, j). The total number of P (p, s, j) when the sampling probability = s and the total number of P (p, 1, j) when the sampling probability = 1 are both 1 as shown in the
However, since the histogram of the sampling probability s cannot be observed when j is 1 or less, the ACK duplication degree is measured with a threshold k ACK of j = 2 or more. This threshold value k ACK is a value that determines the value of the ACK duplication degree to be measured. For example, when the threshold value k ACK = 2, it means that two or more ACK duplication degrees are to be measured.
従って、サンプリング確率sの時のP(p,s,j)の総数は、実際には観測することができない閾値kACK以下の部分を含んでいることになり、実際に観測できる割合QACK(p,s,kACK)は、以下の式2となる。
この割合QACK(p,s,kACK)は、サンプリング確率s時において、閾値kACK以上のACK重複度を観測できる確率であり、この確率を観測確率と呼ぶ。
Accordingly, the total number of P (p, s, j) at the sampling probability s includes a portion below the threshold k ACK that cannot be actually observed, and the actually observable ratio Q ACK ( p, s, k ACK ) is expressed by the following
This ratio Q ACK (p, s, k ACK ) is a probability that an ACK duplication degree equal to or higher than the threshold value k ACK can be observed at the sampling probability s, and this probability is called an observation probability.
この観測確率を、上述した第1の実施の形態で述べたヒストグラムを用いて、プロトコルに対するサンプリング確率s、パケットロス率毎に求めて、データベース化しておく。 This observation probability is obtained for each sampling probability s and packet loss rate for the protocol using the histogram described in the first embodiment, and is stored in a database.
次に、上述した観測確率を用いたプロトコル種別の判定について説明する。
Step 1
ACK重複度の観測の場合、閾値kACKとして、同じACK番号がk個以上観測したときに1カウントアップし、そのカウント数であるAkを計測する。例えば、k=2である場合、同一のACK番号が連続して2個以上観測したときを1カウントしてそのカウント数であるA2を計測する。同様に、k=3である場合、同一のACK番号が連続して3個以上観測したときを1カウントしてそのカウント数であるA3を計測する。サンプリング確率sと閾値kACKとの組み合わせが異なるAkを少なくとも2つ以上観測する。
Step 2
続いて、パケットロス回数をXi(収束前は一時的な推定値)とし、パケットロス率をpi=Xi/THとする。ここで、THは計測対象の期間中に発生した通信量(パケットの個数やサイズなど)である。そして、任意のパケットロス回数を初期値X0(>0)に選定し、それを初期値のパケットロス率p0に変換する。ここで、初期値のパケットロス率p0は、p0=X0/THである。尚、初期値X0の推奨値は、直前期間のパケットロス回数等である。
Step 3
次に、求めたパケットロス率piの値に対応する、サンプリング確率sの任意のプロトコルの観測確率QACK(pi,s,kACK)を、データベースから検索し、観測値Akと観測確率QACK(pi,s,kACK)とからパケットロス回数Xi+1を、下記式3に基づいて推定する。
Xi+1=Ak/QACK(pi,s,kACK)
式3
そして、下記式に基づいてパケットロス率に変換する。
pi+1=Xi+1/TH
Step 4
上述したStep 3を反復計算する。理想的には、X∞が真のパケットロス回数であるが、実際には、変化率={(Xi+1−Xi)/Xi}又は{(pi+1−pi)/pi}が一定以内になるまで反復計算を行ったり、iが一定回数になるまで反復計算を行ったりする。
Next, the determination of the protocol type using the above observation probability will be described.
In the case of observation of ACK duplication degree, when k or more of the same ACK numbers are observed as the threshold k ACK , the count is incremented by 1, and the count number Ak is measured. For example, if the k = 2, to measure the A 2 which is a count number by one count when the same ACK number is observed continuously two or more. Similarly, when a k = 3, to measure the A 3 which is a count number by one count when the same ACK numbers are observed continuously for three or more. At least two A k having different combinations of the sampling probability s and the threshold k ACK are observed.
Subsequently, the number of packet losses is set to X i (a temporary estimated value before convergence), and the packet loss rate is set to p i = X i / TH. Here, TH is the amount of communication (number of packets, size, etc.) generated during the measurement target period. Then, an arbitrary number of packet losses is selected as an initial value X 0 (> 0), which is converted into an initial value packet loss rate p 0 . Here, the initial packet loss rate p 0 is p 0 = X 0 / TH. Note that the recommended value of the initial value X 0 is the number packets lost just before the period, and the like.
Then, corresponding to the value of the packet loss rate p i found, observation probability of any protocol sampling probability s Q ACK (p i, s , k ACK) , and searches the database, and the observed value A k Observation probability Q ACK (p i, s, k ACK) packet loss count X i + 1 from the, estimated based on the
X i + 1 = A k / Q ACK ( pi , s, k ACK )
And it converts into a packet loss rate based on a following formula.
p i + 1 = X i + 1 / TH
このようにして、サンプリング確率sの計測下におけるAkのパケットロス率pi+1、パケットロス回数Xi+1を求める。
Step 5
続いて、Akにおけるパケットロス率pi+1を用いて、Al(k≠l)のパケットロス回数Xlを求める。Alのパケットロス回数Xは、サンプリング確率sの計測下におけるAkのパケットロス率pi+1に対応する観測確率QACK(pi+1,s,kACK)をデータベースから検索し、この観測確率QACK(pi+1,s,kACK)を用いて、式4より求める。
In this way, the packet loss rate p i + 1 and the packet loss count X i + 1 of Ak under the measurement of the sampling probability s are obtained .
Then, by using the packet loss rate p i + 1 in A k, determine packet loss count X l of A l (k ≠ l). The packet loss count X of A l is obtained by searching an observation probability Q ACK (p i + 1 , s, k ACK ) corresponding to the packet loss rate p i + 1 of A k under the measurement of the sampling probability s from the database. Using ACK (p i + 1 , s, k ACK ), it is obtained from
Xl=Al/QACK(pi+1,s,kACK) 式4
このとき、Alのパケットロス回数Xlは、正しいプロトコルの観測確率が用いられていれば、Akにおけるパケットロス回数Xi+1と近似したものとなる。Alのパケットロス回数Xlと、Akにおけるパケットロス回数Xi+1とが近似したものであるならば、計算に用いた観測確率のプロトコルが、計測したパケットのプロトコルである。
X 1 = A 1 / Q ACK ( pi + 1 , s, k ACK )
At this time, packet loss count X l of A l are, if used the observation probability of the correct protocol, and an approximation packet loss count X i + 1 in the A k. A packet loss count X l of A l, if a packet loss count X i + 1 at A k is an approximation, observation probability of the protocol used for the calculation is the measure the packet protocol.
一方、Alのパケットロス回数Xと、Akにおけるパケットロス回数Xi+1とが乖離したものであれば、正しいプロトコルの観測確率を選択しなかったこととなり、他のプロトコルの観測確率を用いてStep 2からやり直す。
On the other hand, a packet loss count X of A l, as long as the packet loss count X i + 1 at A k is deviated, it is possible to not select the observation probability of the correct protocol, using the observation probability of the other protocols Redo from
このようにして、観測確率を用いてプロトコルを推定することができる。
尚、上述の説明では、説明を容易とする為に、同一のサンプリング確率から異なる閾値の観測確率を二つ用いた例を説明したが、精度を高める為に三以上の観測確率を用いるようにしても良い。
In this way, the protocol can be estimated using the observation probability.
In the above description, for ease of explanation, an example in which two observation probabilities with different thresholds are used from the same sampling probability has been described. However, in order to improve accuracy, three or more observation probabilities are used. May be.
また、異なるサンプリング確率から同一の閾値の観測確率を用いても良い。すなわち、サンプリング確率と閾値との組み合わせが異なる観測確率を複数個用いて、プロトコルを判定するようにしても良い。この場合、各観測確率を用いたパケットロス回数の計算は、上述の説明と同様である。 Further, observation probabilities with the same threshold may be used from different sampling probabilities. That is, the protocol may be determined using a plurality of observation probabilities with different combinations of sampling probabilities and thresholds. In this case, the calculation of the number of packet losses using each observation probability is the same as described above.
次に、本発明を具体的なシステムに適用した実施の形態を説明する。 Next, an embodiment in which the present invention is applied to a specific system will be described.
図7は第2の実施の形態における判定装置1の構成を示すブロック図である。
FIG. 7 is a block diagram illustrating a configuration of the
第1の実施の形態と異なる所は、ヒストグラム計算部203、照合部204及びヒストグラムデータベース206に代えて、パケットロス回数計算部1203、パケットロス回数照合部1204、観測確率データベース1206を備える点である。 The difference from the first embodiment is that a packet loss count calculator 1203, a packet loss count collator 1204, and an observation probability database 1206 are provided instead of the histogram calculator 203, the collator 204, and the histogram database 206. .
観測確率データベース1206には、上述した観測確率が、プロトコル、パケットロス率、サンプリング確率毎に格納されている。 The observation probability database 1206 stores the above-described observation probabilities for each protocol, packet loss rate, and sampling probability.
パケットロス回数計算部1203は、End-to-End情報格納部205からある閾値kのカウント数(Ak)を読み出し、上述したStep1からStep5の計算を行い、その後に異なる閾値j(≠k)のカウント数(Aj)を読み出し、上述したStep1からStep5の計算を行い、再度パケットロス回数を求める。
The packet loss number calculation unit 1203 reads the count number (A k ) of a certain threshold k from the end-to-end information storage unit 205, calculates
パケットロス回数照合部1204は、パケットロス回数計算部1203からの結果を受け、異なる閾値kとjとから求めたパケットロス回数を照合し、二つのパケットロス回数が近似していれば、用いた観測確率のプロトコルを、パケットのプロトコルと判断する。一方、異なる閾値kとjとから求めたパケットロス回数が乖離していれば、再度の計算をパケットロス回数計算部1203に指示する。 The packet loss number collation unit 1204 receives the result from the packet loss number calculation unit 1203, collates the packet loss number obtained from different threshold values k and j, and uses the two packet loss times if they are approximated. The observation probability protocol is determined as the packet protocol. On the other hand, if the packet loss times calculated from the different threshold values k and j are different, the packet loss number calculation unit 1203 is instructed to perform the calculation again.
実施例2として、スループット推定式が下記式
(RTTはラウンドトリップ時間、pはパケットロス率、bはdelay ACKパラメタ(送信端末がACKを受け取るごとに1/bウインドサイズを大きくする))
であらわせられるTCP-Renoのうちb=1及びb=2のプロトコルを用い、フローAはb=2のプロトコルのパケットが流れるフローであり、フローBはb=1のプロトコルのパケットが流れるフローであり、RTTが20ms、パケットロス率が1%、s=0.25で5分間の観測した場合の実験結果を説明する。尚、上記スループット推定式は、文献“Jitendra Padhye, Victor Firoiu, Don towsley, Jim Kurose, “Modeling TCP Throughput: A Simple Model and its Empirical Validation”, In ACM SIGCOMM’98”に記載されているものを用いた。
As Example 2, the throughput estimation formula is
(RTT is the round trip time, p is the packet loss rate, b is the delay ACK parameter (the 1 / b window size is increased each time the transmitting terminal receives ACK))
In the TCP-Reno, the protocol of b = 1 and b = 2 is used, the flow A is a flow in which a packet of protocol b = 2 flows, and the flow B is a flow in which a packet of protocol b = 1 flows. A description will be given of the experimental results when the RTT is 20 ms, the packet loss rate is 1%, and s = 0.25 for 5 minutes. The throughput estimation formula described in the literature “Jitendra Padhye, Victor Firoiu, Don towsley, Jim Kurose,“ Modeling TCP Throughput: A Simple Model and its Empirical Validation ”, In ACM SIGCOMM '98” is used. It was.
以下の実験では、フローA、フローBともに、bが不明なものとして、プロトコルの判定を行うものとする。 In the following experiment, it is assumed that both the flow A and the flow B are determined as protocols with the b being unknown.
この環境のもとで、フローAは173205 pakcetsが通過、k=2(ACK重複度が2以上を計測対象)の回数は1357個、k=3(ACK重複度が3以上を計測対象)の回数は955個計測できた。また、フローBは244949 pakcetsが通過、k=2(ACK重複度が2以上を計測対象)の回数は2240個,k=3(ACK重複度が3以上を計測対象)の回数は1896個計測できた。 Under this environment, flow A has 173205 pakcets, k = 2 (ACK duplication degree is 2 or more), 1357 times, k = 3 (ACK duplication degree is 3 or more). The number of times was 955. Flow B passes 244949 pakcets, k = 2 (ACK duplication degree is 2 or more), 2240 times, k = 3 (ACK duplication degree is 3 or more), 1896 times did it.
まず、フローAでは、閾値k=2の回数は1357個、通信量Thは173205であるので、バケットロス回数X0の初期値を1357とすると、バケットロス率の初期値は、p0=X0/Th により、約p0=0.00783となる。従って、b=2の観測確率QACK(0.00783,0.25,2)の値をデータベースから検索すると、QACK(0.00783,0.25,2)は約0.8371であった。 First, in flow A, the number of times of the threshold k = 2 is 1357 and the traffic amount Th is 173205. Therefore, if the initial value of the bucket loss count X 0 is 1357, the initial value of the bucket loss rate is p 0 = X With 0 / Th, approximately p0 = 0.00783. Therefore, when the value of the observation probability Q ACK (0.00783, 0.25, 2) of b = 2 is retrieved from the database, Q ACK (0.00783, 0.25, 2) is about 0.8371.
QACK(0.00783,0.25,2)=0.8371を用い、パケットロス回数X1を計算すると、X1=1357/0.8371=1621となる。 When Q ACK (0.00783, 0.25, 2) = 0.8371 is used and the packet loss count X1 is calculated, X 1 = 1357 / 0.8371 = 1621.
続いて、パケットロス回数X2、X3、X4と計算していくと、X1=1621、X2=1699、X3=1722、X4=1729、X5=1729、X6=1731、X7=1732、X8=1733となり、X8で収束した。X8時のパケットロス率は、1733/173205=0.0100054≒0.01となり、b=2における閾値k=3の観測確率QACK(0.01,0.25,3)の値をデータベースから検索すると、0.550965であった。 Subsequently, when the packet loss times X 2 , X 3 , and X 4 are calculated, X 1 = 1621, X 2 = 699, X 3 = 1722, X 4 = 1729, X 5 = 729, X 6 = 1731 X 7 = 1732 and X 8 = 1733, which converged at X 8 . The packet loss rate at 8 o'clock is 1733/173205 = 0.0100054≈0.01, and when the value of the observation probability Q ACK (0.01, 0.25, 3) of the threshold k = 3 at b = 2 is searched from the database, it is 0.550965. .
閾値k=3の個数は955個であるので、閾値k=3のパケットロス回数は955/0.550965=1733となり、k=2の時のパケットロス回数である1733と一致するので、観測確率をb=2から選んだことは正しい。従って、フローAのプロトコルは、b=2のTCP-Renoである。 Since the number of thresholds k = 3 is 955, the number of packet losses when the threshold k = 3 is 955 / 0.550965 = 1733, which matches 1733 which is the number of packet losses when k = 2. It is correct to choose from = 2. Therefore, the protocol of flow A is TCP-Reno with b = 2.
同様に、フローBでは、閾値k=2の個数は2240個、通信量Thは244949であるので、バケットロス回数X0の初期値を2240とすると、バケットロス率の初期値は、p0=X0/Th により、約p0=0.00914となる。従って、従って、b=2の観測確率QACK(0.00914,0.25,2)の値をデータベースから検索すると、QACK(0.00914,0.25,2)は約0.8037であった。 Similarly, in flow B, the number of thresholds k = 2 is 2240, and the traffic amount Th is 244949. Therefore, if the initial value of the bucket loss count X 0 is 2240, the initial value of the bucket loss rate is p 0 = From X 0 / Th, approximately p 0 = 0.00914. Therefore, when the value of the observation probability Q ACK (0.00914, 0.25, 2) of b = 2 is retrieved from the database, Q ACK (0.00914, 0.25, 2) is about 0.8037.
b=2のQACK(0.00914,0.25,2)=0.8037を用い、パケットロス回数X1を計算すると、X1=2240/0.8037=2787なる。 with b = 2 the Q ACK (0.00914,0.25,2) = 0.8037, when calculating the packet loss count X 1, X 1 = 2240 / 0.8037 = 2787 becomes.
続いて、パケットロス回数X2、X3、X4と計算していくと、X2=2976、X3=3043、X4=3066、X5=3073、X6=3076、X7=3077となり、X7で収束した。X7時のパケットロス率は、3077 / 244949 = 0.01233315≒0.0123となり、b=2における閾値k=3の観測確率QACK(0.0123,0.25,3)の値をデータベースから検索すると、0.482297であった。 Subsequently, when calculating the number of packet losses X 2 , X 3 , X 4 , X 2 = 2976, X 3 = 3043, X 4 = 3066, X 5 = 3073, X 6 = 3076, X 7 = 3077 next, they converged in the X 7. Packet loss rate o'clock X 7 is, searching 3077/244949 = 0.01233315 ≒ 0.0123, and the threshold in the b = 2 k = 3 of the observation probability Q ACK value of (0.0123,0.25,3) from the database, was 0.482297 .
閾値k=3の個数は1896個であるので、閾値k=3のパケットロス回数は1896/0.482297=3931となり、k=2の時のパケットロス回数である3077と異なるので、観測確率をb=2から選んだことは間違っている。従って、フローBのプロトコルは、b=2のTCP-Renoではない。 Since the number of thresholds k = 3 is 1896, the number of packet losses with threshold k = 3 is 1896 / 0.482297 = 3931, which is different from 3077 which is the number of packet losses when k = 2. The choice from 2 is wrong. Therefore, the protocol of flow B is not TCP-Reno with b = 2.
次に、フローBについて、b=1の観測確率を用いて同様な計算を行う。フローBでは、閾値k=2の個数は1357個、通信量Thは244949であり、パケットロス回数X0、X1、X2、X3と計算していくと、X0=2240、X1=2418、X2=2445、X3=2449となり、X3で収束した。X3時のパケットロス率は、2449 / 244949 = 0.0099979≒0.01となり、閾値k=2の観測確率QACK(0.01,0.25,2)の値をデータベースから検索すると、0.613509であった。 Next, the same calculation is performed for the flow B using the observation probability of b = 1. In the flow B, the number of thresholds k = 2 is 1357, and the traffic amount Th is 244949. When calculating the number of packet losses X 0 , X 1 , X 2 , X 3 , X 0 = 2240, X 1 = 2418, X 2 = 2445, X 3 = 2449, and convergence was achieved at X 3 . X Packet loss rate at 3, 2449/244949 = 0.0099979 ≒ 0.01 next, searching the value of the threshold k = 2 of the observation probability Q ACK (0.01,0.25,2) from the database, was 0.613509.
閾値k=3の個数は1896個であるので、閾値k=3のパケットロス回数は、1896 / 0.773735 = 2450となり、k=2の時のパケットロス回数である2449とほぼ一致しており、b=1から選んだ観測確率は正しい。従って、フローBのプロトコルは、b=1のTCP-Renoである。
<第3の実施の形態>
第3の実施の形態は、シーケンス値の観測確率を用いたプロトコル種別の判定について説明する。
Since the number of thresholds k = 3 is 1896, the number of packet losses when the threshold value k = 3 is 1896 / 0.773735 = 2450, which is almost the same as the number of packet losses 2449 when k = 2, and b The observation probability selected from = 1 is correct. Therefore, the protocol of flow B is TCP-Reno with b = 1.
<Third Embodiment>
In the third embodiment, the determination of the protocol type using the observation probability of the sequence value will be described.
図8から図10は、SN値の逆転現象数を統計的な手法を用いて推測する概念を説明する為の図である。 8 to 10 are diagrams for explaining the concept of estimating the number of SN value reversal phenomena using a statistical technique.
まず、図8に示される如く、逆転度jを横軸とし、逆転度の個数全体に対して所定の逆転度の個数が占める割合Nを縦軸とする、フルサンプリング(フルキャプチャ)時のヒストグラムを予測する。このヒストグラムは、統計的に求めても良いし、実測しても良い。尚、割合Nは、パケットロス率p、サンプリング確率s、逆転度jを変数とする関数として定義することができる。 First, as shown in FIG. 8, a histogram at the time of full sampling (full capture) in which the degree of inversion j is on the horizontal axis and the ratio N of the number of predetermined inversions to the total number of inversions is on the vertical axis. Predict. This histogram may be obtained statistically or measured. The ratio N can be defined as a function having the packet loss rate p, the sampling probability s, and the degree of inversion j as variables.
次に、図9に示す如く、所定のサンプリング確率s下で観測されるヒストグラムを予測する。サンプリング確率が1の時の割合N(p,1,j)の総数は、式4で示され、サンプリング確率sの時の割合NSN(p,s,j)の総数は式5で示される。
ここで、図10に示されるヒストグラムは、予測したサンプリング確率sのヒストグラムであるけれども、サンプリング計測を行っているので、jが0以下は観測することができない。例えば、サンプリングされたパケットのSNが、5,6,4となれば、SNの逆転現象を観測するができるが、例え、SNが逆転していても、SNが逆転した前又は後のパケットのSNがサンプリングできなければ、観測することができないからである。
Next, as shown in FIG. 9, a histogram observed under a predetermined sampling probability s is predicted. The total number of ratios N (p, 1, j) when the sampling probability is 1 is expressed by
Here, although the histogram shown in FIG. 10 is a histogram of the predicted sampling probability s, since sampling measurement is performed, j cannot be observed to be 0 or less. For example, if the SN of the sampled packet is 5, 6, or 4, the SN reversal phenomenon can be observed. However, even if the SN is reversed, the SN of the packet before or after the SN is reversed can be observed. This is because if the SN cannot be sampled, it cannot be observed.
そこで、j=1以上の閾値で逆転度を計測する。すなわち、この閾値は計測対象となる逆転度の値を決定する値であり、例えば、閾値をk=1とした場合には1以上の逆転度を計測対象とし、閾値をk=2とした場合には2以上の逆転度を計測対象とすることを意味し、通常はk=1である。従って、式2で示されるサンプリング確率sの時の割合N(p,s,j)の総数は、実際に観測することができない閾値k以下の部分を含んでいることになる。
Therefore, the degree of inversion is measured with a threshold of j = 1 or more. That is, this threshold is a value that determines the value of the degree of inversion to be measured. For example, when the threshold is k = 1, the degree of inversion of 1 or more is the object to be measured, and the threshold is k = 2. Means that the degree of reversal of 2 or more is to be measured, and normally k = 1. Therefore, the total number of ratios N (p, s, j) at the sampling probability s shown in
よって、サンプリング確率s時におけるSN値の逆転現象を観測できる確率である観測確率は式6となる。
Therefore, the observation probability, which is the probability that the SN value inversion phenomenon at the sampling probability s can be observed, is expressed by
式6
この観測確率は、本来の発生した逆転現象(s=1のヒストグラム)のなかで、観測した逆転度の事象(s=0.5の斜線面積部分)の割合でもある。そして、この観測確率を求めることにより、観測することができない閾値k以下の逆転現象も含めたSN値の逆転度やパケットロス率を求めことができるのである。
This observation probability is also the ratio of the event of the degree of reversal observed (shatched area portion of s = 0.5) in the originally generated reversal phenomenon (histogram of s = 1). Then, by obtaining this observation probability, the degree of inversion of the SN value and the packet loss rate including the inversion phenomenon below the threshold value k that cannot be observed can be obtained.
以下、具体的な計算方法を説明する。
Step 1
まず、所定のサンプリング計測下で、SN値の逆転度を観測する。ここで、閾値をkとした場合のカウント値(観測値)をAkとする。尚、通常はk=1であり、この場合のカウント値はSN値の逆転回数、すなわちパケットロス回数(SN値の逆転現象数)と等しくなるので、SN値の逆転回数をカウントするようにしても良い。
Step 2
続いて、パケットロス回数(SN値の逆転現象数)をXi(収束前は一時的な推定値)とし、パケットロス率をpi+1=Xi+1/Thとする。ここで、Thは計測対象の期間中に発生した通信量(パケットの個数やサイズなど)である。そして、任意のパケットロス回数の初期値X0(>0)を選定し、それを初期値のパケットロス率p0に変換する。ここで、初期値のパケットロス率p0は、p0=X0/Thである。尚、初期値X0の推奨値は、直前期間のパケットロス回数、Akなどである。
Step 3
次に、piの値から観測確率QSN(pi,s,k)を求める。尚、sは所定サンプリング計測時のサンプリング確率であるが、観測確率QSN(pi,s,k)≠サンプリング確率sである。ここで、SN値を観測する場合の観測確率QSN(pi,s,k)は、式7となる。
式7
但し、kの採りうる値は1以上であり、jは逆転度である。尚、kを1に設定した場合、観測確率QSN(pi,s,k)は、
となる。
Hereinafter, a specific calculation method will be described.
First, the degree of inversion of the SN value is observed under a predetermined sampling measurement. Here, the count value (observed value) when the threshold value is k is A k . Normally, k = 1, and the count value in this case is equal to the number of SN value inversions, that is, the number of packet losses (number of SN value inversion phenomena), so that the number of SN value inversions is counted. Also good.
Subsequently, the number of packet losses (number of SN value reversal phenomenon) is X i (temporary estimated value before convergence), and the packet loss rate is p i + 1 = X i + 1 / Th. Here, Th is the amount of communication (number of packets, size, etc.) generated during the measurement target period. Then, an initial value X 0 (> 0) of an arbitrary number of packet losses is selected and converted to an initial value packet loss rate p 0 . Here, the initial packet loss rate p 0 is p 0 = X 0 / Th. Note that the recommended value of the initial value X 0, the packet loss count immediately preceding period, and the like A k.
Then, p i of observation from the value probability Q SN (p i, s, k) is determined. Note that s is the sampling probability at the time of the predetermined sampling measurement, but the observation probability Q SN (p i , s, k) ≠ sampling probability s. Here, the observation probability Q SN ( pi , s, k) when the SN value is observed is expressed by
However, the value that k can take is 1 or more, and j is the degree of inversion. When k is set to 1, the observation probability Q SN ( pi , s, k) is
It becomes.
ここで、サンプリング確率sの時の割合N(p,s,j)は、変数p,s,jの関数として定義され、TCP-Renoの場合、確率分布モデルに基づき、関数Nはポアソン分布をベースに決定することが可能である。この場合の、N(p,s,j)は式8となる。
式8
但し、bは定数である。
Here, the ratio N (p, s, j) at the time of the sampling probability s is defined as a function of the variables p, s, j. In the case of TCP-Reno, the function N has a Poisson distribution based on the probability distribution model. It is possible to decide on a base. In this case, N (p, s, j) is expressed by
However, b is a constant.
なお、N(p,s,j)の分布は、式8に限るものではなく、他の式でも良い。
Note that the distribution of N (p, s, j) is not limited to
このように関数N(p,s,j)を定義した後、観測確率QSN(pi,s,k)を求める。
Step 4
更に、観測値Akと観測確率QSN(pi,s,k)とからXi+1(パケットロス回数)を、式9に基づいて推定し、式10に基づいてパケットロス率に変換する。
式9
Xi+1=Ak/QSN(pi,s,k)
式10
pi+1=Xi+1/Th
Step 5
上述したStep 3とStep 4とを反復計算を行う。理想的には、X∞が真のパケットロス回数であるが、実際には、変化率={(Xi+1−Xi)/Xi}又は{(pi+1−pi)/pi}が一定以内になるまで反復計算を行ったり、iが一定回数になるまで反復計算を行ったりする。
After defining the function N (p, s, j) in this way, the observation probability Q SN (p i , s, k) is obtained.
Further, X i + 1 (the number of packet loss) is estimated based on
X i + 1 = A k / Q SN ( pi , s, k)
p i + 1 = X i + 1 / Th
このようにして、パケットロス率pi+1、パケットロス回数Xi+1を求める。 In this way, the packet loss rate p i + 1 and the packet loss count X i + 1 are obtained.
上述の計算方法では、統計的な手法を用いて、パケットロス率pi+1、パケットロス回数Xi+1を求める方法を説明したが、実験結果の分布を元にデータベースを構築し、その結果から関数Nを決定する手法も可能である。 In the above calculation method, the method of obtaining the packet loss rate p i + 1 and the number of packet loss X i + 1 using a statistical method has been described. However, a database is constructed based on the distribution of the experimental results, and the function N is calculated from the result. It is also possible to determine this.
以下にデータベースの構築の方法を述べる。 The database construction method is described below.
まず、図11のstep1に示す如く、サンプリング確率s0(=1)、すなわちフルサンプリング計測下で複数の所定のパケットロス率、例えば、パケットロス率0.001%(小さい値)から10%程度(大きな値)程度まで、図10に示す如く、サンプリング確率s時の逆転度を横軸とし、サンプリング確率s時の割合N(p,s,j)を縦軸とするSN値の逆転現象のヒストグラムをパケットロス率毎に作成する。
First, as shown in
次に、図11のstep2に示す如く、作成したヒストグラム(サンプリング確率s0=1)に基づいて、所定のサンプリング確率sのヒストグラムを予測する。このサンプリング確率sのヒストグラムN(p,s,j)であるが、フルサンプリングなのでN(p,1,j)が既知となり、式11で与えられる。
式11
但し、pはパケットロス率、sはサンプリング確率、jはSN値の逆転度である。
Next, as shown in
Equation 11
Here, p is the packet loss rate, s is the sampling probability, and j is the degree of inversion of the SN value.
このようにして得られた各サンプリング確率sのヒストグラムN(p,s,j)を、式6に代入して、図11のstep3に示す如く、各サンプリング確率sの観測確率を求める。尚、求められる観測確率は離散的なものなので、線形補間やログ補間を行って連続的な値を得、図11のstep4に示す如く、観測確率の結果をデータベースに記録する。図12はこのようなデータベースの一例を示したものである。
The histogram N (p, s, j) of each sampling probability s obtained in this way is substituted into
図12に示されるデータベースでは、検索キーはパケットロス率とサンプリング確率との組み合わせであり、この組み合わせと、その組み合わせの観測確率とが対応付けられて記憶されている。 In the database shown in FIG. 12, the search key is a combination of the packet loss rate and the sampling probability, and this combination and the observation probability of the combination are stored in association with each other.
尚、上述の説明では、フルサンプリング計測下で得られたヒストグラムを基にデータベースを作成したが、かならずしもフルサンプリング計測下で得られたヒストグラムに基づいて作成する必要はない。例えば、多少精度は落ちるが、サンプリング確率=0.9程度のサンプリング計測下で得られたヒストグラムを基にデータベースを作成しても良い。 In the above description, the database is created based on the histogram obtained under full sampling measurement, but it is not always necessary to create it based on the histogram obtained under full sampling measurement. For example, the database may be created based on a histogram obtained under sampling measurement with a sampling probability of about 0.9, although the accuracy is somewhat reduced.
そして、式10で得られたパケットロス率とその時のサンプリング確率との組み合わせに対応する観測確率を、データベースから検索し、この検索した観測確率を式9に再び代入することにより、上述したStep4の処理を行う。
Then, the observation probability corresponding to the combination of the packet loss rate obtained by
このように処理することにより、上述した統計的な手法と同様に、パケットロス率pi+1、パケットロス回数Xi+1を求めることが可能となる。 By processing in this way, it is possible to obtain the packet loss rate p i + 1 and the number of packet losses X i + 1 as in the statistical method described above.
次に、上述した観測確率を用いてプロトコル種別の判定について説明する。尚、上述したSN値の観測確率を、プロトコルに対するサンプリング確率s、パケットロス率毎に求めてデータベース化しておく。
Step 1
まず、所定のサンプリング計測下で、SN値の逆転度を観測する。ここで、閾値をkとした場合のカウント値(観測値)をAkとする。尚、k=1の場合のカウント値はSN値の逆転回数、すなわちパケットロス回数(SN値の逆転現象数)と等しくなるので、SN値の逆転回数をカウントするようにしても良い。このような閾値kが異なるAkを、サンプリング確率sの計測下で少なくとも2以上観測する。
Step 2
続いて、パケットロス回数(SN値の逆転現象数)をXi(収束前は一時的な推定値)とし、パケットロス率をpi+1=Xi+1/Thとする。ここで、Thは計測対象の期間中に発生した通信量(パケットの個数やサイズなど)である。そして、任意のパケットロス回数の初期値X0(>0)を選定し、それを初期値のパケットロス率p0に変換する。ここで、初期値のパケットロス率p0は、p0=X0/Thである。尚、初期値X0の推奨値は、直前期間のパケットロス回数、Ak等である。
Step 3
次に、任意のプロトコルにおける、サンプリング確率s時のpi、kの値に対応する観測確率QSN(pi,s,k)をデータベースから求める。尚、sは所定サンプリング計測時のサンプリング確率であるが、観測確率QSN(pi,s,k)≠サンプリング確率sである。
Next, determination of the protocol type will be described using the observation probability described above. Note that the above-described SN value observation probabilities are obtained for each sampling probability s and packet loss rate for the protocol and stored in a database.
First, the degree of inversion of the SN value is observed under a predetermined sampling measurement. Here, the count value (observed value) when the threshold value is k is A k . Note that the count value in the case of k = 1 is equal to the number of SN value inversions, that is, the number of packet losses (the number of SN value inversion phenomena), so the number of SN value inversions may be counted. Such threshold k are different A k, to observe at least two under measurement sampling probability s.
Subsequently, the number of packet losses (number of SN value reversal phenomena) is set to X i (temporary estimated value before convergence), and the packet loss rate is set to p i + 1 = X i + 1 / Th. Here, Th is the amount of communication (number of packets, size, etc.) generated during the measurement target period. Then, an initial value X 0 (> 0) of an arbitrary number of packet losses is selected and converted to an initial value packet loss rate p 0 . Here, the initial packet loss rate p 0 is p 0 = X 0 / Th. Note that the recommended value of the initial value X 0, the packet loss count immediately preceding period, is A k and the like.
Next, an observation probability Q SN (p i , s, k) corresponding to the values of p i and k at the sampling probability s in an arbitrary protocol is obtained from the database. In addition, although s is a sampling probability at the time of predetermined sampling measurement, it is observation probability QSN ( pi , s, k) ≠ sampling probability s.
次に、観測値Akと観測確率QSN(pi,s,k)とからパケットロス回数Xi+1を、下記式に基づいて推定する。 Next, the packet loss frequency X i + 1 is estimated from the observation value A k and the observation probability Q SN (p i , s, k) based on the following equation.
Xi+1=Ak/QSN(pi,s,k)
そして、下記式に基づいてパケットロス率に変換する。
pi+1=Xi+1/Th
Step 4
上述したStep 3を反復計算する。理想的には、X∞が真のパケットロス回数であるが、実際には、変化率={(Xi+1−Xi)/Xi}又は{(pi+1−pi)/pi}が一定以内になるまで反復計算を行ったり、iが一定回数になるまで反復計算を行ったりする。
X i + 1 = A k / Q SN (p i , s, k)
And it converts into a packet loss rate based on a following formula.
p i + 1 = X i + 1 / Th
このようにして、サンプリング確率sの計測下におけるAkのパケットロス率pi+1、パケットロス回数Xi+1を求める。
Step 5
続いて、Akにおけるパケットロス率pi+1を用いて、Al(k≠l)のパケットロス回数Xlを求める。Alのパケットロス回数Xlは、サンプリング確率sの計測下におけるAkのパケットロス率pi+1に対応する観測確率QSN(pi+1,s,k)をデータベースから検索し、この観測確率QSN(pi+1,s,k)を用いて、次式より求める。
In this way, the packet loss rate p i + 1 and the packet loss count X i + 1 of Ak under the measurement of the sampling probability s are obtained .
Then, by using the packet loss rate p i + 1 in A k, determine packet loss count X l of A l (k ≠ l). Packet loss count X l of A l searches corresponding to the packet loss rate p i + 1 of A k in the measurement of a sampling probability s observation probability Q SN (p i + 1, s, k) from the database, the observation probability Q Using SN (pi + 1 , s, k), the following equation is used.
Xl=Al/QSN(pi+1,s,k)
このとき、Alのパケットロス回数Xは、正しいプロトコルの観測確率が用いられていれば、Akにおけるパケットロス回数Xi+1と近似したものとなる。Alのパケットロス回数Xと、Akにおけるパケットロス回数Xi+1とが近似したものであるならば、計算に用いた観測確率のプロトコルが、計測したパケットのプロトコルである。
X l = A l / Q SN (p i + 1, s, k)
At this time, the packet loss count X of A l approximates the packet loss count X i + 1 at A k if the observation probability of the correct protocol is used. A packet loss count X of A l, if a packet loss count X i + 1 at A k is an approximation, observation probability of the protocol used for the calculation is the measure the packet protocol.
一方、Alのパケットロス回数Xと、Akにおけるパケットロス回数Xi+1とが乖離したものであれば、正しいプロトコルの観測確率を選択しなかったこととなり、他のプロトコルの観測確率を用いてStep 2からやり直す。
On the other hand, a packet loss count X of A l, as long as the packet loss count X i + 1 at A k is deviated, it is possible to not select the observation probability of the correct protocol, using the observation probability of the other protocols Redo from
このように、観測確率を用いてプロトコルを推定することができる。
尚、上述の説明では、説明を容易とする為に、同一のサンプリング確率から異なる閾値の観測確率を二つ用いた例を説明したが、精度を高める為に三以上の観測確率を用いるようにしても良い。
また、異なるサンプリング確率から同一の閾値の観測確率を用いても良い。すなわち、サンプリング確率と閾値との組み合わせが異なる観測確率を複数個用いて、プロトコルを判定するようにしても良い。この場合、各観測確率を用いたパケットロス回数の計算は、上述の説明と同様である。
In this way, the protocol can be estimated using the observation probability.
In the above description, for ease of explanation, an example in which two observation probabilities with different thresholds are used from the same sampling probability has been described. However, in order to improve accuracy, three or more observation probabilities are used. May be.
Further, observation probabilities with the same threshold may be used from different sampling probabilities. That is, the protocol may be determined using a plurality of observation probabilities with different combinations of sampling probabilities and thresholds. In this case, the calculation of the number of packet losses using each observation probability is the same as described above.
次に、本発明を具体的なシステムに適用した実施の形態を説明する。 Next, an embodiment in which the present invention is applied to a specific system will be described.
本発明が適用されるネットワークシステムは、上述した第2の実施の形態における図4と同様である。 The network system to which the present invention is applied is the same as that in FIG. 4 in the second embodiment described above.
図13は第3の実施の形態における判定装置1の構成を示すブロック図である。尚、第2の実施の形態と異なる部分について説明する。
FIG. 13 is a block diagram illustrating a configuration of the
観測確率データベース1306には、上述したSN値の逆転度の観測確率が、プロトコル、パケットロス率、サンプリング確率毎に格納されている。 The observation probability database 1306 stores the observation probability of the degree of inversion of the SN value described above for each protocol, packet loss rate, and sampling probability.
SN識別部301は、受信したパケットのSN値を計測する。SN逆転度検出部302は、計測したSN値から逆転度を計測する。 The SN identification unit 301 measures the SN value of the received packet. The SN inversion degree detection unit 302 measures the degree of inversion from the measured SN value.
パケットロス回数計算部1303は、End-to-End情報格納部205からある閾値kのカウント数(Ak)を読み出し、上述したStep1からStep5の計算を行い、その後に異なる閾値j(≠k)のカウント数(Aj)を読み出し、上述したStep1からStep5の計算を行い、再度パケットロス回数を求める。
The packet loss number calculation unit 1303 reads the count number (A k ) of a certain threshold k from the end-to-end information storage unit 205, calculates
パケットロス回数照合部1204は、パケットロス回数計算部1303からの結果を受け、異なる閾値kとjとから求めたパケットロス回数を照合し、二つのパケットロス回数が近似していれば、用いた観測確率のプロトコルを、パケットのプロトコルと判断する。一方、異なる閾値kとjとから求めたパケットロス回数が乖離していれば、再度の計算をパケットロス回数計算部1303に指示する。 The packet loss count collation unit 1204 receives the result from the packet loss count calculation unit 1303, collates the packet loss counts obtained from different thresholds k and j, and uses the two packet loss counts if they are approximate. The observation probability protocol is determined as the packet protocol. On the other hand, if the packet loss times calculated from the different threshold values k and j are different, the packet loss frequency calculation unit 1303 is instructed to perform the calculation again.
実施例3として、スループット推定式が下記式
(RTTはラウンドトリップ時間、pはパケットロス率、bはdelay ACKパラメタ(送信端末がACKを受け取るごとに1/bウインドサイズを大きくする))
であらわせられるTCP-Renoのうちb=1及びb=2のプロトコルを用い、フローAはb=2のプロトコルのパケットが流れるフローであり、フローBはb=1のプロトコルのパケットが流れるフローであり、RTTが20ms、パケットロス率が1%、s=0.25で5分間の観測した場合の実験結果を説明する。尚、上記スループット推定式は、文献“Jitendra Padhye, Victor Firoiu, Don towsley, Jim Kurose, “Modeling TCP Throughput: A Simple Model and its Empirical Validation”, In ACM SIGCOMM’98”に記載されているものを用いた。
As Example 3, the throughput estimation formula is the following formula:
(RTT is the round trip time, p is the packet loss rate, b is the delay ACK parameter (the 1 / b window size is increased each time the transmitting terminal receives ACK))
In the TCP-Reno, the protocol of b = 1 and b = 2 is used, the flow A is a flow in which a packet of protocol b = 2 flows, and the flow B is a flow in which a packet of protocol b = 1 flows. There will be described experimental results when observation is performed for 5 minutes with an RTT of 20 ms, a packet loss rate of 1%, and s = 0.25. The throughput estimation formula described in the literature “Jitendra Padhye, Victor Firoiu, Don towsley, Jim Kurose,“ Modeling TCP Throughput: A Simple Model and its Empirical Validation ”, In ACM SIGCOMM '98” is used. It was.
以下の実験では、フローA、フローBともに、bが不明なものとして、プロトコルの判定を行うものとする。 In the following experiment, it is assumed that both the flow A and the flow B are determined as protocols with the b being unknown.
この環境のもとで、フローAは173205 pakcetsが通過、k=1(SN逆転度が1以上を計測対象)の個数は409個、k=2(SN逆転度が2以上を計測対象)の個数は340個計測できた。また、フローBは244949 pakcetsが通過、k=1(SN逆転度が1以上を計測対象)の個数は602個、k=2(SN逆転度が2以上を計測対象)の個数は560個が計測できた。 Under this environment, the flow A is 173205 pakcets, the number of k = 1 (the SN inversion degree is 1 or more) is 409, and k = 2 (the SN inversion degree is 2 or more). 340 pieces could be measured. Further, in flow B, 244949 pakcets pass, the number of k = 1 (SN inversion degree is 1 or more) is 602, and the number of k = 2 (SN inversion degree is 2 or more) is 560. I was able to measure.
まず、フローAでは、閾値k=1の逆転数は409個、通信量Thは173205であるので、バケットロス回数X0の初期値を409とすると、バケットロス率の初期値は、p0=X0/Th により、p0=0.00236となる。従って、b=2の観測確率QSN(0.00236,0.25,1)の値をデータベースから検索すると、QSN(0.00236,0.25,1)は0.24939であった。 First, in flow A, the reverse number of the threshold k = 1 is 409, and the traffic amount Th is 173205. Therefore, if the initial value of the bucket loss count X 0 is 409, the initial value of the bucket loss rate is p 0 = From X 0 / Th, p 0 = 0.00236. Therefore, when the value of the observation probability Q SN (0.00236, 0.25, 1) of b = 2 is retrieved from the database, Q SN (0.00236, 0.25, 1) is 0.24939.
QSN(0.00236,0.25,1)=0.24939を用い、パケットロス回数X1を計算すると、X1=409/0.24939=1640となる。 When Q SN (0.00236, 0.25, 1) = 0.24939 is used and the packet loss count X 1 is calculated, X 1 = 409 / 0.24939 = 1640.
続いて、パケットロス回数X2、X3、X4と計算していくと、X2=1724、X3=1731、X4=1732となり、X4で収束した。X4時のパケットロス率は、1732/173205=0.0099997≒0.01となり、b=2における閾値k=2の観測確率QSN(0.01,0.25,2)の値をデータベースから検索すると、0.1963048であった。 Subsequently, when the packet loss times X 2 , X 3 , and X 4 were calculated, X 2 = 1724, X 3 = 1731, and X 4 = 1732, which converged at X 4 . Packet loss rate o'clock X 4 is, searching 1732/173205 = 0.0099997 ≒ 0.01, and the threshold in the b = 2 k = 2 of the observation probability Q SN value of (0.01,0.25,2) from the database, was 0.1963048 .
閾値k=2の個数は340個であるので、閾値k=2のパケットロス回数は340 / 0.1963048 = 1732となり、k=1の時のパケットロス回数である1732と一致するので、観測確率をb=2から選んだことは正しい。従って、フローAのプロトコルは、b=2のTCP-Renoである。 Since the number of threshold values k = 2 is 340, the number of packet losses when threshold value k = 2 is 340 / 0.1963048 = 1732, which matches 1732 which is the number of packet losses when k = 1. It is correct to choose from = 2. Therefore, the protocol of flow A is TCP-Reno with b = 2.
同様に、フローBでは、閾値k=1の個数は602個、通信量Thは244949であるので、バケットロス回数X0の初期値を602とすると、バケットロス率の初期値は、p0=X0/Th により、p0=0.00245となる。従って、b=2の観測確率QSN(0.00245,0.25,1)の値をデータベースから検索すると、QSN(0.00245,0.25,1)は0.24927であった。 Similarly, in flow B, since the number of threshold values k = 1 is 602 and the traffic amount Th is 244949, if the initial value of the bucket loss count X 0 is 602, the initial value of the bucket loss rate is p 0 = From X 0 / Th, p 0 = 0.00245. Therefore, when the value of the observation probability Q SN (0.00245, 0.25, 1) of b = 2 is searched from the database, Q SN (0.00245, 0.25, 1) is 0.24927.
b=2のQSN(0.00245,0.25,1)=0.24927を用い、パケットロス回数X1を計算すると、X1=602/0.24927=2415となる。 with b = 2 the Q SN (0.00245,0.25,1) = 0.24927, is calculated packet loss count X 1, the X 1 = 602 / 0.24927 = 2415 .
続いて、パケットロス回数X2、X3、X4と計算していくと、X2=2547、X3=2558、X4=2599となり、X4で収束した。X4時のパケットロス率は、2559/244949=0.010447≒0.0105となり、b=2における閾値k=2の観測確率QSN(0.0105,0.25,2)の値をデータベースから検索すると、0.19314であった。 Subsequently, when the packet loss times X 2 , X 3 , and X 4 were calculated, X 2 = 2547, X 3 = 2558, and X 4 = 2599, which converged at X 4 . X packet loss rate of 4:00, when searching 2559/244949 = 0.010447 ≒ 0.0105, and the threshold in the b = 2 k = 2 of the observation probability Q SN value of (0.0105,0.25,2) from the database, was 0.19314 .
閾値k=2の個数は560個であるので、閾値k=2のパケットロス回数は560/0.19314=2899となり、k=1の時のパケットロス回数である2599と異なるので、観測確率をb=2から選んだことは間違っている。従って、フローBのプロトコルは、b=2のTCP-Renoではない。 Since the number of threshold values k = 2 is 560, the number of packet losses when the threshold value k = 2 is 560 / 0.19314 = 2899, which is different from 2599 which is the number of packet losses when k = 1. The choice from 2 is wrong. Therefore, the protocol of flow B is not TCP-Reno with b = 2.
次に、フローBについて、b=1の観測確率を用いて同様な計算を行う。フローBでは、閾値k=1の逆転数は602個、通信量Thは244949であり、パケットロス回数X0、X1、X2、X3と計算していくと、X0=602、X1=2408、X2=2447、X3=2449となり、X3で収束した。X3時のパケットロス率は、2449 / 244949 = 0.0099979≒0.01となり、閾値k=2の観測確率QSN(0.01,0.25,2)の値をデータベースから検索すると、0.2286649であった。 Next, the same calculation is performed for the flow B using the observation probability of b = 1. In the flow B, the number of inversions of the threshold value k = 1 is 602, the communication amount Th is 244949, and when calculating the packet loss times X 0 , X 1 , X 2 , X 3 , X 0 = 602, X 1 = 2408, X 2 = 2447, X 3 = 2449, and convergence was achieved at X 3 . X Packet loss rate at 3, 2449/244949 = 0.0099979 ≒ 0.01 next, searching the value of the threshold k = 2 of the observation probability Q SN (0.01,0.25,2) from the database, was 0.2286649.
閾値k=2の個数は560個であるので、閾値k=2のパケットロス回数は560 / 0.2286649 = 2449となり、k=1の時のパケットロス回数である2449と一致しており、b=1から選んだ観測確率は正しい。従って、フローBのプロトコルは、b=1のTCP-Renoである。 Since the number of threshold values k = 2 is 560, the number of packet losses when the threshold value k = 2 is 560 / 0.2286649 = 2449, which matches 2449, which is the number of packet losses when k = 1, and b = 1. The observation probability selected from is correct. Therefore, the protocol of flow B is TCP-Reno with b = 1.
以上の如く、ACK重複度及びSN逆転度の観測確率を用いて、プロトコルを判定する説明を行ったが、ACK重複度及びSN逆転度のいずれか一方のみの観測確率を用いることに限定されず、ACK重複度とSN逆転度との双方の観測確率を用いてプロトコルを判定することも可能である。すなわち、ACK重複度の観測確率から得られたパケットロス数とSN逆転度の観測確率から得られたパケットロス数とを、上述の如く比較することにより、プロトコルの判定を行うようにしても良い。 As described above, the protocol is determined by using the observation probability of the ACK duplication degree and the SN inversion degree. However, the present invention is not limited to using the observation probability of only one of the ACK duplication degree and the SN inversion degree. It is also possible to determine the protocol using the observation probabilities of both the ACK duplication degree and the SN inversion degree. In other words, the protocol determination may be performed by comparing the number of packet losses obtained from the observation probability of the ACK duplication degree and the number of packet losses obtained from the observation probability of the SN inversion degree as described above. .
尚、上述した実施の形態では、各部をハードウェアで構成したが、上述した動作を情報処理装置に行わせるプログラムによっても実現可能である。 In the above-described embodiment, each unit is configured by hardware, but can be realized by a program that causes the information processing apparatus to perform the above-described operation.
1 計測装置
2,3 通信端末
4,5 分岐装置
1 Measuring
Claims (23)
ネットワークに流れるパケットを所定のサンプリング確率で計測して、送信端末のウィンドウ幅の情報を表す指標を計算し、
前記指標の統計情報に基づいて、パケットのプロトコルの種別を判別することを特徴とするプロトコル種別判別方法。 A protocol type determination method for determining a protocol type of a packet flowing in a network,
Measure the packet flowing in the network with a predetermined sampling probability, calculate the index representing the window width information of the sending terminal,
A protocol type determining method, wherein the type of packet protocol is determined based on statistical information of the index.
計算した指標から得られた統計情報と、前記データベース化された指標の統計情報とを照合し、統計情報が近似するプロトコルの種別を、観測しているパケットのプロトコルと判定する
ことを特徴とする請求項1から請求項5のいずれかに記載のプロトコル種別判別方法。 For each protocol type, create a database of index statistical information for a given packet loss rate,
The statistical information obtained from the calculated index is compared with the statistical information of the index stored in the database, and the protocol type that the statistical information approximates is determined as the protocol of the packet being observed. The protocol type determination method according to any one of claims 1 to 5.
各観測確率のパケットロス回数が近似している場合、用いた観測確率に対応するプロトコルを、観測しているパケットのプロトコルと判定することを特徴とする請求項7から請求項9のいずれかに記載のプロトコル種別判別方法。 Select multiple observation probabilities with different combinations of sampling probability and threshold from the same protocol, and calculate the number of packet losses using each observation probability.
10. The protocol according to any one of claims 7 to 9, wherein, when the number of packet losses of each observation probability is approximate, the protocol corresponding to the observation probability used is determined as the protocol of the packet being observed. The protocol type determination method described.
前記データベースの同一プロトコルのなかから、サンプリング確率と閾値との組み合わせが異なる閾値の観測確率を複数個読み出し、読み出した複数の観測確率を用いて複数のパケットロス回数を計算することを特徴とする請求項10に記載のプロトコル種別判別方法。 Database of observation probabilities for each protocol, sampling probability, and threshold,
A plurality of observation probabilities of thresholds having different combinations of sampling probabilities and thresholds are read out from the same protocol in the database, and a plurality of packet loss times are calculated using the read out observation probabilities. Item 11. The protocol type determination method according to Item 10.
ネットワークに流れるパケットを所定のサンプリング確率で計測して、送信端末のウィンドウ幅の情報を表す指標を計算する計算手段と、
前記指標の統計情報に基づいて、パケットのプロトコルの種別を判別する判別手段と
を有することを特徴とするプロトコル種別判別システム。 A protocol type discrimination system that discriminates the protocol type of a packet flowing through a network,
A calculation means for measuring a packet flowing through the network with a predetermined sampling probability, and calculating an index representing information on a window width of the transmission terminal;
A protocol type discrimination system comprising: discrimination means for discriminating a packet protocol type based on the statistical information of the index.
プロトコルの種別毎に、所定のパケットロス率における指標の統計情報が記憶されたデータベースと、
計算した指標から得られた統計情報と、前記データベース化された指標の統計情報とを照合し、最も類似する統計情報に対応するプロトコルの種別を、観測しているパケットのプロトコルと判定する手段と
を有することを特徴とする請求項12から請求項16のいずれかに記載のプロトコル種別判別システム。 The discrimination means includes
For each protocol type, a database storing statistical information of an index at a predetermined packet loss rate;
Means for collating the statistical information obtained from the calculated index with the statistical information of the index stored in the database and determining the protocol type corresponding to the most similar statistical information as the protocol of the packet being observed; 17. The protocol type discrimination system according to claim 12, further comprising:
各観測確率のパケットロス回数が近似している場合、用いた観測確率に対応するプロトコルを、観測しているパケットのプロトコルと判定することを特徴とする請求項18から請求項20のいずれかに記載のプロトコル種別判別システム。 The discriminating means selects a plurality of observation probabilities with different combinations of sampling probabilities and thresholds from the same protocol, calculates the number of packet losses using each observation probability,
21. The protocol according to any one of claims 18 to 20 , wherein when the number of packet losses of each observation probability is approximate, the protocol corresponding to the observation probability used is determined as the protocol of the packet being observed. The described protocol type discrimination system.
前記判別手段は、前記データベースの同一プロトコルのなかから、サンプリング確率と閾値との組み合わせが異なる観測確率を複数個読み出し、読み出した複数の観測確率を用いて、複数のパケットロス回数を計算することを特徴とする請求項21に記載のプロトコル種別判別システム。 It has a database that stores protocols, sampling probabilities, and observation probabilities for each threshold,
The discriminating means reads out a plurality of observation probabilities with different combinations of sampling probabilities and thresholds from the same protocol in the database, and calculates a plurality of packet loss times using the read out observation probabilities. The protocol type discrimination system according to claim 21,
ネットワークに流れるパケットを所定のサンプリング確率で計測して、送信端末のウィンドウ幅の情報を表す指標を計算する処理と、
前記指標の統計情報に基づいて、パケットのプロトコルの種別を判別する処理と
を情報処理装置に実行させることを特徴とするプロトコル種別判別のプログラム。 A program for determining the protocol type of a packet flowing through a network,
A process of measuring a packet flowing in the network with a predetermined sampling probability and calculating an index representing information on a window width of the transmission terminal;
A protocol type determination program that causes an information processing apparatus to execute a process of determining a packet protocol type based on statistical information of the index.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006326707A JP4793580B2 (en) | 2006-12-04 | 2006-12-04 | Protocol type determination method, system and program thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006326707A JP4793580B2 (en) | 2006-12-04 | 2006-12-04 | Protocol type determination method, system and program thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008141565A JP2008141565A (en) | 2008-06-19 |
JP4793580B2 true JP4793580B2 (en) | 2011-10-12 |
Family
ID=39602555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006326707A Expired - Fee Related JP4793580B2 (en) | 2006-12-04 | 2006-12-04 | Protocol type determination method, system and program thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4793580B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101272670B1 (en) | 2011-11-28 | 2013-06-10 | 엔에이치엔(주) | Apparatus, method and computer readable recording medium of distinguishing access network of a user terminal |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0388539A (en) * | 1989-08-31 | 1991-04-12 | Nippon Telegr & Teleph Corp <Ntt> | Protocol kind detection system |
JP2001127832A (en) * | 1999-10-28 | 2001-05-11 | Ando Electric Co Ltd | Protocol analyzer and protocol analyzing method |
JP3931988B2 (en) * | 2004-08-26 | 2007-06-20 | 日本電気株式会社 | Network quality measuring method and measuring apparatus |
US20090116402A1 (en) * | 2004-10-21 | 2009-05-07 | Nec Corporation | Communication quality measuring apparatus and communication quality measuring method |
JP4599554B2 (en) * | 2004-12-15 | 2010-12-15 | 広島市 | TCP congestion control method for broadband, high-delay wireless networks |
ATE413033T1 (en) * | 2004-12-22 | 2008-11-15 | Ericsson Telefon Ab L M | DATA FLOW CONTROL WITH DOUBLE ACKNOWLEDGMENT |
-
2006
- 2006-12-04 JP JP2006326707A patent/JP4793580B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008141565A (en) | 2008-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9444701B2 (en) | Identifying remote machine operating system | |
CN110225417B (en) | Data processing method and server, and method and server for detecting stuck state | |
CN110519290B (en) | Abnormal flow detection method and device and electronic equipment | |
EP3176981A1 (en) | Method and device for detecting type of network data flow | |
JP4924503B2 (en) | Congestion detection method, congestion detection apparatus, and congestion detection program | |
JP6564799B2 (en) | Threshold determination device, threshold determination method and program | |
US9059951B2 (en) | Method and apparatus for spam message detection | |
US9565119B2 (en) | Packet analysis method, packet analysis device, and storage medium | |
CN113489619B (en) | Network topology inference method and device based on time series analysis | |
JP5206968B2 (en) | Estimation method, apparatus and program, and network measurement system | |
JP2008219127A (en) | Network quality measuring instrument, network quality measuring method, and network quality measuring program | |
JP4324189B2 (en) | Abnormal traffic detection method and apparatus and program thereof | |
JP2012186780A (en) | Packet loss rate estimation device and method and program | |
JP5532241B2 (en) | High packet rate flow detection apparatus and high packet rate flow detection method | |
JP4793580B2 (en) | Protocol type determination method, system and program thereof | |
US8614965B2 (en) | Packet loss frequency measuring system, packet loss frequency measuring method, and program | |
US7894363B2 (en) | Data transfer rate variance measurement method, apparatus, system, and storage medium for storing program | |
JP4683338B2 (en) | Network quality measuring apparatus and method | |
JP5396999B2 (en) | Packet loss frequency estimation system, packet loss frequency estimation method and program | |
CN114554521A (en) | Method and device for detecting sub-stream shared bandwidth bottleneck of multi-path transmission protocol | |
JP4282556B2 (en) | Flow level communication quality management apparatus and method and program | |
JP7183554B2 (en) | VOICE QUALITY DEFAULT LOCATION ESTIMATION DEVICE, METHOD AND PROGRAM | |
US20190166043A1 (en) | Information processing apparatus and method thereof | |
Li | Predicting end-to-end delay of the Internet using time series analysis | |
CN115396370B (en) | Exit discrimination mode acquisition and slow start exit method, device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110413 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110610 |
|
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: 20110629 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110712 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4793580 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140805 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |