JP2009290436A - Communication data statistic device, and communication data statistic method - Google Patents

Communication data statistic device, and communication data statistic method Download PDF

Info

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
Application number
JP2008139422A
Other languages
Japanese (ja)
Inventor
Yusuke Shomura
雄介 正村
Yoshinori Watanabe
義則 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2008139422A priority Critical patent/JP2009290436A/en
Publication of JP2009290436A publication Critical patent/JP2009290436A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology by which the statistics of communication data can be efficiently taken even in a high-speed communication line. <P>SOLUTION: A communication data statistic device has a subordinate data update portion recording the statistics of a first flow in a first memory, and a superior data update portion recording the statistics of a second flow in a second memory. The subordinate data update portion takes the statistics of values of different type identifiers which are flow identifiers included in a second flow identifying condition but not included in a first flow identifying condition based on control information received from the superior data update portion at the time of recording the statistics of the first flow in the first memory, and registers the statistics of the different type identifiers associated with the statistics of the first flow in the first memory. <P>COPYRIGHT: (C)2010,JPO&INPIT

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, Patent Document 1 describes a cache-type flow statistics technique. In this technique, a predetermined combination of flow identifiers (for example, a source address, a destination address, a source port number, a destination port number, etc.) is acquired from the header information of the received packet, and the value of each flow identifier in the combination By counting the number of packets that are all the same, the traffic for each flow is counted.

特開2006−5402号公報Japanese Patent Laid-Open No. 2006-5402 特開2006−352831号公報JP 2006-352831 A

このようなキャッシュ型のフロー統計技術では、パケットを受信する度に、ヘッダ情報の解析を行うため、フローの分析能力が極めて高いという特徴がある。しかし、受信したパケットのすべてについてヘッダ情報の解析を行い、さらに、その解析結果をメモリに記録する必要があるため、回線速度が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 data statistics device 104 as the first embodiment. As shown in the figure, the network configuration of this embodiment includes routers 101a to 101c that are connected to each other and relay packets, server 102a connected to router 101b, server 102b connected to router 101c, router The communication data statistics device 104 connected to the terminal 101a and the terminal devices 103a to 103c connected to the router 101a are included. The router 101a transmits a copy of the relayed packet (traffic) to the communication data statistics device 104 by using the mirroring technique or the sFlow technique defined in RFC3176.

図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 data statistics device 104 of the present embodiment. The communication data statistics device 104 is a device that takes statistics of communication data flowing through the network. As shown in the figure, the communication data statistics device 104 of the present embodiment includes a packet receiving unit 201 that receives a packet transmitted from the router 101a, a packet analysis unit 202 that analyzes a packet received by the packet receiving unit 201, A statistical processing unit 204 that performs statistical processing on the packet analyzed by the packet analysis unit 202, and a flow table (SIP-DIP-DPT table 221a, SIP-DIP table 221b, DIP table 221c, SIP) that records the result of statistical processing The memory 222a-222d which hold | maintains the table 221d), the statistical information output part 203 which outputs the result of a statistical process, and the control part 212 which controls the statistical processing part 204 and the statistical information output part 203 are provided. As the memories 222a to 222d, for example, generally distributed SDRAM or RLDRAM with reduced access latency can be used. In the present embodiment, the packet receiving unit 201 receives a packet transmitted from the router 101a, but the packet receiving unit 201 may intercept (capture) a packet flowing through the network.

パケット受信部201と、パケット解析部202と、統計処理部204と、統計情報出力部203と、制御部212とは、それぞれ、FPGA(Field Programmable Gate Array)によって構成されている。これらは、全ての機能が1つのFPGAによって構成されていてもよいし、個別のFPGAによって構成されていてもよい。また、FPGAではなく、ASIC(Application Specific Integrated Circuit)によって構成されていてもよい。   The packet receiving unit 201, the packet analyzing unit 202, the statistical processing unit 204, the statistical information output unit 203, and the control unit 212 are each configured by an FPGA (Field Programmable Gate Array). As for these, all the functions may be comprised by one FPGA, and may be comprised by separate FPGA. Further, not an FPGA but an ASIC (Application Specific Integrated Circuit) may be used.

パケット解析部202は、パケット受信部201によって受信したパケットから、フロー識別子の値や、パケットの受信時刻、バイト数、TCPのフラグ情報等を抽出し、これらの抽出された情報を統計処理部204へ送信する。フロー識別子は、パケットのヘッダに記録された情報である。フロー識別子としては、例えば、VLAN ID(VID)や、送信元MACアドレス、宛先MACアドレス、送信元IPアドレス(SIP)、宛先IPアドレス(DIP)、上位プロトコル(PRT)、送信元ポート番号(SPT)、宛先ポート番号(DPT)が挙げられる。   The packet analysis unit 202 extracts the value of the flow identifier, the packet reception time, the number of bytes, the TCP flag information, and the like from the packet received by the packet reception unit 201, and the statistical processing unit 204 extracts these extracted information. Send to. The flow identifier is information recorded in the header of the packet. Examples of the flow identifier include a VLAN ID (VID), a source MAC address, a destination MAC address, a source IP address (SIP), a destination IP address (DIP), a higher level protocol (PRT), and a source port number (SPT). ), Destination port number (DPT).

統計処理部204は、パケット解析部202から受信したフロー識別子の値等に基づいて、パケットのフローを分析し、分析されたフロー毎にパケットの集計を行う。集計の結果は、統計処理部204に接続されたメモリ222a〜222dが有するフローテーブル221a〜221dに記録する。この統計処理部204の詳細な構成については後述する。   The statistical processing unit 204 analyzes the flow of the packet based on the value of the flow identifier received from the packet analysis unit 202 and aggregates the packets for each analyzed flow. The result of the aggregation is recorded in the flow tables 221a to 221d included in the memories 222a to 222d connected to the statistical processing unit 204. The detailed configuration of the statistical processing unit 204 will be described later.

制御部212には、管理端末211が接続される。制御部212は、この管理端末211の指示に従って、統計処理部204や統計情報出力部203に対する種々の設定を行う。管理端末211と制御部212とは、ネットワークによって接続されてもよいし、RS−232CやUSB等のインタフェースによって接続されてもよい。   A management terminal 211 is connected to the control unit 212. The control unit 212 performs various settings for the statistical processing unit 204 and the statistical information output unit 203 in accordance with instructions from the management terminal 211. The management terminal 211 and the control unit 212 may be connected by a network or may be connected by an interface such as RS-232C or USB.

統計情報出力部203は、統計処理部204から受信した統計情報を外部の装置に出力する。統計情報の出力は、ネットワークインタフェースやPCIバスなど、事前に設定された任意のインタフェースを介して行う。ネットワークインタフェースによって出力する際には、制御部212を経由して管理者により設定された、宛先IPアドレス、送信元IPアドレスを用いて送信パケットを生成する。なお、統計情報出力部203は、所定のインタフェースに対して統計情報を出力する以外にも、通信データ統計装置104に接続された表示装置や印刷装置に対して、統計情報を出力することとしてもよい。   The statistical information output unit 203 outputs the statistical information received from the statistical processing unit 204 to an external device. The statistical information is output via an arbitrary interface set in advance, such as a network interface or a PCI bus. When outputting via the network interface, a transmission packet is generated using the destination IP address and the source IP address set by the administrator via the control unit 212. Note that the statistical information output unit 203 may output statistical information to a display device or printing device connected to the communication data statistical device 104 in addition to outputting statistical information to a predetermined interface. Good.

図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 control unit 212, for example. The SIP-DIP-DPT table 221a is a table in which a combination of a source IP address (SIP), a destination IP address (DIP), and a destination port number (DPT) is used as a flow identification condition. The SIP-DIP table 221b is a table that uses a combination of SIP and DIP as a flow identification condition. The DIP table 221c is a table that uses DIP as a flow identification condition. The SIP table 221d is a table that uses SIP as a flow identification condition.

各フローテーブルには、「エントリ番号」、「フロー識別条件」、「統計情報」、「世代識別子」が記録される。「エントリ番号」には、フローの種別を一意に示すユニークな番号が記録される。「フロー識別条件」には、そのフロー識別条件に含まれるフロー識別子の値が記録される。例えば、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 information output unit 203. In addition to the information shown in FIG. 3, the statistical information includes information such as the number of accumulated bytes, the flow generation start time, the last update time, and the number of packets with the SYN flag set among the TCP flags. May be. Further, as the statistical information, various statistical values such as an average value, variance, deviation value, and median value of the number of packets calculated based on the number of packets of each flow may be recorded.

統計処理部204は、フロー識別条件に含まれるフロー識別子の値が全て一致するパケットを同一のフローであると決定し、決定されたフロー毎にパケット数をカウントすることでフローの統計をとる。そして、その統計結果を、そのフロー識別条件に対応するフローテーブルに統計情報として記録する。例えば、フロー識別条件がSIPとDIPとであれば、その双方の値が一致するパケットを同一のフローとして決定し、そのフロー毎にパケットをカウントする。そして、そのフロー識別条件に対応するSIP-DIPテーブル221bに対して、カウントされたパケット数を記録する。なお、本実施例ではフローテーブルが4種類用意されている例を示したが、フローテーブルの数は、フロー識別条件の数に応じて増減する。   The statistical processing unit 204 determines that the packets whose flow identifier values included in the flow identification conditions all match are the same flow, and obtains flow statistics by counting the number of packets for each determined flow. Then, the statistical result is recorded as statistical information in the flow table corresponding to the flow identification condition. For example, if the flow identification conditions are SIP and DIP, the packets whose values match are determined as the same flow, and the packets are counted for each flow. Then, the counted number of packets is recorded in the SIP-DIP table 221b corresponding to the flow identification condition. In the present embodiment, an example is shown in which four types of flow tables are prepared, but the number of flow tables increases or decreases according to the number of flow identification conditions.

図4は、統計処理部204の詳細な構成を示す図である。統計処理部204は、複数のデータ更新部401a〜401d(以下、まとめて、「データ更新部401」とも記載する)から構成されている。データ更新部401は、それぞれ、パケット解析部202から、受信パケットのフロー識別子の値や、パケットの受信時刻、バイト数、TCPのフラグ情報等を受信し、これらの情報に基づいて、各フローテーブルの更新を行う。また、データ更新部401は、フローテーブルに記録された各フローのパケット数が、所定の閾値以上の数となった場合に、そのフローの統計情報を統計情報出力部203に送信する。   FIG. 4 is a diagram illustrating a detailed configuration of the statistical processing unit 204. The statistical processing unit 204 includes a plurality of data update units 401a to 401d (hereinafter collectively referred to as “data update unit 401”). The data update unit 401 receives the value of the flow identifier of the received packet, the reception time of the packet, the number of bytes, the TCP flag information, and the like from the packet analysis unit 202, and based on these information, each flow table Update. In addition, when the number of packets of each flow recorded in the flow table is equal to or greater than a predetermined threshold, the data update unit 401 transmits the statistical information of the flow to the statistical information output unit 203.

データ更新部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 data update unit 401 is a processing block having the same function, and is associated with each of the flow tables 221a to 221d in a one-to-one relationship. Specifically, the data update unit 401a is connected to a memory 222a that stores a SIP-DIP-DPT table 221a, and the data update unit 401b is connected to a memory 222b that stores a SIP-DIP table 221b. The data update unit 401c is connected to a memory 222c that stores the DIP table 221c, and the data update unit 401d is connected to a memory 222d that stores the SIP table 221d. Note that the number of data update units 401 increases or decreases according to the number of flow tables.

各データ更新部401は、図3に示した「異なり数」をカウントするための情報(以下、「異なり数制御情報」という)を、他のデータ更新部401に送信する機能を有している。異なり数制御情報は、本実施例では、フローの新規/既出を表すフラグ情報である。本実施例では、データ更新部401aから出力された異なり数制御情報は、データ更新部401bに送信され、データ更新部401bから出力された異なり数制御情報はデータ更新部401cとデータ更新部401dに送信される。つまり、本実施例では、フロー識別条件に含まれるフロー識別子が多いデータ更新部401(以下、「上位のデータ更新部401」という)から、それよりも1つフロー識別子が少ないフロー識別条件を有するデータ更新部401(以下、「下位のデータ更新部401」という)に対して、異なり数制御情報が送信される。   Each data updating unit 401 has a function of transmitting information for counting the “different number” shown in FIG. 3 (hereinafter referred to as “different number control information”) to the other data updating unit 401. . In the present embodiment, the different number control information is flag information indicating a new / existing flow. In this embodiment, the different number control information output from the data update unit 401a is transmitted to the data update unit 401b, and the different number control information output from the data update unit 401b is transmitted to the data update unit 401c and the data update unit 401d. Sent. In other words, in this embodiment, the data update unit 401 with a large number of flow identifiers included in the flow identification condition (hereinafter referred to as “upper data update unit 401”) has a flow identification condition with one less flow identifier. Different number control information is transmitted to the data updating unit 401 (hereinafter referred to as “lower data updating unit 401”).

図5は、データ更新部401の詳細な構成を示す図である。データ更新部401は、解析結果受信部501、組み合わせ抽出部502、エントリ決定部503、データ比較部504、統計更新部505、閾値判定部506、データ書込み部507、フローデータ出力部508から構成される。   FIG. 5 is a diagram illustrating a detailed configuration of the data update unit 401. The data update unit 401 includes an analysis result reception unit 501, a combination extraction unit 502, an entry determination unit 503, a data comparison unit 504, a statistics update unit 505, a threshold determination unit 506, a data writing unit 507, and a flow data output unit 508. The

解析結果受信部501は、パケット解析部202から、フロー識別子の値(SIP、DIP、PRT、SPT、DPT等)や、パケット受信時刻、バイト数、TCPフラグ情報等を受信する。そして、このうち、フロー識別子の値を、組み合わせ抽出部502に転送し、他の情報を統計更新部505に転送する。   The analysis result receiving unit 501 receives a flow identifier value (SIP, DIP, PRT, SPT, DPT, etc.), packet reception time, number of bytes, TCP flag information, and the like from the packet analysis unit 202. Of these, the value of the flow identifier is transferred to the combination extraction unit 502, and other information is transferred to the statistics update unit 505.

組み合わせ抽出部502は、解析結果受信部501から受信したフロー識別子の値の中から、自身のフロー識別条件に含まれるフロー識別子の組み合わせを抽出する。例えば、データ更新部401bが有する組み合わせ抽出部502であれば、フロー識別子の値の中から、SIPとDIPの組み合わせを抽出する。組み合わせ抽出部502は、フロー識別子の値を抽出すると、抽出したフロー識別子の値を、エントリ決定部503とデータ比較部504とに送信する。なお、フロー識別条件に含まれるフロー識別子の組み合わせは、データ更新部401毎に、制御部212を経由して管理者により事前に設定される。   The combination extraction unit 502 extracts a combination of flow identifiers included in its own flow identification condition from the values of the flow identifiers received from the analysis result reception unit 501. For example, in the case of the combination extraction unit 502 included in the data update unit 401b, a combination of SIP and DIP is extracted from the value of the flow identifier. When the combination extraction unit 502 extracts the value of the flow identifier, the combination extraction unit 502 transmits the extracted value of the flow identifier to the entry determination unit 503 and the data comparison unit 504. A combination of flow identifiers included in the flow identification condition is set in advance by the administrator via the control unit 212 for each data update unit 401.

エントリ決定部503は、組み合わせ抽出部502から受信したフロー識別子の値に基づいて、受信したパケットの統計情報を記録するフローテーブルのエントリ番号を決定する。具体的には、組み合わせ抽出部502から受信したフロー識別子の値のハッシュ値を、エントリ番号に対応付ける(マッピングする)ことで、エントリ番号の決定を行う。このとき、エントリ決定部503は、決定されるエントリ番号が、異なるフロー識別子の値の間で重複してしまうことを避けるため、複数(本実施例では、4つとする)のハッシュ関数を用いて複数(本実施例では、4つとする)のエントリ番号を決定する。エントリ決定部503は、複数のエントリ番号を決定すると、決定した複数のエントリ番号をデータ比較部504に送信するとともに、メモリに対して、決定した複数のエントリ番号からデータを読み込む信号を送信する。この読み込み信号によって、該当する複数のエントリのデータが、メモリ内のフローテーブルからデータ比較部504に送信される。このとき、データ比較部504に送信されるデータのことを、以下では、「フローデータ」という。このフローデータには、フロー識別子の値、統計情報、世代識別子が含まれる。   Based on the value of the flow identifier received from the combination extraction unit 502, the entry determination unit 503 determines the entry number of the flow table that records the statistical information of the received packet. Specifically, the entry number is determined by associating (mapping) the hash value of the value of the flow identifier received from the combination extraction unit 502 with the entry number. At this time, the entry determination unit 503 uses a plurality of (four in this embodiment) hash functions to avoid the determined entry numbers from being duplicated between different flow identifier values. A plurality of (four in this embodiment) entry numbers are determined. When the entry determination unit 503 determines a plurality of entry numbers, the entry determination unit 503 transmits the determined plurality of entry numbers to the data comparison unit 504 and transmits a signal for reading data from the determined plurality of entry numbers to the memory. In response to this read signal, data of a plurality of corresponding entries is transmitted from the flow table in the memory to the data comparison unit 504. At this time, the data transmitted to the data comparison unit 504 is hereinafter referred to as “flow data”. This flow data includes a flow identifier value, statistical information, and a generation identifier.

データ比較部504は、フローテーブル221から受信した4つのフローデータについて、それぞれ、そのフローデータに含まれるフロー識別子の値と、組み合わせ抽出部502から受信したフロー識別子の値とを比較する。この比較の結果、フローデータに含まれるフロー識別子の値と、組み合わせ抽出部502から受信したフロー識別子の値とがすべて一致するフローデータが存在する場合には(換言すれば、受信したパケットのフローが既出のフローである場合には)、データ比較部504は、そのフローデータを統計更新部505に送信し、更に、このフローデータが記録されていたエントリのエントリ番号をデータ書込み部507に送信する。   For each of the four flow data received from the flow table 221, the data comparison unit 504 compares the value of the flow identifier included in the flow data with the value of the flow identifier received from the combination extraction unit 502. As a result of this comparison, if there is flow data in which all the flow identifier values included in the flow data match the flow identifier values received from the combination extraction unit 502 (in other words, the flow of the received packet Data comparison unit 504 transmits the flow data to the statistics update unit 505, and further transmits the entry number of the entry in which the flow data is recorded to the data writing unit 507. To do.

フローテーブル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 data comparison unit 504 selects one entry to be overwritten from the four entries from which the flow data has been read. Selection of an entry to be overwritten is determined based on a predetermined criterion such as an entry having the smallest number of packets in the entry or an entry having the oldest last update time. When the entry to be overwritten is selected, the data comparison unit 504 substitutes new data for the flow data of the selected entry. Specifically, the value of the flow identifier received from the combination extraction unit 502 is substituted for the flow identifier, and “0” is substituted for the number of statistical information packets and the number of differences. Also, a value obtained by adding “1” to the generation identifier before overwriting (that is, the generation identifier +1 of the entry to be overwritten) is substituted for the generation identifier 341. When new flow data is created in this way, the data comparison unit 504 transmits the created flow data to the statistics update unit 505 and transmits the entry number of the entry to the data writing unit 507.

統計更新部505は、データ比較部504からフローデータを受信し、解析結果受信部501からパケット受信時刻、バイト数、TCPフラグ情報を受信する。そして、更に、上位のデータ更新部401から異なり数制御情報を受信する。統計更新部505は、これらのデータを受信すると、まず、フローデータのうち、統計情報内のパケット数を1つ、カウントアップする。   The statistics updating unit 505 receives the flow data from the data comparison unit 504 and receives the packet reception time, the number of bytes, and TCP flag information from the analysis result receiving unit 501. Further, the number control information is received from the upper data update unit 401. When receiving the data, the statistical update unit 505 first counts up the number of packets in the statistical information by one from the flow data.

更に、統計更新部505は、上位のデータ更新部401から、異なり数制御情報として新規のフローが検出された旨のフラグ(新規フラグ)を受信した場合には、統計情報内の異なり数を1つ、カウントアップする。例えば、データ更新部401bが、DPTの異なり数をカウントする場合には、SIP-DIP-DPTテーブルの更新を行うデータ更新部401aから新規フラグを受信した場合に、DPTの異なり数に「1」を加算する。   Further, when the statistical update unit 505 receives a flag (new flag) indicating that a new flow has been detected as the different number control information from the higher-level data update unit 401, the statistical update unit 505 sets the difference number in the statistical information to 1. Count up. For example, when the data updating unit 401b counts the number of different DPTs, when the new flag is received from the data updating unit 401a that updates the SIP-DIP-DPT table, the difference number of DPTs is “1”. Is added.

また、統計更新部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 statistical update unit 505 converts these values into the analysis result reception unit. Update based on the information received from 501.

統計更新部505は、このようにして更新したフローデータを閾値判定部506へ送信する。また、統計更新部505は、データ比較部504から受信したフローデータのパケット数が「0」である場合には、そのフローデータが、新規のフローデータであると判断し、新規フラグであることを示す異なり数制御情報をフローデータ出力部508へ送信する。   The statistics update unit 505 transmits the flow data updated in this way to the threshold determination unit 506. Further, when the number of packets of the flow data received from the data comparison unit 504 is “0”, the statistics update unit 505 determines that the flow data is new flow data and is a new flag. Is transmitted to the flow data output unit 508.

閾値判定部506は、統計更新部505から受信したフローデータ中のパケット数と、所定の閾値とを比較する。この比較の結果、パケット数が閾値を越えている場合には、閾値判定部506は、統計更新部505によって更新されたフローデータをフローデータ出力部508へと出力する。そして、閾値判定部506は、出力対象となったフローデータの統計情報をゼロリセットして、世代識別子を1つカウントアップする。そして、このように更新したフローデータをデータ書込み部507へ送信する。パケット数が閾値を越えていない場合には、閾値判定部506は、統計更新部505から受信したフローデータをそのままデータ書込み部507に送信する。上述した閾値は、制御部212を経由して管理者により適宜設定される。   The threshold determination unit 506 compares the number of packets in the flow data received from the statistics update unit 505 with a predetermined threshold. As a result of this comparison, when the number of packets exceeds the threshold, the threshold determination unit 506 outputs the flow data updated by the statistics update unit 505 to the flow data output unit 508. Then, the threshold determination unit 506 resets the statistical information of the flow data to be output to zero, and counts up one generation identifier. Then, the flow data updated in this way is transmitted to the data writing unit 507. When the number of packets does not exceed the threshold, the threshold determination unit 506 transmits the flow data received from the statistics update unit 505 to the data writing unit 507 as it is. The above-described threshold is appropriately set by the administrator via the control unit 212.

データ書込み部507は、閾値判定部506から受信したフローデータを、フローテーブル中の、データ比較部504から受信したエントリ番号に対応するエントリに書き込む。   The data writing unit 507 writes the flow data received from the threshold determination unit 506 to the entry corresponding to the entry number received from the data comparison unit 504 in the flow table.

フローデータ出力部508は、統計更新部505から異なり数制御情報を受信した場合に、この異なり数制御情報を下位のデータ更新部401に送信する。また、フローデータ出力部508は、閾値判定部506から受信したフローデータを統計情報出力部203に送信する。   When the flow data output unit 508 receives different number control information from the statistical update unit 505, the flow data output unit 508 transmits the different number control information to the lower data update unit 401. In addition, the flow data output unit 508 transmits the flow data received from the threshold determination unit 506 to the statistical information output unit 203.

以上、データ更新部401の詳細な構成を処理内容とともに説明した。以下、参考までに、このデータ更新部401によって実行される処理の内容をフローチャートを用いて確認的に説明する。   The detailed configuration of the data update unit 401 has been described together with the processing content. Hereinafter, for reference, the contents of the process executed by the data update unit 401 will be described in a confirming manner using a flowchart.

図6は、データ更新部401a〜401dがそれぞれ実行するフローテーブルの更新処理の流れを示すフローチャートである。図示するように、まず、各データ更新部401は、パケット解析部202から、パケットの解析結果を受信し(ステップS10a〜S10d)、その解析結果から、自身のフロー識別条件に含まれるフロー識別子の組み合わせを抽出する(ステップS12a〜S12d)。   FIG. 6 is a flowchart illustrating a flow table update process executed by the data update units 401a to 401d. As shown in the figure, first, each data updating unit 401 receives the packet analysis result from the packet analysis unit 202 (steps S10a to S10d), and from the analysis result, the flow identifier of the flow identifier included in its own flow identification condition. A combination is extracted (steps S12a to S12d).

データ更新部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 data updating units 401a to 401d search the flow table for an entry in which the corresponding flow is recorded based on the value of the flow identifier extracted in steps S12a to S12d (steps S14a to S14d), and statistical information. Is updated (steps S20a to S20d). At this time, if the value of the flow identifier extracted in step S12b is new (step S16b), the data update unit 401b sends the different number control information indicating the new flag to the data update unit that is the lower data update unit 401. It transmits to 401c and the data update part 401d. The data update unit 401c and the data update unit 401d that have received the new flag add different numbers in steps S20c and S20d. Further, if the value of the flow identifier extracted in step S12a is new (step S16a), the data update unit 401a transmits the different number control information indicating the new flag to the data update unit 401b that is the lower data update unit 401. (Step S18a). The data updating unit 401b that has received this new flag adds a different number in step S20b. Although not shown in the figure, if it is determined in step S16b or step S18b that the value of the flow identifier has already been issued, a flag indicating that the flow has already occurred (present flag) is displayed in the lower data update unit 401. Sent.

統計情報の更新を行うと、データ更新部401a〜401dは、それぞれ、更新対象のエントリのパケット数と所定の閾値とを比較する(ステップS22a〜S22d)。この比較の結果、パケット数が閾値以上であれば、データ更新部401a〜401dは、統計情報を出力するとともに(ステップS24a〜S24d)、出力後の統計情報をリセットする(ステップS26a〜S26d)。更に、データ更新部401a〜401dは、それぞれ、更新対象のエントリの世代識別子を1つカウントアップする(ステップS30,S32)。   When the statistical information is updated, the data update units 401a to 401d respectively compare the number of packets of the update target entry with a predetermined threshold (steps S22a to S22d). If the number of packets is equal to or greater than the threshold value as a result of the comparison, the data updating units 401a to 401d output statistical information (steps S24a to S24d) and reset the statistical information after output (steps S26a to S26d). Furthermore, each of the data update units 401a to 401d increments the generation identifier of the entry to be updated by one (steps S30 and S32).

以上で説明した第1実施例の通信データ統計装置104によれば、フロー識別条件毎に用意されたフローテーブルがそれぞれ異なるメモリに記憶されており、更に、フローテーブルを更新するデータ更新部401が、各メモリ毎に接続されている。そのため、4つのフローテーブルの更新を同時に行うことができる。この結果、ネットワークの回線速度が高速な場合であっても、メモリへのアクセス速度がボトルネックとなって、統計処理のスピードが低下してしまうことを抑制することができる。   According to the communication data statistical apparatus 104 of the first embodiment described above, the flow tables prepared for each flow identification condition are stored in different memories, and the data update unit 401 that updates the flow table further includes , Each memory is connected. Therefore, the four flow tables can be updated simultaneously. As a result, even when the line speed of the network is high, it is possible to prevent the access speed to the memory from becoming a bottleneck and reducing the statistical processing speed.

また、本実施例では、フローテーブルの更新時に新規のフローが検出されれば、下位のデータ更新部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 data update unit 401. The data updating unit 401 that has received the transmission of the different number control information can update the different number in its own flow table with reference to the different number control information. Therefore, the data updating unit 401 can update different numbers at the same time as updating the number of packets, so it is not necessary to update only the different numbers independently. As a result, the number of memory updates does not increase, and as a result, it is possible to update statistical information including different numbers at high speed.

また、本実施例の通信データ統計装置104によれば、受信したパケットのフロー毎に、パケットの数や、異なり数、世代識別子が集計される。そして、集計されたパケットの数が所定の閾値以上になれば、これらの情報が、統計情報として外部の機器に出力される。キャリアやISPは、こうして出力されたフロー毎の統計情報を用いることにより、サービス提供時のデータの伝送品質の状況を確認することが可能となる。また、このような情報を用いることで、ネットワーク資源を有効に活用するためのトラフィック・エンジニアリングが可能になる。さらに、顧客の需要を予測してネットワーク資源を計画的に準備しておき、ユーザの要求(帯域、サービス)に対して迅速にネットワーク資源を提供するプロビジョニングや、アタックの検出・分析、課金などを行うことが可能となる。また、本実施例では、異なり数の集計結果も出力されるため、フロー識別条件によって集約されたフローについて、それらのフローが他のフロー識別子についてどの程度拡散されて送信されているかを把握することができる。そのため、ポートスキャンを伴うネットワークワームの増殖活動等を監視することが可能になる。更に、本実施例では、各エントリについて世代識別子がカウントされるので、世代識別子の値が局所的に大きいエントリが生じた場合に、メモリへのアクセスに異常が生じていると判断することが可能になる。   Also, according to the communication data statistics device 104 of the present embodiment, the number of packets, the number of different packets, and the generation identifier are aggregated for each received packet flow. If the total number of packets reaches a predetermined threshold or more, these pieces of information are output as statistical information to an external device. By using the statistical information for each flow output in this way, the carrier or ISP can check the status of the transmission quality of the data at the time of providing the service. In addition, by using such information, traffic engineering for effectively utilizing network resources becomes possible. In addition, network resources can be prepared systematically by predicting customer demand, and provisioning to quickly provide network resources in response to user requests (bandwidth, service), attack detection / analysis, billing, etc. Can be done. Also, in this embodiment, since a different number of aggregation results are also output, for the flows aggregated according to the flow identification conditions, it is grasped how diffused and transmitted those flows are with respect to other flow identifiers. Can do. Therefore, it becomes possible to monitor the proliferation activity of the network worm accompanied by the port scan. Furthermore, in this embodiment, since the generation identifier is counted for each entry, it is possible to determine that there is an abnormality in access to the memory when an entry having a locally large generation identifier value occurs. become.

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 data statistics device 104 according to the present embodiment is different from the communication data statistics device 104 according to the first embodiment in the configuration of the flow table 221, the connection state between the data update units 401, the content of the number control information, and the statistics update The operation of the unit 505 differs from the information output by the flow data output unit 508. Hereinafter, these differences will be described.

図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 statistical processing unit 204 in the second embodiment. In this embodiment, each data update unit 401 transmits and receives different generation information and generation identifier values to each other. Therefore, in the statistical processing section of the first embodiment shown in FIG. 4 and the statistical processing section of the second embodiment shown in FIG. 8, the signal line connecting each data updating section 401 is one in the first embodiment. In contrast to the direction, the second embodiment is different in that it is bidirectional. In this embodiment, different generation information is transmitted and received as different number control information between the data update units 401. In the present embodiment, the generation identifier value counted by the lower data update unit 401 is transmitted from the lower data update unit 401 to the higher data update unit 401. The generation identifier value of the lower data update unit 401 transmitted in this way is recorded as several generation information different from the upper data update unit 401.

続いて、第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 statistics update unit 505 in the second embodiment will be described based on a flowchart.
FIG. 9 is a flowchart showing the operation of the statistical update unit 505 in the second embodiment. The statistical update unit 505 of the present embodiment receives different generation information from the upper data update unit 401, and further receives a generation identifier value from the lower data update unit 401 (step S100). Upon receiving these pieces of information, the statistical updating unit 505 receives the value of the received different generation information and the value of its own generation identifier in the flow data received from the data comparison unit 504 (the value of the generation identifier received in step S100). Is not matched (step S110). If the value of the received different generation information does not match the value of its own generation identifier (step S110: No), it is determined that the flow is a new flow (step S120), and the different number is counted up by one. (Step S130). On the other hand, if the value of the received different generation information matches the value of its own generation identifier (step S110: Yes), it can be determined that the flow has already been issued (step S140). Do not count up different numbers.

世代識別子の値は、第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 data update unit 401 compares the value of the different generation information received from the upper data update unit 401 (= the value of the latest generation identifier of itself) with the value of the current generation identifier of itself. Thus, it can be accurately determined whether the flow of the received packet has already appeared or is new. As a result, the data update unit 401 can accurately add different numbers.

例えば、SIPテーブル221dを管理するデータ更新部401dは、SIP-DIPテーブル221bを管理するデータ更新部401bから受信した異なり数世代情報の値と、自身の世代識別子の値と比較する。値が不一致の場合は、新規のフローであると判断し、DIPの異なり数を1つカウントアップする。これに対して、値が一致する場合は、既出のフローと判断し、異なり数はカウントアップしない。同様に、SIP-DIPテーブル221bを管理するデータ更新部401bでは、SIP-DIP-DPTテーブル221aを管理するデータ更新部401aから受信した異なり数世代情報の値と、自身の世代識別子の値とを比較し、不一致の場合には、DPTの異なり数を1つカウントアップする。これに対して、値が一致する場合は、既出のフローと判断し、異なり数はカウントアップしない。   For example, the data update unit 401d that manages the SIP table 221d compares the value of the different generation information received from the data update unit 401b that manages the SIP-DIP table 221b with the value of its own generation identifier. If the values do not match, it is determined that the flow is a new flow, and the number of different DIPs is incremented by one. On the other hand, if the values match, it is determined that the flow has already been issued, and the number is not counted up. Similarly, in the data update unit 401b that manages the SIP-DIP table 221b, the value of the different generation information received from the data update unit 401a that manages the SIP-DIP-DPT table 221a and the value of its own generation identifier are obtained. If they do not match, the number of different DPTs is incremented by one. On the other hand, if the values match, it is determined that the flow has already been issued, and the number is not counted up.

統計更新部505は、上記ステップS120において、新規のフローであると判断し、ステップS130において異なり数のカウントアップを行った後に、データ比較部504から受信したフローデータ中の異なり数世代情報と、現在の世代識別子の値とをフローデータ出力部508に送信する(ステップS150)。つまり、第1実施例では、新規フラグであることを示す異なり数制御情報をフローデータ出力部508に送信していたが、第2実施例では、異なり数世代情報と世代識別子とをフローデータ出力部508に送信するのである。フローデータ出力部508は、統計更新部505から異なり数世代情報と世代識別子とを受信すると、異なり数世代情報を下位のデータ更新部401に送信し、世代識別子を上位のデータ更新部401に送信する。   The statistical update unit 505 determines that the flow is a new flow in step S120, counts up a different number in step S130, and then performs different generation information in the flow data received from the data comparison unit 504. The current generation identifier value is transmitted to the flow data output unit 508 (step S150). That is, in the first embodiment, different number control information indicating a new flag is transmitted to the flow data output unit 508, but in the second embodiment, different generation information and a generation identifier are output as flow data. The data is transmitted to the unit 508. When the flow data output unit 508 receives the different generation information and the generation identifier from the statistical update unit 505, the flow data output unit 508 transmits the different generation information to the lower data update unit 401 and transmits the generation identifier to the upper data update unit 401. To do.

最後に、統計更新部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 statistical update unit 505 holds the value of the current generation identifier of the lower data update unit 401 in the different generation information in its own flow table. The value of the generation identifier received from 401 is stored in the different generation information of itself, and the flow data is transmitted to the threshold determination unit 506 (step S160). For example, the data update unit 401a that manages the SIP-DIP-DPT table 221a stores the generation identifier value received from the data update unit 401b that manages the SIP-DIP table 221b as different generation information. Similarly, the data update unit 401b that manages the SIP-DIP table 221b stores the value of the generation identifier received from the data update unit 401c that manages the DIP table 221c as different generation information of the DIP, and manages the SIP table 221d. The value of the generation identifier received from the data update unit 401d to be stored is stored as several generation information different from the SIP.

以上で説明した第2実施例の通信データ統計装置104によれば、各データ更新部401は、世代識別子と異なり数世代情報とを送受信することで、異なり数を正確にカウントすることが可能になる。また、本実施例では、データ更新部401は、パケット数の更新と共に、異なり数や異なり数世代情報の更新も一度に行うことができるので、異なり数や異なり数世代情報を、パケット数と別々に更新する必要がない。そのため、メモリの更新回数が増加することがなく、この結果、高速に、異なり数を含めた統計情報を更新することが可能になる。   According to the communication data statistics device 104 of the second embodiment described above, each data updating unit 401 can accurately count the number of different data by transmitting and receiving several generations of information unlike the generation identifier. Become. In the present embodiment, the data updating unit 401 can update different numbers and different generation information at the same time as updating the number of packets, so that the different numbers and different generation information can be separated from the number of packets. There is no need to update. As a result, the number of memory updates does not increase, and as a result, it is possible to update statistical information including different numbers at high speed.

なお、本実施例のデータ更新部401は、上述のように、下位のデータ更新部401に対して異なり数世代情報を送信している。このとき、上位のデータ更新部401は、受信側(下位のデータ更新部401)が必要とする異なり数世代情報を選択して送信してもよい。例えば、SIP-DIPテーブル221bを管理するデータ更新部401bは、DIPテーブル302を管理するデータ更新部401cに対しては、DIPについての異なり数世代情報を選択して送信し、SIPテーブル302を管理するデータ更新部401dに対しては、SIPについての異なり数世代情報を選択して送信するといった制御である。   Note that the data update unit 401 of this embodiment transmits different generation information to the lower data update unit 401 as described above. At this time, the upper data updating unit 401 may select and transmit different generation information required by the receiving side (lower data updating unit 401). For example, the data update unit 401 b that manages the SIP-DIP table 221 b selects and transmits different generation information about DIP to the data update unit 401 c that manages the DIP table 302, and manages the SIP table 302. For the data updating unit 401d to be selected, different generation information about SIP is selected and transmitted.

また、本実施例では、フローデータ出力部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 data output unit 508 transmits the generation identifier to the upper data update unit 401 based on the connection shown in FIG. That is, the data update unit 401d and the data update unit 401c transmit a generation identifier to the data update unit 401b, and the data update unit 401b transmits a generation identifier to the data update unit 401a. That is, in this embodiment, the generation identifier is transmitted only to the data update unit 401 related to the different number count. On the other hand, the data update unit 401d is in the data update units 401a to 401c, the data update unit 401c is in the data update units 401a and 401b, the data update unit 401b is in the data update unit 401a, and all the upper data update units. A generation identifier may be transmitted to 401. This is because even in such a case, the upper data update unit 401 counts the number of differences using a generation identifier that is related to the counting of the number of differences.

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 data statistics device 104 takes the form of an independent device. On the other hand, in the third embodiment, the function of the communication data statistics device 104 (hereinafter referred to as “communication data statistics function”) is implemented in the router 101 shown in FIG.

図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 router 101 incorporating the communication data statistical function. The router 101 includes a reception packet processing unit 701 connected to the input line, a transmission packet processing unit 702 connected to the output line, a search processing unit 703 connected to the reception packet processing unit 701, and a traffic statistics acquisition unit 705. A routing table 704 associated with the search processing unit 703, and a router control unit 711. The router control unit 711 is connected to the management terminal 712, and performs various settings for the reception packet processing unit 701, the transmission packet processing unit 702, and the search processing unit 703 in accordance with instructions from the management terminal 712. The management terminal 211 and the router control unit 711 may be connected by a network or may be connected by an interface such as RS-232C or USB.

受信パケット処理部701は、入力回線から受信したパケットを一旦バッファに蓄積し、蓄積したパケットのヘッダ情報を、検索処理部703とトラフィック統計取得部705とに送信する。   The received packet processing unit 701 temporarily accumulates packets received from the input line in a buffer, and transmits the header information of the accumulated packets to the search processing unit 703 and the traffic statistics acquisition unit 705.

検索処理部703は、受信パケット処理部701からヘッダ情報を受信すると、ルーティングテーブル704を参照して、そのパケットの出力先となる出力回線を検索し、その検索結果を、受信パケット処理部701に通知する。   When the search processing unit 703 receives the header information from the received packet processing unit 701, the search processing unit 703 refers to the routing table 704 to search for an output line as an output destination of the packet, and the search result is sent to the received packet processing unit 701. Notice.

受信パケット処理部701は、検索処理部703から検索結果を受信すると、検索結果に含まれる出力回線が含まれる送信パケット処理部702に、バッファに蓄積されたパケットと検索結果とを転送する。   When receiving the search result from the search processing unit 703, the reception packet processing unit 701 transfers the packet stored in the buffer and the search result to the transmission packet processing unit 702 including the output line included in the search result.

送信パケット処理部は、受信パケット処理部から、パケット情報と検索処理部703による検索結果を受信し、この検索結果に含まれる出力回線にパケットを出力する。   The transmission packet processing unit receives the packet information and the search result by the search processing unit 703 from the reception packet processing unit, and outputs the packet to the output line included in the search result.

トラフィック統計取得部705は、図2に示した通信データ統計装置104が有する機能ブロックをすべて有する。ただし、第1実施例では、図2のパケット受信部は、ルータ101aからパケットを受信しているのに対して、本実施例では、図10に示した受信パケット処理部701からパケットのヘッダ情報を受信する。また、第1実施例では、統計情報出力部203は、所定のインタフェースに対して統計情報を出力するのに対して、本実施例では、図10に示した受信パケット処理部701に統計情報が出力される。統計情報を取得した受信パケット処理部701は、所定のネットワーク機器(例えば、端末103a〜103c)に、統計情報を転送する。また、トラフィック統計取得部705内の制御部212は、ルータ制御部711と接続しており、ルータ制御部711経由でトラフィック統計取得部705を制御することができる。   The traffic statistics acquisition unit 705 has all the functional blocks of the communication data statistics device 104 shown in FIG. However, in the first embodiment, the packet receiving unit in FIG. 2 receives a packet from the router 101a, whereas in this embodiment, the packet header information from the received packet processing unit 701 shown in FIG. Receive. In the first embodiment, the statistical information output unit 203 outputs statistical information to a predetermined interface, whereas in this embodiment, the statistical information is stored in the received packet processing unit 701 shown in FIG. Is output. The received packet processing unit 701 that acquired the statistical information transfers the statistical information to a predetermined network device (for example, the terminals 103a to 103c). Further, the control unit 212 in the traffic statistics acquisition unit 705 is connected to the router control unit 711, and can control the traffic statistics acquisition unit 705 via the router control unit 711.

以上で説明した第3実施例によれば、ルータ101が、異なり数を含めた通信データの統計をとることが可能になる。   According to the third embodiment described above, it becomes possible for the router 101 to take statistics of communication data including different numbers.

以上、本発明の種々の実施例について説明したが、本発明はこれら実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、ハードウェアによって実現した機能は、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 statistical processing unit 204 includes four data update units. However, the number is not limited to the number as long as two or more data update units are included.

通信データ統計装置104を含むネットワーク構成の一例を示す図である。2 is a diagram illustrating an example of a network configuration including a communication data statistics device 104. FIG. 通信データ統計装置104の概略構成を示すブロック図である。2 is a block diagram showing a schematic configuration of a communication data statistics device 104. FIG. 各フローテーブルの構成を示す図である。It is a figure which shows the structure of each flow table. 統計処理部204の詳細な構成を示す図である。3 is a diagram illustrating a detailed configuration of a statistical processing unit 204. FIG. データ更新部401の詳細な構成を示す図である。3 is a diagram illustrating a detailed configuration of a data update unit 401. FIG. データ更新部401a〜401dがそれぞれ実行するフローテーブルの更新処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the update process of the flow table which each data update part 401a-401d performs. 第2実施例における各フローテーブルの構成を示す図である。It is a figure which shows the structure of each flow table in 2nd Example. 第2実施例における統計処理部204の詳細な構成を示す図である。It is a figure which shows the detailed structure of the statistics process part 204 in 2nd Example. 第2実施例における統計更新部505の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the statistics update part 505 in 2nd Example. 通信データ統計機能を内蔵したルータ101の機能ブロック図である。It is a functional block diagram of the router 101 incorporating the communication data statistical function.

符号の説明Explanation of symbols

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 ... routers 102a and 102b ... servers 103a to 103c ... terminal devices 104 ... communication data statistics device 201 ... packet reception unit 202 ... packet analysis unit 203 ... statistical information output unit 204 ... statistical processing unit 211 ... management terminal 212 ... control Unit 221a to 221d ... flow table 222a to 222d ... memory 401a to 401d ... data update unit 501 ... analysis result reception unit 502 ... combination extraction unit 503 ... entry determination unit 504 ... data comparison unit 505 ... statistic update unit 506 ... threshold determination unit 507 ... Data writing unit 508 ... Flow data output unit 701 ... Reception packet processing unit 702 ... Transmission packet processing unit 703 ... Search processing unit 704 ... Routing table 705 ... Traffic statistics acquisition unit 711 ... Router control unit 712 ... Management terminal

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.
請求項1に記載の通信データ統計装置であって、
前記上位のデータ更新部は、前記制御情報として、前記識別された第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に記載の通信データ統計装置であって、
前記下位のデータ更新部は、前記第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.
請求項3に記載の通信データ統計装置であって、
前記下位のデータ更新部は、新規のフローを識別した場合、または、前記出力部によって前記統計情報が出力された場合に、前記統計期間を変化させる
通信データ統計装置。
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.
JP2008139422A 2008-05-28 2008-05-28 Communication data statistic device, and communication data statistic method Pending JP2009290436A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (2)

* Cited by examiner, † Cited by third party
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