JP2009290436A - Communication data statistic device, and communication data statistic method - Google Patents
Communication data statistic device, and communication data statistic method Download PDFInfo
- Publication number
- JP2009290436A JP2009290436A JP2008139422A JP2008139422A JP2009290436A JP 2009290436 A JP2009290436 A JP 2009290436A JP 2008139422 A JP2008139422 A JP 2008139422A JP 2008139422 A JP2008139422 A JP 2008139422A JP 2009290436 A JP2009290436 A JP 2009290436A
- Authority
- JP
- Japan
- Prior art keywords
- flow
- unit
- data update
- data
- statistics
- 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.)
- Pending
Links
Images
Abstract
Description
本発明は、ネットワークを流れる通信データの統計をとる技術に関する。 The present invention relates to a technique for collecting statistics of communication data flowing through a network.
インターネットは重要な社会インフラとして定着しており、従来のベストエフォート型のデータ通信だけでなく、音声や動画、基幹業務のトランザクションデータなど、通信の品質の保証が必要なデータの通信も行われつつある。また、ADSL(Asymmetric Digital Subscriber Line)やFTTH(Fiber To The Home)技術の普及によってアクセス回線はブロードバンド化され、これに伴い、通信されるデータ量も増大している。 The Internet has become established as an important social infrastructure, and not only conventional best-effort data communication, but also communication of data that requires communication quality assurance such as voice, video, and transaction data for core business is being performed. is there. In addition, access lines have become broadband due to the spread of ADSL (Asymmetric Digital Subscriber Line) and FTTH (Fiber To The Home) technologies, and the amount of data to be communicated has increased accordingly.
このような背景から、通信事業者やISP(インターネットサービスプロバイダ)はネットワーク内の通信の状態を把握するため、ネットワークを流れる通信データの統計をとる技術を必要としている。中でも、通信データの送信元や宛先、利用されるアプリケーション、品質レベルなどにより分類されるフロー毎に通信データの統計をとる技術に対する要求が高い。 From such a background, telecommunications carriers and ISPs (Internet service providers) need a technique for collecting statistics of communication data flowing through the network in order to grasp the state of communication in the network. In particular, there is a high demand for a technique for collecting communication data statistics for each flow classified according to the transmission source and destination of communication data, the application used, the quality level, and the like.
フロー毎に通信データの統計をとる技術として、例えば、特許文献1には、キャッシュ型のフロー統計技術についての記載がある。この技術では、受信パケットのヘッダ情報のから所定の組み合わせのフロー識別子(例えば、送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号等)を取得し、その組み合わせ内の各フロー識別子の値がすべて同一であるパケットの数量をカウントすることで、フロー毎の通信量を集計している。
As a technique for collecting communication data statistics for each flow, for example,
このようなキャッシュ型のフロー統計技術では、パケットを受信する度に、ヘッダ情報の解析を行うため、フローの分析能力が極めて高いという特徴がある。しかし、受信したパケットのすべてについてヘッダ情報の解析を行い、さらに、その解析結果をメモリに記録する必要があるため、回線速度が40Gbps、100Gbpsと高速になるにつれて、メモリへのアクセス速度がネックとなり、必要な統計情報をメモリに記録することが困難になる場合がある。 Such a cache-type flow statistical technique is characterized by extremely high flow analysis capability because header information is analyzed every time a packet is received. However, since it is necessary to analyze header information for all received packets and to record the analysis results in the memory, the access speed to the memory becomes a bottleneck as the line speed increases to 40 Gbps and 100 Gbps. It may be difficult to record the necessary statistical information in the memory.
このような問題を考慮し、本発明が解決しようとする課題は、高速な通信回線においても、効率的に通信データの統計をとることが可能な技術を提供することにある。 In consideration of such problems, the problem to be solved by the present invention is to provide a technique capable of efficiently collecting statistics of communication data even in a high-speed communication line.
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。 SUMMARY An advantage of some aspects of the invention is to solve at least a part of the problems described above, and the invention can be implemented as the following forms or application examples.
[適用例1]ネットワークを流れる通信データの統計をとる通信データ統計装置であって、複数種類のフロー識別子の値が記録されたパケットを受信する受信部と、1種類以上の前記フロー識別子からなる第1のフロー識別条件と、前記受信したパケットのフロー識別子の値とに基づいて、該パケットの第1のフローを識別し、該第1のフローの統計情報を第1のメモリに記録する下位のデータ更新部と、前記第1のフロー識別条件よりも多くの種類のフロー識別子を含む第2のフロー識別条件と、前記受信したパケットのフロー識別子の値とに基づいて、該パケットの第2のフローを識別し、該第2のフローの統計情報を第2のメモリに記録する上位のデータ更新部と、予め定められた統計的な条件に基づいて、前記第1のメモリに記録された前記第1のフローの統計情報または前記第2のメモリに記録された前記第2のフローの統計情報を出力する出力部とを備え、前記上位のデータ更新部は、前記第2のフロー識別条件に含まれるが、前記第1のフロー識別条件に含まれないフロー識別子である異種識別子の値の統計をとるための制御情報を、前記下位のデータ更新部に送信し、前記下位のデータ更新部は、前記第1のフローの統計を前記第1のメモリに記録する際に、前記上位のデータ更新部から受信した前記制御情報に基づいて、前記異種識別子の値の統計をとり、該異種識別子の値の統計情報を前記第1のフローの統計情報に対応付けて前記第1のメモリに記録する通信データ統計装置。 [Application Example 1] A communication data statistics device that takes statistics of communication data flowing through a network, and includes a receiving unit that receives a packet in which a plurality of types of flow identifier values are recorded and one or more types of the flow identifiers. A subordinate that identifies the first flow of the packet based on the first flow identification condition and the value of the flow identifier of the received packet, and records the statistical information of the first flow in the first memory Based on the data update unit, the second flow identification condition including more types of flow identifiers than the first flow identification condition, and the value of the flow identifier of the received packet. And a higher-level data update unit that records statistical information of the second flow in the second memory, and is recorded in the first memory based on a predetermined statistical condition. An output unit for outputting the statistical information of the first flow or the statistical information of the second flow recorded in the second memory, and the upper data update unit includes the second flow identification The control information for taking statistics of the value of the heterogeneous identifier that is a flow identifier that is included in the condition but not included in the first flow identification condition is transmitted to the lower data update unit, and the lower data update is performed. The unit takes statistics of the value of the heterogeneous identifier based on the control information received from the higher-level data update unit when recording the statistics of the first flow in the first memory. A communication data statistics device that records statistical information of identifier values in the first memory in association with statistical information of the first flow.
このような通信データ統計装置であれば、第1のメモリと第2のメモリとに対して、異なるフロー識別条件に基づいてカウントしたフローの統計を並列的に記録することができる。そのため、ネットワークが高速な通信回線であっても、効率的に通信データの統計をメモリに記録することが可能になる。さらに、上記態様の通信データ統計装置では、下位のデータ更新部は、上位のフロー識別部から受信した制御情報に基づいて、異種識別子の値の統計をとることができる。異種識別子は、第2のフロー識別条件に含まれるが、前記第1のフロー識別条件に含まれないフロー識別子であるため、このような異種識別子の値の統計を、第1のフローの統計と対応付けて第1のメモリに記録することで、フローの多様な分析を行うことが可能になる。なお、異種識別子の値の統計のことを、「異なり数」と呼ぶことが可能である。 With such a communication data statistics device, the statistics of flows counted based on different flow identification conditions can be recorded in parallel in the first memory and the second memory. Therefore, even if the network is a high-speed communication line, statistics of communication data can be efficiently recorded in the memory. Furthermore, in the communication data statistics device of the above aspect, the lower data updating unit can take statistics of the values of the different identifiers based on the control information received from the upper flow identification unit. Since the heterogeneous identifier is included in the second flow identification condition but is not included in the first flow identification condition, the statistic of the value of such a heterogeneous identifier is referred to as the first flow statistic. By associating and recording in the first memory, various analyzes of the flow can be performed. Note that the statistics of the values of the different identifiers can be referred to as “different numbers”.
[適用例2]適用例1に記載の通信データ統計装置であって、前記上位のデータ更新部は、前記制御情報として、前記識別された第2のフローが、新規のフローであるか否かを示すフラグ情報を前記下位のデータ更新部に送信し、前記下位のデータ更新部は、前記上位のデータ更新部から受信したフラグ情報が、新規のフローを識別したことを示す場合に、前記異種識別子の値の数をカウントアップする通信データ統計装置。 Application Example 2 In the communication data statistics device according to Application Example 1, the upper data update unit determines whether or not the identified second flow is a new flow as the control information. Is transmitted to the lower data update unit, and the lower data update unit indicates that the flag information received from the upper data update unit indicates that a new flow has been identified. A communication data statistics device that counts up the number of identifier values.
このような通信データ統計装置であれば、下位のデータ更新部は、上位のデータ更新部から受信したフラグ情報に基づいて、容易に異種識別子の値の統計をとることが可能になる。 With such a communication data statistics device, the lower data updating unit can easily take statistics of the values of the different identifiers based on the flag information received from the upper data updating unit.
[適用例3]適用例1に記載の通信データ統計装置であって、前記下位のデータ更新部は、前記第1のフローの統計期間を示す統計期間情報を前記上位のデータ更新部に送信し、前記上位のデータ更新部は、前記下位のデータ更新部から受信した前記統計期間情報を、次回に送信される前記制御情報として保持し、前記下位のデータ更新部は、前記上位のデータ更新部から受信した制御情報によって表される統計期間と、現在の統計期間とが異なる場合に、前記異種識別子の値の数をカウントアップする通信データ統計装置。 Application Example 3 In the communication data statistics device according to Application Example 1, the lower data update unit transmits statistical period information indicating a statistical period of the first flow to the upper data update unit. The upper data update unit holds the statistical period information received from the lower data update unit as the control information transmitted next time, and the lower data update unit includes the upper data update unit. A communication data statistics device that counts up the number of values of the heterogeneous identifier when a statistical period represented by control information received from a current statistical period is different.
このような通信データ統計装置であれば、上位のデータ更新部から下位のデータ更新部に送信された制御情報によって表される統計期間と、現在の統計期間とを対比することで、異種識別子の値の統計をとることが可能になる。 In such a communication data statistical device, the statistical period represented by the control information transmitted from the upper data update unit to the lower data update unit is compared with the current statistical period, so that the heterogeneous identifier It is possible to take statistics of values.
[適用例4]適用例3に記載の通信データ統計装置であって、前記下位のデータ更新部は、新規のフローを識別した場合、または、前記出力部によって前記統計情報が出力された場合に、前記統計期間を変化させる通信データ統計装置。 Application Example 4 In the communication data statistics device according to Application Example 3, in the case where the lower data update unit identifies a new flow or the statistical information is output by the output unit A communication data statistics device for changing the statistics period.
このような通信データ統計装置であれば、新規のフローを識別した場合や、出力部によって統計情報が出力された場合に変化する統計期間に基づいて、異種識別子の値の統計をとることが可能になる。 With such a communication data statistics device, it is possible to take statistics on the value of a heterogeneous identifier based on a statistical period that changes when a new flow is identified or when statistical information is output by an output unit become.
なお、本発明は、上述した通信データ統計装置としての構成のほか、通信データ統計方法や、コンピュータプログラムとしても構成することができる。かかるコンピュータプログラムは、コンピュータが読取可能な記録媒体に記録されていてもよい。記録媒体としては、例えば、フレキシブルディスクやCD−ROM、DVD−ROM、光磁気ディスク、メモリカード、ハードディスク等の種々の媒体を利用することができる。 The present invention can be configured as a communication data statistics method or a computer program in addition to the configuration as the communication data statistics device described above. Such a computer program may be recorded on a computer-readable recording medium. As the recording medium, for example, various media such as a flexible disk, a CD-ROM, a DVD-ROM, a magneto-optical disk, a memory card, and a hard disk can be used.
以下、本発明の実施の形態をいくつかの実施例に基づき説明する。
A.第1実施例:
図1は、第1実施例としての通信データ統計装置104を含むネットワーク構成の一例を示す図である。図示するように、本実施例のネットワーク構成には、それぞれ相互に接続されてパケットの中継を行うルータ101a〜101cや、ルータ101bに接続されたサーバ102a、ルータ101cに接続されたサーバ102b、ルータ101aに接続された通信データ統計装置104、ルータ101aに接続された端末装置103a〜103c、が含まれている。ルータ101aは、ミラーリング技術あるいはRFC3176に規定されたsFlow技術を用いることで、中継を行ったパケット(トラフィック)のコピーを通信データ統計装置104に送信する。
Hereinafter, embodiments of the present invention will be described based on several examples.
A. First embodiment:
FIG. 1 is a diagram showing an example of a network configuration including a communication
図2は、本実施例の通信データ統計装置104の概略構成を示すブロック図である。通信データ統計装置104は、ネットワークを流れる通信データの統計をとる装置である。図示するように、本実施例の通信データ統計装置104は、ルータ101aから送信されたパケットを受信するパケット受信部201と、パケット受信部201が受信したパケットの解析を行うパケット解析部202と、パケット解析部202によって解析されたパケットについて統計処理を行う統計処理部204と、統計処理の結果が記録されるフローテーブル(SIP-DIP-DPTテーブル221a、SIP-DIPテーブル221b、DIPテーブル221c、SIPテーブル221d)を保持するメモリ222a〜222dと、統計処理の結果を出力する統計情報出力部203と、統計処理部204や統計情報出力部203に対する制御を行う制御部212とを備えている。メモリ222a〜222dとしては、例えば、一般的に流通しているSDRAMや、アクセスのレイテンシを低減させたRLDRAMを用いることができる。本実施例では、パケット受信部201は、ルータ101aから送信されたパケットを受信するが、パケット受信部201は、ネットワークを流れるパケットを横取り(キャプチャ)することとしてもよい。
FIG. 2 is a block diagram illustrating a schematic configuration of the communication
パケット受信部201と、パケット解析部202と、統計処理部204と、統計情報出力部203と、制御部212とは、それぞれ、FPGA(Field Programmable Gate Array)によって構成されている。これらは、全ての機能が1つのFPGAによって構成されていてもよいし、個別のFPGAによって構成されていてもよい。また、FPGAではなく、ASIC(Application Specific Integrated Circuit)によって構成されていてもよい。
The
パケット解析部202は、パケット受信部201によって受信したパケットから、フロー識別子の値や、パケットの受信時刻、バイト数、TCPのフラグ情報等を抽出し、これらの抽出された情報を統計処理部204へ送信する。フロー識別子は、パケットのヘッダに記録された情報である。フロー識別子としては、例えば、VLAN ID(VID)や、送信元MACアドレス、宛先MACアドレス、送信元IPアドレス(SIP)、宛先IPアドレス(DIP)、上位プロトコル(PRT)、送信元ポート番号(SPT)、宛先ポート番号(DPT)が挙げられる。
The
統計処理部204は、パケット解析部202から受信したフロー識別子の値等に基づいて、パケットのフローを分析し、分析されたフロー毎にパケットの集計を行う。集計の結果は、統計処理部204に接続されたメモリ222a〜222dが有するフローテーブル221a〜221dに記録する。この統計処理部204の詳細な構成については後述する。
The
制御部212には、管理端末211が接続される。制御部212は、この管理端末211の指示に従って、統計処理部204や統計情報出力部203に対する種々の設定を行う。管理端末211と制御部212とは、ネットワークによって接続されてもよいし、RS−232CやUSB等のインタフェースによって接続されてもよい。
A
統計情報出力部203は、統計処理部204から受信した統計情報を外部の装置に出力する。統計情報の出力は、ネットワークインタフェースやPCIバスなど、事前に設定された任意のインタフェースを介して行う。ネットワークインタフェースによって出力する際には、制御部212を経由して管理者により設定された、宛先IPアドレス、送信元IPアドレスを用いて送信パケットを生成する。なお、統計情報出力部203は、所定のインタフェースに対して統計情報を出力する以外にも、通信データ統計装置104に接続された表示装置や印刷装置に対して、統計情報を出力することとしてもよい。
The statistical
図3は、各フローテーブルの構成を示す図である。図3(a)〜(d)に示したフローテーブルは、フロー識別子の1以上の組み合わせからなるフロー識別条件毎に用意されている。フロー識別条件は、例えば、制御部212を介して、管理者によって設定される。SIP-DIP-DPTテーブル221aは、送信元IPアドレス(SIP)と宛先IPアドレス(DIP)と宛先ポート番号(DPT)との組み合わせをフロー識別条件とするテーブルである。また、SIP-DIPテーブル221bは、SIPとDIPの組み合わせをフロー識別条件とするテーブルである。また、DIPテーブル221cは、DIPをフロー識別条件とするテーブルである。また、SIPテーブル221dは、SIPをフロー識別条件とするテーブルである。
FIG. 3 is a diagram showing the configuration of each flow table. The flow tables shown in FIGS. 3A to 3D are prepared for each flow identification condition including one or more combinations of flow identifiers. The flow identification condition is set by the administrator via the
各フローテーブルには、「エントリ番号」、「フロー識別条件」、「統計情報」、「世代識別子」が記録される。「エントリ番号」には、フローの種別を一意に示すユニークな番号が記録される。「フロー識別条件」には、そのフロー識別条件に含まれるフロー識別子の値が記録される。例えば、SIPテーブル221dのフロー識別条件には、SIPの値が記録され、SIP-DIPテーブル221bのフロー識別条件には、SIPとDIPの値が記録される。「統計情報」には、フロー毎にカウントされたパケット数が記録される。また、SIP-DIP-DPTテーブル221a以外のフローテーブルには、統計情報として、「異なり数」が記録される。「異なり数」とは、フロー識別条件に含まれるフロー識別子の各値は同一であるが、そのフロー識別条件以外のフロー識別子(異種識別子)の値が異なるパケットの数である。例えば、SIP-SIPテーブル221bでは、SIPとDIPの値は同じであるが、DPTの値が異なるパケットの数が、異なり数として記録される。「世代識別子」には、集計中の統計情報の世代(集計期間)が記録される。この世代識別子は、エントリが上書きされたり、統計情報が統計情報出力部203によって出力された場合に、値が1つカウントアップされる。なお、統計情報としては、図3に示した情報以外にも、積算バイト数や、フローの発生開始時刻、最終更新時刻、TCPフラグのうちSYNフラグが立っているパケットの数などの情報を記録してもよい。また、統計情報として、各フローのパケット数に基づいて算出されたパケット数の平均値や分散、偏差値、中央値などの種々の統計値を記録してもよい。
In each flow table, “entry number”, “flow identification condition”, “statistical information”, and “generation identifier” are recorded. In “entry number”, a unique number uniquely indicating the type of flow is recorded. In the “flow identification condition”, the value of the flow identifier included in the flow identification condition is recorded. For example, the SIP value is recorded in the flow identification condition of the SIP table 221d, and the SIP and DIP values are recorded in the flow identification condition of the SIP-DIP table 221b. In “statistical information”, the number of packets counted for each flow is recorded. In the flow tables other than the SIP-DIP-DPT table 221a, “difference number” is recorded as statistical information. The “difference number” is the number of packets having the same flow identifier value included in the flow identification condition but different values of the flow identifier (heterogeneous identifier) other than the flow identification condition. For example, in the SIP-SIP table 221b, the numbers of packets having the same SIP and DIP values but different DPT values are recorded as different numbers. The “generation identifier” records the generation (counting period) of the statistical information being counted. This generation identifier is incremented by one when an entry is overwritten or statistical information is output by the statistical
統計処理部204は、フロー識別条件に含まれるフロー識別子の値が全て一致するパケットを同一のフローであると決定し、決定されたフロー毎にパケット数をカウントすることでフローの統計をとる。そして、その統計結果を、そのフロー識別条件に対応するフローテーブルに統計情報として記録する。例えば、フロー識別条件がSIPとDIPとであれば、その双方の値が一致するパケットを同一のフローとして決定し、そのフロー毎にパケットをカウントする。そして、そのフロー識別条件に対応するSIP-DIPテーブル221bに対して、カウントされたパケット数を記録する。なお、本実施例ではフローテーブルが4種類用意されている例を示したが、フローテーブルの数は、フロー識別条件の数に応じて増減する。
The
図4は、統計処理部204の詳細な構成を示す図である。統計処理部204は、複数のデータ更新部401a〜401d(以下、まとめて、「データ更新部401」とも記載する)から構成されている。データ更新部401は、それぞれ、パケット解析部202から、受信パケットのフロー識別子の値や、パケットの受信時刻、バイト数、TCPのフラグ情報等を受信し、これらの情報に基づいて、各フローテーブルの更新を行う。また、データ更新部401は、フローテーブルに記録された各フローのパケット数が、所定の閾値以上の数となった場合に、そのフローの統計情報を統計情報出力部203に送信する。
FIG. 4 is a diagram illustrating a detailed configuration of the
データ更新部401は、それぞれ、同一機能を有する処理ブロックであり、1対1の関係で、各フローテーブル221a〜221dに対応付けられている。具体的には、データ更新部401aは、SIP-DIP-DPTテーブル221aを記憶するメモリ222aと接続され、データ更新部401bは、SIP-DIPテーブル221bを記憶するメモリ222bと接続される。また、データ更新部401cは、DIPテーブル221cを記憶するメモリ222cと接続され、データ更新部401dは、SIPテーブル221dを記憶するメモリ222dと接続される。なお、データ更新部401の数は、フローテーブルの数に応じて増減する。
The
各データ更新部401は、図3に示した「異なり数」をカウントするための情報(以下、「異なり数制御情報」という)を、他のデータ更新部401に送信する機能を有している。異なり数制御情報は、本実施例では、フローの新規/既出を表すフラグ情報である。本実施例では、データ更新部401aから出力された異なり数制御情報は、データ更新部401bに送信され、データ更新部401bから出力された異なり数制御情報はデータ更新部401cとデータ更新部401dに送信される。つまり、本実施例では、フロー識別条件に含まれるフロー識別子が多いデータ更新部401(以下、「上位のデータ更新部401」という)から、それよりも1つフロー識別子が少ないフロー識別条件を有するデータ更新部401(以下、「下位のデータ更新部401」という)に対して、異なり数制御情報が送信される。
Each
図5は、データ更新部401の詳細な構成を示す図である。データ更新部401は、解析結果受信部501、組み合わせ抽出部502、エントリ決定部503、データ比較部504、統計更新部505、閾値判定部506、データ書込み部507、フローデータ出力部508から構成される。
FIG. 5 is a diagram illustrating a detailed configuration of the
解析結果受信部501は、パケット解析部202から、フロー識別子の値(SIP、DIP、PRT、SPT、DPT等)や、パケット受信時刻、バイト数、TCPフラグ情報等を受信する。そして、このうち、フロー識別子の値を、組み合わせ抽出部502に転送し、他の情報を統計更新部505に転送する。
The analysis
組み合わせ抽出部502は、解析結果受信部501から受信したフロー識別子の値の中から、自身のフロー識別条件に含まれるフロー識別子の組み合わせを抽出する。例えば、データ更新部401bが有する組み合わせ抽出部502であれば、フロー識別子の値の中から、SIPとDIPの組み合わせを抽出する。組み合わせ抽出部502は、フロー識別子の値を抽出すると、抽出したフロー識別子の値を、エントリ決定部503とデータ比較部504とに送信する。なお、フロー識別条件に含まれるフロー識別子の組み合わせは、データ更新部401毎に、制御部212を経由して管理者により事前に設定される。
The
エントリ決定部503は、組み合わせ抽出部502から受信したフロー識別子の値に基づいて、受信したパケットの統計情報を記録するフローテーブルのエントリ番号を決定する。具体的には、組み合わせ抽出部502から受信したフロー識別子の値のハッシュ値を、エントリ番号に対応付ける(マッピングする)ことで、エントリ番号の決定を行う。このとき、エントリ決定部503は、決定されるエントリ番号が、異なるフロー識別子の値の間で重複してしまうことを避けるため、複数(本実施例では、4つとする)のハッシュ関数を用いて複数(本実施例では、4つとする)のエントリ番号を決定する。エントリ決定部503は、複数のエントリ番号を決定すると、決定した複数のエントリ番号をデータ比較部504に送信するとともに、メモリに対して、決定した複数のエントリ番号からデータを読み込む信号を送信する。この読み込み信号によって、該当する複数のエントリのデータが、メモリ内のフローテーブルからデータ比較部504に送信される。このとき、データ比較部504に送信されるデータのことを、以下では、「フローデータ」という。このフローデータには、フロー識別子の値、統計情報、世代識別子が含まれる。
Based on the value of the flow identifier received from the
データ比較部504は、フローテーブル221から受信した4つのフローデータについて、それぞれ、そのフローデータに含まれるフロー識別子の値と、組み合わせ抽出部502から受信したフロー識別子の値とを比較する。この比較の結果、フローデータに含まれるフロー識別子の値と、組み合わせ抽出部502から受信したフロー識別子の値とがすべて一致するフローデータが存在する場合には(換言すれば、受信したパケットのフローが既出のフローである場合には)、データ比較部504は、そのフローデータを統計更新部505に送信し、更に、このフローデータが記録されていたエントリのエントリ番号をデータ書込み部507に送信する。
For each of the four flow data received from the flow table 221, the
フローテーブル221から受信した4つのフローデータのすべてについて、そのフローデータに含まれるフロー識別子と、組み合わせ抽出部502から受信したフロー識別子とが一致しない場合には(換言すれば、受信したパケットのフローが新規のフローである場合には)、データ比較部504は、フローデータを読み込んだ4つのエントリの中から上書きの対象とするエントリを1つ選択する。上書きするエントリの選択は、エントリ中のパケット数が最小のエントリや、最終更新時刻が最も古いエントリなど、予め設定した所定の基準に基づいて決定される。上書きするエントリを選択すると、データ比較部504は、選択したエントリのフローデータに新規のデータを代入する。具体的には、フロー識別子には、組み合わせ抽出部502から受信したフロー識別子の値を代入し、統計情報のパケット数および異なり数には、「0」を代入する。また、世代識別子341には、上書き前の世代識別子に「1」を加えた値(つまり、上書きするエントリの世代識別子+1)を代入する。こうして、新規のフローデータを作成すると、データ比較部504は、作成したフローデータを統計更新部505に送信し、そのエントリのエントリ番号をデータ書込み部507に送信する。
For all four flow data received from the flow table 221, if the flow identifier included in the flow data does not match the flow identifier received from the combination extraction unit 502 (in other words, the flow of the received packet In the case of a new flow), the
統計更新部505は、データ比較部504からフローデータを受信し、解析結果受信部501からパケット受信時刻、バイト数、TCPフラグ情報を受信する。そして、更に、上位のデータ更新部401から異なり数制御情報を受信する。統計更新部505は、これらのデータを受信すると、まず、フローデータのうち、統計情報内のパケット数を1つ、カウントアップする。
The
更に、統計更新部505は、上位のデータ更新部401から、異なり数制御情報として新規のフローが検出された旨のフラグ(新規フラグ)を受信した場合には、統計情報内の異なり数を1つ、カウントアップする。例えば、データ更新部401bが、DPTの異なり数をカウントする場合には、SIP-DIP-DPTテーブルの更新を行うデータ更新部401aから新規フラグを受信した場合に、DPTの異なり数に「1」を加算する。
Further, when the
また、統計更新部505は、統計情報に、積算バイト数やフロー開始時刻、最終更新時刻、SYNフラグがセットされているパケットの数が含まれる場合には、これらの値を、解析結果受信部501から受信した情報に基づいて更新する。
Further, when the statistical information includes the accumulated number of bytes, the flow start time, the last update time, and the number of packets for which the SYN flag is set, the
統計更新部505は、このようにして更新したフローデータを閾値判定部506へ送信する。また、統計更新部505は、データ比較部504から受信したフローデータのパケット数が「0」である場合には、そのフローデータが、新規のフローデータであると判断し、新規フラグであることを示す異なり数制御情報をフローデータ出力部508へ送信する。
The statistics update
閾値判定部506は、統計更新部505から受信したフローデータ中のパケット数と、所定の閾値とを比較する。この比較の結果、パケット数が閾値を越えている場合には、閾値判定部506は、統計更新部505によって更新されたフローデータをフローデータ出力部508へと出力する。そして、閾値判定部506は、出力対象となったフローデータの統計情報をゼロリセットして、世代識別子を1つカウントアップする。そして、このように更新したフローデータをデータ書込み部507へ送信する。パケット数が閾値を越えていない場合には、閾値判定部506は、統計更新部505から受信したフローデータをそのままデータ書込み部507に送信する。上述した閾値は、制御部212を経由して管理者により適宜設定される。
The
データ書込み部507は、閾値判定部506から受信したフローデータを、フローテーブル中の、データ比較部504から受信したエントリ番号に対応するエントリに書き込む。
The
フローデータ出力部508は、統計更新部505から異なり数制御情報を受信した場合に、この異なり数制御情報を下位のデータ更新部401に送信する。また、フローデータ出力部508は、閾値判定部506から受信したフローデータを統計情報出力部203に送信する。
When the flow
以上、データ更新部401の詳細な構成を処理内容とともに説明した。以下、参考までに、このデータ更新部401によって実行される処理の内容をフローチャートを用いて確認的に説明する。
The detailed configuration of the
図6は、データ更新部401a〜401dがそれぞれ実行するフローテーブルの更新処理の流れを示すフローチャートである。図示するように、まず、各データ更新部401は、パケット解析部202から、パケットの解析結果を受信し(ステップS10a〜S10d)、その解析結果から、自身のフロー識別条件に含まれるフロー識別子の組み合わせを抽出する(ステップS12a〜S12d)。
FIG. 6 is a flowchart illustrating a flow table update process executed by the
データ更新部401a〜401dは、それぞれ、ステップS12a〜S12dで抽出されたフロー識別子の値に基づいて、該当するフローが記録されているエントリをフローテーブルから検索し(ステップS14a〜S14d)、統計情報を更新する(ステップS20a〜S20d)。このとき、データ更新部401bは、ステップS12bで抽出されたフロー識別子の値が新規であれば(ステップS16b)、新規フラグを示す異なり数制御情報を、下位のデータ更新部401であるデータ更新部401cとデータ更新部401dとに送信する。この新規フラグを受信したデータ更新部401cとデータ更新部401dとは、ステップS20c,S20dにおいて、異なり数の加算を行う。また、データ更新部401aは、ステップS12aで抽出されたフロー識別子の値が新規であれば(ステップS16a)、新規フラグを示す異なり数制御情報を、下位のデータ更新部401であるデータ更新部401bに送信する(ステップS18a)。この新規フラグを受信したデータ更新部401bは、ステップS20bにおいて、異なり数の加算を行う。なお、図示は省略しているが、ステップS16bやステップS18bにおいて、フロー識別子の値が既出であると判断されれば、既出であることを示すフラグ(既出フラグ)が下位のデータ更新部401に送信される。
The
統計情報の更新を行うと、データ更新部401a〜401dは、それぞれ、更新対象のエントリのパケット数と所定の閾値とを比較する(ステップS22a〜S22d)。この比較の結果、パケット数が閾値以上であれば、データ更新部401a〜401dは、統計情報を出力するとともに(ステップS24a〜S24d)、出力後の統計情報をリセットする(ステップS26a〜S26d)。更に、データ更新部401a〜401dは、それぞれ、更新対象のエントリの世代識別子を1つカウントアップする(ステップS30,S32)。
When the statistical information is updated, the
以上で説明した第1実施例の通信データ統計装置104によれば、フロー識別条件毎に用意されたフローテーブルがそれぞれ異なるメモリに記憶されており、更に、フローテーブルを更新するデータ更新部401が、各メモリ毎に接続されている。そのため、4つのフローテーブルの更新を同時に行うことができる。この結果、ネットワークの回線速度が高速な場合であっても、メモリへのアクセス速度がボトルネックとなって、統計処理のスピードが低下してしまうことを抑制することができる。
According to the communication data
また、本実施例では、フローテーブルの更新時に新規のフローが検出されれば、下位のデータ更新部401に、異なり数制御情報が送信される。この異なり数制御情報の送信を受けたデータ更新部401は、この異なり数制御情報を参照して、自己のフローテーブル内の異なり数を更新することができる。従って、データ更新部401は、パケット数の更新と共に、異なり数の更新も一度に行うことができるので、異なり数だけを独立して更新する必要がない。そのため、メモリの更新回数が増加することがなく、この結果、高速に、異なり数を含めた統計情報を更新することが可能になる。
In this embodiment, if a new flow is detected when updating the flow table, different number control information is transmitted to the lower
また、本実施例の通信データ統計装置104によれば、受信したパケットのフロー毎に、パケットの数や、異なり数、世代識別子が集計される。そして、集計されたパケットの数が所定の閾値以上になれば、これらの情報が、統計情報として外部の機器に出力される。キャリアやISPは、こうして出力されたフロー毎の統計情報を用いることにより、サービス提供時のデータの伝送品質の状況を確認することが可能となる。また、このような情報を用いることで、ネットワーク資源を有効に活用するためのトラフィック・エンジニアリングが可能になる。さらに、顧客の需要を予測してネットワーク資源を計画的に準備しておき、ユーザの要求(帯域、サービス)に対して迅速にネットワーク資源を提供するプロビジョニングや、アタックの検出・分析、課金などを行うことが可能となる。また、本実施例では、異なり数の集計結果も出力されるため、フロー識別条件によって集約されたフローについて、それらのフローが他のフロー識別子についてどの程度拡散されて送信されているかを把握することができる。そのため、ポートスキャンを伴うネットワークワームの増殖活動等を監視することが可能になる。更に、本実施例では、各エントリについて世代識別子がカウントされるので、世代識別子の値が局所的に大きいエントリが生じた場合に、メモリへのアクセスに異常が生じていると判断することが可能になる。
Also, according to the communication
B.第2実施例:
続いて、本発明の第2実施例について説明する。この第2実施例では、世代識別子を用いることで、異なり数の集計を行う。
B. Second embodiment:
Next, a second embodiment of the present invention will be described. In the second embodiment, different numbers are aggregated by using generation identifiers.
本実施例の通信データ統計装置104は、第1実施例の通信データ統計装置104に対して、フローテーブル221の構成や、データ更新部401間の接続状態、異なり数制御情報の内容、統計更新部505の動作、フローデータ出力部508によって出力される情報が異なる。以下、これらの相違点について説明する。
The communication
図7は、第2実施例における各フローテーブルの構成を示す図である。本実施例では、図3に示した第1実施例のフローテーブルとは異なり、SIP-DIP-DPTテーブル221a
と、SIP-DIPテーブル221bとには、「異なり数世代情報」が記録される。「異なり数世代情報」とは、そのフローテーブルの更新結果に基づいて異なり数をカウントする他のフローテーブルの世代識別子の値を示している。例えば、本実施例のSIP-DIPテーブル221bは、SIPテーブル221dの更新時のDIPの異なり数のカウントに利用され、また、DIPテーブル221の更新時のSIPの異なり数のカウントに利用されるため、SIPテーブル221dとDIPテーブル221cの世代識別子の値が、SIP-DIPテーブル221bに、異なり数世代情報として記録される。
FIG. 7 is a diagram showing the configuration of each flow table in the second embodiment. In this embodiment, the SIP-DIP-DPT table 221a is different from the flow table of the first embodiment shown in FIG.
In the SIP-DIP table 221b, “different generation information” is recorded. “Different number generation information” indicates the value of the generation identifier of another flow table that counts the number of differences based on the update result of the flow table. For example, the SIP-DIP table 221b of this embodiment is used for counting the number of different DIPs when updating the SIP table 221d, and is also used for counting the number of different SIPs when updating the DIP table 221. The generation identifier values of the SIP table 221d and the DIP table 221c are recorded as different generation information in the SIP-DIP table 221b.
図8は、第2実施例における統計処理部204の詳細な構成を示す図である。本実施例では、各データ更新部401は、異なり数世代情報や世代識別子の値を相互に送受信する。そのため、図4に示した第1実施例の統計処理部と図8に示した第2実施例の統計処理部とでは、各データ更新部401を接続する信号線が、第1実施例では一方向であるのに対して、第2実施例では、双方向である点が異なる。本実施例では、データ更新部401間で、異なり数制御情報として、異なり数世代情報が送受信される。また、本実施例では、下位のデータ更新部401から上位のデータ更新部401に対しては、下位のデータ更新部401によってカウントされた世代識別子の値が送信される。こうして送信された下位のデータ更新部401の世代識別子の値は、上位のデータ更新部401の異なり数世代情報として記録される。
FIG. 8 is a diagram showing a detailed configuration of the
続いて、第2実施例における統計更新部505の動作をフローチャートに基づき説明する。
図9は、第2実施例における統計更新部505の動作を示すフローチャートである。本実施例の統計更新部505は、上位のデータ更新部401から異なり数世代情報を受信し、更に、下位のデータ更新部401から世代識別子の値を受信する(ステップS100)。これらの情報を受信すると、統計更新部505は、受信した異なり数世代情報の値と、データ比較部504から受信したフローデータ中の自身の世代識別子の値(ステップS100で受信した世代識別子の値ではない)とが一致するか否かを判断する(ステップS110)。受信した異なり数世代情報の値と自身の世代識別子の値とが一致しない場合には(ステップS110:No)、新規のフローであると判断し(ステップS120)、異なり数を1つカウントアップする(ステップS130)。一方、受信した異なり数世代情報の値と自身の世代識別子の値とが一致する場合には(ステップS110:Yes)、既出のフローであると判断できるので(ステップS140)、統計更新部505は、異なり数のカウントアップを行わない。
Next, the operation of the
FIG. 9 is a flowchart showing the operation of the
世代識別子の値は、第1実施例で説明したように、新規のフローが検出されたことによってエントリが上書きされたり、統計情報が出力されてエントリがゼロクリアされた場合にカウントアップされる値である。つまり、世代識別子は、該当するエントリにおいてパケット数を集計している期間を表しているといえる。そのため、下位のデータ更新部401は、上位のデータ更新部401から受信した異なり数世代情報の値(=自身の直近の世代識別子の値)と、自身の現在の世代識別子の値とを比較することで、受信したパケットのフローが既出であるか新規であるかを正確に判断することができる。この結果、データ更新部401は、異なり数の加算を正確に行うことが可能になる。
As described in the first embodiment, the value of the generation identifier is a value that is counted up when an entry is overwritten when a new flow is detected or when statistical information is output and the entry is cleared to zero. is there. That is, it can be said that the generation identifier represents a period in which the number of packets is counted in the corresponding entry. Therefore, the lower
例えば、SIPテーブル221dを管理するデータ更新部401dは、SIP-DIPテーブル221bを管理するデータ更新部401bから受信した異なり数世代情報の値と、自身の世代識別子の値と比較する。値が不一致の場合は、新規のフローであると判断し、DIPの異なり数を1つカウントアップする。これに対して、値が一致する場合は、既出のフローと判断し、異なり数はカウントアップしない。同様に、SIP-DIPテーブル221bを管理するデータ更新部401bでは、SIP-DIP-DPTテーブル221aを管理するデータ更新部401aから受信した異なり数世代情報の値と、自身の世代識別子の値とを比較し、不一致の場合には、DPTの異なり数を1つカウントアップする。これに対して、値が一致する場合は、既出のフローと判断し、異なり数はカウントアップしない。
For example, the
統計更新部505は、上記ステップS120において、新規のフローであると判断し、ステップS130において異なり数のカウントアップを行った後に、データ比較部504から受信したフローデータ中の異なり数世代情報と、現在の世代識別子の値とをフローデータ出力部508に送信する(ステップS150)。つまり、第1実施例では、新規フラグであることを示す異なり数制御情報をフローデータ出力部508に送信していたが、第2実施例では、異なり数世代情報と世代識別子とをフローデータ出力部508に送信するのである。フローデータ出力部508は、統計更新部505から異なり数世代情報と世代識別子とを受信すると、異なり数世代情報を下位のデータ更新部401に送信し、世代識別子を上位のデータ更新部401に送信する。
The
最後に、統計更新部505は、自身のフローテーブル内の異なり数世代情報に、下位のデータ更新部401の現在の世代識別子の値を保持しておくため、上記ステップS100によって下位のデータ更新部401から受信した世代識別子の値を、自身の異なり数世代情報に格納し、フローデータを閾値判定部506へ送信する(ステップS160)。例えば、SIP-DIP-DPTテーブル221aを管理するデータ更新部401aは、SIP-DIPテーブル221bを管理するデータ更新部401bから受信した世代識別子の値を、異なり数世代情報として格納する。同様に、SIP-DIPテーブル221bを管理するデータ更新部401bは、DIPテーブル221cを管理するデータ更新部401cから受信した世代識別子の値をDIPの異なり数世代情報として格納し、SIPテーブル221dを管理するデータ更新部401dから受信した世代識別子の値をSIPの異なり数世代情報として格納する。
Finally, the
以上で説明した第2実施例の通信データ統計装置104によれば、各データ更新部401は、世代識別子と異なり数世代情報とを送受信することで、異なり数を正確にカウントすることが可能になる。また、本実施例では、データ更新部401は、パケット数の更新と共に、異なり数や異なり数世代情報の更新も一度に行うことができるので、異なり数や異なり数世代情報を、パケット数と別々に更新する必要がない。そのため、メモリの更新回数が増加することがなく、この結果、高速に、異なり数を含めた統計情報を更新することが可能になる。
According to the communication
なお、本実施例のデータ更新部401は、上述のように、下位のデータ更新部401に対して異なり数世代情報を送信している。このとき、上位のデータ更新部401は、受信側(下位のデータ更新部401)が必要とする異なり数世代情報を選択して送信してもよい。例えば、SIP-DIPテーブル221bを管理するデータ更新部401bは、DIPテーブル302を管理するデータ更新部401cに対しては、DIPについての異なり数世代情報を選択して送信し、SIPテーブル302を管理するデータ更新部401dに対しては、SIPについての異なり数世代情報を選択して送信するといった制御である。
Note that the
また、本実施例では、フローデータ出力部508は、図8に示した結線に基づき、上位のデータ更新部401に世代識別子を送信する。つまり、データ更新部401dとデータ更新部401cとは、データ更新部401bに世代識別子を送信し、データ更新部401bは、データ更新部401aに世代識別子を送信する。つまり、本実施例では、異なり数のカウントに関係のあるデータ更新部401に対してのみ、世代識別子を送信している。これに対して、データ更新部401dはデータ更新部401a〜401cに、データ更新部401cはデータ更新部401a,401bに、データ更新部401bはデータ更新部401aにと、上位のすべてのデータ更新部401に世代識別子を送信することとしてもよい。このような場合であっても、上位のデータ更新部401は、自身の異なり数のカウントに関係のある世代識別子を用いて、異なり数をカウントするからである。
In the present embodiment, the flow
C.第3実施例:
最後に、本発明の第3実施例について説明する。上述した第1実施例や第2実施例では、通信データ統計装置104は独立した装置の形態をとっている。これに対して、第3実施例では、上述した通信データ統計装置104が有する機能(以下、「通信データ統計機能」という)を図1に示したルータ101の内部に実装させる構成とする。
C. Third embodiment:
Finally, a third embodiment of the present invention will be described. In the first and second embodiments described above, the communication
図10は、通信データ統計機能を内蔵したルータ101の機能ブロック図である。ルータ101は、入力回線に接続された受信パケット処理部701と、出力回線に接続された送信パケット処理部702と、受信パケット処理部701に接続された検索処理部703と、トラフィック統計取得部705と、検索処理部703に付随するルーティングテーブル704と、ルータ制御部711とを備えている。ルータ制御部711は、管理端末712に接続されており、管理端末712の指示に従い、受信パケット処理部701や送信パケット処理部702、検索処理部703に対して、各種の設定を行う。管理端末211とルータ制御部711とは、ネットワークによって接続されてもよいし、RS−232CやUSB等のインタフェースによって接続されてもよい。
FIG. 10 is a functional block diagram of the
受信パケット処理部701は、入力回線から受信したパケットを一旦バッファに蓄積し、蓄積したパケットのヘッダ情報を、検索処理部703とトラフィック統計取得部705とに送信する。
The received
検索処理部703は、受信パケット処理部701からヘッダ情報を受信すると、ルーティングテーブル704を参照して、そのパケットの出力先となる出力回線を検索し、その検索結果を、受信パケット処理部701に通知する。
When the
受信パケット処理部701は、検索処理部703から検索結果を受信すると、検索結果に含まれる出力回線が含まれる送信パケット処理部702に、バッファに蓄積されたパケットと検索結果とを転送する。
When receiving the search result from the
送信パケット処理部は、受信パケット処理部から、パケット情報と検索処理部703による検索結果を受信し、この検索結果に含まれる出力回線にパケットを出力する。
The transmission packet processing unit receives the packet information and the search result by the
トラフィック統計取得部705は、図2に示した通信データ統計装置104が有する機能ブロックをすべて有する。ただし、第1実施例では、図2のパケット受信部は、ルータ101aからパケットを受信しているのに対して、本実施例では、図10に示した受信パケット処理部701からパケットのヘッダ情報を受信する。また、第1実施例では、統計情報出力部203は、所定のインタフェースに対して統計情報を出力するのに対して、本実施例では、図10に示した受信パケット処理部701に統計情報が出力される。統計情報を取得した受信パケット処理部701は、所定のネットワーク機器(例えば、端末103a〜103c)に、統計情報を転送する。また、トラフィック統計取得部705内の制御部212は、ルータ制御部711と接続しており、ルータ制御部711経由でトラフィック統計取得部705を制御することができる。
The traffic
以上で説明した第3実施例によれば、ルータ101が、異なり数を含めた通信データの統計をとることが可能になる。
According to the third embodiment described above, it becomes possible for the
以上、本発明の種々の実施例について説明したが、本発明はこれら実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、ハードウェアによって実現した機能は、CPUが所定のプログラムを実行することでソフトウェア的に実現することとしてもよい。また、上述した実施例では、各フローテーブル221が、個別にメモリに記憶されていることとしたが、メモリ量が不足する場合には、1つのメモリ内にフローテーブル221を複数配置する構成も可能である。また、上述した実施例では、統計処理部204には、4つデータ更新部が含まれているが、2以上のデータ更新部が含まれていればよく、その数に限定されない。
Although various embodiments of the present invention have been described above, the present invention is not limited to these embodiments, and it goes without saying that various configurations can be adopted without departing from the spirit of the present invention. For example, a function realized by hardware may be realized by software by a CPU executing a predetermined program. In the above-described embodiment, each flow table 221 is individually stored in the memory. However, when the amount of memory is insufficient, a configuration in which a plurality of flow tables 221 are arranged in one memory is also possible. Is possible. In the above-described embodiment, the
101a〜101c…ルータ
102a,102b…サーバ
103a〜103c…端末装置
104…通信データ統計装置
201…パケット受信部
202…パケット解析部
203…統計情報出力部
204…統計処理部
211…管理端末
212…制御部
221a〜221d…フローテーブル
222a〜222d…メモリ
401a〜401d…データ更新部
501…解析結果受信部
502…組み合わせ抽出部
503…エントリ決定部
504…データ比較部
505…統計更新部
506…閾値判定部
507…データ書込み部
508…フローデータ出力部
701…受信パケット処理部
702…送信パケット処理部
703…検索処理部
704…ルーティングテーブル
705…トラフィック統計取得部
711…ルータ制御部
712…管理端末
101a to 101c ...
Claims (5)
複数種類のフロー識別子の値が記録されたパケットを受信する受信部と、
1種類以上の前記フロー識別子からなる第1のフロー識別条件と、前記受信したパケットのフロー識別子の値とに基づいて、該パケットの第1のフローを識別し、該第1のフローの統計情報を第1のメモリに記録する下位のデータ更新部と、
前記第1のフロー識別条件よりも多くの種類のフロー識別子を含む第2のフロー識別条件と、前記受信したパケットのフロー識別子の値とに基づいて、該パケットの第2のフローを識別し、該第2のフローの統計情報を第2のメモリに記録する上位のデータ更新部と、
予め定められた統計的な条件に基づいて、前記第1のメモリに記録された前記第1のフローの統計情報または前記第2のメモリに記録された前記第2のフローの統計情報を出力する出力部とを備え、
前記上位のデータ更新部は、前記第2のフロー識別条件に含まれるが、前記第1のフロー識別条件に含まれないフロー識別子である異種識別子の値の統計をとるための制御情報を、前記下位のデータ更新部に送信し、
前記下位のデータ更新部は、前記第1のフローの統計を前記第1のメモリに記録する際に、前記上位のデータ更新部から受信した前記制御情報に基づいて、前記異種識別子の値の統計をとり、該異種識別子の値の統計情報を前記第1のフローの統計情報に対応付けて前記第1のメモリに記録する
通信データ統計装置。 A communication data statistics device that takes statistics of communication data flowing through a network,
A receiving unit for receiving a packet in which values of a plurality of types of flow identifiers are recorded;
Based on a first flow identification condition composed of one or more types of the flow identifiers and the value of the flow identifier of the received packet, the first flow of the packet is identified, and the statistical information of the first flow A lower-order data update unit for recording the data in the first memory;
Identifying a second flow of the packet based on a second flow identification condition including more types of flow identifiers than the first flow identification condition and a value of the flow identifier of the received packet; An upper data update unit for recording the statistical information of the second flow in the second memory;
Based on a predetermined statistical condition, the statistical information of the first flow recorded in the first memory or the statistical information of the second flow recorded in the second memory is output. An output unit,
The upper data update unit includes control information for taking statistics of the value of a heterogeneous identifier that is a flow identifier that is included in the second flow identification condition but is not included in the first flow identification condition. Send it to the lower data update section,
The lower-level data update unit, when recording the statistics of the first flow in the first memory, based on the control information received from the higher-level data update unit, The communication data statistical device records the statistical information of the value of the heterogeneous identifier in the first memory in association with the statistical information of the first flow.
前記上位のデータ更新部は、前記制御情報として、前記識別された第2のフローが、新規のフローであるか否かを示すフラグ情報を前記下位のデータ更新部に送信し、
前記下位のデータ更新部は、前記上位のデータ更新部から受信したフラグ情報が、新規のフローを識別したことを示す場合に、前記異種識別子の値の数をカウントアップする
通信データ統計装置。 The communication data statistics device according to claim 1,
The upper data update unit transmits flag information indicating whether or not the identified second flow is a new flow to the lower data update unit as the control information,
The lower data updating unit counts up the number of values of the heterogeneous identifier when the flag information received from the upper data updating unit indicates that a new flow has been identified.
前記下位のデータ更新部は、前記第1のフローの統計期間を示す統計期間情報を前記上位のデータ更新部に送信し、
前記上位のデータ更新部は、前記下位のデータ更新部から受信した前記統計期間情報を、次回に送信される前記制御情報として保持し、
前記下位のデータ更新部は、前記上位のデータ更新部から受信した制御情報によって表される統計期間と、現在の統計期間とが異なる場合に、前記異種識別子の値の数をカウントアップする
通信データ統計装置。 The communication data statistics device according to claim 1,
The lower data update unit transmits statistical period information indicating a statistical period of the first flow to the upper data update unit,
The upper data update unit holds the statistical period information received from the lower data update unit as the control information transmitted next time,
The lower data update unit counts up the number of values of the different identifiers when the statistical period represented by the control information received from the upper data update unit is different from the current statistical period Statistical device.
前記下位のデータ更新部は、新規のフローを識別した場合、または、前記出力部によって前記統計情報が出力された場合に、前記統計期間を変化させる
通信データ統計装置。 The communication data statistics device according to claim 3,
The communication data statistics device, wherein the lower data update unit changes the statistical period when a new flow is identified or when the statistical information is output by the output unit.
複数種類のフロー識別子の値が記録されたパケットを受信する受信工程と、
1種類以上の前記フロー識別子からなる第1のフロー識別条件と、前記受信したパケットのフロー識別子の値とに基づいて、該パケットの第1のフローを識別し、該第1のフローの統計情報を第1のメモリに記録する第1のデータ更新工程と、
前記第1のフロー識別条件よりも多くの種類のフロー識別子を含む第2のフロー識別条件と、前記受信したパケットのフロー識別子の値とに基づいて、該パケットの第2のフローを識別し、該第2のフローの統計情報を第2のメモリに記録する第2のデータ更新工程と、
予め定められた統計的な条件に基づいて、前記第1のメモリに記録された前記第1のフローの統計情報または前記第2のメモリに記録された前記第2のフローの統計情報を出力する出力工程とを備え、
前記第2のデータ更新工程は、前記第2のフロー識別条件に含まれるが、前記第1のフロー識別条件に含まれないフロー識別子である異種識別子の値の統計をとるための制御情報を取得する工程を含み、
前記第1のデータ更新工程は、前記第1のフローの統計を前記第1のメモリに記録する際に、前記第2のデータ更新工程で取得された前記制御情報に基づいて、前記異種識別子の値の統計をとり、該異種識別子の統計を前記第1のフローの統計情報に対応付けて前記第1のメモリに記録する工程を含む
通信データ統計方法。 A communication data statistics method for taking statistics of communication data flowing through a network,
A reception step of receiving a packet in which values of a plurality of types of flow identifiers are recorded;
Based on a first flow identification condition composed of one or more types of the flow identifiers and the value of the flow identifier of the received packet, the first flow of the packet is identified, and the statistical information of the first flow A first data update step for recording the data in the first memory;
Identifying a second flow of the packet based on a second flow identification condition including more types of flow identifiers than the first flow identification condition and a value of the flow identifier of the received packet; A second data update step of recording statistical information of the second flow in a second memory;
Based on a predetermined statistical condition, the statistical information of the first flow recorded in the first memory or the statistical information of the second flow recorded in the second memory is output. An output process,
The second data update step obtains control information for taking statistics of the value of a heterogeneous identifier that is a flow identifier that is included in the second flow identification condition but is not included in the first flow identification condition. Including the steps of:
In the first data update step, when the statistics of the first flow are recorded in the first memory, based on the control information acquired in the second data update step, the heterogeneous identifier A communication data statistics method comprising: taking statistics of values, and recording the statistics of the heterogeneous identifier in association with the statistical information of the first flow in the first memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008139422A JP2009290436A (en) | 2008-05-28 | 2008-05-28 | Communication data statistic device, and communication data statistic method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008139422A JP2009290436A (en) | 2008-05-28 | 2008-05-28 | Communication data statistic device, and communication data statistic method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009290436A true JP2009290436A (en) | 2009-12-10 |
Family
ID=41459239
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008139422A Pending JP2009290436A (en) | 2008-05-28 | 2008-05-28 | Communication data statistic device, and communication data statistic method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009290436A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013046100A (en) * | 2011-08-22 | 2013-03-04 | Alaxala Networks Corp | Network device and packet processing method |
CN109711943A (en) * | 2018-12-28 | 2019-05-03 | 杭州数梦工场科技有限公司 | Order statistical method, apparatus and system |
-
2008
- 2008-05-28 JP JP2008139422A patent/JP2009290436A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013046100A (en) * | 2011-08-22 | 2013-03-04 | Alaxala Networks Corp | Network device and packet processing method |
CN109711943A (en) * | 2018-12-28 | 2019-05-03 | 杭州数梦工场科技有限公司 | Order statistical method, apparatus and system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5014282B2 (en) | Communication data statistics apparatus, communication data statistics method and program | |
CA2698255C (en) | Intelligent collection and management of flow statistics | |
JP4392294B2 (en) | Communication statistics collection device | |
JP4341413B2 (en) | PACKET TRANSFER APPARATUS HAVING STATISTICS COLLECTION APPARATUS AND STATISTICS COLLECTION METHOD | |
CN106031094B (en) | Accurate measurement of distributed counters | |
JP5111618B2 (en) | Facilitating protection against MAC table overflow attacks | |
US6801503B1 (en) | Progressive and distributed regulation of selected network traffic destined for a network node | |
US9515919B2 (en) | Method and apparatus for protection switching in packet transport system | |
US10462040B2 (en) | Non-minimum cost forwarding for packet-switched networks | |
US10735326B2 (en) | Information processing apparatus, method and non-transitory computer-readable storage medium | |
US11102273B2 (en) | Uplink performance management | |
US20120170462A1 (en) | Traffic flow control based on vlan and priority | |
JP2015535669A (en) | Monitoring encrypted sessions | |
JP5233295B2 (en) | COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND COMMUNICATION METHOD | |
JP5951888B2 (en) | COMMUNICATION DEVICE, COMMUNICATION METHOD, AND COMMUNICATION PROGRAM | |
US10389615B2 (en) | Enhanced packet flow monitoring in a network | |
JP7103883B2 (en) | Communication systems, communication control methods, and communication devices | |
WO2021098425A1 (en) | Qos policy method, device, and computing device for service configuration | |
JP2009290436A (en) | Communication data statistic device, and communication data statistic method | |
JP2009296158A (en) | Communication data statistical apparatus and communication data statistical method | |
US9094313B2 (en) | Data and media access controller (MAC) throughputs | |
JP4165828B2 (en) | Communication network, network control server, traffic control method, and program | |
CN114765585B (en) | Service quality detection method, message processing method and device | |
WO2017000097A1 (en) | Data forwarding method, device, and system | |
US20230113518A1 (en) | Distributed Network Flow Record |