JP7326930B2 - SEARCH PROGRAM, SEARCH METHOD, AND INFORMATION PROCESSING DEVICE - Google Patents

SEARCH PROGRAM, SEARCH METHOD, AND INFORMATION PROCESSING DEVICE Download PDF

Info

Publication number
JP7326930B2
JP7326930B2 JP2019122728A JP2019122728A JP7326930B2 JP 7326930 B2 JP7326930 B2 JP 7326930B2 JP 2019122728 A JP2019122728 A JP 2019122728A JP 2019122728 A JP2019122728 A JP 2019122728A JP 7326930 B2 JP7326930 B2 JP 7326930B2
Authority
JP
Japan
Prior art keywords
rule
rules
relationship
derived
additional
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
JP2019122728A
Other languages
Japanese (ja)
Other versions
JP2021010098A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2019122728A priority Critical patent/JP7326930B2/en
Publication of JP2021010098A publication Critical patent/JP2021010098A/en
Application granted granted Critical
Publication of JP7326930B2 publication Critical patent/JP7326930B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、探索プログラム、探索方法、および、情報処理装置に関する。 The present invention relates to a search program, search method, and information processing apparatus.

近年、インターネットやSNS(Social Networking Service)の普及により情報の入手や発信が手軽になったため、特定の商品に対するニーズが突然高まるなどの、人々のニーズの変動が起こりやすくなっている。そこで、デジタルサービスを提供する企業は、変動しやすいニーズに対応して利益を確保するために迅速にサービスを開始することが望ましい場合がある。サービスの開始がネットワークの設定変更を伴うこともあるので、迅速にサービスを開始するためには、ネットワークの設定変更が容易であることが望ましい。そこで、ネットワークサービスの設定変更を容易にするために、ソフトウェア定義型ネットワーク(Software Defined Networking、SDN)やネットワーク機能仮想化(Network Functions Virtualization、NFV)などの技術が使用されることがある。SDNやNFVを用いて構築されたシステムでは、パケットの処理ルールを設定することにより、新規パスの設定などの設定変更が行われ得る。処理ルールの追加設定などによりネットワークの設定変更を行う場合、設定変更に起因する不具合がネットワークに発生していないことを検証する。しかし、検証作業の際には、既にネットワークに設定されている全てのルールと新たに追加設定したルールとの間で矛盾が生じていないことを検証するので、煩雑であり時間もかかる。 In recent years, the widespread use of the Internet and SNSs (Social Networking Services) has made it easier to obtain and transmit information, making it easier for people's needs to fluctuate, such as sudden increases in needs for specific products. Therefore, it may be desirable for companies that provide digital services to start services quickly in order to meet fluctuating needs and secure profits. Since starting a service may involve changing network settings, it is desirable to be able to easily change network settings in order to start services quickly. Therefore, techniques such as Software Defined Networking (SDN) and Network Functions Virtualization (NFV) are sometimes used to facilitate setting changes of network services. In a system built using SDN or NFV, settings such as new path settings can be changed by setting packet processing rules. When changing network settings by adding processing rules, etc., verify that no problems have occurred in the network due to the setting changes. However, the verification work is complicated and time consuming because it verifies that there is no contradiction between all the rules already set in the network and the newly added rules.

そこで、検証処理を効率化するために、処理ルールのブール結合を個々の処理ルールとは別の転送動作表現とするネットワーク検証技術(Delta-net)が提案されている(特許文献1など)。 Therefore, in order to improve the efficiency of verification processing, a network verification technique (Delta-net) has been proposed in which the Boolean combination of processing rules is used as a different transfer operation expression than individual processing rules (Patent Document 1, etc.).

関連する技術として、複数の検索条件に合致するレコード系列を抽出する際に、特定の項目の各項目値にフラグを付与し、処理にかかるレコードについて特定したフラグの出現態様が検索指示に従っているかを判定する方法も知られている(特許文献2など)。 As a related technology, when extracting a series of records that match multiple search conditions, flags are attached to each item value of a specific item, and whether the appearance of the flag specified for the record to be processed complies with the search instruction. A determination method is also known (Patent Document 2, etc.).

特開2018-46549号公報JP 2018-46549 A 特開2007-323546号公報JP 2007-323546 A

処理ルールのブール結合を別個の転送動作表現として記載することにより、追加設定される処理ルールと適用範囲が重複する処理ルールの適用範囲のパケットのうち、追加設定される処理ルール自体は適用されないパケットを、検証処理の対象から除外できる。しかし、ネットワークに設定される処理ルールの数が増加するに従って、設定済みの処理ルールの各々と追加設定される処理ルールとの間での適用範囲の包含関係を探索するための計算量が膨大になるため、包含関係の探索に時間がかかってしまう。その結果、ネットワークの検証処理にも、時間がかかってしまう。また、関連する技術として述べた技術を用いても、この問題は解決されない。 By describing the Boolean combination of processing rules as a separate transfer operation expression, among the packets in the scope of application of the processing rule that overlaps with the additionally set processing rule, the additionally set processing rule itself is not applied. can be excluded from verification processing. However, as the number of processing rules set in the network increases, the amount of calculation required to search for the coverage inclusion relationship between each of the set processing rules and the additionally set processing rules becomes enormous. As a result, it takes time to search for inclusion relationships. As a result, network verification processing also takes time. Moreover, even if the technology described as the related technology is used, this problem is not solved.

本発明は、1つの側面として、ネットワークの検証処理を効率化することを目的とする。 An object of the present invention, as one aspect, is to improve the efficiency of network verification processing.

ある1つの態様にかかる探索プログラムは、情報処理装置で実行される。情報処理装置は、パケットの処理を定義するためにネットワークに設定された複数のルールのうちで、前記ネットワークに追加する追加ルールの適用対象となる対象パケットの1つ以上に適用可能な関係ルールを特定する。情報処理装置は、前記関係ルールの各々について、当該関係ルールと前記追加ルールとの間の包含関係を決定する。情報処理装置は、前記関係ルールを少なくとも1つ含む、前記複数のルールのうちの2つ以上のルールの組み合わせの各々について、当該組み合わせと前記追加ルールとの間の包含関係を決定する。情報処理装置は、前記関係ルールおよび前記組み合わせについて決定された包含関係を用いて、前記対象パケットおよび前記複数のルールの各々の間での包含関係を探索する。 A search program according to one aspect is executed by an information processing device. The information processing device selects relational rules applicable to one or more target packets to which additional rules to be added to the network are applied, among a plurality of rules set in the network for defining packet processing. Identify. The information processing device determines, for each of the relationship rules, an inclusion relationship between the relationship rule and the additional rule . The information processing device determines, for each combination of two or more rules among the plurality of rules including at least one of the relational rules, an inclusion relationship between the combination and the additional rule . The information processing device searches for an inclusion relationship between the target packet and each of the plurality of rules using the relationship rule and the inclusion relationship determined for the combination.

ネットワークの検証処理を効率化できる。 The network verification process can be made more efficient.

実施形態にかかる探索方法の例を説明する図である。It is a figure explaining the example of the search method concerning embodiment. 情報処理装置の構成の例を説明する図である。It is a figure explaining the example of a structure of an information processing apparatus. 情報処理装置のハードウェア構成の例を説明する図である。It is a figure explaining the example of the hardware constitutions of an information processing apparatus. ルール情報の例を説明する図である。It is a figure explaining the example of rule information. ルールの適用範囲の管理方法の例を説明する図である。FIG. 10 is a diagram illustrating an example of a method for managing the scope of application of rules; 処理ルールの適用範囲についてのベン図とハッセ図の例を説明する図である。FIG. 10 is a diagram illustrating examples of Venn diagrams and Hasse diagrams regarding the application range of processing rules; 探索処理を行うネットワークのルールを表すハッセ図の例である。It is an example of a Hasse diagram showing rules of a network that performs search processing. 派生ルールマップの例を説明する図である。FIG. 10 is a diagram illustrating an example of a derived rule map; ルール間の関連の有無を判定する処理の例を説明するフローチャートである。7 is a flowchart illustrating an example of processing for determining whether or not there is a relationship between rules; 関係ルールマップの例を説明する図である。It is a figure explaining the example of a relationship rule map. 調査リストの生成方法の例を説明するフローチャートである。6 is a flowchart illustrating an example of a survey list generation method; 探索対象のノードの特定例を説明する図である。FIG. 10 is a diagram illustrating an example of specifying a search target node; パターンの分類処理の例を説明するフローチャートである。FIG. 11 is a flowchart illustrating an example of pattern classification processing; FIG. パターンの分類処理の例を説明するフローチャートである。FIG. 11 is a flowchart illustrating an example of pattern classification processing; FIG. ルールの追加によって派生ルールが発生する場合の処理の例を説明するフローチャートである。FIG. 10 is a flowchart for explaining an example of processing when a derived rule is generated by adding a rule; FIG. 探索処理により得られたハッセ図の例である。It is an example of a Hasse diagram obtained by the search process. ルールを追加する順序の決定方法の例を説明する図である。FIG. 10 is a diagram illustrating an example of a method for determining the order of adding rules; 各ルールの適用領域の探索にかかる時間の短縮例である。This is an example of shortening the time required to search for the applicable area of each rule.

図1は、実施形態にかかる探索方法の例を説明する図である。図1のフローチャートは、検証対象のネットワークに設定されている複数の処理ルールの適用範囲の包含関係を探索する情報処理装置で行われる処理の例である。 FIG. 1 is a diagram explaining an example of a search method according to an embodiment. The flowchart of FIG. 1 is an example of processing performed by an information processing apparatus that searches for an inclusion relationship of application ranges of a plurality of processing rules set in a network to be verified.

まず、情報処理装置は、検証対象のネットワークに設定されている処理ルール(ルール)と、検証対象のネットワークに追加される処理ルール(追加対象のルール)を特定する(ステップS1)。情報処理装置は、設定中の処理ルールのうち、追加対象の処理ルールに関連する処理ルールを関係ルールとして抽出する(ステップS2)。情報処理装置は、関係ルールを関係ルールマップ42に記録する。ここで、関係ルールは、追加対象の処理ルールの適用対象となるパケットの1つ以上に適用可能な処理ルールである。すなわち、ある処理ルールの適用対象となるパケットと追加対象の処理ルールの適用対象となるパケットの間に重複がない場合、その処理ルールは追加対象の処理ルールの関係ルールではない。個々の処理ルールには、その処理ルールを適用するパケットのアドレスの範囲、ポートの値の範囲、プロトコルなどの1つ以上のパラメータが定義されている。このため、情報処理装置は、処理ルールのパラメータの少なくとも1つの値の範囲が、追加対象の処理ルールのパラメータの値の範囲と重複しない場合、その処理ルールは関係ルールではないと判定する。 First, the information processing device identifies a processing rule (rule) set in the network to be verified and a processing rule to be added to the network to be verified (rule to be added) (step S1). The information processing device extracts a processing rule related to the processing rule to be added from among the processing rules being set as a related rule (step S2). The information processing device records the relationship rule in the relationship rule map 42 . Here, the relational rule is a processing rule applicable to one or more packets to which the processing rule to be added is applied. That is, if there is no overlap between a packet to which a processing rule is applied and a packet to which a processing rule to be added is applied, the processing rule is not a related rule of the processing rule to be added. Each processing rule defines one or more parameters, such as a range of addresses for packets to which the processing rule applies, a range of port values, a protocol, and the like. Therefore, when the value range of at least one parameter of the processing rule does not overlap with the value range of the parameter of the processing rule to be added, the information processing device determines that the processing rule is not a relational rule.

例えば、処理ルールAが追加対象の処理ルールであるとする。設定済みの処理ルールBが適用されるパケットの宛先アドレスの範囲と処理ルールAが適用されるパケットの宛先アドレスの範囲が重複していないとする。すると、情報処理装置は、設定済みの処理ルールBは、処理ルールAの関係ルールではないと判定する。このように、情報処理装置は、処理ルールの定義に使用される一部のパラメータを用いて、処理ルールが関係ルールではないことを特定できる。一方、追加対象の処理ルールAと全てのパラメータにおいて重複関係がある処理ルールCは、関係ルールに設定される。 For example, assume that processing rule A is the processing rule to be added. Assume that the range of destination addresses of packets to which processing rule B is applied and the range of destination addresses of packets to which processing rule A is applied do not overlap. Then, the information processing apparatus determines that the set processing rule B is not a related rule of the processing rule A. FIG. In this way, the information processing apparatus can identify that the processing rule is not a relational rule by using some parameters used for defining the processing rule. On the other hand, processing rule C, which has an overlapping relationship in all parameters with processing rule A to be added, is set as a related rule.

次に、情報処理装置は、関係ルールマップに含まれるルールの各々について、そのルールおよびそのルールから派生したルール(派生ルール)について、追加対象のルールとの間の包含関係を求める(ステップS3)。ここで、追加対象のルールと関係ルールとの間の包含関係は、関係ルールが追加対象のルールの全体を含む場合、関係ルールの全体が追加対象のルールに含まれる場合、関係ルールと追加対象のルールは互いに他方の一部を含むが全体を含まない場合がある。情報処理装置は派生ルールについても同様に、追加対象のルールとの間の包含関係を求める。 Next, for each rule contained in the relational rule map, the information processing apparatus obtains an inclusion relationship between the rule and the rule derived from the rule (derivative rule) (step S3). . Here, the inclusion relationship between the rule to be added and the relationship rule is defined as follows: when the relationship rule includes the entire rule to be added, when the entire relationship rule is included in the rule to be added, rules may contain parts of each other but not all of them. The information processing device similarly obtains the inclusion relationship between the derived rule and the rule to be added.

情報処理装置は、得られた包含関係を用いて、追加対象のルールの適用範囲と、ネットワークに設定済みの全てのルールとの間での包含関係を探索する(ステップS4)。ここで、包含関係は、例えば、ハッセ図を用いた半順序集合として探索され得る。ステップS4においては、ネットワークに設定済みのルールが複数適用される範囲を、組み合わせて適用されている各ルールから派生した派生ルールとして、各ルールとは別に追加対象のルールの適用範囲との間の包含関係が探索される。 The information processing device uses the obtained inclusion relationship to search for an inclusion relationship between the scope of the rule to be added and all the rules already set in the network (step S4). Here, inclusion relations can be explored as partially ordered sets using, for example, Hasse diagrams. In step S4, the scope of application of a plurality of rules already set to the network is defined as a derived rule derived from each rule that is applied in combination, and the scope of application of the rule to be added separately from each rule. Containment relationships are searched.

このように、図1に示す方法では、追加対象のルールとの間の包含関係を特定する対象は、関係ルールと関係ルールから派生した派生ルールに限定される。さらに、関係ルールを特定する時点での処理は、重複がないパラメータが1つ以上あるルールを関係ルールから除外する処理であるので、包含関係を特定する処理よりも計算量が少なくて済む。従って、実施形態にかかる探索方法では、処理ルールの組み合わせを組み合わせのもととなった各ルールとは別個の派生ルールとして記載する場合での、各処理ルールの適用範囲の包含関係を探索するための処理が効率化される。各処理ルールの適用範囲の包含関係の計算を効率化することで、検証処理の対象とするパケットの特定にかかる時間が短縮され、その結果、ネットワークの検証処理が効率化される。 In this way, in the method shown in FIG. 1, targets for specifying inclusion relationships with rules to be added are limited to relational rules and derived rules derived from relational rules. Furthermore, since the processing at the time of specifying the relationship rule is the processing of excluding rules having one or more non-overlapping parameters from the relationship rule, the amount of calculation can be less than the processing of specifying the inclusion relationship. Therefore, in the search method according to the embodiment, in the case where a combination of processing rules is described as a derived rule separate from each rule that is the basis of the combination, in order to search for the inclusion relationship of the scope of application of each processing rule processing is streamlined. By streamlining the calculation of the inclusion relationship of the scope of application of each processing rule, the time required to identify packets to be verified can be shortened, and as a result, network verification can be made more efficient.

<装置構成>
図2は、情報処理装置10の構成の例を説明する図である。なお、情報処理装置10は、設定済みのルールと新たに設定される処理ルールを取得できれば、検証対象のネットワークに接続されていなくても良く、検証対象のネットワークに接続されていても良い。
<Device configuration>
FIG. 2 is a diagram illustrating an example of the configuration of the information processing device 10. As shown in FIG. Note that the information processing apparatus 10 does not have to be connected to the network to be verified, or may be connected to the network to be verified, as long as the already set rules and the newly set processing rules can be obtained.

情報処理装置10は、入出力処理部20、制御部30、記憶部40を備える。入出力処理部20は、入力部21と出力部22を有する。入力部21は、ネットワークに設定されているルールや新たに設定されるルールの情報の入力に使用される。入力部21を介して入力された情報は、適宜、ルール情報41として記憶部40に記録され得る。出力部22は、得られた探索結果の出力に使用される。 The information processing device 10 includes an input/output processing unit 20 , a control unit 30 and a storage unit 40 . The input/output processing unit 20 has an input unit 21 and an output unit 22 . The input unit 21 is used to input information on rules set in the network and rules to be newly set. Information input via the input unit 21 can be appropriately recorded in the storage unit 40 as the rule information 41 . The output unit 22 is used to output the obtained search results.

記憶部40は、ルール情報41、関係ルールマップ42、派生ルールマップ43、および、調査リスト44を備える。ルール情報41は、ネットワークに設定されている処理ルールの情報と追加対象の処理ルールの情報である。なお、ルール情報41は、派生ルールの各々がどの処理ルールの組み合わせであるかを特定するための情報も含み得る。関係ルールマップ42は、関係ルールとして特定された処理ルールの識別情報を記録する。派生ルールマップ43は、ルール情報41に記録されている処理ルールの2つ以上を組み合わせることによって得られる派生ルールを識別する情報が記録される。調査リスト44は、包含関係を決定する対象となる処理ルールおよび派生ルールを特定する情報が記録される。 The storage unit 40 includes rule information 41 , a relationship rule map 42 , a derived rule map 43 and a research list 44 . The rule information 41 is information on processing rules set in the network and information on processing rules to be added. Note that the rule information 41 may also include information for specifying which combination of processing rules each derived rule is. The relational rule map 42 records identification information of processing rules identified as relational rules. The derived rule map 43 records information identifying derived rules obtained by combining two or more of the processing rules recorded in the rule information 41 . The investigation list 44 records information specifying processing rules and derivation rules for which inclusion relationships are determined.

制御部30は、特定部31、リスト生成部32、包含関係決定部33、探索部34を備え、オプションとして、順序決定部35を備えてもよい。特定部31は、ネットワークに設定されている処理ルールの中から、追加対象のルールに対する関係ルールを特定する。特定部31は、特定した関係ルールを関係ルールマップ42に記録する。リスト生成部32は、関係ルールマップ42と派生ルールマップ43を用いて調査リスト44を生成する。包含関係決定部33は、調査リスト44に含まれる関係ルールおよび派生ルールの各々に対して、追加対象の処理ルールとの間の包含関係を決定する。探索部34は、包含関係決定部33で得られた包含関係を用いて、ネットワーク中の全ての処理ルール、追加対象のルール、および、追加対象の処理ルールから派生した派生ルールの各々について、包含関係を探索する。例えば、探索部34は、ネットワーク中の全ての処理ルール、追加対象のルール、および、追加対象の処理ルールから派生した派生ルールを含むハッセ図を生成する。順序決定部35は、複数の処理ルールを追加する際に、処理ルールの追加処理を行う順序を決定する。 The control unit 30 includes an identification unit 31, a list generation unit 32, an inclusion relationship determination unit 33, a search unit 34, and may optionally include an order determination unit 35. FIG. The identifying unit 31 identifies a related rule to the rule to be added from among the processing rules set in the network. The identifying unit 31 records the identified relationship rule in the relationship rule map 42 . The list generator 32 generates a survey list 44 using the relationship rule map 42 and the derivation rule map 43 . The inclusion relationship determining unit 33 determines the inclusion relationship between each of the relational rules and derived rules included in the investigation list 44 and the processing rule to be added. Using the inclusion relationship obtained by the inclusion relationship determination unit 33, the search unit 34 determines inclusion for all processing rules in the network, rules to be added, and derived rules derived from the processing rules to be added. Explore relationships. For example, the search unit 34 generates a Hasse diagram including all processing rules in the network, rules to be added, and derived rules derived from the processing rules to be added. The order determination unit 35 determines the order of adding processing rules when adding a plurality of processing rules.

図3は、情報処理装置10のハードウェア構成の例を説明する図である。情報処理装置10は、プロセッサ101、メモリ102、入力装置103、出力装置104、および、バス105を備える。さらに、情報処理装置10は、記憶装置106、可搬記憶媒体駆動装置107、および、ネットワークインタフェース109の1つ以上を有していても良い。情報処理装置10は、例えば、コンピュータ、サーバ装置などによって実現され得る。 FIG. 3 is a diagram illustrating an example of the hardware configuration of the information processing device 10. As shown in FIG. The information processing device 10 includes a processor 101 , a memory 102 , an input device 103 , an output device 104 and a bus 105 . Furthermore, the information processing apparatus 10 may have one or more of the storage device 106 , the portable storage medium drive device 107 and the network interface 109 . The information processing device 10 can be realized by, for example, a computer, a server device, or the like.

プロセッサ101は、任意の処理回路であり、例えば、Central Processing Unit(CPU)とすることができる。プロセッサ101は、制御部30として動作する。プロセッサ101は、例えば、メモリ102や記憶装置106に記憶されたプログラムを実行することができる。メモリ102は、プロセッサ101の動作により得られたデータや、プロセッサ101の処理に用いられるデータを、適宜、記憶する。記憶装置106は、プログラムやデータなどを格納し、格納している情報を、適宜、プロセッサ101などに提供する。メモリ102や記憶装置106は、情報処理装置10において、記憶部40として動作する。 Processor 101 is any processing circuit and may be, for example, a Central Processing Unit (CPU). Processor 101 operates as control unit 30 . The processor 101 can execute programs stored in the memory 102 and the storage device 106, for example. The memory 102 appropriately stores data obtained by the operation of the processor 101 and data used for processing by the processor 101 . The storage device 106 stores programs, data, and the like, and appropriately provides the stored information to the processor 101 and the like. The memory 102 and the storage device 106 operate as the storage unit 40 in the information processing device 10 .

バス105は、プロセッサ101、メモリ102、入力装置103、出力装置104、記憶装置106、可搬記憶媒体駆動装置107、ネットワークインタフェース109を、相互にデータの送受信が可能になるように接続する。入力装置103は、キーボード、マウス、マイク、カメラなど、情報の入力に使用される任意の装置である。入力装置103は、入力部21として動作し得る。出力装置104は、ディスプレイなど、データの出力に使用される任意の装置であり、出力部22を実現できる。可搬記憶媒体駆動装置107は、メモリ102や記憶装置106のデータを可搬記憶媒体108に出力することができ、また、可搬記憶媒体108からプログラムやデータ等を読み出すことができる。ここで、可搬記憶媒体108は、Compact Disc Recordable(CD-R)やDigital Versatile Disk Recordable(DVD-R)を含む、持ち運びが可能な任意の記憶媒体とすることができる。ネットワークインタフェース109は、適宜、情報処理装置10が他の装置と通信するための処理を行う。情報処理装置10が検証対象のネットワークに接続されており、ネットワーク中のノード装置やから処理ルールなどを取得する場合、ネットワークインタフェース109によって入力部21が実現され得る。さらに、オペレータが使用する管理端末から検証対象のネットワーク中に設定されている処理ルールの情報や追加対象のルールが通知される場合、ネットワークインタフェース109が入力部21および出力部22として動作し得る。ネットワークインタフェース109が出力部22として動作する場合、情報処理装置10は、得られた結果をオペレータの管理端末に送信できる。 A bus 105 connects the processor 101, the memory 102, the input device 103, the output device 104, the storage device 106, the portable storage medium drive device 107, and the network interface 109 so that they can transmit and receive data to each other. Input device 103 is any device used to enter information, such as a keyboard, mouse, microphone, camera, and the like. The input device 103 can operate as the input unit 21 . Output device 104 is any device used to output data, such as a display, and can implement output unit 22 . The portable storage medium drive device 107 can output data in the memory 102 and the storage device 106 to the portable storage medium 108 and can read programs, data, and the like from the portable storage medium 108 . Here, the portable storage medium 108 can be any portable storage medium including Compact Disc Recordable (CD-R) and Digital Versatile Disk Recordable (DVD-R). The network interface 109 appropriately performs processing for the information processing device 10 to communicate with other devices. When the information processing device 10 is connected to a network to be verified and acquires processing rules and the like from node devices in the network, the input unit 21 can be implemented by the network interface 109 . Furthermore, when information on processing rules set in the network to be verified and rules to be added are notified from the management terminal used by the operator, the network interface 109 can operate as the input unit 21 and the output unit 22. When the network interface 109 operates as the output unit 22, the information processing apparatus 10 can transmit the obtained result to the operator's management terminal.

<第1の実施形態>
以下、ネットワークで用いられる処理ルールの例とネットワークの設定例、処理ルールの追加のための関係ルールの特定、調査リストの生成、探索処理に分けて説明する。第1の実施形態を実施する情報処理装置10は、順序決定部35を含んでも良く、また、順序決定部35を含んでいなくてもよい。
<First Embodiment>
Examples of processing rules used in a network, examples of network settings, identification of related rules for adding processing rules, generation of a survey list, and search processing will be described below. The information processing apparatus 10 implementing the first embodiment may include the order determination unit 35 or may not include the order determination unit 35 .

(1)処理ルールの例とネットワークの設定例
図4は、ルール情報41の例を説明する図である。ルール情報41は、R1に示すようにACL(Access-control list)ルールであってもよく、また、R2に示すようにルーティングルールであってもよい。R1に示すACLルールには、ルールID、処理対象のパケットを特定するための情報、処理ルールが含まれる。R1の例では、処理ルールは、パケットの通過の許可(Allow)とパケットと通過させない(Deny)ための処理のいずれかである。また、R1では、処理対象のパケットを特定するための情報には、送信元IPアドレス(IP-SA)、宛先IPアドレス(IP-DA)、送信元ポート番号、宛先ポート番号、および、プロトコルの5タプルの情報が含まれる。R1に含まれるルールID=1のルールでは、送信元IPアドレス=221.38.7.9/32、宛先IPアドレス=203.21.45.10/32であり、送信元ポート番号と宛先ポート番号が65536以下のプロトコルAのパケットを通過させる。同様に、他のルールについても、そのルールの適用範囲は5タプルの情報から特定される。
(1) Example of Processing Rule and Example of Network Setting FIG. 4 is a diagram illustrating an example of the rule information 41 . The rule information 41 may be an ACL (Access-control list) rule as indicated by R1, or may be a routing rule as indicated by R2. The ACL rule indicated by R1 includes a rule ID, information for specifying a packet to be processed, and a processing rule. In the example of R1, the processing rule is either processing for permitting passage of packets (Allow) or processing for not allowing passage of packets (Deny). In R1, information for specifying a packet to be processed includes a source IP address (IP-SA), a destination IP address (IP-DA), a source port number, a destination port number, and a protocol Contains 5-tuple information. In the rule with rule ID=1 included in R1, source IP address=221.38.7.9/32, destination IP address=203.21.45.10/32, source port number and destination port Packets of protocol A with numbers less than or equal to 65536 are allowed to pass. Similarly, for other rules, the scope of application of the rule is identified from the 5-tuple information.

R2の例では、各ルールは、ルールID、ルールが適用されるネットワーク中のノード装置、宛先のIPprefix、Nexthop情報を含む。例えば、ルールID=1のルールによると、Node0で識別されるノード装置では、IPプレフィックスが0.0.0.12/30のパケットはNode2で識別されるノード装置に転送される。 In the R2 example, each rule includes a rule ID, a node device in the network to which the rule applies, a destination IPprefix, and Nexthop information. For example, according to the rule with rule ID=1, the node device identified by Node0 forwards the packet with the IP prefix 0.0.0.12/30 to the node device identified by Node2.

図5は、ルールの適用範囲の管理方法の例を説明する図である。以下の説明では、パケットに適用される処理の種類が同じ領域をPEC(Packet Equivalence Class)と記載する。図5の例では、ネットワークにルールaとルールbが適用されている。ルールaでは、送信元IPアドレスがRaに示す範囲(133.28.116.0~133.28.116.255)のパケットの通過を許可する。ルールaが適用される範囲をαで示す。ルールbでは、宛先IPアドレスがRbに示す範囲(202.248.10.0~202.248.10.255)のパケットを、ノード装置Xに転送する。ルールbが適用される範囲をβで示す。図5の点描が入っている領域(#PEC C)は、送信元IPアドレスがRaに示す範囲であり、かつ、宛先IPアドレスがRbに示す範囲のパケットであるので、αとβの両方に含まれている。従って、ルールaとルールbが設定されたノード装置は、#PEC Cに含まれるパケットの通過を許可するとともに、#PEC Cに含まれるパケットをノード装置Xに転送する。 FIG. 5 is a diagram illustrating an example of a method for managing the scope of application of rules. In the following description, an area in which the same type of processing is applied to packets is referred to as PEC (Packet Equivalence Class). In the example of FIG. 5, rule a and rule b are applied to the network. Rule a permits passage of packets whose source IP address is in the range indicated by Ra (133.28.116.0 to 133.28.116.255). The range to which rule a is applied is denoted by α. According to rule b, packets whose destination IP address is in the range indicated by Rb (202.248.10.0 to 202.248.10.255) are transferred to the node device X. The range to which rule b is applied is denoted by β. The stippled area (#PEC C) in FIG. 5 is a packet whose source IP address is in the range indicated by Ra and whose destination IP address is in the range indicated by Rb. include. Therefore, the node equipment to which rule a and rule b are set permits passage of the packet included in #PEC C and transfers the packet included in #PEC C to node equipment X.

αに示す領域のうちで#PEC Cを除いた領域を#PEC Aとする。#PEC Aでは、ルールaが適用されるがルールbは適用されない。このため、#PEC Aに含まれるパケットは、ルールaに従って、通過が許可される。βに示す領域のうちで#PEC Cを除いた領域を#PEC Bとする。#PEC Bでは、ルールbが適用されるがルールaは適用されない。このため、PEC# Bに含まれるパケットは、ルールbに従って、ノード装置Xに転送される。 Let #PEC A be the area excluding #PEC C in the area indicated by α. # For PEC A, rule a applies but rule b does not. Therefore, packets included in #PEC A are permitted to pass according to rule a. Let #PEC B be the area excluding #PEC C in the area indicated by β. # In PEC B, rule b applies but rule a does not. Therefore, the packet included in PEC# B is transferred to node equipment X according to rule b.

図5に示す#PEC Cでは、ルールaとルールbが組み合わされている。そこで、#PEC Cで適用されるルールは、ルールaとルールbから派生したルールであるといえる。このように、複数の処理ルールの組み合わせなどの処理ルールのブール結合を、新たなルール(派生ルール)として管理できる。 In #PEC C shown in FIG. 5, rule a and rule b are combined. Therefore, it can be said that the rule applied in #PEC C is a rule derived from rule a and rule b. In this way, a Boolean combination of processing rules, such as a combination of multiple processing rules, can be managed as a new rule (derived rule).

図6は、処理ルールの適用範囲についてのベン図とハッセ図の例を説明する図である。ルールa、ルールb、ルールc、および、ルールeがネットワークに適用されるとする。ルールaの適用範囲は、ルールb、ルールc、ルールeの各々の適用範囲を包含しているとする。ルールbとルールcは適用範囲の一部が重複するが、いずれも他方の適用範囲を包含していないとする。この場合、ルールbとルールcが重複して適用される領域は、ルールbとルールcの組み合わせの派生ルールdが適用されると考える。さらに、ルールeはルールdに包含されるとする。すると、各ルールの適用範囲は、ベン図B1に示すとおりになる。 FIG. 6 is a diagram illustrating an example of a Venn diagram and a Hasse diagram of the application range of processing rules. Let rule a, rule b, rule c, and rule e apply to the network. It is assumed that the scope of application of rule a includes the scope of application of each of rule b, rule c, and rule e. It is assumed that rule b and rule c partly overlap in scope, but neither of them includes the scope of the other. In this case, it is considered that derived rule d, which is a combination of rule b and rule c, is applied to a region to which rule b and rule c are applied in duplicate. Further assume that rule e is subsumed by rule d. Then, the scope of application of each rule becomes as shown in Venn diagram B1.

ベン図B1に示すルール間の関係は、ハッセ図H1に示す半順序集合として表せる。ハッセ図H1の最上位レイヤはルールaであり、ルールaの下のレイヤにルールbとルールcがある。ルールbとルールcの重複部分であるルールdは、ルールbおよびルールcの下のレイヤに表される。ルールeの適用範囲は、ルールdの適用範囲に包含されるので、ルールeはルールdの下のレイヤで表される。 The relationship between rules shown in Venn diagram B1 can be expressed as a partially ordered set shown in Hasse diagram H1. The top layer of Hasse diagram H1 is rule a, and the layers below rule a are rule b and rule c. Rule d, the overlapping part of rule b and rule c, is represented in a layer below rule b and rule c. The scope of rule e is included in the scope of rule d, so rule e is represented in a layer below rule d.

各ルールが適用される領域をPECで表すと、ベン図B2の通りになる。ルールaのみが適用される領域は#PEC Aであり、ルールbのみが適用される領域は#PEC Bである。ルールcのみが適用される領域は#PEC Cであり、ルールeのみが適用される領域は#PEC Eである。さらに、ルールbとルールcの組み合わせであるルールdのみが適用される領域は#PEC Dである。 When the area to which each rule is applied is represented by PEC, it becomes as shown in Venn diagram B2. The area where only rule a is applied is #PEC A, and the area where only rule b is applied is #PEC B. The region to which only rule c applies is #PEC C, and the region to which only rule e applies is #PEC E. Furthermore, the region to which only rule d, which is a combination of rule b and rule c, is applied is #PEC D.

図6には、各PECに収容される範囲を表す数式も記載されている。各数式では、ルールの適用される範囲をそのルールを表すアルファベットの小文字で示している。従って、aは、ルールaの適用範囲である。従って、#PEC A=a-(#PEC B+#PEC C+#PEC D+#PEC E)という式は、ルールaの適用範囲から#PEC B、#PEC C、#PEC D、#PEC Eを差し引いた範囲を表す。同様に、#PEC B=b-(#PEC D+#PEC E)という式は、ルールbの適用範囲から#PEC Dと#PEC Eを差し引いた範囲を表す。#PEC C=c-(#PEC D+#PEC E)という式は、ルールcの適用範囲から#PEC DとPEC# Eを差し引いた範囲を表す。#PEC D=d-#PEC Eという式は、ルールdの適用範囲から#PEC Eを差し引いた範囲を表す。さらに、#PEC E=eという式は、ルールeの適用範囲の全範囲を表す。 Also shown in FIG. 6 are formulas representing the range accommodated in each PEC. In each formula, the range to which the rule applies is indicated by the lowercase letter representing the rule. Therefore, a is the scope of rule a. Therefore, the formula #PEC A=a-(#PEC B+#PEC C+#PEC D+#PEC E) is obtained by subtracting #PEC B, #PEC C, #PEC D, and #PEC E from the scope of rule a. represents a range. Similarly, the formula #PEC B=b−(#PEC D+#PEC E) represents the range of rule b minus #PEC D and #PEC E. The formula #PEC C=c−(#PEC D+#PEC E) represents the scope of rule c minus #PEC D and PEC# E. The formula #PEC D=d−#PEC E represents the scope of rule d minus #PEC E. Furthermore, the expression #PEC E=e represents the full range of applicability of rule e.

図7は、探索処理を行うネットワークのルールを表すハッセ図の例である。ルール1~ルール55の処理ルールとルール1~ルール55から派生した派生ルールがネットワークに設定されているとする。以下の説明では、ネットワークに設定される処理ルールと派生ルールを区別しやすくするために、処理ルールの識別情報を数字で表し、派生ルールの識別情報をアルファベットで表す。ネットワーク中に設定されているルールと派生ルールは、図7に示すハッセ図中のノードとして表されている。 FIG. 7 is an example of a Hasse diagram showing rules of a network for performing search processing. Assume that the processing rules of rule 1 to rule 55 and the derived rules derived from rule 1 to rule 55 are set in the network. In the following description, in order to make it easier to distinguish between processing rules and derived rules set in the network, the identification information of the processing rules will be represented by numbers, and the identification information of the derived rules will be represented by alphabets. Rules and derived rules set in the network are represented as nodes in the Hasse diagram shown in FIG.

図8は、派生ルールマップ43の例を説明する図である。図8に示す派生ルールマップ43は、図7に示すハッセ図で表されるようにルールが設定されているネットワークでの派生ルールマップ43の例である。ルールの追加設定を行ったときに派生ルールが発生すると、派生ルールの識別情報が生成され、派生ルールマップ43に登録される。図8に示す派生ルールマップ43の1番目のエントリには、ルール5の追加の際に派生ルールaが発生していることが表されている。図7のハッセ図にも、ルール2とルール5の下のレイヤに派生ルールaが記録されている。派生ルールマップ43の他のルールについても、同様に、各派生ルールは、その派生ルールが発生する原因となったルールのうちの1つに対応付けて派生ルールマップ43に記録される。 FIG. 8 is a diagram illustrating an example of the derived rule map 43. As shown in FIG. A derived rule map 43 shown in FIG. 8 is an example of a derived rule map 43 in a network in which rules are set as represented by the Hasse diagram shown in FIG. When a derived rule occurs when additional settings are made for a rule, identification information of the derived rule is generated and registered in the derived rule map 43 . The first entry in the derived rule map 43 shown in FIG. 8 indicates that derived rule a occurs when rule 5 is added. In the Hasse diagram of FIG. 7 as well, the derived rule a is recorded in the layer below the rule 2 and the rule 5. FIG. Similarly, for other rules in the derived rule map 43, each derived rule is recorded in the derived rule map 43 in association with one of the rules that caused the generation of that derived rule.

(2)関係ルールの特定
以下の説明では、図7と図8で示すネットワークに、新たにルール56を設定する場合に、ルール56の適用範囲と他のルールの適用範囲との関係を探索する場合を例とする。新たにルール56を追加する場合、図7に示す各ノードで表されるルールの各々についてのルール56との間の包含関係の情報を用いることになる。しかし、図7中のハッセ図の全てのノードについて、ルール56との包含関係を特定するための処理を行うと、情報処理装置10での計算量が多くなる。
(2) Identification of related rules In the following description, when a new rule 56 is set in the networks shown in FIGS. 7 and 8, the relationship between the scope of application of the rule 56 and the scope of application of other rules is searched. Take the case as an example. When adding a new rule 56, the information of the inclusive relationship between each rule represented by each node shown in FIG. 7 and the rule 56 is used. However, if the processing for specifying the inclusion relationship with the rule 56 is performed for all the nodes in the Hasse diagram in FIG. 7, the amount of calculation in the information processing apparatus 10 increases.

そこで、情報処理装置10は、まず、ルール56の関係ルールを特定する。ルール56の関係ルールは、ルール56の適用対象をそのルールの適用対象に包含するルール、そのルールの適用対象がルール56の適用対象に包含されるルール、ルール56の適用対象と適用対象が一部重複するルールのいずれかである。このため、特定部31は、図7のハッセ図に含まれる各ノードに対応するルールのうち、適用対象がルール56の適用対象の1つ以上のパケットを含まないルールを、追加対象のルール56の関係ルールから除外する。なお、その後の処理では関係ルールが追加対象のルール56との間の包含関係を特定する対象とされる。 Therefore, the information processing apparatus 10 first identifies the relationship rule of the rule 56 . The relational rules of the rule 56 are: a rule whose application target of the rule 56 is included in the application target of the rule 56; a rule whose application target is included in the application target of the rule 56; is one of the overlapping rules. For this reason, the specifying unit 31 selects, from among the rules corresponding to each node included in the Hasse diagram of FIG. excluded from the relationship rules of In the subsequent processing, the relational rule is targeted for specifying the inclusion relation with the rule 56 to be added.

図9は、ルール間の関連の有無を判定する処理の例を説明するフローチャートである。図9では、図4のルールR1に示すように、5タプルのACLルールを追加する場合を例とする。なお、図9は処理の一例にすぎず、処理の手順は実装に応じて変更され得る。例えば、ステップS12~S16の判定処理の順序は任意に変更され得る。 FIG. 9 is a flowchart illustrating an example of processing for determining whether there is a relationship between rules. In FIG. 9, a case of adding a 5-tuple ACL rule as shown in rule R1 in FIG. 4 is taken as an example. Note that FIG. 9 is only an example of processing, and the processing procedure may be changed according to implementation. For example, the order of determination processing in steps S12 to S16 can be arbitrarily changed.

まず、ネットワーク中に設定されているルールの各々について、ループ端L1とL2で挟まれたループ処理が行われる。以下、ループ端L1とL2で挟まれたループのことを「判定ループ」と記載することがある。特定部31は、ネットワーク中に設定されているルールのうちで、判定ループでの処理が行われていないルールを選択する(ステップS11)。特定部31は、選択したルールと追加対象のルールの間で、送信元IPアドレスに重なりがあるかを判定する(ステップS12)。選択したルールと追加対象のルールの間で送信元IPアドレスに重なりがない場合、特定部31は、選択したルールと追加対象のルールの間には重複する領域がないと判定する(ステップS12でNo、ステップS18)。一方、選択したルールと追加対象のルールの間で送信元IPアドレスに重なりがある場合、特定部31は、選択したルールと追加対象のルールの間で宛先IPアドレスに重なりがあるかを判定する(ステップS12でYes、ステップS13)。 First, loop processing between loop ends L1 and L2 is performed for each of the rules set in the network. Hereinafter, a loop sandwiched between loop ends L1 and L2 may be referred to as a "judgment loop". The specifying unit 31 selects a rule that has not been processed in the determination loop from among the rules set in the network (step S11). The specifying unit 31 determines whether or not the selected rule and the rule to be added overlap in source IP address (step S12). If there is no overlap in the source IP address between the selected rule and the rule to be added, the identifying unit 31 determines that there is no overlapping area between the selected rule and the rule to be added (step S12). No, step S18). On the other hand, if there is overlap in source IP addresses between the selected rule and the rule to be added, the identifying unit 31 determines whether there is overlap in destination IP addresses between the selected rule and the rule to be added. (Yes in step S12, step S13).

選択したルールと追加対象のルールの間で宛先IPアドレスに重なりがない場合、特定部31は、選択したルールと追加対象のルールの間には重複する適用領域がないと判定する(ステップS13でNo、ステップS18)。一方、選択したルールと追加対象のルールの間で宛先IPアドレスに重なりがある場合、特定部31は、選択したルールと追加対象のルールの間で送信元ポートに重なりがあるかを判定する(ステップS13でYes、ステップS14)。 If there is no overlap in the destination IP addresses between the selected rule and the rule to be added, the specifying unit 31 determines that there is no overlapping application area between the selected rule and the rule to be added (in step S13 No, step S18). On the other hand, if there is overlap in the destination IP address between the selected rule and the rule to be added, the specifying unit 31 determines whether there is overlap in the source port between the selected rule and the rule to be added ( Yes in step S13, step S14).

選択したルールと追加対象のルールの間で送信元ポ-トに重なりがない場合、特定部31は、選択したルールと追加対象のルールの間には重複する適用領域がないと判定する(ステップS14でNo、ステップS18)。一方、選択したルールと追加対象のルールの間で送信元ポートに重なりがある場合、特定部31は、選択したルールと追加対象のルールの間で宛先ポートに重なりがあるかを判定する(ステップS14でYes、ステップS15)。 If there is no overlap in the transmission source port between the selected rule and the rule to be added, the specifying unit 31 determines that there is no overlapping application area between the selected rule and the rule to be added (step No in S14, step S18). On the other hand, if there is overlap in the source port between the selected rule and the rule to be added, the specifying unit 31 determines whether there is overlap in the destination port between the selected rule and the rule to be added (step Yes in S14, step S15).

選択したルールと追加対象のルールの間で宛先ポ-トに重なりがない場合、特定部31は、選択したルールと追加対象のルールの間には重複する適用領域がないと判定する(ステップS15でNo、ステップS18)。一方、選択したルールと追加対象のルールの間で送信元ポートに重なりがある場合、特定部31は、選択したルールと追加対象のルールの間でプロトコルに重なりがあるかを判定する(ステップS15でYes、ステップS16)。 If the destination port does not overlap between the selected rule and the rule to be added, the identifying unit 31 determines that there is no overlapping application area between the selected rule and the rule to be added (step S15). No, step S18). On the other hand, if there is overlap in the source port between the selected rule and the rule to be added, the specifying unit 31 determines whether there is overlap in protocol between the selected rule and the rule to be added (step S15). Yes, step S16).

選択したルールと追加対象のルールの間でプロトコルに重なりがない場合、特定部31は、選択したルールと追加対象のルールの間には重複する適用領域がないと判定する(ステップS16でNo、ステップS18)。一方、選択したルールと追加対象のルールの間でプロトコルに重なりがある場合、特定部31は、選択したルールと追加対象のルールの間で重複する適用領域があると判定する(ステップS16でYes、ステップS17)。 When there is no protocol overlap between the selected rule and the rule to be added, the specifying unit 31 determines that there is no overlapping application area between the selected rule and the rule to be added (No in step S16, step S18). On the other hand, if there is overlap in protocol between the selected rule and the rule to be added, the specifying unit 31 determines that there is an overlapping application area between the selected rule and the rule to be added (Yes in step S16). , step S17).

その後、特定部31は、全てのルールが選択済みかを判定する(ループ端L2)。全てのルールが選択済みではない場合、ステップS11以降の処理が繰り返される(ループ端L2でNo)。一方、全てのルールが選択済みである場合、特定部31は、関係ルールマップ42を生成する(ループ端L2でYes、ステップS19)。ステップS19では、特定部31は、ステップS17において、追加対象のルールとの間に重複する適用領域があると判定したルールを関係ルールとして、関係ルールマップ42に記録する。 After that, the specifying unit 31 determines whether or not all rules have been selected (loop end L2). If all the rules have not been selected, the processes after step S11 are repeated (No at loop end L2). On the other hand, if all the rules have been selected, the specifying unit 31 generates the relationship rule map 42 (Yes at loop end L2, step S19). In step S<b>19 , the identifying unit 31 records the rule determined in step S<b>17 as having an overlapping application area with the rule to be added as a relational rule in the relational rule map 42 .

図10は、関係ルールマップの例を説明する図である。ルール56が追加対象のルールである場合に、図7に示すルール1~ルール55の各々に対して図9のフローチャートで説明する処理を行ったとする。その結果、ルール1、ルール5、ルール15、ルール27、ルール28、ルール40については、ルール56との間に重複する適用領域があると判定された場合、図10に示す関係ルールマップ42が生成される。 FIG. 10 is a diagram illustrating an example of a relationship rule map. Assume that when rule 56 is a rule to be added, the processing described with reference to the flowchart of FIG. 9 is performed for each of rules 1 to 55 shown in FIG. As a result, if rule 1, rule 5, rule 15, rule 27, rule 28, and rule 40 are judged to have overlapping application areas with rule 56, the relationship rule map 42 shown in FIG. generated.

以下で説明するように、関係ルールマップ42に記録されているルールは包含関係を特定するための詳細な探索処理として後述する処理(図13A、図13B)の対象となる。一方、図9において、追加対象のルールと重複する領域が適用範囲にないと判定されたルールは、関係ルールマップ42に記録されず、包含関係を特定するための詳細な探索処理として後述する処理の対象にもならない。このため、情報処理装置10では、図7に示すハッセ図の各ノードについて追加対象のルールとの間の包含関係を特定する場合に比べて、ルールの適用範囲を特定するための計算処理が軽減される。 As will be described below, the rules recorded in the relational rule map 42 are subjected to processing (FIGS. 13A and 13B), which will be described later as detailed search processing for identifying inclusion relationships. On the other hand, in FIG. 9, a rule for which it is determined that the area overlapping the rule to be added does not fall within the scope of application is not recorded in the relationship rule map 42, and a detailed search process for specifying the inclusion relationship will be described later. is not subject to For this reason, in the information processing apparatus 10, compared to the case of specifying the inclusion relationship between each node of the Hasse diagram shown in FIG. be done.

(3)調査リストの生成
図11は、調査リスト44の生成方法の例を説明するフローチャートである。リスト生成部32は、関係ルールマップ42と派生ルールマップ43を用いて調査リスト44を生成する。例えば、ルール56について図10に示す関係ルールマップ42が得られており、ネットワーク中の派生ルールマップ43は図8に示すとおりであるとする。
(3) Generating Survey List FIG. 11 is a flow chart illustrating an example of a method for generating the survey list 44 . The list generator 32 generates a survey list 44 using the relationship rule map 42 and the derivation rule map 43 . For example, assume that the relationship rule map 42 shown in FIG. 10 has been obtained for the rule 56, and the derived rule map 43 in the network is as shown in FIG.

リスト生成部32は、関係ルールマップ42を調査リスト44にコピーする(ステップS31)。従って、ルール56を追加するための探索処理でステップS31が終わった時点では、調査リスト44には、ルール1、ルール5、ルール15、ルール27、ルール28、ルール40が記録される。 The list generator 32 copies the relationship rule map 42 to the investigation list 44 (step S31). Therefore, when step S31 is completed in the search process for adding rule 56, rule 1, rule 5, rule 15, rule 27, rule 28, and rule 40 are recorded in the investigation list 44. FIG.

次に、ループ端L11とL12で挟まれたループ処理が行われる。以下、ループ端L11とL12で挟まれたループのことを「ノード追加ループ」と記載することがある。リスト生成部32は、関係ルールマップ42中のルールから、注目するルールを特定する(ステップS32)。リスト生成部32は、注目するルールについて、派生ルールマップ43の記録があるかを判定する(ステップS33)。注目するルールについて、派生ルールマップ43の記録がある場合、リスト生成部32は、注目するルールに対応付けて派生ルールマップ43に記録されている派生ルールを調査リスト44に追加する(ステップS33でNo、ステップS34)。例えば、調査リスト44中のルール5が注目するルールとして特定されている場合、派生ルールマップ43にはルール5に対応付けて派生ルールaが記録されている。ステップS34の処理によりリスト生成部32が派生ルールaを調査リスト44に追加するので、更新後の調査リスト44には、ルール1、ルール5、ルール15、ルール27、ルール28、ルール40、ルールaが記録される。 Next, a loop process sandwiched between loop ends L11 and L12 is performed. Hereinafter, a loop sandwiched between loop ends L11 and L12 may be referred to as a "node addition loop". The list generator 32 identifies a rule of interest from the rules in the relational rule map 42 (step S32). The list generator 32 determines whether or not there is a record of the derivation rule map 43 for the rule of interest (step S33). If the rule of interest is recorded in the derived rule map 43, the list generator 32 adds the derived rule recorded in the derived rule map 43 in association with the rule of interest to the investigation list 44 (step S33). No, step S34). For example, when rule 5 in the investigation list 44 is specified as a rule of interest, a derived rule a is recorded in association with rule 5 in the derived rule map 43 . Since the list generation unit 32 adds the derived rule a to the investigation list 44 by the process of step S34, the updated investigation list 44 includes rule 1, rule 5, rule 15, rule 27, rule 28, rule 40, rule a is recorded.

ステップS34の処理後か、ステップS33で注目するルールについての派生ルールマップ43の記録がないと判定した場合、リスト生成部32は、関係ルールマップ42中の全てのルールに注目したかを判定する(ループ端L12)。関係ルールマップ42中の全てのルールに注目していない場合、ステップS32以降の処理が繰り返される(ループ端L12でNo)。 After the process of step S34 or when it is determined in step S33 that there is no record of the derived rule map 43 for the rule of interest, the list generator 32 determines whether all the rules in the relational rule map 42 have been focused. (Loop end L12). If all the rules in the relational rule map 42 are not paid attention to, the processing after step S32 is repeated (No at loop end L12).

例えば、リスト生成部32は、ルール15を注目するノードに特定したとすると、ステップS34の処理で派生ルールcと派生ルールdを調査リスト44に追加する。このため、調査リスト44には、ルール1、ルール5、ルール15、ルール27、ルール28、ルール40、ルールa、ルールc、ルールdが記録される。ステップS31に戻って、リスト生成部32がルール27を選択した場合、ルール27に対応付けられたルールが派生ルールマップ43に記録されていないので、調査リスト44は変更されず、再度、ステップS31以降の処理が行われる。次に、リスト生成部32は、ルール28を注目するルールとして特定するので、ステップS34の処理で派生ルールmを調査リスト44に追加する。このため、調査リスト44には、ルール1、ルール5、ルール15、ルール27、ルール28、ルール40、ルールa、ルールc、ルールd、ルールmが記録される。その後、注目するルールがルール40に変更された場合には、ルール40に対応付けられたルールが派生ルールマップ43に記録されていないので、調査リスト44は変更されない。 For example, assuming that the rule 15 is specified as a node of interest, the list generation unit 32 adds derived rule c and derived rule d to the investigation list 44 in the process of step S34. Therefore, rule 1, rule 5, rule 15, rule 27, rule 28, rule 40, rule a, rule c, and rule d are recorded in the investigation list 44. FIG. Returning to step S31, if the list generator 32 selects the rule 27, the rule associated with the rule 27 is not recorded in the derived rule map 43, so the survey list 44 is not changed, and step S31 is performed again. The following processing is performed. Next, since the list generation unit 32 identifies the rule 28 as the rule of interest, the derived rule m is added to the investigation list 44 in the process of step S34. Therefore, rule 1, rule 5, rule 15, rule 27, rule 28, rule 40, rule a, rule c, rule d, and rule m are recorded in the investigation list 44. FIG. After that, when the rule of interest is changed to the rule 40, the rule associated with the rule 40 is not recorded in the derived rule map 43, so the investigation list 44 is not changed.

関係ルールマップ42中の全てのルールに注目した場合、リスト生成部32は処理を終了する(ループ端L12でYes)。このため、ルール56を追加する処理のために生成される調査リスト44には、ルール1、ルール5、ルール15、ルール27、ルール28、ルール40、ルールa、ルールc、ルールd、ルールmが含まれる。 When all the rules in the relational rule map 42 are noted, the list generator 32 terminates the process (Yes at loop end L12). Therefore, the survey list 44 generated for the process of adding rule 56 includes rule 1, rule 5, rule 15, rule 27, rule 28, rule 40, rule a, rule c, rule d, rule m. is included.

図12は、探索対象のノードの特定例を説明する図である。図12には、ルール56を追加する処理のために生成される調査リスト44の例と、調査リスト44に記録されている各ルールのハッセ図中の位置を示す。図12に示すハッセ図では、調査リスト44に記録されている各ルールに対応するノードを探索ノードとして示している。探索ノードは、包含関係の探索対象となるノードである。図12に示すように、図9~図11を参照しながら説明した処理により、ルール56との間の包含関係を特定する対象は、ルール1、ルール5、ルール15、ルール27、ルール28、ルール40、ルールa、ルールc、ルールd、ルールmに限定されている。 FIG. 12 is a diagram illustrating an example of specifying a search target node. FIG. 12 shows an example of a study list 44 generated for the process of adding a rule 56 and the position of each rule recorded in the study list 44 in the Hasse diagram. In the Hasse diagram shown in FIG. 12, a node corresponding to each rule recorded in the investigation list 44 is shown as a search node. A search node is a node to be searched for inclusion relationships. As shown in FIG. 12, by the processing described with reference to FIGS. It is limited to rule 40, rule a, rule c, rule d, and rule m.

(4)探索処理
図13Aおよび図13Bは、パターンの分類処理の例を説明するフローチャートである。図13Aと図13Bでは、調査対象となるルールと追加対象のルールの間の包含関係を以下の4パターンに分類するものとする。
パターン1:調査対象のルールの適用範囲が追加対象のルールの適用範囲を包含
パターン2:追加対象のルールの適用範囲が調査対象のルールの適用範囲を包含
パターン3:調査対象のルールの適用範囲と追加対象のルールの適用範囲は、一部重複するがいずれのルールの適用範囲も他方の全体を包含しない
パターン4:調査対象のルールの適用範囲と追加対象のルールの適用範囲は重複しない
(4) Search Processing FIGS. 13A and 13B are flowcharts illustrating an example of pattern classification processing. In FIGS. 13A and 13B, the inclusion relationship between the rule to be investigated and the rule to be added is classified into the following four patterns.
Pattern 1: The scope of the rule to be investigated includes the scope of the rule to be added Pattern 2: The scope of the rule to be added includes the scope of the rule to be investigated Pattern 3: The scope of the rule to be investigated The scope of application of the rule to be added partially overlaps, but the scope of application of either rule does not encompass the entirety of the other. Pattern 4: The scope of application of the rule to be investigated and the scope of the rule to be added do not overlap

包含関係決定部33は、調査リスト44に含まれているルールに対応するハッセ図中のノードを注目するノードに設定する(ステップS41)。このとき、包含関係決定部33は、ハッセ図中の全てのルールを包含するルール1を最初に注目するノードに設定する。次に、包含関係決定部33は、注目するノードのハッセ図中での子ノードのうち、調査リスト44中のルールに対応するノードを特定する(ステップS42)。 The inclusion relation determination unit 33 sets the node in the Hasse diagram corresponding to the rule included in the investigation list 44 as the node of interest (step S41). At this time, the inclusive relationship determination unit 33 sets rule 1, which includes all the rules in the Hasse diagram, as the node to be focused on first. Next, the inclusion relation determination unit 33 identifies a node corresponding to the rule in the investigation list 44 among the child nodes in the Hasse diagram of the node of interest (step S42).

その後、ループ端L21とL22で挟まれたループ処理が行われる。ループ端L21とL22で挟まれたループのことを「パターン分類ループ」と記載することがある。包含関係決定部33は、特定した子ノードのうち、調査対象を決定する(ステップS43)。包含関係決定部33は、調査対象の子ノードの追加で生じたルールの重複を示すノード(派生ノード)を、派生ルールマップ43を用いて特定する(ステップS44)。例えば、図12に示す例では、ルール1のノードの子ノードのうち、ルール5に対応付けられたノードが特定されるので調査対象の子ノードはルール5のノードとなる。さらに、派生ノードは、ルールaのノードとなる。 Thereafter, a loop process sandwiched between loop ends L21 and L22 is performed. A loop sandwiched between loop ends L21 and L22 may be referred to as a "pattern classification loop". The inclusion relationship determining unit 33 determines a research target among the identified child nodes (step S43). The inclusion relation determining unit 33 identifies, using the derivation rule map 43, a node (derivation node) indicating rule duplication caused by the addition of the child node to be investigated (step S44). For example, in the example shown in FIG. 12, among the child nodes of the node of rule 1, the node associated with rule 5 is specified, so the child node to be investigated is the node of rule 5. FIG. Furthermore, the derived node becomes the node of rule a.

次に、ループ端L31とL32で挟まれたループ処理が行われる。ループ端L31とL32で挟まれたループのことを「分類処理ループ」と記載することがある。なお、分類処理ループでは、追加対象のルールに対応するハッセ図中のノードのことを、追加するノードと記載することがある。 Next, a loop process sandwiched between loop ends L31 and L32 is performed. A loop sandwiched between loop ends L31 and L32 may be referred to as a "classification processing loop". In the classification processing loop, the node in the Hasse diagram corresponding to the rule to be added may be referred to as the node to be added.

包含関係決定部33は、調査対象の子ノードと調査対象の子ノードの派生ノードの中から処理対象のノードを特定する(ステップS45)。包含関係決定部33は、処理対象のノードと追加するノードの間で、各ノードに対応付けられたルールの送信元IPアドレスの包含関係を決定する(ステップS46)。次に、包含関係決定部33は、処理対象のノードと追加するノードの間で、各ノードに対応付けられたルールの宛先IPアドレスの包含関係を決定する(ステップS47)。包含関係決定部33は、処理対象のノードと追加するノードの間で、各ノードに対応付けられたルールの送信元ポートの包含関係を決定する(ステップS48)。包含関係決定部33は、処理対象のノードと追加するノードの間で、各ノードに対応付けられたルールの宛先ポートの包含関係を決定する(ステップS49)。包含関係決定部33は、処理対象のノードと追加するノードの間で、各ノードに対応付けられたルールのプロトコルの包含関係を決定する(ステップS50)。包含関係決定部33は、ステップS46~S50で求めた包含関係に基づいて、処理対象のノードと追加するノードの関係をパターン1~4のいずれかに分類する。 The inclusion relation determining unit 33 identifies the node to be processed from among the child node to be investigated and the derived nodes of the child node to be investigated (step S45). The inclusion relation determination unit 33 determines the inclusion relation of the source IP address of the rule associated with each node between the node to be processed and the node to be added (step S46). Next, the inclusion relationship determination unit 33 determines the inclusion relationship of the destination IP addresses of the rules associated with each node between the node to be processed and the node to be added (step S47). The inclusion relation determination unit 33 determines the inclusion relation of the transmission source port of the rule associated with each node between the node to be processed and the node to be added (step S48). The inclusion relationship determination unit 33 determines the inclusion relationship of the destination port of the rule associated with each node between the node to be processed and the node to be added (step S49). The inclusion relationship determination unit 33 determines the inclusion relationship of the protocol of the rule associated with each node between the node to be processed and the node to be added (step S50). The inclusion relationship determination unit 33 classifies the relationship between the node to be processed and the node to be added into one of patterns 1 to 4 based on the inclusion relationships obtained in steps S46 to S50.

例えば、ルール5のノードが処理対象のノードであり、追加対象のルールがルール56であるとする。ここで、ルール5が適用される送信元IPアドレスは、ルール56が適用されるパケットの送信元IPアドレスの範囲を包含し、ルール5が適用される宛先IPアドレスはルール56が適用されるパケットの宛先IPアドレスの範囲を包含するとする。また、ルール5が適用される送信元ポートは、ルール56が適用されるパケットの送信元ポートの範囲を包含し、ルール5が適用される宛先ポートはルール56が適用されるパケットの宛先ポートの範囲を包含するとする。さらに、ルール5が適用されるプロトコルは、ルール56が適用されるパケットのプロトコルを包含しているとする。この場合、包含関係決定部33は、ルール5はルール56を包含すると判定する。すなわち、ルール5とルール56の関係はパターン1である。 For example, assume that the node of rule 5 is the node to be processed and the rule to be added is rule 56 . Here, the source IP address to which rule 5 is applied includes the range of source IP addresses of packets to which rule 56 is applied, and the destination IP address to which rule 5 is applied is the range of the packet to which rule 56 is applied. range of destination IP addresses. Also, the source port to which rule 5 is applied includes the range of the source port of the packet to which rule 56 is applied, and the destination port to which rule 5 is applied is the destination port of the packet to which rule 56 is applied. Suppose it encompasses the range. Furthermore, it is assumed that the protocol to which rule 5 is applied includes the packet protocol to which rule 56 is applied. In this case, the inclusion relationship determination unit 33 determines that rule 5 includes rule 56 . That is, the relationship between rule 5 and rule 56 is pattern 1 .

包含関係決定部33は、調査対象の子ノードと調査対象の子ノードの派生ノードの全てを処理対象としたかを判定する(ループ端L32)。調査対象の子ノードと調査対象の子ノードの派生ノードの全てを処理対象としていない場合、包含関係決定部33は、ステップS45以降の処理を繰り返す(ループ端L32でNo)。例えば、包含関係決定部33は、ステップS45において処理対象のノードをノードaに設定して、以降の処理を行うことができる。例えば、ステップS46において、包含関係決定部33は、ルールaが適用される送信元IPアドレスは、ルール56が適用されるパケットの送信元IPアドレスの範囲と重複しないと判定したとする。すると、その後のステップS47~S50の包含関係の結果によらず、包含関係決定部33は、ルールaとルール56の関係はパターン4であると判定する。 The inclusive relationship determination unit 33 determines whether all of the child node to be investigated and the derived nodes of the child node to be investigated have been processed (loop end L32). If not all of the child node to be investigated and the derived nodes of the child node to be investigated are to be processed, the inclusion relationship determination unit 33 repeats the processes after step S45 (No at loop end L32). For example, the inclusion relation determining unit 33 can set the node to be processed to the node a in step S45 and perform the subsequent processes. For example, in step S46, the inclusion relationship determination unit 33 determines that the source IP address to which rule a is applied does not overlap the range of source IP addresses of packets to which rule 56 is applied. Then, the inclusion relation determining unit 33 determines that the relation between rule a and rule 56 is pattern 4, regardless of the inclusion relation results in steps S47 to S50.

一方、調査対象の子ノードと調査対象の子ノードの派生ノードの全てを処理対象とした場合、包含関係決定部33は、ステップS42で特定した子ノードの全てを処理対象としたかを判定する(ループ端L32でYes、ループ端L22)。特定した子ノードの全てを処理対象としていない場合、包含関係決定部33は、ステップS43以降の処理を繰り返す(ループ端L22でNo)。一方、特定した子ノードの全てを処理対象とした場合、包含関係決定部33は処理を終了する(ループ端L22でYes)。 On the other hand, if all of the child node to be investigated and the derived nodes of the child node to be investigated are to be processed, the inclusion relationship determination unit 33 determines whether all of the child nodes identified in step S42 are to be processed. (Yes at loop end L32, loop end L22). If not all of the specified child nodes are to be processed, the inclusion relationship determining unit 33 repeats the processes from step S43 (No at loop end L22). On the other hand, if all of the specified child nodes are to be processed, the inclusion relationship determination unit 33 ends the process (Yes at loop end L22).

図13Aと図13Bに示す処理がハッセ図中の1つのレイヤについて行われた後で、処理を行ったレイヤの下のレイヤについても。図13Aと図13Bに示す処理が行われる。例えば、ルール1をステップS41での注目するノードにした処理が終わると、次に、ルール5のノードを注目するノードとして、図13Aと図13Bに示す処理が行われる。その後も、ハッセ図中の最下層のレイヤのノードと追加対象のルールとの間の包含関係が求められるまで、図13Aと図13Bに示す処理が行われる。 After the processing shown in FIGS. 13A and 13B has been performed for one layer in the Hasse diagram, also for the layer below the processed layer. The processing shown in FIGS. 13A and 13B is performed. For example, after the process of setting rule 1 as the node of interest in step S41, the process shown in FIGS. 13A and 13B is performed next with the node of rule 5 as the node of interest. After that, the processes shown in FIGS. 13A and 13B are performed until the inclusive relationship between the node of the lowest layer in the Hasse diagram and the rule to be added is obtained.

なお、図13Aと図13Bに示す処理は一例であり、実装に応じて処理は変更され得る。例えば、ステップS46~S50で行われる包含関係の決定処理の順序は、任意に変更され得る。 Note that the processing shown in FIGS. 13A and 13B is an example, and the processing may be changed according to implementation. For example, the order of the inclusion relationship determination process performed in steps S46 to S50 can be arbitrarily changed.

探索部34は、図13Aと図13Bに示す処理によって得られた包含関係を用いて、ネットワーク中に設定されている全てのルールの全体を表すハッセ図中で、追加対象のルールに対応するノードを追加する位置を探索する。また、追加対象のルールを追加することにより、新たな派生ルールが発生する場合には、探索部34は、新たな派生ルールを登録するための処理も行う。 13A and 13B, the search unit 34 finds a node corresponding to the rule to be added in a Hasse diagram representing all rules set in the network. Search for a position to add . Further, when a new derived rule is generated by adding a rule to be added, the searching unit 34 also performs processing for registering the new derived rule.

図14は、ルールの追加によって派生ルールが発生する場合の処理の例を説明するフローチャートである。図14の処理では、変数nと定数Nが使用される。変数nは、処理対象としたルールの数の計数に使用される。定数Nは探索ノードの総数である。探索部34は、変数nを1に設定する(ステップS61)。探索部34は、追加対象のルールがn番目のルールとの間でパターン3の関係にあるかを判定する(ステップS62)。追加対象のルールがn番目のルールとの間でパターン3の関係にない場合、追加対象のルールは、他のルールとパターン1、パターン2、パターン4のいずれかである(ステップS62でNo)。この場合、追加対象のルールを追加してもn番目のルールとの重複による派生ルールは発生しない。 FIG. 14 is a flowchart for explaining an example of processing when a derived rule is generated by adding a rule. Variable n and constant N are used in the process of FIG. A variable n is used to count the number of rules to be processed. The constant N is the total number of search nodes. The search unit 34 sets the variable n to 1 (step S61). The search unit 34 determines whether the rule to be added has a pattern 3 relationship with the n-th rule (step S62). If the rule to be added does not have the pattern 3 relationship with the n-th rule, the rule to be added is one of the other rules and pattern 1, pattern 2, or pattern 4 (No in step S62). . In this case, even if the rule to be added is added, no derived rule is generated due to duplication with the n-th rule.

一方、追加対象のルールがn番目のルールとの間でパターン3の関係にある場合、追加対象のルールを追加することにより、追加対象のルールとn番目のルールの両方が適用される範囲を適用範囲とする派生ルールが発生する(ステップS62でYes)。そこで、探索部34は、追加対象のルールとn番目のルールの両方の適用を意味する派生ルールを識別する識別情報を生成する(ステップS63)。探索部34は、生成した識別情報を、追加対象のルールと対応付けて派生ルールマップ43に記録する(ステップS64)。探索部34は、生成した識別情報で識別されるルールに対応するルールをハッセ図に追加する(ステップS65)。 On the other hand, if the rule to be added has a relationship of pattern 3 with the n-th rule, adding the rule to be added extends the range to which both the rule to be added and the n-th rule are applied. A derived rule to be applied is generated (Yes in step S62). Therefore, the search unit 34 generates identification information for identifying a derived rule that means application of both the rule to be added and the n-th rule (step S63). The search unit 34 records the generated identification information in the derived rule map 43 in association with the rule to be added (step S64). The search unit 34 adds a rule corresponding to the rule identified by the generated identification information to the Hasse diagram (step S65).

ステップS62でNoと判定した場合か、ステップS65の処理が終わった場合、探索部34はn番目のルールについて処理を終了するために、nの値を1つインクリメントする(ステップS66)。探索部34は、変数nを定数Nと比較する(ステップS67)。変数nが定数N以下の場合、探索部34は、ステップS62以降の処理を繰り返す(ステップS67でNo)。一方、変数nが定数Nを超えると、探索部34は、ステップ処理を終了する(ステップS67でYes)。 If it is determined No in step S62 or if the process of step S65 is finished, the search unit 34 increments the value of n by 1 to finish the process for the n-th rule (step S66). The search unit 34 compares the variable n with the constant N (step S67). When the variable n is equal to or less than the constant N, the search unit 34 repeats the processes after step S62 (No in step S67). On the other hand, when the variable n exceeds the constant N, the search unit 34 terminates the step processing (Yes in step S67).

図15は、探索処理により得られたハッセ図の例である。図15の例では、ルール56は、ルール27とルール28の両方が適用されることを意味する派生ルールmに包含される部分を有する。さらに、ルール27に包含されているルール40とルール56の間で適用範囲が一部重複している。このため、図14に示す処理により、探索部34は、ルール40とルール56の両方を適用することを意味する派生ルールを派生ルールxとしている。従って、図15に示すルール56に対応するノードは、ルール56が適用される領域のうち、ルール56のみが適用される領域を表す。一方、派生ルールxに対応するノードは、ルール40とルール56の両方が適用される領域を表す。さらに、図15におけるルール40のノードに対応する領域は、ルール40の適用範囲のうち、ルール40のみが適用される領域となる。 FIG. 15 is an example of a Hasse diagram obtained by the search process. In the example of FIG. 15, rule 56 has a portion subsumed by derived rule m, which means that both rule 27 and rule 28 apply. Furthermore, there is some overlap in scope between rule 40 and rule 56 included in rule 27 . Therefore, by the processing shown in FIG. 14, the search unit 34 sets the derived rule x as the derived rule that means that both the rule 40 and the rule 56 are applied. Therefore, the node corresponding to the rule 56 shown in FIG. 15 represents the area to which only the rule 56 is applied among the areas to which the rule 56 is applied. On the other hand, the node corresponding to derived rule x represents the area to which both rule 40 and rule 56 apply. Furthermore, the area corresponding to the node of rule 40 in FIG.

以上説明したように、第1の実施形態にかかる探索方法では、追加対象のルールと適用範囲の重複がないルールは、包含関係を特定するための詳細な探索処理(図13A、図13B)の対象とならない。また、ネットワークに設定済みの各ルールについて、パターン4であるかの判定のための処理での計算は、図9などを参照しながら説明したように、包含関係を特定するための詳細な探索処理での計算量よりも少ない。例えば、図9のようにルール同士で適用範囲が重複するかを判定する場合、各パラメータの上限と下限の比較を行うだけの処理で済む。比較対象となるパラメータが送信元IPアドレスであるとする。この場合、追加対象のルールのアドレス空間の上限より重複するかの判定の対象のルールアドレスの下限の方が小さいかの判定と、追加対象のルールのアドレス空間の下限より重複するかの判定の対象のルールアドレスの上限の方が大きいかの判定をすればよい。一方、図13A、図13Bでの処理のように、各パラメータの包含関係を判定する場合には、各パラメータが重複するかを判定する場合の数倍以上の処理負荷がかかる。従って、情報処理装置10は、追加対象のルールとの包含関係を特定する処理を関係ルールと関係ルールの派生ルールに限定することで、処理負荷が大幅に軽減されている。すなわち、情報処理装置10では、図7に示すハッセ図の各ノードについて追加対象のルールとの間の包含関係を特定する場合に比べて、ルールの適用範囲を特定するための計算処理が軽減される。 As described above, in the search method according to the first embodiment, a rule whose scope does not overlap with a rule to be added is subjected to detailed search processing (FIGS. 13A and 13B) for specifying an inclusion relationship. Not applicable. Also, for each rule already set in the network, the calculation in the process for determining whether it is pattern 4 is a detailed search process for identifying inclusion relationships, as described with reference to FIG. less computational complexity than in For example, when determining whether the applicable ranges of rules overlap as shown in FIG. 9, it is sufficient to simply compare the upper limit and lower limit of each parameter. Assume that the parameter to be compared is the source IP address. In this case, it is determined whether the lower limit of the address space of the rule to be added is smaller than the upper limit of the address space of the rule to be added, and whether it overlaps the lower limit of the address space of the rule to be added. It suffices to determine whether the upper limit of the target rule address is larger. On the other hand, as in the processing in FIGS. 13A and 13B, when judging the inclusive relationship of each parameter, the processing load is several times more than when judging whether each parameter overlaps. Accordingly, the processing load of the information processing apparatus 10 is significantly reduced by limiting the process of specifying the inclusion relationship with the rule to be added to the relational rule and the derivative rule of the relational rule. That is, in the information processing apparatus 10, the calculation processing for specifying the scope of application of the rule is reduced compared to the case of specifying the inclusion relationship between each node of the Hasse diagram shown in FIG. 7 and the rule to be added. be.

<第2の実施形態>
第2の実施形態では、複数のルールを一度に設定する場合の実施形態について説明する。第2の実施形態を実施する情報処理装置10は順序決定部35を備えるものとする。
<Second embodiment>
In the second embodiment, an embodiment in which a plurality of rules are set at once will be described. The information processing apparatus 10 that implements the second embodiment is assumed to include an order determination unit 35 .

複数のルールをネットワークに設定する場合、ハッセ図上で上のレイヤに書かれるノードに対応するルールほど、そのルールが包含するルール数やそのルールから派生するルール数が多いことが予測される。このため、ハッセ図上で上のレイヤに書かれるノードを、他のノードの後から追加する場合、第1の実施形態を適用したとしても多数のルールとの比較を行うことになる。例えば、図15のハッセ図のルール1~ルール4、および、ルール6~ルール56が追加された後にルール5を追加する場合、ルール5との間の包含関係が調査される対象となる処理ルール(関係ルール)は、ルール2、ルール7、ルール12~ルール56となる。さらに、ルール5の追加前に追加されている派生ルールのうち関係ルールから派生したルールについても、ルール5との間で包含関係が調査される対象となる。 When multiple rules are set in a network, it is expected that the rules corresponding to nodes written in higher layers on the Hasse diagram will contain more rules and the number of rules derived from those rules. Therefore, when a node written in an upper layer on the Hasse diagram is added after another node, even if the first embodiment is applied, comparison with many rules is performed. For example, when adding rule 5 after adding rules 1 to 4 and rules 6 to 56 in the Hasse diagram of FIG. (Relationship rules) are rule 2, rule 7, rule 12 to rule 56. Furthermore, among the derived rules added before rule 5 is added, rules derived from relational rules are also subject to investigation of inclusion relationships with rule 5 .

このように、ハッセ図上で上のレイヤに記載されるノードほど、後から追加する場合に追加処理にかかる計算量が多くなる。そこで、第2の実施形態では、順序決定部35は、ハッセ図上で上のレイヤにくる確率の高いルールから先にネットワークに追加してハッセ図を生成するように、追加処理対象のルールの追加処理の順序を決定する。ハッセ図上で上のレイヤにくる確率の高いルールは、関係ルールの数が多いことが予測される。そこで、順序決定部35は、追加対象のルールのうち、関係ルールの数が多いルールほど先に追加処理が行われるように順序を決定する。 In this way, the higher the node described in the Hasse diagram, the greater the amount of calculation required for the addition process when added later. Therefore, in the second embodiment, the order determination unit 35 selects the rules to be added so that the Hasse diagram is generated by adding the rules that are likely to be in the upper layers in the Hasse diagram first to the network. Determines the order of additional processing. A rule with a high probability of coming to the upper layer on the Hasse diagram is expected to have a large number of related rules. Therefore, the order determining unit 35 determines the order so that the rule having the larger number of related rules among the rules to be added is added first.

図16は、ルールを追加する順序の決定方法の例を説明する図である。図16では、変数xと定数Xを用いる。変数xは処理したルール数の計数に使用される。定数Xは追加するルールの総数である。順序決定部35は、変数xを1に設定する(ステップS71)。特定部31は、x番目の追加対象のルールについて関係ルールを求め、得られた結果を順序決定部35に出力する。順序決定部35は、特定部31から得られた情報を用いて、x番目の追加対象のルールについて関係ルールの数(Rnum)を求める(ステップS72)。順序決定部35は変数xを1つインクリメントして、変数xを定数Xと比較する(ステップS73、S74)。変数xが定数X以下の場合、ステップS72以降の処理が繰り返される(ステップS74でNo)。一方、変数xが定数Xを超えた場合、全ての追加対象のルールについて、関係ルールの数が求められている(ステップS74でNo)。そこで、順序決定部35は、Rnumが多い順に各ルールの追加処理の順序を決定する(ステップS75)。 FIG. 16 is a diagram illustrating an example of a method for determining the order of adding rules. In FIG. 16, variable x and constant X are used. The variable x is used to count the number of rules processed. The constant X is the total number of rules to add. The order determination unit 35 sets the variable x to 1 (step S71). The identifying unit 31 obtains a relational rule for the x-th rule to be added, and outputs the obtained result to the order determining unit 35 . The order determining unit 35 obtains the number of related rules (Rnum) for the x-th rule to be added using the information obtained from the specifying unit 31 (step S72). The order determination unit 35 increments the variable x by one and compares the variable x with the constant X (steps S73 and S74). If the variable x is equal to or less than the constant X, the processes after step S72 are repeated (No in step S74). On the other hand, when the variable x exceeds the constant X, the number of related rules has been obtained for all rules to be added (No in step S74). Therefore, the order determination unit 35 determines the order of adding processing for each rule in descending order of Rnum (step S75).

なお、関係ルールの特定方法やルールを追加する順序の決定後の各ルールの追加処理は、第2の実施形態でも第1の実施形態と同様である。 Note that the method of specifying the relational rule and the process of adding each rule after determining the order of adding the rules are the same in the second embodiment as in the first embodiment.

図17は、ネットワークに設定される各ルールの適用領域の探索にかかる時間の短縮例である。図17のグラフの縦軸は、PECの領域分けにかかる時間である。図17のグラフの横軸は、ネットワークに設定されるルールの総数である。なお、ネットワークに設定されるルールの数は、一般にネットワークの規模が大きくなるほど大きくなるので、ネットワークに設定されるルールの数は、ネットワーク規模を表す指標であるといえる。 FIG. 17 shows an example of reducing the time required to search for the application area of each rule set in the network. The vertical axis of the graph in FIG. 17 is the time required for PEC segmentation. The horizontal axis of the graph in FIG. 17 is the total number of rules set in the network. Since the number of rules set in a network generally increases as the scale of the network increases, it can be said that the number of rules set in the network is an index representing the scale of the network.

図17のグラフの黒丸は、実施形態にかかる方法を適用していない場合に、各ルールの適用領域の探索にかかる時間の例である。一方、白丸は、第1および第2の実施形態にかかる探索方法を適用した場合に各ルールの適用領域の探索にかかる時間の例である。ネットワークに設定されるルール数が比較的小さい間は両者に大きな違いはないが、ネットワークに設定されるルール数が10000を超えるあたりから白丸のほうが黒丸よりも低い値となる。また、白丸と黒丸の所要時間の差は、ネットワークに設定されるルール数の増加に伴って増加する。例えば、ルール数が80000にもなる大規模ネットワークでは、実施形態にかかる探索方法を用いない場合、各ルールの適用領域を特定するために7時間近くかかる。しかし、第1および第2の実施形態を併用すると、ルール数が80000の大規模ネットワークでの各ルールの適用領域の特定が10分程度で行われる。 The black circles in the graph of FIG. 17 are examples of the time required to search the application area of each rule when the method according to the embodiment is not applied. On the other hand, the white circles are examples of the time required to search the application area of each rule when the search methods according to the first and second embodiments are applied. As long as the number of rules set in the network is relatively small, there is not much difference between the two, but when the number of rules set in the network exceeds 10000, the white circles have a lower value than the black circles. Also, the difference in the required time between the white circles and the black circles increases as the number of rules set in the network increases. For example, in a large-scale network with 80,000 rules, it takes nearly seven hours to identify the application area of each rule without using the search method according to the embodiment. However, if the first and second embodiments are used together, it takes about 10 minutes to identify the application area of each rule in a large-scale network with 80,000 rules.

このように、第1の実施形態と第2の実施形態を用いることにより、追加対象のルールとの間の包含関係を特定する対象は、関係ルールと関係ルールから派生した派生ルールに限定される。また、関係ルール数の多いルールから順に設定されるので、処理対象とする関係ルールの数は、ルールの追加順序を無作為に決定する場合に比べて少なくなる。従って、第1および第2の実施形態にかかる探索方法では、処理ルールの組み合わせを、その組み合わせのもととなった各ルールと別個の派生ルールとして記載する場合での、各処理ルールの適用範囲の包含関係を探索するための処理が効率化される。処理ルールの組み合わせを別個の派生ルールとしたときの各処理ルールの適用範囲の包含関係の特定処理が効率化されることにより、ネットワークの検証処理が効率化される。 In this way, by using the first embodiment and the second embodiment, the target for specifying the inclusion relationship between the rule to be added is limited to the relational rule and the derived rule derived from the relational rule. . In addition, since rules are set in descending order of the number of relational rules, the number of relational rules to be processed is smaller than in the case of randomly determining the addition order of rules. Therefore, in the search methods according to the first and second embodiments, the scope of application of each processing rule when a combination of processing rules is described as a derived rule separate from each rule that is the basis of the combination The processing for searching for the inclusion relationship of is made efficient. The network verification process is made more efficient by streamlining the process of identifying the inclusion relationship of the scope of application of each process rule when a combination of process rules is made into separate derived rules.

<その他>
なお、実施形態は上記に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
<Others>
Note that the embodiment is not limited to the above, and various modifications are possible. Some examples are given below.

例えば、図13Aと図13Bを用いて説明した分類処理ループの処理において、図9のフローチャートのように、包含関係があるかを判定する各パラメータのいずれかが重なりがない場合には、他のパラメータの包含関係を判定せずにパターン4と判定しても良い。このように処理を変形すると、例えば、ステップS46で処理対象のノードと追加するノードの間で送信元IPアドレスの重複がないと判定すると、ステップS47~S50の処理を省略した上で、パターン4に分類できる。このため、分類処理ループでの処理負荷がさらに低減される。 For example, in the processing of the classification processing loop described with reference to FIGS. 13A and 13B, as shown in the flowchart of FIG. Pattern 4 may be determined without determining the inclusion relationship of the parameters. If the process is modified in this way, for example, if it is determined in step S46 that there is no duplication of source IP addresses between the node to be processed and the node to be added, the processes of steps S47 to S50 are omitted and pattern 4 is executed. can be classified into Therefore, the processing load in the classification processing loop is further reduced.

以上の説明で述べたテーブルやルールなどは一例であり、テーブル中の情報要素や各ルールの定義に使用されるパラメータは実装に応じて変更され得る。例えば、ACLルールの定義には5タプルの情報のうちの一部のみが使用されても良い。さらに、プロトコルなどのパラメータの指定方法も実装に応じて任意に変更され得る。例えば、プロトコルの指定にプロトコル番号が用いられてもよく、また、プロトコル名が用いられても良い。 The tables and rules described above are examples, and the information elements in the tables and the parameters used to define each rule may be changed according to the implementation. For example, only part of the 5-tuple information may be used to define the ACL rule. Furthermore, the method of specifying parameters such as protocols can be arbitrarily changed according to the implementation. For example, a protocol number may be used to designate a protocol, or a protocol name may be used.

派生ルールマップ43には、複数のルールの組み合わせに含まれる1つのルールに対応付けて派生ルールが記録されるが、実装に応じて派生ルールマップ43の対応付けは変更され得る。例えば、派生ルールで組み合わされる個々のルールに対応付けて派生ルールが記録されても良い。 Derived rules are recorded in the derived rule map 43 in association with one rule included in a combination of multiple rules, but the association of the derived rule map 43 can be changed depending on the implementation. For example, derived rules may be recorded in association with individual rules that are combined in derived rules.

10 情報処理装置
20 入出力処理部
21 入力部
22 出力部
30 制御部
31 特定部
32 リスト生成部
33 包含関係決定部
34 探索部
35 順序決定部
40 記憶部
41 ルール情報
42 関係ルールマップ
43 派生ルールマップ
44 調査リスト
101 プロセッサ
102 メモリ
103 入力装置
104 出力装置
105 バス
106 記憶装置
107 可搬記憶媒体駆動装置
108 可搬記憶媒体
109 ネットワークインタフェース
10 information processing device 20 input/output processing unit 21 input unit 22 output unit 30 control unit 31 identification unit 32 list generation unit 33 inclusion relationship determination unit 34 search unit 35 order determination unit 40 storage unit 41 rule information 42 relationship rule map 43 derivation rule Map 44 Study List 101 Processor 102 Memory 103 Input Device 104 Output Device 105 Bus 106 Storage Device 107 Portable Storage Media Drive 108 Portable Storage Media 109 Network Interface

Claims (7)

パケットの処理を定義するためにネットワークに設定された複数のルールのうちで、前記ネットワークに追加する追加ルールの適用対象となる対象パケットの1つ以上に適用可能な関係ルールを特定し、
前記関係ルールの各々について、当該関係ルールと前記追加ルールとの間の包含関係を決定し、
前記関係ルールを少なくとも1つ含む、前記複数のルールのうちの2つ以上のルールの組み合わせの各々について、当該組み合わせと前記追加ルールとの間の包含関係を決定し、
前記関係ルールおよび前記組み合わせについて決定された包含関係を用いて、前記対象パケットおよび前記複数のルールの各々の間での包含関係を探索する
処理を情報処理装置に行わせることを特徴とする探索プログラム。
Identifying, from among a plurality of rules set in a network for defining packet processing, applicable rules applicable to one or more target packets to which additional rules to be added to the network are applied;
determining, for each of the relationship rules, an inclusion relationship between the relationship rule and the additional rule ;
determining, for each combination of two or more rules of the plurality of rules , including at least one of the relationship rule, an inclusion relationship between the combination and the additional rule ;
A search program for causing an information processing device to search for an inclusion relationship between each of the target packet and the plurality of rules using the relationship rule and the inclusion relationship determined for the combination. .
前記複数のルールから、前記関係ルールとなるかを判定する判定対象ルールを選択し、
前記追加ルールが適用されるパケットの特定に使用される1つ以上のパラメータの各々について、前記追加ルールでの当該パラメータの値と、前記判定対象ルールが適用されるパケットの特定に使用される当該パラメータの値の間で重複するかを判定し、
前記1つ以上のパラメータの全てについて重複すると判定した場合に、前記判定対象ルールを前記関係ルールに設定する
処理を前記情報処理装置に行わせることを特徴とする請求項1に記載のプログラム。
selecting a determination target rule for determining whether or not it is the relationship rule from the plurality of rules;
For each of one or more parameters used to identify the packet to which the additional rule is applied, the value of the parameter in the additional rule and the value of the parameter used to identify the packet to which the determination target rule is applied Determines if there is overlap between the values of the parameters,
2. The program according to claim 1, causing the information processing device to perform a process of setting the determination target rule to the relation rule when it is determined that all of the one or more parameters overlap.
前記情報処理装置は、前記複数のルールに含まれる第1のルールと第2のルールが重複して適用されるパケットが存在し得る場合に、前記第1のルールと前記第2のルールとを組み合わせた第3のルールを、前記第2のルールから派生した派生ルールとして、前記第2のルールに対応付けて記録する派生ルールマップを有し、
前記判定対象ルールが前記関係ルールに設定された場合、前記派生ルールマップで前記判定対象ルールに対応付けられた前記派生ルールを、前記追加ルールとの間の包含関係を特定する前記組み合わせに設定する
処理を前記情報処理装置に行わせることを特徴とする請求項2に記載のプログラム。
The information processing device, when there may be a packet to which the first rule and the second rule included in the plurality of rules are applied in duplicate, divides the first rule and the second rule. a derived rule map that records the combined third rule as a derived rule derived from the second rule in association with the second rule;
When the determination target rule is set to the relationship rule, the derived rule associated with the determination target rule in the derived rule map is set to the combination specifying an inclusion relationship with the additional rule . 3. The program according to claim 2, causing the information processing apparatus to perform processing.
前記追加ルールを前記ネットワークに追加したときに、前記追加ルールと前記関係ルールのいずれかを組み合わせた他の派生ルールが適用されるパケットが存在し得る場合、前記他の派生ルールを特定する識別情報を生成し、
前記識別情報を前記追加ルールと対応付けて、前記派生ルールマップに記録する
処理を前記情報処理装置に行わせることを特徴とする請求項3に記載のプログラム。
Identification information that identifies the other derived rule if, when the additional rule is added to the network, there may be a packet to which another derived rule combining the additional rule and the related rule is applied. to generate
4. The program according to claim 3, causing the information processing apparatus to perform a process of associating the identification information with the additional rule and recording it in the derived rule map.
前記情報処理装置に、
第1の追加ルールと第2の追加ルールを前記ネットワークに追加する場合、前記第1の追加ルールを追加する際の前記関係ルールの数である第1のルール数と、前記第2の追加ルールを追加する際の前記関係ルールの数である第2のルール数を求め、
前記第2のルール数が前記第1のルール数より大きい場合、前記第1の追加ルールおよび前記複数のルールの各々の間での包含関係を探索するより先に、前記第2の追加ルールおよび前記複数のルールの各々の間での包含関係を探索する
処理を行わせることを特徴とする請求項1~4のいずれか1項に記載のプログラム。
In the information processing device,
When adding a first additional rule and a second additional rule to the network, a first rule number, which is the number of the relationship rules when adding the first additional rule, and the second additional rule Obtaining a second number of rules, which is the number of said relationship rules when adding
If the second number of rules is greater than the first number of rules, prior to searching for an inclusion relationship between each of the first additional rule and the plurality of rules, the second additional rule and 5. The program according to any one of claims 1 to 4, wherein a process of searching for an inclusion relationship among each of said plurality of rules is performed.
パケットの処理を定義するためにネットワークに設定された複数のルールのうちで、前記ネットワークに追加する追加ルールの適用対象となる対象パケットの1つ以上に適用可能な関係ルールを特定し、
前記関係ルールの各々について、当該関係ルールと前記追加ルールとの間の包含関係を決定し、
前記関係ルールを少なくとも1つ含む、前記複数のルールのうちの2つ以上のルールの組み合わせの各々について、当該組み合わせと前記追加ルールとの間の包含関係を決定し、
前記関係ルールおよび前記組み合わせについて決定された包含関係を用いて、前記対象パケットおよび前記複数のルールの各々の間での包含関係を探索する
処理を情報処理装置が行うことを特徴とする探索方法。
Identifying, from among a plurality of rules set in a network for defining packet processing, applicable rules applicable to one or more target packets to which additional rules to be added to the network are applied;
determining, for each of the relationship rules, an inclusion relationship between the relationship rule and the additional rule ;
determining, for each combination of two or more rules of the plurality of rules, including at least one of the relationship rule, an inclusion relationship between the combination and the additional rule ;
A search method, wherein an information processing device searches for an inclusion relationship between each of the target packet and the plurality of rules, using the inclusion relationship determined for the relationship rule and the combination.
パケットの処理を定義するためにネットワークに設定された複数のルールのうちで、前記ネットワークに追加する追加ルールの適用対象となる対象パケットの1つ以上に適用可能な関係ルールを特定する特定部と、
前記関係ルールの各々について、当該関係ルールと前記追加ルールとの間の包含関係を決定するとともに、前記関係ルールを少なくとも1つ含む、前記複数のルールのうちの2つ以上のルールの組み合わせの各々について、当該組み合わせと前記追加ルールとの間の包含関係を決定する決定部と、
前記決定部で決定された包含関係を用いて、前記対象パケットおよび前記複数のルールの各々の間での包含関係を探索する探索部
を備えることを特徴とする情報処理装置。
a specifying unit that specifies, from among a plurality of rules set in a network for defining packet processing, a relevant rule applicable to one or more target packets to which an additional rule to be added to the network is applied; ,
each of a combination of two or more of the plurality of rules, comprising, for each of the relationship rules, determining an inclusion relationship between the relationship rule and the additional rule, and including at least one of the relationship rules; a determination unit that determines an inclusion relationship between the combination and the additional rule for
An information processing apparatus, comprising: a search unit that searches for an inclusion relationship between each of the target packet and the plurality of rules, using the inclusion relationship determined by the determination unit.
JP2019122728A 2019-07-01 2019-07-01 SEARCH PROGRAM, SEARCH METHOD, AND INFORMATION PROCESSING DEVICE Active JP7326930B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019122728A JP7326930B2 (en) 2019-07-01 2019-07-01 SEARCH PROGRAM, SEARCH METHOD, AND INFORMATION PROCESSING DEVICE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019122728A JP7326930B2 (en) 2019-07-01 2019-07-01 SEARCH PROGRAM, SEARCH METHOD, AND INFORMATION PROCESSING DEVICE

Publications (2)

Publication Number Publication Date
JP2021010098A JP2021010098A (en) 2021-01-28
JP7326930B2 true JP7326930B2 (en) 2023-08-16

Family

ID=74198603

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019122728A Active JP7326930B2 (en) 2019-07-01 2019-07-01 SEARCH PROGRAM, SEARCH METHOD, AND INFORMATION PROCESSING DEVICE

Country Status (1)

Country Link
JP (1) JP7326930B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006090781A1 (en) 2005-02-24 2006-08-31 Nec Corporation Filtering rule analysis method and system
CN102308302A (en) 2009-02-10 2012-01-04 日本电气株式会社 Policy management apparatus, policy management system, and method and program used for the same
US20160191466A1 (en) 2014-12-30 2016-06-30 Fortinet, Inc. Dynamically optimized security policy management
JP2017228857A (en) 2016-06-20 2017-12-28 富士通株式会社 Information processing apparatus, inspection method and control network system
JP2018046549A (en) 2016-09-13 2018-03-22 富士通株式会社 Network verification

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006090781A1 (en) 2005-02-24 2006-08-31 Nec Corporation Filtering rule analysis method and system
CN102308302A (en) 2009-02-10 2012-01-04 日本电气株式会社 Policy management apparatus, policy management system, and method and program used for the same
US20160191466A1 (en) 2014-12-30 2016-06-30 Fortinet, Inc. Dynamically optimized security policy management
JP2017228857A (en) 2016-06-20 2017-12-28 富士通株式会社 Information processing apparatus, inspection method and control network system
JP2018046549A (en) 2016-09-13 2018-03-22 富士通株式会社 Network verification

Also Published As

Publication number Publication date
JP2021010098A (en) 2021-01-28

Similar Documents

Publication Publication Date Title
Bhat et al. Var-CNN: A data-efficient website fingerprinting attack based on deep learning
US11777945B1 (en) Predicting suspiciousness of access between entities and resources
US10419462B2 (en) Event information access interface in data intake stage of a distributed data processing system
US9836623B2 (en) Anonymizing machine data events
CN111565205A (en) Network attack identification method and device, computer equipment and storage medium
EP2942731A1 (en) Identifying and securing sensitive data at its source
US11562064B2 (en) Machine learning-based security alert escalation guidance
US11372956B2 (en) Multiple input neural networks for detecting fraud
CN109286511B (en) Data processing method and device
US11558412B1 (en) Interactive security visualization of network entity data
US20220141188A1 (en) Network Security Selective Anomaly Alerting
Kumar et al. Analysis of intrusion detection in cyber attacks using DEEP learning neural networks
US11824729B2 (en) Generating a three-dimensional cityscape including a cluster of nodes
CN109753797A (en) For the intensive subgraph detection method and system of streaming figure
CN109710667A (en) A kind of shared realization method and system of the multisource data fusion based on big data platform
US20230139000A1 (en) Graphical User Interface for Presentation of Network Security Risk and Threat Information
JP7326930B2 (en) SEARCH PROGRAM, SEARCH METHOD, AND INFORMATION PROCESSING DEVICE
Dong et al. Bi-level selection via meta gradient for graph-based fraud detection
US11528294B2 (en) Systems and methods for automated threat detection
Lamba SR-MLC: Machine Learning Classifiers in Cyber Security-An Optimal Approach
JP2019153871A (en) Network management apparatus, network management method, network management program, and network system
Monakhov et al. A Machine-Synesthetic Approach To DDoS Network Attack Detection
US11184282B1 (en) Packet forwarding in a network device
CN115865492B (en) Variant flow generation method based on similarity orientation
CN115269126B (en) Cloud platform inverse affinity scheduling system based on cosine similarity

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220308

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230327

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230717

R150 Certificate of patent or registration of utility model

Ref document number: 7326930

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150