JP2010041644A - Flow determination method, communication device, and program - Google Patents
Flow determination method, communication device, and program Download PDFInfo
- Publication number
- JP2010041644A JP2010041644A JP2008205435A JP2008205435A JP2010041644A JP 2010041644 A JP2010041644 A JP 2010041644A JP 2008205435 A JP2008205435 A JP 2008205435A JP 2008205435 A JP2008205435 A JP 2008205435A JP 2010041644 A JP2010041644 A JP 2010041644A
- Authority
- JP
- Japan
- Prior art keywords
- flow
- data
- rank
- comparison
- new packet
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、インターネット、IPネットワークなどの複数の端末を相互に接続するネットワーク上における複数の拠点間の複数の通信を計測する方法に関し、特には、新規に発生したトラフィックが、既に発生したフローに属するか否かを判定するフロー判定方法、通信装置及びプログラムに関する。 The present invention relates to a method for measuring a plurality of communications between a plurality of bases on a network that connects a plurality of terminals such as the Internet and an IP network, in particular, a newly generated traffic is a flow that has already occurred. The present invention relates to a flow determination method, a communication apparatus, and a program for determining whether to belong.
インターネットで使われるIPには、プロトコル、ソースIPアドレス、宛先IPアドレスの情報が含まれ、また、トランスポートプロトコルには、ソースポート、宛先ポートの情報が含まれる。 The IP used on the Internet includes information on a protocol, a source IP address, and a destination IP address, and the transport protocol includes information on a source port and a destination port.
トラフィック計測技術の中で、これらのパケットが持つ情報を元に通信の種別を分類する方法がフロー計測(フロー判定)である。 Among traffic measurement techniques, a method of classifying communication types based on information held by these packets is flow measurement (flow determination).
フロー計測では、同一のプロトコル、同一のソースIPアドレス、同一の宛先IPアドレス、同一のソースポート、同一の宛先ポートなどの情報を持つパケットを、同一の通信に属するパケットと見なす。同一の通信に属するパケットの集合をフローと呼ぶ。フローのデータ量やパケット量を計測することで、複数の地点間で複数の通信サービスを監視することができる。 In flow measurement, packets having information such as the same protocol, the same source IP address, the same destination IP address, the same source port, and the same destination port are regarded as packets belonging to the same communication. A set of packets belonging to the same communication is called a flow. By measuring the flow data amount and packet amount, a plurality of communication services can be monitored between a plurality of points.
インターネット通信では、ルータにより経路制御が行われる。送信元から送出されたパケットは、複数のルータを経由することで送信先に到達する。ルータは、パケットのIPヘッダや場合によってはトランスポートレイヤーのヘッダを参照するため、上述のフローの分類をする機器としては適している。 In Internet communication, route control is performed by a router. A packet transmitted from the transmission source reaches the transmission destination via a plurality of routers. Since the router refers to the IP header of the packet and, in some cases, the header of the transport layer, it is suitable as a device for classifying the flows described above.
ルータを通過したパケットのフロー情報を他の機器に通知する方法として、NetFlow(非特許文献1参照)やIPFIX(IP Flow Information Export)(非特許文献2参照)が知られている。 As a method for notifying other devices of the flow information of a packet that has passed through a router, NetFlow (see Non-Patent Document 1) and IPFIX (IP Flow Information Export) (see Non-Patent Document 2) are known.
これらの方法では、フロー情報の送信装置の一つとして、ルータが想定されている。送信装置から送信されたフロー情報は、送信装置とネットワーク接続性がある受信装置にて受信される。 In these methods, a router is assumed as one of the flow information transmission apparatuses. Flow information transmitted from the transmission device is received by a reception device having network connectivity with the transmission device.
フロー情報には、例えば、送信元IPアドレス、宛先IPアドレス、送信元ポート、宛先ポート、プロトコル、フロー開始時間、フロー終了時間、バイトカウンタ、などの情報が含まれる。これらの各情報の項目は、NetFlowではフィールドタイプ、IPFIXではInformation Elenentと呼ばれる。以下では、NetFlowにおけるフィールドタイプと、IPFIXにおけるInformation Elementを、要素情報と総称する。 The flow information includes information such as a source IP address, a destination IP address, a source port, a destination port, a protocol, a flow start time, a flow end time, and a byte counter. These items of information are called field types in NetFlow and Information Elenent in IPFIX. Hereinafter, field types in NetFlow and Information Elements in IPFIX are collectively referred to as element information.
フロー情報をパケット化する方式としては、固定フォーマット方式とテンプレート定義方式の2方式がある。固定フォーマット方式では、フロー情報内に常に同一の要素情報が固定された並び方で並ぶ。 There are two methods for packetizing flow information: a fixed format method and a template definition method. In the fixed format method, the same element information is always arranged in a fixed manner in the flow information.
テンプレート定義方式では、フロー情報の定義情報とフロー情報のデータ情報が分離しており、定義情報内に含まれる要素情報の番号とそのサイズの情報からフロー情報のデータ情報のフィールドが決定される。定義情報内には要素情報の番号とそのサイズの情報の組み合わせが1つ以上連続して列挙してあり、それによってデータ情報の複数のフィールドが決定される。定義情報内の要素情報の列挙順に基づいてデータ情報内のフィールドの順序が決定し、フォーマットが決められる。 In the template definition method, the flow information definition information and the flow information data information are separated, and the field of the flow information data information is determined from the element information number and the size information included in the definition information. In the definition information, one or more combinations of element information numbers and information of their sizes are listed in succession, whereby a plurality of fields of data information are determined. The order of the fields in the data information is determined based on the order of enumeration of the element information in the definition information, and the format is determined.
既存のプロトコルでテンプレート定義方式を採用しているのは、NetFlow version 9、IPFIXである。一方、NetFlow version 1,5,8は、固定フォーマット方式を採用している。
It is NetFlow version 9 and IPFIX that adopt the template definition method in the existing protocol. On the other hand, NetFlow
テンプレート定義方式では、先ず、テンプレートと呼ばれる要素情報の番号及びその要素情報のサイズを列挙した情報を、送信装置が受信装置に送信する。 In the template definition method, first, the transmission device transmits information listing the number of element information called a template and the size of the element information to the reception device.
テンプレートが受信側で受信された後、送信装置は、テンプレートで定義された要素情報の順序でフローのデータをパケット化し、受信装置に送信する。 After the template is received on the receiving side, the transmitting apparatus packetizes the flow data in the order of the element information defined in the template, and transmits the packet data to the receiving apparatus.
テンプレート定義方式では、テンプレートの定義によってフロー情報に含める要素情報を変更できるため、個々のネットワーク構成やフロー情報の収集の個々の目的に適したフロー情報を送受信できる。 In the template definition method, the element information included in the flow information can be changed by the template definition, so that it is possible to transmit / receive flow information suitable for each network configuration and each purpose of collecting flow information.
フローの送信装置では、フローを判定する機能部と判定されたフロー情報をパケット化して送信する機能部は分離できるため、パケット化にテンプレート定義方式を採用しているプロトコルを用いた場合でも、ユーザからの入力によるテンプレートの変更の柔軟性を有さず、フロー判定を行う機能部は常にある特定のフィールドのみに関して判定を行い、プロトコル規約に従ってデータ情報以外に定義情報を送信するものの、送出されるパケットも実質的には固定されたフォーマットを用いている実装も存在し得る。一方で、テンプレートの決定にユーザからの入力等を受け付ける場合、その入力によってフローに含まれる要素情報、またフローを構成する条件となる要素情報が決定される。 In the flow transmission device, the function unit that determines the flow and the function unit that packetizes and transmits the flow information that is determined can be separated, so even if a protocol that uses a template definition method for packetization is used, the user The function part that performs flow determination always makes a determination on only a specific field and sends definition information in addition to data information according to the protocol rules, but does not have the flexibility of changing the template by input from There may also be implementations where the packet uses a substantially fixed format. On the other hand, when an input from a user is accepted for determination of a template, element information included in the flow and element information serving as a condition constituting the flow are determined by the input.
フローを構成する条件となる要素情報に基づいて、観測されたパケットの該当するフィールドから情報(データ)が抜き出される。抜き出された情報は、その新規観測パケットが、新規フローか、既存フローかを判定するために、既存のフローの該当するフィールド内の情報と比較される。 Information (data) is extracted from the corresponding field of the observed packet based on element information which is a condition constituting the flow. The extracted information is compared with information in the corresponding field of the existing flow in order to determine whether the new observation packet is a new flow or an existing flow.
テンプレートの柔軟性を有す実装とする場合、テンプレートはユーザからの入力等によって自由に定義できるため、比較しなければならないフィールドは、それら入力によって変更される。
テンプレート定義方式は、固定フォーマット方式と比較して、情報の柔軟性を有すことが可能になる。その一方で、必要とする処理が増大し、処理効率面、計算機資源量利用効率面において劣る場合が発生する。 The template definition method can have information flexibility as compared with the fixed format method. On the other hand, the required processing increases, and the processing efficiency and the computer resource amount utilization efficiency may be inferior.
フロー情報の送信装置は、観測したパケットからフロー情報を作成し内部に保持する機能と、その内部のフロー情報をプロトコルに準じて送信する機能を有す。 The flow information transmission device has a function of creating flow information from the observed packet and holding it inside, and a function of transmitting the flow information inside according to the protocol.
フロー情報を作成し保持する機能において、固定フォーマット方式では、比較するパケットヘッダのフィールドが予め決まっているため、一意の比較処理で複数の要素情報を比較できる。また、テンプレート定義方式を採用したプロトコルを用いつつ、固定したフィールドのみを比較し実質的に固定化されたフォーマットにパケット化してフロー情報を送信する場合も同様である。 In the function of creating and holding the flow information, in the fixed format method, the field of the packet header to be compared is determined in advance, so that a plurality of pieces of element information can be compared by a unique comparison process. The same applies to the case where the flow information is transmitted by packetizing into a substantially fixed format by comparing only the fixed fields while using the protocol adopting the template definition method.
一方でテンプレート定義方式を採用したプロトコルにおいてフローを構成するための条件となる要素情報を自由に変更(指定)可能とする場合、固定フィールドの比較では実現できず、各要素情報に対応したパケットヘッダのフィールドに対して比較を行う必要がある。誤判定の可能性がない方式としてはフィールドごと個々に比較を行う方式が挙げられる。 On the other hand, when element information that is a condition for configuring a flow can be freely changed (designated) in a protocol that adopts a template definition method, it cannot be realized by comparison of fixed fields, and a packet header corresponding to each element information It is necessary to make a comparison for each field. As a method with no possibility of erroneous determination, there is a method of comparing each field individually.
フィールドごとに比較する方式は、固定フォーマットの比較処理に比べ、または、テンプレート定義方式であるが比較処理を行うフィールドを固定化している実装での比較処理に比べて、処理回数が増大する。 The comparison method for each field increases the number of processing compared to the comparison processing in the fixed format or the comparison processing in the implementation in which the field for comparison processing is fixed, which is the template definition method.
本発明の目的は、テンプレート定義方式を用いたフロー判定において、フロー判定に必要な検索回数を低減することのできるフロー判定方法、通信装置およびプログラムを提供することである。 An object of the present invention is to provide a flow determination method, a communication apparatus, and a program that can reduce the number of searches required for flow determination in flow determination using a template definition method.
本発明のフロー判定方法は、新規に観測された新規パケットが既存のフローに属するかを判定する通信装置でのフロー判定方法であって、前記既存のフローを規定するために任意に指定された、当該既存のフロー内の複数の指定フィールドのそれぞれに登録されたデータを、蓄積手段に蓄積する蓄積ステップと、既に観測済みの観測済みパケットのヘッダ情報内のデータに基づいて、前記指定フィールドごとに順位を設定し、当該指定フィールドごとの順位を、保持手段に保持する設定ステップと、前記蓄積手段内のデータと、前記新規パケットのヘッダ情報内のデータとを、前記指定フィールドごとに、前記保持手段内の順位に従って比較する比較ステップと、前記順位に従って比較を行っている際に当該比較の結果が不一致を示すと、前記新規パケットが前記既存のフローに属さないと判定して、前記新規パケットと前記既存のフローに関するそれ以降の比較を中止し、その時点で前記新規パケットと未比較の既存のフローのデータが前記蓄積手段に存在する場合は前記新規パケットの比較対象を前記未比較の既存のフローのデータに変更して比較を継続し、前記複数の指定フィールドでの全ての比較の結果が一致を示すと、前記新規パケットが前記既存のフローに属すると判定する判定ステップと、を含む。 The flow determination method of the present invention is a flow determination method in a communication device that determines whether a newly observed new packet belongs to an existing flow, and is arbitrarily specified to define the existing flow Each of the designated fields based on the accumulation step of accumulating the data registered in each of the plurality of designated fields in the existing flow in the accumulation means and the data in the header information of the observed packets that have already been observed. A setting step for holding the rank for each designated field in the holding means, the data in the storage means, and the data in the header information of the new packet for each of the designated fields. The comparison step for comparing according to the rank in the holding means, and the comparison result indicating a mismatch when performing the comparison according to the rank, It is determined that the new packet does not belong to the existing flow, the subsequent comparison of the new packet and the existing flow is stopped, and the data of the existing flow that has not been compared with the new packet at that time is accumulated. If it exists in the means, the comparison target of the new packet is changed to the data of the uncompared existing flow and the comparison is continued, and if all the comparison results in the plurality of designated fields indicate a match, Determining that a new packet belongs to the existing flow.
本発明の通信装置は、新規に観測された新規パケットが既存のフローに属するかを判定する通信装置であって、前記既存のフローを規定するために任意に指定された、当該既存のフロー内の複数の指定フィールドのそれぞれに登録されたデータを蓄積する蓄積手段と、既に観測済みの観測済みパケットのヘッダ情報内のデータに基づいて前記指定フィールドごとに設定された順位を保持する保持手段と、前記蓄積手段内のデータと、前記新規パケットのヘッダ情報内のデータとを、前記指定フィールドごとに、前記保持手段内の順位に従って比較し、前記順位に従って比較を行っている際に当該比較の結果が不一致を示すと、前記新規パケットが前記既存のフローに属さないと判定して、前記新規パケットと前記既存のフローに関するそれ以降の比較を中止し、その時点で前記新規パケットと未比較の既存のフローのデータが前記蓄積手段に存在する場合は前記新規パケットの比較対象を前記未比較の既存のフローのデータに変更して比較を継続し、前記複数の指定フィールドでの全ての比較の結果が一致を示すと、前記新規パケットが前記既存のフローに属すると判定する比較手段と、を含む。 The communication apparatus according to the present invention is a communication apparatus that determines whether a newly observed new packet belongs to an existing flow, and is included in the existing flow arbitrarily designated to define the existing flow. Storage means for storing data registered in each of the plurality of designated fields, and holding means for holding the order set for each of the designated fields based on the data in the header information of the observed packets that have already been observed. The data in the storage means and the data in the header information of the new packet are compared for each designated field according to the rank in the holding means, and the comparison is performed when the comparison is performed according to the rank. If the result indicates a mismatch, it is determined that the new packet does not belong to the existing flow, and the new packet and the existing flow are further determined. If the data of the existing flow that has not been compared with the new packet exists in the storage means at that time, the comparison target of the new packet is changed to the data of the existing flow that has not been compared. And comparing means for continuing the comparison and determining that the new packet belongs to the existing flow when all the comparison results in the plurality of designated fields indicate a match.
本発明によれば、蓄積手段内データと、新規パケットのヘッダ情報内のデータとを、既存のフローを規定するために任意に指定された複数の指定フィールドごとに比較する際に、既に観測済みのパケットのヘッダ情報内のデータに基づいて設定された順位に従って、データが比較される。 According to the present invention, the data in the storage means and the data in the header information of the new packet have already been observed when comparing each of a plurality of designated fields arbitrarily designated to define the existing flow. The data is compared according to the order set based on the data in the header information of the packets.
このため、既に観測済みのパケットのヘッダ情報内のデータに適した順番で、指定フィールドのデータを比較することが可能となり、データの比較およびデータの検索回数を低減することが可能になる。 For this reason, it becomes possible to compare the data of the designated field in an order suitable for the data in the header information of the already observed packet, and it is possible to reduce the number of data comparisons and data searches.
例えば、複数の指定フィールドのうち、指定フィールドの異なり数の大きい指定フィールドから順番に比較していけば、データの比較およびデータの検索回数を低減できる。 For example, if a comparison is made in order from a specified field having a large number of different specified fields among a plurality of specified fields, the number of data comparisons and data searches can be reduced.
以下、本発明の実施例を、図面を参照して説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明の一実施例である、ネットワークトラヒックをフローごとに分類して計測を行い、計測されたフロー情報の送信を行う通信装置を示したブロック図である。なお、図1では、パケット処理に関する部分の構成が示されている。 FIG. 1 is a block diagram illustrating a communication apparatus that classifies network traffic for each flow, performs measurement, and transmits measured flow information according to an embodiment of the present invention. FIG. 1 shows the configuration of a part related to packet processing.
図1において、送信装置100は、ネットワーク等から観測されたパケットと、蓄積されたフローとを、テンプレート定義方式にしたがって比較し、その比較結果に基づいて、観測パケットが、新規フローか、蓄積されている既存フローかを判断する。
In FIG. 1, the
送信装置100は、ネットワークインタフェース(以下「NIC」と称する。)1と、パケット観測部(以下「観測部」と称する。)2と、フロー情報作成部(以下「作成部」と称する。)3と、フロー情報送出部(以下「送出部」と称する。)4とを含む。作成部3は、フロー情報蓄積部(以下「蓄積部」と称する。)3aと、新規観測パケット・既存フロー比較部(以下「パケット・フロー比較部」と称する。)3bとを含む。パケット・フロー比較部3bは、異なり数保持部(以下「保持部」と称する)3b1と、比較部3b2と、変化検知部(以下「検知部」と称する。)3b3とを含む。
The
NIC(受付手段)1は、インターネット等のネットワークからパケットを受け付け、観測部2に提供する。
A NIC (accepting means) 1 accepts a packet from a network such as the Internet and provides it to the
観測部(観測手段)2は、NIC1からのパケット、または、何らかの処理を経て出力される予定のパケットを受け付ける。観測部2は、受け付けられたパケットに対して、必要に応じてパケットサンプリングやフィルタリングを行い、新規に観測されたパケット(以下「新規パケット」と称する。)を抽出する。観測部2は、新規パケットを作成部3に提供する。
The observation unit (observation means) 2 accepts a packet from the
作成部(作成手段)3は、新規パケットに基づいて、フロー情報を作成する。 The creation unit (creation unit) 3 creates flow information based on the new packet.
蓄積部(蓄積手段)3aは、フロー情報を蓄積する。例えば、蓄積部3aは、少なくとも、既存のフローを規定するために任意に指定された、その既存のフロー内の複数の指定フィールドのそれぞれに登録されたデータを、フロー情報として蓄積する。
The accumulation unit (accumulation means) 3a accumulates flow information. For example, the
フロー情報の作成処理は、比較部(比較手段)3b2によって行われる。 The flow information creation process is performed by the comparison unit (comparison means) 3b2.
保持部(保持手段)3b1は、既に観測済みの観測済みパケットのヘッダ情報内のデータに基づいて指定フィールドごとに設定された順位を保持する。 The holding unit (holding unit) 3b1 holds the order set for each designated field based on the data in the header information of the already observed packets.
比較部3b2は、蓄積部3a内の既に観測された既存のフローのデータと、観測部2から伝達された新規パケットのヘッダ情報内のデータとを、指定フィールドごとに、保持部3b1内の順位に従って比較して、新規パケットが、新規フローか、既存フローかを判定する。
The comparison unit 3b2 compares the data of the existing flow already observed in the
比較部3b2は、保持部3b1内の順位に従って比較を行っている際に、その比較の結果が不一致を示すと、新規パケットが、その既存のフローに属さないと判定して、新規パケットとその既存のフローに関するそれ以降の比較を中止し、その時点でその新規パケットと未比較の既存のフローが蓄積部3a内にまだ存在する場合は、新規パケットの比較対象をその未比較の既存のフローに変更して比較を継続する。また、比較部3b2は、複数の指定フィールドでの全ての比較の結果が一致を示すと、新規パケットがその既存のフローに属すると判定する。
When the comparison unit 3b2 performs the comparison according to the order in the holding unit 3b1, and the comparison result indicates a mismatch, the comparison unit 3b2 determines that the new packet does not belong to the existing flow, and the new packet and the If the subsequent comparison of the existing flow is canceled and the existing flow that is not compared with the new packet still exists in the
また、比較部3b2は、既に観測済みのパケットのヘッダ情報内のデータに基づいて、指定フィールドごとに順位を設定し、その指定フィールドごとの順位を、保持部3b1に保持する。 The comparison unit 3b2 sets the rank for each designated field based on the data in the header information of the already observed packet, and holds the rank for each designated field in the holding unit 3b1.
また、比較部3b2は、保持部3b1内の順位を設定するために用いた観測済みパケットと異なる観測済みパケットのヘッダ情報内のデータに基づいて、指定フィールドごとに順位を新たに設定し、保持部3b1内の順位を、新たに設定された順位に更新する。 Further, the comparison unit 3b2 newly sets the rank for each designated field based on the data in the header information of the observed packet different from the observed packet used for setting the rank in the holding unit 3b1, and holds it. The order in the part 3b1 is updated to the newly set order.
本実施例では、比較部3b2は、以下のように順位を設定したり更新したりする。 In this embodiment, the comparison unit 3b2 sets or updates the order as follows.
まず、比較部3b2は、保持部3b1内の順位を設定または更新するために用いた観測済みパケットのヘッダ情報内のデータに基づいて、指定フィールドごとに、異なり数を計測して求める。 First, the comparison unit 3b2 measures and obtains a different number for each designated field based on data in the header information of the observed packet used for setting or updating the rank in the holding unit 3b1.
なお、指定フィールドの異なり数は、その指定フィールドに異なる値が出現する数を示す。このため、異なり数が大きいほど、その異なり数に対応する指定フィールド内のデータが、フローごとに異なる可能性が高くなる。 Note that the number of different designated fields indicates the number of occurrences of different values in the designated field. For this reason, the larger the number of differences, the higher the possibility that the data in the designated field corresponding to the number of differences will be different for each flow.
続いて、比較部3b2は、複数の指定フィールドのうち異なり数が大きい指定フィールドほど順位が高くなるように、順位を設定する。 Subsequently, the comparison unit 3b2 sets the rank so that the higher the number of the designated fields among the plurality of designated fields, the higher the rank.
また、比較部3b2は、蓄積部3a内のデータと、新規パケットのヘッダ情報内のデータとを、指定フィールドごとに、保持部3b1内の順位が高い順に比較する。
Further, the comparison unit 3b2 compares the data in the
また、比較部3b2は、蓄積部3a内のデータを更新する時点において保持部3b1内の順位の更新を行う。
Further, the comparison unit 3b2 updates the rank in the holding unit 3b1 at the time of updating the data in the
例えば、比較部3b2は、以下のように保持部3b1内の順位を更新する。 For example, the comparison unit 3b2 updates the rank in the holding unit 3b1 as follows.
比較部3b2は、あるタイミングで、蓄積部3a内のフロー情報(データ)を送出部4から外部の装置に送信させ、蓄積部3a内のフロー情報を削除する。なお、比較部3b2は、蓄積部3aにフロー情報が蓄積されていない場合は、新規パケットを必ず新規フローと判定し、新規パケットに基づいて、新規フローのフロー情報を作成して、蓄積部3aに蓄積する。比較部3b2は、蓄積部3a内の全データを外部の装置に送信した時点以降のある期間に観測されたパケットのヘッダ情報内のデータに基づいて、指定フィールドごとに順位を新たに設定し、保持部3b1内の順位を、その新たに設定された順位に更新する。
The comparison unit 3b2 causes the flow information (data) in the
比較部3b2は、蓄積部3a内の更新後のデータと、新規パケットのヘッダ情報内のデータとを、指定フィールドごとに、保持部3b1内の更新後の順位が高い順に比較する。
The comparison unit 3b2 compares the updated data in the
また、比較部3b2は、新規パケットが既存のフローに属さないと判定すると、その新規パケットは新規フローに属すると判定し、既存のフローの数と新規フローの数の和を、フロー認識数として認識する。 If the comparison unit 3b2 determines that the new packet does not belong to the existing flow, the comparison unit 3b2 determines that the new packet belongs to the new flow, and uses the sum of the number of existing flows and the number of new flows as the flow recognition number. recognize.
検知部(変化検知手段)3b3は、新規パケットに関するトラフィックの変化が所定の条件を満たすかを判定する。 The detection unit (change detection unit) 3b3 determines whether a change in traffic related to a new packet satisfies a predetermined condition.
所定の条件としては、例えば、所定期間におけるフロー認識数の変化量または変化率が、予め定められた閾値を超えているという条件が用いられる。 As the predetermined condition, for example, a condition that a change amount or a change rate of the number of flow recognitions in a predetermined period exceeds a predetermined threshold value is used.
また、比較部3b2は、新規パケットに関するトラフィックの変化が、所定の条件を満たすと検知部3b3が判定した場合に、順位を新たに設定して、保持部3b1内の順位を、その新たに設定された順位に更新する。 In addition, when the detection unit 3b3 determines that the traffic change relating to the new packet satisfies a predetermined condition, the comparison unit 3b2 sets a new rank and sets the rank in the holding unit 3b1. Update to the ranking.
新規パケットが新規フローに振り分けられた場合、比較部3b2は、蓄積部3aに新たに新規フロー情報を登録する。
When a new packet is assigned to a new flow, the comparison unit 3b2 newly registers new flow information in the
一方、新規パケットが既存フローに振り分けられた場合、比較部3b2は、蓄積部3a内の、その既存フローの時間情報(フロー開始・終了時刻)やデータ量情報(バイト量・パケット量)等を更新する。
On the other hand, when a new packet is allocated to an existing flow, the comparison unit 3b2 displays time information (flow start / end time), data amount information (byte amount / packet amount), etc. of the existing flow in the
作成部3は、蓄積部3a内のフロー情報を、一定時間間隔で、または、ユーザの何らかの指示にしたがって、もしくは、蓄積部3aを構成する蓄積バッファの残余量が、予め定められた値よりも少なくなるなどの機能内部上の事由から、自律的に、送出部4に提供する。
The
送出部4は、フロー情報を、プロトコルに準じたフォーマットで適切にパケット化して送信する。
The transmitting
図1には図示していないが、パケット処理に間接的に関連する機能部として、テンプレート設定、及び、フロー構成条件の要素情報の設定などに用いるパラメータ等を、ユーザから受け付け、必要な情報を、図1に図示した各部に伝達する機能部(例えば、入力部)が存在する。 Although not shown in FIG. 1, as a functional unit indirectly related to packet processing, parameters used for template setting, setting of element information of flow configuration conditions, and the like are received from the user, and necessary information is received. , There is a functional unit (for example, an input unit) that transmits to each unit illustrated in FIG. 1.
なお、図1に示した送信装置100は、CD−ROM、ハードディスクまたはメモリに記録されたプログラムに従って動作するコンピュータによって実現されてもよい。CD−ROM、ハードディスクまたはメモリは、一般的に、コンピュータにて読み取り可能な記録媒体と呼ぶことができる。この場合、NIC1を搭載したコンピュータは、そのプログラムを記録媒体から読み取り実行することによって、観測部2、作成部3、及び、送出部4として機能し、送信装置100が実現できる。
1 may be realized by a computer that operates according to a program recorded on a CD-ROM, a hard disk, or a memory. A CD-ROM, hard disk, or memory can generally be called a computer-readable recording medium. In this case, the computer equipped with the
ここで、送信装置100の動作の概要を説明する。
Here, an outline of the operation of the
送信装置100は、テンプレート定義方式を採用する。また、フローを規定する指定フィールドは一定ではなく、送信装置100は、外部からの入力などによって指定フィールドを自由に変更する機能を有する。
The
比較部3b2は、観測部2にて観測された新規パケットが、既に蓄積部3aに蓄積されている既存フローか、新規に登録すべき新規フローかを判定する。
The comparison unit 3b2 determines whether the new packet observed by the
具体的には、比較部3b2は、新規パケット内の各指定フィールドのデータが、蓄積部3aに蓄積されている既存フローの各々の各指定フィールドのデータと、それぞれ同一かを比較する。
Specifically, the comparison unit 3b2 compares whether the data of each designated field in the new packet is the same as the data of each designated field of the existing flow accumulated in the
新規パケット内のフィールドのデータが、既存フローのフィールドのデータと、1フィールドでも異なれば、比較部3b2は、新規パケットが、その既存フローとは違うフローであると判断し、蓄積部3aに蓄積されている次の既存フローと比較を行う。繰り返し処理が行われて、新規パケットが全ての既存フローと異なることがわかった場合は、比較部3b2は、新規パケットが新規フローであると判断する。
If the field data in the new packet is different from the field data of the existing flow by even one field, the comparison unit 3b2 determines that the new packet is a flow different from the existing flow, and stores it in the
指定フィールドのデータを個々に比較する場合に、より少ないフィールドの比較によって、新規フローか否かが判明すれば、既存フローか新規フローかを判定するためのフロー判定における、既存フローの検索とそれに伴った各フィールドのデータの比較の回数を減少させることができる。 When comparing the data of the specified field individually, if it is determined whether the flow is a new flow or not by comparing fewer fields, the existing flow search and the flow determination for determining whether the flow is an existing flow or a new flow. Accordingly, the number of comparisons of data in each field can be reduced.
蓄積部3aでは、その処理系が利用可能なメモリ量に応じて、フローの蓄積可能数Nが決定される。
In the
本実施例では、加えて、パケット・フロー比較部3bが、フローの構成要素となる指定フィールドごとに異なり数を保持するメモリ空間、すなわち、保持部3b1を有する。 In this embodiment, in addition, the packet flow comparison unit 3b has a memory space that holds a different number for each designated field that is a component of the flow, that is, a holding unit 3b1.
この空間は、異なり数を計算するアルゴリズムによって異なる。 This space depends on the algorithm that calculates the different numbers.
異なり数を計算するアルゴリズムとしては、Liner CountingやLogLog Counting、それらを組み合わせたACC(Adaptive Cardinality Counting)等が有名であるが、どういったアルゴリズムを使っても構わない。 Different algorithms for calculating the number are famous, such as Liner Counting, LogLog Counting, and ACC (Adaptive Cardinality Counting) that combines them, but any algorithm can be used.
本実施例では、どのアルゴリズムを利用する場合でも、それらのアルゴリズムの保持できる異なり数を求めるために必要なメモリ空間(Liner Countingの場合はビット列)の最大数は、フロー蓄積可能数と同じにする。 In this embodiment, regardless of which algorithm is used, the maximum number of memory spaces (bit strings in the case of Liner Counting) required to obtain the different numbers that can be held by these algorithms is the same as the number of flow accumulations possible. .
比較部3b2は、算出・推定した異なり数が大きい指定フィールドほど、比較の順番を早くする。具体的には、比較部3b2は、最初に比較が行われる指定フィールドを、算出・推定した異なり数が最も大きい指定フィールドとし、最後に比較が行われる指定フィールドを、異なり数が最も小さい指定フィールドとする。 The comparison unit 3b2 makes the comparison order earlier for a designated field having a larger number of differences calculated and estimated. Specifically, the comparison unit 3b2 sets the designated field to be compared first as the designated field having the largest number of differences calculated and estimated, and sets the designated field to be compared last as the designated field having the smallest number of differences. And
各指定フィールドの比較回数は、全てパケット数と同値なため、異なり数が大きい指定フィールドが比較順序の上位にくることで、1つ目の比較が行われる指定フィールドでそのパケットが異なるフローであることを判定できる確率が高まる。 Since the number of comparisons of each designated field is the same as the number of packets, the designated field having a different number is placed higher in the comparison order, so that the packet is different in the designated field in which the first comparison is performed. The probability that this can be determined increases.
フロー情報の作成開始時に、観測部2において観測されたMパケット分に関して、比較部3b2は、フィールドごとに異なり数を求める。
At the start of creation of flow information, the comparison unit 3b2 calculates the number of M packets observed in the
例えば、ソースアドレス、宛先アドレス、プロトコル、ソースポート、宛先ポートをフローの作成条件とする指定フィールドとした場合、比較部3b2は、保持部3b1において、図2に例示するように、5つの指定フィールドに関して、異なり数を保持するメモリ空間をそれぞれ割り当て、観測されたMパケット分に関して、それぞれのフィールドごとの異なり数を数える。 For example, when the source address, the destination address, the protocol, the source port, and the destination port are designated fields that use flow creation conditions, the comparison unit 3b2 uses the five designation fields in the holding unit 3b1 as illustrated in FIG. , For each of the observed M packets, a different number for each field is counted.
次に、比較部3b2は、5つの指定フィールドを、異なり数が大きい順に並べ、その順番に従って順位を設定し、その順位を指定フィールドの比較順序とする。 Next, the comparison unit 3b2 arranges the five designated fields in descending order, sets the rank according to the order, and sets the rank as the designated field comparison order.
例えば、5つの指定フィールドを異なり数が大きい順に並べた場合に、宛先アドレス、ソースアドレス、宛先ポート、ソースポート、プロトコルの順序になった場合、比較部3b2は、宛先アドレス、ソースアドレス、宛先ポート、ソースポート、プロトコルの順で検索(比較)する。 For example, when the five designated fields are arranged in the order of different numbers, the destination address, the source address, the destination port, the source port, and the protocol are in the order, and the comparison unit 3b2 displays the destination address, the source address, and the destination port. Search (comparison) in the order of source port and protocol.
新規に決定された順序が、それまでに利用していた順序と異なる場合には、新規に決定された順序と異なる順序を用いて蓄積した既存フローと比較条件(順序)が異なるため、既に蓄積されている既存のフロー情報に対して更新後の順序では比較ができなくなる。 If the newly determined order is different from the order that has been used so far, the comparison condition (order) is different from the existing flow that is stored using a different order from the newly determined order. It becomes impossible to compare the existing flow information in the updated order.
比較を継続するために、比較部3b2は、蓄積部3aに蓄積されていたフロー情報を全て送信部4に提供し、蓄積済みの全てのフロー情報を蓄積部3aから削除する。
In order to continue the comparison, the comparison unit 3b2 provides all the flow information accumulated in the
その後、比較部3b2は、更新された順序を用いて、その後観測されたパケットからフロー情報を蓄積部3aに新たに蓄積していけばよい。
After that, the comparison unit 3b2 only needs to newly accumulate flow information in the
蓄積部3aから送出部4にフロー情報を提供するタイミングは、送出部4が不図示の受信装置へフロー情報を送信するタイミングと同等であると考えられることから、一定間隔ごと、もしくは、送信装置が資源枯渇となった場合、または、何らかの強制時ということになり、これらのタイミングが、保持部3b1内の順序を更新後の順序に切り替えるタイミングとなる。
The timing at which the flow information is provided from the
一般的に、これら送出タイミングのうちいくつかでは、蓄積部3aに蓄積された全てのフロー情報が送出されるとは限らない。例えば、定期送信間隔に基づいた送出では、終了したと判断されないフローの情報は、蓄積部3aに残る。
Generally, at some of these transmission timings, not all flow information stored in the
比較部3b2は、フローが予め定められた時間(アクティブタイムアウト時間)を超過した場合と、観測していたフローのパケットの間隔が予め定められた時間(アイドルタイムアウト時間)を超えた場合と、TCP等における明示的なフロー終了があった場合とのそれぞれで、そのフローが終了したと判断する。 The comparison unit 3b2 determines whether the flow exceeds a predetermined time (active timeout time), the packet interval of the observed flow exceeds a predetermined time (idle timeout time), and TCP It is determined that the flow has ended in each of the cases where there is an explicit flow end in the above.
本実施例では、比較部3b2は、順序を更新する際に、フロー終了条件に当たらないフロー情報も、フローの強制的終了を事由として、蓄積部3aから送出部4に提供し蓄積部3aから削除して、蓄積部3aを何も蓄積されていない初期状態にする。
In the present embodiment, when the comparison unit 3b2 updates the order, the flow information that does not satisfy the flow end condition is also provided from the
送信装置100の資源枯渇時によってフロー情報を受信装置に送出する場合も、比較部3b2は、同様に、蓄積部3aに蓄積されたフロー情報全てを送出部4に提供し蓄積部3aから削除して、蓄積部3aを何も蓄積されていない初期状態にする。
Similarly, when the flow information is sent to the receiving device when the resource of the transmitting
比較部3b2は、蓄積部3aが初期状態になった状態で保持部3a1に保持されている順序を新しい順序に更新する。
The comparison unit 3b2 updates the order held in the holding unit 3a1 to a new order when the
なお、IPFIXでは、フローの終了の理由を示すInformation Element(136番:flowEndReason)が存在し、これによって、送信装置100から不図示の受信装置へフローの終了を伝達することが可能である。
In IPFIX, there is an Information Element (No. 136: flowEndReason) that indicates the reason for the end of the flow, and it is possible to transmit the end of the flow from the transmitting
ここで、定期的な送信間隔時にフロー情報を送信した場合、既にフローが、アクティブタイムアウト(0x01:activetimeout)、アイドルタイムアウト(0x02:idletimeout)、TCP等に明示的なフロー終了(0x03:end of Flow detected)となっている場合は、それらの理由を用い、そうでないならば、強制的終了(0x04:forced end)を理由として用いる。また、フロー情報の送信の原因が資源枯渇となる場合、資源枯渇(0x05:lack of resources)が用いられればよい。 Here, when flow information is transmitted at a regular transmission interval, the flow has already been explicitly passed to the active timeout (0x01: activetimeout), idle timeout (0x02: idletimeout), TCP, etc. (0x03: end of Flow) If it is detected), those reasons are used, and if not, forced end (0x04: forced end) is used as the reason. Further, when the cause of the flow information transmission is resource depletion, resource depletion (0x05: rack of resources) may be used.
以上によって、異なり数が大きい指定フィールドから検索されるため、新規パケットと既存フローが異なる場合に、少ないフィールドの比較によって判断ができ、総検索回数を小さくすることができる。 As described above, since a search is performed from a designated field having a large number of differences, when a new packet and an existing flow are different, a determination can be made by comparing a small number of fields, and the total number of searches can be reduced.
この実施例において、トラフィックの傾向が大きく変化しない間は、上記方法によって求めた順序を使い続ければよい。トラフィックの傾向が変化した場合は、異なり数の観測と順序の再計算を行う必要がある。 In this embodiment, as long as the traffic trend does not change significantly, the order obtained by the above method may be used. When traffic trends change, different numbers need to be observed and the order recalculated.
トラフィックの変化の検知手法は、特に問わない。一例として、検知部3b3が、一定時間内(定期送信間隔内)に作られ送信される総フロー数に関して、前回送信した一定時間当たりフロー数と今回送信する一定時間当たりフロー数を保持し、その差が一定もしくは指定された変化量以上、または、その商が一定もしくは指定された変化率以上である場合に変化したと検知する閾値判定を行えばよい。 The method for detecting the traffic change is not particularly limited. As an example, the detection unit 3b3 holds the number of flows per a certain time transmitted last time and the number of flows per a certain time transmitted this time regarding the total number of flows created and transmitted within a certain time (within a regular transmission interval). A threshold determination may be made to detect that the difference has changed when the difference is constant or greater than a specified change amount, or when the quotient is equal to or greater than a specified change rate.
図3は、送信装置100の動作の一例を説明するためのフローチャートである。
FIG. 3 is a flowchart for explaining an example of the operation of the
以下、図3を参照して、送信装置100の動作の一例を説明する。
Hereinafter, an example of the operation of the
ステップ301では、比較部3b2は、蓄積部3a内の既存のフローのデータと、観測部2からの新規パケットのヘッダ情報内のデータとを、指定フィールドごとに、保持部3b1内の順位に従って比較し、比較を行っている際に、その比較の結果が不一致を示すと、新規パケットがその既存のフローに属さないと判定して、新規パケットとその既存のフローに関するそれ以降の比較を中止し、その時点でその新規パケットと未比較の既存のフローのデータが蓄積部3aに存在する場合は新規パケットの比較対象をその未比較の既存のフローのデータに変更して比較を継続し、複数の指定フィールドでの全ての比較の結果が一致を示すと、新規パケットが既存のフローに属すると判定する。
In step 301, the comparison unit 3b2 compares the data of the existing flow in the
なお、ステップ301の処理は、検知部3b3が、新規パケットに関するトラフィックの変化が所定の条件を満たさないと判定すると実行され、フロー情報の定期送信間隔が経過するまで、または、蓄積部3aの資源枯渇直前状態になるまで行われる。
Note that the processing of step 301 is executed when the detection unit 3b3 determines that the traffic change related to the new packet does not satisfy the predetermined condition, or until the periodic transmission interval of the flow information elapses or the resource of the
ステップ301の処理が終了すると、ステップ302が実行される。 When the process of step 301 ends, step 302 is executed.
ステップ302では、比較部3b2は、送出部4に終了フロー情報を提供し、送出部4は、その終了フロー情報を送信する。なお、ステップ302の処理は、通常処理である。
In step 302, the comparison unit 3b2 provides the end flow information to the
続いて、ステップ303では、比較部3b2は、蓄積部3a内のフロー情報に基づいて、時間当たりの総送信フロー数を計算し、その計算結果を、検知部3b3に記録する。検知部3b3は、今回の総送信フロー数と前回の送信フロー数とを比較して、トラフィックの変化の有無を判定する。
Subsequently, in step 303, the comparison unit 3b2 calculates the total number of transmission flows per hour based on the flow information in the
続いて、ステップ304で、検知部3b3が、トラフィックの変化を検知しないと(トラフィックの変化が無の場合)、比較部3b2は、ステップ301を実行する。 Subsequently, in step 304, when the detection unit 3b3 does not detect a change in traffic (when there is no change in traffic), the comparison unit 3b2 executes step 301.
ステップ304で、検知部3b3が、トラフィックの変化を検知すると(トラフィックの変化が有の場合)、比較部3b2は、ステップ305を実行する。 In step 304, when the detection unit 3b3 detects a change in traffic (when there is a change in traffic), the comparison unit 3b2 executes step 305.
ステップ305では、比較部3b2は、ステップ301と同様の動作を実行する。 In step 305, the comparison unit 3b2 performs the same operation as in step 301.
続いて、ステップ306では、比較部3b2は、観測部2において観測されたMパケット分に関して、フィールドごとに異なり数を計測する。
Subsequently, in step 306, the comparison unit 3
なお、ステップ305および306の処理は、検知部3b3が、新規パケットに関するトラフィックの変化が所定の条件を満たさないと判定すると実行され、フロー情報の定期送信間隔が経過するまで、または、蓄積部3aの資源枯渇直前状態になるまで行われる。
Note that the processing in steps 305 and 306 is executed when the detection unit 3b3 determines that the change in traffic related to the new packet does not satisfy the predetermined condition, or until the regular transmission interval of the flow information elapses or the
ステップ305および306の処理が終了すると、ステップ307が実行される。 When the processing of steps 305 and 306 is completed, step 307 is executed.
ステップ307では、比較部3b2は、異なり数が計測された各指定フィールドを、異なり数が大きい順に並べ、その順番に従って順位を新たに設定し、保持部3b1内の順位を、その新たに設定された順位に更新する。 In step 307, the comparison unit 3b2 arranges the designated fields in which the different numbers are measured, in order from the largest different numbers, sets a new rank according to the order, and sets the new rank in the holding unit 3b1. Update the ranking.
続いて、ステップ308で、蓄積部3aの資源枯渇状態であると、比較部3b2は、ステップ309を実行する。
Subsequently, in step 308, if the
ステップ309では、比較部3b2は、資源枯渇状態として、蓄積部3a内の全フロー情報を、送出部4に送信させ、蓄積部3a内のフロー情報を削除する。その後、ステップ303が実行される。
In step 309, the comparison unit 3b2 causes the sending
一方、ステップ308で、定期送信間隔が経過した状態であると、比較部3b2は、蓄積部3a内の未送信フロー情報を、送出部4に強制送信させ、蓄積部3a内のフロー情報を削除する。その後、ステップ302が実行される。
On the other hand, if the regular transmission interval has elapsed in step 308, the comparison unit 3b2 causes the sending
本実施例によれば、保持部3b1は、既に観測済みのパケットのヘッダ情報内のデータに基づいて指定フィールドごとに設定された順位を保持する。 According to the present embodiment, the holding unit 3b1 holds the order set for each designated field based on the data in the header information of the already observed packet.
比較部3b2は、蓄積部3a内の既存のフローのデータと、観測部2からの新規パケットのヘッダ情報内のデータとを、指定フィールドごとに、保持部3b1内の順位に従って比較していき、比較を行っている際に、その比較の結果が不一致を示すと、新規パケットがその既存のフローに属さないと判定して、新規パケットとその既存のフローに関するそれ以降の比較を中止し、その時点でその新規パケットと未比較の既存のフローのデータが蓄積部3a内にまだ存在する場合は、新規パケットの比較対象をその未比較の既存のフローに変更して比較を継続する。また、比較部3b2は、複数の指定フィールドでの全ての比較の結果が一致を示すと、新規パケットが既存のフローに属すると判定する。
The comparison unit 3b2 compares the data of the existing flow in the
このため、観測済みのパケットのヘッダ情報内のデータに適した順番で、指定フィールドのデータを比較することが可能となり、既存フローか新規フローかを判定するためのフロー判定における、既存フローの検索とそれに伴った各フィールドのデータの比較の回数を減少することが可能になる。 For this reason, it is possible to compare the data in the specified field in the order appropriate for the data in the header information of the observed packet, and search for the existing flow in the flow determination for determining whether the flow is an existing flow or a new flow. Accordingly, the number of comparisons of data in each field can be reduced.
本実施例では、比較部3b2は、観測済みのパケットのヘッダ情報内のデータに基づいて、指定フィールドごとに順位を設定し、その指定フィールドごとの順位を保持部3b1に保持する。また、比較部3b2は、蓄積部3a内の全データを外部の装置に送信した時点以降のある期間に観測されたパケットのヘッダ情報内のデータに基づいて、指定フィールドごとに順位を新たに設定し、保持部3b1内の順位を、新たに設定された順位に更新する。
In the present embodiment, the comparison unit 3b2 sets a rank for each designated field based on data in the header information of the observed packet, and holds the rank for each designated field in the holding unit 3b1. Further, the comparison unit 3b2 newly sets the rank for each designated field based on the data in the header information of the packet observed during a certain period after the time when all the data in the
この場合、観測済みのパケットのヘッダ情報内のデータに基づいて、順位を更新することが可能になる。このため、順位を適切に更新することが可能になる。 In this case, the rank can be updated based on the data in the header information of the observed packet. For this reason, it becomes possible to update an order | rank appropriately.
本実施例では、比較部3b2は、保持部3b1内の順位を設定または更新するために用いた観測済みパケットのヘッダ情報内のデータに基づいて、指定フィールドごとに、異なり数を計測し、複数の指定フィールドのうち異なり数が大きい指定フィールドほど順位が高くなるように、順位を設定する。 In the present embodiment, the comparison unit 3b2 measures a different number for each designated field based on data in the header information of the observed packet used for setting or updating the rank in the holding unit 3b1, The ranking is set so that the ranking of the designated fields having a larger number among the designated fields becomes higher.
そして、比較部3b2は、蓄積部3a内のデータと、新規パケットのヘッダ情報内のデータとを、指定フィールドごとに、保持部3b1内の順位が高い順に比較する。
Then, the comparison unit 3b2 compares the data in the
この場合、データの比較およびデータの検索回数を低減することが可能になる。 In this case, it is possible to reduce the number of data comparisons and data searches.
本実施例では、比較部3b2は、蓄積部3a内のデータを更新する時点において保持部3b1内の順位の更新を行い、蓄積部3a内の更新後のデータと、新規パケットのヘッダ情報内のデータとを、指定フィールドごとに、保持部3b1内の更新後の順位が高い順に比較する。
In this embodiment, the comparison unit 3b2 updates the rank in the holding unit 3b1 at the time of updating the data in the
この場合、蓄積部3a内のデータを更新する時点において保持部3b1内の順位の更新を行うので、例えば、蓄積部3a内のデータ構造を、データの比較が容易に行える構造に変更することが可能になる。よって、比較用の順位の更新に応じて、データの比較が困難になることを防止することが可能になる。
In this case, since the order in the holding unit 3b1 is updated when the data in the
本実施例では、検知部3b3が、新規パケットに関するトラフィックの変化が所定の条件を満たすことを検出すると、比較部3b2は、比較用の順位を新たに設定して、保持部3b1内の順位を、その新たに設定された順位に更新する。 In the present embodiment, when the detection unit 3b3 detects that a change in traffic related to a new packet satisfies a predetermined condition, the comparison unit 3b2 newly sets a rank for comparison and sets the rank in the holding unit 3b1. , Update to the newly set rank.
この場合、トラフィックの変化に応じて、比較用の順位を適切に更新することが可能となる。 In this case, the order for comparison can be appropriately updated in accordance with the change in traffic.
なお、新規パケットが既存のフローに属さない場合、比較部3b2が、新規パケットは新規フローに属すると判定し、既存のフローの数と新規フローの数の和を、フロー認識数として認識する場合、所定の条件として、所定期間におけるフロー認識数の変化量または変化率が、予め定められた閾値を超えているという条件を用いることが可能になる。 When the new packet does not belong to an existing flow, the comparison unit 3b2 determines that the new packet belongs to a new flow, and recognizes the sum of the number of existing flows and the number of new flows as the number of flow recognition As the predetermined condition, it is possible to use a condition that the change amount or change rate of the number of flow recognitions in a predetermined period exceeds a predetermined threshold value.
この場合、フロー認識数の変化に応じて、比較用の順位を適切に更新することが可能となる。 In this case, the order for comparison can be appropriately updated according to the change in the number of flow recognitions.
以上説明した実施例において、図示した構成は単なる一例であって、本発明はその構成に限定されるものではない。 In the embodiment described above, the illustrated configuration is merely an example, and the present invention is not limited to the configuration.
1 NIC
2 パケット観測部
3 フロー情報作成部
3a フロー情報蓄積部
3b 新規観測パケット・既存フロー比較部
3b1 異なり数保持部
3b2 比較部
3b3 変化検知部
4 フロー情報送出部
100 送信装置
1 NIC
2
Claims (13)
前記既存のフローを規定するために任意に指定された、当該既存のフロー内の複数の指定フィールドのそれぞれに登録されたデータを、蓄積手段に蓄積する蓄積ステップと、
既に観測済みの観測済みパケットのヘッダ情報内のデータに基づいて、前記指定フィールドごとに順位を設定し、当該指定フィールドごとの順位を、保持手段に保持する設定ステップと、
前記蓄積手段内のデータと、前記新規パケットのヘッダ情報内のデータとを、前記指定フィールドごとに、前記保持手段内の順位に従って比較する比較ステップと、
前記順位に従って比較を行っている際に当該比較の結果が不一致を示すと、前記新規パケットが前記既存のフローに属さないと判定して、前記新規パケットと前記既存のフローに関するそれ以降の比較を中止し、その時点で前記新規パケットと未比較の既存のフローのデータが前記蓄積手段に存在する場合は前記新規パケットの比較対象を前記未比較の既存のフローのデータに変更して比較を継続し、前記複数の指定フィールドでの全ての比較の結果が一致を示すと、前記新規パケットが前記既存のフローに属すると判定する判定ステップと、を含むフロー判定方法。 A flow determination method in a communication device that determines whether a newly observed new packet belongs to an existing flow,
An accumulation step of accumulating data registered in each of a plurality of designated fields in the existing flow arbitrarily designated to define the existing flow in an accumulation unit;
A setting step for setting a rank for each of the designated fields based on data in header information of observed packets that have already been observed, and holding the rank for the designated fields in a holding unit;
A comparison step of comparing the data in the storage means and the data in the header information of the new packet according to the order in the holding means for each designated field;
If the comparison result indicates a mismatch when performing the comparison according to the rank, it is determined that the new packet does not belong to the existing flow, and the subsequent comparison of the new packet and the existing flow is performed. If the data of the existing flow that is not compared with the new packet exists in the storage means at that time, the comparison target of the new packet is changed to the data of the existing flow that is not compared, and the comparison is continued And a determination step of determining that the new packet belongs to the existing flow when all the comparison results in the plurality of designated fields indicate a match.
前記比較ステップでは、前記蓄積手段内のデータと、前記新規パケットのヘッダ情報内のデータとを、前記指定フィールドごとに、前記保持手段内の順位が高い順に比較する、請求項2に記載のフロー判定方法。 In the setting step, for each specified field, the number of different values appearing in the specified field is determined based on data in the header information of the observed packet used for setting or updating the rank in the holding unit. Measuring the number of different indications, and setting the rank so that the higher the rank of the specified field of the plurality of specified fields, the higher the rank,
3. The flow according to claim 2, wherein in the comparison step, the data in the storage unit and the data in the header information of the new packet are compared for each designated field in descending order of rank in the holding unit. Judgment method.
前記比較ステップでは、前記蓄積手段内の更新後のデータと、前記新規パケットのヘッダ情報内のデータとを、前記指定フィールドごとに、前記保持手段内の更新後の順位が高い順に比較する、請求項2または3に記載のフロー判定方法。 In the setting step, the rank in the holding unit is updated at the time of updating the data in the storage unit,
In the comparing step, the updated data in the storage means and the data in the header information of the new packet are compared for each designated field in the descending order of the updated order in the holding means. Item 4. The flow determination method according to Item 2 or 3.
前記設定ステップでは、前記新規パケットに関するトラフィックの変化が、前記所定の条件を満たす場合に、前記順位を新たに設定して、前記保持手段内の順位を、前記新たに設定された順位に更新する、請求項2から4のいずれか1項に記載のフロー判定方法。 A change detecting step for determining whether a change in traffic related to the new packet satisfies a predetermined condition;
In the setting step, when a change in traffic related to the new packet satisfies the predetermined condition, the rank is newly set, and the rank in the holding unit is updated to the newly set rank. The flow determination method according to any one of claims 2 to 4.
前記所定の条件は、所定期間における前記フロー認識数の変化量または変化率が、予め定められた閾値を超えていることである、請求項5に記載のフロー判定方法。 In the determination step, if it is determined that the new packet does not belong to the existing flow, it is determined that the new packet belongs to a new flow, and the sum of the number of the existing flows and the number of the new flows is determined as flow recognition. As a number,
The flow determination method according to claim 5, wherein the predetermined condition is that a change amount or a change rate of the flow recognition number in a predetermined period exceeds a predetermined threshold.
前記既存のフローを規定するために任意に指定された、当該既存のフロー内の複数の指定フィールドのそれぞれに登録されたデータを蓄積する蓄積手段と、
既に観測済みの観測済みパケットのヘッダ情報内のデータに基づいて前記指定フィールドごとに設定された順位を保持する保持手段と、
前記蓄積手段内のデータと、前記新規パケットのヘッダ情報内のデータとを、前記指定フィールドごとに、前記保持手段内の順位に従って比較し、前記順位に従って比較を行っている際に当該比較の結果が不一致を示すと、前記新規パケットが前記既存のフローに属さないと判定して、前記新規パケットと前記既存のフローに関するそれ以降の比較を中止し、その時点で前記新規パケットと未比較の既存のフローのデータが前記蓄積手段に存在する場合は前記新規パケットの比較対象を前記未比較の既存のフローのデータに変更して比較を継続し、前記複数の指定フィールドでの全ての比較の結果が一致を示すと、前記新規パケットが前記既存のフローに属すると判定する比較手段と、を含む通信装置。 A communication device for determining whether a newly observed new packet belongs to an existing flow,
Storage means for storing data registered in each of a plurality of designated fields in the existing flow, arbitrarily specified to define the existing flow;
Holding means for holding the order set for each of the designated fields based on data in header information of observed packets that have already been observed;
The data in the storage means and the data in the header information of the new packet are compared according to the order in the holding means for each designated field, and the result of the comparison when the comparison is made in accordance with the order Indicates a mismatch, the new packet is determined not to belong to the existing flow, and the subsequent comparison of the new packet and the existing flow is stopped. If the data of the flow is present in the storage means, the comparison target of the new packet is changed to the data of the uncompared existing flow, and the comparison is continued. Comparing means for determining that the new packet belongs to the existing flow when the packet matches.
前記比較手段は、前記新規パケットに関するトラフィックの変化が、前記所定の条件を満たす場合に、前記順位を新たに設定して、前記保持手段内の順位を、前記新たに設定された順位に更新する、請求項8から10のいずれか1項に記載の通信装置。 Change detection means for determining whether a change in traffic related to the new packet satisfies a predetermined condition;
The comparison unit newly sets the rank when the change in traffic related to the new packet satisfies the predetermined condition, and updates the rank in the holding unit to the newly set rank. The communication device according to any one of claims 8 to 10.
前記所定の条件は、所定期間における前記フロー認識数の変化量または変化率が、予め定められた閾値を超えていることである、請求項11に記載の通信装置。 If the comparing means determines that the new packet does not belong to the existing flow, the comparing means determines that the new packet belongs to the new flow, and determines the sum of the number of the existing flows and the number of the new flows as a flow recognition As a number,
The communication device according to claim 11, wherein the predetermined condition is that a change amount or a change rate of the flow recognition number in a predetermined period exceeds a predetermined threshold.
前記コンピュータを、
前記通信装置が有する全手段として機能させるプログラム。 A program for realizing the communication device according to any one of claims 7 to 12 by a computer,
The computer,
A program that functions as all means of the communication device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008205435A JP4871330B2 (en) | 2008-08-08 | 2008-08-08 | Flow determination method, communication apparatus, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008205435A JP4871330B2 (en) | 2008-08-08 | 2008-08-08 | Flow determination method, communication apparatus, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010041644A true JP2010041644A (en) | 2010-02-18 |
JP4871330B2 JP4871330B2 (en) | 2012-02-08 |
Family
ID=42013657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008205435A Expired - Fee Related JP4871330B2 (en) | 2008-08-08 | 2008-08-08 | Flow determination method, communication apparatus, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4871330B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013035451A1 (en) * | 2011-09-05 | 2013-03-14 | 日本電気通信システム株式会社 | Communication apparatus, communication state detecting method, and communication state detecting program |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08130538A (en) * | 1994-10-31 | 1996-05-21 | Hitachi Ltd | Packet repeating method and inter-network equipment |
JP2006108985A (en) * | 2004-10-04 | 2006-04-20 | Hitachi Ltd | Frame repeating device |
-
2008
- 2008-08-08 JP JP2008205435A patent/JP4871330B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08130538A (en) * | 1994-10-31 | 1996-05-21 | Hitachi Ltd | Packet repeating method and inter-network equipment |
JP2006108985A (en) * | 2004-10-04 | 2006-04-20 | Hitachi Ltd | Frame repeating device |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013035451A1 (en) * | 2011-09-05 | 2013-03-14 | 日本電気通信システム株式会社 | Communication apparatus, communication state detecting method, and communication state detecting program |
JPWO2013035451A1 (en) * | 2011-09-05 | 2015-03-23 | 日本電気通信システム株式会社 | COMMUNICATION DEVICE, COMMUNICATION STATE DETECTION METHOD, AND COMMUNICATION STATE DETECTION PROGRAM |
US9461772B2 (en) | 2011-09-05 | 2016-10-04 | Nec Communication Systems, Ltd. | Communication apparatus, communication state detecting method, and communication state detecting program |
Also Published As
Publication number | Publication date |
---|---|
JP4871330B2 (en) | 2012-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3304853B1 (en) | Detection of malware and malicious applications | |
EP2434689B1 (en) | Method and apparatus for detecting message | |
JP4658098B2 (en) | Flow information limiting apparatus and method | |
US8654655B2 (en) | Detecting and classifying anomalies in communication networks | |
US8694630B1 (en) | Self-learning classifier for internet traffic | |
CN107113282A (en) | A kind of method and device for extracting data message | |
US9992081B2 (en) | Scalable generation of inter-autonomous system traffic relations | |
JP2009232300A (en) | Congestion detecting method, congestion detection device, and congestion detection program | |
US20170134413A1 (en) | System and method for connection fingerprint generation and stepping-stone traceback based on netflow | |
EP2530873B1 (en) | Method and apparatus for streaming netflow data analysis | |
CN105227348A (en) | A kind of Hash storage means based on IP five-tuple | |
KR100567320B1 (en) | Flow generation method for Internet traffic measurement | |
JP6317685B2 (en) | Communication monitoring system, communication monitoring method and program | |
JP4871330B2 (en) | Flow determination method, communication apparatus, and program | |
JP2009182573A (en) | Monitor analyzer, method and program | |
CN107623606B (en) | flow table entry idle timeout detection method based on openflow switch | |
US20130322450A1 (en) | Communication apparatus and communication method | |
AU2018253491B2 (en) | Adaptive event aggregation | |
JP6458383B2 (en) | Packet processing program, packet processing apparatus, and packet processing method | |
JP6432377B2 (en) | Message log removing apparatus, message log removing method, and message log removing program | |
CN108183892B (en) | Message processing method and device | |
JP4814203B2 (en) | Flow determination method, communication apparatus, and program | |
JP5907225B2 (en) | Event estimation apparatus, event estimation method, and event estimation program | |
Huang et al. | Exploiting intra-packet dependency for fine-grained protocol format inference | |
CN110300033A (en) | A kind of packet loss information recording method, the network equipment and network system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100721 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20110614 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110907 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111026 |
|
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: 20111115 |
|
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: 20111118 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4871330 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: 20141125 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |