JP6734248B2 - Format conversion device and format conversion program - Google Patents

Format conversion device and format conversion program Download PDF

Info

Publication number
JP6734248B2
JP6734248B2 JP2017226004A JP2017226004A JP6734248B2 JP 6734248 B2 JP6734248 B2 JP 6734248B2 JP 2017226004 A JP2017226004 A JP 2017226004A JP 2017226004 A JP2017226004 A JP 2017226004A JP 6734248 B2 JP6734248 B2 JP 6734248B2
Authority
JP
Japan
Prior art keywords
packet
unit
protocol stack
protocol
format conversion
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.)
Active
Application number
JP2017226004A
Other languages
Japanese (ja)
Other versions
JP2019097069A (en
Inventor
裕平 林
裕平 林
勝彦 阪井
勝彦 阪井
伊知郎 工藤
伊知郎 工藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017226004A priority Critical patent/JP6734248B2/en
Publication of JP2019097069A publication Critical patent/JP2019097069A/en
Application granted granted Critical
Publication of JP6734248B2 publication Critical patent/JP6734248B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、フォーマット変換装置及びフォーマット変換プログラムに関する。 The present invention relates to a format conversion device and a format conversion program.

近年、インターネットの普及に伴い、DDoS攻撃が急増している。このような攻撃に対する解析ツールとして、Mitigation装置やIDS(Intrusion Detection System)やWAF(Web Application Firewall)等の解析ツールが使用される。 In recent years, with the spread of the Internet, the number of DDoS attacks has increased rapidly. As an analysis tool for such an attack, an analysis tool such as a mitigation device, IDS (Intrusion Detection System) or WAF (Web Application Firewall) is used.

この一般の解析ツールでは、パケット転送においてトンネリングを行っているネットワークに対し、トンネルプロトコルをサポートしていない場合があった。そこで、従来、トンネルプロトコルをサポートしていない解析ツールでもパケットを解析できるようにするために、パケットのトンネルプロトコルを検知してプロトコルヘッダ部分を削除し、パケットフォーマットを変換する技術が提案されている(例えば、非特許文献1,2参照)。 This general analysis tool may not support the tunnel protocol for networks that are tunneling in packet transfer. Therefore, in order to enable a packet to be analyzed by an analysis tool that does not support the tunnel protocol, a technology has been proposed that detects the tunnel protocol of the packet, deletes the protocol header part, and converts the packet format. (See, for example, Non-Patent Documents 1 and 2).

Ixia,“Vision ONE”,[平成29年10月26日検索],インターネット<URL:https://www.ixiacom.com/ja/products/vision-one>Ixia, "Vision ONE", [October 26, 2017 search], Internet <URL: https://www.ixiacom.com/ja/products/vision-one> Ixia,“Vision ONE DATA SHEET”,[平成29年10月26日検索],インターネット<URL:https://www.ixiacom.com/sites/default/files/2017-07/915-6691-01-V-DS-Vision-ONE.pdf>Ixia, "Vision ONE DATA SHEET", [Search on October 26, 2017], Internet <URL: https://www.ixiacom.com/sites/default/files/2017-07/915-6691-01- V-DS-Vision-ONE.pdf>

図48は、従来技術に係るフォーマット変換装置の処理を説明する図である。図48に示すように、例えば、ネットワークからは、トンネリングのためにEtherヘッダ以降に任意のプロトコルヘッダがスタックされたパケットが入力される。そして、解析ツール20Pの解析対象がインナーパケット(IPv4)Pa,Pbである場合には、インナーパケット(IPv4)以外のプロトコルヘッダが削除されたパケットを解析ツール20Pに入力する必要がある。 FIG. 48 is a diagram illustrating a process of a format conversion device according to the related art. As shown in FIG. 48, for example, a packet in which an arbitrary protocol header is stacked after the Ether header for tunneling is input from the network. When the analysis object of the analysis tool 20P is the inner packets (IPv4) Pa and Pb, it is necessary to input to the analysis tool 20P a packet from which the protocol header other than the inner packet (IPv4) has been deleted.

しかしながら、従来技術に係るフォーマット変換装置10Pは、変換可能なトンネルパケットが限定されていた(図48の(1)参照)。具体的には、フォーマット変換装置10Pでは、削除可能なプロトコルヘッダの種類が限定されていた。このため、フォーマット変換装置10Pは、変換対象ではないパケットC1が入力されると、パケットC1のフォーマットを変換できずにそのまま解析ツール20Pに出力していた。この場合、解析ツール20Pでは、このパケットC1については、解析不能となっていた(図48の(2)参照)。 However, in the format conversion device 10P according to the related art, the tunnel packets that can be converted are limited (see (1) in FIG. 48). Specifically, in the format conversion device 10P, the types of deletable protocol headers are limited. Therefore, when the packet C1 that is not the conversion target is input, the format conversion device 10P cannot convert the format of the packet C1 and directly outputs it to the analysis tool 20P. In this case, the analysis tool 20P cannot analyze the packet C1 (see (2) in FIG. 48).

また、従来技術に係るフォーマット変換装置10Pは、多段でカプセル化されているパケットの場合は一段のみしかプロトコルヘッダが削除できなかった(図48の(3)参照)。例えば、フォーマット変換装置10Pは、多段のパケットC2が入力されると、プロトコルヘッダのうちカプセルヘッダ(MPLS)一段しか削除できなかった。この場合、解析ツール20Pでは、フォーマット変換装置10Pから出力されたパケットC2P´については、カプセルヘッダ(IPv6)が残存しているため、解析不能となる(図48の(2)参照)。 Further, the format conversion device 10P according to the related art can delete the protocol header only in one stage in the case of a packet encapsulated in multiple stages (see (3) in FIG. 48). For example, when the multi-stage packet C2 is input, the format conversion device 10P can delete only one stage of the capsule header (MPLS) in the protocol header. In this case, the analysis tool 20P cannot analyze the packet C2P′ output from the format conversion device 10P because the capsule header (IPv6) remains (see (2) in FIG. 48).

このように、従来のフォーマット変換装置10Pは、入力されたトンネルパケットによっては、解析ツール20Pが解析可能であるフォーマットに変換することができない場合があった。 As described above, the conventional format conversion device 10P may not be able to convert the format into a format that can be analyzed by the analysis tool 20P depending on the input tunnel packet.

本発明は、上記に鑑みてなされたものであって、フォーマットによらず、入力されたトンネルパケットを、解析ツールが解析可能であるフォーマットに変換することができるフォーマット変換装置及びフォーマット変換プログラムを提供することを目的とする。 The present invention has been made in view of the above, and provides a format conversion device and a format conversion program that can convert an input tunnel packet into a format that can be analyzed by an analysis tool, regardless of the format. The purpose is to do.

上述した課題を解決し、目的を達成するために、本発明に係るフォーマット変換装置は、パケットを解析する解析装置の前段に設けられたフォーマット変換装置であって、トンネリングを行うためにEtherヘッダ以降に付加された任意のプロトコルヘッダがスタックされたパケットの入力を受け付ける入力部と、予め作成された判別ルールにしたがって、入力されたパケットの各プロトコルヘッダの種別と配置とを示すプロトコルスタックパターンを判別する判別部と、判別部によって判別されたプロトコルスタックパターンを基に、パケットのフォーマットを、解析装置の解析対象以外のプロトコルヘッダを除外したフォーマットに変換する変換部と、変換部がフォーマットを変換したパケットを解析装置に出力する出力部と、を有することを特徴とする。 In order to solve the above-mentioned problems and to achieve the object, the format conversion device according to the present invention is a format conversion device provided in the preceding stage of an analysis device for analyzing packets, and an Ether header or later for performing tunneling. A protocol stack pattern indicating the type and arrangement of each protocol header of the input packet is determined according to an input unit that receives an input of a packet in which any protocol header added to Based on the protocol stack pattern determined by the determination unit, the conversion unit that converts the packet format into a format that excludes protocol headers other than the analysis target of the analysis device, and the conversion unit converts the format. And an output unit for outputting the packet to the analysis device.

本発明によれば、フォーマットによらず、入力されたトンネルパケットを、解析ツールが解析可能であるフォーマットに変換することができる。 According to the present invention, an input tunnel packet can be converted into a format that can be analyzed by an analysis tool regardless of the format.

図1は、実施の形態1に係る通信システムの構成の一例を示す図である。FIG. 1 is a diagram showing an example of the configuration of the communication system according to the first embodiment. 図2は、図1に示すフォーマット変換装置の構成の一例を示す図である。FIG. 2 is a diagram showing an example of the configuration of the format conversion device shown in FIG. 図3は、図2に示すフォーマット変換装置の処理の流れを説明する図である。FIG. 3 is a diagram illustrating a processing flow of the format conversion apparatus shown in FIG. 図4は、判別木の構成を説明する図である。FIG. 4 is a diagram illustrating the configuration of the discrimination tree. 図5は、図2に示すプロトコルスタック判別部の処理を説明する図である。FIG. 5 is a diagram for explaining the processing of the protocol stack discrimination unit shown in FIG. 図6は、図2に示すパケットフォーマット変換部の処理を説明する図である。FIG. 6 is a diagram for explaining the processing of the packet format conversion unit shown in FIG. 図7は、図2に示すフォーマット変換装置によるフォーマット変換処理の手順を示すフローチャートである。FIG. 7 is a flowchart showing the procedure of the format conversion processing by the format conversion device shown in FIG. 図8は、図2に示すフォーマット変換装置によるフォーマット変換後のパケットを具体的に説明する図である。FIG. 8 is a diagram for specifically explaining the packet after the format conversion by the format conversion device shown in FIG. 図9は、実施の形態2に係るフォーマット変換装置の構成の一例を示す図である。FIG. 9 is a diagram showing an example of the configuration of the format conversion device according to the second embodiment. 図10は、図9に示すフォーマット変換装置の処理の流れを説明する図である。FIG. 10 is a diagram illustrating a processing flow of the format conversion device illustrated in FIG. 9. 図11は、判別論理式の構成を説明する図である。FIG. 11 is a diagram illustrating the configuration of the discriminant logic formula. 図12は、図9に示すプロトコルスタック判別部の処理を説明する図である。FIG. 12 is a diagram for explaining the processing of the protocol stack discrimination unit shown in FIG. 図13は、図9に示すフォーマット変換装置によるフォーマット変換処理の手順を示すフローチャートである。FIG. 13 is a flowchart showing the procedure of the format conversion processing by the format conversion device shown in FIG. 図14は、実施の形態3に係るフォーマット変換装置の構成の一例を示す図である。FIG. 14 is a diagram showing an example of the configuration of the format conversion device according to the third embodiment. 図15は、プロトコルconfigファイルの一例を示す図である。FIG. 15 is a diagram showing an example of the protocol config file. 図16は、プロトコルconfigファイルの一例を示す図である。FIG. 16 is a diagram showing an example of the protocol config file. 図17は、図14に示すフォーマット変換装置の処理の流れを説明する図である。FIG. 17 is a diagram for explaining the processing flow of the format conversion apparatus shown in FIG. 図18は、図14に示すプロトコルスタック判別部の処理を説明する図である。FIG. 18 is a diagram for explaining the process of the protocol stack discriminating unit shown in FIG. 図19は、図14に示すフォーマット変換装置によるフォーマット変換処理の手順を示すフローチャートである。FIG. 19 is a flowchart showing the procedure of the format conversion processing by the format conversion device shown in FIG. 図20は、実施の形態4に係るフォーマット変換装置の構成の一例を示す図である。FIG. 20 is a diagram showing an example of the configuration of the format conversion device according to the fourth embodiment. 図21は、図20に示す学習部の処理の流れ(学習時)を説明する図である。FIG. 21 is a diagram for explaining the processing flow (during learning) of the learning unit shown in FIG. 図22は、図20に示すフォーマット変換部の処理の流れ(変換時)を説明する図である。FIG. 22 is a diagram for explaining the processing flow (at the time of conversion) of the format conversion unit shown in FIG. 図23は、図20に示すプロトコルスタック解析部の処理を説明する図である。FIG. 23 is a diagram for explaining the processing of the protocol stack analysis unit shown in FIG. 図24は、図20に示すパターン分布格納部の処理を説明する図である。FIG. 24 is a diagram for explaining the processing of the pattern distribution storage unit shown in FIG. 図25は、図20に示す判別木作成部の処理を説明する図である。FIG. 25 is a diagram for explaining the process of the discrimination tree creating unit shown in FIG. 図26は、図20に示すプロトコルスタック判別部の処理を説明する図である。FIG. 26 is a diagram for explaining the processing of the protocol stack discriminating unit shown in FIG. 図27は、図20に示すフォーマット変換装置による学習処理の手順を示すフローチャートである。FIG. 27 is a flowchart showing the procedure of the learning process by the format conversion device shown in FIG. 図28は、図20に示すフォーマット変換装置によるフォーマット変換処理の手順を示すフローチャートである。FIG. 28 is a flow chart showing the procedure of the format conversion processing by the format conversion device shown in FIG. 図29は、実施の形態5に係るフォーマット変換装置の構成の一例を示す図である。FIG. 29 is a diagram showing an example of the configuration of the format conversion device according to the fifth embodiment. 図30は、図29に示す学習部の処理の流れを説明する図である。FIG. 30 is a diagram for explaining the processing flow of the learning unit shown in FIG. 図31は、図29に示すフォーマット変換部の処理の流れを説明する図である。FIG. 31 is a diagram illustrating a processing flow of the format conversion unit illustrated in FIG. 図32は、図29に示すプロトコルスタック解析部の処理を説明する図である。FIG. 32 is a diagram for explaining the processing of the protocol stack analysis unit shown in FIG. 図33は、図29に示すパターン格納部の処理を説明する図である。FIG. 33 is a diagram for explaining the processing of the pattern storage unit shown in FIG. 図34は、図29に示す判別論理式作成部の処理を説明する図である。FIG. 34 is a diagram for explaining the processing of the discriminant logic expression creating unit shown in FIG. 図35は、図29に示すプロトコルスタック判別部の処理を説明する図である。FIG. 35 is a diagram for explaining the processing of the protocol stack discrimination unit shown in FIG. 図36は、図29に示すフォーマット変換装置による学習処理の手順を示すフローチャートである。FIG. 36 is a flowchart showing the procedure of learning processing by the format conversion device shown in FIG. 図37は、図29に示すフォーマット変換装置によるフォーマット変換処理の手順を示すフローチャートである。FIG. 37 is a flowchart showing the procedure of the format conversion processing by the format conversion device shown in FIG. 図38は、実施の形態6に係るフォーマット変換装置の構成の一例を示す図である。FIG. 38 is a diagram showing an example of the configuration of the format conversion device according to the sixth embodiment. 図39は、図38に示すフォーマット変換部の処理の流れを説明する図である。FIG. 39 is a diagram illustrating a processing flow of the format conversion unit illustrated in FIG. 図40は、図38に示すフォーマット変換装置によるフォーマット変換処理の手順を示すフローチャートである。FIG. 40 is a flow chart showing the procedure of the format conversion processing by the format conversion device shown in FIG. 図41は、実施の形態7に係るフォーマット変換装置の構成の一例を示す図である。FIG. 41 is a diagram showing an example of the configuration of the format conversion device according to the seventh embodiment. 図42は、図41に示す対応付部の構成の一例を示す図である。42 is a diagram showing an example of the configuration of the associating unit shown in FIG. 41. 図43は、図42に示すデータベース(DB)が保持するデータの一例を示す図である。FIG. 43 is a diagram showing an example of data held by the database (DB) shown in FIG. 42. 図44は、図42に示す対応付部の処理の流れを説明する図である。FIG. 44 is a diagram for explaining the processing flow of the associating unit shown in FIG. 42. 図45は、図42に示す対応付部による情報の対応付け処理の処理手順を示すフローチャートである。FIG. 45 is a flowchart showing the processing procedure of the information associating process by the associating unit shown in FIG. 42. 図46は、図42に示す対応付部の対応付け機能を説明する図である。FIG. 46 is a diagram for explaining the associating function of the associating unit shown in FIG. 図47は、プログラムが実行されることにより、フォーマット変換装置が実現されるコンピュータの一例を示す図である。FIG. 47 is a diagram illustrating an example of a computer that realizes a format conversion device by executing a program. 図48は、従来技術に係るフォーマット変換装置の処理を説明する図である。FIG. 48 is a diagram illustrating a process of a format conversion device according to the related art.

以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. The present invention is not limited to this embodiment. In the description of the drawings, the same parts are designated by the same reference numerals.

[実施の形態1]
[通信システムの概要]
まず、図1を用いて、実施の形態1に係る通信システムの構成について説明する。図1は、実施の形態に係る通信システムの構成の一例を示す図である。
[Embodiment 1]
[Outline of communication system]
First, the configuration of the communication system according to the first embodiment will be described with reference to FIG. FIG. 1 is a diagram showing an example of a configuration of a communication system according to an embodiment.

図1に示すように、通信システム1は、ネットワークNと、解析装置20との間に、フォーマット変換装置10が設けられた構成を有する。 As shown in FIG. 1, the communication system 1 has a configuration in which a format conversion device 10 is provided between a network N and an analysis device 20.

解析装置20は、IDS、WAF等の攻撃に対する解析ツールを有する装置である。本実施の形態1では、解析装置20は、トンネルプロトコルをサポートしていない解析ツールを有する場合を例に説明する。 The analysis device 20 is a device having an analysis tool for attacks such as IDS and WAF. In the first embodiment, the case where the analysis device 20 has an analysis tool that does not support the tunnel protocol will be described as an example.

フォーマット変換装置10は、解析装置20の前段に設けられる。フォーマット変換装置10は、ネットワークNを介して入力されたトンネルパケットを、フォーマットによらず、解析装置20が解析可能であるフォーマットに変換する。そして、フォーマット変換装置10は、変換後のパケットを解析装置20に出力することで、トンネルプロトコルをサポートしていない解析装置20でもパケットを解析できるようにしている。具体的には、フォーマット変換装置10は、トンネリングを行うためにEtherヘッダ以降に付加された任意のプロトコルヘッダがスタックされたパケットから、解析装置20の解析対象以外のプロトコルヘッダを除外したフォーマットに変換する。 The format conversion device 10 is provided before the analysis device 20. The format conversion device 10 converts a tunnel packet input via the network N into a format that can be analyzed by the analysis device 20, regardless of the format. Then, the format conversion device 10 outputs the converted packet to the analysis device 20 so that the analysis device 20 that does not support the tunnel protocol can also analyze the packet. Specifically, the format conversion device 10 converts a packet in which an arbitrary protocol header added after the Ether header for performing tunneling is stacked into a format in which a protocol header other than the analysis target of the analysis device 20 is excluded. To do.

ネットワークNは、例えば、有線又は無線のLAN(Local Area Network)、WAN(Wide Area Network)及びVPN(Virtual Private Network)等の任意の種類のネットワークである。 The network N is an arbitrary type of network such as a wired or wireless LAN (Local Area Network), WAN (Wide Area Network), and VPN (Virtual Private Network).

[フォーマット変換装置の構成]
次に、フォーマット変換装置10の構成について説明する。図2は、図1に示すフォーマット変換装置10の構成の一例を示す図である。フォーマット変換装置10は、図2に示すように、パケット入力部11(入力部)、プロトコルスタック判別部12(判別部)、パケットフォーマット変換部13(変換部)及びパケット出力部14(出力部)を有する。
[Configuration of format conversion device]
Next, the configuration of the format conversion device 10 will be described. FIG. 2 is a diagram showing an example of the configuration of the format conversion device 10 shown in FIG. As shown in FIG. 2, the format conversion device 10 includes a packet input unit 11 (input unit), a protocol stack determination unit 12 (determination unit), a packet format conversion unit 13 (conversion unit), and a packet output unit 14 (output unit). Have.

なお、フォーマット変換装置10は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、CPU(Central Processing Unit)等を含むコンピュータ等に所定のプログラムが読み込まれて、CPUが所定のプログラムを実行することで実現される。また、フォーマット変換装置10は、ネットワークN等を介して接続された他の装置との間で、各種情報を送受信する通信インタフェースを有する。例えば、フォーマット変換装置10は、NIC(Network Interface Card)等を有し、LANやインターネットなどの電気通信回線を介した他の装置との間の通信を行う。 In the format conversion device 10, for example, a predetermined program is read into a computer including a ROM (Read Only Memory), a RAM (Random Access Memory), a CPU (Central Processing Unit), etc., and the CPU executes the predetermined program. It is realized by executing. Further, the format conversion device 10 has a communication interface for transmitting and receiving various kinds of information to and from other devices connected via the network N or the like. For example, the format conversion device 10 has a NIC (Network Interface Card) or the like, and communicates with another device via a telecommunication line such as a LAN or the Internet.

パケット入力部11は、ネットワークNを介して送信されたパケットの入力を受付ける。これらのパケットは、トンネリングを行うためにEtherヘッダ以降に付加された任意のプロトコルヘッダがスタックされたパケットである。言い換えると、これらのパケットは、Etherヘッダと、インナーパケットとの間に、任意のプロトコルヘッダが、任意にスタックされている。なお、本実施の形態1では、インナーパケットが解析装置20の解析対象となる例について説明する。したがって、本フォーマット変換装置10は、入力を受付けたパケットからEtherヘッダとインナーパケットとの間のプロトコルヘッダを除外したフォーマットに変換する。 The packet input unit 11 receives an input of a packet transmitted via the network N. These packets are packets in which arbitrary protocol headers added after the Ether header for performing tunneling are stacked. In other words, in these packets, an arbitrary protocol header is arbitrarily stacked between the Ether header and the inner packet. In the first embodiment, an example in which the inner packet is an analysis target of the analysis device 20 will be described. Therefore, the format conversion apparatus 10 converts the input received packet into a format in which the protocol header between the Ether header and the inner packet is excluded.

プロトコルスタック判別部12は、予め作成された判別ルールにしたがって、入力されたパケットの各プロトコルヘッダの種別と配置とを示すプロトコルスタックパターンを判別する。判別ルールは、例えば、他の装置で予め作成され、このプロトコルスタック判別部12に事前設定される。 The protocol stack discriminating unit 12 discriminates a protocol stack pattern indicating the type and arrangement of each protocol header of the input packet according to a discrimination rule created in advance. The determination rule is created in advance by another device, for example, and is preset in the protocol stack determination unit 12.

プロトコルスタック判別部12は、判別ルールとして判別木を用いて、入力されたパケットのプロトコルスタックパターンを判別する。判別木は、プロトコルスタックパターンが既知のパケットを下位ヘッダから順次捜査して作成される。また、プロトコルスタック判別部12は、判別木を用いて、入力されたパケットから除外するプロトコルヘッダ箇所も判別する。以降、パケットから除外するプロトコルヘッダ箇所を示す情報を、ヘッダストリップ箇所として、説明を行う。なお、プロトコルスタック判別部12は、各種のプロトコルスタックパターンのパケットを判別できるように、複数の判別木が事前設定される。 The protocol stack discriminating unit 12 discriminates the protocol stack pattern of the input packet using the discrimination tree as the discrimination rule. The discriminant tree is created by sequentially searching packets with known protocol stack patterns from the lower header. The protocol stack discrimination unit 12 also discriminates the protocol header part to be excluded from the input packet using the discrimination tree. Hereinafter, the information indicating the protocol header portion to be excluded from the packet will be described as the header strip portion. It should be noted that the protocol stack discriminating unit 12 is preset with a plurality of discrimination trees so as to discriminate packets of various protocol stack patterns.

パケットフォーマット変換部13は、プロトコルスタック判別部12によって判別されたプロトコルスタックパターンを基に、パケットのフォーマットを、解析装置20の解析対象以外のプロトコルヘッダを除外したフォーマットに変換する。パケットフォーマット変換部13は、プロトコルスタックパターンとともにヘッダストリップ箇所も用いて、フォーマット変換を行う。 The packet format conversion unit 13 converts the packet format into a format excluding protocol headers other than the analysis target of the analysis device 20, based on the protocol stack pattern determined by the protocol stack determination unit 12. The packet format conversion unit 13 performs the format conversion by using the header strip location as well as the protocol stack pattern.

パケット出力部14は、パケットフォーマット変換部13がフォーマットを変換したパケットを解析装置20に出力する。 The packet output unit 14 outputs the packet whose format has been converted by the packet format conversion unit 13 to the analysis device 20.

[フォーマット変換装置の処理の流れ]
次に、フォーマット変換装置10の処理の流れについて説明する。図3は、図2に示すフォーマット変換装置10の処理の流れを説明する図である。
[Processing flow of format conversion device]
Next, a processing flow of the format conversion device 10 will be described. FIG. 3 is a diagram illustrating a processing flow of the format conversion device 10 shown in FIG.

図3に示すように、プロトコルスタック判別部12には、事前に、予め作成された判別木30が設定される。そして、パケット入力部11がパケットの入力を受付けると、プロトコルスタック判別部12は、判別木30を用いて、到着したパケットのプロトコルスタックパターンを判別する(図3の(1)参照)。プロトコルスタック判別部12は、判別結果として、到着したパケット自身に加え、このパケットのプロトコルスタックパターン、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を出力する。 As shown in FIG. 3, a discrimination tree 30 created in advance is set in the protocol stack discrimination unit 12. Then, when the packet input unit 11 receives the input of the packet, the protocol stack discrimination unit 12 discriminates the protocol stack pattern of the arrived packet using the discrimination tree 30 (see (1) in FIG. 3). As a result of the determination, the protocol stack determination unit 12 outputs the arrived packet itself, as well as the protocol stack pattern of this packet, the header strip location, and the protocol number specified in the converted Ethertype.

パケットフォーマット変換部13は、プロトコルスタック判別部12の判別結果を基に、フォーマット変換を実行する(図3の(2)参照)。そして、パケットフォーマット変換部13によるフォーマット変換後のパケットは、パケット出力部14から、解析装置20(不図示)に出力される。 The packet format conversion unit 13 executes the format conversion based on the determination result of the protocol stack determination unit 12 (see (2) in FIG. 3). Then, the packet after the format conversion by the packet format conversion unit 13 is output from the packet output unit 14 to the analysis device 20 (not shown).

[判別木の構成]
次に、プロトコルスタック判別部12に設定される判別木の構成について説明する。図4は、判別木の構成を説明する図である。図4の(a)は、判別木の作成に使用するプロトコルスタックパターンが既知であるパケットの一例を示す図である。図4の(a)では、各パケットは、左から右に向かって下位ヘッダから上位ヘッダを配置する。図4の(b)は、図4の(a)に示すパケットから作成された判別木の一例を示す図である。
[Configuration of discriminant tree]
Next, the configuration of the discrimination tree set in the protocol stack discrimination unit 12 will be described. FIG. 4 is a diagram illustrating the configuration of the discrimination tree. FIG. 4A is a diagram showing an example of a packet whose protocol stack pattern used to create a discrimination tree is known. In FIG. 4A, in each packet, the lower header to the upper header are arranged from left to right. FIG. 4B is a diagram showing an example of the discrimination tree created from the packet shown in FIG.

図4の(a)の枠U1内に示すように、既知情報として、パケットA〜Cが使用される。既知情報として、各プロトコルスタックパターンにおける各ヘッダの上位ヘッダを特定するための情報(各ヘッダの上位ヘッダの位置及び値)が示される。また、既知情報として、各プロトコルスタックパターンにおけるヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号が設定されている。 As shown in a frame U1 of FIG. 4A, packets A to C are used as known information. As the known information, information for specifying the upper header of each header in each protocol stack pattern (position and value of the upper header of each header) is shown. Also, as known information, the header strip location in each protocol stack pattern and the protocol number specified in the converted Ethertype are set.

例えば、プロトコルスタックパターンがパターンAのパケットの場合、図示するように4段のヘッダH1〜H4のうちヘッダH1〜H3の上位ヘッダの位置及び値、ヘッダストリップ箇所a〜abyte、変換後Ethertypeに指定するプロトコル番号mが設定されている。また、プロトコルスタックパターンがパターンBのパケットの場合、6段の各ヘッダH1〜H3,H5,H6,H4のうちヘッダH1〜H3,H5,H6の上位ヘッダの位置及び値、ヘッダストリップ箇所b〜bbyte、変換後Ethertypeに指定するプロトコル番号lが設定されている。また、プロトコルスタックパターンがパターンCのパケットの場合、4段の各ヘッダH1,H2,H7,H4のうちH1,H2,H7の上位ヘッダの位置及び値、ヘッダストリップ箇所c〜cbyte、変換後Ethertypeに指定するプロトコル番号nが設定されている。 For example, in the case of a packet whose protocol stack pattern is pattern A, as shown in the figure, the positions and values of the upper headers of the headers H1 to H3 among the four stages of headers H1 to H4, header strip locations a 1 to a 2 bytes, and after conversion The protocol number m specified in Ethertype is set. In the case of a packet whose protocol stack pattern is pattern B, the position and value of the upper header of the headers H1 to H3, H5, and H6 among the six stages of headers H1 to H3, H5, H6, and H4, and the header strip location b 1 Up to b 2 bytes, the protocol number 1 specified in Ethertype after conversion is set. In the case of a packet whose protocol stack pattern is pattern C, the position and value of the upper header of H1, H2, and H7 among the four-stage headers H1, H2, H7, and H4, header strip locations c 1 to c 2 bytes, After conversion, the protocol number n specified in Ethertype is set.

そして、パターンA〜Cを判別するための判別木を作成する場合には、図4の(b)に示すように、既知である各パターンの下位ヘッダから分岐を作成し、マッチするパターンを絞り込んでいく。例えば、図4の(a)に示すように、各パターンA〜Cの下位ヘッダはH1である。このため、判別対象のパターンがパターンA〜Cに含まれるか否かを判別するために、最上位のノードN1(図4の(b)参照)は「ヘッダH1の上位ヘッダは?」と設定される。そして、パターンA〜Cのいずれについても、ヘッダH1の上位ヘッダはヘッダH2である。このため、ヘッダH1の上位ヘッダがヘッダH2である場合、判別対象のパターンは、パターンA〜Cにマッチする(エッジE1)。 Then, when creating a discriminant tree for discriminating the patterns A to C, as shown in FIG. 4B, a branch is created from the lower header of each known pattern, and the matching patterns are narrowed down. Go out. For example, as shown in FIG. 4A, the lower header of each pattern A to C is H1. Therefore, in order to determine whether or not the pattern to be determined is included in the patterns A to C, the highest node N1 (see (b) of FIG. 4) is set as “what is the upper header of the header H1?”. To be done. Then, in any of the patterns A to C, the upper header of the header H1 is the header H2. Therefore, when the upper header of the header H1 is the header H2, the pattern to be determined matches the patterns A to C (edge E1).

続いて、判別対象のパターンがパターンA〜Cのいずれにマッチするかを判別するために、次のノードN2は「ヘッダH2の上位ヘッダは?」と設定される。ヘッダH2の上位ヘッダがヘッダH7である場合には、パターンCとマッチし(エッジE3)、判別対象のパケットのプロトコルスタックパターンは、パターンCであると判別される(ノードN3)。 Then, in order to determine which of the patterns A to C the pattern to be determined matches, the next node N2 is set to "is the upper header of the header H2?". When the upper header of the header H2 is the header H7, it matches the pattern C (edge E3), and the protocol stack pattern of the packet to be determined is determined to be the pattern C (node N3).

一方、ヘッダH2の上位ヘッダがヘッダH3である場合には、パターンA,Bとマッチする(エッジE2)。次のノードN4は、判別対象のパターンがパターンA,Bのいずれであるかを判別するために、「ヘッダH3の上位ヘッダは?」に設定される。この際、ヘッダH3の上位ヘッダがヘッダH4である場合には、パターンAとマッチし(エッジE4)、判別対象のパケットのプロトコルスタックパターンは、パターンAであると判別される(ノードN5)。これに対し、ヘッダH3の上位ヘッダがヘッダH5である場合には、パターンBとマッチし(エッジE5)、判別対象のパケットのプロトコルスタックパターンは、パターンBであると判別される(ノードN6)。 On the other hand, when the upper header of the header H2 is the header H3, it matches the patterns A and B (edge E2). The next node N4 is set to “What is the upper header of the header H3?” in order to determine which of the patterns A and B the determination target pattern is. At this time, when the upper header of the header H3 is the header H4, it matches the pattern A (edge E4), and the protocol stack pattern of the packet to be determined is determined to be the pattern A (node N5). On the other hand, when the upper header of the header H3 is the header H5, it matches the pattern B (edge E5), and the protocol stack pattern of the packet to be determined is determined to be the pattern B (node N6). ..

このように、パターンA〜Cについて一意に特定可能な判別木T1を作成した段階で、判別木の作成は終了となる。このような判別木は、各種のプロトコルスタックパターンに対応できるよう複数作成される。 As described above, when the discriminant tree T1 that can be uniquely specified for the patterns A to C is generated, the discriminant tree is completed. A plurality of such discriminant trees are created so as to correspond to various protocol stack patterns.

[プロトコルスタック判別部の処理]
次に、プロトコルスタック判別部12の処理について説明する。図5は、図2に示すプロトコルスタック判別部12の処理を説明する図である。
[Process of Protocol Stack Discrimination Unit]
Next, the processing of the protocol stack discrimination unit 12 will be described. FIG. 5 is a diagram for explaining the processing of the protocol stack discriminating unit 12 shown in FIG.

図5に示すように、プロトコルスタック判別部12は、例えば判別木T1を事前設定される(図5の(1)参照)。プロトコルスタック判別部12は、この判別木T1を用いて、パケットのプロトコルスタックパターンを判別する(図5の(2)参照)。具体的には、プロトコルスタック判別部12は、判別木T1を基に、入力されたパケットの下位ヘッダからヘッダを上位に向かって各ヘッダを順次特定していき、プロトコルスタックパターンを判別する。 As shown in FIG. 5, for example, the discrimination tree T1 is preset in the protocol stack discrimination unit 12 (see (1) in FIG. 5). The protocol stack discriminating unit 12 discriminates the protocol stack pattern of the packet using the discrimination tree T1 (see (2) in FIG. 5). Specifically, the protocol stack discriminating unit 12 discriminates the protocol stack pattern by sequentially identifying each header from the lower header of the input packet to the upper header based on the discrimination tree T1.

例えば、プロトコルスタック判別部12は、パケットCaが入力された場合、判別木T1を用いて、パケットCaが、ヘッダH1〜H4を有するパターンAのプロトコルスタックパターンであることを判別する。パターンAのパケットのヘッダストリップ箇所はa〜abyteであり、変換後Ethertypeに指定するプロトコル番号としてmが設定されている。このため、プロトコルスタック判別部12は、パケットCaとともに、このパケットCaのパターン「A」、ヘッダストリップ箇所「a〜abyte」、変換後Ethertypeに指定するプロトコル番号「m」を出力する。 For example, when the packet Ca is input, the protocol stack determination unit 12 uses the determination tree T1 to determine that the packet Ca is the protocol stack pattern of the pattern A including the headers H1 to H4. The header strip location of the packet of pattern A is a 1 to a 2 bytes, and m is set as the protocol number specified in the Ethertype after conversion. Therefore, the protocol stack determination unit 12 outputs the packet Ca, the pattern “A” of the packet Ca, the header strip location “a 1 to a 2 byte”, and the protocol number “m” specified in the converted Ethertype.

[パケットフォーマット変換部の処理]
次に、パケットフォーマット変換部13の処理について説明する。図6は、図2に示すパケットフォーマット変換部13の処理を説明する図である。
[Processing of packet format conversion unit]
Next, the processing of the packet format conversion unit 13 will be described. FIG. 6 is a diagram for explaining the processing of the packet format conversion unit 13 shown in FIG.

図6に示すように、パケットフォーマット変換部13に、プロトコルスタック判別部12の判別結果として、パケットCa、このパケットCaのパターン「A」、ヘッダストリップ箇所「a〜abyte」、変換後Ethertypeに指定するプロトコル番号「m」が入力された場合を例に説明する。パケットフォーマット変換部13は、この判別結果を受けて、ポインタを設定する(図6の枠W1の(1)参照)。 As shown in FIG. 6, in the packet format conversion unit 13, as the determination result of the protocol stack determination unit 12, the packet Ca, the pattern “A” of this packet Ca, the header strip location “a 1 to a 2 byte”, after conversion, The case where the protocol number "m" specified in Ethertype is input will be described as an example. Upon receiving this determination result, the packet format conversion unit 13 sets the pointer (see (1) of frame W1 in FIG. 6).

例えば、ポインタとして、先頭ポインタ、ヘッダストリップ開始ポインタ、ヘッダストリップ終了ポインタがある。このため、パケットフォーマット変換部13は、パケットCaに対し、下位ヘッダH1の先頭に先頭ポインタを設定する。そして、パケットフォーマット変換部13は、パケットCaに対し、ヘッダH2の先頭にヘッダストリップ開始ポインタaを設定し、ヘッダH4の先頭にヘッダストリップ終了ポインタaを設定する。 For example, the pointer includes a head pointer, a header strip start pointer, and a header strip end pointer. Therefore, the packet format conversion unit 13 sets the head pointer at the head of the lower header H1 for the packet Ca. Then, the packet format conversion unit 13 sets the header strip start pointer a 1 at the beginning of the header H2 and the header strip end pointer a 2 at the beginning of the header H4 for the packet Ca.

次に、パケットフォーマット変換部13は、先頭ポインタからヘッダストリップ開始ポインタaまでの部分を上位側にずらし、ヘッダストリップ開始ポインタaがヘッダストリップ終了ポインタaに重なるようにヘッダH1を上書きする(図6の(2)参照)。 Next, the packet format conversion unit 13 shifts the portion from the head pointer to the header strip start pointer a 1 to the upper side, and overwrites the header H1 so that the header strip start pointer a 1 overlaps the header strip end pointer a 2. (See (2) in FIG. 6).

そして、パケットフォーマット変換部13は、先頭ポインタを、上書きしたヘッダH1の先頭に移動する(図6の(3)参照)。続いて、パケットフォーマット変換部13は、Ethertype情報を書き換え(図6の(4)参照)、先頭ポインタ以降のヘッダH1,H4を有するパケットを、フォーマット変換後のパケットCa´として出力する(図6の(5)参照)。 Then, the packet format conversion unit 13 moves the head pointer to the head of the overwritten header H1 (see (3) in FIG. 6). Subsequently, the packet format conversion unit 13 rewrites the Ethertype information (see (4) in FIG. 6) and outputs the packet having the headers H1 and H4 after the head pointer as the packet Ca′ after the format conversion (FIG. 6). (5)).

このように、パケットフォーマット変換部13は、先頭から、ヘッダストリップ対象外の箇所をヘッダストリップ箇所に上書きをし、先頭ポインタをずらす。そして、パケットフォーマット変換部13は、上位ヘッダを特定する情報を書き換え、先頭ポインタ以降を出力することで、フォーマットの変換を行う。 In this way, the packet format conversion unit 13 overwrites the header strip location from the beginning with a location not subject to header stripping, and shifts the leading pointer. Then, the packet format conversion unit 13 performs format conversion by rewriting the information specifying the upper header and outputting the information after the head pointer.

[フォーマット変換装置による処理の手順]
次に、フォーマット変換装置10による処理の手順について説明する。図7は、図2に示すフォーマット変換装置10によるフォーマット変換処理の手順を示すフローチャートである。
[Processing procedure by format converter]
Next, a procedure of processing by the format conversion device 10 will be described. FIG. 7 is a flowchart showing the procedure of the format conversion processing by the format conversion device 10 shown in FIG.

図7に示すように、パケット入力部11が、パケットの入力を受け付けると(ステップS11)、プロトコルスタック判別部12は、予め作成された判別木にしたがって、入力されたパケットのプロトコルスタックパターンを判別するプロトコルスタック判別処理を行う(ステップS12)。 As shown in FIG. 7, when the packet input unit 11 receives an input of a packet (step S11), the protocol stack determination unit 12 determines the protocol stack pattern of the input packet according to a previously created determination tree. Then, a protocol stack determination process is performed (step S12).

続いて、パケットフォーマット変換部13は、プロトコルスタック判別部12によって判別されたプロトコルスタックパターンを基に、パケットのフォーマットを、解析装置20の解析対象以外のプロトコルヘッダを除外したフォーマットに変換するパケットフォーマット変換処理を行う(ステップS13)。そして、パケット出力部14は、パケットフォーマット変換部14がフォーマットを変換したパケットを解析装置20に出力して(ステップS14)、処理を終了する。 Subsequently, the packet format conversion unit 13 converts the packet format into a format excluding protocol headers other than the analysis target of the analysis device 20 based on the protocol stack pattern determined by the protocol stack determination unit 12. Conversion processing is performed (step S13). Then, the packet output unit 14 outputs the packet whose format has been converted by the packet format conversion unit 14 to the analysis device 20 (step S14), and ends the processing.

[実施の形態1の効果]
このように、実施の形態1では、予め作成された判別木にしたがって、入力されたパケットのプロトコルスタックパターンを判別し、パケットのフォーマットを、解析装置20の解析対象以外のプロトコルヘッダを除外したフォーマットに変換する。すなわち、このフォーマット変換装置10によれば、トンネリングを行うためにEtherヘッダ以降に付加された任意のプロトコルヘッダがスタックされたパケットに対しパケットストリッピングが可能となる。このため、このフォーマット変換装置10を解析装置20の前段に設けることによって、トンネルプロトコルをサポートしていない解析装置20を活用することができる。
[Effects of First Embodiment]
As described above, in the first embodiment, the protocol stack pattern of the input packet is discriminated according to the discrimination tree created in advance, and the format of the packet is the format excluding the protocol headers other than the analysis target of the analysis device 20. Convert to. That is, according to the format conversion device 10, it is possible to perform packet stripping on a packet in which an arbitrary protocol header added after the Ether header for performing tunneling is stacked. Therefore, by providing this format conversion device 10 in the preceding stage of the analysis device 20, it is possible to utilize the analysis device 20 that does not support the tunnel protocol.

図8は、図2に示すフォーマット変換装置10によるフォーマット変換後のパケットを具体的に説明する図である。例えば、フォーマット変換装置10に、パケットC1,C2が入力された場合について説明する。 FIG. 8 is a diagram for specifically explaining the packet after the format conversion by the format conversion device 10 shown in FIG. For example, a case where packets C1 and C2 are input to the format conversion device 10 will be described.

この場合、フォーマット変換装置10は、予め作成された判別木にしたがって、パケットC1が、Etherヘッダ以降に、カプセルヘッダ(IPv4)、カプセルヘッダ(UDP)、カプセルヘッダ(L2TP)、カプセルヘッダ(PPP)、インナーパケット(IPv4)Paがスタックされたプロトコルスタックパターンを有することを判別する。このため、フォーマット変換装置10は、パケットC1のフォーマットを、解析装置20の解析対象のインナーパケット(IPv4)Pa以外のプロトコルヘッダを除外したフォーマットに変換する。すなわち、フォーマット変換装置10は、パケットC1を、Etherヘッダの次にインナーパケット(IPv4)Paが配置するパケットC1´に変換する。この結果、解析装置20では、このパケットC1´についての解析が可能になる。 In this case, the format conversion device 10 determines that the packet C1 has the capsule header (IPv4), the capsule header (UDP), the capsule header (L2TP), and the capsule header (PPP) after the Ether header according to the previously created discrimination tree. , Inner packet (IPv4) Pa has a stacked protocol stack pattern. Therefore, the format conversion device 10 converts the format of the packet C1 into a format excluding the protocol headers other than the inner packet (IPv4) Pa that is the analysis target of the analysis device 20. That is, the format conversion device 10 converts the packet C1 into a packet C1′ that is arranged next to the Ether header by the inner packet (IPv4) Pa. As a result, the analysis device 20 can analyze this packet C1'.

また、フォーマット変換装置10は、予め作成された判別木にしたがって、パケットC2が、Etherヘッダ以降に、カプセルヘッダ(MPLS)、カプセルヘッダ(IPv6)、インナーパケット(IPV4)Pbがスタックされたプロトコルスタックパターンを有することを判別する。このため、フォーマット変換装置10は、パケットC2のフォーマットを、解析装置20の解析対象のインナーパケット(IPV4)Pb以外のプロトコルヘッダを除外したフォーマットに変換する。すなわち、フォーマット変換装置10は、パケットC2を、Etherヘッダの次にインナーパケット(IPV4)Pbが配置するパケットC2´に変換する。この結果、解析装置20では、このパケットC2´についての解析が可能になる。 In addition, the format conversion device 10 uses the protocol stack in which the packet C2 is formed by stacking the capsule header (MPLS), the capsule header (IPv6), and the inner packet (IPV4) Pb after the Ether header according to the previously created discrimination tree. Determine that it has a pattern. Therefore, the format conversion device 10 converts the format of the packet C2 into a format excluding the protocol header other than the analysis target inner packet (IPV4) Pb of the analysis device 20. That is, the format conversion device 10 converts the packet C2 into a packet C2′ in which the inner packet (IPV4) Pb is arranged next to the Ether header. As a result, the analysis device 20 can analyze this packet C2'.

このように、本実施の形態1に係るフォーマット変換装置10によれば、フォーマットによらず、入力されたトンネルパケットを、解析装置20が解析可能であるフォーマットに変換することができる。 As described above, according to the format conversion device 10 of the first embodiment, the input tunnel packet can be converted into a format that the analysis device 20 can analyze, regardless of the format.

[実施の形態2]
次に、実施の形態2について説明する。図9は、実施の形態2に係るフォーマット変換装置の構成の一例を示す図である。図9に示すように、フォーマット変換装置210は、図2に示すフォーマット変換装置10と比して、プロトコルスタック判別部12に代えて、プロトコルスタック判別部212を有する。
[Second Embodiment]
Next, a second embodiment will be described. FIG. 9 is a diagram showing an example of the configuration of the format conversion device according to the second embodiment. As shown in FIG. 9, the format conversion device 210 has a protocol stack determination unit 212 instead of the protocol stack determination unit 12 as compared with the format conversion device 10 shown in FIG.

プロトコルスタック判別部212は、プロトコルスタックパターンが既知のパケットの内部の特定bit列を基に作成されたプロトコルスタックパターンを判別する判別論理式を用いて、入力されたパケットのプロトコルスタックパターンを判別する。そして、プロトコルスタック判別部212は、判別論理式を用いて、入力されたパケットから除外するプロトコルヘッダ箇所も判別する。判別論理式は、例えば、他の装置で予め作成され、このプロトコルスタック判別部212に事前設定される。なお、プロトコルスタック判別部212は、各種のプロトコルスタックパターンのパケットを判別できるように、複数の判別論理式が事前設定される。 The protocol stack discriminating unit 212 discriminates the protocol stack pattern of the input packet by using the discriminant logical expression for discriminating the protocol stack pattern created based on the specific bit sequence inside the packet of which the protocol stack pattern is known. .. Then, the protocol stack discriminating unit 212 discriminates the protocol header part to be excluded from the input packet by using the discriminant logical expression. The discriminant logic formula is created in advance in another device, for example, and is preset in the protocol stack discriminating unit 212. The protocol stack discriminator 212 is preset with a plurality of discriminant logical expressions so that packets of various protocol stack patterns can be discriminated.

[フォーマット変換装置の処理の流れ]
次に、フォーマット変換装置210の処理の流れについて説明する。図10は、図9に示すフォーマット変換装置210の処理の流れを説明する図である。
[Processing flow of format conversion device]
Next, a processing flow of the format conversion device 210 will be described. FIG. 10 is a diagram illustrating a processing flow of the format conversion device 210 illustrated in FIG. 9.

図10に示すように、プロトコルスタック判別部212には、事前に、予め作成された判別論理式230が設定される。そして、パケット入力部11がパケットの入力を受付けると、プロトコルスタック判別部212は、判別論理式230を用いて、到着したパケットのプロトコルスタックパターンを判別する(図10の(1)参照)。プロトコルスタック判別部212は、判別結果として、到着したパケット自身に加え、このパケットのヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を出力する。 As shown in FIG. 10, the discriminant logic formula 230 created in advance is set in the protocol stack discriminating unit 212. Then, when the packet input unit 11 receives the input of the packet, the protocol stack determination unit 212 determines the protocol stack pattern of the arrived packet by using the determination logical expression 230 (see (1) in FIG. 10). As a determination result, the protocol stack determination unit 212 outputs the arrived packet itself, the header strip location of this packet, and the protocol number specified in the converted Ethertype.

そして、パケットフォーマット変換部13は、プロトコルスタック判別部212の判別結果を基に、フォーマット変換を実行する(図10の(2)参照)。そして、パケットフォーマット変換部13によるフォーマット変換後のパケットは、パケット出力部14から、解析装置20(不図示)に出力される。 Then, the packet format conversion unit 13 executes the format conversion based on the determination result of the protocol stack determination unit 212 (see (2) in FIG. 10). Then, the packet after the format conversion by the packet format conversion unit 13 is output from the packet output unit 14 to the analysis device 20 (not shown).

[判別論理式の構成]
次に、図11を参照して、プロトコルスタック判別部212に設定される判別論理式の構成について説明する。図11は、判別論理式の構成を説明する図である。図11の(a)は、判別論理式の作成に使用するプロトコルスタックパターンが既知であるパケットの一例を示す図である。図11の(a)に示すパターンA〜Cは、図4の(a)に示すパターンA〜Cと同様である。図11の(b)は、真理値表を例示する図である。図11の(c)は、図11の(b)に示す真理値表を基に作成された判別論理式を示す図である。
[Composition of discriminant logic]
Next, with reference to FIG. 11, the configuration of the discriminant logic equation set in the protocol stack discriminator 212 will be described. FIG. 11 is a diagram illustrating the configuration of the discriminant logic formula. FIG. 11A is a diagram showing an example of a packet for which the protocol stack pattern used to create the discriminant formula is known. Patterns A to C shown in (a) of FIG. 11 are the same as patterns A to C shown in (a) of FIG. FIG. 11B is a diagram illustrating a truth table. FIG. 11C is a diagram showing a discriminant logical expression created based on the truth table shown in FIG. 11B.

判別論理式を作成する場合、まず、各パターンの上位ヘッダを特定する情報の位置及び値を基に真理値表を作成する。パターンA〜Cについては、上位ヘッダを特定する情報のbyte位置及び値を参照する。具体的には、図11の(b)のグラフG1に示すように、パターンAについては、ヘッダH1,H2,H3の上位ヘッダを特定する各情報は[(a,1010),(b,1111),(d,0101)](なお、各情報の配置は[(byte位置,値)]である)である。この結果から、inputが(a,b,c,d,e,f)=(1010,1111,*,0101,*/{1111},*/{1011})である場合には、outputが、パターンAに対応する(x,y,z)=(0,0,0)となる組み合わせが、真理値表L1の1行目に設定される。 When creating a discriminant formula, first, a truth table is created based on the position and value of information that specifies the upper header of each pattern. For patterns A to C, reference is made to the byte position and value of the information that specifies the upper header. Specifically, as shown in the graph G1 of (b) of FIG. 11, for the pattern A, the respective information for specifying the upper headers of the headers H1, H2, H3 is [(a,1010), (b,1111). ), (d, 0101)] (where the arrangement of each information is [(byte position, value)]). From this result, if input is (a,b,c,d,e,f)=(1010,1111,*,0101,*/{1111},*/{1011}), output is The combination of (x,y,z)=(0,0,0) corresponding to the pattern A is set in the first row of the truth table L1.

また、パターンBについては、ヘッダH1,H2,H3,H5,H6の上位ヘッダを特定する各情報が[(a,1010),(b,1111),(d,0101),(e,1111),(f,1011)]である。このため、inputが(a,b,c,d,e,f)=(1010,1111,*,0101,1111,1011})である場合には、outputが、パターンBに対応する(x,y,z)=(0,0,1)となる組み合わせが、真理値表L1の2行目に設定される。そして、パターンCについては、ヘッダH1,H2,H7の上位ヘッダを特定する各情報が[(a,1010),(b,1101),(c,1110)]である。このため、inputが(a,b,c,d,e,f)=(1010,1101,1110,*,*,*)である場合には、outputが、パターンCに対応する(x,y,z)=(0,1,1)となる組み合わせが、真理値表L1の3行目に設定される。 Further, regarding the pattern B, each information for specifying the upper header of the headers H1, H2, H3, H5, H6 is [(a,1010), (b,1111), (d,0101), (e,1111). , (F,1011)]. Therefore, when input is (a,b,c,d,e,f)=(1010,1111,*,0101,1111,1011}), output corresponds to pattern B (x, The combination of y,z)=(0,0,1) is set in the second row of the truth table L1. Then, regarding the pattern C, each information for specifying the upper header of the headers H1, H2, H7 is [(a, 1010), (b, 1101), (c, 1110)]. Therefore, when input is (a,b,c,d,e,f)=(1010,1101,1110,*,*,*), output corresponds to pattern C (x,y ,z)=(0,1,1) is set in the third row of the truth table L1.

そして、この真理値表L1を基に、Quine-McCluskey法等を使用して、プロトコルスタックパターン判別用の判別論理式230−1(図11の(c)参照)が作成される。この判別論理式230−1は、output(0,0,0),(0,0,1),(0,1,1)のそれぞれに、対応するパターンの種別、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号が対応付けられている。 Then, based on the truth table L1, the discriminant logic formula 230-1 (see (c) in FIG. 11) for discriminating the protocol stack pattern is created by using the Quine-McCluskey method or the like. This discriminant logic formula 230-1 is such that the output (0,0,0), (0,0,1) and (0,1,1) respectively correspond to the type of the pattern, the header strip location, and the converted Ethertype. Is associated with the protocol number specified in.

[プロトコルスタック判別部の処理]
次に、プロトコルスタック判別部212の処理について説明する。図12は、図9に示すプロトコルスタック判別部212の処理を説明する図である。
[Process of Protocol Stack Discrimination Unit]
Next, the processing of the protocol stack determination unit 212 will be described. FIG. 12 is a diagram for explaining the processing of the protocol stack discrimination unit 212 shown in FIG.

図12に示すように、プロトコルスタック判別部212は、例えば判別論理式230−1を事前設定される(図12の(1)参照)。プロトコルスタック判別部212は、この判別論理式230−1を用いて、パケットのプロトコルスタックパターンを判別する(図12の(2)参照)。具体的には、プロトコルスタック判別部212は、判別論理式230−1に、判別のために必要なbit列をパケットから抽出する。すなわち、プロトコルスタック判別部212は、判別対象のパケットから、(a,b,c,d,e,f)に対応するbit列を抽出し、抽出した(a,b,c,d,e,f)を判別論理式230−1に入力する。そして、プロトコルスタック判別部212は、判別論理式230−1のoutputに対応するパケットのパターンの種別、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を、パケットとともに出力する。 As shown in FIG. 12, the protocol stack discriminating unit 212 is preset with, for example, the discriminant logic formula 230-1 (see (1) in FIG. 12). The protocol stack discriminating unit 212 discriminates the protocol stack pattern of the packet by using this discriminant logic formula 230-1 (see (2) in FIG. 12). Specifically, the protocol stack discriminating unit 212 extracts the bit string required for discrimination from the packet in the discrimination logical expression 230-1. That is, the protocol stack discriminating unit 212 extracts a bit string corresponding to (a,b,c,d,e,f) from the packet to be discriminated and extracts (a,b,c,d,e, f) is input to the discriminant logic formula 230-1. Then, the protocol stack determination unit 212 outputs the type of the packet pattern corresponding to the output of the determination logical expression 230-1, the header strip location, and the protocol number specified in the converted Ethertype together with the packet.

例えば、パケットCaが入力された場合を例に説明する。プロトコルスタック判別部212は、パケットCaから、(a,b,c,d,e,f)に対応するbit列を抽出し、判別論理式230−1を入力する。この結果、判別論理式230−1のoutputとして(0,0,0)が得られた場合には、プロトコルスタック判別部212は、パケットCaとともに、このパケットCaのパターン「A」、ヘッダストリップ箇所「a〜abyte」、変換後Ethertypeに指定するプロトコル番号「m」を出力する。 For example, a case where the packet Ca is input will be described as an example. The protocol stack discrimination unit 212 extracts the bit string corresponding to (a,b,c,d,e,f) from the packet Ca and inputs the discrimination logic formula 230-1. As a result, when (0,0,0) is obtained as the output of the discrimination logic expression 230-1, the protocol stack discrimination unit 212 determines the pattern “A” of this packet Ca and the header strip location together with the packet Ca. “A 1 to a 2 bytes” and the protocol number “m” specified in the Ethertype after conversion are output.

[フォーマット変換装置による処理の手順]
次に、フォーマット変換装置210による処理の手順について説明する。図13は、図9に示すフォーマット変換装置210によるフォーマット変換処理の手順を示すフローチャートである。
[Processing procedure by format converter]
Next, a procedure of processing by the format conversion device 210 will be described. FIG. 13 is a flowchart showing the procedure of the format conversion processing by the format conversion device 210 shown in FIG.

図13に示すように、パケット入力部11が、パケットの入力を受け付けると(ステップS21)、プロトコルスタック判別部212は、予め作成された判別論理式を用いて、入力されたパケットのプロトコルスタックパターンを判別するプロトコルスタック判別処理を行う(ステップS22)。図13に示すステップS23,S24は、図7に示すステップS13,S14と同様の処理を行う。 As shown in FIG. 13, when the packet input unit 11 receives an input of a packet (step S21), the protocol stack discrimination unit 212 uses the discriminant logic formula created in advance to determine the protocol stack pattern of the input packet. A protocol stack determination process for determining is performed (step S22). Steps S23 and S24 shown in FIG. 13 perform the same processes as steps S13 and S14 shown in FIG.

[実施の形態2の効果]
このように、実施の形態2では、予め作成された判別論理式を用いて、入力されたパケットのプロトコルスタックパターンを判別し、パケットのフォーマットを、解析装置20の解析対象以外のプロトコルヘッダを除外したフォーマットに変換するため、実施の形態1と同様の効果を奏する。
[Effects of Second Embodiment]
As described above, in the second embodiment, the protocol stack pattern of the input packet is discriminated using the discriminant logic formula created in advance, and the packet format excludes the protocol headers other than the analysis target of the analysis device 20. Since the format is converted into the above format, the same effect as that of the first embodiment is obtained.

[実施の形態3]
次に、実施の形態3について説明する。図14は、実施の形態3に係るフォーマット変換装置の構成の一例を示す図である。図14に示すように、フォーマット変換装置310は、図2に示すフォーマット変換装置10と比して、プロトコルスタック判別部12に代えて、プロトコルスタック判別部312を有する。
[Third Embodiment]
Next, a third embodiment will be described. FIG. 14 is a diagram showing an example of the configuration of the format conversion device according to the third embodiment. As shown in FIG. 14, the format conversion device 310 has a protocol stack determination unit 312 instead of the protocol stack determination unit 12 as compared with the format conversion device 10 shown in FIG.

プロトコルスタック判別部312は、標準化された各プロトコルのヘッダ情報を示すプロトコルconfigファイルを用いて、入力されたパケットのプロトコルスタックパターンを判別する。そして、プロトコルスタック判別部312は、プロトコルconfigファイルを用いて、入力されたパケットから除外するプロトコルヘッダ箇所も判別する。 The protocol stack discriminating unit 312 discriminates the protocol stack pattern of the input packet using the protocol config file indicating the standardized header information of each protocol. Then, the protocol stack discrimination unit 312 also discriminates the protocol header part to be excluded from the input packet by using the protocol config file.

[プロトコルconfigファイルの一例]
プロトコルconfigファイルは、一般的に使用される各プロトコルヘッダ情報が記載されたファイルである。プロトコルconfigファイルは、例えば、プロトコルヘッダ情報として、標準化されたプロトコルのヘッダのヘッダ長、上位プロトコルのヘッダを示すフィールド位置等が記載される。
[Example of protocol config file]
The protocol config file is a file in which information on each protocol header generally used is described. In the protocol config file, for example, the header length of the header of the standardized protocol, the field position indicating the header of the higher-layer protocol, and the like are described as the protocol header information.

図15は、プロトコルconfigファイルの一例を示す図である。図15に示す表L31は、Etherヘッダのプロトコルconfigファイルである。表L31に示すように、要素名及び概要が項目として示されている。例えば、1行目には、要素名「eth_continue」の概要が「上位探索を続けるEtherytpeを指定(ネットワークバイトオーダー)」であることが登録される。2行目には、要素名「eth_destruct」の概要が「破棄するEthertypeを指定(ネットワークバイトオーダー)」であることが登録される。 FIG. 15 is a diagram showing an example of the protocol config file. Table L31 shown in FIG. 15 is a protocol config file of the Ether header. As shown in Table L31, element names and outlines are shown as items. For example, in the first line, it is registered that the outline of the element name “eth_continue” is “specify Etheretpe for continuing upper search (network byte order)”. In the second line, it is registered that the outline of the element name "eth_destruct" is "designate Ethertype to be discarded (network byte order)".

図16は、プロトコルconfigファイルの一例を示す図である。図16に示す表L32は、プロトコルヘッダのプロトコルconfigファイルである。表L32に示すように、要素名及び概要が項目として示されている。例えば、1行目には、要素名「1_proto_index」の概要が「設定するプロトコル情報群を表すid」であることが登録される。2行目には、要素名「2_proto_num」の概要が「プロトコルの通番」であることが登録される。また、3行目には要素名「3_proto_next」の概要が「上位プロトコルを示すフィールドの位置情報」であることが登録される。4行目には、要素名「4_proto_next_len」の概要が「上位プロトコルを示すフィールドの長さ」であることが登録される。 FIG. 16 is a diagram showing an example of the protocol config file. Table L32 shown in FIG. 16 is a protocol config file of a protocol header. As shown in Table L32, element names and outlines are shown as items. For example, in the first line, it is registered that the outline of the element name “1_proto_index” is “id representing the set protocol information group”. In the second line, it is registered that the outline of the element name "2_proto_num" is "protocol serial number". Further, in the third line, it is registered that the outline of the element name “3_proto_next” is “positional information of field indicating upper protocol”. In the 4th line, it is registered that the outline of the element name "4_proto_next_len" is "the length of the field indicating the higher level protocol".

このように、プロトコルconfigファイルは、標準化された各プロトコルのヘッダ情報として、プロトコル名、プロトコルのヘッダのヘッダ長、ヘッダ長が固定または可変であるか、上位プロトコルを示すフィールド位置、上位ヘッダがストリップ対象か否か、変換後Ethertypeに指定するプロトコル番号等の各項目が記載される。 As described above, the protocol config file includes, as header information of each standardized protocol, a protocol name, a header length of the protocol header, a fixed or variable header length, a field position indicating a higher protocol, and a higher header strip. Each item such as whether or not it is a target and the protocol number specified in the Ethertype after conversion is described.

[フォーマット変換装置の処理の流れ]
次に、フォーマット変換装置310の処理の流れについて説明する。図17は、図14に示すフォーマット変換装置310の処理の流れを説明する図である。
[Processing flow of format conversion device]
Next, a processing flow of the format conversion device 310 will be described. FIG. 17 is a diagram illustrating a processing flow of the format conversion device 310 illustrated in FIG.

図17に示すように、プロトコルスタック判別部312には、事前に、予め作成されたプロトコルconfigファイル330が設定される。そして、パケット入力部11がパケットの入力を受付けると、プロトコルスタック判別部312は、プロトコルconfigファイル330を用いて、到着したパケットのプロトコルスタックパターンを判別する(図17の(1)参照)。プロトコルスタック判別部312は、判別結果として、到着したパケット自身に加え、このパケットのプロトコルスタックパターン、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を出力する。 As shown in FIG. 17, a protocol config file 330 created in advance is set in the protocol stack determination unit 312. Then, when the packet input unit 11 accepts the input of the packet, the protocol stack determination unit 312 determines the protocol stack pattern of the arrived packet using the protocol config file 330 (see (1) in FIG. 17). As a determination result, the protocol stack determination unit 312 outputs the arrived packet itself, as well as the protocol stack pattern of this packet, the header strip location, and the protocol number specified in the converted Ethertype.

そして、パケットフォーマット変換部13は、プロトコルスタック判別部312の判別結果を基に、フォーマット変換を実行する(図17の(2)参照)。そして、パケットフォーマット変換部13によるフォーマット変換後のパケットは、パケット出力部14から、解析装置20(不図示)に出力される。 Then, the packet format conversion unit 13 executes the format conversion based on the determination result of the protocol stack determination unit 312 (see (2) in FIG. 17). Then, the packet after the format conversion by the packet format conversion unit 13 is output from the packet output unit 14 to the analysis device 20 (not shown).

[プロトコルスタック判別部の処理]
次に、プロトコルスタック判別部312の処理について説明する。図18は、図14に示すプロトコルスタック判別部312の処理を説明する図である。
[Process of Protocol Stack Discrimination Unit]
Next, the processing of the protocol stack determination unit 312 will be described. FIG. 18 is a diagram for explaining the processing of the protocol stack discrimination unit 312 shown in FIG.

図18に示すように、プロトコルスタック判別部312は、プロトコルconfigファイル330を事前設定される(図18の(1)参照)。プロトコルスタック判別部312は、このプロトコルconfigファイル330を参照し、判別対象のパケットの下位からヘッダを順次特定して、このパケットのプロトコルスタックパターン、ストリップ領域、変換後Ethertypeに指定するプロトコル番号を特定する(図18の(2)参照)。具体的には、プロトコルスタック判別部312は、プロトコルconfigファイル330を参照し、下位のヘッダから順に、各ヘッダの各要素の概要を判別することで、パケットのプロトコルスタックパターンを判別する。そして、プロトコルスタック判別部312は、プロトコルconfigファイル330を参照し、各ヘッダのうちストリップ対象のヘッダを特定する。これによって、プロトコルスタック判別部312は、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を特定する。 As shown in FIG. 18, the protocol stack determination unit 312 is preset with the protocol config file 330 (see (1) in FIG. 18). The protocol stack discrimination unit 312 refers to the protocol config file 330, sequentially identifies the header from the lower order of the packet to be discriminated, and identifies the protocol stack pattern of this packet, the strip area, and the protocol number specified in the converted Ethertype. (See (2) of FIG. 18). Specifically, the protocol stack determination unit 312 determines the protocol stack pattern of the packet by referring to the protocol config file 330 and determining the outline of each element of each header in order from the lower header. Then, the protocol stack determination unit 312 refers to the protocol config file 330 and identifies the header to be stripped from among the headers. As a result, the protocol stack discrimination unit 312 identifies the header strip location and the protocol number specified in the converted Ethertype.

例えば、プロトコルスタック判別部312は、パケットCaが入力された場合、プロトコルconfigファイル330を参照して、パケットCaが、ヘッダが、下位から、H1,H2,H3,H4であることを特定する。そして、プロトコルスタック判別部312は、プロトコルconfigファイル330を参照して、パケットCaにおけるストリップ対象のヘッダH2,H3を特定する。そして、プロトコルスタック判別部312は、プロトコルconfigファイル330を参照して、パケットCaの、ヘッダストリップ箇所「a〜abyte」、変換後Ethertypeに指定するプロトコル番号「m」を判別後、出力する。 For example, when the packet Ca is input, the protocol stack determination unit 312 refers to the protocol config file 330 and specifies that the header of the packet Ca is H1, H2, H3, H4 from the lower order. Then, the protocol stack determination unit 312 refers to the protocol config file 330 and identifies the headers H2 and H3 to be stripped in the packet Ca. Then, the protocol stack determination unit 312 refers to the protocol config file 330, determines the header strip location “a 1 to a 2 byte” of the packet Ca, the protocol number “m” specified in the converted Ethertype, and then outputs. To do.

[フォーマット変換装置による処理の手順]
次にフォーマット変換装置310による処理の手順について説明する。図19は、図14に示すフォーマット変換装置310によるフォーマット変換処理の手順を示すフローチャートである。
[Processing procedure by format converter]
Next, a procedure of processing by the format conversion device 310 will be described. FIG. 19 is a flowchart showing the procedure of the format conversion processing by the format conversion device 310 shown in FIG.

図19に示すように、パケット入力部11が、パケットの入力を受け付けると(ステップS31)、プロトコルスタック判別部312は、プロトコルconfigファイル330を参照して、入力されたパケットのプロトコルスタックパターンを判別するプロトコルスタック判別処理を行う(ステップS32)。図19に示すステップS33,S34は、図7に示すステップS13,S14と同様の処理を行う。 As shown in FIG. 19, when the packet input unit 11 receives a packet input (step S31), the protocol stack determination unit 312 refers to the protocol config file 330 and determines the protocol stack pattern of the input packet. Then, a protocol stack determination process is performed (step S32). Steps S33 and S34 shown in FIG. 19 perform the same processes as steps S13 and S14 shown in FIG.

[実施の形態3の効果]
このように、実施の形態3では、予め作成されたプロトコルconfigファイル330を用いて、入力されたパケットのプロトコルスタックパターンを判別し、パケットのフォーマットを、解析装置20の解析対象以外のプロトコルヘッダを除外したフォーマットに変換するため、実施の形態1と同様の効果を奏する。
[Effects of Third Embodiment]
As described above, in the third embodiment, the protocol config file 330 created in advance is used to determine the protocol stack pattern of the input packet, and the packet format is set to the protocol header other than the analysis target of the analysis device 20. Since the format is converted to the excluded format, the same effect as that of the first embodiment is obtained.

[実施の形態4]
次に、実施の形態4について説明する。実施の形態1〜3に係るフォーマット変換装置10,210,310は、他の装置等において予め作成された判別ルールを用いるのに対し、実施の形態4に係るフォーマット変換装置は、自装置において判別ルールを作成する。
[Embodiment 4]
Next, a fourth embodiment will be described. While the format conversion devices 10, 210, 310 according to the first to third embodiments use the discrimination rule created in advance in other devices, the format conversion device according to the fourth embodiment discriminates in its own device. Create rules.

具体的には、実施の形態4に係るフォーマット変換装置は、一定期間、入力されたパケットに対しプロトコルconfigファイルを用いて学習することによって、判別ルールを作成する。そして、実施の形態4に係るフォーマット変換装置は、学習処理において作成された判別ルールにしたがって、プロトコルスタックパターンを判別してパケットのフォーマットを変換する。 Specifically, the format conversion device according to the fourth embodiment creates a discrimination rule by learning an input packet for a certain period using a protocol config file. Then, the format conversion device according to the fourth embodiment converts the packet format by determining the protocol stack pattern according to the determination rule created in the learning process.

[フォーマット変換装置の構成]
まず、実施の形態4に係るフォーマット変換装置の構成について説明する。図20は、実施の形態4に係るフォーマット変換装置の構成の一例を示す図である。図20に示すように、フォーマット変換装置410は、パケット入力部11、ミラー部412、パケットキャプチャ部413、学習部414、フォーマット変換部415及びパケット出力部14を有する。
[Configuration of format conversion device]
First, the configuration of the format conversion device according to the fourth embodiment will be described. FIG. 20 is a diagram showing an example of the configuration of the format conversion device according to the fourth embodiment. As shown in FIG. 20, the format conversion device 410 includes a packet input unit 11, a mirror unit 412, a packet capture unit 413, a learning unit 414, a format conversion unit 415, and a packet output unit 14.

ミラー部412は、パケット入力部11が受け付けたパケットを、パケットキャプチャ部413、または、パケットキャプチャ部413及びフォーマット変換部415、に出力する。ミラー部412は、学習部414による学習処理時には、パケットをパケットキャプチャ部413に出力する。一方、ミラー部412は、フォーマット変換部415によるフォーマット変換処理時には、パケットをパケットキャプチャ部413及びフォーマット変換部415の双方に出力する。 The mirror unit 412 outputs the packet received by the packet input unit 11 to the packet capture unit 413, or the packet capture unit 413 and the format conversion unit 415. The mirror unit 412 outputs the packet to the packet capture unit 413 during the learning processing by the learning unit 414. On the other hand, the mirror unit 412 outputs the packet to both the packet capture unit 413 and the format conversion unit 415 during the format conversion processing by the format conversion unit 415.

パケットキャプチャ部413は、入力されたパケットをバッファリングし、バッファリングしたパケットを、所定タイミングにしたがって、順次、学習部414に出力する。 The packet capture unit 413 buffers the input packet, and sequentially outputs the buffered packet to the learning unit 414 at a predetermined timing.

学習部414は、入力されたパケットに対しプロトコルconfigファイルを用いて学習することによって判別ルールを作成し、作成した判定ルールをフォーマット変換部415に出力する。学習部414は、判別ルールとして、パケット内の特定bit列を基にプロトコルスタックパターンを判別する判別木を作成する。学習部414は、プロトコルスタック解析部4141、パターン分布格納部4142、判別木作成部4143及びパターン分布DB4144を有する。なお、学習部414は、各種のプロトコルスタックパターンのパケットを判別できるように、複数の判別木を作成する。 The learning unit 414 creates a determination rule by learning the input packet using the protocol config file, and outputs the created determination rule to the format conversion unit 415. The learning unit 414 creates a discrimination tree for discriminating a protocol stack pattern based on a specific bit string in a packet as a discrimination rule. The learning unit 414 includes a protocol stack analysis unit 4141, a pattern distribution storage unit 4142, a discriminant tree creation unit 4143, and a pattern distribution DB 4144. The learning unit 414 creates a plurality of discriminant trees so that packets of various protocol stack patterns can be discriminated.

プロトコルスタック解析部4141は、プロトコルconfigファイルを用いて、入力された各パケットを下位ヘッダから順次解析して、それぞれのプロトコルスタックパターンを特定する。 The protocol stack analysis unit 4141 sequentially analyzes each input packet from the lower header using the protocol config file, and specifies each protocol stack pattern.

パターン分布格納部4142は、入力されたパケットのプロトコルスタックパターンの分布を作成し、判別木作成部4143に出力するとともに、パターン分布DB4144に格納する。 The pattern distribution storage unit 4142 creates a protocol stack pattern distribution of the input packet, outputs it to the discrimination tree creation unit 4143, and stores it in the pattern distribution DB 4144.

判別木作成部4143は、入力されたパケットのプロトコルスタックパターン及びプロトコルスタックパターンの分布を基に、プロトコルスタックパターンを判別する判別木を作成する。判別木作成部4143は、パケット内の特定bit列を基にプロトコルスタックパターンを判別する判別木を作成する。 The discriminant tree generator 4143 generates a discriminant tree for discriminating the protocol stack pattern based on the protocol stack pattern of the input packet and the distribution of the protocol stack pattern. The discriminant tree generator 4143 generates a discriminant tree for discriminating the protocol stack pattern based on the specific bit string in the packet.

パターン分布DB4144は、学習部414が学習したパケットのプロトコルスタックパターン及びプロトコルスタックパターンの分布を記憶する。パターン分布DB4144が記憶するプロトコルスタックパターン及びプロトコルスタックパターンの分布は、パターン分布格納部4142によって更新される。 The pattern distribution DB 4144 stores the protocol stack pattern of the packet learned by the learning unit 414 and the distribution of the protocol stack pattern. The pattern distribution storage unit 4142 updates the protocol stack patterns and the distribution of the protocol stack patterns stored in the pattern distribution DB 4144.

フォーマット変換部415は、学習部414が作成した判別木を用いて、パケットのプロトコルパターンを判別し、フォーマット変換を行う。フォーマット変換部415は、プロトコルスタック判別部4151及びパケットフォーマット変換部13を有する。 The format conversion unit 415 uses the discriminant tree created by the learning unit 414 to determine the protocol pattern of the packet and perform format conversion. The format conversion unit 415 has a protocol stack determination unit 4151 and a packet format conversion unit 13.

プロトコルスタック判別部4151は、学習部414が作成した判別木を用いて、入力されたパケットのプロトコルスタックパターンを判別する。そして、プロトコルスタック判別部4151は、この判別木を用いて、入力されたパケットから除外するプロトコルヘッダ箇所も判別する。 The protocol stack discriminating unit 4151 discriminates the protocol stack pattern of the input packet using the discriminant tree created by the learning unit 414. Then, the protocol stack discriminating unit 4151 discriminates the protocol header part to be excluded from the input packet by using this discriminant tree.

[学習部の処理の流れ]
次に、学習部414の処理の流れについて説明する。図21は、図20に示す学習部414の処理の流れ(学習時)を説明する図である。学習部414では、まず、プロトコルスタック解析部4141に、標準化された各プロトコルのヘッダ情報を示すプロトコルconfigファイルが事前に設定される。このプロトコルconfigファイルは、図15,16に例示したデータ構成を有し、事前に作成されたものである。
[Processing flow of learning unit]
Next, the flow of processing of the learning unit 414 will be described. FIG. 21 is a diagram for explaining the processing flow (during learning) of the learning unit 414 shown in FIG. In the learning unit 414, first, in the protocol stack analysis unit 4141, a protocol config file indicating header information of each standardized protocol is set in advance. This protocol config file has the data structure illustrated in FIGS. 15 and 16 and is created in advance.

そして、図21に示すように、学習部414のプロトコルスタック解析部4141には、パケットキャプチャ部413によってキャプチャされたキャプチャパケットが入力される。プロトコルスタック解析部4141は、プロトコルconfigファイルを参照し、キャプチャパケットの下位ヘッダから順次解析し、入力された各パケットのプロトコルスタックパターンを特定する(図21の(1)参照)。ここで、プロトコルスタック解析部4141は、各パケットのプロトコルスタックパターンに加え、プロトコルスタックパターンの分布を出力する。パターン分布格納部4142は、入力されたパケットのプロトコルスタックパターンの分布を作成し、パターン分布DB4144に格納することでDB化を行う(図21の(2)参照)。 Then, as shown in FIG. 21, the capture packet captured by the packet capture unit 413 is input to the protocol stack analysis unit 4141 of the learning unit 414. The protocol stack analysis unit 4141 refers to the protocol config file, sequentially analyzes from the lower header of the capture packet, and specifies the protocol stack pattern of each input packet (see (1) in FIG. 21). Here, the protocol stack analysis unit 4141 outputs the distribution of the protocol stack pattern in addition to the protocol stack pattern of each packet. The pattern distribution storage unit 4142 creates a protocol stack pattern distribution of the input packet and stores it in the pattern distribution DB 4144 (see (2) in FIG. 21).

続いて、判別木作成部4143は、入力されたパケットのプロトコルスタックパターン及び分布情報から、入力されたパケットを判別するために最適な判別木を作成する(図21の(3)参照)。そして、判別木作成部4143は、作成した判別木をプロトコルスタック判別部4151に出力する。この学習部414における学習処理は、フォーマット変換部415におけるフォーマット変換処理前に一定期間実行された後は、例えば、定期的に実行される。なお、学習処理では、ミラー部412からフォーマット変換部451にパケットが入力されないため、フォーマット変換部451によるフォーマット変換処理は実行されない。 Subsequently, the discrimination tree creating unit 4143 creates an optimal discrimination tree for discriminating the input packet from the protocol stack pattern and distribution information of the input packet (see (3) in FIG. 21). Then, the discriminant tree creating unit 4143 outputs the created discriminant tree to the protocol stack discriminating unit 4151. The learning process in the learning unit 414 is executed, for example, periodically after being executed for a certain period before the format conversion process in the format conversion unit 415. In the learning process, since no packet is input from the mirror unit 412 to the format conversion unit 451, the format conversion process by the format conversion unit 451 is not executed.

[フォーマット変換部の処理の流れ]
次に、フォーマット変換部415の処理の流れについて説明する。図22は、図20に示すフォーマット変換部415の処理の流れ(変換時)を説明する図である。
[Processing flow of format converter]
Next, the processing flow of the format conversion unit 415 will be described. FIG. 22 is a diagram for explaining the processing flow (at the time of conversion) of the format conversion unit 415 shown in FIG.

プロトコルスタック判別部4151には、学習部414が作成した判別木が設定される。そして、図22に示すように、ミラー部412からパケットが入力されると、プロトコルスタック判別部4151は、入力されたパケットのプロトコルスタックパターンを、学習部414が作成した判別木を用いて判別する(図22の(1)参照)。この際、プロトコルスタック判別部4151は、判別結果として、到着したパケット自身に加え、このパケットのプロトコルスタックパターン、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を出力する。 The discriminant tree created by the learning unit 414 is set in the protocol stack discriminating unit 4151. Then, as shown in FIG. 22, when a packet is input from the mirror unit 412, the protocol stack determination unit 4151 determines the protocol stack pattern of the input packet using the determination tree created by the learning unit 414. (See (1) in FIG. 22). At this time, the protocol stack discriminating unit 4151 outputs, as a discrimination result, in addition to the arrived packet itself, the protocol stack pattern of this packet, the header strip location, and the protocol number specified in the converted Ethertype.

そして、パケットフォーマット変換部13は、プロトコルスタック判別部4151の判別結果を基に、フォーマット変換を実行する(図22の(2)参照)。そして、パケットフォーマット変換部13によるフォーマット変換後のパケットは、パケット出力部14から、解析装置20(不図示)に出力される。なお、フォーマット変換処理中も、学習部414は、キャプチャパケットを受け取り、プロトコルスタック解析及びパターン分布の格納を行い、データを蓄積している。 Then, the packet format conversion unit 13 executes the format conversion based on the determination result of the protocol stack determination unit 4151 (see (2) in FIG. 22). Then, the packet after the format conversion by the packet format conversion unit 13 is output from the packet output unit 14 to the analysis device 20 (not shown). Even during the format conversion process, the learning unit 414 receives the capture packet, analyzes the protocol stack, stores the pattern distribution, and accumulates the data.

[プロトコルスタック解析部の処理]
次に、プロトコルスタック解析部4141の処理について説明する。図23は、図20に示すプロトコルスタック解析部4141の処理を説明する図である。
[Processing of protocol stack analysis unit]
Next, the processing of the protocol stack analysis unit 4141 will be described. FIG. 23 is a diagram for explaining the processing of the protocol stack analysis unit 4141 shown in FIG.

まず、図23に示すように、プロトコルスタック解析部4141には、事前に、予め作成されたプロトコルconfigファイル330が設定される(図23の(1)参照)。プロトコルconfigファイル330は、標準化された各プロトコルのヘッダ情報として、プロトコル名、プロトコルのヘッダのヘッダ長、ヘッダ長が固定または可変であるか、上位プロトコルを示すフィールド位置、上位ヘッダがストリップ対象か否か、変換後Ethertypeに指定するプロトコル番号等が記載される。 First, as shown in FIG. 23, a protocol config file 330 created in advance is set in the protocol stack analysis unit 4141 (see (1) in FIG. 23). The protocol config file 330 includes, as standardized header information of each protocol, a protocol name, a header length of the header of the protocol, whether the header length is fixed or variable, a field position indicating a higher protocol, and whether the higher header is a strip target. Alternatively, the protocol number specified in Ethertype after conversion is described.

そして、プロトコルスタック解析部4141は、入力されたキャプチャパケットの下位ヘッダから捜査を開始し、プロトコルconfigファイル330を用いてプロトコルスタックパターンを特定する。プロトコルスタック解析部4141は、プロトコルスタックパターン情報、パケットのヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号、及び、各パターンの出現頻度を解析して、送出する(図23の(2)参照)。 Then, the protocol stack analysis unit 4141 starts the investigation from the lower header of the input capture packet, and specifies the protocol stack pattern using the protocol config file 330. The protocol stack analysis unit 4141 analyzes the protocol stack pattern information, the header strip portion of the packet, the protocol number specified in the converted Ethertype, and the appearance frequency of each pattern, and sends the analyzed pattern (see (2) in FIG. 23). ..

具体的には、枠W41のパターン図G41に示すように、例えば、4つのパケットがキャプチャパケットとして入力された場合について説明する。この場合、プロトコルスタック解析部4141は、プロトコルconfigファイル330を用いて、入力された各キャプチャパケットの下位ヘッダから捜査を開始する。 Specifically, as shown in the pattern diagram G41 of the frame W41, a case where, for example, four packets are input as capture packets will be described. In this case, the protocol stack analysis unit 4141 uses the protocol config file 330 to start the search from the lower header of each input capture packet.

この結果、プロトコルスタック解析部4141は、1段目のパケットのプロトコルスタックパターンが「A」であることを判別する。そして、プロトコルスタック解析部4141は、1段目のパケットのヘッダストリップ箇所「a〜abyte」、変換後Ethertypeに指定するプロトコル番号「m」を判別する。そして、プロトコルスタック解析部4141は、2段目のパケットのプロトコルスタックパターンが「B」であり、パケットのヘッダストリップ箇所「b〜bbyte」、変換後Ethertypeに指定するプロトコル番号「l」を判別する。 As a result, the protocol stack analysis unit 4141 determines that the protocol stack pattern of the first packet is “A”. Then, the protocol stack analysis unit 4141 determines the header strip location “a 1 to a 2 byte” of the first packet and the protocol number “m” specified in the converted Ethertype. Then, the protocol stack analysis unit 4141 has the protocol stack pattern of the second-stage packet as “B”, the header strip portion “b 1 to b 2 byte” of the packet, and the protocol number “l” specified in the converted Ethertype. To determine.

そして、プロトコルスタック解析部4141は、3段目のパケットのプロトコルスタックパターンが「A」であり、パケットのヘッダストリップ箇所「a〜abyte」、変換後Ethertypeに指定するプロトコル番号「m」を判別する。そして、プロトコルスタック解析部4141は、4段目のパケットのプロトコルスタックパターンが「C」であり、パケットのヘッダストリップ箇所「c〜cbyte」、変換後Ethertypeに指定するプロトコル番号「n」を判別する。 Then, the protocol stack analysis unit 4141 has the protocol stack pattern of the third-stage packet as “A”, the header strip location “a 1 to a 2 byte” of the packet, and the protocol number “m” specified in the converted Ethertype. To determine. Then, in the protocol stack analysis unit 4141, the protocol stack pattern of the packet at the fourth stage is “C”, the header strip location “c 1 to c 2 byte” of the packet, and the protocol number “n” specified in the converted Ethertype. To determine.

この解析によって、プロトコルスタック解析部4141は、各プロトコルスタックパターンの出現頻度を求めることができる。例えば、図23に示す例では、キャプチャパケットのうち、パターンAが2回、パターンBが1回、パターンCが1回出現している。プロトコルスタック解析部4141は、この出現頻度を基に求めた各パターンの分布情報を、プロトコルスタックパターンとともに出力する。 By this analysis, the protocol stack analysis unit 4141 can obtain the appearance frequency of each protocol stack pattern. For example, in the example shown in FIG. 23, in the capture packet, pattern A appears twice, pattern B appears once, and pattern C appears once. The protocol stack analysis unit 4141 outputs the distribution information of each pattern obtained based on this appearance frequency together with the protocol stack pattern.

さらに、プロトコルスタック解析部4141は、各パケットにおけるパターンA〜Cについて、上位ヘッダを特定する情報のbyte位置及び値を取得する。具体的には、プロトコルスタック解析部4141は、枠W41のグラフG1に示すように、パターンAについては、上位ヘッダを特定する各情報として[(a,1010),(b,1111),(d,0101)]を取得する。同様に、プロトコルスタック解析部4141は、パターンBについては、上位ヘッダを特定する各情報として、[(a,1010),(b,1111),(d,0101),(e,1111),(f,1011)]を取得する。また、プロトコルスタック解析部4141は、パターンCについては、上位ヘッダを特定する各情報として[(a,1010),(b,1101), (c,1110)]を取得する。プロトコルスタック解析部4141は、取得した上位ヘッダを特定する情報のbyte位置及び値も、各プロトコルスタックパターンに対応付けて出力する。 Further, the protocol stack analysis unit 4141 acquires the byte position and the value of the information specifying the upper header for the patterns A to C in each packet. Specifically, as shown in the graph G1 of the frame W41, the protocol stack analysis unit 4141 uses [(a,1010), (b,1111), (d ,0101)] is acquired. Similarly, for the pattern B, the protocol stack analysis unit 4141 uses [(a,1010), (b,1111), (d,0101), (e,1111), ( f,1011)] is acquired. Further, for the pattern C, the protocol stack analysis unit 4141 acquires [(a,1010), (b,1101), (c,1110)] as each piece of information specifying the upper header. The protocol stack analysis unit 4141 also outputs the byte position and value of the acquired information that specifies the upper header in association with each protocol stack pattern.

[パターン分布格納部の処理]
次に、パターン分布格納部4142の処理について説明する。図24は、図20に示すパターン分布格納部4142の処理を説明する図である。
[Process of pattern distribution storage]
Next, the processing of the pattern distribution storage unit 4142 will be described. FIG. 24 is a diagram for explaining the processing of the pattern distribution storage unit 4142 shown in FIG.

図24に示すように、パターン分布格納部4142は、プロトコルスタック解析部4141から出力されたプロトコルスタックパターンの分布情報を基に、パターン分布DB4144のプロトコルスタックパターンの分布情報を更新する(図24の(1)参照)。例えば、枠W42のグラフG43に示すように、プロトコルスタック解析部4141による解析結果では、パターンAが2回、パターンBが1回、パターンCが1回出現していた。このため、パターン分布格納部4142は、各パターンの出現回数をパターンごとに対応付けたグラフG43の内容を基に、パターン分布DB4144のプロトコルスタックパターンの分布情報を更新する。 As illustrated in FIG. 24, the pattern distribution storage unit 4142 updates the distribution information of the protocol stack patterns in the pattern distribution DB 4144 based on the distribution information of the protocol stack patterns output from the protocol stack analysis unit 4141 (see FIG. 24). (See (1)). For example, as shown in the graph G43 of the frame W42, in the analysis result by the protocol stack analysis unit 4141, the pattern A appears twice, the pattern B appears once, and the pattern C appears once. Therefore, the pattern distribution storage unit 4142 updates the distribution information of the protocol stack patterns in the pattern distribution DB 4144 based on the content of the graph G43 in which the number of appearances of each pattern is associated with each pattern.

そして、パターン分布格納部4142は、プロトコルスタックパターンの各プロトコルスタックパターン情報、パケットのヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号と、プロトコルスタックパターンの分布情報を出力する(図24の(2)参照)。例えば、パターン分布格納部4142は、図24のグラフG44のような情報を出力する。 Then, the pattern distribution storage unit 4142 outputs each protocol stack pattern information of the protocol stack pattern, the header strip location of the packet, the protocol number specified in the converted Ethertype, and the distribution information of the protocol stack pattern ((2 in FIG. 24). )reference). For example, the pattern distribution storage unit 4142 outputs information such as the graph G44 in FIG.

[判別木作成部の処理]
次に、図25を参照して、判別木作成部4143の処理について説明する。図25は、図20に示す判別木作成部4143の処理を説明する図である。
[Process of Discriminant Tree Creation Unit]
Next, with reference to FIG. 25, the processing of the discrimination tree creating unit 4143 will be described. FIG. 25 is a diagram for explaining the processing of the discrimination tree creating unit 4143 shown in FIG.

図25に示すように、判別木作成部4143は、例えば、ハフマン符号化アルゴリズムを応用し、判別回数の平均が最小になるような判別木の構成を実施する(図25の(1)参照)。ここでは、入力されたプロトコルスタックパターン情報とプロトコルスタックパターンの分布情報とが、枠W43に示すように、パターンAが2回、パターンBが1回、パターンCが1回である場合について説明する。この場合、パケット数「4」のノードN41から、パターンAが2個のノードN42へのエッジE41、または、パケット数「2」のノードN43へのエッジE42に枝分かれし、ノードN43から、パターンBが1個のノードN44へのエッジE43、または、パターンCが1個のノードN45へのエッジE44に枝分かれする判別木構成T41が、判別回数の平均が最小となる。 As shown in FIG. 25, the discriminant tree creating unit 4143 applies a Huffman coding algorithm, for example, and implements a discriminant tree configuration that minimizes the average of the number of discriminations (see (1) in FIG. 25). .. Here, the case where the input protocol stack pattern information and the distribution information of the protocol stack pattern are the pattern A twice, the pattern B once, and the pattern C once as shown in the frame W43 will be described. .. In this case, the node N41 having the number of packets "4" branches to the edge E41 to the node N42 having two patterns A or the edge E42 to the node N43 having the number of packets "2", and the pattern N branches from the node N43. In the discriminant tree configuration T41 in which the branch C is branched to the edge E43 to one node N44 or the pattern C is branched to the edge E44 to one node N45, the average of the discrimination times is minimum.

そこで、判別木作成部4143は、判別対象のパケットについて、上位のノードN41´を「is パターンA?[(a,1010),(b,1111),(d,0101)]」とする。そして、判別木作成部4143は、ノードN41´に対してyesである場合(エッジE41´)である場合には、ノードN42´に、判別対象のパケットがパターンAであって、ヘッダストリップ箇所はa〜abyteであり、変換後Ethertypeに指定するプロトコル番号はmである旨を設定する。 Therefore, the discrimination tree creating unit 4143 sets the upper node N41′ to “is pattern A? [(a,1010), (b,1111), (d,0101)]” for the discrimination target packet. Then, when the determination tree creating unit 4143 is yes for the node N41′ (edge E41′), the determination target packet is the pattern A and the header strip location is at the node N42′. It is set to a 1 to a 2 bytes and the protocol number specified in the Ethertype after conversion is m.

一方、判別木作成部4143は、ノードN41´に対してNoである場合(エッジE42´)である場合には、ノード43´に「is パターンB?[(a,1010),(b,1111),(d,0101),(e,1111),(f,1011)]」を設定する。 On the other hand, if the decision tree creating unit 4143 is No for the node N41′ (edge E42′), the discrimination tree creating unit 4143 displays “is pattern B? [(a,1010), (b,1111)” in the node 43′. ), (d,0101), (e,1111), (f,1011)]”.

そして、判別木作成部4143は、ノードN43´に対してyesである場合(エッジE43´)である場合には、ノードN44´に、判別対象のパケットがパターンBであって、ヘッダストリップ箇所はb〜bbyteであり、変換後Ethertypeに指定するプロトコル番号はlである旨を設定する。また、判別木作成部4143は、ノードN43´に対してNoである場合(エッジE44´)である場合には、ノードN45´に、判別対象のパケットがパターンCであって、ヘッダストリップ箇所はc〜cbyteであり、変換後Ethertypeに指定するプロトコル番号はnである旨を設定する(図25の(2)参照)。 Then, when the determination tree creating unit 4143 is yes for the node N43′ (edge E43′), the determination target packet is the pattern B and the header strip location is at the node N44′. It is b 1 to b 2 bytes, and sets that the protocol number specified in the Ethertype after conversion is l. When the determination tree creating unit 4143 is No for the node N43′ (edge E44′), the determination target packet is the pattern C and the header strip location is in the node N45′. It is c 1 to c 2 bytes, and sets that the protocol number specified in the Ethertype after conversion is n (see (2) in FIG. 25).

このように、判別木作成部4143は、パターンA〜Cを判別するための判別木T42を作成することができる。判別木作成部4143は、作成した判別木をフォーマット変換部415に出力する。 In this way, the discriminant tree generator 4143 can generate the discriminant tree T42 for discriminating the patterns A to C. The discriminant tree creating unit 4143 outputs the created discriminant tree to the format converting unit 415.

[プロトコルスタック判別部の処理]
次に、図26を参照して、プロトコルスタック判別部4151の処理について説明する。図26は、図20に示すプロトコルスタック判別部4151の処理を説明する図である。
[Process of Protocol Stack Discrimination Unit]
Next, with reference to FIG. 26, the processing of the protocol stack determination unit 4151 will be described. FIG. 26 is a diagram for explaining the processing of the protocol stack discriminating unit 4151 shown in FIG.

図26に示すように、プロトコルスタック判別部4151は、例えば、判別木作成部4143から出力された判別木T42を、事前設定される(図26の(1)参照)。プロトコルスタック判別部4151は、この判別木T42を用いて、パケットのプロトコルスタックパターンを判別する(図26の(2)参照)。具体的には、プロトコルスタック判別部4151は、判別木T42を基に、入力されたパケットの各パターンの上位ヘッダを特定する情報の位置及び値を基に、パケットがA〜Cのいずれのパターンであるかを判別する。 As shown in FIG. 26, the protocol stack discriminating unit 4151 presets the discriminant tree T42 output from the discriminant tree creating unit 4143, for example (see (1) in FIG. 26). The protocol stack discrimination unit 4151 discriminates the protocol stack pattern of the packet using the discrimination tree T42 (see (2) in FIG. 26). Specifically, the protocol stack discriminating unit 4151 determines whether the packet has any pattern of A to C based on the position and value of the information that identifies the upper header of each pattern of the input packet based on the discrimination tree T42. Is determined.

例えば、プロトコルスタック判別部4151は、パケットCaが入力された場合、このパケットの上位ヘッダを特定する情報の位置及び値を抽出する。判別木T42に、抽出した上位ヘッダを特定する情報の位置及び値を適用して、このパケットが、パターンAであることを判別する。これにともない、プロトコルスタック判別部4151は、パケットCaとともに、このパケットCaのパターン「A」、ヘッダストリップ箇所「a〜abyte」、変換後Ethertypeに指定するプロトコル番号「m」を出力する。 For example, when the packet Ca is input, the protocol stack determination unit 4151 extracts the position and value of the information that identifies the upper header of this packet. The position and value of the extracted information that identifies the upper header is applied to the discrimination tree T42 to determine that this packet is pattern A. Along with this, the protocol stack discrimination unit 4151 outputs the packet Ca, the pattern “A” of the packet Ca, the header strip location “a 1 to a 2 byte”, and the protocol number “m” specified in the converted Ethertype. ..

[学習処理の手順]
次に、フォーマット変換装置410による学習処理の処理手順について説明する。図27は、図20に示すフォーマット変換装置410による学習処理の手順を示すフローチャートである。
[Learning procedure]
Next, the processing procedure of the learning processing by the format conversion device 410 will be described. FIG. 27 is a flowchart showing the procedure of learning processing by the format conversion device 410 shown in FIG.

図27に示すように、まず、学習部414では、キャプチャパケットが入力されると、プロトコルスタック解析部4141が、プロトコルconfigファイルを用いて、入力された各パケットを下位ヘッダから順次解析して、それぞれのプロトコルスタックパターン及び分布を特定するプロトコルスタック解析処理を行う(ステップS41)。そして、パターン分布格納部4142は、入力されたパケットのプロトコルスタックパターンの分布を作成し、判別木作成部4143に出力するとともに、パターン分布DB4144に格納するパターン分布格納処理を行う(ステップS42)。 As shown in FIG. 27, first, in the learning unit 414, when the capture packet is input, the protocol stack analysis unit 4141 sequentially analyzes each input packet from the lower header by using the protocol config file, Protocol stack analysis processing for specifying each protocol stack pattern and distribution is performed (step S41). Then, the pattern distribution storage unit 4142 creates the distribution of the protocol stack pattern of the input packet, outputs it to the discrimination tree creation unit 4143, and performs the pattern distribution storage processing to store it in the pattern distribution DB 4144 (step S42).

続いて、判別木作成部4143は、入力されたパケットのプロトコルスタックパターン及びプロトコルスタックパターンの分布を基に、プロトコルスタックパターンを判別する判別木を作成する判別木作成処理を行う(ステップS43)。判別木作成部4143は、作成した判別木をプロトコルスタック判別部4151に出力する(ステップS44)。 Subsequently, the discriminant tree generator 4143 performs a discriminant tree generating process for generating a discriminant tree for discriminating the protocol stack pattern based on the protocol stack pattern of the input packet and the distribution of the protocol stack patterns (step S43). The discriminant tree generator 4143 outputs the discriminated tree thus generated to the protocol stack discriminator 4151 (step S44).

[フォーマット変換処理の処理手順]
次に、フォーマット変換装置410によるフォーマット変換処理の手順について説明する。図28は、図20に示すフォーマット変換装置410によるフォーマット変換処理の手順を示すフローチャートである。
[Processing procedure of format conversion processing]
Next, a procedure of format conversion processing by the format conversion device 410 will be described. FIG. 28 is a flow chart showing the procedure of format conversion processing by the format conversion device 410 shown in FIG.

図28に示すように、パケット入力部11が、パケットの入力を受け付けると(ステップS45)、プロトコルスタック判別部4151は、ミラー部412からミラーリングされたパケットに対し、判別木作成部4143が作成した判別木を基に、プロトコルスタックパターンを判別するプロトコルスタック判別処理を行う(ステップS46)。図28に示すステップS47,S48は、図7に示すステップS13,S14と同様の処理を行う。 As shown in FIG. 28, when the packet input unit 11 receives a packet input (step S45), the protocol stack determination unit 4151 creates the discrimination tree creation unit 4143 for the packet mirrored by the mirror unit 412. Protocol stack discrimination processing for discriminating the protocol stack pattern is performed based on the discrimination tree (step S46). Steps S47 and S48 shown in FIG. 28 perform the same processes as steps S13 and S14 shown in FIG.

[実施の形態4の効果]
このように、実施の形態4に係るフォーマット変換装置は、自装置においてパケットを学習することによって判別ルールを作成し、パケットのプロトコルスタックパターンを判別する。このため、実施の形態4によれば、実施の形態1と同様の効果を奏するとともに、判別ルールの作成、パケットのプロトコルスタックパターン及びパケットのフォーマット変換処理の一連の処理を自装置で完結することができるという効果を奏する。
[Effects of Embodiment 4]
As described above, the format conversion apparatus according to the fourth embodiment creates a discrimination rule by learning the packet in the apparatus itself, and discriminates the protocol stack pattern of the packet. Therefore, according to the fourth embodiment, the same effect as that of the first embodiment is obtained, and a series of processes of creating a discrimination rule, a packet protocol stack pattern, and a packet format conversion process is completed by the device itself. There is an effect that can be.

[実施の形態5]
次に、実施の形態5について説明する。実施の形態5では、判別ルールとして判別論理式を作成する。
[Fifth Embodiment]
Next, a fifth embodiment will be described. In the fifth embodiment, a discriminant logical expression is created as a discriminant rule.

図29は、実施の形態5に係るフォーマット変換装置の構成の一例を示す図である。図29に示すように、実施の形態5に係るフォーマット変換装置510は、図20に示すフォーマット変換装置410と比して、学習部414に代えて学習部514を有し、フォーマット変換部415に代えてフォーマット変換部515を有する。 FIG. 29 is a diagram showing an example of the configuration of the format conversion device according to the fifth embodiment. As shown in FIG. 29, the format conversion device 510 according to the fifth embodiment has a learning unit 514 instead of the learning unit 414 as compared with the format conversion device 410 shown in FIG. Instead, it has a format conversion unit 515.

学習部514は、入力されたパケットに対しプロトコルconfigファイルを用いて学習することによって、判別ルールを作成し、作成した判定ルールをフォーマット変換部515に出力する。学習部514は、判別ルールとして、パケット内の特定bit列を基にプロトコルスタックパターンを判別する判別論理式を作成する。学習部514は、プロトコルスタック解析部5141、パターン格納部5142、判別論理式作成部5143及びパターンDB5144を有する。なお、学習部514は、各種のプロトコルスタックパターンのパケットを判別できるように、複数の判別論理式を作成する。 The learning unit 514 creates a determination rule by learning the input packet using the protocol config file, and outputs the created determination rule to the format conversion unit 515. The learning unit 514 creates, as a discrimination rule, a discrimination logical expression for discriminating the protocol stack pattern based on a specific bit string in the packet. The learning unit 514 includes a protocol stack analysis unit 5141, a pattern storage unit 5142, a discriminant logic formula creation unit 5143, and a pattern DB 5144. Note that the learning unit 514 creates a plurality of discriminant logical expressions so that packets of various protocol stack patterns can be discriminated.

プロトコルスタック解析部5141は、プロトコルconfigファイルを用いて、入力された各パケットを下位ヘッダから順次解析して、それぞれのプロトコルスタックパターンを特定する。 The protocol stack analysis unit 5141 sequentially analyzes each input packet from the lower header using the protocol config file, and specifies each protocol stack pattern.

パターン格納部5142は、入力されたパケットのプロトコルスタックパターンを、判別論理式作成部5143に出力するとともに、パターンDB5144に格納する。 The pattern storage unit 5142 outputs the protocol stack pattern of the input packet to the discriminant logic equation creating unit 5143 and stores it in the pattern DB 5144.

判別論理式作成部5143は、入力されたパケットのプロトコルスタックパターンを基に、プロトコルスタックパターンを判別する判別論理式を作成する。判別論理式作成部5143は、パケット内の特定bit列を基にプロトコルスタックパターンを判別する判別論理式を作成する。 The discriminant-logic-formula creating unit 5143 creates a discriminant-logic-formula for discriminating the protocol stack pattern based on the protocol stack pattern of the input packet. The discriminant formula creating unit 5143 creates a discriminant formula for discriminating the protocol stack pattern based on the specific bit string in the packet.

パターンDB5144は、学習部514が学習したパケットのプロトコルスタックパターンを記憶する。パターンDB5144が記憶するプロトコルスタックパターンは、パターン格納部5142によって更新される。 The pattern DB 5144 stores the protocol stack pattern of the packet learned by the learning unit 514. The protocol stack pattern stored in the pattern DB 5144 is updated by the pattern storage unit 5142.

フォーマット変換部515は、学習部514が作成した判別論理式を用いて、パケットのプロトコルパターンを判別し、フォーマット変換を行う。フォーマット変換部515は、プロトコルスタック判別部5151及びパケットフォーマット変換部13を有する。 The format conversion unit 515 uses the discriminant logic formula created by the learning unit 514 to determine the protocol pattern of the packet and perform format conversion. The format conversion unit 515 has a protocol stack determination unit 5151 and a packet format conversion unit 13.

プロトコルスタック判別部5151は、学習部514が作成した判別論理式を用いて、入力されたパケットのプロトコルスタックパターンを判別する。そして、プロトコルスタック判別部5151は、この判別論理式を用いて、入力されたパケットから除外するプロトコルヘッダ箇所も判別する。 The protocol stack discriminating unit 5151 discriminates the protocol stack pattern of the input packet by using the discriminant logic formula created by the learning unit 514. Then, the protocol stack discriminating unit 5151 also discriminates the protocol header part to be excluded from the input packet by using this discriminant logical expression.

[学習部の処理の流れ]
次に、学習部514の処理の流れについて説明する。図30は、図29に示す学習部514の処理の流れを説明する図である。学習部514では、まず、プロトコルスタック解析部5141に、標準化された各プロトコルのヘッダ情報を示すプロトコルconfigファイルが事前に設定される。このプロトコルconfigファイルは、図15,16に例示したデータ構成を有し、事前に作成されたものである。
[Processing flow of learning unit]
Next, the processing flow of the learning unit 514 will be described. FIG. 30 is a diagram for explaining the flow of processing of the learning unit 514 shown in FIG. In the learning unit 514, first, a protocol config file indicating header information of each standardized protocol is set in the protocol stack analysis unit 5141 in advance. This protocol config file has the data structure illustrated in FIGS. 15 and 16 and is created in advance.

そして、図30に示すように、学習部514では、プロトコルスタック解析部5141が、プロトコルconfigファイルを参照し、キャプチャパケットの下位ヘッダから順次解析し、入力された各パケットのプロトコルスタックパターンを特定する(図30の(1)参照)。そして、プロトコルスタック解析部5141は、各パケットのプロトコルスタックパターンを出力する。パターン格納部5142は、入力されたパケットのプロトコルスタックパターンを、パターンDB5144に格納することでDB化を行う(図30の(2)参照)。 Then, as shown in FIG. 30, in the learning unit 514, the protocol stack analysis unit 5141 refers to the protocol config file, sequentially analyzes from the lower header of the capture packet, and specifies the protocol stack pattern of each input packet. (See (1) in FIG. 30). Then, the protocol stack analysis unit 5141 outputs the protocol stack pattern of each packet. The pattern storage unit 5142 stores the protocol stack pattern of the input packet in the pattern DB 5144 to create a DB (see (2) in FIG. 30).

続いて、判別論理式作成部5143は、入力されたパケットのプロトコルスタックパターンから、入力されたパケットを判別するために最適な判別論理式を作成する(図30の(3)参照)。そして、判別論理式作成部5143は、作成した判別論理式をプロトコルスタック判別部5151に出力する。この学習部514における学習処理は、フォーマット変換部515におけるフォーマット変換処理前に一定期間実行された後は、例えば、定期的に実行される。なお、学習処理では、ミラー部412からフォーマット変換部551にパケットが入力されないため、フォーマット変換部551によるフォーマット変換処理は実行されない。 Subsequently, the discriminant-logic-expression creating unit 5143 creates an optimum discriminant-logic-expression for distinguishing the input packet from the protocol stack pattern of the input packet (see (3) in FIG. 30). Then, the discriminant-logical-expression creating unit 5143 outputs the created discriminant-logical-expression to the protocol stack determining unit 5151. The learning process in the learning unit 514 is executed, for example, periodically after being executed for a certain period before the format conversion process in the format conversion unit 515. In the learning process, since no packet is input from the mirror unit 412 to the format conversion unit 551, the format conversion process by the format conversion unit 551 is not executed.

[フォーマット変換部の処理の流れ]
次に、フォーマット変換部515の処理の流れについて説明する。図31は、図29に示すフォーマット変換部515の処理の流れを説明する図である。
[Processing flow of format converter]
Next, the processing flow of the format conversion unit 515 will be described. FIG. 31 is a diagram illustrating a processing flow of the format conversion unit 515 illustrated in FIG. 29.

プロトコルスタック判別部5151には、学習部514が作成した判別論理式が事前に設定される。そして、図31に示すように、ミラー部412からパケットが入力されると、プロトコルスタック判別部5151は、入力されたパケットのプロトコルスタックパターンを、学習部514が作成した判別論理式を用いて判別する(図31の(1)参照)。この際、プロトコルスタック判別部5151は、判別結果として、到着したパケット自身に加え、このパケットのプロトコルスタックパターン、パケットのヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を出力する。 The discriminant logic formula created by the learning unit 514 is set in advance in the protocol stack discriminating unit 5151. Then, as shown in FIG. 31, when a packet is input from the mirror unit 412, the protocol stack determination unit 5151 determines the protocol stack pattern of the input packet using the determination logical expression created by the learning unit 514. (See (1) of FIG. 31). At this time, the protocol stack discrimination unit 5151 outputs the discrimination result, in addition to the arrived packet itself, the protocol stack pattern of this packet, the header strip location of the packet, and the protocol number specified in the converted Ethertype.

そして、パケットフォーマット変換部13は、プロトコルスタック判別部5151の判別結果を基に、フォーマット変換を実行する(図31の(2)参照)。そして、パケットフォーマット変換部13によるフォーマット変換後のパケットは、パケット出力部14から、解析装置20(不図示)に出力される。なお、フォーマット変換処理中も、学習部514は、キャプチャパケットを受け取り、プロトコルスタック解析及びプロトコルスタックパターンの格納を行い、データを蓄積している。 Then, the packet format conversion unit 13 executes the format conversion based on the determination result of the protocol stack determination unit 5151 (see (2) in FIG. 31). Then, the packet after the format conversion by the packet format conversion unit 13 is output from the packet output unit 14 to the analysis device 20 (not shown). Even during the format conversion process, the learning unit 514 receives the capture packet, analyzes the protocol stack, stores the protocol stack pattern, and accumulates the data.

[プロトコルスタック解析部の処理]
図32を参照し、プロトコルスタック解析部5141の処理について説明する。図32は、図29に示すプロトコルスタック解析部5141の処理を説明する図である。
[Processing of protocol stack analysis unit]
The processing of the protocol stack analysis unit 5141 will be described with reference to FIG. FIG. 32 is a diagram for explaining the process of the protocol stack analysis unit 5141 shown in FIG.

まず、図32に示すように、プロトコルスタック解析部5141には、事前に、予め作成されたプロトコルconfigファイル330が設定される(図32の(1)参照)。そして、プロトコルスタック解析部5141は、入力されたキャプチャパケットの下位ヘッダから捜査を開始し、プロトコルconfigファイル330を用いてプロトコルスタックパターンを特定する。プロトコルスタック解析部5141は、プロトコルスタックパターン情報、パケットのヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を解析して、送出する(図32の(2)参照)。 First, as shown in FIG. 32, a protocol config file 330 created in advance is set in the protocol stack analysis unit 5141 (see (1) in FIG. 32). Then, the protocol stack analysis unit 5141 starts the investigation from the lower header of the input capture packet, and specifies the protocol stack pattern using the protocol config file 330. The protocol stack analysis unit 5141 analyzes the protocol stack pattern information, the header strip location of the packet, and the protocol number specified in the converted Ethertype, and sends it out (see (2) in FIG. 32).

例えば、枠W51のパターン図G41に示す4つのパケットがキャプチャパケットとして入力された場合について説明する。この場合、プロトコルスタック解析部5141は、プロトコルスタック解析部4141と同様に、プロトコルconfigファイル330を用いて、入力された各キャプチャパケットの下位ヘッダから捜査を開始する。そして、プロトコルスタック解析部5141は、これらのパケットが、パターン「A」、パターン「B」、パターン「A」、パターン「C」であることを判別する。 For example, a case where four packets shown in the pattern diagram G41 of the frame W51 are input as capture packets will be described. In this case, the protocol stack analysis unit 5141 uses the protocol config file 330 similarly to the protocol stack analysis unit 4141 to start the search from the lower header of each input capture packet. Then, the protocol stack analysis unit 5141 determines that these packets are the pattern “A”, the pattern “B”, the pattern “A”, and the pattern “C”.

続いて、プロトコルスタック解析部5141は、プロトコルスタック解析部4141と同様に、各パケットにおけるパターンA〜Cについて、上位ヘッダを特定する情報のbyte位置及び値を取得する。例えば、プロトコルスタック解析部5141は、グラフG42に示すように、例えばパターンAについては、上位ヘッダを特定する各情報として[(a,1010),(b,1111),(d,0101)])を取得し、各プロトコルスタックパターンに対応付けて出力する。 Subsequently, the protocol stack analysis unit 5141, similar to the protocol stack analysis unit 4141, acquires the byte position and the value of the information specifying the upper header for the patterns A to C in each packet. For example, as shown in the graph G42, the protocol stack analysis unit 5141, for example, for the pattern A, [(a,1010), (b,1111), (d,0101)]] as each piece of information identifying the upper header. Is acquired and is output in association with each protocol stack pattern.

[パターン分布格納部の処理]
次に、パターン格納部5142の処理について説明する。図33は、図29に示すパターン格納部5142の処理を説明する図である。
[Process of pattern distribution storage]
Next, the processing of the pattern storage unit 5142 will be described. FIG. 33 is a diagram for explaining the processing of the pattern storage unit 5142 shown in FIG.

図33に示すように、パターン格納部5142は、プロトコルスタック解析部5141から出力されたプロトコルスタックパターン情報を基に、パターンDB5144を更新する(図33の(1)参照)。例えば、枠W52のパターン一覧L51は、パターンDB5144が記憶する情報の一例である。パターン格納部5142は、パターン一覧L51のうち、プロトコルスタックパターン情報が入力されたパターンAについては、パターンAの上位ヘッダを特定する[(byte位置,値)]を[(a,1010),(b,1111),(d,0101)]に、ヘッダストリップ箇所を「a〜abyte」に、変換後Ethertypeに指定するプロトコル番号を「m」に更新する。 As shown in FIG. 33, the pattern storage unit 5142 updates the pattern DB 5144 based on the protocol stack pattern information output from the protocol stack analysis unit 5141 (see (1) in FIG. 33). For example, the pattern list L51 of the frame W52 is an example of information stored in the pattern DB 5144. Of the pattern list L51, the pattern storage unit 5142 specifies [(byte position, value)] for the pattern A for which the protocol stack pattern information has been input as [(byte position, value)] [(a, 1010), ( b, 1111), and updates (d, 0101) in, the header strip portion in "a 1 ~a 2 byte", the protocol number for specifying the converted Ethertype to "m".

このように、パターン格納部5142は、パケットごとに、パターンの識別情報、上位ヘッダを特定するbyte位置及び値、ヘッダストリップ箇所、及び、変換後Ethertypeに指定するプロトコル番号を対応付けて、パターンDB5144に格納する。また、パターン格納部5142は、パケットのプロトコルスタックパターン情報を判別論理式作成部5143に出力する。パターン格納部5142は、各パケットとともに、プロトコルスタックパターン、上位ヘッダを特定する情報の位置及び値、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を出力する。 In this way, the pattern storage unit 5142 associates, for each packet, the pattern identification information, the byte position and value that specify the upper header, the header strip location, and the protocol number specified in the converted Ethertype, and the pattern DB 5144 is associated with each other. To store. Also, the pattern storage unit 5142 outputs the protocol stack pattern information of the packet to the discriminant logic formula creation unit 5143. The pattern storage unit 5142 outputs, together with each packet, the protocol stack pattern, the position and value of information for specifying the upper header, the header strip location, and the protocol number specified for the converted Ethertype.

[判別論理式作成部の処理]
次に、判別論理式作成部5143の処理について説明する。図34は、図29に示す判別論理式作成部5143の処理を説明する図である。
[Processing of discriminant formula creation part]
Next, the processing of the discriminant logic formula creation unit 5143 will be described. FIG. 34 is a diagram for explaining the processing of the discriminant logic formula creation unit 5143 shown in FIG.

図34に示すように、判別論理式作成部5143は、パターン格納部1542によって出力された各パターンの上位ヘッダを特定する情報の位置及び値を基に、真理値表L1(枠W53参照)を作成する(図34の(1)参照)。 As illustrated in FIG. 34, the discriminant-logic-expression creating unit 5143 creates a truth value table L1 (see a frame W53) based on the position and the value of the information identifying the upper header of each pattern output by the pattern storage unit 1542. It is created (see (1) in FIG. 34).

判別論理式作成部5143は、真理値表L1の1行目に示すように、パターンAについては、inputを[(a,1010),(b,1111),(d,0101),(e,*/{1111}),(d,*/{1011})]に設定し、outputを(x,y,z)=(0,0,0)に設定する。同様に、判別論理式作成部5143は、真理値表L1の2行目に示すように、パターンBについては、inputを[(a,1010),(b,1111),(d,0101),(e,1111),(f,1011)]に設定し、outputを(x,y,z)=(0,0,1)に設定する。同様に、判別論理式作成部5143は、真理値表L1の3行目に示すように、パターンCについては、inputを[(a,1010),(b,1101), (c,1110)]に設定し、outputを(x,y,z)=(0,1,1)に設定する。 As shown in the first line of the truth table L1, the discriminant formula creating unit 5143 sets the input to [(a,1010), (b,1111), (d,0101), (e, for pattern A). */{1111}), (d,*/{1011})], and output is set to (x,y,z)=(0,0,0). Similarly, as shown in the second line of the truth table L1, the discriminant formula creating unit 5143 sets the input to [(a,1010), (b,1111), (d,0101), for the pattern B. (e,1111), (f,1011)] and output is set to (x,y,z) = (0,0,1). Similarly, for the pattern C, the discriminant formula creating unit 5143 sets the input to [(a,1010), (b,1101), (c,1110)] as shown in the third line of the truth table L1. And output is set to (x,y,z) = (0,1,1).

そして、判別論理式作成部5143は、真理値表L1を基に、Quine-McCluskey法等を使用して、プロトコルスタックパターン判別用の判別論理式230−1(図34の(2)参照)を作成する。この判別論理式230−1は、output(0,0,0),(0,0,1),(0,1,1)のそれぞれに、対応するパターンの種別、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号が対応付けられている。判別論理式作成部5143は、作成した判別論理式をフォーマット変換部515に出力する。 Then, the discriminant formula creating unit 5143 uses the Quine-McCluskey method based on the truth table L1 to determine the discriminant formula 230-1 for protocol stack pattern discrimination (see (2) in FIG. 34). create. This discriminant logic formula 230-1 is such that the output (0,0,0), (0,0,1) and (0,1,1) respectively correspond to the type of the pattern, the header strip location, and the converted Ethertype. Is associated with the protocol number specified in. The discriminant-logical-expression creating unit 5143 outputs the created discriminant-logical-expression to the format converting unit 515.

[プロトコルスタック判別部の処理]
次に、プロトコルスタック判別部5151の処理について説明する。図35は、図29に示すプロトコルスタック判別部5151の処理を説明する図である。
[Process of Protocol Stack Discrimination Unit]
Next, the processing of the protocol stack discriminating unit 5151 will be described. FIG. 35 is a diagram for explaining the processing of the protocol stack discrimination unit 5151 shown in FIG.

図35に示すように、プロトコルスタック判別部5151は、例えば、判別論理式作成部5143が作成した判別論理式230−1を事前設定される(図35の(1)参照)。プロトコルスタック判別部5151は、この判別論理式230−1を用いて、パケットのプロトコルスタックパターンを判別する(図35の(2)参照)。具体的には、プロトコルスタック判別部5151は、(a,b,c,d,e,f)に対応するbit列を抽出し、抽出した(a,b,c,d,e,f)を判別論理式230−1に入力する。そして、プロトコルスタック判別部5151は、判別論理式230−1のoutputに対応するパケットのパターンの種別、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を、パケットとともに出力する。 As shown in FIG. 35, the protocol stack discriminating unit 5151 is preset with, for example, the discriminant logic formula 230-1 created by the discriminant logic formula creating unit 5143 (see (1) in FIG. 35). The protocol stack discriminating unit 5151 discriminates the protocol stack pattern of the packet by using the discriminant logical expression 230-1 (see (2) in FIG. 35). Specifically, the protocol stack determination unit 5151 extracts the bit string corresponding to (a,b,c,d,e,f) and extracts the extracted (a,b,c,d,e,f). Input to the discriminant logic formula 230-1. Then, the protocol stack discriminating unit 5151 outputs the type of the pattern of the packet corresponding to the output of the discrimination logical expression 230-1, the header strip location, and the protocol number specified in the converted Ethertype together with the packet.

[学習処理の手順]
次に、フォーマット変換装置510による学習処理の処理手順について説明する。図36は、図29に示すフォーマット変換装置510による学習処理の手順を示すフローチャートである。
[Learning procedure]
Next, the processing procedure of the learning processing by the format conversion device 510 will be described. FIG. 36 is a flowchart showing the procedure of learning processing by the format conversion device 510 shown in FIG.

図36に示すように、まず、学習部514では、キャプチャパケットが入力されると、プロトコルスタック解析部5141が、プロトコルconfigファイルを用いて、入力された各パケットを下位ヘッダから順次解析して、それぞれのプロトコルスタックパターンを特定するプロトコルスタック解析処理を行う(ステップS51)。そして、パターン格納部5142は、入力されたパケットのプロトコルスタックパターンを、判別論理式作成部5143に出力するとともに、パターンDB5144に格納するパターン格納処理を行う(ステップS52)。 As shown in FIG. 36, first, in the learning unit 514, when a capture packet is input, the protocol stack analysis unit 5141 sequentially analyzes each input packet from the lower header by using the protocol config file, Protocol stack analysis processing for identifying each protocol stack pattern is performed (step S51). Then, the pattern storage unit 5142 outputs the protocol stack pattern of the input packet to the discriminant logic formula creation unit 5143 and also performs the pattern storage process of storing it in the pattern DB 5144 (step S52).

続いて、判別論理式作成部5143は、入力されたパケットのプロトコルスタックパターンを基に、プロトコルスタックパターンを判別する判別論理式を作成する判別論理式作成処理を行う(ステップS53)。判別論理式作成部4143は、作成した判別論理式をプロトコルスタック判別部5151に出力する(ステップS44)。 Subsequently, the discriminant-logical-expression creating unit 5143 performs a discriminant-logical-expression creating process for creating a discriminant-logical-expression for determining the protocol stack pattern based on the protocol stack pattern of the input packet (step S53). The discriminant formula creating unit 4143 outputs the created discriminant formula to the protocol stack discriminating unit 5151 (step S44).

[フォーマット変換処理の処理手順]
次に、フォーマット変換装置510によるフォーマット変換処理の手順について説明する。図37は、図29に示すフォーマット変換装置510によるフォーマット変換処理の手順を示すフローチャートである。
[Processing procedure of format conversion processing]
Next, a procedure of format conversion processing by the format conversion device 510 will be described. FIG. 37 is a flowchart showing the procedure of the format conversion processing by the format conversion device 510 shown in FIG.

図37に示すステップS55は、図28に示すステップS45と同様の処理である。プロトコルスタック判別部5151は、ミラー部412からミラーリングされたパケットに対し、判別論理式作成部5143が作成した判別論理式を基に、プロトコルスタックパターンを判別するプロトコルスタック判別処理を行う(ステップS56)。図37に示すステップS57,S58は、図7に示すステップS13,S14と同様の処理を行う。 Step S55 shown in FIG. 37 is the same process as step S45 shown in FIG. The protocol stack discriminating unit 5151 performs the protocol stack discriminating process for discriminating the protocol stack pattern on the packet mirrored by the mirror unit 412 based on the discriminant logical formula created by the discriminant logical formula creating unit 5143 (step S56). .. Steps S57 and S58 shown in FIG. 37 perform the same processes as steps S13 and S14 shown in FIG.

[実施の形態5の効果]
このように、実施の形態5に係るフォーマット変換装置は、自装置においてパケットを学習することによって判別論理式を作成し、パケットのプロトコルスタックパターンを判別するため、実施の形態4と同様の効果を奏する。
[Effects of Embodiment 5]
As described above, the format conversion device according to the fifth embodiment creates a discriminant logical expression by learning the packet in its own device and discriminates the protocol stack pattern of the packet. Therefore, the same effect as that of the fourth embodiment is obtained. Play.

[実施の形態6]
次に、実施の形態6について説明する。実施の形態6では、フォーマット変換処理において、学習前のパケットが入力された場合に、プロトコルconfigファイルを用いて該パケットの下位ヘッダから順次捜査してプロトコルスタックパターンを判別する。
[Sixth Embodiment]
Next, a sixth embodiment will be described. In the sixth embodiment, when a packet before learning is input in the format conversion process, the protocol config file is used to sequentially search from the lower header of the packet to determine the protocol stack pattern.

図38は、実施の形態6に係るフォーマット変換装置の構成の一例を示す図である。図38に示すように、実施の形態6に係るフォーマット変換装置610は、図29に示すフォーマット変換装置510と比して、フォーマット変換部515に代えてフォーマット変換部615を有する。フォーマット変換部615は、プロトコルスタック判別部5151(第1のプロトコルスタック判別部)、プロトコルスタック判別部6151(第2のプロトコルスタック判別部)及びパケットフォーマット変換部13を有する。 FIG. 38 is a diagram showing an example of the configuration of the format conversion device according to the sixth embodiment. As shown in FIG. 38, the format converting apparatus 610 according to the sixth embodiment has a format converting section 615 instead of the format converting section 515 as compared with the format converting apparatus 510 shown in FIG. The format conversion unit 615 has a protocol stack determination unit 5151 (first protocol stack determination unit), a protocol stack determination unit 6151 (second protocol stack determination unit), and a packet format conversion unit 13.

プロトコルスタック判別部6151は、予め作成されたプロトコルconfigファイルが事前に設定されている。プロトコルスタック判別部6151は、学習前のパケットが入力された場合に、プロトコルconfigファイルを用いて該パケットの下位ヘッダから順次捜査してプロトコルスタックパターンを判別する。言い換えると、プロトコルスタック判別部6151は、プロトコルスタック判別部5151では判別が不可能なパケットについては、プロトコルconfigファイルを用いてプロトコルスタックパターンを判別する。 The protocol stack discriminating unit 6151 has a protocol config file created in advance set therein. When a packet before learning is input, the protocol stack discriminating unit 6151 discriminates the protocol stack pattern by sequentially searching from the lower header of the packet using the protocol config file. In other words, the protocol stack discriminating unit 6151 discriminates the protocol stack pattern by using the protocol config file for the packet which cannot be discriminated by the protocol stack discriminating unit 5151.

[フォーマット変換部の処理の流れ]
次に、フォーマット変換部615の処理の流れについて説明する。図39は、図38に示すフォーマット変換部615の処理の流れを説明する図である。
[Processing flow of format converter]
Next, a processing flow of the format conversion unit 615 will be described. FIG. 39 is a diagram for explaining the flow of processing of the format conversion unit 615 shown in FIG.

プロトコルスタック判別部5151には、学習部514が作成した判別論理式が事前に設定される。そして、図39に示すように、ミラー部412からパケットが入力されると、プロトコルスタック判別部5151は、入力されたパケットのプロトコルスタックパターンに対し、学習部514が作成した判別論理式を用いたプロトコル判別処理を行う(図39の(1)参照)。 The discriminant logic formula created by the learning unit 514 is set in advance in the protocol stack discriminating unit 5151. Then, as shown in FIG. 39, when a packet is input from the mirror unit 412, the protocol stack determination unit 5151 uses the determination logical expression created by the learning unit 514 for the protocol stack pattern of the input packet. Protocol discrimination processing is performed (see (1) in FIG. 39).

ただし、プロトコルスタック判別部5151による判別ビット決打型(判別論理式を用いた判別手法)では判別が不可能なパケットは、プロトコルスタック判別部6151による下位ヘッダ捜査型(プロトコルconfigファイルを用いた判別手法)で判別を実行する(図39の(2))。言い換えると、学習前のパケットがフォーマット変換部615に入力された場合、プロトコルスタック判別部6151は、プロトコルconfigファイルを用いたプロトコルスタックパターンの判別を行う(図39の(3)参照)。 However, for a packet that cannot be discriminated by the discriminant bit decision type (discrimination method using the discriminant logical expression) by the protocol stack discriminating unit 5151, the lower layer header investigation type by the protocol stack discriminating unit 6151 (discrimination using the protocol config file). (2) in FIG. 39). In other words, when the packet before learning is input to the format conversion unit 615, the protocol stack determination unit 6151 determines the protocol stack pattern using the protocol config file (see (3) in FIG. 39).

フォーマット変換部615では、プロトコルスタック判別部5151またはプロトコルスタック判別部6151が、判別結果として、到着したパケット自身に加え、このパケットプロトコルスタックパターン、ヘッダストリップ箇所、変換後Ethertypeに指定するプロトコル番号を出力する。パケットフォーマット変換部13は、プロトコルスタック判別部5151またはプロトコルスタック判別部6151の判別結果を基に、フォーマット変換を実行する(図39の(4)参照)。そして、パケットフォーマット変換部13によるフォーマット変換後のパケットは、パケット出力部14から、解析装置20(不図示)に出力される。 In the format conversion unit 615, the protocol stack discriminating unit 5151 or the protocol stack discriminating unit 6151 outputs, as a discrimination result, in addition to the arriving packet itself, the packet protocol stack pattern, the header strip location, and the protocol number specified in the converted Ethertype. To do. The packet format conversion unit 13 executes the format conversion based on the determination result of the protocol stack determination unit 5151 or the protocol stack determination unit 6151 (see (4) in FIG. 39). Then, the packet after the format conversion by the packet format conversion unit 13 is output from the packet output unit 14 to the analysis device 20 (not shown).

なお、フォーマット変換処理中も、学習部514は、キャプチャパケットを受け取り、プロトコルスタック解析及びプロトコルスタックパターンの格納を行い、データを蓄積している。 Even during the format conversion process, the learning unit 514 receives the capture packet, analyzes the protocol stack, stores the protocol stack pattern, and accumulates the data.

[フォーマット変換処理の処理手順]
次に、フォーマット変換装置610によるフォーマット変換処理の手順について説明する。図40は、図38に示すフォーマット変換装置610によるフォーマット変換処理の手順を示すフローチャートである。
[Processing procedure of format conversion processing]
Next, a procedure of format conversion processing by the format conversion device 610 will be described. FIG. 40 is a flowchart showing the procedure of the format conversion processing by the format conversion device 610 shown in FIG.

図40に示すステップS61は、図28に示すステップS45と同様の処理である。プロトコルスタック判別部5151は、ミラー部412からミラーリングされたパケットに対し、判別論理式作成部5143が作成した判別論理式を基に、プロトコルスタックパターンを判別する第1プロトコルスタック判別処理を行う(ステップS62)。 Step S61 shown in FIG. 40 is the same process as step S45 shown in FIG. The protocol stack discriminating unit 5151 performs a first protocol stack discriminating process for discriminating a protocol stack pattern on the packet mirrored by the mirror unit 412 based on the discriminant formula created by the discriminant formula creating unit 5143 (step S62).

そして、プロトコルスタック判別部5151は、第1プロトコルスタック判別処理においてパケットのプロトコルスタックパターンが判別可能であるか否かを判定する(ステップS63)。 Then, the protocol stack discriminating unit 5151 determines whether or not the protocol stack pattern of the packet can be discriminated in the first protocol stack discriminating process (step S63).

プロトコルスタック判別部5151が、第1プロトコルスタック判別処理においてパケットのプロトコルスタックパターンが判別可能でないと判定した場合(ステップS63:No)、このパケットをプロトコルスタック判別部6151に出力する。そして、プロトコルスタック判別部6151は、プロトコルconfigファイルを用いて該パケットの下位ヘッダから順次捜査してプロトコルスタックパターンを判別する第2プロトコルスタック判別処理を行う(ステップS64)。 When the protocol stack determination unit 5151 determines that the protocol stack pattern of the packet cannot be determined in the first protocol stack determination process (step S63: No), this packet is output to the protocol stack determination unit 6151. Then, the protocol stack discriminating unit 6151 performs the second protocol stack discriminating process for discriminating the protocol stack pattern by sequentially searching from the lower header of the packet using the protocol config file (step S64).

続いて、プロトコルスタック判別部5151が、第1プロトコルスタック判別処理においてパケットのプロトコルスタックパターンが判別可能であると判定した場合(ステップS63:Yes)、または、第2プロトコルスタック判別処理(ステップS64)終了後、ステップS65に進む。図40に示すステップS65,S66は、図7に示すステップS13,S14と同様の処理を行う。 Then, when the protocol stack determination unit 5151 determines that the protocol stack pattern of the packet can be determined in the first protocol stack determination process (step S63: Yes), or the second protocol stack determination process (step S64). After the end, the process proceeds to step S65. Steps S65 and S66 shown in FIG. 40 perform the same processes as steps S13 and S14 shown in FIG.

[実施の形態6の効果]
このように、実施の形態6に係るフォーマット変換装置は、自装置において作成した判別論理式でプロトコルスタックパターンを判別できないパケットについては、プロトコルconfigファイルを用いて、該パケットの下位ヘッダから順次捜査してプロトコルスタックパターンを判別する。したがって、実施の形態6によれば、2段階でパケットのプロトコルスタックパターンを判別するため、パケットのプロトコルスタックパターンの判別をさらに高速かつ確実に実行することが可能になる。
[Effects of Embodiment 6]
In this way, the format conversion device according to the sixth embodiment sequentially searches the packets from the lower header of the packet using the protocol config file for the packet whose protocol stack pattern cannot be discriminated by the discriminant formula created in the device itself. Determine the protocol stack pattern. Therefore, according to the sixth embodiment, the protocol stack pattern of the packet is discriminated in two stages, so that the protocol stack pattern of the packet can be discriminated at higher speed and more reliably.

[実施の形態7]
次に、実施の形態7について説明する。図41は、実施の形態7に係るフォーマット変換装置の構成の一例を示す図である。例えば、図41に示すように、フォーマット変換装置710は、図1に示すフォーマット変換装置10と比して、対応付部716をさらに有する。
[Embodiment 7]
Next, a seventh embodiment will be described. FIG. 41 is a diagram showing an example of the configuration of the format conversion device according to the seventh embodiment. For example, as illustrated in FIG. 41, the format conversion device 710 further includes a correspondence unit 716 as compared with the format conversion device 10 illustrated in FIG.

対応付部716は、パケットにおける各プロトコルヘッダのテキスト情報を、該パケットのプロトコルヘッダの配置情報に対応付けて記憶するDBを有する。そして、対応付部716は、任意のプロトコルヘッダ情報を照合情報とし、プロトコルヘッダを含むパケットのプロトコルヘッダの配置情報を検索可能としている。 The associating unit 716 has a DB that stores the text information of each protocol header in the packet in association with the placement information of the protocol header of the packet. Then, the associating unit 716 uses the arbitrary protocol header information as the collation information, and can search the arrangement information of the protocol header of the packet including the protocol header.

[対応付部の構成]
図42は、図41に示す対応付部716の構成の一例を示す図である。図42に示すように、対応付部716は、パケットデコード部7161、パース部7162、格納部7163、DB7164及び検索部7165を有する。
[Structure of corresponding part]
42 is a diagram showing an example of the configuration of the associating unit 716 shown in FIG. As shown in FIG. 42, the associating unit 716 includes a packet decoding unit 7161, a parsing unit 7162, a storage unit 7163, a DB 7164, and a searching unit 7165.

パケットデコード部7161は、パケット入力部11が入力を受け付けたパケットを取得し、取得したパケットのデコードを行い、バイナリをテキスト変換する。パース部7162は、パケットデコード部7161が変換したパケットのテキスト情報を、プロトコルヘッダ毎にパースする。格納部7163は、パース済みのパケット情報をバッファリングし、定期的にDB7164に書き込む。 The packet decoding unit 7161 acquires the packet received by the packet input unit 11, decodes the acquired packet, and converts the binary into text. The parsing unit 7162 parses the text information of the packet converted by the packet decoding unit 7161 for each protocol header. The storage unit 7163 buffers the parsed packet information and periodically writes it in the DB 7164.

DB7164は、パース済みパケット情報を保持する。図43は、図42に示すDB7164が保持するデータの一例を示す図である。図43の表L71に示すように、DB7164は、入力されたパケットの、プロトコルヘッダ毎にパースされたテキスト情報を、プロトコルヘッダ毎に分けて保持する。例えば、表L71の1行目には、「青」、「緑」、「赤」、「橙」のテキスト情報を有する4個のプロトコルヘッダで構成されるパケットの情報が保持される。また、表L71の2行目には、「青」、「緑」、「赤」、「桃」、「黄」のテキスト情報を有する5個のプロトコルヘッダで構成されるパケットの情報が保持される。 The DB 7164 holds the parsed packet information. 43 is a diagram showing an example of data held by the DB 7164 shown in FIG. As shown in the table L71 of FIG. 43, the DB 7164 holds the text information of the input packet, which is parsed for each protocol header, for each protocol header. For example, the first row of the table L71 holds packet information composed of four protocol headers having text information of "blue", "green", "red", and "orange". The second line of table L71 holds packet information including five protocol headers having text information of "blue", "green", "red", "peach", and "yellow". It

検索部7165は、任意のプロトコルヘッダ情報を照合情報とし、DB7164から、このプロトコルヘッダを含むパケットのプロトコルヘッダの配置情報を検索する。検索部7165は、フォーマット変換装置710に接続するUI部(不図示)から、1個のプロトコルヘッダのテキスト情報が入力されると、BD7164に照合し、このプロトコルヘッダのテキスト情報を含むパケット全体の構成情報を検索する。 The search unit 7165 uses arbitrary protocol header information as collation information, and searches the DB 7164 for the placement information of the protocol header of the packet including this protocol header. When the text information of one protocol header is input from the UI unit (not shown) connected to the format conversion device 710, the search unit 7165 collates with the BD 7164 and detects the entire packet including the text information of this protocol header. Retrieve configuration information.

[対応付部の処理]
次に、対応付部716の処理の流れについて説明する。図44は、図42に示す対応付部716の処理の流れを説明する図である。
[Correspondence process]
Next, the processing flow of the associating unit 716 will be described. FIG. 44 is a diagram for explaining the flow of processing of the associating unit 716 shown in FIG.

図44に示すように、対応付部716にパケットが入力すると、まず、パケットデコード部7161がパケットのデコードを行い、バイナリをテキスト変換する(図44の(1)参照)。そして、パケットデコード部7161は、テキスト情報に変換されたパケット情報をパース部7162に出力する。 As shown in FIG. 44, when a packet is input to the associating unit 716, the packet decoding unit 7161 first decodes the packet to convert the binary into text (see (1) in FIG. 44). Then, the packet decoding unit 7161 outputs the packet information converted into the text information to the parsing unit 7162.

例えば、ヘッダH1〜H4を有するパケットCaがパケットデコード部7161に入力した場合を例に説明する。この場合、パケットデコード部7161は、このパケットCaのデコードを行い、各プロトコルヘッダH1〜H4を、テキスト「青緑赤橙」に変換し、パース部7162に出力する。テキスト「青」、「緑」、「赤」、「橙」は、それぞれプロトコルヘッダH1,H2,H3,H4に対応する。 For example, a case where a packet Ca having the headers H1 to H4 is input to the packet decoding unit 7161 will be described as an example. In this case, the packet decoding unit 7161 decodes the packet Ca, converts the protocol headers H1 to H4 into the text “blue green red orange”, and outputs the text to the parsing unit 7162. The texts “blue”, “green”, “red” and “orange” correspond to the protocol headers H1, H2, H3 and H4, respectively.

そして、パース部7162は、パケットのテキスト情報をヘッダ毎にパースする(図44の(2)参照)。パース部7162は、例えば、パケットデコード部7161から入力されたパケットCaのテキスト「青緑赤橙」を、プロトコルヘッダごとに、「青」、「緑」、「赤」、「橙」にパースし、このパース済みパケット情報(テキスト)を格納部7163に出力する。 Then, the parsing unit 7162 parses the text information of the packet for each header (see (2) in FIG. 44). The parsing unit 7162 parses the text “blue green red orange” of the packet Ca input from the packet decoding unit 7161 into “blue”, “green”, “red”, and “orange” for each protocol header. , And outputs the parsed packet information (text) to the storage unit 7163.

続いて、格納部7163は、パース済みパケット情報を定期的にDB7164に書き込む(図44の(3)参照)。これによって、DB7164は、パース済みパケット情報を保存する(図44の(4)参照)。例えば、格納部7163は、パース済みパケット情報として、「青」、「緑」、「赤」、「橙」が入力された場合には、「青」、「緑」、「赤」、「橙」のそれぞれを、この順序でDB7164に書き込む。この結果、図43の1行目に示すように、「青」、「緑」、「赤」、「橙」がこの順で登録される。したがって、テキスト情報「青」、「緑」、「赤」、「橙」の順でプロトコルヘッダが配置されたパケットが、フォーマット変換装置710に入力したことが登録される。 Subsequently, the storage unit 7163 periodically writes the parsed packet information in the DB 7164 (see (3) in FIG. 44). As a result, the DB 7164 stores the parsed packet information (see (4) in FIG. 44). For example, the storage unit 7163 stores “blue”, “green”, “red”, and “orange” when “blue”, “green”, “red”, and “orange” are input as the parsed packet information. Are written in the DB 7164 in this order. As a result, as shown in the first line of FIG. 43, “blue”, “green”, “red”, and “orange” are registered in this order. Therefore, it is registered that the packet in which the protocol headers are arranged in the order of the text information “blue”, “green”, “red”, “orange” is input to the format conversion device 710.

対応付部716は、このようなDB7164を構成することによって、検索部7165が、カプセルパケットの任意のプロトコルヘッダ情報をクエリとして検索をかけた場合には、このプロトコルヘッダを含むパケット全体のプロトコルヘッダの配置情報を応答することができる(図44の(5)参照)。この任意のプロトコルヘッダ情報には、インナーパケットも含む。例えば、検索部7165から、「橙」が検索クエリとして検索された場合には、DB7164から、図43の表L1のうち「橙」を含む「青」、「緑」、「赤」、「橙」のテキスト情報がレスポンスされる。 The associating unit 716 configures such a DB 7164 so that when the searching unit 7165 searches for arbitrary protocol header information of a capsule packet as a query, the protocol header of the entire packet including this protocol header It is possible to respond with the arrangement information (see (5) in FIG. 44). This arbitrary protocol header information also includes an inner packet. For example, when “orange” is searched as a search query from the search unit 7165, “blue”, “green”, “red”, “orange” including “orange” in the table L1 of FIG. 43 is searched from the DB 7164. Text information of "" is returned.

[対応付け部の処理手順]
図45は、図42に示す対応付部716による情報の対応付け処理の処理手順を示すフローチャートである。図45に示すように、パケットが入力されると(ステップS71)、パケットデコード部7161は、パケットのデコードを行い、バイナリをテキスト変換するパケットデコード処理を行う(ステップS72)。続いて、パース部7162は、パケットデコード部7161が変換したパケットのテキスト情報を、プロトコルヘッダ毎にパースするパース処理を行う(ステップS73)。そして、格納部7163は、パース済みのパケット情報をバッファリングし、定期的にDB7164に書き込む格納処理を行い(ステップS74)、処理を終了する。
[Processing procedure of associating unit]
FIG. 45 is a flowchart showing the processing procedure of the information associating processing by the associating unit 716 shown in FIG. As shown in FIG. 45, when a packet is input (step S71), the packet decoding unit 7161 performs packet decoding processing to perform binary text conversion (step S72). Subsequently, the parsing unit 7162 performs a parsing process of parsing the text information of the packet converted by the packet decoding unit 7161 for each protocol header (step S73). Then, the storage unit 7163 performs a storage process of buffering the parsed packet information and periodically writing it in the DB 7164 (step S74), and ends the process.

[実施の形態7の効果]
このように、実施の形態7は、パケットにおける各プロトコルヘッダのテキスト情報を、該パケットのプロトコルヘッダの配置情報に対応付けて記憶する。図46は、図42に示す対応付部716の対応付け機能を説明する図である。
[Effect of Embodiment 7]
As described above, the seventh embodiment stores the text information of each protocol header in a packet in association with the placement information of the protocol header of the packet. FIG. 46 is a diagram for explaining the associating function of the associating unit 716 shown in FIG.

例えば、ユーザは、解析装置20の検知結果(インナーパケットPaの情報)を、DB7164で検索した場合について説明する。この場合、図46に示すように、ユーザは、DB7164から、このインナーパケットPaを含むパケットC1全体のプロトコルヘッダの配置情報を取得することが可能になる(矢印Y72:正引き)。また、ユーザは、任意のプロトコルヘッダ、例えば、カプセルヘッダ(IPv4)を、DB7164で検索することによって、このカプセルヘッダ(IPv4)を含むパケットC1全体のプロトコルヘッダの配置情報を取得することが可能になる(矢印Y71:逆引き)。 For example, the case where the user searches the DB 7164 for the detection result of the analysis device 20 (information on the inner packet Pa) will be described. In this case, as shown in FIG. 46, the user can acquire the arrangement information of the protocol header of the entire packet C1 including the inner packet Pa from the DB 7164 (arrow Y72: forward lookup). Further, the user can obtain the arrangement information of the protocol header of the entire packet C1 including the capsule header (IPv4) by searching the DB 7164 for an arbitrary protocol header, for example, the capsule header (IPv4). (Arrow Y71: reverse lookup).

このように、実施の形態7によれば、ユーザは、任意のプロトコルヘッダ情報を照合情報として、プロトコルヘッダを含むパケットのプロトコルヘッダの配置情報を検索することができる。 As described above, according to the seventh embodiment, the user can search the placement information of the protocol header of the packet including the protocol header, using the arbitrary protocol header information as the matching information.

なお、実施の形態7では、フォーマット変換装置10に対応付部716をさらに追加した構成を例として説明したが、これに限らない。対応付部716は、フォーマット変換装置210,310,410,510,610に追加することも可能である。 In the seventh embodiment, the configuration in which the correspondence unit 716 is further added to the format conversion device 10 has been described as an example, but the configuration is not limited to this. The correspondence unit 716 can be added to the format conversion devices 210, 310, 410, 510, 610.

また、実施の形態1〜7では、解析装置20とフォーマット変換装置10,210,310,410,510,610,710とは別の装置である例について説明したが、解析装置20が、フォーマット変換装置10,210,310,410,510,610,710の機能を有していてもよい。 Further, in the first to seventh embodiments, the example in which the analysis device 20 and the format conversion devices 10, 210, 310, 410, 510, 610, 710 are different devices has been described, but the analysis device 20 performs the format conversion. It may have the functions of the devices 10, 210, 310, 410, 510, 610, 710.

[システム構成等]
図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[System configuration, etc.]
The respective constituent elements of the illustrated devices are functionally conceptual, and do not necessarily have to be physically configured as illustrated. That is, the specific form of distribution/integration of each device is not limited to the one shown in the figure, and all or part of the device may be functionally or physically distributed/arranged in arbitrary units according to various loads and usage conditions. It can be integrated and configured. Further, each processing function performed by each device may be realized in whole or in an arbitrary part by a CPU and a program analyzed and executed by the CPU, or may be realized as hardware by a wired logic.

また、本実施の形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的におこなうこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部又は一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。 Further, of the processes described in the present embodiment, all or part of the processes described as being automatically performed may be manually performed, or the processes described as being manually performed. Alternatively, all or part of the above can be automatically performed by a known method. In addition, the processing procedures, control procedures, specific names, and information including various data and parameters shown in the above-mentioned documents and drawings can be arbitrarily changed unless otherwise specified.

[プログラム]
図47は、プログラムが実行されることにより、フォーマット変換装置10,210,310,410,510,610,710が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
[program]
FIG. 47 is a diagram showing an example of a computer in which the format conversion devices 10, 210, 310, 410, 510, 610 and 710 are realized by executing a program. The computer 1000 has, for example, a memory 1010 and a CPU 1020. The computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These units are connected by a bus 1080.

メモリ1010は、ROM1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。 The memory 1010 includes a ROM 1011 and a RAM 1012. The ROM 1011 stores, for example, a boot program such as a BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to the hard disk drive 1090. The disk drive interface 1040 is connected to the disk drive 1100. For example, a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100. The serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120. The video adapter 1060 is connected to the display 1130, for example.

ハードディスクドライブ1090は、例えば、OS(Operating System)1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、フォーマット変換装置10,210,310,410,510,610,710の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、フォーマット変換装置10,210,310,410,510,610,710における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。 The hard disk drive 1090 stores, for example, an OS (Operating System) 1091, an application program 1092, a program module 1093, and program data 1094. That is, the program defining each process of the format conversion device 10, 210, 310, 410, 510, 610, 710 is implemented as a program module 1093 in which a code executable by a computer is described. The program module 1093 is stored in the hard disk drive 1090, for example. For example, the hard disk drive 1090 stores a program module 1093 for executing the same processing as the functional configuration of the format conversion device 10, 210, 310, 410, 510, 610, 710. The hard disk drive 1090 may be replaced with an SSD (Solid State Drive).

また、上述した実施の形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。 Further, the setting data used in the processing of the above-described embodiment is stored as the program data 1094 in, for example, the memory 1010 or the hard disk drive 1090. Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the memory 1010 or the hard disk drive 1090 into the RAM 1012 as necessary and executes them.

なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN、WAN等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。 The program module 1093 and the program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN, WAN, etc.). Then, the program module 1093 and the program data 1094 may be read by the CPU 1020 from another computer via the network interface 1070.

以上、本発明者によってなされた発明を適用した実施の形態について説明したが、本実施の形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれる。 The embodiments to which the invention made by the present inventor is applied have been described above, but the present invention is not limited to the description and the drawings, which form a part of the disclosure of the present invention according to the present embodiment. That is, all other embodiments, examples, operation techniques and the like made by those skilled in the art based on the present embodiment are included in the scope of the present invention.

1 通信システム
10,210,310,410,510,610,710 フォーマット変換装置
20 解析装置
11 パケット入力部
12,212,312,4151,5151,6151 プロトコルスタック判別部
13 パケットフォーマット変換部
14 パケット出力部
412 ミラー部
413 パケットキャプチャ部
414,514 学習部
415,515,615 フォーマット変換部
4141,5141 プロトコルスタック解析部
4142 パターン分布格納部
4143 判別木作成部
4144 パターン分布DB
5142 パターン格納部
5143 判別論理式作成部
5144 パターンDB
716 対応付部
7161 パケットデコード部
7162 パース部
7163 格納部
7164 DB
7165 検索部
N ネットワーク
1 Communication System 10, 210, 310, 410, 510, 610, 710 Format Conversion Device 20 Analysis Device 11 Packet Input Unit 12, 212, 312, 4151, 5151, 6151 Protocol Stack Discrimination Unit 13 Packet Format Conversion Unit 14 Packet Output Unit 412 Mirror unit 413 Packet capture unit 414, 514 Learning unit 415, 515, 615 Format conversion unit 4141, 5141 Protocol stack analysis unit 4142 Pattern distribution storage unit 4143 Discriminant tree creation unit 4144 Pattern distribution DB
5142 pattern storage unit 5143 discriminant formula creating unit 5144 pattern DB
716 Correspondence section 7161 Packet decoding section 7162 Parse section 7163 Storage section 7164 DB
7165 Search Department N Network

Claims (4)

パケットを解析する解析装置の前段に設けられたフォーマット変換装置であって、
トンネリングを行うためにEtherヘッダ以降に付加された任意のプロトコルヘッダがスタックされたパケットの入力を受け付ける入力部と、
標準化された各プロトコルのヘッダ情報を示すプロトコルconfigファイルを用いて、入力されたパケットの下位ヘッダから順次捜査してプロトコルスタックパターンを解析し、解析結果を基に、プロトコルスタックパターンを判別する判別木、または、パケット内の特定bit列に基づいてプロトコルスタックパターンを判別する判別論理式を判別ルールとして作成する判別ルールを作成する学習部と、
前記学習部によって作成された判別ルールにしたがって、入力されたパケットの各プロトコルヘッダの種別と配置とを示すプロトコルスタックパターンを判別する第1の判別部と、
前記第1の判別部によって判別されたプロトコルスタックパターンを基に、前記パケットのフォーマットを、前記解析装置の解析対象以外のプロトコルヘッダを除外したフォーマットに変換する変換部と、
前記変換部がフォーマットを変換したパケットを前記解析装置に出力する出力部と、
を有することを特徴とするフォーマット変換装置。
A format conversion device provided in front of an analysis device for analyzing packets,
An input unit that receives an input of a packet in which an arbitrary protocol header added after the Ether header for tunneling is stacked,
Using the protocol config file that shows the standardized header information of each protocol, the protocol stack pattern is analyzed by sequentially searching from the lower header of the input packet, and the discrimination tree that determines the protocol stack pattern based on the analysis result. , Or a learning unit that creates a discrimination rule that creates a discrimination logic expression that determines the protocol stack pattern based on a specific bit string in a packet as a discrimination rule,
A first discrimination unit that discriminates a protocol stack pattern indicating the type and arrangement of each protocol header of the input packet according to the discrimination rule created by the learning unit;
A conversion unit that converts the format of the packet into a format excluding protocol headers other than the analysis target of the analysis device, based on the protocol stack pattern determined by the first determination unit;
An output unit that outputs the packet, the format of which is converted by the conversion unit, to the analysis device,
A format conversion device comprising:
前記学習部による学習前のパケットが入力された場合に、前記プロトコルconfigファイルを用いて該パケットの下位ヘッダから順次解析してプロトコルスタックパターンを判別する第2の判別部をさらに有することを特徴とする請求項に記載のフォーマット変換装置。 When a packet before learning by the learning unit is input, a second discriminating unit for discriminating a protocol stack pattern by sequentially analyzing from the lower header of the packet using the protocol config file is further included. The format conversion device according to claim 1 . 前記入力部によって入力されたパケットにおける各プロトコルヘッダに対応するテキスト情報を、該パケットのプロトコルヘッダの配置情報に対応付けて記憶する記憶部と、
前記記憶部に対し、任意のプロトコルヘッダ情報を照合情報とし、前記プロトコルヘッダを含むパケットのプロトコルヘッダの配置情報を検索する検索部と、
をさらに有することを特徴とする請求項1または2に記載のフォーマット変換装置。
A storage unit that stores the text information corresponding to each protocol header in the packet input by the input unit in association with the placement information of the protocol header of the packet;
A search unit that searches the storage unit for the protocol header arrangement information of the packet including the protocol header, using arbitrary protocol header information as collation information,
Format conversion apparatus according to claim 1 or 2, characterized in that it further comprises a.
コンピュータを、請求項1〜のいずれか一つに記載のフォーマット変換装置として機能させるためのフォーマット変換プログラム。 Format conversion program for a computer to function as the format conversion apparatus according to any one of claims 1-3.
JP2017226004A 2017-11-24 2017-11-24 Format conversion device and format conversion program Active JP6734248B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017226004A JP6734248B2 (en) 2017-11-24 2017-11-24 Format conversion device and format conversion program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017226004A JP6734248B2 (en) 2017-11-24 2017-11-24 Format conversion device and format conversion program

Publications (2)

Publication Number Publication Date
JP2019097069A JP2019097069A (en) 2019-06-20
JP6734248B2 true JP6734248B2 (en) 2020-08-05

Family

ID=66972103

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017226004A Active JP6734248B2 (en) 2017-11-24 2017-11-24 Format conversion device and format conversion program

Country Status (1)

Country Link
JP (1) JP6734248B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7294764B2 (en) * 2019-12-05 2023-06-20 日本電信電話株式会社 Format conversion device, method and program
CN114793187B (en) * 2021-01-07 2024-03-01 大唐移动通信设备有限公司 L2TP message processing method, device and storage medium
JP7480907B2 (en) * 2021-02-16 2024-05-10 日本電信電話株式会社 CONVERSION DEVICE, CONVERSION METHOD, AND CONVERSION PROGRAM
WO2022176034A1 (en) * 2021-02-16 2022-08-25 日本電信電話株式会社 Conversion device, conversion method, and conversion program
WO2024038523A1 (en) * 2022-08-17 2024-02-22 日本電信電話株式会社 Conversion device, conversion method, and conversion program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895020B2 (en) * 2001-07-31 2005-05-17 Agilent Technologies, Inc. Method and apparatus for protocol pattern identification in protocol data units
JP3985944B2 (en) * 2001-11-22 2007-10-03 株式会社日立超エル・エス・アイ・システムズ Network device and program
KR20080057161A (en) * 2006-12-19 2008-06-24 주식회사 케이티프리텔 Intrusion protection device and intrusion protection method for point-to-point tunneling protocol
JP5839340B2 (en) * 2011-12-07 2016-01-06 日本電気株式会社 Packet communication system, quality evaluation method in packet communication, packet analysis apparatus, control method thereof and control program
JP2016086378A (en) * 2014-10-29 2016-05-19 三菱電機株式会社 Gateway device
JP6290849B2 (en) * 2015-11-27 2018-03-07 日本電信電話株式会社 Traffic analysis system and traffic analysis method
WO2018066228A1 (en) * 2016-10-06 2018-04-12 日本電信電話株式会社 Flow information analysis apparatus, flow information analysis method, and flow information analysis program

Also Published As

Publication number Publication date
JP2019097069A (en) 2019-06-20

Similar Documents

Publication Publication Date Title
JP6734248B2 (en) Format conversion device and format conversion program
CN104243315B (en) Device and method for uniquely enumerating the path in analytic tree
KR101244604B1 (en) Method and system for classifying data packets
US8577817B1 (en) System and method for using network application signatures based on term transition state machine
US7813350B2 (en) System and method to process data packets in a network using stateful decision trees
US9606781B2 (en) Parser engine programming tool for programmable network devices
JP4268337B2 (en) Router and method for optimal routing table compression
US6594655B2 (en) Wildcards in radix- search tree structures
US7602780B2 (en) Scalably detecting and blocking signatures at high speeds
US9143393B1 (en) System, method and apparatus for classifying digital data
Meiners et al. Split: Optimizing space, power, and throughput for TCAM-based classification
US10601851B2 (en) Detecting cyber-attacks with sonification
WO2020228527A1 (en) Data stream classification method and message forwarding device
CN110008385B (en) Quick matching identification method and device based on character strings
CN104283786B (en) System and method for the scalability for increasing software defined network
CN107404459B (en) Method for acquiring fingerprint characteristics of network attack message and network equipment
CN111046938B (en) Network traffic classification and identification method and equipment based on character string multi-mode matching
CN105491094A (en) HTTP request handling method and device
CN112054992B (en) Malicious traffic identification method and device, electronic equipment and storage medium
Maudoux et al. Combined Forest: A New Supervised Approach for a Machine-Learning-based Botnets Detection
US11968286B2 (en) Packet filtering using binary search trees
CN104954415A (en) Method and apparatus for carrying out processing on HTTP request
KR100662254B1 (en) Apparatus and Method for Packet Classification in Router
CN115190056A (en) Method, device and equipment for identifying and analyzing programmable traffic protocol
JP4726310B2 (en) Information retrieval apparatus, information retrieval multiprocessor and router

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200317

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200514

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200709

R150 Certificate of patent or registration of utility model

Ref document number: 6734248

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150