JP4717106B2 - Flow information processing apparatus and network system - Google Patents

Flow information processing apparatus and network system Download PDF

Info

Publication number
JP4717106B2
JP4717106B2 JP2008233067A JP2008233067A JP4717106B2 JP 4717106 B2 JP4717106 B2 JP 4717106B2 JP 2008233067 A JP2008233067 A JP 2008233067A JP 2008233067 A JP2008233067 A JP 2008233067A JP 4717106 B2 JP4717106 B2 JP 4717106B2
Authority
JP
Japan
Prior art keywords
flow information
search
information
unit
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008233067A
Other languages
Japanese (ja)
Other versions
JP2010068279A (en
Inventor
拓郎 森
一磨 湯本
美智子 田中
靖 春日井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2008233067A priority Critical patent/JP4717106B2/en
Publication of JP2010068279A publication Critical patent/JP2010068279A/en
Application granted granted Critical
Publication of JP4717106B2 publication Critical patent/JP4717106B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、ルータ装置が行った処理内容のログであるフロー情報の処理に係わり、特に、フロー情報を収集するフロー情報処理装置及びフロー情報処理装置を備えたネットワークシステムに関するものである。   The present invention relates to processing of flow information which is a log of processing contents performed by a router device, and particularly relates to a flow information processing device for collecting flow information and a network system including the flow information processing device.

ネットワークシステムを構成するルータ装置では、ルータ装置が処理した内容をフロー情報として外部の装置へ通知しており、フロー情報を通知するプロトコルとしてNetFlowが知られている(例えば、非特許文献1)。ルータ装置にはフロー情報の通知内容や通知対象、送信周期が予め設定され、設定された内容に従ってフロー情報としてのNetFlowパケットを作成し、外部の装置へ送信する。なお、フロー情報は、パケットの転送内容を通知する情報であり、例えば、IPv4の場合では、送信元IPアドレス、送信先IPアドレス、送信元ポート番号、送信先ポート番号及びプロトコルが含まれる。   In a router apparatus constituting a network system, the contents processed by the router apparatus are notified to an external apparatus as flow information, and NetFlow is known as a protocol for notifying flow information (for example, Non-Patent Document 1). In the router device, the notification content, notification target, and transmission cycle of the flow information are set in advance, and a NetFlow packet as flow information is created according to the set content and transmitted to an external device. The flow information is information for notifying the packet transfer content. For example, in the case of IPv4, the source IP address, destination IP address, source port number, destination port number, and protocol are included.

また上記NetFlowの後継技術としてIPFIX(IP Flow Information eXport)の標準化がIETF(Internet Engineering Task Force)で進められている(例えば、非特許文献2)。IPFIXはNetFlow技術を受けて策定されたため、NetFlowの技術をIPFIXにも適用することができる。   As a successor to NetFlow, standardization of IPFIX (IP Flow Information eXport) is being promoted by IETF (Internet Engineering Task Force) (for example, Non-Patent Document 2). Since IPFIX was formulated in response to NetFlow technology, NetFlow technology can also be applied to IPFIX.

上述のフロー情報を収集し、ネットワークシステムを監視するサーバからの検索要求に応じてフロー情報を提供する装置としてフロー情報処理装置が知られている(例えば、特許文献1)。
特開2007−228513号公報 RFC 3954 Cisco Systems NetFlow Services Export Version 9. B. Claise、October 2004、[online]、平成20年6月10日検索、 インターネット<URL<http://www.faqs.org/rfcs/rfc3954.html> RFC 5101 Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of IP Traffic Flow Information、[online]、平成20年6月10日検索、 インターネット<http://tools.ietf.org/html/rfc5101> 特開平8−191955号
A flow information processing apparatus is known as an apparatus that collects the above flow information and provides flow information in response to a search request from a server that monitors a network system (for example, Patent Document 1).
JP 2007-228513 A RFC 3954 Cisco Systems NetFlow Services Export Version 9. B. Claise, October 2004, [online], searched June 10, 2008, Internet <URL <http://www.faqs.org/rfcs/rfc3954.html> RFC 5101 Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of IP Traffic Flow Information, [online], searched on June 10, 2008, Internet <http://tools.ietf.org/html/rfc5101 > JP-A-8-191955

上記従来のフロー情報処理装置は、受信したフロー情報をデータベースなどに蓄え、サーバからのクエリに対して統計処理などを行っていた。フロー情報処理装置を多数のルータ装置を備えた大規模ネットワークで運用する場合では、大量のフロー情報を受信してデータベースへ蓄積することになる。そして、ネットワークシステムを監視するサーバからフロー情報の提供を要求されたときには、フロー情報処理装置は大量のフロー情報の中から従来のデータベース処理によって、要求されたフロー情報を検索し、サーバへ応答する。ネットワークシステムの規模が拡大するにつれて、データベースに格納するフロー情報の量も増大するため、サーバからの検索要求を受け付けてから応答するまでの時間が増大する、という問題があった。特に、フロー情報をハードディスク装置等の記憶装置にデータベースとして格納する場合では、大量のフロー情報から検索条件を満たすフロー情報を抽出する際に時間を要し、ハードディスク装置のアクセス時間がフロー情報の増大に伴って遅延し、さらに、フロー情報処理装置の処理負荷も増大する。   The conventional flow information processing apparatus stores received flow information in a database or the like, and performs statistical processing or the like on a query from a server. When the flow information processing apparatus is operated in a large-scale network having a large number of router apparatuses, a large amount of flow information is received and stored in a database. When a flow monitoring apparatus requests flow information from a server that monitors the network system, the flow information processing apparatus retrieves the requested flow information from a large amount of flow information by conventional database processing, and responds to the server. . As the scale of the network system increases, the amount of flow information stored in the database also increases, and there is a problem that the time from receiving a search request from the server to responding increases. In particular, when flow information is stored as a database in a storage device such as a hard disk device, it takes time to extract flow information that satisfies the search conditions from a large amount of flow information, and the access time of the hard disk device increases flow information. Accompanying this, the processing load of the flow information processing apparatus also increases.

そこで本発明は、上記問題点に鑑みてなされたものであって、フロー情報処理装置を大規模ネットワークに適用して大量のフロー情報を蓄積する場合であっても検索処理を迅速に行うことを目的とする。   Therefore, the present invention has been made in view of the above problems, and is capable of quickly performing a search process even when a large amount of flow information is accumulated by applying a flow information processing apparatus to a large-scale network. Objective.

本発明は、フロー情報または検索要求を受信する受信部と、前記受信したフロー情報を格納する記憶装置と、前記受信した検索要求に基づいて前記記憶装置に格納されたフロー情報を検索する検索部と、前記検索部が検索した結果を送信する送信部と、を備えたフロー情報処理装置において、前記受信部が受信した前記フロー情報を一時的に格納するフロー情報記憶部と、所定の条件が成立したときに、前記フロー情報記憶部に格納されたフロー情報から検索用情報を生成する検索用情報生成部と、を備え、前記検索部は、前記検索要求を受け付けると当該検索要求に含まれる検索条件で前記検索用情報を検索し、前記検索条件に合致する検索用情報から前記フロー情報を取得し、前記検索用情報生成部は、前記所定の条件が成立する度に、前記フロー情報に含まれる項目毎に前記検索用情報を生成する。 The present invention relates to a receiving unit that receives flow information or a search request, a storage device that stores the received flow information, and a search unit that searches for flow information stored in the storage device based on the received search request. And a transmission unit that transmits the search result of the search unit, a flow information storage unit that temporarily stores the flow information received by the reception unit, and a predetermined condition: A search information generation unit that generates search information from the flow information stored in the flow information storage unit when the search request is established, and the search unit is included in the search request when the search request is received searches the search information in the search condition, and acquires the flow information from the search for information that matches the search criteria, the search information generating unit, every time the predetermined condition is satisfied, Serial generates the search information for each item included in the flow information.

また、前記検索用情報生成部は、前記フロー情報記憶部に格納されたフロー情報に含まれる項目の内容を抽出し、前記抽出した内容の出現頻度を演算し、前記フロー情報にインデックスを付与し、前記演算した出現頻度の順に前記項目の内容を設定し、前記インデックスが指し示すフロー情報の関係からビット情報を前記検索用情報として生成する。   The search information generation unit extracts the contents of items included in the flow information stored in the flow information storage unit, calculates the appearance frequency of the extracted contents, and assigns an index to the flow information. The contents of the items are set in the order of the calculated appearance frequencies, and bit information is generated as the search information from the relationship of the flow information indicated by the index.

したがって、本発明は、大量のフロー情報を蓄積した場合であっても記憶装置へのアクセスを削減することが可能となって、検索処理の速度を向上させることができる。また、記憶装置からフロー情報を取得する処理時間は従来例のように全てのフロー情報を検索する必要がないので、極めて短時間で処理を行うことができ、高速な検索が可能となる。   Therefore, according to the present invention, even when a large amount of flow information is accumulated, access to the storage device can be reduced, and the speed of search processing can be improved. Further, the processing time for acquiring flow information from the storage device does not need to search all the flow information as in the conventional example, so that processing can be performed in a very short time, and high-speed search is possible.

以下、本発明の一実施形態を添付図面に基づいて説明する。   Hereinafter, an embodiment of the present invention will be described with reference to the accompanying drawings.

図1は、本発明の実施の形態を示し、フロー情報処理装置101を備えたネットワークシステムのブロック図である。   FIG. 1 is a block diagram of a network system including a flow information processing apparatus 101 according to an embodiment of the present invention.

フロー情報処理装置101は、CPU(プロセッサ)2、メモリ3、記憶装置(ストレージ装置)4、インタフェース5及び通信インターフェース104を備えた計算機を主体として構成される。   The flow information processing apparatus 101 is mainly configured by a computer including a CPU (processor) 2, a memory 3, a storage device (storage device) 4, an interface 5, and a communication interface 104.

CPU2は、メモリ3に格納されたプログラム(フロー処理部106)を実行することによって、後述するようにフロー情報200の格納と検索用情報の生成と格納及び検索処理を行う。CPU2は、メモリ3にロードされたフロー処理部106を実行し、受信したフロー情報200を一旦メモリ3に設定したキャッシュ領域30に格納し、所定の条件が成立したときに検索用情報であるランク付きビットマップインデックス700を作成し、このランク付きビットマップインデックス700とフロー情報200を後述するようにファイルにまとめたフロー情報200Aを記憶装置109に格納する。なお、フロー処理部106は、ランク付きビットマップインデックス700を生成する際に、メモリ3上に設定された設定テーブル31に格納された生成条件を参照する。   The CPU 2 executes the program (flow processing unit 106) stored in the memory 3 to perform storage of the flow information 200, generation of search information, storage, and search processing as will be described later. The CPU 2 executes the flow processing unit 106 loaded in the memory 3, stores the received flow information 200 in the cache area 30 once set in the memory 3, and rank as search information when a predetermined condition is satisfied. The attached bitmap index 700 is created, and the flow-added information 200A in which the ranked bitmap index 700 and the flow information 200 are collected in a file as will be described later is stored in the storage device 109. The flow processing unit 106 refers to the generation condition stored in the setting table 31 set on the memory 3 when generating the ranked bitmap index 700.

記憶装置109は、ディスク装置等を含んで構成され、メモリ3のキャッシュ領域30から転送されたファイル形式のフロー情報200Aと、フロー処理部106が生成したランク付きビットマップインデックス700及びフロー処理部106等のプログラムを格納する。なお、フロー処理部106等のプログラムを格納する記憶媒体としてはHDD等で構成された記憶装置109に限定されるものではなく、光学ディスクや不揮発性半導体メモリ等に格納することができる。   The storage device 109 includes a disk device and the like. The file format flow information 200A transferred from the cache area 30 of the memory 3, the ranked bitmap index 700 generated by the flow processing unit 106, and the flow processing unit 106. Etc. are stored. Note that the storage medium for storing the program such as the flow processing unit 106 is not limited to the storage device 109 configured by an HDD or the like, and can be stored in an optical disk, a nonvolatile semiconductor memory, or the like.

インタフェース5は、記憶装置109、入力装置6、ディスプレイ7及通信インターフェース104などに接続される。入力装置15は、担当者によって入力された情報を、インタフェース5を介してCPU2に送信する。ディスプレイ7は、CPU2によって指示された情報を表示する。通信インターフェース104は、LANなどのネットワーク8に接続されて信号(パケット)の送受信を行う。   The interface 5 is connected to the storage device 109, the input device 6, the display 7, the communication interface 104, and the like. The input device 15 transmits information input by the person in charge to the CPU 2 via the interface 5. The display 7 displays information instructed by the CPU 2. The communication interface 104 is connected to a network 8 such as a LAN and transmits and receives signals (packets).

ネットワーク8には、複数のルータ装置102と、複数のサーバ装置103が接続される。ルータ装置102は、サーバ装置103と外部のネットワークの通信を行い、ルータ装置102が処理した内容をフロー情報200としてフロー情報処理装置101に送信する。また、複数のサーバ装置103のうちの何れかがネットワークシステムの監視を行い、フロー情報処理装置101に対してフロー情報200を要求するクエリを発行する。   A plurality of router devices 102 and a plurality of server devices 103 are connected to the network 8. The router apparatus 102 communicates with the server apparatus 103 and an external network, and transmits the contents processed by the router apparatus 102 to the flow information processing apparatus 101 as flow information 200. Also, any of the plurality of server apparatuses 103 monitors the network system and issues a query requesting the flow information 200 to the flow information processing apparatus 101.

図2は、本発明に係わるネットワークシステムの機能ブロック図である。   FIG. 2 is a functional block diagram of the network system according to the present invention.

フロー情報処理装置101は1台以上のルータ装置102と接続される。ルータ装置102は、パケットの転送を行うとフロー情報200をフロー情報処理装置101に送信する。フロー情報処理装置101では、ルータ装置102からのフロー情報200を通信インターフェース104で受信し、プロトコル処理部105によってプロトコルごとの前処理を行い、フロー処理部106にてフロー情報200の蓄積とランク付きビットマップインデックス700の生成と検索処理を実行する。プロトコル処理部105は、フロー情報処理装置101のCPU2で実行されるOSに含まれ、例えば、トランスポート層の処理を行う。プロトコル処理部105は、通信インターフェース104が受信した情報(パケット)のプロトコルから、受信した情報がフロー情報200、クエリ及びその他の情報のいずれであるかを判定し、フロー情報200であれば受信した情報に予め設定した処理を施してからフロー処理部106のフロー情報受信部107に転送し、クエリであれば受信したクエリに予め設定した処理を施してからフロー処理部106のクエリ受信部111に送信する。   The flow information processing apparatus 101 is connected to one or more router apparatuses 102. When the router apparatus 102 transfers the packet, it transmits the flow information 200 to the flow information processing apparatus 101. In the flow information processing apparatus 101, the flow information 200 from the router apparatus 102 is received by the communication interface 104, the protocol processing unit 105 performs preprocessing for each protocol, and the flow processing unit 106 accumulates and ranks the flow information 200. A bitmap index 700 is generated and searched. The protocol processing unit 105 is included in the OS executed by the CPU 2 of the flow information processing apparatus 101, and performs, for example, transport layer processing. The protocol processing unit 105 determines whether the received information is flow information 200, a query, or other information from the protocol of the information (packet) received by the communication interface 104. The information is subjected to a preset process and then transferred to the flow information receiving unit 107 of the flow processing unit 106. If it is a query, the received query is subjected to a preset process and then sent to the query receiving unit 111 of the flow processing unit 106. Send.

ルータ装置102が発行したフロー情報200はまずフロー情報受信部107に送られる。受信したフロー情報200はフロー情報記憶部108を通じて記憶装置109にて記憶する。   The flow information 200 issued by the router apparatus 102 is first sent to the flow information receiving unit 107. The received flow information 200 is stored in the storage device 109 through the flow information storage unit 108.

フロー情報記憶部108は、図1に示したメモリ3のキャッシュ領域30に設定され、受信したフロー情報200を一時的に格納する。検索用情報生成部110は、所定の条件が成立する度に、キャッシュ領域30のフロー情報記憶部108に格納されたフロー情報200からランク付きビットマップインデックス700を生成し、フロー情報記憶部108のフロー情報200をファイル形式にしたフロー情報200Aと、ランク付きビットマップインデックス700を記憶装置109に格納する。なお、フロー情報記憶部108は、キャッシュ領域30のフロー情報200が記憶装置109に書き込まれると、キャッシュ領域30のフロー情報200をクリアする。   The flow information storage unit 108 is set in the cache area 30 of the memory 3 illustrated in FIG. 1 and temporarily stores the received flow information 200. The search information generation unit 110 generates a ranked bitmap index 700 from the flow information 200 stored in the flow information storage unit 108 of the cache area 30 every time a predetermined condition is satisfied, and the flow information storage unit 108 The flow information 200A in which the flow information 200 is in a file format and the ranked bitmap index 700 are stored in the storage device 109. The flow information storage unit 108 clears the flow information 200 in the cache area 30 when the flow information 200 in the cache area 30 is written in the storage device 109.

検索用情報生成部110は、検索用情報の生成を開始する所定の条件として、例えば、予め設定した周期となったとき、またはキャッシュ領域30がフロー情報200で満たされて空き容量がなくなったとき(キャッシュ領域30の空き容量が所定値=0%)等を所定の条件の成立とすることができる。   As a predetermined condition for starting the generation of search information, the search information generation unit 110, for example, when a preset period is reached, or when the cache area 30 is filled with the flow information 200 and there is no more free space (The free capacity of the cache area 30 is a predetermined value = 0%) or the like can be satisfied.

所定の条件を予め設定した周期とした場合、検索用情報生成部110は、図示しないタイマなどで時間を監視し、所定の周期になるとキャッシュ領域30のフロー情報記憶部108の全てのフロー情報200を取得する。そして、検索用情報生成部110は、フロー情報200から後述するようにランク付きビットマップインデックス700を生成して記憶装置109に格納し、さらに取得したフロー情報200をひとつのファイルにまとめてフロー情報200Aとして記憶装置109に格納する。すなわち、所定の周期毎に、ランク付きビットマップインデックス700とフロー情報200を含むファイルとしてのフロー情報200Aが記憶装置109に書き込まれていく。   When the predetermined condition is set to a preset cycle, the search information generation unit 110 monitors the time with a timer or the like (not shown), and when the predetermined cycle is reached, all the flow information 200 in the flow information storage unit 108 in the cache area 30. To get. Then, the search information generation unit 110 generates a ranked bitmap index 700 from the flow information 200 as described later, stores it in the storage device 109, and further collects the acquired flow information 200 into one file as flow information. 200A is stored in the storage device 109. That is, the flow information 200A as a file including the ranked bitmap index 700 and the flow information 200 is written in the storage device 109 at every predetermined period.

フロー情報処理装置101は上述のように一台以上のサーバ装置103と接続されており、サーバ装置103は、フロー情報処理装置101が記憶するフロー情報200を参照する際に、検索条件を記した要求(以下クエリ)をフロー情報処理装置101に対して送信する。   The flow information processing apparatus 101 is connected to one or more server apparatuses 103 as described above, and the server apparatus 103 describes a search condition when referring to the flow information 200 stored in the flow information processing apparatus 101. A request (hereinafter referred to as a query) is transmitted to the flow information processing apparatus 101.

フロー情報処理装置101は、サーバ装置103からのクエリを通信インターフェース104で受信し、プロトコル処理部105によってプロトコルごとの前処理を行ってから、クエリ受信部111に送信する。   The flow information processing apparatus 101 receives a query from the server apparatus 103 by the communication interface 104, performs preprocessing for each protocol by the protocol processing unit 105, and transmits the query to the query reception unit 111.

クエリ処理部112は、受信したクエリから検索条件を抽出して検索部113に転送する。検索部113は、検索条件に応じて記憶装置109から検索用情報を取り出し、検索処理を行う。   The query processing unit 112 extracts search conditions from the received query and transfers them to the search unit 113. The search unit 113 retrieves the search information from the storage device 109 according to the search condition and performs a search process.

検索部113は、検索用情報であるランク付きビットマップインデックス700を用いてクエリで要求されたフロー情報200の検索を行って、検索処理の結果に応じたフロー情報を記憶装置109から取り出す。この際、ランク付きビットマップインデックス700で検索した結果に加えて、フロー情報200が検索要求に合致しているかどうかを記憶装置109のフロー情報200で検索処理を行ってもよい。   The search unit 113 searches the flow information 200 requested by the query using the ranked bitmap index 700 which is search information, and extracts the flow information corresponding to the search processing result from the storage device 109. At this time, in addition to the result of searching with the ranked bitmap index 700, whether or not the flow information 200 matches the search request may be searched with the flow information 200 of the storage device 109.

検索部113で記憶装置109から取り出したフロー情報200はクエリ処理部112を介して送信部114へ送られる。   The flow information 200 extracted from the storage device 109 by the search unit 113 is sent to the transmission unit 114 via the query processing unit 112.

検索結果であるフロー情報200は送信部114からプロトコル処理部105を介して所定のプロトコルに整形された後、通信インターフェース104からネットワーク8を介してサーバ装置103へ送信される。   Flow information 200 as a search result is shaped into a predetermined protocol from the transmission unit 114 via the protocol processing unit 105, and then transmitted from the communication interface 104 to the server device 103 via the network 8.

この送信処理は、検索結果が生成される度に実行しても良いし、一定期間または一定量の検索結果を蓄積してからサーバ装置103へ送信してもよい。   This transmission process may be executed each time a search result is generated, or may be transmitted to the server apparatus 103 after storing the search result for a certain period or a certain amount.

これら一連の処理における設定値(例えば、検索用情報の作成開始を判定する所定の条件や、ランク付きビットマップインデックス700を作成するためのパラメータ等)は、管理者またはユーザが、後述するようなユーザインターフェース115を通じて入力装置6等から設定する。   Setting values in these series of processes (for example, predetermined conditions for determining the start of creation of search information, parameters for creating the ranked bitmap index 700, etc.) are set by the administrator or user as described later. Setting is made from the input device 6 through the user interface 115.

図3は、フロー情報200の一例を示す説明図である。   FIG. 3 is an explanatory diagram illustrating an example of the flow information 200.

ルータ装置102から受信したフロー情報200は上記従来例で述べたようにNetFlowやIPFIXによって定められた形式に則り、ルータ装置102が処理したパケットの情報が含まれる。フロー情報200の一例としては、IPパケットにおける送信元のIPアドレス201や送信先のIPアドレス202、プロトコル番号203に加え、IPアドレス間で送受信されたパケットの個数204や合計のバイト数(205)等のフィールドを各エントリに備えた例を示す。   The flow information 200 received from the router apparatus 102 includes information on packets processed by the router apparatus 102 in accordance with a format determined by NetFlow or IPFIX as described in the conventional example. As an example of the flow information 200, in addition to the source IP address 201, the destination IP address 202, and the protocol number 203 in the IP packet, the number 204 of packets transmitted and received between IP addresses and the total number of bytes (205) An example in which fields such as are provided for each entry is shown.

図4はサーバ装置103からフロー情報処理装置101に対して送信されるクエリに含まれる検索条件の一例である。   FIG. 4 is an example of search conditions included in a query transmitted from the server apparatus 103 to the flow information processing apparatus 101.

検索条件には、図2に存在したプロトコル番号301や、IPアドレスにプレフィックス指定を加えたもの302の他に、フロー情報処理装置101がルータ装置102からフロー情報200を受信した時刻の最小値303や時刻の最大値304を指定することもできる。この検索条件を受け付けた検索部113は、指定された時刻範囲(時刻最小値303や時刻最大値304の間)で、指定されたIPアドレス+プレフィックス302で、指定されたプロトコル番号301を含むフロー情報200をランク付きビットマップインデックス700から検索することになる。   The search condition includes the protocol number 301 existing in FIG. 2 and the IP address 302 with the prefix specified, and the minimum value 303 of the time when the flow information processing apparatus 101 receives the flow information 200 from the router apparatus 102. It is also possible to specify the maximum time 304. The search unit 113 that has received this search condition includes a flow including the specified protocol number 301 with the specified IP address + prefix 302 within the specified time range (between the minimum time value 303 and the maximum time value 304). The information 200 is searched from the ranked bitmap index 700.

図5は、従来例による検索処理の一例を示すフローチャートである。   FIG. 5 is a flowchart showing an example of a search process according to a conventional example.

処理対象となるフロー情報200は、フロー情報処理装置101が受信した全てのフロー情報200である。この際、例として、フロー情報200が記憶装置109を構成するハードディスク装置上に記録されており、記録を行った時間がファイル名に記されているために予め絞り込みが行える場合は、対象とするファイルの絞り込みを行ってもよい。   The flow information 200 to be processed is all the flow information 200 received by the flow information processing apparatus 101. At this time, as an example, if the flow information 200 is recorded on the hard disk device constituting the storage device 109 and the recording time is written in the file name, it can be narrowed down in advance. You may narrow down the files.

検索を行う際には、記憶装置109が記録している全フロー情報200に対して(401)一件ずつ取り出し(402)、抽出したフロー情報200が図3に示すような条件(クエリに含まれる検索条件)を満たしているか検査する(403)。検索条件を満たすフロー情報200であると判定した場合は、当該フロー情報200をサーバ装置103に送信する処理(404)を行い、検索条件が満たされない場合は次のフロー情報200に移る。   When performing a search, all the flow information 200 recorded in the storage device 109 is (401) retrieved one by one (402), and the extracted flow information 200 is included in the conditions (query included in FIG. 3). The search condition is satisfied (403). If it is determined that the flow information 200 satisfies the search condition, a process (404) of transmitting the flow information 200 to the server apparatus 103 is performed. If the search condition is not satisfied, the flow information 200 is moved to the next flow information 200.

このような従来例による検索手法においてフロー情報200が、ハードディスク装置のような入出力によるオーバヘッドが大きいメディアに記録されている場合は、検索開始から検索結果の出力までの待ち時間が増大し、クエリの結果を返信するまでの時間が増大するだけでなく、フロー情報処理装置101全体の性能も低下する。   When the flow information 200 is recorded on a medium having a large input / output overhead such as a hard disk device in such a conventional search method, the waiting time from the start of the search to the output of the search result increases. Not only increases the time until the result is returned, but also reduces the overall performance of the flow information processing apparatus 101.

このような総当り的な検索方法に対する解決方法として、検索用情報を用いる方式がある。本発明では検索用情報として、ビットマップインデックスを用いる。   As a solution to such a brute force search method, there is a method using search information. In the present invention, a bitmap index is used as search information.

図6はビットマップインデックスの一例を示す説明図である。このビットマップインデックス501、502は、検索用情報生成部110がランク付きビットマップインデックス700を生成する過程で作成するものである。   FIG. 6 is an explanatory diagram showing an example of a bitmap index. The bitmap indexes 501 and 502 are created when the search information generating unit 110 generates the ranked bitmap index 700.

検索用情報生成部110は、所定の周期になると、図3に示したキャッシュ領域30のフロー情報記憶部108に格納された複数のフロー情報200から、図6に示すようにひとつのファイルで構成されるフロー情報200Aを生成する。   The search information generation unit 110 is configured by a single file as shown in FIG. 6 from a plurality of flow information 200 stored in the flow information storage unit 108 of the cache area 30 shown in FIG. 3 at a predetermined cycle. Generated flow information 200A is generated.

検索用情報生成部110は、フロー情報200を特定するインデックスを行211を付加し、フロー情報200のフィールドの項目名(要素)格納した列210と、各フロー情報200の内容を格納する列212を含むファイルを生成する。例えば、図6の要素Aは、図3に示したプロトコル番号に割り当て、各フロー情報200に含まれるプロトコル番号を行方向に「4」、「17」、「6」と順次格納する。同様に、要素Bには図3に示した送信元IPアドレス201を割り当てて、行方向に各フロー情報200の内容を格納し、要素Cには図3に示した送信先IPアドレス202を割り当てて、行方向に各フロー情報200の内容を格納してフロー情報200Aを生成する。   The search information generation unit 110 adds a row 211 to the index for identifying the flow information 200, stores a column 210 storing the item name (element) of the field of the flow information 200, and a column 212 storing the contents of each flow information 200. Generate a file containing For example, the element A in FIG. 6 is assigned to the protocol number shown in FIG. 3, and the protocol number included in each flow information 200 is sequentially stored as “4”, “17”, “6” in the row direction. Similarly, the source IP address 201 shown in FIG. 3 is assigned to element B, the contents of each flow information 200 are stored in the row direction, and the destination IP address 202 shown in FIG. 3 is assigned to element C. Thus, the flow information 200A is generated by storing the contents of each flow information 200 in the row direction.

検索用情報生成部110は、フロー情報200Aのファイル名にフロー情報200を受信した時刻を含める。この時刻は、例えば、フロー情報200の受信時刻は、キャッシュ領域30のフロー情報記憶部108に格納された複数のフロー情報200のうち、最新の時刻と最も古い時刻を対にしたものを用いることができる。   The search information generation unit 110 includes the time when the flow information 200 is received in the file name of the flow information 200A. As this time, for example, the reception time of the flow information 200 is a pair of the latest time and the oldest time among the plurality of flow information 200 stored in the flow information storage unit 108 of the cache area 30. Can do.

フロー情報200Aは、このように、フロー情報200を識別するインデックスを行211を行方向に設定し、フロー情報200の要素(IPアドレスやプロトコル番号、バイト数あるいはパケット数)を列210方向に設定し、インデックス行211に対応するフロー情報200の要素の値を列212に格納する。   In this way, the flow information 200A sets the index for identifying the flow information 200 in the row 211 in the row direction, and sets the elements (IP address, protocol number, number of bytes or number of packets) of the flow information 200 in the column 210 direction. Then, the element value of the flow information 200 corresponding to the index row 211 is stored in the column 212.

次に、検索用情報生成部110はフロー情報200の要素(項目名)毎に、ビットマップインデックス501、502をそれぞれ生成する。ビットマップインデックス501は、フロー情報200Aの要素Aに関するビットマップインデックスであり、検索用情報生成部110は列510にフロー情報200Aの要素Aが取り得る値を設定し、行511にフロー情報200Aの行211に設定したインデックスを識別子として格納する。なお、インデックスとして行211に付与する識別子はユニークなシリアル値などを用いることができる。検索用情報生成部110は、行511の識別子毎に列512を設定して該当する要素Aの値の行に「1」(ビット情報をオン)を設定する。例えば、フロー情報200Aのインデックス=0のフロー情報は、要素Aの値が「4」であるので、ビットマップインデックス501の識別子=0の列512で要素Aの値が「4」となる行に「1」を設定し、他の行に「0」(ビット情報をオフ)をセットする。検索用情報生成部110は、フロー情報200Aの各インデックスについて要素Aの値に対応するビットマップインデックス501を作成する。   Next, the search information generation unit 110 generates bitmap indexes 501 and 502 for each element (item name) of the flow information 200, respectively. The bitmap index 501 is a bitmap index related to the element A of the flow information 200A, and the search information generation unit 110 sets a value that the element A of the flow information 200A can take in the column 510, and the flow information 200A in the row 511. The index set in the row 211 is stored as an identifier. A unique serial value or the like can be used as an identifier assigned to the row 211 as an index. The search information generation unit 110 sets the column 512 for each identifier of the row 511 and sets “1” (bit information is on) to the row of the value of the corresponding element A. For example, since the value of the element A is “4” in the flow information with the index = 0 in the flow information 200A, the column A in the column 512 with the identifier = 0 of the bitmap index 501 has a value of “4” in the element A. “1” is set, and “0” (bit information is off) is set in the other rows. The search information generation unit 110 creates a bitmap index 501 corresponding to the value of the element A for each index of the flow information 200A.

同様に、検索用情報生成部110は、列520にフロー情報200Aの要素Bが取り得る値を設定し、行521にフロー情報200Aの行211に設定したインデックスを識別子として格納する。検索用情報生成部110は、行521の識別子毎に列522を設定して該当する要素Aの値の行に「1」を設定する。   Similarly, the search information generation unit 110 sets values that can be taken by the element B of the flow information 200A in the column 520, and stores the index set in the row 211 of the flow information 200A as an identifier in the row 521. The search information generation unit 110 sets the column 522 for each identifier of the row 521 and sets “1” to the row of the value of the corresponding element A.

以上の処理により検索用情報生成部110はフロー情報200の要素毎にビットマップインデックス501、502を設定する。なお、上記ではフロー情報200Aの要素A、Bのビットマップインデックスを作成する例を示したが、ビットマップインデックスを作成する要素は予め設定された要素についてのみ作成するようにしてもよい。また、この時点ではビットマップインデックス501、502はメモリ3上に保持される。   Through the above processing, the search information generation unit 110 sets the bitmap indexes 501 and 502 for each element of the flow information 200. In the above example, the bitmap index of the elements A and B of the flow information 200A is created. However, the bitmap index may be created only for preset elements. At this time, the bitmap indexes 501 and 502 are held on the memory 3.

図10のビットマップインデックス501Aでは、フロー情報200Aの要素の値Aについて、要素の識別子が0から99まで存在し、各要素が0から4の値を取る場合は、5×100の二値のテーブルを作成する。これがビットマップインデックスである。このビットマップインデックスに対して、行511の識別子1の値が1であるならば、値が1、識別子が1の行の値を1とし、識別子1におけるそれ以外の値は0とする。これを全要素に対して行う。   In the bitmap index 501A of FIG. 10, when the element identifiers 0 to 99 exist for the element value A of the flow information 200A, and each element takes a value from 0 to 4, a binary of 5 × 100 Create a table. This is a bitmap index. For this bitmap index, if the value of identifier 1 in row 511 is 1, the value in the row with value 1 and identifier 1 is 1, and the other values in identifier 1 are 0. This is done for all elements.

これらの要素について、値AがXである要素を検索したい場合は、ビットマップインデックスにおける列510の値がXの行を調べ、値が1であるものが該当するものとなる。   When it is desired to search for an element whose value A is X among these elements, the row whose column 510 value is X in the bitmap index is examined, and the element whose value is 1 is applicable.

図6のビットマップインデックス501,502を利用する際には、検索部113が図7、図8に示すように、検索条件が複数のビットマップインデックス501、502を利用する場合は、検索部113が検索条件に応じて演算用テーブル503、504をメモリ3上に作成することができる。例として、フロー情報200Aの各要素の持つ値Aと値Bに対してビットマップインデックス501、502が作成されている場合に、値Aが1もしくは値Bが2の要素の識別子を検索したい場合は、ビットマップインデックス501、502における値Aの列1と値Bの列2の値をOR演算し、結果が1である識別子の情報を取り出せばよい。これを図7に示すように、演算用テーブル503としてメモリ3上に保持する。   When the bitmap indexes 501 and 502 in FIG. 6 are used, as shown in FIGS. 7 and 8, when the search unit 113 uses a plurality of bitmap indexes 501 and 502 as shown in FIGS. The calculation tables 503 and 504 can be created on the memory 3 according to the search conditions. For example, when bitmap indexes 501 and 502 are created for the values A and B of each element of the flow information 200A, it is desired to search for an identifier of an element whose value A is 1 or value B is 2. Is obtained by performing an OR operation on the values of the column 1 of the value A and the column 2 of the value B in the bitmap indexes 501 and 502 and extracting the information of the identifier whose result is 1. This is held on the memory 3 as a calculation table 503 as shown in FIG.

同様に、値Aが1かつ値Bが2の要素の識別子を検索したい場合は、ビットマップインデックス501、502における値Aの列1と値Bの列2の値をAND演算し、結果が1である識別子の情報を取り出せばよい。この演算結果を図8で示すように、演算用テーブル504としてメモリ3上に保持する。   Similarly, when it is desired to search for an identifier of an element whose value A is 1 and value B is 2, an AND operation is performed on the values of column 1 of value A and column 2 of value B in bitmap indexes 501 and 502, and the result is 1 What is necessary is just to take out the information of the identifier which is. The calculation result is held on the memory 3 as a calculation table 504 as shown in FIG.

そして、検索部113は、複数の検索条件について図7または図8の演算用テーブル503、504を用いてビットマップの検索を実行することができる。   Then, the search unit 113 can execute a bitmap search using the calculation tables 503 and 504 in FIG. 7 or FIG. 8 for a plurality of search conditions.

図9は、本発明のランク付きビットマップインデックスと比較するため、ビットマップインデックス501,502を用いた検索の一例を示すフローチャートである。このフローチャートは、フロー処理部106の検索部113で実行することができる。   FIG. 9 is a flowchart showing an example of a search using the bitmap indexes 501 and 502 for comparison with the ranked bitmap index of the present invention. This flowchart can be executed by the search unit 113 of the flow processing unit 106.

検索部113は、クエリ処理部112から受信した検索条件を取得する(601)。そして、検索用情報生成部110は、検索条件に含まれる期間(時刻範囲)から記憶装置109に格納されたビットマップインデックス501、502をメモリ3上に読み込んで。ビットマップインデックス501、502上で検索条件を満たす要素の値とビット(行)を検索する。検索部113は、ビットマップインデックス501、502で検索条件を満たす行があれば、当該行の値が1となっている識別子をフロー情報200Aのインデックスとして取得する(602)。このビットマップインデックス501の検索の際に、検索部113は上記図7、図8で示したような演算用テーブル503,504を作成し、これらのテーブルで検索を行っても良い。   The search unit 113 acquires the search condition received from the query processing unit 112 (601). Then, the search information generation unit 110 reads the bitmap indexes 501 and 502 stored in the storage device 109 from the period (time range) included in the search condition into the memory 3. The values and bits (rows) of elements satisfying the search conditions are searched on the bitmap indexes 501 and 502. If there is a row satisfying the search condition in the bitmap indexes 501 and 502, the search unit 113 acquires an identifier whose value is 1 as the index of the flow information 200A (602). When searching the bitmap index 501, the search unit 113 may create the calculation tables 503 and 504 as shown in FIGS. 7 and 8 and perform a search using these tables.

次に、検索部113は、上記検索条件に含まれる期間に該当するフロー情報200Aを記憶装置109から取得し、上記インデックスに該当する列212からフロー情報200を取得する(604、605)。そして、取得したフロー情報200をクエリ処理部112及び送信部114を介してサーバ装置103に応答する(605)。なお、上記ステップ603〜605の処理は、上記ステップ602で取得した識別子の数だけ繰り返す。   Next, the search unit 113 acquires the flow information 200A corresponding to the period included in the search condition from the storage device 109, and acquires the flow information 200 from the column 212 corresponding to the index (604, 605). Then, the acquired flow information 200 is returned to the server apparatus 103 via the query processing unit 112 and the transmission unit 114 (605). Note that the processing in steps 603 to 605 is repeated for the number of identifiers acquired in step 602.

この図9に示したビットマップインデックスを利用する処理と、上記図5に示した検索用情報を利用しない従来例の処理との違いは、検索用情報であるビットマップインデックス501,502を用いて予め検索条件に合致するフロー情報200Aを算出し(601)、該当するフロー情報200Aのみを取り出す(602)点である。これによりフロー情報200Aの全体を記憶装置109から読み込む回数が大幅に削減され、クエリの応答時間の短縮およびフロー情報処理装置101の高速化が期待できる。   The difference between the processing using the bitmap index shown in FIG. 9 and the conventional processing not using the search information shown in FIG. 5 is that the bitmap indexes 501 and 502 which are search information are used. The flow information 200A that matches the search condition is calculated in advance (601), and only the corresponding flow information 200A is extracted (602). As a result, the number of times the entire flow information 200A is read from the storage device 109 can be greatly reduced, and a reduction in query response time and an increase in the speed of the flow information processing device 101 can be expected.

このビットマップインデックス501、502の長所は、演算用テーブル503,504を生成することで、複数のビットマップインデックス間でANDやORといった演算の容易性と高速性である。短所は、新たなデータ挿入の煩雑性と、検索用データの大型化である。   The advantages of the bitmap indexes 501 and 502 are the ease and speed of operations such as AND and OR between a plurality of bitmap indexes by generating the calculation tables 503 and 504. Disadvantages are the complexity of new data insertion and the increased size of the search data.

ただし、ビットマップインデックスに新たにデータを挿入する場合、新たに挿入したデータよりも後方のデータを1ビットずつシフトさせなければならない。また、検索用情報のサイズは要素一つにつき「要素が取る値の範囲×フロー情報数」となり、全要素に対してビットマップインデックスを適用した場合は、受信したフロー情報200と同等の容量が検索用情報に必要となる。   However, when new data is inserted into the bitmap index, the data behind the newly inserted data must be shifted bit by bit. The size of the search information is “value range taken by the element × number of flow information” for each element, and when the bitmap index is applied to all elements, the capacity equivalent to the received flow information 200 is obtained. Necessary for search information.

本発明では、ビットマップインデックスの長所を生かし、短所を低減させたものとして「ランク付きビットマップインデックス」を提案する。   In the present invention, a “ranked bitmap index” is proposed by taking advantage of the bitmap index and reducing the disadvantages.

図10に、値の取る範囲が0から255、フロー数が0から99のランク付きビットマップインデックス700の例を示す。図6に示したビットマップインデックス501,502では、フロー情報200Aの要素が取る値とビットマップインデックスの行が一対一で対応していたのに対し、図10に示すランク付きビットマップインデックス700では、新たに「その他」行(703)を追加し、出現頻度が低い(出現頻度が所定値未満)の要素をひとつの行にまとめることで、インデックスのデータ量を大幅に削減し、検索部113による検索を高速に行うようにしたものである。   FIG. 10 shows an example of a ranked bitmap index 700 in which the range of values is 0 to 255 and the number of flows is 0 to 99. In the bitmap indexes 501 and 502 shown in FIG. 6, the values taken by the elements of the flow information 200 </ b> A correspond to the bitmap index rows on a one-to-one basis, whereas in the ranked bitmap index 700 shown in FIG. 10. The “other” line (703) is newly added, and elements having low appearance frequency (appearance frequency is less than a predetermined value) are combined into one line, thereby greatly reducing the data amount of the index and the search unit 113. Is a fast search.

検索用情報生成部110は、上記図6に示したと同様のビットマップインデックス501Aを作成した後、フロー情報200Aの統計や設定値から「ランク数」と「ランキング」を算出する。そして、「ランキング」の上位「ランク数」までをランク付きビットマップインデックス700に格納し、残りを「その他」列に格納する。   After creating the same bitmap index 501A as shown in FIG. 6 above, the search information generation unit 110 calculates “rank number” and “ranking” from the statistics and set values of the flow information 200A. Then, the upper rank “rank number” of “ranking” is stored in the ranked bitmap index 700, and the rest is stored in the “other” column.

図10のビットマップインデックス501Aは、100(0〜99)のフロー情報200が要素の値を100(0〜99)ある場合を示す。ビットマップインデックス501Aは、100個の要素の値を格納する列512と、フロー情報200Aのインデックスを識別子と格納する行511を備え、識別子に対応する列512に上記図6と同様に、フロー情報200Aの要素の値が該当する行に「1」を設定する。   The bitmap index 501A in FIG. 10 indicates a case where the flow information 200 of 100 (0 to 99) has an element value of 100 (0 to 99). The bitmap index 501A includes a column 512 for storing the values of 100 elements and a row 511 for storing the index of the flow information 200A as an identifier, and the column 512 corresponding to the identifier has the flow information similar to FIG. “1” is set in the row corresponding to the value of the 200A element.

次に、検索用情報生成部110は、列510の要素の値について「1」が設定されている数が大きい順に行方向でソートする。そして、検索用情報生成部110は、予め設定されたランク数Rまでの順位となる行を、ランク付きビットマップインデックス700に加える。つまり、要素の値の出現頻度の高い順にランク数Rまでを、ビットマップインデックスとして利用する。   Next, the search information generation unit 110 sorts the element values in the column 510 in the row direction in descending order of the number in which “1” is set. Then, the search information generating unit 110 adds the rows having ranks up to a preset rank number R to the ranked bitmap index 700. That is, the rank number R is used as the bitmap index in descending order of the appearance frequency of the element values.

次に、ランク数Rから最下位の行までのビットを、ひとつの行にまとめ、この行をランク付きビットマップインデックス700のその他703として加える。これにより、ランク付きビットマップインデックス700のデータ量は(ランク数R+1)×フロー情報200の数となり、この例では「1」を設定するビットの領域を5×100のビットで表現することができる。これに対してビットマップインデックス501Aでは、「1」を設定するビットの領域は、要素の値の数×フロー情報200の数となり、この例では、100×100のビット数が必要となる。   Next, the bits from the rank number R to the lowest row are combined into one row, and this row is added as the other 703 of the ranked bitmap index 700. Thereby, the data amount of the ranked bitmap index 700 becomes (the number of ranks R + 1) × the number of flow information 200. In this example, the bit area where “1” is set can be expressed by 5 × 100 bits. . On the other hand, in the bitmap index 501A, the bit area for which “1” is set is the number of element values × the number of flow information 200. In this example, the number of bits of 100 × 100 is required.

このように、ランク付きビットマップインデックス700では、ビットマップインデックス501Aに比して大幅にデータ量を削減でき、さらに、検索対象となる要素の値を格納する行は、ランク数Rとなって検索処理を大幅に高速化することができる。   As described above, in the ranked bitmap index 700, the amount of data can be significantly reduced compared to the bitmap index 501A, and the row storing the element values to be searched becomes the rank number R. Processing can be greatly speeded up.

ここで、フロー情報200の要素となる、プロトコル番号やポート番号やIPアドレスなどは、要素の値が取り得る範囲は0h〜FFh、あるいは0h〜FFFFh等の広い範囲となる。そして、フロー情報200の要素の値は、均等に出現することはほとんどなく、例えば、ネットワーク8内で出現するプロトコル番号は、常用されるプロトコルと、極めて希なプロトコルが存在する。さらに、フロー情報200をサーバ装置103から検索する場合は、ネットワーク8やルータ装置102に障害などが発生した場合であるので、リトライなどによって特定のプロトコルの出現頻度が高くなる傾向がある。   Here, the protocol number, the port number, the IP address, and the like, which are elements of the flow information 200, can have a wide range of element values such as 0h to FFh or 0h to FFFFh. The element values of the flow information 200 rarely appear evenly. For example, the protocol numbers that appear in the network 8 include commonly used protocols and extremely rare protocols. Furthermore, when the flow information 200 is searched from the server device 103, a failure or the like occurs in the network 8 or the router device 102, and therefore, the frequency of appearance of a specific protocol tends to increase due to retry or the like.

そこで、出現頻度の高い要素の値についてはビットマップインデックス501Aとして使用し、出現頻度の低い要素の値についてはその他703としてランク付きビットマップインデックス700を生成する。   Therefore, the ranked bitmap index 700 is generated as the bitmap index 501A for the value of the element having a high appearance frequency and as the other 703 for the value of the element having a low appearance frequency.

サーバ装置103からのクエリを検索部113が実行し、検索条件がその他703に該当する場合(要素の値の出現頻度が低い)は、上記図5に示したように、記憶装置109のフロー情報200Aから検索するため、検索処理に要する時間は従来例と変わらない。しかし、サーバ装置103からのクエリを検索部113が実行し、検索条件がランク数Rの順位の要素の値と一致すれば、ランク付きビットマップインデックス700からフロー情報200Aのインデックスを取得できるので、このインデックスで目的のフロー情報200Aを記憶装置109から取得することで、前記従来例に比して極めて高速にアクセスすることが可能となる。   When the search unit 113 executes a query from the server device 103 and the search condition corresponds to other 703 (the frequency of appearance of element values is low), as shown in FIG. Since the search is performed from 200A, the time required for the search process is the same as the conventional example. However, if the search unit 113 executes a query from the server device 103 and the search condition matches the value of the rank rank element, the index of the flow information 200A can be acquired from the ranked bitmap index 700. By obtaining the target flow information 200A from the storage device 109 using this index, it becomes possible to access the information at an extremely high speed as compared with the conventional example.

そして、上述したように、フロー情報200Aの要素Aの値は、一般的に均一ではなく偏りを持つものであるから、検索条件がその他703となることは頻繁に発生せず、ほとんどの検索条件がランク数Rの範囲で一致するので、検索処理を極めて高速に行うことができるのである。   As described above, since the value of the element A of the flow information 200A is generally not uniform and has a bias, the search condition does not frequently become other 703, and most of the search conditions In the range of the number of ranks R, the search process can be performed very quickly.

さらに、ビットマップインデックス501Aは、フロー情報200Aの要素毎に生成する必要があるため、要素の値の数が大きく、フロー情報200が大量にある場合では、ひとつのフロー情報200Aに対するビットマップインデックス501Aの数が増大してデータ量が大きくなるため、検索部113が記憶装置109からビットマップインデックス501Aを読み込む際の時間も増大してしまう。   Furthermore, since it is necessary to generate the bitmap index 501A for each element of the flow information 200A, when the number of element values is large and there is a large amount of the flow information 200, the bitmap index 501A for one flow information 200A. Therefore, the time required for the search unit 113 to read the bitmap index 501A from the storage device 109 also increases.

これに対して、要素の値の数を制限したランク付きビットマップインデックス700では、要素の値の数が大きく、フロー情報200が大量にある場合でも、行の数は所定のランク数R+1を維持できるので、データ量が過大になるのを防いで、検索部113が記憶装置109からランク付きビットマップインデックス700を読み込む際の時間が増大するのを防止して、検索処理の高速化に寄与することができるのである。   On the other hand, in the ranked bitmap index 700 in which the number of element values is limited, even when the number of element values is large and the flow information 200 is large, the number of rows maintains a predetermined rank number R + 1. Therefore, it is possible to prevent the amount of data from becoming excessive, prevent the search unit 113 from reading the ranked bitmap index 700 from the storage device 109, and contribute to speeding up the search process. It can be done.

図11は、図2に示したユーザインターフェース115の一例を示し、ランク付きビットマップインデックス700を生成する条件を設定するユーザインターフェースで、ディスプレイ7に表示される画面イメージである。   FIG. 11 shows an example of the user interface 115 shown in FIG. 2, and is a screen image displayed on the display 7 by a user interface for setting conditions for generating the ranked bitmap index 700.

ユーザインターフェース115で、フロー情報200に含まれる要素のうちランク付きビットマップインデックス700を生成する要素(図中蓄積項目)1400を決定するビットマップインデックス作成1401と、要素の出現頻度の順位または比率での何れかを指定するランク設定1402とを含む。   In the user interface 115, among the elements included in the flow information 200, the bitmap index creation 1401 for determining the element (accumulated item in the figure) 1400 for generating the ranked bitmap index 700, and the rank or ratio of the appearance frequency of the elements And rank setting 1402 for designating any one of the above.

図示の例では、フロー情報200の要素の内、送信元IPアドレス、送信先IPアドレス、プロトコル番号及び送信先ポート番号の要素についてビットマップインデックス作成1401が丸印に設定されて、ビットマップインデックスの生成を選択している。そして、信元IPアドレス、送信先IPアドレスについてはランク設定1402のランク数Rを「5」に設定し、出現頻度が上位4位までの要素をビットマップインデックスに格納し、5位以下をその他703にまとめることを示す。また、プロトコル番号については、フロー情報200の要素のうち、出現頻度の上位95%までの要素についてビットマップインデックスに格納し、残りの5%の出現頻度となる要素は、その他703に格納することを示す。送信先ポート番号も同様であり、出現頻度の上位90%をビットマップインデックスに格納することを示す。これらの設定は、管理者などが入力装置6を構成するマウスやキーボードにより入力する。   In the illustrated example, the bitmap index creation 1401 is set to a circle for the source IP address, the destination IP address, the protocol number, and the destination port number among the elements of the flow information 200, and the bitmap index Select to generate. For the source IP address and the destination IP address, the rank number R of the rank setting 1402 is set to “5”, the elements with the highest appearance frequency up to the 4th are stored in the bitmap index, and the 5th and below are the others It shows that it is summarized in 703. As for the protocol number, among the elements of the flow information 200, the elements up to the top 95% of the appearance frequencies are stored in the bitmap index, and the remaining elements having the appearance frequency of 5% are stored in the other 703. Indicates. The same applies to the destination port number, which indicates that the upper 90% of the appearance frequencies are stored in the bitmap index. These settings are input by a manager or the like using a mouse or a keyboard constituting the input device 6.

フロー処理部106は、ユーザインターフェース115で設定されたランク付きビットマップインデックス700の生成条件をメモリ3上の設定テーブル31に格納し、検索用情報生成部110を実行するときに設定テーブル31に設定された生成条件を参照し、ランク付きビットマップインデックス700を生成する。   The flow processing unit 106 stores the generation condition of the ranked bitmap index 700 set by the user interface 115 in the setting table 31 on the memory 3 and sets it in the setting table 31 when the search information generation unit 110 is executed. The ranked bitmap index 700 is generated with reference to the generated generation conditions.

図12は、ランク付きビットマップインデックス700を生成する処理の一例を示すフローチャートである。この処理は、フロー処理部106の検索用情報生成部110が所定の条件を満たしたときに実行されるプログラムである。なお、検索用情報生成部110は、上述したように、所定の周期(時間)となったとき、またはキャッシュ領域30の空き容量がなくなったときに、所定の条件を満たしたと判定し、図12の処理を開始する。   FIG. 12 is a flowchart illustrating an example of processing for generating the ranked bitmap index 700. This process is a program executed when the search information generating unit 110 of the flow processing unit 106 satisfies a predetermined condition. As described above, the search information generation unit 110 determines that the predetermined condition is satisfied when the predetermined period (time) is reached, or when the free space in the cache area 30 is exhausted. Start processing.

まず、ステップ1001では、検索用情報生成部110がキャッシュ領域30のフロー情報記憶部108に格納されている全てのフロー情報200を処理対象としてステップ1004までのループ処理を開始する。   First, in step 1001, the search information generation unit 110 starts the loop processing up to step 1004 for all the flow information 200 stored in the flow information storage unit 108 in the cache area 30 as a processing target.

ステップ1002では、検索用情報生成部110がメモリ3上の設定テーブル31を読み込んで、図3に示したフロー情報200のフィールド201〜205のうち、図11のユーザインターフェース115のビットマップインデックス作成1401が選択されている項目を取得する。検索用情報生成部110は、取得した項目をランク付きビットマップインデックス700の作成対象の要素とする。   In step 1002, the search information generation unit 110 reads the setting table 31 on the memory 3, and among the fields 201 to 205 of the flow information 200 shown in FIG. 3, the bitmap index creation 1401 of the user interface 115 in FIG. Get the selected item. The search information generation unit 110 sets the acquired item as an element for which the ranked bitmap index 700 is to be created.

ステップ1003では、検索用情報生成部110がひとつのフロー情報200を読み込んで、上記ステップ1002で取得した作成対象の要素のフィールド201〜205の値を抽出する。   In step 1003, the search information generation unit 110 reads one flow information 200 and extracts the values of the fields 201 to 205 of the creation target element acquired in step 1002.

次に、ステップ1004では、検索用情報生成部110が上記ステップ1003で抽出したフィールドの値の出現頻度(出現回数)に1を加算する。すなわち、図6のビットマップインデックス501の値を格納する列510に対応するフロー情報200の識別子ごとに列512の値に「1」を設定する。   Next, in step 1004, 1 is added to the appearance frequency (number of appearances) of the field value extracted in step 1003 by the search information generation unit 110. That is, “1” is set to the value of the column 512 for each identifier of the flow information 200 corresponding to the column 510 storing the value of the bitmap index 501 in FIG.

検索用情報生成部110は、上記ステップ1002〜1004のループ処理で、ひとつのフロー情報200の作成対象の要素の出現頻度を求めると、ステップ1001に戻って次のフロー情報200について同様の処理を行う。そして、フロー情報記憶部108の全てのフロー情報200について、ランク付きビットマップインデックス700を作成する対象となっている各要素の値の出現頻度の演算が完了すると、ステップ1005の処理に進む。   When the search information generation unit 110 obtains the appearance frequency of the element to be created of one flow information 200 in the loop processing of steps 1002 to 1004, the search information generation unit 110 returns to step 1001 and performs the same processing on the next flow information 200. Do. When the calculation of the appearance frequency of the value of each element for which the ranked bitmap index 700 is created for all the flow information 200 in the flow information storage unit 108 is completed, the process proceeds to step 1005.

ステップ1005では、検索用情報生成部110が、ランク付きビットマップインデックス700の作成対象の各フィールド(要素)について、ステップ1006、1007のループ処理を行う。なお、ステップ1005では、ランク付きビットマップインデックス700の作成対象の要素毎に図6で示したビットマップインデックス501、502を生成しておく。   In step 1005, the search information generation unit 110 performs the loop processing of steps 1006 and 1007 for each field (element) for which the ranked bitmap index 700 is to be created. In step 1005, the bitmap indexes 501 and 502 shown in FIG. 6 are generated for each element for which the ranked bitmap index 700 is to be created.

ステップ1006では、検索用情報生成部110がフィールド201〜205の項目毎に上記ステップ1004で求めた値の出現頻度からビットマップインデックスを作成する。すなわち、上記ステップ1004では、検索用情報生成部110が、フロー情報200のインデックス(識別子)毎に図6に示す列512を作成したので、要素毎のビットマップインデックス501に対して、フロー情報200の識別子毎の列512を加える。この処理によって、現在着目しているフィールド(要素)のビットマップインデックス501が生成される。   In step 1006, the search information generation unit 110 creates a bitmap index from the appearance frequency of the value obtained in step 1004 for each item of the fields 201 to 205. That is, in step 1004, the search information generation unit 110 creates the column 512 shown in FIG. 6 for each index (identifier) of the flow information 200, so that the flow information 200 for the bitmap index 501 for each element. Add column 512 for each identifier. By this process, the bitmap index 501 of the field (element) currently focused on is generated.

次に、ステップ1007では、検索用情報生成部110が設定テーブル31からランク数Rを読み込んで、上記図10で示したように、出現頻度の高い値の順にビットマップインデックス501Aを列方向にソートし、出現頻度の上位「ランク数R」までのビットマップインデックス501Aを保持し、出現頻度の順位がランク数R+1以降の行の値を、その他703の行にまとめて要素毎のランク付きビットマップインデックス700を生成する。   Next, in step 1007, the search information generation unit 110 reads the rank number R from the setting table 31, and sorts the bitmap index 501A in the column direction in descending order of appearance frequency as shown in FIG. The bitmap index 501A up to the upper rank “rank number R” of the appearance frequency is held, and the values of the rows with the rank of the appearance frequency after the rank number R + 1 are put together in the other 703 rows, and the rank-added bitmap for each element An index 700 is generated.

検索用情報生成部110は、ひとつのフィールドについてランク付きビットマップインデックス700を生成すると、ステップ1005に戻って、次のフィールドについてランク付きビットマップインデックス700を生成する処理を繰り返し、全てのフィールドにいついてランク付きビットマップインデックス700を生成する。   When the search information generating unit 110 generates the ranked bitmap index 700 for one field, the search information generating unit 110 returns to step 1005 and repeats the process of generating the ranked bitmap index 700 for the next field, and enters all the fields. Then, a ranked bitmap index 700 is generated.

上記処理により、図3に示したフロー情報200のフィールド201〜205のうち、図11のユーザインターフェース115でビットマップインデックス作成1401が選択されたフィールド毎に、指定されたランク数R+1の行を備えるランク付きビットマップインデックス700が生成される。なお、上記ではランク数Rで指定された場合を示したが、ランク数が上位からの比率で指示された場合については後述する。   As a result of the processing described above, for each field for which the bitmap index creation 1401 is selected in the user interface 115 of FIG. 11 among the fields 201 to 205 of the flow information 200 shown in FIG. A ranked bitmap index 700 is generated. Although the case where the number of ranks R is designated is shown above, the case where the number of ranks is designated by a ratio from the top will be described later.

検索用情報生成部110は、全てのフィールド(要素)毎のランク付きビットマップインデックス700の作成が完了すると、ステップ1008で、メモリ3上に保持していた各要素のビットマップインデックス700を記憶措置109に書き出す。このとき、検索用情報生成部110は、キャッシュ領域30のフロー情報記憶部108のフロー情報200にインデックス211を付加してから、上述したようにタイムスタンプをファイル名とする一つのファイルにまとめ、このファイルをフロー情報200Aとして記憶装置109に格納する。   When the creation of the ranked bitmap index 700 for every field (element) is completed, the search information generation unit 110 stores the bitmap index 700 of each element held on the memory 3 in step 1008. Write to 109. At this time, the search information generation unit 110 adds the index 211 to the flow information 200 of the flow information storage unit 108 in the cache area 30, and then collects the time stamp as one file as described above, This file is stored in the storage device 109 as flow information 200A.

さらに、検索用情報生成部110は、検索処理の高速化を図るため、インデックス情報1200を生成して記憶装置109に格納する。インデックス情報1200は、図13で示すように、一つのエントリ1201にフロー情報200の収集範囲の開始時刻を示す開始時間1202と、フロー情報200Aに含まれるフロー情報の数を示すフロー数1203と、フロー情報200Aに対応するランク付きビットマップインデックス700A,700Bのランク数Rと、ビットマップインデックス700A、700Bの格納位置を示すインデックス1205を含む。   Further, the search information generation unit 110 generates index information 1200 and stores it in the storage device 109 in order to speed up the search process. As shown in FIG. 13, the index information 1200 includes a start time 1202 indicating the start time of the collection range of the flow information 200 in one entry 1201, a flow number 1203 indicating the number of flow information included in the flow information 200A, It includes the rank number R of the ranked bitmap indexes 700A and 700B corresponding to the flow information 200A and the index 1205 indicating the storage position of the bitmap indexes 700A and 700B.

以上の処理によって、フロー情報処理装置101がルータ装置102から受信したフロー情報200を収集し、所定の条件が成立すると、検索用情報生成部110は、ユーザインターフェース115で指定された要素(フィールド)毎にランク付きビットマップインデックス700を生成する。そして、検索用情報生成部110は、図13で示すように、フロー情報200をひとつのファイルにまとめたフロー情報200Aと、ランク付きビットマップインデックス700のインデックスとするインデックス情報1200を生成して記憶装置109に格納する。   Through the above processing, when the flow information processing apparatus 101 collects the flow information 200 received from the router apparatus 102 and a predetermined condition is satisfied, the search information generating unit 110 uses the element (field) designated by the user interface 115. A ranked bitmap index 700 is generated every time. Then, as shown in FIG. 13, the search information generation unit 110 generates and stores flow information 200 </ b> A in which the flow information 200 is combined into one file and index information 1200 as an index of the ranked bitmap index 700. Store in device 109.

次に、ランク付きビットマップインデックス700を利用する検索処理について説明する。   Next, a search process using the ranked bitmap index 700 will be described.

図14にランク付きビットマップインデックスを用いる検索処理のフローチャートの一例を示す。この処理は、クエリ受信部111が検索条件を含むクエリを受け付けて、クエリ処理部112が検索部113に検索条件を通知し、検索部113が処理を実行する。   FIG. 14 shows an example of a flowchart of search processing using a ranked bitmap index. In this process, the query receiving unit 111 receives a query including a search condition, the query processing unit 112 notifies the search unit 113 of the search condition, and the search unit 113 executes the process.

まず、ステップ801で検索部113は、サーバ装置103からのクエリを受け取るとその中から検索条件を取り出す。なお、検索条件には、時刻と、要素及び要素の値が含まれる。   First, in step 801, when the search unit 113 receives a query from the server apparatus 103, the search unit 113 extracts a search condition from the query. Note that the search condition includes time, an element, and an element value.

ステップ802では、検索部113が記憶装置109に格納されたインデックス情報1200を参照し、開始時間1202から所定時間以内に検索条件の時刻が含まれるエントリを特定する。そして、特定したエントリについて、検索条件に含まれる要素からインデックス1205を検索し、検索対象のランク付きビットマップインデックス700をメモリ3に読み込む。次に、検索部113は、後述する図15のように、検索条件に合致するフロー情報をランク付きビットマップインデックス700によって検索し、検索条件に一致するビットがランク数R内の行にあれば、フロー情報200Aのインデックスに対応する識別子を取得する。一方、検索条件に一致するビットが「その他」であれば、検索結果は「その他」として記憶する。この処理は、検索条件に含まれるフロー情報200の要素毎のランク付きビットマップインデックス700で行われる。   In step 802, the search unit 113 refers to the index information 1200 stored in the storage device 109 and identifies an entry that includes the search condition time within a predetermined time from the start time 1202. Then, the index 1205 is searched from the elements included in the search condition for the specified entry, and the ranked bitmap index 700 to be searched is read into the memory 3. Next, as shown in FIG. 15 to be described later, the search unit 113 searches for flow information that matches the search condition using the ranked bitmap index 700, and if the bit that matches the search condition is in a row within the rank number R. The identifier corresponding to the index of the flow information 200A is acquired. On the other hand, if the bit matching the search condition is “other”, the search result is stored as “other”. This process is performed using the ranked bitmap index 700 for each element of the flow information 200 included in the search condition.

検索部113は、上記ステップ802で取得した識別子の数(取得するフロー情報の数)だけステップ803〜807の処理を繰り返す。   The search unit 113 repeats the processing in steps 803 to 807 for the number of identifiers acquired in step 802 (the number of flow information to be acquired).

まず、ステップ804では、記憶装置109から検索条件に含まれる時刻を含むフロー情報200Aを特定し、取得した識別子に対応するフロー情報200Aをメモリ3に読み込む。   First, in step 804, the flow information 200A including the time included in the search condition is specified from the storage device 109, and the flow information 200A corresponding to the acquired identifier is read into the memory 3.

ステップ805では、検索部113がメモリ3に読み込んだフロー情報200Aについてランク付きビットマップインデックス700の「その他」に該当しているかどうか判定する。読み込んだフロー情報200Aが「その他」に該当していない場合はステップ807の送信処理へ移行する。一方、上記ステップ802のランク付きビットマップインデックス700の検索の結果が「その他」に該当している場合は対象のフロー情報200Aが検索条件に合致している保障がないためステップ806の確認処理を行う。   In step 805, it is determined whether or not the flow information 200 </ b> A read into the memory 3 by the search unit 113 corresponds to “others” in the ranked bitmap index 700. If the read flow information 200A does not correspond to “others”, the process proceeds to the transmission process in step 807. On the other hand, if the result of the search of the ranked bitmap index 700 in Step 802 corresponds to “Other”, there is no guarantee that the target flow information 200A matches the search condition, so the confirmation process in Step 806 is performed. Do.

ステップ806では、上記図5に示した従来の検索処理によって、検索部113は検索条件に一致するフロー情報200Aを記憶装置109に格納されているフロー情報200Aから検索する。そして、検索条件に一致するフロー情報200Aがあればステップ807へ進む。検索条件に一致するフロー情報200Aがない場合には、ステップ803へ戻って次の識別子について上記処理を繰り返す。   In step 806, the search unit 113 searches the flow information 200A stored in the storage device 109 for the flow information 200A that matches the search condition by the conventional search process shown in FIG. If there is flow information 200A that matches the search condition, the process proceeds to step 807. If there is no flow information 200A that matches the search condition, the process returns to step 803 and the above processing is repeated for the next identifier.

ステップ807では、ステップ804またはステップ806で読み込んだ、フロー情報200Aをクエリに対する応答としてサーバ装置103に返信する。   In step 807, the flow information 200A read in step 804 or step 806 is returned to the server apparatus 103 as a response to the query.

以上の検索処理により、メモリ3上に読み込んだランク付きビットマップインデックス700で、検索条件に一致するビットがあれば識別子を取得することでフロー情報200A内のインデックスを得ることができるので、ステップ804で行う記憶装置109からフロー情報200Aを取得する処理時間は上記従来例のように全てのフロー情報200Aを検索する必要がないので、極めて短時間で処理を行うことが可能となる。そして、ランク付きビットマップインデックス700の検索結果が「その他」の場合のみ、従来例と同様に記憶装置109のフロー情報200Aを検索することになる。しかしながら、上述したようにフロー情報200Aの特性から、ランク付きビットマップインデックス700の検索結果が「その他」となる機会は少ないため、検索処理全体としては従来例に比して極めて高速に処理することが可能となるのである。   As a result of the above search processing, if there is a bit that matches the search condition in the ranked bitmap index 700 read on the memory 3, the identifier in the flow information 200A can be obtained by acquiring the identifier, so step 804 is obtained. The processing time for acquiring the flow information 200A from the storage device 109 is not required to search all the flow information 200A as in the conventional example, so that the processing can be performed in a very short time. Then, only when the search result of the ranked bitmap index 700 is “other”, the flow information 200A in the storage device 109 is searched as in the conventional example. However, as described above, due to the characteristics of the flow information 200A, there are few opportunities for the search result of the ranked bitmap index 700 to be “other”, and therefore the search process as a whole is processed at a very high speed compared to the conventional example. Is possible.

図15は上記図13のステップ802で示したランク付きビットマップインデックス700を用いる検索処理のフローチャートを示す。   FIG. 15 shows a flowchart of search processing using the ranked bitmap index 700 shown in step 802 of FIG.

ステップ901では、検索部113は、まず上記図7に示した演算用テーブル503と同様にして検索条件に応じた演算用テーブルをメモリ3上に作成する。この演算用テーブルは、なお、演算用テーブルは、検索条件が単一の要素に対して単一の検索条件の場合は、図7に示したランク付きビットマップインデックス700のランク数Rに対応する部分となる。   In step 901, the search unit 113 first creates a calculation table corresponding to the search condition in the memory 3 in the same manner as the calculation table 503 shown in FIG. This calculation table corresponds to the rank number R of the ranked bitmap index 700 shown in FIG. 7 when the search condition is a single search condition for a single element. Part.

次に、ステップ902では、検索部113がその他用テーブルをメモリ3上に作成する。その他用テーブルは、ランク付きビットマップインデックス700の検索結果を管理するため、検索条件がランク数Rの要素の値に一致しなかった回数を計数するもので、検索する要素の値に対する検索回数を格納可能なテーブルであればよい。   Next, in step 902, the search unit 113 creates the other table on the memory 3. The other table counts the number of times that the search condition does not match the element value of the rank number R in order to manage the search result of the ranked bitmap index 700. Any table that can be stored is acceptable.

次に、ステップ903〜906では、検索条件のパラメータ(例えば、要素)の数だけランク付きビットマップインデックス700を用いた演算を繰り返す。ステップ904では、検索部113が検索条件のパラメータに一致するビット列(図10の列710でヒットした要素の値に一致する行)を抽出する。次に、ステップ905では、抽出したビット列をステップ901で生成した演算用テーブルに格納し、検索条件のパラメータと比較を行う。この比較演算の結果である要素の値に対応する識別子を演算用テーブルに格納する。   Next, in Steps 903 to 906, the calculation using the ranked bitmap index 700 is repeated by the number of search condition parameters (for example, elements). In step 904, the search unit 113 extracts a bit string that matches the search condition parameter (a line that matches the value of the element hit in the column 710 in FIG. 10). In step 905, the extracted bit string is stored in the calculation table generated in step 901, and compared with the search condition parameter. The identifier corresponding to the value of the element that is the result of the comparison operation is stored in the calculation table.

次に、ステップ906では、上記ステップ904の処理で、要素の値としてヒットした行が「その他」であるか否かを判定し、「その他」であればステップ907に進み、ランク数R内の要素にヒットした場合は、ステップ903に戻って次のパラメータに関して検索を実施する。   Next, in step 906, it is determined whether or not the line hit as the element value in the processing of step 904 is “other”. If “other”, the process proceeds to step 907, and the rank within the rank number R is determined. If the element is hit, the process returns to step 903 to search for the next parameter.

ステップ907では、上記ステップ902で作成したその他用テーブルに「1」を加算して更新する。   In step 907, “1” is added to the other table created in step 902 and updated.

本発明では、検索部113が記憶装置109から取り出したフロー情報200(ランク付きビットマップインデックス700)に占める「その他」以外の割合を「ヒット率」、「その他」の割合を「ミス率」と呼ぶ。ヒット率が高いほど記憶装置109からフロー情報200Aを読み込むオーバヘッドが減り、フロー情報処理装置101全体の性能が向上する。   In the present invention, the ratio other than “other” in the flow information 200 (ranked bitmap index 700) retrieved by the search unit 113 from the storage device 109 is “hit rate”, and the ratio of “other” is “miss rate”. Call. As the hit rate is higher, the overhead of reading the flow information 200A from the storage device 109 is reduced, and the performance of the entire flow information processing apparatus 101 is improved.

以上の処理により、検索条件のパラメータの数だけランク付きビットマップインデックス700を用いて検索を行うことで、検索条件に一致したビット列が演算用テーブルに格納され、ランク数R内の要素の値でヒットしなかった回数がその他用テーブルに記録される。検索部113は、演算用テーブルに格納された要素の値の数と、その他用テーブルの値の和で、演算用テーブルに格納された要素の値の数を除してヒット率を求めることができる。また、検索部113は、演算用テーブルに格納された要素の値の数と、その他用テーブルの値の和で、その他用テーブルの値を除してミス率を求めることができる。   As a result of performing the search using the ranked bitmap index 700 as many as the number of search condition parameters, the bit string that matches the search condition is stored in the calculation table, and the value of the element in the rank number R is used. The number of times of no hit is recorded in the other table. The search unit 113 obtains the hit rate by dividing the number of element values stored in the calculation table by the sum of the value of the element stored in the calculation table and the value of the other table. it can. In addition, the search unit 113 can obtain the miss rate by dividing the value of the other table by the sum of the number of element values stored in the calculation table and the value of the other table.

さらに、「その他」の行を参照したかどうか記録することでステップ904の段階で追加の処理である記憶装置109からの識別子の検索が必要か否かを知ることができる。   Further, by recording whether or not the “other” line has been referenced, it is possible to know whether or not an identifier search from the storage device 109, which is an additional process, is necessary in step 904.

図16は、フロー情報処理装置101に入力されたクエリの一例を示し、図17は、図16のクエリに対する検索処理の結果の一例を示す説明図である。   FIG. 16 shows an example of a query input to the flow information processing apparatus 101, and FIG. 17 is an explanatory diagram showing an example of a search processing result for the query of FIG.

図16では、サーバ装置103がフロー情報処理装置101に要求したクエリ1301を示す。クエリ1301には、サーバ装置103が要求する情報(抽出情報)として、送信元IPアドレスと、送信先IPアドレスが設定される。抽出情報の読み出し先として、フロー情報200Aが指定される。抽出情報の検索条件(検索情報)としては、開始時刻と終了時刻及び要素の値としてプロトコル番号が指定される。   FIG. 16 shows a query 1301 requested by the server apparatus 103 to the flow information processing apparatus 101. In the query 1301, a transmission source IP address and a transmission destination IP address are set as information (extraction information) requested by the server apparatus 103. The flow information 200A is designated as the extraction information read destination. As a retrieval condition (retrieval information) for the extracted information, a protocol number is specified as a start time, an end time, and an element value.

上記クエリ1301を受け付けたフロー情報処理装置101が、上記図14、図15の検索処理を行ってサーバ装置103へ出力した結果が図17に示すクエリ出力1302となる。図17のクエリ出力は、検索条件の開始時刻と終了時刻の期間で、要素の値がプロトコル番号=6のフロー情報200Aから送信先IPアドレスと送信元IPアドレスが識別子(フローID)毎に出力される。   The flow information processing apparatus 101 that has received the query 1301 performs the search processing of FIGS. 14 and 15 and outputs the result to the server apparatus 103 as a query output 1302 shown in FIG. The query output of FIG. 17 is a period of the search condition start time and end time, and the destination IP address and the source IP address are output for each identifier (flow ID) from the flow information 200A whose element value is protocol number = 6. Is done.

上記図16,図17の例では、要素(プロトコル番号)の値(=6)は、図10のランク付きビットマップインデックス700の最初の行でヒットする。検索部113は、ヒットした行の識別子(=1,2,4)を取得する。検索部113は、取得した識別子に対応するフロー情報200Aのインデックスから抽出情報を読み込んでサーバ装置103に応答する。   In the examples of FIGS. 16 and 17, the element (protocol number) value (= 6) hits in the first row of the ranked bitmap index 700 of FIG. The search unit 113 acquires the identifier (= 1, 2, 4) of the hit line. The search unit 113 reads the extracted information from the index of the flow information 200A corresponding to the acquired identifier and responds to the server device 103.

以上により、メモリ3上に読み込んだランク付きビットマップインデックス700で、検索条件に一致するビットがあれば識別子を取得し、この識別子からフロー情報200A内のインデックスを得ることができるので、記憶装置109からフロー情報200Aを取得する処理時間は上記従来例のように全てのフロー情報200Aを検索する必要がないので、極めて短時間で処理を行うことが可能となり、フロー情報処理装置101が大量のフロー情報200Aを管理する場合であっても、高速な検索が可能となる。   As described above, in the ranked bitmap index 700 read on the memory 3, if there is a bit that matches the search condition, the identifier can be acquired, and the index in the flow information 200A can be obtained from this identifier. Since it is not necessary to search all the flow information 200A as in the above-described conventional example, the processing time for acquiring the flow information 200A from the flow information can be performed in a very short time, and the flow information processing apparatus 101 can obtain a large amount of flow information. Even when the information 200A is managed, a high-speed search is possible.

図18は、上記図11に示したユーザーインターフェース115でランク設定を比率で指定した場合に「ランク数」または「ランキング」をフロー情報200内の各要素の出現頻度から決定するようにしたものである。   18 shows a case where “rank number” or “ranking” is determined from the appearance frequency of each element in the flow information 200 when the rank setting is designated by the ratio in the user interface 115 shown in FIG. is there.

ランク付きビットマップインデックス700における「ランク数」「ランキング」はフロー情報200内の各要素の出現頻度の統計は、フロー情報200を受信するたびに行ってもよく、特定時間や特定個数ごとに一括して行ってもよい。   The “number of ranks” and “ranking” in the bitmap index 700 with rank may be performed every time the flow information 200 is received, and statistics on the appearance frequency of each element in the flow information 200 may be collected at a specific time or a specific number. You may do it.

以下に「ランク数」または「ランキング」を予め設定された比率に基づいて決定する例を示す。   An example of determining “number of ranks” or “ranking” based on a preset ratio is shown below.

図18は、ランク付きビットマップインデックス700を生成する処理の一例を示すフローチャートである。この処理は、図12と同様に、フロー処理部106の検索用情報生成部110が所定の条件を満たしたときに実行されるプログラムである。なお、検索用情報生成部110は、上述したように、所定の周期(時間)となったとき、またはキャッシュ領域30の空き容量がなくなったときに、所定の条件を満たしたと判定し、図18の処理を開始する。   FIG. 18 is a flowchart illustrating an example of processing for generating a ranked bitmap index 700. This process is a program executed when the search information generation unit 110 of the flow processing unit 106 satisfies a predetermined condition, as in FIG. As described above, the search information generating unit 110 determines that the predetermined condition is satisfied when the predetermined period (time) is reached, or when the free space in the cache area 30 is exhausted, as shown in FIG. Start processing.

まず、ステップ1101では、検索用情報生成部110がキャッシュ領域30のフロー情報記憶部108に格納されている全てのフロー情報200を処理対象としてステップ1104までのループ処理を開始する。   First, in step 1101, the search information generation unit 110 starts a loop process up to step 1104 for all the flow information 200 stored in the flow information storage unit 108 in the cache area 30 as a processing target.

ステップ1102では、検索用情報生成部110がメモリ3上の設定テーブル31を読み込んで、図3に示したフロー情報200のフィールド201〜205のうち、図11のユーザインターフェース115のビットマップインデックス作成1401が選択され、かつ、ランク設定1402が上位からの比率で指定された項目を取得する。検索用情報生成部110は、取得した項目をランク付きビットマップインデックス700の作成対象の要素とする。   In step 1102, the search information generation unit 110 reads the setting table 31 on the memory 3, and among the fields 201 to 205 of the flow information 200 shown in FIG. 3, creates a bitmap index 1401 of the user interface 115 in FIG. 11. Is selected, and the item whose rank setting 1402 is specified by the ratio from the top is acquired. The search information generation unit 110 sets the acquired item as an element for which the ranked bitmap index 700 is to be created.

ステップ1103では、検索用情報生成部110がキャッシュ領域30からひとつのフロー情報200を読み込んで、上記ステップ1102で取得した作成対象の要素のフィールド201〜205の値を抽出する。   In step 1103, the search information generation unit 110 reads one flow information 200 from the cache area 30 and extracts the values of the fields 201 to 205 of the creation target element acquired in step 1102.

次に、ステップ1104では、検索用情報生成部110が上記ステップ1103で抽出したフィールドの値の出現頻度(出現回数)に1を加算する。すなわち、図6のビットマップインデックス501の値を格納する列510に対応するフロー情報200の識別子ごとに列512の値に「1」を設定する。   In step 1104, the search information generation unit 110 adds 1 to the appearance frequency (number of appearances) of the field value extracted in step 1103. That is, “1” is set to the value of the column 512 for each identifier of the flow information 200 corresponding to the column 510 storing the value of the bitmap index 501 in FIG.

検索用情報生成部110は、上記ステップ1102〜1004のループ処理で、ひとつのフロー情報200の作成対象の要素の出現頻度を求めると、ステップ1101に戻って次のフロー情報200について同様の処理を行う。そして、フロー情報記憶部108の全てのフロー情報200について、ランク付きビットマップインデックス700を作成する対象となっている各要素の値の出現頻度の演算が完了すると、ステップ1105の処理に進む。   When the search information generation unit 110 obtains the appearance frequency of the creation target element of one flow information 200 in the loop processing of steps 1102 to 1004, the search information generation unit 110 returns to step 1101 and performs the same processing on the next flow information 200. Do. When the calculation of the appearance frequency of the value of each element for which the ranked bitmap index 700 is created for all the flow information 200 in the flow information storage unit 108 is completed, the process proceeds to step 1105.

ステップ1105では、ランクの順位(ランキング)を示す変数Nに初期値として「1」を設定する。   In step 1105, “1” is set as an initial value in a variable N indicating the rank order (ranking).

ステップ1106では、検索用情報生成部110がフィールド201〜205の項目毎に上記ステップ1104で求めた値の出現頻度の高い順にソートを行って、出現順位の最も高いフィールドの値に変数Nを設定し、上記図12のステップ1006と同様に、現在着目しているフィールド(要素)のビットマップインデックス501を生成する。   In step 1106, the search information generation unit 110 sorts the values obtained in step 1104 for each item in the fields 201 to 205 in descending order of appearance frequency, and sets the variable N to the value of the field having the highest appearance rank. Then, similarly to step 1006 in FIG. 12, a bitmap index 501 of the field (element) currently focused on is generated.

次に、ステップ1107では、現在着目しているフィールドの値の変数Nの値が1〜Nの数と、作成対象のフロー情報200の全体の数の比率から出現頻度が第1位から第N位までの値の数の割合を求める。   Next, in step 1107, the frequency of appearance of the variable N of the field value currently focused on is the number from 1 to N and the total number of the flow information 200 to be created. Find the ratio of the number of values up to the place.

ステップ1108では、ユーザーインターフェース115で指定された比率と、ステップ1107で求めた割合を比較して、この割合が指定された比率を超えたか否かを判定する。割合が指定された比率を超えていれば、ステップ1109に進みランク付きビットマップインデックス700を生成し、割合が指定された比率以下であれば、ステップ1110に進んで変数Nに1を加えてから、上記ステップ1106に戻って次の順位Nのビットマップインデックスを作成する。   In step 1108, the ratio specified in the user interface 115 is compared with the ratio obtained in step 1107, and it is determined whether or not this ratio exceeds the specified ratio. If the ratio exceeds the specified ratio, the process proceeds to step 1109 to generate a ranked bitmap index 700. If the ratio is equal to or less than the specified ratio, the process proceeds to step 1110 and 1 is added to the variable N. Returning to step 1106, a bitmap index of the next rank N is created.

ステップ1109では、作成対象のフロー情報200の全体の数に対するフィールドの値の変数Nの値が1〜Nの数の割合が、指定された比率に達したので、変数N=1〜Nまでのランク数の要素の値についてランク付きビットマップインデックス700を生成し、変数N=N+1以降の順位の要素の値についてはその他の行703にまとめてランク付きビットマップインデックス700を完成させる。   In step 1109, since the ratio of the number of the field value variable N to 1 to N with respect to the total number of the flow information 200 to be created has reached the specified ratio, the variable N = 1 to N A ranked bitmap index 700 is generated for the element values of the rank number, and the element values of the rank after the variable N = N + 1 are collected in other rows 703 to complete the ranked bitmap index 700.

以上のように、ユーザーインターフェース115にてランク設定1402が上位からの比率の場合には、作成対象のフロー情報200の全体の数に対するフィールドの値の変数Nの値が1〜Nの数の割合が指定された比率となるランク数Rが自動的に決定されるのである。これにより、検索処理を行ったときには、検索条件が出現頻度の高い要素の値で一致する確率が向上し、検索のミスヒットによってフロー情報200Aのインデックスを記憶装置109から検索する機会を低減することができる。したがって、フロー情報処理装置101を大規模なネットワークに設置して、大量のフロー情報200を収集する場合でも、検索処理の速度が低下するのを防ぎ、フロー情報処理装置101の負荷が過大になるのを防ぐことができる。   As described above, when the rank setting 1402 is a ratio from the top in the user interface 115, the ratio of the value of the field value variable N to the number of 1 to N with respect to the total number of flow information 200 to be created The number of ranks R having a specified ratio is automatically determined. As a result, when the search process is performed, the probability that the search condition matches with the value of the element having a high appearance frequency is improved, and the chance of searching the index of the flow information 200A from the storage device 109 due to a search miss hit is reduced. Can do. Therefore, even when the flow information processing apparatus 101 is installed in a large-scale network and a large amount of flow information 200 is collected, the search processing speed is prevented from decreasing, and the load of the flow information processing apparatus 101 becomes excessive. Can be prevented.

なお、上記実施形態ではフロー情報を送信する装置としてルーター装置を用いる例を示したが、パケットを転送して、転送した結果をフロー情報として出力可能な装置であればよく、例えば、L3(Layer 3)スイッチやロードバランサ等の通信装置を用いることができる。   In the above embodiment, an example in which a router device is used as a device that transmits flow information has been described. However, any device that can transfer a packet and output the transfer result as flow information may be used. For example, L3 (Layer 3) Communication devices such as switches and load balancers can be used.

以上のように、本発明は、ネットワークシステムに設置されてフロー情報を収集し、収集したフロー情報を検索する管理装置に適用することができる。また、フロー情報の記憶や検索のみならず、時間ごとに大量のログ情報などを処理する装置全般において、記憶装置の容量削減と、検索の高速化を実現できる。   As described above, the present invention can be applied to a management apparatus that is installed in a network system, collects flow information, and searches the collected flow information. In addition to storage and retrieval of flow information, it is possible to reduce the capacity of the storage device and speed up retrieval in all devices that process a large amount of log information every hour.

本発明のフロー情報処理装置を備えたネットワークシステムのブロック図。The block diagram of the network system provided with the flow information processing apparatus of this invention. 本発明に係わるフロー情報処理装置とネットワークシステムの機能要素を示すブロック図。1 is a block diagram showing functional elements of a flow information processing apparatus and a network system according to the present invention. 本発明に係わるフロー情報の一例を示す説明図。Explanatory drawing which shows an example of the flow information concerning this invention. サーバ装置から送信されるクエリの一例を示す説明図。Explanatory drawing which shows an example of the query transmitted from a server apparatus. 従来例による検索処理の一例を示すフローチャート。The flowchart which shows an example of the search process by a prior art example. フロー情報からビットマップインデックスを生成する過程を示す説明図。Explanatory drawing which shows the process which produces | generates a bitmap index from flow information. ビットマップインデックスから検索条件に応じて生成された演算用テーブルの一例を示す説明図。Explanatory drawing which shows an example of the table for a calculation produced | generated according to search conditions from the bitmap index. ビットマップインデックスから検索条件に応じて生成された演算用テーブルの一例を示す説明図。Explanatory drawing which shows an example of the table for a calculation produced | generated according to search conditions from the bitmap index. ビットマップインデックスを用いた検索処理の一例を示すフローチャート。The flowchart which shows an example of the search process using a bitmap index. ビットマップインデックスからランク付きビットマップインデックスを生成する過程を示す説明図。Explanatory drawing which shows the process of producing | generating a ranked bitmap index from a bitmap index. ユーザーインターフェースの一例を示す画面イメージ。A screen image showing an example of a user interface. ランク付きビットマップインデックスの生成処理の一例を示すフローチャート。The flowchart which shows an example of the production | generation process of a bitmap index with a rank. フロー情報からランク付きビットマップインデックスを生成し、さらにインデックス情報を生成する過程を示す説明図。Explanatory drawing which shows the process which produces | generates a bitmap index with a rank from flow information, and also produces | generates index information. ランク付きビットマップインデックスを用いた検索処理の一例を示すフローチャート。The flowchart which shows an example of the search process using a bitmap index with a rank. 図14のステップ802で行われるランク付きビットマップインデックスの検索処理の一例を示すサブルーチン。The subroutine which shows an example of the search process of the ranked bitmap index performed at step 802 of FIG. フロー情報処理装置に入力されたクエリの一例を示す説明図。Explanatory drawing which shows an example of the query input into the flow information processing apparatus. フロー情報処理装置から出力されたクエリに対する応答の一例を示す説明図。Explanatory drawing which shows an example of the response with respect to the query output from the flow information processing apparatus. ユーザーインターフェースのランク設定が比率の場合のランク付きビットマップインデックスの生成処理を示すフローチャート。The flowchart which shows the production | generation process of a ranked bitmap index when the rank setting of a user interface is a ratio.

符号の説明Explanation of symbols

101 フロー処理装置
102 ルータ装置
103 サーバ装置
104 通信インターフェース
105 プロトコル処理部
106 フロー処理部
107 フロー情報受信部
108 フロー情報記憶部
109 記憶装置
110 検索用情報生成部
111 クエリ受信部
112 クエリ処理部
113 検索部
114 送信部
115 ユーザインタフェース
1200 インデックス情報
200、200A フロー情報
501 ビットマップインデックス
700 ランク付きビットマップインデックス
101 Flow processing device 102 Router device 103 Server device 104 Communication interface 105 Protocol processing unit 106 Flow processing unit 107 Flow information receiving unit 108 Flow information storage unit 109 Storage device 110 Search information generation unit 111 Query reception unit 112 Query processing unit 113 Search Unit 114 transmitting unit 115 user interface 1200 index information 200, 200A flow information 501 bitmap index 700 ranked bitmap index

Claims (10)

フロー情報または検索要求を受信する受信部と、
前記受信したフロー情報を格納する記憶装置と、
前記受信した検索要求に基づいて前記記憶装置に格納されたフロー情報を検索する検索部と、
前記検索部が検索した結果を送信する送信部と、
を備えたフロー情報処理装置において、
前記受信部が受信した前記フロー情報を一時的に格納するフロー情報記憶部と、
所定の条件が成立したときに、前記フロー情報記憶部に格納されたフロー情報から検索用情報を生成する検索用情報生成部と、を備え、
前記検索部は、
前記検索要求を受け付けると当該検索要求に含まれる検索条件で前記検索用情報を検索し、前記検索条件に合致する検索用情報から前記フロー情報を取得し、
前記検索用情報生成部は、
前記所定の条件が成立する度に、前記フロー情報に含まれる項目毎に前記検索用情報を生成することを特徴とするフロー情報処理装置。
A receiver for receiving flow information or a search request;
A storage device for storing the received flow information;
A search unit for searching for flow information stored in the storage device based on the received search request;
A transmission unit for transmitting the search result of the search unit;
In a flow information processing apparatus comprising:
A flow information storage unit for temporarily storing the flow information received by the reception unit;
A search information generation unit that generates search information from the flow information stored in the flow information storage unit when a predetermined condition is satisfied,
The search unit
When the search request is accepted, the search information is searched with a search condition included in the search request, and the flow information is acquired from the search information that matches the search condition ,
The search information generating unit
A flow information processing apparatus that generates the search information for each item included in the flow information each time the predetermined condition is satisfied .
請求項1に記載のフロー情報処理装置であって、
前記検索用情報生成部は、
前記フロー情報記憶部に格納されたフロー情報に含まれる項目からフロー情報の内容を抽出し、前記抽出した項目の内容を含む情報を検索用情報として生成することを特徴とするフロー情報処理装置。
The flow information processing apparatus according to claim 1,
The search information generating unit
A flow information processing apparatus that extracts the contents of flow information from items included in the flow information stored in the flow information storage unit and generates information including the contents of the extracted items as search information.
請求項2に記載のフロー情報処理装置であって、
前記検索用情報生成部は、
前記フロー情報記憶部に格納されたフロー情報に含まれる項目の内容を抽出し、
前記抽出した内容の出現頻度を演算し、
前記フロー情報にインデックスを付与し、
前記演算した出現頻度の順に前記項目の内容を設定し、前記インデックスが指し示すフロー情報の関係からビット情報を前記検索用情報として生成することを特徴とするフロー情報処理装置。
The flow information processing apparatus according to claim 2,
The search information generating unit
Extract the contents of the items included in the flow information stored in the flow information storage unit,
Calculate the appearance frequency of the extracted content,
Index the flow information,
A flow information processing apparatus, wherein the contents of the items are set in the order of the calculated appearance frequencies, and bit information is generated as the search information from the relationship of the flow information indicated by the index.
請求項3に記載のフロー情報処理装置であって、
前記検索用情報生成部は、
前記ビット情報の内、前記出現頻度の順位が予め設定した順位以降の項目の内容については、複数の項目の内容を予め設定した内容に設定し、予め設定した順位以降の項目の内容に対応する複数のインデックスを前記予め設定した内容にまとめることを特徴とするフロー情報処理装置。
The flow information processing apparatus according to claim 3,
The search information generating unit
Among the bit information, for the contents of items after the order of appearance frequency set in advance, the contents of a plurality of items are set to the contents set in advance, and correspond to the contents of the items after the order set in advance. A flow information processing apparatus characterized in that a plurality of indexes are collected into the preset content.
請求項3に記載のフロー情報処理装置であって、
前記検索部は、
前記検索要求を受け付けると当該検索要求に含まれる検索条件で前記ビット情報を検索し、
前記検索条件に合致するビット情報からインデックスを取得し、
前記インデックスから前記フロー情報を取得することを特徴とするフロー情報処理装置。
The flow information processing apparatus according to claim 3 ,
The search unit
When the search request is received, the bit information is searched with a search condition included in the search request,
An index is acquired from bit information that matches the search condition,
A flow information processing apparatus that acquires the flow information from the index .
請求項4に記載のフロー情報処理装置であって、
前記検索部は、
前記検索要求を受け付けると当該検索要求に含まれる検索条件で前記ビット情報を検索し、
前記検索条件に合致する項目の内容が前記予め設定した内容の場合には、前記検索条件に合致するフロー情報を前記記憶装置から検索することを特徴とするフロー情報処理装置。
The flow information processing apparatus according to claim 4 ,
The search unit
When the search request is received, the bit information is searched with a search condition included in the search request,
A flow information processing apparatus that searches the storage device for flow information that matches the search condition when the content of the item that matches the search condition is the preset content .
請求項1に記載のフロー情報処理装置であって、
前記検索用情報生成部は、
予め設定した周期が経過する度に所定の条件の成立を判定することを特徴とするフロー情報処理装置。
The flow information processing apparatus according to claim 1 ,
The search information generating unit
A flow information processing apparatus that determines whether a predetermined condition is satisfied each time a preset period elapses .
請求項1に記載のフロー情報処理装置であって、
前記検索用情報生成部は、
前記フロー情報記憶部の空き容量が所定の値に達したときに所定の条件の成立を判定することを特徴とするフロー情報処理装置。
The flow information processing apparatus according to claim 1,
The search information generating unit
A flow information processing apparatus for determining whether a predetermined condition is satisfied when a free capacity of the flow information storage unit reaches a predetermined value .
請求項1に記載のフロー情報処理装置であって、
前記フロー情報は、NetFlowまたはIPFIXのプロトコルを用いることを特徴とするフロー情報処理装置。
The flow information processing apparatus according to claim 1,
The flow information processing apparatus is characterized in that a NetFlow or IPFIX protocol is used for the flow information.
フロー情報を送信する通信装置と、A communication device for transmitting flow information;
検索要求を送信する計算機と、  A computer that sends a search request;
前記フロー情報または検索要求を受信する受信部と、前記受信したフロー情報を格納する記憶装置と、前記受信した検索要求に基づいて前記記憶装置に格納されたフロー情報を検索する検索部と、前記検索部が検索した結果を前記サーバ装置に送信する送信部と、を有するフロー情報処理装置と、  A receiving unit that receives the flow information or search request; a storage device that stores the received flow information; a search unit that searches for flow information stored in the storage device based on the received search request; A flow information processing apparatus comprising: a transmission unit that transmits a search result of the search unit to the server device;
を備えたネットワークシステムにおいて、In a network system with
前記フロー情報処理装置は、  The flow information processing apparatus includes:
前記受信部が受信した前記フロー情報を一時的に格納するフロー情報記憶部と、  A flow information storage unit for temporarily storing the flow information received by the reception unit;
所定の条件が成立したときに、前記フロー情報記憶部に格納されたフロー情報から検索用情報を生成する検索用情報生成部と、を備え、  A search information generation unit that generates search information from the flow information stored in the flow information storage unit when a predetermined condition is satisfied,
前記検索部は、  The search unit
前記検索要求を受け付けると当該検索要求に含まれる検索条件で前記検索用情報を検索し、前記検索条件に合致する検索用情報からフロー情報を取得し、  When the search request is received, the search information is searched with a search condition included in the search request, and flow information is acquired from the search information that matches the search condition.
前記検索用情報生成部は、  The search information generating unit
前記所定の条件が成立する度に、前記フロー情報に含まれる項目毎に前記検索用情報を生成することを特徴とするネットワークシステム。  The network system, wherein the search information is generated for each item included in the flow information every time the predetermined condition is satisfied.
JP2008233067A 2008-09-11 2008-09-11 Flow information processing apparatus and network system Expired - Fee Related JP4717106B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008233067A JP4717106B2 (en) 2008-09-11 2008-09-11 Flow information processing apparatus and network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008233067A JP4717106B2 (en) 2008-09-11 2008-09-11 Flow information processing apparatus and network system

Publications (2)

Publication Number Publication Date
JP2010068279A JP2010068279A (en) 2010-03-25
JP4717106B2 true JP4717106B2 (en) 2011-07-06

Family

ID=42193460

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008233067A Expired - Fee Related JP4717106B2 (en) 2008-09-11 2008-09-11 Flow information processing apparatus and network system

Country Status (1)

Country Link
JP (1) JP4717106B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103379039B (en) 2012-04-23 2016-12-14 华为技术有限公司 A kind of for flowing the method for statistics, Apparatus and system
JP6021111B2 (en) * 2013-10-08 2016-11-02 日本電信電話株式会社 Flow aggregation apparatus and method
CN114328319B (en) * 2021-12-30 2024-07-26 苏州盛科科技有限公司 Method, device and storage medium for filtering invalid event report message
CN116304258B (en) * 2023-05-15 2023-07-21 上海爱可生信息技术股份有限公司 Retrieval method, retrieval system and readable storage medium based on vector database

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006521776A (en) * 2003-03-28 2006-09-21 ジュニパー ネットワークス, インコーポレイテッド Intelligent integrated network security device
JP2007116405A (en) * 2005-10-20 2007-05-10 Alaxala Networks Corp Method for detecting abnormal traffic and packet repeating apparatus
JP2007228513A (en) * 2006-02-27 2007-09-06 Hitachi Ltd Network system and traffic information aggregator

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006521776A (en) * 2003-03-28 2006-09-21 ジュニパー ネットワークス, インコーポレイテッド Intelligent integrated network security device
JP2007116405A (en) * 2005-10-20 2007-05-10 Alaxala Networks Corp Method for detecting abnormal traffic and packet repeating apparatus
JP2007228513A (en) * 2006-02-27 2007-09-06 Hitachi Ltd Network system and traffic information aggregator

Also Published As

Publication number Publication date
JP2010068279A (en) 2010-03-25

Similar Documents

Publication Publication Date Title
US11601351B2 (en) Aggregation of select network traffic statistics
JP6599538B2 (en) Method and apparatus for identifying application information in network traffic
US20200117569A1 (en) Graphical user interface for visual correlation of virtual machine information and storage volume information
US6751627B2 (en) Method and apparatus to facilitate accessing data in network management protocol tables
JP6134437B2 (en) Data transfer monitoring system, data transfer monitoring method, and base system
JP2018531527A6 (en) Method and apparatus for identifying application information in network traffic
JP5238432B2 (en) Metadata collection apparatus, method and program thereof
JP2007148885A (en) Content collection device and content collection system
JP4684883B2 (en) Attribute information collecting apparatus, attribute information collecting method, and attribute information collecting program
JP4717106B2 (en) Flow information processing apparatus and network system
WO2020181820A1 (en) Data cache method and apparatus, computer device and storage medium
EP2530873B1 (en) Method and apparatus for streaming netflow data analysis
CN111158892A (en) Task queue generating method, device and equipment
CN112486914A (en) Data packet storage and fast check method and system
WO2013120412A1 (en) Data download method, terminal, server and system
JP5433700B2 (en) Metadata collection device
EP3961414B1 (en) Method and apparatus for processing time records
CN109325154B (en) Application data acquisition method and electronic equipment
JP2011210120A (en) Device and method for retrieving multiple servers
JP2009070210A (en) Device for creating ranking by category
CN116610870B (en) Data processing method and device and electronic equipment
CN118353910A (en) Method and system for improving cache hit rate of edge CDN sink node
JP5071990B2 (en) Database apparatus, database system, cache maintenance method and program thereof
JP5147790B2 (en) Crawler adjusting device and crawler adjusting method
JP3885050B2 (en) Network management method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100921

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101119

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110329

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140408

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees