JP2008124758A - Call control data retrieval system and call control data retrieval program - Google Patents

Call control data retrieval system and call control data retrieval program Download PDF

Info

Publication number
JP2008124758A
JP2008124758A JP2006305847A JP2006305847A JP2008124758A JP 2008124758 A JP2008124758 A JP 2008124758A JP 2006305847 A JP2006305847 A JP 2006305847A JP 2006305847 A JP2006305847 A JP 2006305847A JP 2008124758 A JP2008124758 A JP 2008124758A
Authority
JP
Japan
Prior art keywords
key
call
file
data
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006305847A
Other languages
Japanese (ja)
Other versions
JP4091645B1 (en
Inventor
Eiji Kosugi
英司 小杉
Koji Kitayama
浩二 北山
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.)
Mitsubishi Electric Information Systems Corp
Mitsubishi Electric Information Technology Corp
Original Assignee
Mitsubishi Electric Information Systems Corp
Mitsubishi Electric Information Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Information Systems Corp, Mitsubishi Electric Information Technology Corp filed Critical Mitsubishi Electric Information Systems Corp
Priority to JP2006305847A priority Critical patent/JP4091645B1/en
Application granted granted Critical
Publication of JP4091645B1 publication Critical patent/JP4091645B1/en
Publication of JP2008124758A publication Critical patent/JP2008124758A/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To efficiently extract data meeting a prescribed condition from, for example, large quantities of call control data generated in real time. <P>SOLUTION: A data capture part 101 stores VoIP packets captured from a VoIP network 200 at every minute into a per-minute capture files. A key generation part 102 generates keys including SIP parameters of VoIP packets stored in the capture files, for each Call-ID and stores the keys into the per-minute key files. A key update part 103 adds an SIP parameter of a key newly stored, to keys stored in a key file wherein a key having the same Call-ID as the key newly stored has been first stored. A data management part 105 sorts VoIP packets stored in the capture files by Call-ID and stores them into the per-minute data files. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、呼制御データ検索システム及び呼制御データ検索プログラムに関するものである。本発明は、特に、VoIP(Voice・over・Internet・Protocol)の呼制御データ(「呼情報」ともいう)の高速検索方式に関するものである。   The present invention relates to a call control data search system and a call control data search program. The present invention particularly relates to a high-speed search method for call control data (also referred to as “call information”) of VoIP (Voice over Internet Internet Protocol).

VoIPサービスを展開するIP(Internet・Protocol)ネットワークにおいて、複数のキャプチャ装置から収集した制御信号である通信データ全てに対し、Call−IDに基づいて各通信データを呼処理ごとに分離し、分離した通信データを検索して同一の呼処理に関する通信データを連結し、発信端末から着信端末までの全ての制御信号シーケンスを生成する技術が公知である(例えば、特許文献1参照)。
特開2004−248192号公報
In an IP (Internet Protocol) network that develops a VoIP service, for each communication data that is a control signal collected from a plurality of capture devices, each communication data is separated for each call processing based on Call-ID, and separated. A technique for searching for communication data, connecting communication data related to the same call processing, and generating all control signal sequences from a transmitting terminal to a receiving terminal is known (for example, see Patent Document 1).
JP 2004-248192 A

上記のような従来のキャプチャ装置では、SIP(Session・Initiation・Protocol)メッセージなどを含むVoIPパケットをキャプチャした後、キャプチャしたデータを単にファイルなどに蓄積しておくだけであった。そのため、VoIPパケットを検索する際には、逐一パケットを解析してからでなければ、検索条件に一致するデータを抽出することができないという課題があった。しかも、大量のデータから目的のパケットを検索しなければならないため、性能に課題があった。   In the conventional capture device as described above, after capturing a VoIP packet including a SIP (Session Initiation Protocol) message or the like, the captured data is simply stored in a file or the like. Therefore, when searching for a VoIP packet, there is a problem that data matching the search condition cannot be extracted unless the packet is analyzed one by one. In addition, there is a problem in performance because a target packet must be searched from a large amount of data.

VoIPの代表的なアプリケーションであるIP電話が普及していない段階では、トラブル発生時に試験呼を流してパケット解析を行うといった方法が主流であったため、上記のような従来方法でも性能的にほとんど問題は発生しなかった。しかしながら、IP電話が普及し、加入者が増加すると同時に、従来の電話網と同等の信頼性が求められる状況では、トラブル発生時に、リアルタイムに発生する大量のVoIPパケットの中からトラブルの原因となったパケットを効率的に検出して、そのトラブルに迅速に対処する必要が生じている。   At the stage where IP telephones, which are typical applications of VoIP, are not widespread, the method of sending a test call and analyzing packets when a trouble occurs is the mainstream, so even the conventional method as described above has almost no problem in performance. Did not occur. However, in the situation where IP phones have become widespread and the number of subscribers has increased, and at the same time, reliability equivalent to that of the conventional telephone network is required, the trouble can be caused by a large amount of VoIP packets generated in real time. There is a need to efficiently detect lost packets and quickly deal with the troubles.

本発明は、例えば、リアルタイムに発生する大量の呼制御データの中から所定の条件に一致するものを効率的に抽出することを目的とする。   An object of the present invention is to efficiently extract, for example, data matching a predetermined condition from a large amount of call control data generated in real time.

本発明の一の態様に係る呼制御データ検索システムは、
ファイルを記憶する記憶装置と、データを処理する処理装置と、データを入力する入力装置とを備える呼制御データ検索システムにおいて、
呼を一意に識別する呼識別子と呼の属性を示す少なくとも1つの属性データとを含む呼制御データをネットワークからキャプチャし、キャプチャした呼制御データを単位時間Tcごとに記憶装置内の単位時間Tcごとのキャプチャファイルに保存するデータキャプチャ部と、
前記データキャプチャ部によりキャプチャファイルに保存された呼制御データの属性データを含むキーを、処理装置を用いて、当該呼制御データの呼識別子ごとに生成し、生成したキーを記憶装置内の単位時間Tkごとのキーファイルに保存するキー生成部と、
前記キー生成部によりキーファイルにキーが保存されるときに、処理装置を用いて、過去のキーファイルに当該キーの呼識別子と同じ呼識別子に対応するキーが保存されているかどうかを判定し、当該過去のキーファイルに当該呼識別子のキーが保存されている場合には、当該過去のキーファイルに保存されている当該呼識別子のキーに、前記キー生成部によりキーファイルに保存される当該呼識別子のキーの属性データを追加するキー更新部と、
前記データキャプチャ部によりキャプチャファイルに保存された呼制御データを、所定の形式で、記憶装置内の単位時間Tdごとのデータファイルに保存するデータ管理部と、
入力装置を用いて、任意の時刻を入力する入力部と、
処理装置を用いて、前記入力部により入力された時刻に対応するキーファイルを検索し、キーを抽出するキー検索部と、
処理装置を用いて、データファイルを検索し、前記キー検索部により抽出されたキーの呼識別子と同じ呼識別子を含む呼制御データを抽出するデータ検索部とを備えることを特徴とする。
A call control data retrieval system according to an aspect of the present invention includes:
In a call control data retrieval system comprising a storage device for storing a file, a processing device for processing data, and an input device for inputting data,
Call control data including a call identifier for uniquely identifying a call and at least one attribute data indicating a call attribute is captured from the network, and the captured call control data is stored for each unit time Tc in the storage device for each unit time Tc. A data capture section to save to a capture file of
A key including attribute data of call control data stored in a capture file by the data capture unit is generated for each call identifier of the call control data using a processing device, and the generated key is stored in a unit time in a storage device. A key generation unit that saves the key file for each Tk;
When a key is stored in a key file by the key generation unit, using a processing device, it is determined whether a key corresponding to the same call identifier as the call identifier of the key is stored in a past key file, If the call identifier key is stored in the past key file, the call generator stores the call identifier stored in the key file by the key generation unit. A key update unit for adding attribute data of an identifier key;
A data management unit for storing call control data stored in a capture file by the data capture unit in a predetermined format in a data file for each unit time Td in the storage device;
An input unit for inputting an arbitrary time using an input device;
Using a processing device, search for a key file corresponding to the time input by the input unit, and extract a key;
A data search unit that searches for a data file using a processing device and extracts call control data that includes the same call identifier as the call identifier of the key extracted by the key search unit;

前記入力部は、入力装置を用いて、任意の時刻と少なくとも1つの属性データとを入力し、
前記キー検索部は、前記入力部により入力された時刻に対応するキーファイルを検索し、前記入力部により入力された属性データを含むキーを抽出することを特徴とする。
The input unit inputs an arbitrary time and at least one attribute data using an input device,
The key search unit searches for a key file corresponding to the time input by the input unit, and extracts a key including attribute data input by the input unit.

前記キー更新部は、前記キー生成部によりキーファイルにキーが保存されるときに、処理装置を用いて、過去のキーファイルであって当該キーの呼識別子と同じ呼識別子に対応するキーが最初に保存されたキーファイルを検出し、検出した過去のキーファイルに保存されている当該呼識別子のキーに、前記キー生成部によりキーファイルに保存される当該呼識別子のキーの属性データを追加し、
前記入力部は、任意の時刻として呼の開始時刻を入力することを特徴とする。
When the key is stored in the key file by the key generation unit, the key update unit uses a processing device to first select a key corresponding to the same call identifier as the call identifier of the key in the past key file. The key identifier stored in the key identifier stored in the key file by the key generation unit is added to the key of the call identifier stored in the detected past key file. ,
The input unit inputs a call start time as an arbitrary time.

単位時間Tcと単位時間Tkと単位時間Tdとは、いずれも同じ長さであることを特徴とする。   The unit time Tc, the unit time Tk, and the unit time Td are all the same length.

前記データ管理部は、前記データキャプチャ部によりキャプチャファイルに保存された呼制御データを、当該呼制御データの呼識別子ごとにまとめて保存し、
前記呼制御データ検索システムは、さらに、
前記データ管理部によりデータファイルに呼制御データが保存された位置を示すアドレスを、処理装置を用いて、当該呼制御データの呼識別子ごとに生成し、生成したアドレスを記憶装置内の単位時間Taごとのアドレスファイルに保存するアドレス生成部と、
処理装置を用いて、アドレスファイルを検索し、前記キー検索部により抽出されたキーの呼識別子と同じ呼識別子に対応するアドレスを抽出するアドレス検索部とを備え、
前記データ検索部は、前記アドレス検索部により抽出されたアドレスが示す位置から、前記キー検索部により抽出されたキーの呼識別子と同じ呼識別子を含む呼制御データを抽出することを特徴とする。
The data management unit stores the call control data saved in the capture file by the data capture unit together for each call identifier of the call control data,
The call control data retrieval system further includes:
An address indicating the location where the call control data is stored in the data file by the data management unit is generated for each call identifier of the call control data using the processing device, and the generated address is stored in the unit time Ta in the storage device. An address generator to be stored in each address file;
An address search unit that searches for an address file using a processing device and extracts an address corresponding to the same call identifier as the call identifier of the key extracted by the key search unit;
The data search unit extracts call control data including the same call identifier as the call identifier of the key extracted by the key search unit from the position indicated by the address extracted by the address search unit.

単位時間Tcと単位時間Tkと単位時間Taと単位時間Tdとは、いずれも同じ長さであることを特徴とする。   The unit time Tc, the unit time Tk, the unit time Ta, and the unit time Td are all the same length.

本発明の一の態様に係る呼制御データ検索プログラムは、
ファイルを記憶する記憶装置と、データを処理する処理装置と、データを入力する入力装置とを備えるコンピュータに、
呼を一意に識別する呼識別子と呼の属性を示す少なくとも1つの属性データとを含む呼制御データをネットワークからキャプチャし、キャプチャした呼制御データを単位時間Tcごとに記憶装置内の単位時間Tcごとのキャプチャファイルに保存するデータキャプチャ処理と、
前記データキャプチャ処理によりキャプチャファイルに保存された呼制御データの属性データを含むキーを、処理装置を用いて、当該呼制御データの呼識別子ごとに生成し、生成したキーを記憶装置内の単位時間Tkごとのキーファイルに保存するキー生成処理と、
前記キー生成処理によりキーファイルにキーが保存されるときに、処理装置を用いて、過去のキーファイルに当該キーの呼識別子と同じ呼識別子に対応するキーが保存されているかどうかを判定し、当該過去のキーファイルに当該呼識別子のキーが保存されている場合には、当該過去のキーファイルに保存されている当該呼識別子のキーに、前記キー生成処理によりキーファイルに保存される当該呼識別子のキーの属性データを追加するキー更新処理と、
前記データキャプチャ処理によりキャプチャファイルに保存された呼制御データを、所定の形式で、記憶装置内の単位時間Tdごとのデータファイルに保存するデータ管理処理と、
入力装置を用いて、任意の時刻を入力する入力処理と、
処理装置を用いて、前記入力処理により入力された時刻に対応するキーファイルを検索し、キーを抽出するキー検索処理と、
処理装置を用いて、データファイルを検索し、前記キー検索処理により抽出されたキーの呼識別子と同じ呼識別子を含む呼制御データを抽出するデータ検索処理とを実行させることを特徴とする。
A call control data search program according to one aspect of the present invention includes:
In a computer comprising a storage device for storing a file, a processing device for processing data, and an input device for inputting data,
Call control data including a call identifier for uniquely identifying a call and at least one attribute data indicating a call attribute is captured from the network, and the captured call control data is stored for each unit time Tc in the storage device for each unit time Tc. Data capture process to save to a capture file of
A key including the attribute data of the call control data stored in the capture file by the data capture process is generated for each call identifier of the call control data using the processing device, and the generated key is stored in a unit time in the storage device. Key generation processing to be stored in a key file for each Tk;
When a key is stored in the key file by the key generation process, the processing device is used to determine whether or not a key corresponding to the same call identifier as the call identifier of the key is stored in the past key file, If the key of the call identifier is stored in the past key file, the call stored in the key file by the key generation process is added to the key of the call identifier stored in the past key file. Key update processing to add identifier key attribute data,
A data management process for storing the call control data stored in the capture file by the data capture process in a data file for each unit time Td in the storage device in a predetermined format;
An input process for inputting an arbitrary time using an input device;
Using a processing device, search for a key file corresponding to the time input by the input process, and extract a key;
Data processing is performed by retrieving a data file using a processing device and extracting call control data including the same call identifier as the key call identifier extracted by the key retrieval processing.

本発明の一の態様によれば、呼制御データ検索システムにおいて、データキャプチャ部が、ネットワークからキャプチャした呼制御データを単位時間Tcごとにキャプチャファイルに保存し、キー生成部が、キャプチャファイルに保存された呼制御データの属性データを含むキーであって、当該呼制御データの呼識別子ごとに生成したキーを単位時間Tkごとのキーファイルに保存し、キー更新部が、キーファイルにキーが保存されるときに、過去のキーファイルに当該キーの呼識別子と同じ呼識別子に対応するキーが保存されている場合には、当該過去のキーファイルに保存されている当該呼識別子のキーに、キーファイルに保存される当該呼識別子のキーの属性データを追加することにより、リアルタイムに発生する大量の呼制御データの中から所定の条件に一致するものを効率的に抽出することが可能となる。   According to one aspect of the present invention, in the call control data search system, the data capture unit stores call control data captured from the network in a capture file for each unit time Tc, and the key generation unit stores in the capture file. The key including the attribute data of the call control data that has been generated, the key generated for each call identifier of the call control data is stored in the key file for each unit time Tk, and the key update unit stores the key in the key file When a key corresponding to the same call identifier as the call identifier of the key is stored in the past key file, the key of the call identifier stored in the past key file is Large amount of call control data generated in real time by adding key attribute data of the call identifier stored in the file It is possible to efficiently extract a match with a predetermined condition from among.

以下、本発明の実施の形態について、図を用いて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

実施の形態1.
まず、本実施の形態に係るシステム(以下、「呼制御データ検索システム」という)の構成について説明する。
Embodiment 1 FIG.
First, the configuration of a system according to the present embodiment (hereinafter referred to as “call control data search system”) will be described.

図1は、呼制御データ検索システム100の構成を示すブロック図である。   FIG. 1 is a block diagram showing the configuration of the call control data search system 100.

図1において、呼制御データ検索システム100は、VoIPネットワーク200(ネットワークの一例)を流れるVoIPパケットを常時キャプチャファイルにキャプチャしている装置である。呼制御データ検索システム100は、一定間隔でキャプチャファイルを移動(ファイル名を変更して複写)し、移動(複写)したキャプチャファイルから、Call−IDごとに呼を抽出する。そして、検索用のキー情報(以下、単に「キー」という)を含むキーファイル、検索用データが保存された位置を示すデータ位置情報(以下、「アドレス」という)を含むアドレスファイル、検索用データとしてVoIPパケットを含むデータファイルを作成する。これにより、呼制御データ検索システム100は、検索端末300(端末装置の一例)から呼の検索要求があった場合に、その検索要求を受け付け、VoIPパケットの高速検索を行い、その検索結果を検索端末300に返すことができる。   In FIG. 1, a call control data search system 100 is a device that always captures a VoIP packet flowing through a VoIP network 200 (an example of a network) in a capture file. The call control data retrieval system 100 moves the capture file at a fixed interval (changes the file name and copies it), and extracts a call for each Call-ID from the moved (copied) capture file. A key file including key information for search (hereinafter simply referred to as “key”), an address file including data position information (hereinafter referred to as “address”) indicating a position where the search data is stored, and search data A data file including a VoIP packet is created. As a result, when there is a call search request from the search terminal 300 (an example of a terminal device), the call control data search system 100 accepts the search request, performs a high-speed search for the VoIP packet, and searches the search result. It can be returned to the terminal 300.

このように、呼制御データ検索システム100は、常時行っているキャプチャと並行して、高速検索に必要な情報を生成することで、VoIPネットワーク200内の大量データを欠落なく収集することと、大量データ内からの高速検索とを両立することができる。   As described above, the call control data search system 100 collects a large amount of data in the VoIP network 200 without omission by generating information necessary for high-speed search in parallel with the capture that is always performed, Both high-speed search from the data can be achieved.

呼制御データ検索システム100は、データキャプチャ部101、キー生成部102、キー更新部103、アドレス生成部104、データ管理部105、入力部106、キー検索部107、アドレス検索部108、データ検索部109、出力部110を備える。また、呼制御データ検索システム100は、記憶装置151、処理装置152、入力装置153、出力装置154などのハードウェア装置(「ハードウェア資源」ともいう)を備える(又はこれらのハードウェア装置が呼制御データ検索システム100に接続される)。ハードウェア装置は呼制御データ検索システム100の各部によって利用される。   The call control data search system 100 includes a data capture unit 101, a key generation unit 102, a key update unit 103, an address generation unit 104, a data management unit 105, an input unit 106, a key search unit 107, an address search unit 108, and a data search unit. 109 and an output unit 110. The call control data search system 100 also includes hardware devices (also referred to as “hardware resources”) such as the storage device 151, the processing device 152, the input device 153, and the output device 154 (or these hardware devices are called by the call device). Connected to the control data retrieval system 100). The hardware device is used by each part of the call control data retrieval system 100.

以下、各ハードウェア装置の機能について説明する。   Hereinafter, the function of each hardware device will be described.

記憶装置151は、データや情報を含むファイルを記憶する。記憶装置151は、呼制御データ検索システム100の各部がデータや情報をファイルに保存したり、ファイルを検索したり、ファイルからデータや情報を読み出したりする場合に利用される。   The storage device 151 stores a file including data and information. The storage device 151 is used when each unit of the call control data search system 100 stores data and information in a file, searches for a file, and reads data and information from a file.

処理装置152は、データや情報を処理する。処理装置152は、呼制御データ検索システム100の各部がデータや情報の演算、加工、記憶装置151からの読み取り、記憶装置151内の検索、記憶装置151への書き込みなどを行う場合に利用される。   The processing device 152 processes data and information. The processing device 152 is used when each unit of the call control data search system 100 performs calculation and processing of data and information, reading from the storage device 151, searching in the storage device 151, writing to the storage device 151, and the like. .

入力装置153は、データや情報を入力する。入力装置153は、呼制御データ検索システム100の各部がデータや情報を呼制御データ検索システム100の外部から入力する場合に利用される。   The input device 153 inputs data and information. The input device 153 is used when each unit of the call control data search system 100 inputs data and information from the outside of the call control data search system 100.

出力装置154は、データや情報を出力する。出力装置154は、呼制御データ検索システム100の各部がデータや情報を呼制御データ検索システム100の外部へ出力する場合に利用される。   The output device 154 outputs data and information. The output device 154 is used when each unit of the call control data search system 100 outputs data and information to the outside of the call control data search system 100.

以下、呼制御データ検索システム100の各部の機能について説明する。   Hereinafter, functions of each unit of the call control data search system 100 will be described.

データキャプチャ部101は、VoIPパケットをVoIPネットワーク200からキャプチャし、キャプチャしたVoIPパケットを単位時間Tcごとに記憶装置151内のキャプチャファイルに保存する。このとき、データキャプチャ部101は、単位時間Tcごとに別々のキャプチャファイルを作成し、キャプチャしたVoIPパケットを単位時間Tcごとのキャプチャファイルに保存する。例えば、Tc=1分とした場合、データキャプチャ部101は、VoIPネットワーク200から常時キャプチャしているVoIPパケットを1分ごとに、1分ごとのキャプチャファイルに保存する。ここで、VoIPパケットは、呼制御データの一例であり、Call−IDを含むとともに、その他のSIPパラメータを少なくとも1つ含むものである。Call−IDは、呼を一意に識別する呼識別子の一例である。Call−ID以外のSIPパラメータ(以下、単に「SIPパラメータ」という)は、呼の属性を示す属性データの一例である。   The data capture unit 101 captures a VoIP packet from the VoIP network 200, and stores the captured VoIP packet in a capture file in the storage device 151 for each unit time Tc. At this time, the data capture unit 101 creates a separate capture file for each unit time Tc, and stores the captured VoIP packet in a capture file for each unit time Tc. For example, when Tc = 1 minute, the data capture unit 101 saves a VoIP packet that is constantly captured from the VoIP network 200 in a capture file for each minute every minute. Here, the VoIP packet is an example of call control data, and includes a Call-ID and at least one other SIP parameter. Call-ID is an example of a call identifier that uniquely identifies a call. SIP parameters other than Call-ID (hereinafter simply referred to as “SIP parameters”) are an example of attribute data indicating call attributes.

キー生成部102は、データキャプチャ部101によりキャプチャファイルに保存されたVoIPパケットのSIPパラメータを含むキーを、処理装置152を用いて、当該VoIPパケットのCall−IDごとに生成し、生成したキーを記憶装置151内のキーファイルに保存する。このとき、キー生成部102は、単位時間Tkごとに別々のキーファイルを作成し、生成したキーを単位時間Tkごとのキーファイルに保存する。例えば、Tc=Tk=1分とした場合、データキャプチャ部101が1分間にキャプチャしたVoIPパケットを1つのキャプチャファイルに保存した後、キー生成部102は、そのキャプチャファイルからVoIPパケットを全て読み出し、読み出したVoIPパケットのそれぞれに含まれるCall−IDとSIPパラメータの組み合わせを抽出する。そして、抽出したCall−IDとSIPパラメータの各組み合わせをCall−IDごとのキーとして、1分ごとのキーファイルに保存する。単位時間Tcと単位時間Tkは長さを異にしてもよいが、この例のように同じ長さとすることが望ましい。   The key generation unit 102 generates a key including the SIP parameter of the VoIP packet stored in the capture file by the data capture unit 101 for each Call-ID of the VoIP packet using the processing device 152, and generates the generated key. The data is stored in a key file in the storage device 151. At this time, the key generation unit 102 creates a separate key file for each unit time Tk, and stores the generated key in the key file for each unit time Tk. For example, when Tc = Tk = 1 minute, after storing the VoIP packet captured by the data capture unit 101 in one minute in one capture file, the key generation unit 102 reads all the VoIP packets from the capture file, A combination of Call-ID and SIP parameter included in each of the read VoIP packets is extracted. Then, each combination of the extracted Call-ID and SIP parameter is stored in a key file for each minute as a key for each Call-ID. The unit time Tc and the unit time Tk may have different lengths, but it is desirable that they have the same length as in this example.

キー更新部103は、キー生成部102によりキーファイルにキーが保存されるときに、処理装置152を用いて、過去のキーファイルに当該キーのCall−IDと同じCall−IDに対応するキーが保存されているかどうかを判定する。当該過去のキーファイルに当該Call−IDのキーが保存されている場合には、キー更新部103は、当該過去のキーファイルに保存されている当該Call−IDのキーに、キー生成部102によりキーファイルに保存される当該Call−IDのキーのSIPパラメータを追加する。本実施の形態では、キー更新部103は、処理装置152を用いて、キー生成部102によりキーファイルに保存されるキーのCall−IDと同じCall−IDに対応するキーが最初に保存されたキーファイルを、過去のキーファイルとして検出し、検出した過去のキーファイルに保存されている当該Call−IDのキーに、キー生成部102によりキーファイルに保存される当該Call−IDのキーのSIPパラメータを追加する。例えば、キー生成部102が1つのVoIPパケットから抽出したCall−IDとSIPパラメータの組み合わせを、そのCall−IDに対応するキーとして1つのキーファイルに保存した後、キー更新部103は、同じCall−IDに対応するキーが過去のキーファイルにも保存されていないかどうか確認する。同じCall−IDに対応するキーが保存されている過去のキーファイルがある場合、キー更新部103は、同じCall−IDに対応するキーが最初に保存されたキーファイル、即ち、該当する過去のキーファイルで最も古いものを検出する。そして、検出したキーファイル内の同じCall−IDに対応するキーに、キー生成部102が今回保存したキーに含まれるSIPパラメータを追加する。   When the key generation unit 102 stores the key in the key file, the key update unit 103 uses the processing device 152 to store a key corresponding to the same Call-ID as the Call-ID of the key in the past key file. Determine if saved. When the Call-ID key is stored in the past key file, the key update unit 103 adds the Call-ID key stored in the past key file to the key generation unit 102. The SIP parameter of the Call-ID key stored in the key file is added. In the present embodiment, using the processing device 152, the key update unit 103 first stores a key corresponding to the same Call-ID as the Call-ID of the key stored in the key file by the key generation unit 102. The key file is detected as a past key file, and the SIP of the Call-ID key stored in the key file by the key generation unit 102 is added to the Call-ID key stored in the detected past key file. Add a parameter. For example, after storing the combination of Call-ID and SIP parameters extracted from one VoIP packet by the key generation unit 102 in one key file as a key corresponding to the Call-ID, the key update unit 103 uses the same Call. -Check whether the key corresponding to the ID is stored in the past key file. When there is a past key file in which a key corresponding to the same Call-ID is stored, the key update unit 103 first stores a key file in which a key corresponding to the same Call-ID is first stored, that is, the corresponding past file. Detect the oldest key file. Then, the SIP parameter included in the key stored this time by the key generation unit 102 is added to the key corresponding to the same Call-ID in the detected key file.

データ管理部105は、データキャプチャ部101によりキャプチャファイルに保存されたVoIPパケットを、所定の形式で、記憶装置151内のデータファイルに保存する。本実施の形態では、データ管理部105は、データキャプチャ部101によりキャプチャファイルに保存されたVoIPパケットを、当該VoIPパケットのCall−IDごとにまとめて保存する。このとき、データ管理部105は、単位時間Tdごとに別々のデータファイルを作成し、VoIPパケットを単位時間Tdごとのデータファイルに保存する。例えば、Tc=Td=1分とした場合、データキャプチャ部101が1分間にキャプチャしたVoIPパケットを1つのキャプチャファイルに保存した後、データ管理部105は、そのキャプチャファイルからVoIPパケットを全て読み出し、読み出したVoIPパケットのそれぞれに含まれるCall−IDを抽出する。また、読み出したVoIPパケットを、抽出したCall−IDごとにまとめる。そして、抽出したCall−IDのハッシュ値を計算し、Call−IDごとにまとめたVoIPパケットを、計算したハッシュ値に基づいて(例えば、Call−IDのハッシュ値の若い順に)1分ごとのデータファイル内に保存する。単位時間Tcと単位時間Tdは長さを異にしてもよいが、この例のように同じ長さとすることが望ましい。   The data management unit 105 saves the VoIP packet saved in the capture file by the data capture unit 101 in a data file in the storage device 151 in a predetermined format. In the present embodiment, the data management unit 105 collectively stores the VoIP packets stored in the capture file by the data capture unit 101 for each Call-ID of the VoIP packet. At this time, the data management unit 105 creates a separate data file for each unit time Td, and stores the VoIP packet in the data file for each unit time Td. For example, when Tc = Td = 1 minute, after storing the VoIP packet captured by the data capture unit 101 for one minute in one capture file, the data management unit 105 reads all the VoIP packets from the capture file, The Call-ID included in each of the read VoIP packets is extracted. In addition, the read VoIP packets are collected for each extracted Call-ID. Then, the hash value of the extracted Call-ID is calculated, and the VoIP packets collected for each Call-ID are calculated based on the calculated hash value (for example, in ascending order of the hash value of the Call-ID). Save it in a file. The unit time Tc and the unit time Td may have different lengths, but it is desirable to have the same length as in this example.

アドレス生成部104は、データ管理部105によりデータファイルにVoIPパケットが保存された位置(データファイル内でのVoIPパケットの位置)を示すアドレスを、処理装置152を用いて、当該VoIPパケットのCall−IDごとに生成して記憶装置151内のアドレスファイルに保存する(ここで、生成されるアドレスには、番地などを指す一般的なアドレスだけでなく、VoIPパケットのサイズなど、VoIPパケットの位置を示す様々な情報を含めるものとする)。このとき、アドレス生成部104は、単位時間Taごとに別々のアドレスファイルを作成し、アドレスを単位時間Taごとのアドレスファイルに保存する。例えば、Tc=Td=Ta=1分とした場合、データ管理部105が1分間にキャプチャされたVoIPパケットを1つのデータファイルに保存した後、アドレス生成部104は、そのデータファイルのどの位置にVoIPパケットが保存されているか(以下、「保存位置」という)を、Call−IDごとに特定する。さらに、Call−IDごとに、そのCall−IDを含むVoIPパケットのサイズの合計(以下、「サイズ情報」という)と、特定した保存位置の先頭(そのCall−IDを含むVoIPパケットのうち、データファイル内で一番前に保存されているVoIPパケット)を指すポインタ(データファイル内のオフセット値)を組み合わせ、この組み合わせをそのCall−IDのハッシュ値に対応するアドレスとして、1分ごとのアドレスファイルに保存する。単位時間Tcと単位時間Tdと単位時間Taは長さを異にしてもよいが、この例のように同じ長さとすることが望ましい。   The address generation unit 104 uses the processing device 152 to call the address indicating the position where the VoIP packet is stored in the data file by the data management unit 105 (the position of the VoIP packet in the data file). Generated for each ID and stored in an address file in the storage device 151 (here, the generated address includes not only a general address indicating an address, but also the position of the VoIP packet such as the size of the VoIP packet). Include various information shown). At this time, the address generation unit 104 creates a separate address file for each unit time Ta, and stores the address in the address file for each unit time Ta. For example, when Tc = Td = Ta = 1 minute, after the data management unit 105 saves the VoIP packet captured in one minute in one data file, the address generation unit 104 may specify the position of the data file. Whether the VoIP packet is stored (hereinafter referred to as “storage location”) is specified for each Call-ID. Further, for each Call-ID, the total size of the VoIP packet including the Call-ID (hereinafter referred to as “size information”) and the head of the specified storage location (of the VoIP packet including the Call-ID, data A pointer (offset value in the data file) pointing to the earliest VoIP packet in the file is combined, and this combination is used as an address corresponding to the hash value of the Call-ID, and the address file for each minute Save to. The unit time Tc, the unit time Td, and the unit time Ta may have different lengths, but it is desirable that they have the same length as in this example.

入力部106は、入力装置153を用いて、検索端末300が指定する任意の時刻を入力するとともに、検索端末300が指定するSIPパラメータを少なくとも1つ入力する。本実施の形態では、入力部106は、任意の時刻として呼の開始時刻を入力する。検索端末300がCall−IDを指定する場合には、入力部106は、SIPパラメータの代わりに、あるいは、SIPパラメータとともにそのCall−IDを入力してもよい。検索端末300が検索の対象とする時間帯(呼が開始された時間帯)を指定する場合には、入力部106は、任意の時刻としてその時間帯を入力してもよい。   The input unit 106 uses the input device 153 to input an arbitrary time specified by the search terminal 300 and input at least one SIP parameter specified by the search terminal 300. In the present embodiment, input unit 106 inputs a call start time as an arbitrary time. When the search terminal 300 specifies the Call-ID, the input unit 106 may input the Call-ID instead of the SIP parameter or together with the SIP parameter. When the search terminal 300 designates a time zone to be searched (a time zone when a call is started), the input unit 106 may input the time zone as an arbitrary time.

キー検索部107は、処理装置152を用いて、入力部106により入力された時刻に対応するキーファイルを検索し、入力部106により入力されたSIPパラメータを含むキーを抽出する。入力部106がCall−IDを入力した場合には、キー検索部107は、そのCall−IDに対応するキーを抽出する。入力部106が任意の時刻として時間帯を入力した場合には、キー検索部107は、その時間帯に対応するキーファイルを全て検索する。   The key search unit 107 searches for a key file corresponding to the time input by the input unit 106 using the processing device 152, and extracts a key including the SIP parameter input by the input unit 106. When the input unit 106 inputs a Call-ID, the key search unit 107 extracts a key corresponding to the Call-ID. When the input unit 106 inputs a time zone as an arbitrary time, the key search unit 107 searches all key files corresponding to the time zone.

アドレス検索部108は、処理装置152を用いて、アドレスファイルを検索し、キー検索部107により抽出されたキーのCall−IDと同じCall−IDに対応するアドレスを抽出する。   The address search unit 108 uses the processing device 152 to search the address file, and extracts an address corresponding to the same Call-ID as the Call-ID of the key extracted by the key search unit 107.

データ検索部109は、処理装置152を用いて、データファイルを検索し、キー検索部107により抽出されたキーのCall−IDと同じCall−IDを含むVoIPパケットを抽出する。本実施の形態では、データ検索部109は、アドレス検索部108により抽出されたアドレスが示す位置から、キー検索部107により抽出されたキーのCall−IDと同じCall−IDを含むVoIPパケットを抽出する。   The data search unit 109 searches the data file using the processing device 152 and extracts a VoIP packet including the same Call-ID as the Call-ID of the key extracted by the key search unit 107. In the present embodiment, the data search unit 109 extracts a VoIP packet including the same Call-ID as the Call-ID of the key extracted by the key search unit 107 from the position indicated by the address extracted by the address search unit 108. To do.

出力部110は、出力装置154を用いて、データ検索部109により抽出されたVoIPパケット、あるいは、そのVoIPパケットに含まれるCall−IDやSIPパラメータの一覧などを検索端末300に対して出力する。   Using the output device 154, the output unit 110 outputs the VoIP packet extracted by the data search unit 109 or a list of Call-IDs and SIP parameters included in the VoIP packet to the search terminal 300.

図2は、呼制御データ検索システム100のハードウェア資源の一例を示す図である。   FIG. 2 is a diagram illustrating an example of hardware resources of the call control data search system 100.

図2において、呼制御データ検索システム100は、不図示のシステムユニット、CRT(Cathode・Ray・Tube)やLCD(液晶ディスプレイ)の表示画面を有する表示装置901、キーボード902(K/B)、マウス903、FDD904(Flexible・Disk・Drive)、CDD905(Compact・Disc・Drive)、プリンタ装置906などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。システムユニットは、コンピュータであり、LAN(ローカルエリアネットワーク)、ゲートウェイを介してインターネットに接続されている。   2, a call control data retrieval system 100 includes a system unit (not shown), a display device 901 having a display screen of a CRT (Cathode / Ray / Tube) or LCD (Liquid Crystal Display), a keyboard 902 (K / B), a mouse. 903, FDD904 (Flexible / Disk / Drive), CDD905 (Compact / Disc / Drive), and printer device 906 are provided, and these are connected by cables and signal lines. The system unit is a computer and is connected to the Internet via a LAN (local area network) and a gateway.

呼制御データ検索システム100は、プログラムを実行するCPU911(Central・Processing・Unit)(「演算装置」、「マイクロプロセッサ」、「マイクロコンピュータ」、「プロセッサ」ともいう)を備えている。CPU911は、処理装置152の一例である。CPU911は、バス912を介してROM913(Read・Only・Memory)、RAM914(Random・Access・Memory)、通信ボード915、表示装置901、キーボード902、マウス903、FDD904、CDD905、プリンタ装置906、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920の代わりに、光ディスク装置、メモリカードリーダライタなどの記憶媒体が用いられてもよい。   The call control data search system 100 includes a CPU 911 (Central Processing Unit) (also referred to as “arithmetic device”, “microprocessor”, “microcomputer”, “processor”) that executes a program. The CPU 911 is an example of the processing device 152. The CPU 911 includes a ROM 913 (Read / Only / Memory), a RAM 914 (Random / Access / Memory), a communication board 915, a display device 901, a keyboard 902, a mouse 903, an FDD904, a CDD905, a printer device 906, and a magnetic disk. It is connected to the device 920 and controls these hardware devices. Instead of the magnetic disk device 920, a storage medium such as an optical disk device or a memory card reader / writer may be used.

RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置151の一例である。通信ボード915、キーボード902、マウス903、FDD904、CDD905などは、入力装置153の一例である。また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置154の一例である。   The RAM 914 is an example of a volatile memory. The storage media of the ROM 913, the FDD 904, the CDD 905, and the magnetic disk device 920 are an example of a nonvolatile memory. These are examples of the storage device 151. The communication board 915, the keyboard 902, the mouse 903, the FDD 904, the CDD 905, and the like are examples of the input device 153. The communication board 915, the display device 901, the printer device 906, and the like are examples of the output device 154.

通信ボード915は、LANに限らず、インターネット、あるいは、IP−VPN(Internet・Protocol・Virtual・Private・Network)、広域LAN、ATM(Asynchronous・Transfer・Mode)ネットワークなどのWAN(ワイドエリアネットワーク)などに接続されていても構わない。   The communication board 915 is not limited to a LAN, but is the Internet, or an IP-VPN (Internet, Protocol, Private, Network), a wide area LAN, a WAN (Wide Area Network) such as an ATM (Asynchronous, Transfer, Mode) network, or the like. It does not matter if it is connected to.

磁気ディスク装置920には、オペレーティングシステム921(OS)、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921により実行される。プログラム群923には、本実施の形態の説明において「〜部」、「〜手段」として説明する機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。また、ファイル群924には、本実施の形態の説明において、「〜データ」、「〜情報」、「〜ID(IDentifier)」、「〜フラグ」、「〜結果」として説明するデータや情報や信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」や「〜テーブル」の各項目として記憶されている。「〜ファイル」や「〜データベース」や「〜テーブル」は、ディスクやメモリなどの記憶媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶されたデータや情報や信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・制御・出力・印刷・表示などのCPU911の処理(動作)に用いられる。抽出・検索・参照・比較・演算・計算・制御・出力・印刷・表示などのCPU911の処理中、データや情報や信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。   The magnetic disk device 920 stores an operating system 921 (OS), a program group 923, and a file group 924. The programs in the program group 923 are executed by the CPU 911 and the operating system 921. The program group 923 stores programs for executing functions described as “˜unit” and “˜means” in the description of the present embodiment. The program is read and executed by the CPU 911. The file group 924 includes data and information described as “˜data”, “˜information”, “˜ID (IDentifier)”, “˜flag”, “˜result” in the description of this embodiment. Signal values, variable values, and parameters are stored as items of “˜file”, “˜database”, and “˜table”. The “˜file”, “˜database”, and “˜table” are stored in a storage medium such as a disk or a memory. Data, information, signal values, variable values, and parameters stored in a storage medium such as a disk or memory are read out to the main memory or cache memory by the CPU 911 via a read / write circuit, and extracted, searched, referenced, compared, and calculated. Used for processing (operation) of the CPU 911 such as calculation / control / output / printing / display. Data, information, signal values, variable values, and parameters are temporarily stored in the main memory, cache memory, and buffer memory during processing of the CPU 911 such as extraction, search, reference, comparison, calculation, control, output, printing, and display. Is remembered.

また、本実施の形態の説明において説明するブロック図やフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号は、RAM914などのメモリ、FDD904のフレキシブルディスク(FD)、CDD905のコンパクトディスク(CD)、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク(MD)、DVD(Digital・Versatile・Disc)などの記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体により伝送される。   In the block diagrams and flowcharts described in the description of this embodiment, the arrows indicate mainly input and output of data and signals. Data and signals are stored in a memory such as a RAM 914, a flexible disk (FD) of the FDD 904, and a CDD 905. Recording is performed on a recording medium such as a compact disk (CD), a magnetic disk of the magnetic disk device 920, other optical disks, a mini disk (MD), and a DVD (Digital Versatile Disc). Data and signals are transmitted by a bus 912, a signal line, a cable, and other transmission media.

また、本実施の形態の説明において「〜部」、「〜手段」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜工程」、「〜手順」、「〜処理」であってもよい。即ち、「〜部」、「〜手段」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。あるいは、ソフトウェアのみ、あるいは、素子・デバイス・基板・配線などのハードウェアのみ、あるいは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実現されていても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVDなどの記録媒体に記憶される。このプログラムはCPU911により読み出され、CPU911により実行される。即ち、プログラムは、本実施の形態の説明で述べる「〜部」、「〜手段」としてコンピュータを機能させるものである。あるいは、本実施の形態の説明で述べる「〜部」、「〜手段」の手順や方法をコンピュータに実行させるものである。   In the description of the present embodiment, what is described as “to part” and “to means” may be “to circuit”, “to device”, and “to device”, and “to step”. , “˜step”, “˜procedure”, and “˜treatment”. That is, what is described as “˜unit” and “˜means” may be realized by firmware stored in the ROM 913. Alternatively, it may be realized only by software, or only by hardware such as an element, a device, a board, and wiring, or a combination of software and hardware, and further by a combination of firmware. Firmware and software are stored as programs in a recording medium such as a magnetic disk, flexible disk, optical disk, compact disk, minidisk, or DVD. This program is read by the CPU 911 and executed by the CPU 911. In other words, the program causes the computer to function as “to part” and “to means” described in the description of the present embodiment. Alternatively, the procedure or method of “˜unit” and “˜means” described in the description of the present embodiment is executed by a computer.

次に、呼制御データ検索システム100の動作について説明する。   Next, the operation of the call control data search system 100 will be described.

以下では、説明をより具体的にするため、呼制御データ検索システム100が図2に例示したコンピュータとハードウェア資源により実現されているものとする。また、キャプチャファイル、キーファイル、アドレスファイル、データファイルがそれぞれ保存される単位時間Tc、Tk、Ta、Tdをいずれも1分とする。   In the following, in order to make the description more specific, it is assumed that the call control data search system 100 is realized by the computer and hardware resources illustrated in FIG. The unit times Tc, Tk, Ta, and Td for storing the capture file, key file, address file, and data file are all 1 minute.

図3及び図4は、VoIPパケットをキャプチャしてから所定の形式で保存するまでの呼制御データ検索システム100の動作を示すフローチャートである。図5は、VoIPパケットを検索する際の呼制御データ検索システム100の動作を示すフローチャートである。   3 and 4 are flowcharts showing the operation of the call control data search system 100 from when a VoIP packet is captured to when it is stored in a predetermined format. FIG. 5 is a flowchart showing the operation of the call control data search system 100 when searching for a VoIP packet.

図3において、データキャプチャ部101は、通信ボード915を用いて、VoIPパケットをVoIPネットワーク200からキャプチャする(ステップS101)。そして、データキャプチャ部101は、ステップS101でキャプチャしたVoIPパケットを1分ごとに、磁気ディスク装置920内の1分ごとのキャプチャファイルに保存する(ステップS102)。   In FIG. 3, the data capture unit 101 captures a VoIP packet from the VoIP network 200 using the communication board 915 (step S101). Then, the data capture unit 101 stores the VoIP packet captured in step S101 in a capture file for each minute in the magnetic disk device 920 every minute (step S102).

キー生成部102は、ステップS102でキャプチャファイルに保存されたVoIPパケットのSIPパラメータを含むキーを、CPU911を用いて、当該VoIPパケットのCall−IDごとに生成する(ステップS103)。そして、キー生成部102は、ステップS103で生成したキーを、磁気ディスク装置920内の1分ごとのキーファイルに保存する(ステップS104)。キーファイルは、キー生成部102によって、1分ごとに生成される。   The key generation unit 102 generates a key including the SIP parameter of the VoIP packet stored in the capture file in step S102 for each Call-ID of the VoIP packet using the CPU 911 (step S103). The key generation unit 102 stores the key generated in step S103 in a key file for each minute in the magnetic disk device 920 (step S104). The key file is generated every minute by the key generation unit 102.

キー更新部103は、CPU911を用いて、過去のキーファイルに、ステップS104で今回新たに保存されたキーのCall−IDと同じCall−IDに対応するキーが保存されているかどうかを判定する(ステップS105)。キー更新部103は、ステップS105で同じCall−IDに対応するキーが過去のキーファイルにも保存されていると判定した場合、CPU911を用いて、ステップS104で今回新たに保存されたキーのCall−IDと同じCall−IDに対応するキーが最初に保存されたキーファイルを検出する。そして、そのキーファイルに保存されている同じCall−IDのキーに、ステップS104で今回新たに保存されたキーのSIPパラメータを追加する(ステップS106)。一方、キー更新部103は、ステップS105で同じCall−IDに対応するキーが過去のキーファイルには保存されていないと判定した場合、ステップS106の処理は実行しない。   Using the CPU 911, the key update unit 103 determines whether a key corresponding to the same Call-ID as the Call-ID of the key newly stored in step S104 is stored in the past key file ( Step S105). If the key update unit 103 determines in step S105 that the key corresponding to the same Call-ID is also stored in the past key file, the CPU 911 is used to call the key newly stored in step S104 this time. -The key file in which the key corresponding to the same Call-ID as the ID is stored first is detected. Then, the SIP parameter of the key newly saved in step S104 is added to the key of the same Call-ID saved in the key file (step S106). On the other hand, if the key update unit 103 determines in step S105 that the key corresponding to the same Call-ID is not stored in the past key file, the process of step S106 is not executed.

図4において、データ管理部105は、磁気ディスク装置920内の1分ごとのデータファイルにおいて、ステップS102でキャプチャファイルに保存されたVoIPパケットをCall−IDごとにまとめて保存する(ステップS201)。データファイルは、データ管理部105によって、1分ごとに生成される。   In FIG. 4, the data management unit 105 collectively stores the VoIP packets stored in the capture file in step S102 for each Call-ID in the data file every minute in the magnetic disk device 920 (step S201). The data file is generated every minute by the data management unit 105.

アドレス生成部104は、ステップS102でキャプチャファイルに保存されたVoIPパケットがステップS201で保存されたデータファイル内の位置を示すアドレス(データファイル内のオフセット値とVoIPパケットのサイズ)を、CPU911を用いて、Call−IDごとに生成する(ステップS202)。そして、アドレス生成部104は、ステップS202で生成したアドレスを、磁気ディスク装置920内の1分ごとのアドレスファイルに保存する(ステップS203)。アドレスファイルは、アドレス生成部104によって、1分ごとに生成される。   The address generation unit 104 uses the CPU 911 to use an address (an offset value in the data file and the size of the VoIP packet) indicating the position in the data file where the VoIP packet stored in the capture file in step S102 is stored in step S201. And generated for each Call-ID (step S202). The address generation unit 104 stores the address generated in step S202 in an address file for each minute in the magnetic disk device 920 (step S203). The address file is generated every minute by the address generation unit 104.

図5において、入力部106は、キーボード902やマウス903を用いて(検索端末300を呼制御データ検索システム100の一部とした場合)、あるいは、通信ボード915を用いて(検索端末300をネットワークによって呼制御データ検索システム100と接続した場合)、検索端末300が指定する呼の開始時刻とSIPパラメータを入力(受信)する(ステップS301)。   In FIG. 5, the input unit 106 uses a keyboard 902 and a mouse 903 (when the search terminal 300 is part of the call control data search system 100) or uses the communication board 915 (the search terminal 300 is connected to the network). When the call control data search system 100 is connected to the call control data, the call start time and SIP parameters specified by the search terminal 300 are input (received) (step S301).

キー検索部107は、CPU911を用いて、ステップS301で入力された時刻に対応するキーファイルを検索する(ステップS302)。そして、キー検索部107は、ステップS302で入力されたSIPパラメータを含むキーを抽出する(ステップS303)。   Using the CPU 911, the key search unit 107 searches for a key file corresponding to the time input in step S301 (step S302). Then, the key search unit 107 extracts a key including the SIP parameter input in step S302 (step S303).

アドレス検索部108は、CPU911を用いて、アドレスファイルを検索する(ステップS304)。そして、アドレス検索部108は、ステップS303で抽出されたキーのCall−IDと同じCall−IDに対応するアドレスを抽出する(ステップS305)。   The address search unit 108 uses the CPU 911 to search for an address file (step S304). The address search unit 108 extracts an address corresponding to the same Call-ID as the Call-ID of the key extracted in Step S303 (Step S305).

データ検索部109は、CPU911を用いて、データファイルを検索する(ステップS306)。そして、データ検索部109は、ステップS305で抽出されたアドレスが示す位置から、ステップS303で抽出されたキーのCall−IDと同じCall−IDを含むVoIPパケットを抽出する(ステップS307)。   The data search unit 109 searches for a data file using the CPU 911 (step S306). Then, the data search unit 109 extracts a VoIP packet including the same Call-ID as the Call-ID of the key extracted in Step S303 from the position indicated by the address extracted in Step S305 (Step S307).

出力部110は、表示装置901やプリンタ装置906を用いて(検索端末300を呼制御データ検索システム100の一部とした場合)、あるいは、通信ボード915を用いて(検索端末300をネットワークによって呼制御データ検索システム100と接続した場合)、ステップS307で抽出されたVoIPパケット、あるいは、そのVoIPパケットに含まれるCall−IDやSIPパラメータの一覧などを検索端末300に対して出力(送信)する(ステップS308)。   The output unit 110 uses the display device 901 and the printer device 906 (when the search terminal 300 is part of the call control data search system 100) or uses the communication board 915 (calls the search terminal 300 via the network). When connected to the control data search system 100), the VoIP packet extracted in step S307, or a Call-ID and a list of SIP parameters included in the VoIP packet are output (transmitted) to the search terminal 300 ( Step S308).

ここで、図3から図5までに示したフローチャートは、呼制御データ検索システム100を実現するコンピュータ上で実行されるプログラム(以下、「呼制御データ検索プログラム」という)の処理手順に相当する。この処理手順において、呼制御データ検索プログラムは、データキャプチャ処理、キー生成処理、キー更新処理、アドレス生成処理、データ管理処理、入力処理、キー検索処理、アドレス検索処理、データ検索処理、出力処理をコンピュータに実行させる。   Here, the flowcharts shown in FIG. 3 to FIG. 5 correspond to a processing procedure of a program (hereinafter referred to as “call control data search program”) executed on a computer that implements the call control data search system 100. In this processing procedure, the call control data search program performs data capture processing, key generation processing, key update processing, address generation processing, data management processing, input processing, key search processing, address search processing, data search processing, and output processing. Let the computer run.

図3のステップS101〜S102はデータキャプチャ処理の一例、ステップS103〜S104はキー生成処理の一例、ステップS105〜S106はキー更新処理の一例である。図4のステップS201はデータ管理処理の一例、ステップS202〜S203はアドレス生成処理の一例である。図5のステップS301は入力処理の一例、ステップS302〜S303はキー検索処理の一例、ステップS304〜S305はアドレス検索処理の一例、ステップS306〜S307はデータ検索処理の一例、ステップS308は出力処理の一例である。   Steps S101 to S102 in FIG. 3 are examples of data capture processing, steps S103 to S104 are examples of key generation processing, and steps S105 to S106 are examples of key update processing. Step S201 in FIG. 4 is an example of a data management process, and steps S202 to S203 are an example of an address generation process. 5 is an example of input processing, steps S302 to S303 are examples of key search processing, steps S304 to S305 are examples of address search processing, steps S306 to S307 are examples of data search processing, and step S308 is output processing. It is an example.

次に、上述した呼制御データ検索システム100の動作の詳細について、その一例を示す。   Next, an example of the details of the operation of the call control data search system 100 described above will be shown.

図6及び図7は、図3及び図4に示した呼制御データ検索システム100の動作の一例を示す概念図である。   6 and 7 are conceptual diagrams showing an example of the operation of the call control data search system 100 shown in FIGS.

図6において、データキャプチャ部101は、VoIPネットワーク200上を流れるトラヒックの中からSIPメッセージを含むデータ(即ち、VoIPパケット)を抽出し、抽出したデータを磁気ディスク装置920(記憶装置151の一例)に常時出力してキャプチャファイル501aに保存している(図3のステップS101に相当)。キー生成部102、アドレス生成部104、データ管理部105(以下、これらを合わせて「キー/データ生成部」という)は、データキャプチャ部101がキャプチャファイル501aの名称を変更する(キャプチャファイル501aを別名で保存する)ことにより生成するファイルを監視する。   In FIG. 6, the data capture unit 101 extracts data including a SIP message (that is, a VoIP packet) from the traffic flowing on the VoIP network 200, and the extracted data is a magnetic disk device 920 (an example of the storage device 151). Are always output and stored in the capture file 501a (corresponding to step S101 in FIG. 3). The key generation unit 102, the address generation unit 104, and the data management unit 105 (hereinafter collectively referred to as “key / data generation unit”) change the name of the capture file 501a (the capture file 501a is changed). Monitor the generated file by saving it under a different name.

このように、本実施の形態では、データキャプチャ部101とキー/データ生成部を分離することで、パケットのキャプチャ処理と、キーやアドレスやデータの生成処理や管理処理を並行して実施することが可能となる。   As described above, in this embodiment, by separating the data capture unit 101 and the key / data generation unit, the packet capture processing and the key / address / data generation processing and management processing are performed in parallel. Is possible.

図7において、データキャプチャ部101は、例えば2006年11月1日の10時15分00秒〜10時15分59秒にキャプチャしたVoIPパケットを含むキャプチャファイル501aのファイル名を、“2006−11−01”や“10:15”などの日時を示す文字列を含むものに変更し、2006年11月1日の10時15分00秒〜10時15分59秒のキャプチャファイル501bとして保存する(図3のステップS102に相当)。そして、キャプチャファイル501aに保存されているデータを消去した後、再度キャプチャを開始する。データキャプチャ部101が名称を変更したキャプチャファイル501bは、キー/データ生成部の処理対象となる。   In FIG. 7, the data capture unit 101 sets the file name of the capture file 501a including the VoIP packet captured at 10:15:00 to 10:15:59 on November 1, 2006, for example, as “2006-11”. Change to a file containing a date and time string such as “-01” or “10:15” and save it as a capture file 501b of 10: 15: 10-10: 15: 59 on November 1, 2006 (Corresponding to step S102 in FIG. 3). Then, after erasing data stored in the capture file 501a, capture is started again. The capture file 501b whose name is changed by the data capture unit 101 is a processing target of the key / data generation unit.

キー生成部102は、2006年11月1日の10時15分00秒〜10時15分59秒のキャプチャファイル501bを磁気ディスク装置920(記憶装置151の一例)から読み込み、このキャプチャファイル501bに保存されているVoIPパケットからCall−IDとSIPパラメータを抽出する。そして、それぞれのCall−IDとSIPパラメータの組み合わせをキーとして、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bを生成し、磁気ディスク装置920内に保存する(図3のステップS103〜S104に相当)。このキーファイル502bのファイル名にも、“2006−11−01”や“10:15”などの日時を示す文字列が含まれる。   The key generation unit 102 reads the capture file 501b of 10:15:00 to 10:15:59 on November 1, 2006 from the magnetic disk device 920 (an example of the storage device 151), and stores it in the capture file 501b. Call-ID and SIP parameters are extracted from the stored VoIP packet. Then, a key file 502b of 10:15:00 to 10:15:59 on November 1, 2006 is generated using the combination of each Call-ID and SIP parameter as a key, and is stored in the magnetic disk device 920. Save (corresponding to steps S103 to S104 in FIG. 3). The file name of the key file 502b also includes a character string indicating the date and time such as “2006-11-01” or “10:15”.

ここで、図8に示すように、キー生成部102が過去に、Call−IDが“A”でSIPパラメータが“X”となるキーを生成し、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存していたものとする。そして、2006年11月1日の9時45分より前のキーファイル502で、Call−IDが“A”のキーを含むものは存在しないものとする。さらに、キー生成部102が今回新たにCall−IDが“A”でSIPパラメータが“Y”となるキーを生成し、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bに保存したものとする。このとき、キー更新部103は、Call−IDと、キー生成部102がそのCall−IDのキーを最初に保存したキーファイル502を特定するためのファイル情報を、RAM914などのメモリ503上で管理している。ファイル情報には、例えば、各Call−IDに対応するキーが最初に保存されたキーファイル502へのポインタやそのキーファイル502の名称などが含まれている。キー更新部103は、このようなファイル情報を参照するために、キー生成部102が今回生成したキーのCall−IDでメモリ503を検索する(図3のステップS105に相当)。   Here, as shown in FIG. 8, the key generation unit 102 generates a key whose Call-ID is “A” and the SIP parameter is “X” in the past, and it is 9:45 on November 1, 2006. It is assumed that the file is stored in the key file 502a from 00 seconds to 9:45:59. It is assumed that none of the key files 502 before 9:45 on November 1, 2006 includes a key whose Call-ID is “A”. Further, the key generation unit 102 newly generates a key whose Call-ID is “A” and the SIP parameter is “Y” this time, 10:15:00 on November 1, 2006 to 10:15:59. It is assumed that it is stored in the second key file 502b. At this time, the key update unit 103 manages, on the memory 503 such as the RAM 914, the file information for specifying the Call-ID and the key file 502 in which the key generation unit 102 first stored the key of the Call-ID. is doing. The file information includes, for example, a pointer to the key file 502 in which the key corresponding to each Call-ID is first stored, the name of the key file 502, and the like. In order to refer to such file information, the key update unit 103 searches the memory 503 using the Call-ID of the key generated this time by the key generation unit 102 (corresponding to step S105 in FIG. 3).

今回生成されたキーのCall−IDは“A”であるため、図9に示すように、キー更新部103は、Call−IDを“A”としてメモリ503を検索し、このCall−IDに対応するファイル情報から2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aへのポインタやそのファイル名を参照する。そして、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aにアクセスし、このキーファイル502a内のCall−IDを“A”とするキーに、今回生成されたキーのSIPパラメータとして“Y”を追加する(図3のステップS106に相当)。その結果、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502a内のCall−IDを“A”とするキーが更新され、SIPパラメータとして“X”と“Y”を含むキーとなる。   Since the Call-ID of the key generated this time is “A”, as shown in FIG. 9, the key update unit 103 searches the memory 503 using Call-ID as “A”, and corresponds to this Call-ID. The pointer to the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 and the file name are referred to from the file information to be executed. Then, the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 is accessed, and this time, a key whose Call-ID in the key file 502a is “A” is generated. “Y” is added as the SIP parameter of the key thus obtained (corresponding to step S106 in FIG. 3). As a result, the key having the Call-ID “A” in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 is updated, and “X” is set as the SIP parameter. Keys that contain “Y”.

このように、本実施の形態では、Call−IDで識別される1つの呼に関連するVoIPパケットが、ファイルの作成間隔を跨って出現する場合であっても、同じCall−IDに対応する最初のキーに全てのSIPパラメータを含めることで、キーを用いた検索処理を実施する際に、最初のキーを参照するだけで該当するCall−IDに関わる全てのVoIPパケットを抽出することができる。その結果、高速検索が可能となる。   Thus, in this embodiment, even if a VoIP packet related to one call identified by Call-ID appears across the file creation interval, the first corresponding to the same Call-ID is used. By including all the SIP parameters in the key, it is possible to extract all the VoIP packets related to the corresponding Call-ID only by referring to the first key when performing the search process using the key. As a result, high speed search is possible.

前述したように、図7において、キー生成部102が、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bを生成した後、あるいは、それと並行して、データ管理部105は、2006年11月1日の10時15分00秒〜10時15分59秒のキャプチャファイル501bを磁気ディスク装置920(記憶装置151の一例)から読み込み、このキャプチャファイル501bに保存されているVoIPパケットを抽出する。そして、各VoIPパケットからCall−IDを抽出し、CPU911により、それぞれのCall−IDのハッシュ値を計算する。データ管理部105は、さらに、計算したハッシュ値に基づいて、各Call−IDを含むVoIPパケットの保存位置を決定し、決定した保存位置に各Call−IDのVoIPパケットがまとめて配置されるように、2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル505bを生成し、磁気ディスク装置920内に保存する(図4のステップS201に相当)。具体的には、データ管理部105は、それぞれのVoIPパケットをCall−IDのハッシュ値の昇順に並べたデータファイル505bを磁気ディスク装置920内に保存する。このデータファイル505bのファイル名にも、“2006−11−01”や“10:15”などの日時を示す文字列が含まれる。   As described above, in FIG. 7, the key generation unit 102 generates the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006, or in parallel therewith. The data management unit 105 reads the capture file 501b of 10:15:00 to 10:15:59 on November 1, 2006 from the magnetic disk device 920 (an example of the storage device 151), and this capture file 501b. The VoIP packet stored in is extracted. Then, the Call-ID is extracted from each VoIP packet, and the CPU 911 calculates the hash value of each Call-ID. Further, the data management unit 105 determines the storage location of the VoIP packet including each Call-ID based on the calculated hash value, and the VoIP packets of each Call-ID are collectively arranged at the determined storage location. In addition, a data file 505b of 10:15:00 to 10:15:59 on November 1, 2006 is generated and stored in the magnetic disk device 920 (corresponding to step S201 in FIG. 4). Specifically, the data management unit 105 saves in the magnetic disk device 920 a data file 505b in which the respective VoIP packets are arranged in ascending order of the hash value of the Call-ID. The file name of the data file 505b also includes a character string indicating the date and time such as “2006-11-01” or “10:15”.

アドレス生成部104は、2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル505bを磁気ディスク装置920から読み込み、このデータファイル505bに保存されているVoIPパケットの保存位置を、Call−IDごとに特定する。そして、VoIPパケットの保存位置の先頭へのポインタ(データファイル505b内のオフセット値)とサイズ情報をCall−IDごとに組み合わせ、各Call−IDのハッシュ値に対応するアドレスとして、2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bを生成し、磁気ディスク装置920内に保存する(図4のステップS202〜S203に相当)。このアドレスファイル504bのファイル名にも、“2006−11−01”や“10:15”などの日時を示す文字列が含まれる。   The address generation unit 104 reads the data file 505b of 10:15:00 to 10:15:59 on November 1, 2006 from the magnetic disk device 920, and stores the VoIP packet stored in the data file 505b. A storage position is specified for each Call-ID. Then, a pointer to the head of the storage position of the VoIP packet (offset value in the data file 505b) and size information are combined for each Call-ID, and an address corresponding to the hash value of each Call-ID is set as November 1, 2006. An address file 504b of 10:15:00 to 10:15:59 is generated and stored in the magnetic disk device 920 (corresponding to steps S202 to S203 in FIG. 4). The file name of the address file 504b also includes a character string indicating the date and time such as “2006-11-01” or “10:15”.

上記のように、本実施の形態では、それぞれのファイルの名称に、ファイルに保存されたデータに対応する日時を示す文字列が含まれているため、キー検索部107、アドレス検索部108、データ検索部109が、それぞれのファイルを検索する際に、効率的に検索処理を実施することが可能となる。   As described above, in the present embodiment, each file name includes a character string indicating the date and time corresponding to the data stored in the file. Therefore, the key search unit 107, the address search unit 108, the data When the search unit 109 searches for each file, the search process can be efficiently performed.

この例では、データ管理部105が複数のCall−IDのハッシュ値を計算したときに、計算結果が同一となり、いわゆるハッシュの衝突が生じる場合がある。この場合、従来技術と同様に対応可能である。例えば、ハッシュの衝突が生じたとき、アドレス生成部104は、ハッシュ値が同一となるCall−IDを含むVoIPパケットの位置を示すアドレスを線形リストとして管理することができる。このとき、アドレスファイル504bにおいて、該当するハッシュ値に対応するアドレスには、線形リストの次のアドレスを指すポインタが含まれることとなる。そして、ハッシュ値が同一となるCall−IDを含むVoIPパケットの位置を示すアドレスを検索する際には、そのハッシュ値に対応するアドレスがアドレスファイル504b内で最初にアクセスされ、そこから線形リスト内のポインタを辿って適切なアドレスが抽出される。   In this example, when the data management unit 105 calculates hash values of a plurality of Call-IDs, the calculation results are the same, and so-called hash collision may occur. In this case, it can be handled in the same manner as in the prior art. For example, when a hash collision occurs, the address generation unit 104 can manage addresses indicating the positions of VoIP packets including Call-IDs having the same hash value as a linear list. At this time, in the address file 504b, the address corresponding to the corresponding hash value includes a pointer indicating the next address in the linear list. When searching for an address indicating the position of the VoIP packet including the Call-ID having the same hash value, the address corresponding to the hash value is first accessed in the address file 504b, and from there, the address is stored in the linear list. The appropriate address is extracted by tracing the pointer.

この例では、データ管理部105は、Call−IDのハッシュ値を計算した後、計算したハッシュ値をキー生成部102に提供する。キー生成部102は、データ管理部105が計算したCall−IDのハッシュ値を、そのCall−IDが対応するキーとともにキーファイル502bに保存する。これにより、アドレス検索部108は、Call−IDの代わりにハッシュ値を用いて検索処理を行うことが可能となる。   In this example, the data management unit 105 calculates the hash value of the Call-ID, and then provides the calculated hash value to the key generation unit 102. The key generation unit 102 stores the Call-ID hash value calculated by the data management unit 105 together with the key corresponding to the Call-ID in the key file 502b. Thereby, the address search unit 108 can perform a search process using a hash value instead of the Call-ID.

ここで、この例におけるキーファイル502の構成の一例を図10に示す。   An example of the configuration of the key file 502 in this example is shown in FIG.

図10において、キーファイル502は、可変長レコードのファイル形式で構成されている。キーファイル502は、単位時間Tk(この例では、1分)ごとに論理的に区別できる形式であればどのように構成されていてもよいが、ファイルシステム上で単位時間Tkごとに別個のファイルとして構成されることが望ましい。それぞれのキーファイル502が、ファイルシステム上で別々のファイルとなっている場合、この例のように、ファイル名を利用した処理が可能となる。キーファイル502だけでなく、キャプチャファイル501、アドレスファイル504、データファイル505についても同様である。   In FIG. 10, a key file 502 is configured in a variable length record file format. The key file 502 may be configured in any way as long as it can be logically distinguished for each unit time Tk (in this example, 1 minute), but a separate file for each unit time Tk on the file system. It is desirable to be configured as When each key file 502 is a separate file on the file system, processing using the file name can be performed as in this example. The same applies not only to the key file 502 but also to the capture file 501, the address file 504, and the data file 505.

キーファイル502のレコードは、1分ごとのキーファイル502においてCall−IDごとに存在する。各レコードは、「レコード長」、「キー数」、「パケットタイプ」、「ハッシュ値」、「タイムスタンプ」、「タイムスタンプ(ミリ秒)」、「ヘッダ部長」、「直前キーデータ登録時刻」、「直前キーデータオフセット」、「内部オフセット」、「キー長」、「キーオフセット」、「キーデータ」の13種類のカラムデータで構成されている。「レコード長」、「キー数」、「パケットタイプ」、「ハッシュ値」、「タイムスタンプ」、「タイムスタンプ(ミリ秒)」、「ヘッダ部長」、「直前キーデータ登録時刻」、「直前キーデータオフセット」、「内部オフセット」の10個のカラムは、いずれも固定長であり、レコードのヘッダ部を構成している。「キー長」、「キーオフセット」、「キーデータ」の3種類のカラムは、レコードに含まれるキーを構成している。   A record of the key file 502 exists for each Call-ID in the key file 502 every minute. Each record includes “record length”, “number of keys”, “packet type”, “hash value”, “time stamp”, “time stamp (millisecond)”, “header length”, “last key data registration time” , “Immediate key data offset”, “internal offset”, “key length”, “key offset”, and “key data”. "Record length", "Number of keys", "Packet type", "Hash value", "Time stamp", "Time stamp (millisecond)", "Header length", "Last key data registration time", "Last key" Each of the ten columns of “data offset” and “internal offset” has a fixed length and constitutes a header portion of the record. Three types of columns of “key length”, “key offset”, and “key data” constitute keys included in the record.

1つのレコードにおいて、
・「レコード長」は、このレコード全体の長さをバイト数で表す。
・「キー数」は、このレコード中のSIPパラメータの数(種類)を整数Nで表す。この例では、N=10個(種類)となる。
・「パケットタイプ」は、このレコードが対応する呼(SIPメッセージ)のタイプを表す。この例では、“INVITE”又は“REGISTER”となる。
・「ハッシュ値」は、このレコードが対応するCall−IDのハッシュ値を表す。このハッシュ値は、前述したように、アドレス生成部104が計算するものである。
・「タイムスタンプ」は、このレコードが対応するCall−IDの最初のパケット受信時刻を秒単位で表す。
・「タイムスタンプ(ミリ秒)」は、このレコードが対応するCall−IDの最初のパケット受信時刻の1秒以下の数値をミリ秒単位で表す。
・「ヘッダ部長」は、このレコードのヘッダ部の長さをバイト数で表す。この例では、“28”バイトとなる。
・「直前キーデータ登録時刻」は、このレコードが対応するCall−IDと同じCall−IDのレコードで、このレコードの直前に登録されたもの(以下、「直前レコード」という)の登録時刻を分単位で表す。このレコードより前に同じCall−IDに対応するレコードが登録されていない場合には、“0”となる。
・「直前キーデータオフセット」は、直前レコードのキーファイル502内のオフセットである。このレコードより前に同じCall−IDに対応するレコードが登録されていない場合には、“0”となる。
・「内部オフセット」は、このレコードのキーにSIPパラメータが追加されたときに、このレコードを更新する代わりに生成されたレコードのキーファイル502内のオフセットである。初期値は、“0”となる。
In one record,
“Record length” represents the total length of this record in bytes.
“Number of keys” represents the number (type) of SIP parameters in this record as an integer N. In this example, N = 10 (types).
“Packet type” represents the type of the call (SIP message) to which this record corresponds. In this example, “INVITE” or “REGISTER”.
“Hash value” represents the hash value of the Call-ID corresponding to this record. As described above, this hash value is calculated by the address generation unit 104.
“Time stamp” represents the first packet reception time of Call-ID corresponding to this record in seconds.
“Time stamp (millisecond)” represents a numerical value of 1 second or less of the first packet reception time of Call-ID corresponding to this record in milliseconds.
“Header length” represents the length of the header of this record in bytes. In this example, it is “28” bytes.
“Previous key data registration time” is a record of the same Call-ID as the Call-ID corresponding to this record, and is registered immediately before this record (hereinafter referred to as “immediate record”). Expressed in units. If no record corresponding to the same Call-ID is registered before this record, the value is “0”.
“Previous key data offset” is an offset in the key file 502 of the previous record. If no record corresponding to the same Call-ID is registered before this record, the value is “0”.
“Internal offset” is an offset in the key file 502 of a record generated instead of updating this record when a SIP parameter is added to the key of this record. The initial value is “0”.

1つのレコードにおいて、10個の「キー長」、10個の「キーオフセット」、10種類の「キーデータ」からなる1つのキーが存在する。
・「キー長」は、10種類あるSIPパラメータ(ここでは、Call−IDもSIPパラメータに含む)それぞれのデータの長さをバイト数で表す。この例では、1つの「キー長」カラムの長さを2バイトとしているので、「キー長」の最大値は“65535”となる。また、該当するSIPパラメータのデータが存在しない場合には“0”とする。
・「キーオフセット」は、SIPパラメータそれぞれのデータが格納されている位置をオフセットで表す。
・「キーデータ」は、SIPパラメータそれぞれのデータの格納場所である。
In one record, there is one key consisting of 10 “key lengths”, 10 “key offsets”, and 10 types of “key data”.
“Key length” represents the data length of each of 10 types of SIP parameters (here, Call-ID is also included in the SIP parameters) in bytes. In this example, since the length of one “key length” column is 2 bytes, the maximum value of “key length” is “65535”. If there is no corresponding SIP parameter data, it is set to “0”.
“Key offset” represents the position where data of each SIP parameter is stored as an offset.
“Key data” is a storage location of data of each SIP parameter.

1つのキーにおいて、1種類のSIPパラメータのデータが複数存在する場合には、そのSIPパラメータが固定長ならば、「キーデータ」内で単にデータを連結して格納する。一方、そのSIPパラメータが可変長ならば、「キーデータ」内でデータ同士をNULLなどで区切ってデータを格納する。   If there is a plurality of data of one type of SIP parameter in one key, if the SIP parameter is a fixed length, the data is simply concatenated and stored in the “key data”. On the other hand, if the SIP parameter is a variable length, the data is stored by dividing the data into “key data” by NULL or the like.

図10に例示したキーファイル502におけるキーの構成の一例を図11に示す。   An example of the key configuration in the key file 502 illustrated in FIG. 10 is shown in FIG.

1つのキーにおいて、「Call−ID」は、このキーに対応するCall−IDを表す。Call−IDを除くと、このキーには、9種類のSIPパラメータが存在する。
(1)「発IPアドレス」は、INVITE/REGISTERのSIPメッセージに含まれる発IPアドレスを表す。
(2)「着IPアドレス」は、INVITEのSIPメッセージに含まれる着IPアドレスを表す。
(3)「発信者電話番号1」は、INVITEのSIPメッセージに含まれるP−Asserted−Identityフィールドを表す。P−Asserted−Identityフィールドは、番号通知用の発信者電話番号を指定するものである。
(4)「発信者電話番号2」は、INVITEのSIPメッセージに含まれるFromフィールドを表す。Fromフィールドは、発信者電話番号と網アドレスを指定するものであり、例えば、“050xxxxxxxx@xxx.co.jp”といった形式で表される。
(5)「発信者電話番号3」は、INVITEのSIPメッセージに含まれるP−Preferred−Identityフィールドを表す。P−Preferred−Identityフィールドは、番号通知用の発信者電話番号を指定するものである。
(6)「ユーザ認証用の電話番号」は、INVITEのSIPメッセージに含まれるProxy−Authorizationフィールドのusername部を表す。
(7)「相手電話番号1」は、SIPメッセージに含まれるToフィールドを表す。Toフィールドは、相手電話番号と網アドレスを指定するものであり、例えば、“050xxxxxxxx@xxx.co.jp”といった形式で表される。
(8)「ステータスコード」は、INVITEに対する応答のSIPメッセージに含まれるステータスコードである。
(9)「相手電話番号2」は、SIPメッセージに含まれるRequest−urlを表す。Request−urlは、相手電話番号と網アドレスを指定するものであり、例えば、“050xxxxxxxx@xxx.co.jp”といった形式で表される。
In one key, “Call-ID” represents a Call-ID corresponding to this key. Excluding Call-ID, there are nine types of SIP parameters for this key.
(1) The “originating IP address” represents the originating IP address included in the INVITE / REGISTER SIP message.
(2) “Destination IP address” represents a destination IP address included in the SIP message of INVITE.
(3) “Caller telephone number 1” represents a P-Asserted-Identity field included in the SIP message of INVITE. The P-Asserted-Identity field is used to specify a caller telephone number for number notification.
(4) “Caller telephone number 2” represents the From field included in the SIP message of INVITE. The From field specifies a caller telephone number and a network address, and is expressed in a format of “050xxxxxxxx@xxx.co.jp”, for example.
(5) “Caller telephone number 3” represents a P-Preferred-Identity field included in the SIP message of INVITE. The P-Preferred-Identity field is used to specify a caller telephone number for number notification.
(6) “Telephone number for user authentication” represents the username part of the Proxy-Authorization field included in the SIP message of INVITE.
(7) “Destination phone number 1” represents the To field included in the SIP message. The To field is for designating the other party telephone number and the network address, and is expressed in a format such as “050xxxxxxxx@xxx.co.jp”, for example.
(8) “Status code” is a status code included in the SIP message in response to INVITE.
(9) “Destination telephone number 2” represents the Request-url included in the SIP message. Request-url designates the other party telephone number and the network address, and is expressed in a format such as “050xxxxxxxx@xxx.co.jp”, for example.

上記(3)〜(6)の「発信者電話番号1」、「発信者電話番号2」、「発信者電話番号3」、「ユーザ認証用の電話番号」は、いずれも発信元の電話番号を表すが、形式や用途を異にするものである。また、上記(7)及び(9)の「相手電話番号1」、「相手電話番号2」は、いずれも相手先の電話番号を表すが、形式や用途を異にするものである。   “Caller telephone number 1”, “Caller telephone number 2”, “Caller telephone number 3”, and “User authentication telephone number” in (3) to (6) are all the telephone numbers of the caller. , But with different formats and uses. In addition, although “the other party telephone number 1” and “the other party telephone number 2” in the above (7) and (9) both represent the telephone number of the other party, the formats and applications are different.

ここで、図10に例示したキーファイル502が、図9に例示したキー更新処理によりどのように更新されるかを説明する。   Here, how the key file 502 illustrated in FIG. 10 is updated by the key update processing illustrated in FIG. 9 will be described.

図9に示した例では、キー更新部103が、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aにアクセスし、このキーファイル502a内のCall−IDを“A”とするキーに、新たに2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bに保存されたキーのSIPパラメータである“Y”を追加していた。そして、その結果、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502a内のCall−IDを“A”とするキーが更新され、SIPパラメータとして“X”と“Y”を含むキーとなった。   In the example shown in FIG. 9, the key update unit 103 accesses the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006, and the Call- To the key with ID “A”, “Y” which is the SIP parameter of the key newly saved in the key file 502b of 10:15:00 on November 1, 2006 to 10:15:59 I was adding. As a result, the key with Call-ID “A” in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 is updated, and the SIP parameter “X” is updated. "And" Y "key.

キー更新部103がキーの更新を行う直前、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aにおいて、Call−IDを“A”とするキーのレコードは1つしかなかったものとする。ここでは、このレコードを最初のレコードという。2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存されている最初のレコードの一例を図12に示す。図中、左端の数字は各行の左端のバイトがレコードの先頭から何バイト目であるかを表している。同様に、右端の数字は各行の右端のバイトがレコードの先頭から何バイト目であるかを表している。   The key record with Call-ID “A” in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006, immediately before the key update unit 103 updates the key. Suppose there was only one. Here, this record is called the first record. FIG. 12 shows an example of the first record stored in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006. In the figure, the leftmost number indicates how many bytes from the beginning of the record the leftmost byte of each line is. Similarly, the number at the right end represents the number of bytes from the beginning of the record at the right end byte of each row.

図12において、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存されている最初のレコードが有する主なカラムデータの内容を以下に示す。
・「タイムスタンプ」:例えば、2006年11月1日の9時45分30秒である。
・「直前キーデータ登録時刻」:直前レコードが存在しないため、“0”である。
・「直前キーデータオフセット」:直前レコードが存在しないため、“0”である。
・「内部オフセット」:初期値の“0”である。
・「キー長」(No.0):「Call−ID」のデータの長さである。ここでは、“a”とする。
・「キー長」(No.8):「ステータスコード」のデータを1つ含んでいるため、“3”である。
・「キーデータ」(No.0):「Call−ID」は“A”である。
・「キーデータ」(No.8):「ステータスコード」は“X”である。
In FIG. 12, the contents of the main column data included in the first record stored in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 are shown below.
“Time stamp”: for example, 9:45:30 on November 1, 2006.
“Previous key data registration time”: “0” because there is no previous record.
“Previous key data offset”: “0” because there is no previous record.
“Internal offset”: The initial value is “0”.
“Key length” (No. 0): The length of the data of “Call-ID”. Here, “a” is assumed.
“Key length” (No. 8): “3” because it includes one “status code” data.
“Key data” (No. 0): “Call-ID” is “A”.
“Key data” (No. 8): “Status code” is “X”.

キー更新部103がキーの更新を行う直前、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bにおいて、Call−IDを“A”とするキーのレコードは1つしかない。2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bに保存されている最初のレコードの一例を図13に示す。このレコードは、キー更新部103がキーの更新を行うときには更新されない。   Immediately before the key update unit 103 updates the key, in the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006, a record of the key with Call-ID “A” There is only one. FIG. 13 shows an example of the first record stored in the key file 502b on November 1, 2006 from 10:15:00 to 10:15:59. This record is not updated when the key update unit 103 updates the key.

図13において、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bに保存されている最初のレコードが有する主なカラムデータの内容を以下に示す。
・「タイムスタンプ」:2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存されている最初のレコードと同様に、2006年11月1日の9時45分30秒である。
・「直前キーデータ登録時刻」:直前レコードが2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存されているため、2006年11月1日の9時45分である。このカラムデータに基づいて、直前レコードが保存されているキーファイル502aのファイル名を知ることができる。
・「直前キーデータオフセット」:2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aにおける最初のレコードのオフセットである。ここでは、“n”とする。このカラムデータに基づいて、直前レコードが保存されているキーファイル502a内の位置を知ることができる。
・「内部オフセット」:初期値の“0”である。
・「キー長」(No.0):「Call−ID」のデータの長さである。ここでは、“a”とする。
・「キー長」(No.8):「ステータスコード」のデータを1つ含んでいるため、“3”である。
・「キーデータ」(No.0):「Call−ID」は“A”である。
・「キーデータ」(No.8):「ステータスコード」は“Y”である。
In FIG. 13, the contents of the main column data included in the first record stored in the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006 are shown below.
“Time stamp”: As of the first record stored in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006, 9th of November 1, 2006 It is time 45 minutes 30 seconds.
“Previous key data registration time”: Since the immediately preceding record is stored in the key file 502a of 9:45:59 to 9:45:59 on November 1, 2006, the date of November 1, 2006 It is 9:45. Based on this column data, the file name of the key file 502a in which the immediately preceding record is stored can be known.
“Previous key data offset”: the offset of the first record in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006. Here, “n” is assumed. Based on this column data, the position in the key file 502a where the immediately preceding record is stored can be known.
“Internal offset”: The initial value is “0”.
“Key length” (No. 0): The length of the data of “Call-ID”. Here, “a” is assumed.
“Key length” (No. 8): “3” because it includes one “status code” data.
“Key data” (No. 0): “Call-ID” is “A”.
“Key data” (No. 8): “Status code” is “Y”.

キー更新部103がキーの更新を行うときは、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aにおいて、Call−IDを“A”とするキーのレコードは更新前のものと更新後のものの2つとなる。ここでは、更新後のレコードを次のレコードという。2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存されている最初のレコードの一例を図14に、このキーファイル502aに保存されている次のレコードの一例を図15に示す。   When the key update unit 103 updates the key, in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006, the key-ID of “A” as the Call-ID is set. There are two records, one before update and one after update. Here, the updated record is called the next record. An example of the first record stored in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 is shown in FIG. An example of the record is shown in FIG.

図14において、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存されている最初のレコードが有する主なカラムデータの内容を以下に示す。
・「タイムスタンプ」:2006年11月1日の9時45分30秒のままである。
・「直前キーデータ登録時刻」:“0”のままである。
・「直前キーデータオフセット」:“0”のままである。
・「内部オフセット」:2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aにおける次のレコードのオフセットである。ここでは、“m”とする。このカラムデータに基づいて、次のレコードが保存されているキーファイル502a内の位置を知ることができる。
・「キー長」(No.0):「Call−ID」のデータの長さである。ここでは、“a”とする。
・「キー長」(No.8):“3”のままである。
・「キーデータ」(No.0):「Call−ID」は“A”である。
・「キーデータ」(No.8):「ステータスコード」は“X”である。
In FIG. 14, contents of main column data included in the first record stored in the key file 502a of 9:45:00 to 9:45:59 on November 1, 2006 are shown below.
“Time stamp”: It remains at 9:45:30 on November 1, 2006.
“Previous key data registration time”: remains “0”.
“Previous key data offset”: remains “0”.
“Internal offset”: The offset of the next record in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006. Here, “m” is assumed. Based on this column data, the position in the key file 502a where the next record is stored can be known.
“Key length” (No. 0): The length of the data of “Call-ID”. Here, “a” is assumed.
“Key length” (No. 8): “3” remains unchanged.
“Key data” (No. 0): “Call-ID” is “A”.
“Key data” (No. 8): “Status code” is “X”.

図15において、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存されている次のレコードが有する主なカラムデータの内容を以下に示す。
・「タイムスタンプ」:最初のレコードと同様に、2006年11月1日の9時45分30秒である。
・「直前キーデータ登録時刻」:最初のレコードと同様に、“0”である。
・「直前キーデータオフセット」:最初のレコードと同様に、“0”である。
・「内部オフセット」:初期値の“0”である。
・「キー長」(No.0):「Call−ID」のデータの長さである。ここでは、“a”とする。
・「キー長」(No.8):「ステータスコード」のデータが1つ追加されたため、“6”である。
・「キーデータ」(No.0):「Call−ID」は“A”である。
・「キーデータ」(No.8):「ステータスコード」は“X”及び“Y”である。新しいデータである“Y”は直前のデータである“X”に連結されている。ここで、「ステータスコード」は固定長であるため、“X”と“Y”の間にNULLなどを挿入する必要はない。
In FIG. 15, the contents of the main column data included in the next record stored in the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 are shown below.
“Time stamp”: 9:45:30 on November 1, 2006, as in the first record.
“Previous key data registration time”: “0” as in the first record.
“Previous key data offset”: “0” as in the first record.
“Internal offset”: The initial value is “0”.
“Key length” (No. 0): The length of the data of “Call-ID”. Here, “a” is assumed.
“Key length” (No. 8): “6” because one “status code” data is added.
“Key data” (No. 0): “Call-ID” is “A”.
“Key data” (No. 8): “Status code” is “X” and “Y”. The new data “Y” is linked to the previous data “X”. Here, since the “status code” has a fixed length, it is not necessary to insert NULL or the like between “X” and “Y”.

このように、本実施の形態では、キーファイル502に設けた「内部オフセット」のカラムを利用することにより、更新前のレコードはほとんど変更せずに、更新後のレコードを単純に追加していくだけでキー更新処理を実施することが可能となる。   As described above, in this embodiment, by using the column of “internal offset” provided in the key file 502, the record before the update is hardly changed and the record after the update is simply added. Thus, the key update process can be performed.

図16は、図5に示した呼制御データ検索システム100の動作の一例を示す概念図である。   FIG. 16 is a conceptual diagram showing an example of the operation of the call control data search system 100 shown in FIG.

図16において、VoIPネットワーク200の運用者などが、例えば2006年11月1日の9時45分に開始された呼で異常切断があったものを検索したい場合には、検索端末300のユーザとして、呼の開始時刻を、2006年11月1日の9時45分とし、SIPパラメータを、異常切断を示すステータスコード(切断原因コード)である“Y”とする検索条件を指定する。入力部106は、ユーザからの検索条件の入力を、キーボード902やマウス903を介して受け付ける(図5のステップS301に相当)。   In FIG. 16, when the operator of the VoIP network 200 wants to search for a call that was abnormally disconnected at 9:45 on November 1, 2006, for example, as a user of the search terminal 300 The search condition is designated with a call start time of 9:45 on November 1, 2006 and a SIP parameter “Y” which is a status code (disconnection cause code) indicating abnormal disconnection. The input unit 106 accepts input of search conditions from the user via the keyboard 902 and the mouse 903 (corresponding to step S301 in FIG. 5).

キー検索部107は、CPU911により、検索条件で指定された時刻に対応する2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aを検索し、検索条件でステータスコードとして指定された“Y”を含むキーを全て抽出する(図5のステップS302〜S303に相当)。この例では、Call−IDが“A”であり、ステータスコードとして“X”及び“Y”を含むキーを抽出する。また、このキーを記録しているキーファイル502aのレコードから、Call−IDのハッシュ値を取得する。図16には示していない2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bにも、Call−IDが“A”であり、ステータスコードとして“Y”を含むキーが存在するが、キー検索部107はこのキーファイル502bを検索する必要がない。   The key retrieval unit 107 retrieves the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 corresponding to the time specified in the retrieval condition by the CPU 911, and the retrieval condition All keys including “Y” designated as the status code are extracted (corresponding to steps S302 to S303 in FIG. 5). In this example, the Call-ID is “A”, and keys including “X” and “Y” as status codes are extracted. Further, the Call-ID hash value is acquired from the record of the key file 502a in which this key is recorded. Also in the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006 not shown in FIG. 16, the Call-ID is “A” and the status code is “Y”. However, the key search unit 107 does not need to search the key file 502b.

アドレス検索部108は、CPU911により、2006年11月1日の9時45分00秒〜9時45分59秒のアドレスファイル504aと2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bを検索し、それぞれのアドレスファイル504から、キー検索部107により取得されたCall−IDのハッシュ値に対応するアドレスを抽出する(図5のステップS304〜S305に相当)。アドレス検索部108は、このように、キー検索部107により抽出されたキーのレコードから取得可能な情報を利用して、検索対象とするアドレスファイル504を初めから絞り込んでもよいが、単に磁気ディスク装置920(記憶装置151の一例)内の全てのアドレスファイル504を検索してもよいし、検索条件で指定された時刻以降のアドレスファイル504のみを検索してもよい。また、アドレス検索部108は、キー検索部107からCall−IDのハッシュ値ではなく、Call−IDを取得して自らそのハッシュ値を計算し、計算したハッシュ値に対応するアドレスを抽出してもよい。   The address search unit 108 uses the CPU 911 to execute the address file 504a from 9:45:00 to 9:45:59 on November 1, 2006, and 10:15:00 from 10:00 on November 1, 2006. The address file 504b of 15 minutes 59 seconds is searched, and the address corresponding to the Call-ID hash value acquired by the key search unit 107 is extracted from each address file 504 (corresponding to steps S304 to S305 in FIG. 5). ). The address search unit 108 may narrow down the address file 504 to be searched from the beginning by using information that can be acquired from the key record extracted by the key search unit 107 as described above. All address files 504 in 920 (an example of the storage device 151) may be searched, or only the address files 504 after the time specified by the search condition may be searched. Further, the address search unit 108 may obtain the Call-ID instead of the Call-ID hash value from the key search unit 107, calculate the hash value by itself, and extract the address corresponding to the calculated hash value. Good.

データ検索部109は、CPU911により、アドレス検索部108により2006年11月1日の9時45分00秒〜9時45分59秒のアドレスファイル504aから抽出されたアドレスに含まれるポインタが示す位置から、そのアドレスに含まれるサイズ情報が示すサイズ分のVoIPパケットを抽出する。即ち、2006年11月1日の9時45分00秒〜9時45分59秒のデータファイル505aから、Call−IDとして“A”を含むVoIPパケットを抽出する。また、データ検索部109は、アドレス検索部108により2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bから抽出されたアドレスに含まれるポインタが示す位置から、そのアドレスに含まれるサイズ情報が示すサイズ分のVoIPパケットを抽出する。即ち、2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル505bから、Call−IDとして“A”を含むVoIPパケットを抽出する(図5のステップS306〜S307に相当)。   The data search unit 109 is a position indicated by a pointer included in an address extracted by the CPU 911 from the address file 504a from 9:45:00 to 9:45:59 on November 1, 2006 by the address search unit 108. Then, VoIP packets corresponding to the size indicated by the size information included in the address are extracted. That is, the VoIP packet including “A” as the Call-ID is extracted from the data file 505a of November 1, 2006 from 9:45:00 to 9:45:59. Further, the data search unit 109 starts from the position indicated by the pointer included in the address extracted from the address file 504b from 10:15:00 to 10:15:59 on November 1, 2006 by the address search unit 108. , VoIP packets corresponding to the size indicated by the size information included in the address are extracted. That is, a VoIP packet including “A” as the Call-ID is extracted from the data file 505b of 10:15:00 to 10:15:59 on November 1, 2006 (steps S306 to S307 in FIG. 5). Equivalent).

出力部110は、表示装置901の表示画面に、データ検索部109により抽出されたVoIPパケット、あるいは、当該VoIPパケットに含まれるCall−IDやSIPパラメータの一覧などを出力する(図5のステップS308に相当)。これにより、VoIPネットワーク200の運用者などは、2006年11月1日の9時45分に開始された呼で異常切断があったものを容易に発見することができる。   The output unit 110 outputs a VoIP packet extracted by the data search unit 109 or a list of Call-IDs and SIP parameters included in the VoIP packet to the display screen of the display device 901 (step S308 in FIG. 5). Equivalent). As a result, an operator of the VoIP network 200 can easily find an abnormally disconnected call started at 9:45 on November 1, 2006.

このように、本実施の形態では、検索条件に検索用のキーを用いるため、検索時のパケット解析が不要となり、高速な検索が可能となる。また、検索用のデータをCall−IDごとに並べ替えているため、データ抽出時にはシーケンシャルアクセスによる高速なデータ抽出が可能となる。   As described above, in this embodiment, since a search key is used as a search condition, packet analysis at the time of search is unnecessary, and high-speed search is possible. Further, since the search data is rearranged for each Call-ID, high-speed data extraction by sequential access is possible at the time of data extraction.

この例では、キー検索部107が、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aから、検索条件でステータスコードとして指定された“Y”を含むキーを全て抽出しているが、この場合、2006年11月1日の9時45分に開始された呼以外の呼に係るキーも抽出される可能性がある。そこで、2006年11月1日の9時45分に開始された呼のみ、即ち、2006年11月1日の9時45分にVoIPパケットがキャプチャされた呼のうち、当該VoIPパケットが当該呼に係る最初のVoIPパケットであるものを検索対象とするために、キー検索処理において抽出するキーを限定することが望ましい。   In this example, the key search unit 107 includes “Y” designated as the status code in the search condition from the key file 502a of November 1, 2006 from 9:45:00 to 9:45:59. All keys have been extracted. In this case, keys related to calls other than the call started at 9:45 on November 1, 2006 may be extracted. Therefore, only the call started at 9:45 on November 1, 2006, that is, among the calls in which the VoIP packet was captured at 9:45 on November 1, 2006, the VoIP packet is It is desirable to limit the keys extracted in the key search process in order to search for the first VoIP packet related to.

キー検索処理におけるキーの限定方法として、キー検索部107は、検索条件で指定された時刻に対応する2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aを検索する際に、タイムスタンプが2006年11月1日の9時45分00秒〜9時45分59秒の範囲内にあるレコードのみからキーを抽出することにしてもよい。この例では、タイムスタンプが2006年11月1日の9時45分30秒となっているレコードから、Call−IDが“A”であり、ステータスコードとして“X”及び“Y”を含むキーを抽出する。   As a key limiting method in the key search process, the key search unit 107 includes a key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 corresponding to the time specified by the search condition. When searching for a key, a key may be extracted from only records whose time stamp is within the range of 9:45:00 to 9:45:59 on November 1, 2006. In this example, from the record whose time stamp is 9:45:30 on November 1, 2006, the Call-ID is “A”, and the key includes “X” and “Y” as the status code. To extract.

別の限定方法として、キー検索部107は、検索条件で指定された時刻に対応する2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aを検索する際に、直前レコードが存在しないレコードのみからキーを抽出することにしてもよい。この例では、直前キーデータ登録時刻が“0”となっているレコードから、Call−IDが“A”であり、ステータスコードとして“X”及び“Y”を含むキーを抽出する。   As another limiting method, the key retrieval unit 107 retrieves the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 corresponding to the time specified by the retrieval condition. In addition, the key may be extracted from only the record for which no previous record exists. In this example, a key having Call-ID “A” and status codes “X” and “Y” is extracted from a record in which the previous key data registration time is “0”.

本実施の形態では、図5のステップS301において、入力部106は、検索端末300が指定する呼の開始時刻とSIPパラメータを入力しているが、検索端末300が指定する呼の開始時刻のみを入力してもよい。この場合、ステップS303において、キー検索部107は、ステップS302で検索したキーファイルから、全てのキーを抽出する。   In the present embodiment, in step S301 in FIG. 5, the input unit 106 inputs the call start time and SIP parameters specified by the search terminal 300. However, only the call start time specified by the search terminal 300 is input. You may enter. In this case, in step S303, the key search unit 107 extracts all keys from the key file searched in step S302.

また、図5のステップS301において、入力部106は、検索端末300が指定する時間帯のみを入力してもよい。この場合、ステップS302において、キー検索部107は、ステップS301で入力された時間帯に対応するキーファイルを全て検索し、ステップS303において、ステップS302で検索したキーファイルの各々から、全てのキーを抽出する。   Further, in step S301 in FIG. 5, the input unit 106 may input only the time zone specified by the search terminal 300. In this case, in step S302, the key retrieval unit 107 retrieves all key files corresponding to the time zone input in step S301, and in step S303, retrieves all keys from each of the key files retrieved in step S302. Extract.

実施の形態2.
実施の形態1において、図16に示した例では、検索端末300のユーザが呼の開始時刻を検索条件として指定しているが、任意の時刻を指定してもよい。
Embodiment 2. FIG.
In the first embodiment, in the example shown in FIG. 16, the user of the search terminal 300 specifies the call start time as a search condition, but any time may be specified.

例えば2006年11月1日の10時15分に制御がなされた呼で特定の事象があったものを検索したい場合には、検索端末300のユーザは、時刻を、2006年11月1日の10時15分とし、SIPパラメータを、特定の事象があったことを示すステータスコードである“X”とする検索条件を指定する。入力部106は、ユーザからの検索条件の入力を、キーボード902やマウス903を介して受け付ける。   For example, when a user wants to search for a call that was controlled at 10:15 on November 1, 2006 and had a specific event, the user of the search terminal 300 changed the time on November 1, 2006. The search condition is designated as 10:15, and the SIP parameter is “X”, which is a status code indicating that a specific event has occurred. The input unit 106 receives input of search conditions from the user via the keyboard 902 and the mouse 903.

キー検索部107は、CPU911により、検索条件で指定された時刻に対応するキーファイル502として、図16には示していない2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bを検索し、全てのキーを抽出する。さらに、抽出したキーが含まれているレコードの直前キーデータ登録時刻と直前キーデータオフセットを参照し、その直前キーデータ登録時刻をファイル名に含むキーファイル502内で、その直前キーデータオフセットが示す位置にある直前レコードを読み出す。読み出したレコードに対する直前レコードも存在する場合には、順番に直前レコードを辿っていき、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bから抽出したキーと同じCall−IDが最初に登録されたキーファイル502から、このCall−IDに対応するキーを抽出する。キー検索部107は、このように抽出したキーのうち、さらに、検索条件でステータスコードとして指定された“X”を含むキーのみを抽出する。この例では、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aから、Call−IDが“A”であり、ステータスコードとして“X”及び“Y”を含むキーを抽出する。また、このキーを記録しているキーファイル502aのレコードから、Call−IDのハッシュ値を取得する。   The key search unit 107 is processed by the CPU 911 as a key file 502 corresponding to the time specified in the search condition from 10:15:00 on November 1, 2006, not shown in FIG. 16, to 10:15:59. The second key file 502b is searched and all keys are extracted. Further, the immediately preceding key data registration time and the immediately preceding key data offset of the record including the extracted key are referred to, and the immediately preceding key data offset indicates in the key file 502 including the immediately preceding key data registration time in the file name. Read the previous record at the position. If there is an immediately preceding record for the read record, the previous record is traced in order, and the key extracted from the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006 The key corresponding to the Call-ID is extracted from the key file 502 in which the same Call-ID is first registered. The key search unit 107 extracts only keys including “X” designated as the status code in the search condition from the keys extracted in this way. In this example, the Call-ID is “A” and the status codes are “X” and “Y” from the key file 502 a from 9:45:00 to 9:45:59 on November 1, 2006. Extract keys that contain. Further, the Call-ID hash value is acquired from the record of the key file 502a in which this key is recorded.

アドレス検索部108は、CPU911により、2006年11月1日の9時45分00秒〜9時45分59秒のアドレスファイル504aと2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bを検索し、それぞれのアドレスファイル504から、キー検索部107により取得されたCall−IDのハッシュ値に対応するアドレスを抽出する。   The address search unit 108 uses the CPU 911 to execute the address file 504a from 9:45:00 to 9:45:59 on November 1, 2006, and 10:15:00 from 10:00 on November 1, 2006. The 15 minute 59 second address file 504b is searched, and an address corresponding to the Call-ID hash value acquired by the key search unit 107 is extracted from each address file 504.

データ検索部109は、CPU911により、アドレス検索部108により2006年11月1日の9時45分00秒〜9時45分59秒のアドレスファイル504aから抽出されたアドレスに含まれるポインタが示す位置から、Call−IDとして“A”を含むVoIPパケットを抽出する。また、データ検索部109は、アドレス検索部108により2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bから抽出されたアドレスに含まれるポインタが示す位置から、Call−IDとして“A”を含むVoIPパケットを抽出する。   The data search unit 109 is a position indicated by a pointer included in an address extracted by the CPU 911 from the address file 504a from 9:45:00 to 9:45:59 on November 1, 2006 by the address search unit 108. Then, a VoIP packet including “A” as the Call-ID is extracted. Further, the data search unit 109 starts from the position indicated by the pointer included in the address extracted from the address file 504b from 10:15:00 to 10:15:59 on November 1, 2006 by the address search unit 108. , VoIP packets including “A” as the Call-ID are extracted.

出力部110は、表示装置901の表示画面に、データ検索部109により抽出されたVoIPパケット、あるいは、当該VoIPパケットに含まれるCall−IDやSIPパラメータの一覧などを出力する。これにより、検索端末300のユーザは、2006年11月1日の10時15分に制御がなされた呼で特定の事象があったものを容易に発見することができる。   The output unit 110 outputs a VoIP packet extracted by the data search unit 109 or a list of Call-IDs and SIP parameters included in the VoIP packet to the display screen of the display device 901. As a result, the user of the search terminal 300 can easily find a call with a specific event controlled at 10:15 on November 1, 2006.

このように、本実施の形態では、キーファイル502に設けた「直前キーデータ登録時刻」と「直前キーデータオフセット」のカラムを利用することにより、あるレコードから順番に直前レコードを辿っていき、そのレコードのキーと同じCall−IDが最初に登録されたキーファイル502から、このCall−IDに対応するキーを読み出すことができる。読み出したキーには、当該Call−IDに係るSIPパラメータが全て追加されているので、当該Call−IDから特定される呼に関する情報を効率的に取得することが可能となる。   Thus, in the present embodiment, by using the “immediate key data registration time” and “immediate key data offset” columns provided in the key file 502, the previous record is traced in order from a certain record. The key corresponding to the Call-ID can be read from the key file 502 in which the same Call-ID as the key of the record is first registered. Since all the SIP parameters related to the Call-ID are added to the read key, it is possible to efficiently acquire information related to the call specified from the Call-ID.

実施の形態3.
実施の形態1では、例えば、キー生成部102が1つのVoIPパケットから抽出したCall−IDとSIPパラメータの組み合わせを、そのCall−IDに対応するキーとして1つのキーファイルに保存した後、キー更新部103は、同じCall−IDに対応するキーが保存されている過去のキーファイルがある場合、そのCall−IDに対応するキーが最初に保存されたキーファイル、即ち、該当する過去のキーファイルで最も古いものを検出している。一方、本実施の形態では、同じCall−IDに対応するキーが保存されている過去のキーファイルがある場合、キー更新部103は、そのCall−IDに対応するキーが保存されている全てのキーファイル、即ち、該当する過去のキーファイル全てを検出する。そして、検出したキーファイルの全てについて、各キーファイル内の同じCall−IDに対応するキーに、キー生成部102が今回保存したキーに含まれるSIPパラメータを追加する。
Embodiment 3 FIG.
In the first embodiment, for example, the key generation unit 102 stores a combination of Call-ID and SIP parameters extracted from one VoIP packet in one key file as a key corresponding to the Call-ID, and then updates the key. If there is a past key file in which a key corresponding to the same Call-ID is stored, the unit 103 stores the key file in which the key corresponding to the Call-ID is first stored, that is, the corresponding past key file. The oldest one is detected. On the other hand, in the present embodiment, when there is a past key file in which a key corresponding to the same Call-ID is stored, the key update unit 103 causes all the keys corresponding to the Call-ID to be stored. Key files, that is, all corresponding past key files are detected. Then, for all the detected key files, the key generation unit 102 adds the SIP parameter included in the currently saved key to the key corresponding to the same Call-ID in each key file.

実施の形態1において、図16に示した例では、キー生成部102が過去に、Call−IDが“A”でSIPパラメータが“X”となるキーを生成し、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存している。そして、キー生成部102が新たにCall−IDが“A”でSIPパラメータが“Y”となるキーを生成し、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bに保存した後、キー更新部103が2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aにアクセスし、このキーファイル502a内のCall−IDを“A”とするキーに、SIPパラメータとして“Y”を追加している。本実施の形態において、以下の例では、その後さらに、キー生成部102が新たにCall−IDが“A”でSIPパラメータが“Z”となるキーを生成し、2006年11月1日の10時30分00秒〜10時30分59秒のキーファイル502cに保存するものとする。そして、キー更新部103が2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aと2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bにアクセスし、キーファイル502a、キーファイル502b内のCall−IDを“A”とするキーに、SIPパラメータとして“Z”を追加するものとする。つまり、以下の例では、Call−IDが“A”であるVoIPパケットが、少なくとも3回(具体的には、2006年11月1日の9時45分、10時15分、10時30分に)キャプチャされていることになる。そして、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aには、SIPパラメータとして“X”、“Y”、“Z”が、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bには、SIPパラメータとして“Y”、“Z”が、2006年11月1日の10時30分00秒〜10時30分59秒のキーファイル502cには、SIPパラメータとして“Z”が保存されていることになる。   In the first embodiment, in the example shown in FIG. 16, the key generation unit 102 generates a key with Call-ID “A” and SIP parameter “X” in the past. It is stored in the key file 502a from 9:45:00 to 9:45:59. Then, the key generation unit 102 newly generates a key whose Call-ID is “A” and the SIP parameter is “Y”, and from November 1, 2006, 10:15:00 to 10:15:59 The key update unit 103 accesses the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006, and stores the Call- in the key file 502b. “Y” is added as a SIP parameter to a key whose ID is “A”. In the present embodiment, in the following example, after that, the key generation unit 102 newly generates a key whose Call-ID is “A” and the SIP parameter is “Z”. It is assumed that it is stored in the key file 502c of time 30:00 to 10:30:59. Then, the key update unit 103 receives the key file 502a from 9:45:00 to 9:45:59 on November 1, 2006 and 10:15:00 to 10:15 on November 1, 2006. Assume that the 59-second key file 502b is accessed, and "Z" is added as a SIP parameter to the key file 502a and a key whose Call-ID in the key file 502b is "A". That is, in the following example, the VoIP packet whose Call-ID is “A” is transmitted at least three times (specifically, 9:45 on November 1, 2006, 10:15, 10:30). To be captured). Then, in the key file 502a of 9:45:00 to 9:45:59 on November 1, 2006, “X”, “Y”, and “Z” are set as SIP parameters as of November 1, 2006. In the key file 502b from 10:15:10 to 10:15:59 on the day, “Y” and “Z” are set as SIP parameters at 10: 30: 10: 00 on 1 November 2006 In the key file 502c of 30 minutes 59 seconds, “Z” is stored as the SIP parameter.

また、実施の形態1において、図16に示した例では、検索端末300のユーザが呼の開始時刻を検索条件として指定している。本実施の形態においても、同様の例が適用できるが、以下の例では、検索端末300のユーザが、任意の時刻を指定するものとする。   In Embodiment 1, in the example shown in FIG. 16, the user of the search terminal 300 specifies the call start time as the search condition. In this embodiment, the same example can be applied. In the following example, the user of the search terminal 300 designates an arbitrary time.

例えば2006年11月1日の10時15分に制御がなされた呼で特定の事象があったものを検索したい場合には、検索端末300のユーザは、時刻を、2006年11月1日の10時15分とし、SIPパラメータを、特定の事象があったことを示すステータスコードである“Z”とする検索条件を指定する。ここでは、検索端末300のユーザは、検索条件として、さらに、Call−IDを“A”と指定してもよいが、Call−IDが指定されない場合には、全てのCall−IDを検索の対象とすればよい。入力部106は、ユーザからの検索条件の入力を、キーボード902やマウス903を介して受け付ける。   For example, when a user wants to search for a call that was controlled at 10:15 on November 1, 2006 and had a specific event, the user of the search terminal 300 changed the time on November 1, 2006. The search condition is designated as 10:15, and the SIP parameter is “Z”, which is a status code indicating that a specific event has occurred. Here, the user of the search terminal 300 may further specify the Call-ID as “A” as a search condition. However, when the Call-ID is not specified, all the Call-IDs are searched. And it is sufficient. The input unit 106 receives input of search conditions from the user via the keyboard 902 and the mouse 903.

キー検索部107は、CPU911により、検索条件で指定された時刻に対応するキーファイル502として、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bを検索し、検索条件でステータスコードとして指定された“Z”を含むキーを全て抽出する。この例では、Call−IDが“A”であり、ステータスコードとして“Y”及び“Z”を含むキーを抽出する。また、このキーを記録しているキーファイル502bのレコードから、Call−IDのハッシュ値を取得する。2006年11月1日の10時30分00秒〜10時30分59秒のキーファイル502cにも、Call−IDが“A”であり、ステータスコードとして“Z”を含むキーが存在するが、キー検索部107はこのキーファイル502cを検索する必要がない。また、2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aにも、Call−IDが“A”であり、ステータスコードとして“Z”を含むキーが存在するが、キー検索部107はこのキーファイル502aも検索する必要がない。   The key retrieval unit 107 retrieves the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006 as the key file 502 corresponding to the time specified by the retrieval condition by the CPU 911. Then, all keys including “Z” specified as the status code in the search condition are extracted. In this example, the Call-ID is “A”, and keys including “Y” and “Z” as status codes are extracted. Further, the Call-ID hash value is acquired from the record of the key file 502b in which this key is recorded. The key file 502c on November 1, 2006 from 10:30 to 10:30:59 also has a key whose Call-ID is “A” and whose status code is “Z”. The key search unit 107 does not need to search the key file 502c. Also, the key file 502a of November 1, 2006 from 9:45:00 to 9:45:59 has a key with Call-ID “A” and status code “Z”. However, the key retrieval unit 107 does not need to retrieve the key file 502a.

アドレス検索部108は、CPU911により、2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bと現在時刻に対応するアドレスファイル504の間に保存された全てのアドレスファイル504を検索し、それぞれのアドレスファイル504から、キー検索部107により取得されたCall−IDのハッシュ値に対応するアドレスを抽出する。この例では、少なくとも2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bと図示していない2006年11月1日の10時30分00秒〜10時30分59秒のアドレスファイル504cからアドレスを抽出することになる。   The address search unit 108 uses the CPU 911 to store all the addresses stored between the address file 504b of 10: 15: 10-10: 15: 59 on November 1, 2006 and the address file 504 corresponding to the current time. The address file 504 is searched, and an address corresponding to the Call-ID hash value acquired by the key search unit 107 is extracted from each address file 504. In this example, the address file 504b of at least 10:15:00 to 10:15:59 on November 1, 2006 and 10:30:30 on November 1, 2006, not shown The address is extracted from the address file 504c of 30 minutes 59 seconds.

データ検索部109は、CPU911により、2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bから抽出されたアドレスに含まれるポインタが示す位置から、Call−IDとして“A”を含むVoIPパケットを抽出する。即ち、2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル505bから、Call−IDとして“A”を含むVoIPパケットを抽出する。また、データ検索部109は、アドレス検索部108により2006年11月1日の10時30分00秒〜10時30分59秒のアドレスファイル504cから抽出されたアドレスに含まれるポインタが示す位置から、Call−IDとして“A”を含むVoIPパケットを抽出する。即ち、図示していない2006年11月1日の10時30分00秒〜10時30分59秒のデータファイル505cから、Call−IDとして“A”を含むVoIPパケットを抽出する。その他、もしアドレスファイル504から抽出されたアドレスがあれば、同様に、当該アドレスに含まれるポインタが示す位置から、Call−IDとして“A”を含むVoIPパケットを抽出する。   The data search unit 109 executes the Call-ID from the position indicated by the pointer included in the address extracted from the address file 504b of 10:15:00 to 10:15:59 on November 1, 2006 by the CPU 911. VoIP packets including “A” are extracted. That is, the VoIP packet including “A” as the Call-ID is extracted from the data file 505b of 10:15:00 to 10:15:59 on November 1, 2006. Further, the data search unit 109 starts from the position indicated by the pointer included in the address extracted from the address file 504c from 10:30:30 to 10:30:59 on November 1, 2006 by the address search unit 108. , VoIP packets including “A” as the Call-ID are extracted. That is, a VoIP packet including “A” as the Call-ID is extracted from the data file 505c of 10:30:30 to 10:30:59 on November 1, 2006 (not shown). In addition, if there is an address extracted from the address file 504, similarly, a VoIP packet including “A” as the Call-ID is extracted from the position indicated by the pointer included in the address.

出力部110は、表示装置901の表示画面に、データ検索部109により抽出されたVoIPパケット、あるいは、当該VoIPパケットに含まれるCall−IDやSIPパラメータの一覧などを出力する。これにより、検索端末300のユーザは、2006年11月1日の10時15分に制御がなされた呼で特定の事象があったものを容易に発見することができる。   The output unit 110 outputs a VoIP packet extracted by the data search unit 109 or a list of Call-IDs and SIP parameters included in the VoIP packet to the display screen of the display device 901. As a result, the user of the search terminal 300 can easily find a call with a specific event controlled at 10:15 on November 1, 2006.

このように、本実施の形態では、ユーザが指定した時刻に対応するキーファイル502のみを検索すれば、読み出したキーに、その時刻以降に発生したSIPパラメータが全て追加されているので、呼に関する情報を効率的に取得することが可能となる。   In this way, in this embodiment, if only the key file 502 corresponding to the time specified by the user is searched, all the SIP parameters generated after that time are added to the read key. Information can be acquired efficiently.

実施の形態4.
実施の形態3において示した例では、検索端末300のユーザが任意の時刻を検索条件として指定している。一方、本実施の形態では、検索端末300のユーザが、任意の時間帯を指定するものとする。
Embodiment 4 FIG.
In the example shown in the third embodiment, the user of the search terminal 300 specifies an arbitrary time as a search condition. On the other hand, in the present embodiment, it is assumed that the user of search terminal 300 designates an arbitrary time zone.

例えば2006年11月1日の10時15分から10時30分に制御がなされた呼で特定の事象があったものを検索したい場合には、検索端末300のユーザは、時間帯の開始時刻を、2006年11月1日の10時15分とし、時間帯の終了時刻を、2006年11月1日の10時30分とし、SIPパラメータを、特定の事象があったことを示すステータスコードである“Z”とする検索条件を指定する。ここでも、検索端末300のユーザは、検索条件として、さらに、Call−IDを“A”と指定してもよいが、Call−IDが指定されない場合には、全てのCall−IDを検索の対象とすればよい。入力部106は、ユーザからの検索条件の入力を、キーボード902やマウス903を介して受け付ける。   For example, when a user who wants to search for a call that was controlled from 10:15 to 10:30 on November 1, 2006 and had a specific event, the user of the search terminal 300 sets the start time of the time zone. The time code is set to 10:15 on November 1, 2006, the end time of the time zone is set to 10:30 on November 1, 2006, and the SIP parameter is a status code indicating that a specific event has occurred. A search condition of “Z” is designated. Here, the user of the search terminal 300 may further specify the Call-ID as “A” as a search condition. However, when the Call-ID is not specified, all the Call-IDs are searched. And it is sufficient. The input unit 106 receives input of search conditions from the user via the keyboard 902 and the mouse 903.

キー検索部107は、CPU911により、検索条件で指定された時刻帯に対応するキーファイル502として、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bから2006年11月1日の10時30分00秒〜10時30分59秒のキーファイル502cまでの16個のキーファイル502を検索し、検索条件でステータスコードとして指定された“Z”を含むキーを全て抽出する。この例では、まず、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bから、Call−IDが“A”であり、ステータスコードとして“Y”及び“Z”を含むキーを抽出する。検索条件として、Call−IDのように一意に決まるSIPパラメータが指定されている場合には、この時点、即ち、最初のキーが抽出された時点でキー検索処理を終了してもよい(例えば、Call−IDとして“A”が指定されていれば、Call−IDが“A”である最初のキーが抽出されている現時点で、既に必要なキーは抽出されている)。その他の場合には、上記時間帯に対応するキーファイル502を古いものから順次検索して、Call−IDのように一意に決まるSIPパラメータが同一の2番目以降のキーは、対象外とみなしてもよい。キー検索部107は、抽出したキーを記録しているキーファイル502のレコードから、Call−IDのハッシュ値を取得する。   The key search unit 107 uses the key file 502b from 10:15:00 to 10:15:59 on November 1, 2006 as a key file 502 corresponding to the time zone specified by the search condition by the CPU 911. Search for 16 key files 502 from 10:30:30 to 10:30:59 on November 1, 2006, and include “Z” specified as the status code in the search condition. Extract all keys. In this example, first, from the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006, the Call-ID is “A”, and “Y” and “ Extract the key containing Z ″. When a SIP parameter that is uniquely determined such as Call-ID is specified as a search condition, the key search process may be terminated at this point, that is, when the first key is extracted (for example, If “A” is specified as the Call-ID, the first key whose Call-ID is “A” has been extracted, and the necessary key has already been extracted). In other cases, the key file 502 corresponding to the above time zone is sequentially searched from the oldest one, and the second and subsequent keys having the same SIP parameter uniquely determined such as Call-ID are regarded as excluded. Also good. The key search unit 107 acquires a Call-ID hash value from the record of the key file 502 in which the extracted key is recorded.

アドレス検索部108は、CPU911により、2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bと2006年11月1日の10時30分00秒〜10時30分59秒のアドレスファイル504cの間に保存された全てのアドレスファイル504を検索し、それぞれのアドレスファイル504から、キー検索部107により取得されたCall−IDのハッシュ値に対応するアドレスを抽出する。この例では、少なくとも2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bと図示していない2006年11月1日の10時30分00秒〜10時30分59秒のアドレスファイル504cからアドレスを抽出することになる。   The address search unit 108 uses the CPU 911 to execute an address file 504b of 10:15:00 to 10:15:59 on November 1, 2006 and 10:30:10 to 10:00 on November 1, 2006. All the address files 504 stored in the 30 minute 59 second address file 504c are searched, and an address corresponding to the Call-ID hash value acquired by the key search unit 107 is extracted from each address file 504. To do. In this example, the address file 504b of at least 10:15:00 to 10:15:59 on November 1, 2006 and 10:30:30 on November 1, 2006, not shown The address is extracted from the address file 504c of 30 minutes 59 seconds.

データ検索部109は、CPU911により、2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bから抽出されたアドレスに含まれるポインタが示す位置から、Call−IDとして“A”を含むVoIPパケットを抽出する。即ち、2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル505bから、Call−IDとして“A”を含むVoIPパケットを抽出する。また、データ検索部109は、アドレス検索部108により2006年11月1日の10時30分00秒〜10時30分59秒のアドレスファイル504cから抽出されたアドレスに含まれるポインタが示す位置から、Call−IDとして“A”を含むVoIPパケットを抽出する。即ち、図示していない2006年11月1日の10時30分00秒〜10時30分59秒のデータファイル505cから、Call−IDとして“A”を含むVoIPパケットを抽出する。その他、もしアドレスファイル504から抽出されたアドレスがあれば、同様に、当該アドレスに含まれるポインタが示す位置から、Call−IDとして“A”を含むVoIPパケットを抽出する。   The data search unit 109 executes the Call-ID from the position indicated by the pointer included in the address extracted from the address file 504b of 10:15:00 to 10:15:59 on November 1, 2006 by the CPU 911. VoIP packets including “A” are extracted. That is, the VoIP packet including “A” as the Call-ID is extracted from the data file 505b of 10:15:00 to 10:15:59 on November 1, 2006. Further, the data search unit 109 starts from the position indicated by the pointer included in the address extracted from the address file 504c from 10:30:30 to 10:30:59 on November 1, 2006 by the address search unit 108. , VoIP packets including “A” as the Call-ID are extracted. That is, a VoIP packet including “A” as the Call-ID is extracted from the data file 505c of 10:30:30 to 10:30:59 on November 1, 2006 (not shown). In addition, if there is an address extracted from the address file 504, similarly, a VoIP packet including “A” as the Call-ID is extracted from the position indicated by the pointer included in the address.

出力部110は、表示装置901の表示画面に、データ検索部109により抽出されたVoIPパケット、あるいは、当該VoIPパケットに含まれるCall−IDやSIPパラメータの一覧などを出力する。これにより、検索端末300のユーザは、2006年11月1日の10時15分から10時30分に制御がなされた呼で特定の事象があったものを容易に発見することができる。   The output unit 110 outputs a VoIP packet extracted by the data search unit 109 or a list of Call-IDs and SIP parameters included in the VoIP packet to the display screen of the display device 901. As a result, the user of the search terminal 300 can easily find a call that was controlled from 10:15 on November 1, 2006 to 10:30 and had a specific event.

このように、本実施の形態では、ユーザが指定した時間帯に対応するキーファイル502から各Call−IDについて最初に読み出したキーに、そのキーが対応する時刻以降に発生したSIPパラメータが全て追加されているので、呼に関する情報を効率的に取得することが可能となる。   As described above, in this embodiment, all the SIP parameters generated after the time corresponding to the key are added to the first read key for each Call-ID from the key file 502 corresponding to the time zone specified by the user. Therefore, it is possible to efficiently obtain information regarding calls.

実施の形態5.
実施の形態1において、図7に示した例では、データ管理部105は、キャプチャファイル501bに保存されているVoIPパケットを抽出する度に、それぞれのVoIPパケットをCall−IDのハッシュ値の昇順に並べて、それぞれのデータファイル505内で同じCall−IDのVoIPパケットがまとめて配置されるようにしていたが、磁気ディスク装置920(記憶装置151の一例)内のデータファイル505全体で同じCall−IDのVoIPパケットがまとめて配置されるようにしてもよい。
Embodiment 5. FIG.
In Embodiment 1, in the example illustrated in FIG. 7, each time the data management unit 105 extracts a VoIP packet stored in the capture file 501b, each VoIP packet is sorted in the ascending order of the hash value of the Call-ID. The VoIP packets having the same Call-ID are arranged together in each data file 505, but the same Call-ID is used in the entire data file 505 in the magnetic disk device 920 (an example of the storage device 151). VoIP packets may be arranged together.

例えば、キー生成部102が、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bを生成した後、データ管理部105は、2006年11月1日の10時15分00秒〜10時15分59秒のキャプチャファイル501bを磁気ディスク装置920から読み込み、このキャプチャファイル501bに保存されているVoIPパケットからCall−IDを抽出する。データ管理部105は、抽出したCall−IDのうち、キー生成部102が過去のキーファイル502に保存したキーと同じものについては無視する。この例では、キー更新部103が、Call−IDを“A”とするキーが2006年11月1日の9時45分00秒〜9時45分59秒のキーファイル502aに保存されていることを検出するため、データ管理部105は、このCall−IDを無視する。一方、データ管理部105は、2006年11月1日の10時15分00秒〜10時15分59秒のキーファイル502bに保存されたキーが、対応するCall−IDの最初のキーであれば、そのCall−IDについては、ハッシュ値を計算し、計算したハッシュ値に基づいて、そのCall−IDを含むVoIPパケットの保存位置を決定する。データ管理部105は、さらに、決定した保存位置に各Call−IDのVoIPパケットがまとめて配置されるように、2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル505bを生成し、磁気ディスク装置920内に保存する。   For example, after the key generation unit 102 generates the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006, the data management unit 105 The capture file 501b from 10:15:00 to 10:15:59 is read from the magnetic disk device 920, and the Call-ID is extracted from the VoIP packet stored in the capture file 501b. The data management unit 105 ignores the extracted Call-ID that is the same as the key stored in the past key file 502 by the key generation unit 102. In this example, the key updating unit 103 stores a key having Call-ID “A” in the key file 502 a from 9:45:00 to 9:45:59 on November 1, 2006. In order to detect this, the data management unit 105 ignores the Call-ID. On the other hand, the data management unit 105 determines that the key stored in the key file 502b of 10:15:00 to 10:15:59 on November 1, 2006 is the first key of the corresponding Call-ID. For example, for the Call-ID, a hash value is calculated, and the storage location of the VoIP packet including the Call-ID is determined based on the calculated hash value. Further, the data management unit 105 further sets the VoIP packets of each Call-ID at the determined storage location at 10:15:10 to 10:15:59 on November 1, 2006. A data file 505b is generated and stored in the magnetic disk device 920.

このとき、データ管理部105は、今回ハッシュ値を計算していないCall−IDを含むVoIPパケットは、過去のデータファイル505に保存すべきものであると判断する。そして、それぞれのVoIPパケットのCall−IDのキーが保存されているキーファイル502の時間と対応する磁気ディスク装置920内の過去のデータファイル505を検索し、同じCall−IDのVoIPパケットが保存されているデータファイル505に今回のVoIPパケットを挿入する。これにより、磁気ディスク装置920内のデータファイル505全体で同じCall−IDのVoIPパケットがまとめて配置されるようにする。   At this time, the data management unit 105 determines that the VoIP packet including the Call-ID for which the hash value has not been calculated this time should be stored in the past data file 505. Then, the past data file 505 in the magnetic disk device 920 corresponding to the time of the key file 502 in which the Call-ID key of each VoIP packet is stored is searched, and the same Call-ID VoIP packet is stored. The current VoIP packet is inserted into the existing data file 505. As a result, the same Call-ID VoIP packets are collectively arranged in the entire data file 505 in the magnetic disk device 920.

アドレス生成部104は、図7に示した例と同様に、2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル505bを磁気ディスク装置920から読み込み、このデータファイル505bに保存されているVoIPパケットの保存位置を、Call−IDごとに特定する。そして、VoIPパケットの保存位置の先頭へのポインタ(データファイル505b内のオフセット値)とサイズ情報をCall−IDごとに組み合わせ、各Call−IDのハッシュ値に対応するアドレスとして、2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bを生成し、磁気ディスク装置920内に保存する。   The address generation unit 104 reads the data file 505b of 10:15:00 to 10:15:59 on November 1, 2006 from the magnetic disk device 920 as in the example shown in FIG. The storage position of the VoIP packet stored in the file 505b is specified for each Call-ID. Then, a pointer to the head of the storage position of the VoIP packet (offset value in the data file 505b) and size information are combined for each Call-ID, and an address corresponding to the hash value of each Call-ID is set as November 1, 2006. An address file 504b of 10:15:00 to 10:15:59 is generated and stored in the magnetic disk device 920.

このように、本実施の形態では、VoIPパケットが磁気ディスク装置920内のデータファイル505全体でCall−IDごとにまとめて配置されるため、検索端末300のユーザが、例えば2006年11月1日の9時45分に開始された呼で異常切断があったものを検索したい場合には、アドレス検索部108は、2006年11月1日の9時45分00秒〜9時45分59秒のアドレスファイル504aのみを検索すればよい。そして、データ検索部109は、アドレス検索部108により2006年11月1日の9時45分00秒〜9時45分59秒のアドレスファイル504aから抽出されたアドレスに基づいて、2006年11月1日の9時45分00秒〜9時45分59秒のデータファイル505aのみにアクセスし、2006年11月1日の9時45分に開始された呼に係るVoIPパケットを全て抽出することができる。   As described above, in this embodiment, since the VoIP packets are collectively arranged for each Call-ID in the entire data file 505 in the magnetic disk device 920, the user of the search terminal 300, for example, on November 1, 2006 In the case where it is desired to search for an abnormal disconnection of a call that was started at 9:45, the address search unit 108 selects 9:45:59 on November 1, 2006 to 9:45:59. Only the address file 504a of the current address needs to be searched. Then, the data search unit 109 uses the address extracted from the address file 504a from 9:45:00 to 9:45:59 on November 1, 2006 by the address search unit 108, based on November 2006. Access only the data file 505a from 9:45:00 to 9:45:59 on the 1st, and extract all VoIP packets related to the call started at 9:45 on 1 November 2006 Can do.

この例では、データ管理部105は、2006年11月1日の10時15分00秒〜10時15分59秒のアドレスファイル504bにアドレスが含まれていないVoIPパケットを、過去のデータファイル505に保存しているが、それぞれのVoIPパケットを2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル505bに保存し、同じCall−IDのVoIPパケットが保存されているデータファイル505からのリンクを設定してもよい。この場合も、例えば2006年11月1日の9時45分に開始された呼で異常切断があったものを検索したいときには、アドレス検索部108は、2006年11月1日の9時45分00秒〜9時45分59秒のアドレスファイル504aのみを検索すればよい。そして、データ検索部109は、アドレス検索部108により2006年11月1日の9時45分00秒〜9時45分59秒のアドレスファイル504aから抽出されたアドレスに基づいて、2006年11月1日の9時45分00秒〜9時45分59秒のデータファイル505aにアクセスし、さらにそのデータファイル505aのリンク先である2006年11月1日の10時15分00秒〜10時15分59秒のデータファイル504bにもアクセスする。これにより、2006年11月1日の9時45分に開始された呼に係るVoIPパケットを全て抽出することができる。   In this example, the data management unit 105 converts a VoIP packet whose address is not included in the address file 504b of 10:15:00 to 10:15:59 on November 1, 2006, into the past data file 505. Are stored in the data file 505b of 10:15:00 to 10:15:59 on November 1, 2006, and the same Call-ID VoIP packet is saved. A link from the data file 505 may be set. Also in this case, for example, when it is desired to search for a call that was disconnected at 9:45 on November 1, 2006 and was abnormally disconnected, the address search unit 108: 9:45 on November 1, 2006 Only the address file 504a from 00 seconds to 9:45:59 needs to be searched. Then, the data search unit 109 uses the address extracted from the address file 504a from 9:45:00 to 9:45:59 on November 1, 2006 by the address search unit 108, based on November 2006. The data file 505a from 9:45:00 to 9:45:59 is accessed on the 1st day, and the link destination of the data file 505a is 15:00, 10:00 on November 1, 2006. The data file 504b of 15 minutes 59 seconds is also accessed. Thereby, all the VoIP packets related to the call started at 9:45 on November 1, 2006 can be extracted.

以上、本発明の実施の形態について説明したが、これらのうち、2つ以上の実施の形態を組み合わせて実施しても構わない。あるいは、これらのうち、1つの実施の形態を部分的に実施しても構わない。あるいは、これらのうち、2つ以上の実施の形態を部分的に組み合わせて実施しても構わない。   As mentioned above, although embodiment of this invention was described, you may implement combining 2 or more embodiment among these. Alternatively, one of these embodiments may be partially implemented. Or you may implement combining two or more embodiment among these partially.

実施の形態1に係る呼制御データ検索システムの構成を示すブロック図である。1 is a block diagram showing a configuration of a call control data search system according to Embodiment 1. FIG. 実施の形態1に係る呼制御データ検索システムのハードウェア資源の一例を示す図である。3 is a diagram illustrating an example of hardware resources of the call control data search system according to Embodiment 1. FIG. 実施の形態1に係る呼制御データ検索システムの動作を示すフローチャートである。3 is a flowchart showing an operation of the call control data search system according to the first embodiment. 実施の形態1に係る呼制御データ検索システムの動作を示すフローチャートである。3 is a flowchart showing an operation of the call control data search system according to the first embodiment. 実施の形態1に係る呼制御データ検索システムの動作を示すフローチャートである。3 is a flowchart showing an operation of the call control data search system according to the first embodiment. 実施の形態1に係る呼制御データ検索システムの動作の一例を示す概念図である。6 is a conceptual diagram illustrating an example of an operation of the call control data search system according to Embodiment 1. FIG. 実施の形態1に係る呼制御データ検索システムの動作の一例を示す概念図である。6 is a conceptual diagram illustrating an example of an operation of the call control data search system according to Embodiment 1. FIG. 実施の形態1に係る呼制御データ検索システムの動作の一例を示す概念図である。6 is a conceptual diagram illustrating an example of an operation of the call control data search system according to Embodiment 1. FIG. 実施の形態1に係る呼制御データ検索システムの動作の一例を示す概念図である。6 is a conceptual diagram illustrating an example of an operation of the call control data search system according to Embodiment 1. FIG. 実施の形態1におけるキーファイルの構成の一例を示す表である。4 is a table illustrating an example of a configuration of a key file in the first embodiment. 実施の形態1におけるキーの構成の一例を示す表である。4 is a table showing an example of a key configuration in the first embodiment. 実施の形態1におけるキーファイルのレコードの一例を示す概念図である。3 is a conceptual diagram illustrating an example of a key file record in Embodiment 1. FIG. 実施の形態1におけるキーファイルのレコードの一例を示す概念図である。3 is a conceptual diagram illustrating an example of a key file record in Embodiment 1. FIG. 実施の形態1におけるキーファイルのレコードの一例を示す概念図である。3 is a conceptual diagram illustrating an example of a key file record in Embodiment 1. FIG. 実施の形態1におけるキーファイルのレコードの一例を示す概念図である。3 is a conceptual diagram illustrating an example of a key file record in Embodiment 1. FIG. 実施の形態1に係る呼制御データ検索システムの動作の一例を示す概念図である。6 is a conceptual diagram illustrating an example of an operation of the call control data search system according to Embodiment 1. FIG.

符号の説明Explanation of symbols

100 呼制御データ検索システム、101 データキャプチャ部、102 キー生成部、103 キー更新部、104 アドレス生成部、105 データ管理部、106 入力部、107 キー検索部、108 アドレス検索部、109 データ検索部、110 出力部、151 記憶装置、152 処理装置、153 入力装置、154 出力装置、200 VoIPネットワーク、300 検索端末、501 キャプチャファイル、502 キーファイル、503 メモリ、504 アドレスファイル、505 データファイル、901 表示装置、902 キーボード、903 マウス、904 FDD、905 CDD、906 プリンタ装置、911 CPU、912 バス、913 ROM、914 RAM、915 通信ボード、920 磁気ディスク装置、921 オペレーティングシステム、923 プログラム群、924 ファイル群。   100 call control data search system, 101 data capture unit, 102 key generation unit, 103 key update unit, 104 address generation unit, 105 data management unit, 106 input unit, 107 key search unit, 108 address search unit, 109 data search unit , 110 output unit, 151 storage device, 152 processing device, 153 input device, 154 output device, 200 VoIP network, 300 search terminal, 501 capture file, 502 key file, 503 memory, 504 address file, 505 data file, 901 display Device, 902 keyboard, 903 mouse, 904 FDD, 905 CDD, 906 printer device, 911 CPU, 912 bus, 913 ROM, 914 RAM, 915 communication board, 920 magnetic disk Click device, 921 operating system, 923 Program group, 924 File group.

Claims (7)

ファイルを記憶する記憶装置と、データを処理する処理装置と、データを入力する入力装置とを備える呼制御データ検索システムにおいて、
呼を一意に識別する呼識別子と呼の属性を示す少なくとも1つの属性データとを含む呼制御データをネットワークからキャプチャし、キャプチャした呼制御データを単位時間Tcごとに記憶装置内の単位時間Tcごとのキャプチャファイルに保存するデータキャプチャ部と、
前記データキャプチャ部によりキャプチャファイルに保存された呼制御データの属性データを含むキーを、処理装置を用いて、当該呼制御データの呼識別子ごとに生成し、生成したキーを記憶装置内の単位時間Tkごとのキーファイルに保存するキー生成部と、
前記キー生成部によりキーファイルにキーが保存されるときに、処理装置を用いて、過去のキーファイルに当該キーの呼識別子と同じ呼識別子に対応するキーが保存されているかどうかを判定し、当該過去のキーファイルに当該呼識別子のキーが保存されている場合には、当該過去のキーファイルに保存されている当該呼識別子のキーに、前記キー生成部によりキーファイルに保存される当該呼識別子のキーの属性データを追加するキー更新部と、
前記データキャプチャ部によりキャプチャファイルに保存された呼制御データを、所定の形式で、記憶装置内の単位時間Tdごとのデータファイルに保存するデータ管理部と、
入力装置を用いて、任意の時刻を入力する入力部と、
処理装置を用いて、前記入力部により入力された時刻に対応するキーファイルを検索し、キーを抽出するキー検索部と、
処理装置を用いて、データファイルを検索し、前記キー検索部により抽出されたキーの呼識別子と同じ呼識別子を含む呼制御データを抽出するデータ検索部とを備えることを特徴とする呼制御データ検索システム。
In a call control data retrieval system comprising a storage device for storing a file, a processing device for processing data, and an input device for inputting data,
Call control data including a call identifier for uniquely identifying a call and at least one attribute data indicating a call attribute is captured from the network, and the captured call control data is stored for each unit time Tc in the storage device for each unit time Tc. A data capture section to save to a capture file of
A key including attribute data of call control data stored in a capture file by the data capture unit is generated for each call identifier of the call control data using a processing device, and the generated key is stored in a unit time in a storage device. A key generation unit that saves the key file for each Tk;
When a key is stored in a key file by the key generation unit, using a processing device, it is determined whether a key corresponding to the same call identifier as the call identifier of the key is stored in a past key file, If the call identifier key is stored in the past key file, the call generator stores the call identifier stored in the key file by the key generation unit. A key update unit for adding attribute data of an identifier key;
A data management unit for storing call control data stored in a capture file by the data capture unit in a predetermined format in a data file for each unit time Td in the storage device;
An input unit for inputting an arbitrary time using an input device;
Using a processing device, search for a key file corresponding to the time input by the input unit, and extract a key;
Call control data comprising: a data search unit that searches for a data file using a processing device and extracts call control data that includes the same call identifier as the key call identifier extracted by the key search unit Search system.
前記入力部は、入力装置を用いて、任意の時刻と少なくとも1つの属性データとを入力し、
前記キー検索部は、前記入力部により入力された時刻に対応するキーファイルを検索し、前記入力部により入力された属性データを含むキーを抽出することを特徴とする請求項1に記載の呼制御データ検索システム。
The input unit inputs an arbitrary time and at least one attribute data using an input device,
The call according to claim 1, wherein the key search unit searches for a key file corresponding to the time input by the input unit, and extracts a key including attribute data input by the input unit. Control data retrieval system.
前記キー更新部は、前記キー生成部によりキーファイルにキーが保存されるときに、処理装置を用いて、過去のキーファイルであって当該キーの呼識別子と同じ呼識別子に対応するキーが最初に保存されたキーファイルを検出し、検出した過去のキーファイルに保存されている当該呼識別子のキーに、前記キー生成部によりキーファイルに保存される当該呼識別子のキーの属性データを追加し、
前記入力部は、任意の時刻として呼の開始時刻を入力することを特徴とする請求項1に記載の呼制御データ検索システム。
When the key is stored in the key file by the key generation unit, the key update unit uses a processing device to first select a key corresponding to the same call identifier as the call identifier of the key in the past key file. The key identifier stored in the key identifier stored in the key file by the key generation unit is added to the key of the call identifier stored in the detected past key file. ,
The call control data search system according to claim 1, wherein the input unit inputs a call start time as an arbitrary time.
単位時間Tcと単位時間Tkと単位時間Tdとは、いずれも同じ長さであることを特徴とする請求項1に記載の呼制御データ検索システム。   The call control data search system according to claim 1, wherein the unit time Tc, the unit time Tk, and the unit time Td are all the same length. 前記データ管理部は、前記データキャプチャ部によりキャプチャファイルに保存された呼制御データを、当該呼制御データの呼識別子ごとにまとめて保存し、
前記呼制御データ検索システムは、さらに、
前記データ管理部によりデータファイルに呼制御データが保存された位置を示すアドレスを、処理装置を用いて、当該呼制御データの呼識別子ごとに生成し、生成したアドレスを記憶装置内の単位時間Taごとのアドレスファイルに保存するアドレス生成部と、
処理装置を用いて、アドレスファイルを検索し、前記キー検索部により抽出されたキーの呼識別子と同じ呼識別子に対応するアドレスを抽出するアドレス検索部とを備え、
前記データ検索部は、前記アドレス検索部により抽出されたアドレスが示す位置から、前記キー検索部により抽出されたキーの呼識別子と同じ呼識別子を含む呼制御データを抽出することを特徴とする請求項1に記載の呼制御データ検索システム。
The data management unit stores the call control data saved in the capture file by the data capture unit together for each call identifier of the call control data,
The call control data retrieval system further includes:
An address indicating the location where the call control data is stored in the data file by the data management unit is generated for each call identifier of the call control data using the processing device, and the generated address is stored in the unit time Ta in the storage device. An address generator to be stored in each address file;
An address search unit that searches for an address file using a processing device and extracts an address corresponding to the same call identifier as the call identifier of the key extracted by the key search unit;
The data search unit extracts call control data including a call identifier that is the same as a call identifier of a key extracted by the key search unit from a position indicated by an address extracted by the address search unit. Item 4. The call control data retrieval system according to Item 1.
単位時間Tcと単位時間Tkと単位時間Taと単位時間Tdとは、いずれも同じ長さであることを特徴とする請求項5に記載の呼制御データ検索システム。   6. The call control data search system according to claim 5, wherein the unit time Tc, the unit time Tk, the unit time Ta, and the unit time Td are all the same length. ファイルを記憶する記憶装置と、データを処理する処理装置と、データを入力する入力装置とを備えるコンピュータに、
呼を一意に識別する呼識別子と呼の属性を示す少なくとも1つの属性データとを含む呼制御データをネットワークからキャプチャし、キャプチャした呼制御データを単位時間Tcごとに記憶装置内の単位時間Tcごとのキャプチャファイルに保存するデータキャプチャ処理と、
前記データキャプチャ処理によりキャプチャファイルに保存された呼制御データの属性データを含むキーを、処理装置を用いて、当該呼制御データの呼識別子ごとに生成し、生成したキーを記憶装置内の単位時間Tkごとのキーファイルに保存するキー生成処理と、
前記キー生成処理によりキーファイルにキーが保存されるときに、処理装置を用いて、過去のキーファイルに当該キーの呼識別子と同じ呼識別子に対応するキーが保存されているかどうかを判定し、当該過去のキーファイルに当該呼識別子のキーが保存されている場合には、当該過去のキーファイルに保存されている当該呼識別子のキーに、前記キー生成処理によりキーファイルに保存される当該呼識別子のキーの属性データを追加するキー更新処理と、
前記データキャプチャ処理によりキャプチャファイルに保存された呼制御データを、所定の形式で、記憶装置内の単位時間Tdごとのデータファイルに保存するデータ管理処理と、
入力装置を用いて、任意の時刻を入力する入力処理と、
処理装置を用いて、前記入力処理により入力された時刻に対応するキーファイルを検索し、キーを抽出するキー検索処理と、
処理装置を用いて、データファイルを検索し、前記キー検索処理により抽出されたキーの呼識別子と同じ呼識別子を含む呼制御データを抽出するデータ検索処理とを実行させることを特徴とする呼制御データ検索プログラム。
In a computer comprising a storage device for storing a file, a processing device for processing data, and an input device for inputting data,
Call control data including a call identifier for uniquely identifying a call and at least one attribute data indicating a call attribute is captured from the network, and the captured call control data is stored for each unit time Tc in the storage device for each unit time Tc. Data capture process to save to a capture file of
A key including the attribute data of the call control data stored in the capture file by the data capture process is generated for each call identifier of the call control data using the processing device, and the generated key is stored in a unit time in the storage device. Key generation processing to be stored in a key file for each Tk;
When a key is stored in the key file by the key generation process, the processing device is used to determine whether or not a key corresponding to the same call identifier as the call identifier of the key is stored in the past key file, If the key of the call identifier is stored in the past key file, the call stored in the key file by the key generation process is added to the key of the call identifier stored in the past key file. Key update processing to add identifier key attribute data,
A data management process for storing the call control data stored in the capture file by the data capture process in a data file for each unit time Td in the storage device in a predetermined format;
An input process for inputting an arbitrary time using an input device;
Using a processing device, search for a key file corresponding to the time input by the input process, and extract a key;
Call control characterized in that a data search is performed using a processing device to search a data file and to extract call control data including the same call identifier as the key call identifier extracted by the key search processing Data retrieval program.
JP2006305847A 2006-11-10 2006-11-10 Call control data retrieval system and call control data retrieval program Expired - Fee Related JP4091645B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006305847A JP4091645B1 (en) 2006-11-10 2006-11-10 Call control data retrieval system and call control data retrieval program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006305847A JP4091645B1 (en) 2006-11-10 2006-11-10 Call control data retrieval system and call control data retrieval program

Publications (2)

Publication Number Publication Date
JP4091645B1 JP4091645B1 (en) 2008-05-28
JP2008124758A true JP2008124758A (en) 2008-05-29

Family

ID=39509063

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006305847A Expired - Fee Related JP4091645B1 (en) 2006-11-10 2006-11-10 Call control data retrieval system and call control data retrieval program

Country Status (1)

Country Link
JP (1) JP4091645B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10419352B2 (en) 2016-09-15 2019-09-17 Fujitsu Limited Packet control apparatus and packet control system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10419352B2 (en) 2016-09-15 2019-09-17 Fujitsu Limited Packet control apparatus and packet control system

Also Published As

Publication number Publication date
JP4091645B1 (en) 2008-05-28

Similar Documents

Publication Publication Date Title
US7287136B2 (en) Cache device, and method and computer program for controlling cached data
US20050131923A1 (en) Information processing apparatus and its control method
US11947614B1 (en) Method and system for centralized multi-instance deployment consolidation
KR20030006734A (en) Method and system for managing image data via network
JP2007095059A (en) Method and system for transmitting query to database
KR20030047856A (en) Data processing system, data processing method, information processing device, and computer program
JP4829653B2 (en) Address information management system, management server, and address book update method
US7533125B2 (en) Managing a data file with an access code
JP4419858B2 (en) Voice message transmission system and program
US20070168453A1 (en) Function managing apparatus
JP4091645B1 (en) Call control data retrieval system and call control data retrieval program
JP4645418B2 (en) Image message transmission system and program
US11895237B1 (en) Scaled authentication of endpoint devices
CN109657440B (en) Block chain-based biological characteristic information processing method and device and terminal equipment
JP4429173B2 (en) Method and computer system for triggering action based on digital communication data
US20080242361A1 (en) Communication terminal and computer readable medium
JP7392852B2 (en) Rule generation device, rule generation method and program
JP2007200047A (en) Access log-displaying system and method
JP4729089B2 (en) Website counting device and website counting program
KR20100133646A (en) Application signature generation method
CN111367691A (en) Data feedback method and device, electronic equipment and storable medium
JP2006113663A (en) Data storage system, its method, file server, terminal and program
JP3885050B2 (en) Network management method
JP2012064239A (en) Method of managing retrieval mediation information, and retrieval mediation information management system
KR102644076B1 (en) Apparatus and method for recovering deleted chat messages based on fts index data

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080228

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: 20110307

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110307

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140307

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees