JP5088830B2 - Packet passing control method - Google Patents

Packet passing control method Download PDF

Info

Publication number
JP5088830B2
JP5088830B2 JP2008280121A JP2008280121A JP5088830B2 JP 5088830 B2 JP5088830 B2 JP 5088830B2 JP 2008280121 A JP2008280121 A JP 2008280121A JP 2008280121 A JP2008280121 A JP 2008280121A JP 5088830 B2 JP5088830 B2 JP 5088830B2
Authority
JP
Japan
Prior art keywords
packet
filtering
filtering information
communication network
storage unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008280121A
Other languages
Japanese (ja)
Other versions
JP2010109731A (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.)
Iwatsu Electric Co Ltd
Nippon Telegraph and Telephone West Corp
Nippon Telegraph and Telephone East Corp
Original Assignee
Iwatsu Electric Co Ltd
Nippon Telegraph and Telephone West Corp
Nippon Telegraph and Telephone East 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 Iwatsu Electric Co Ltd, Nippon Telegraph and Telephone West Corp, Nippon Telegraph and Telephone East Corp filed Critical Iwatsu Electric Co Ltd
Priority to JP2008280121A priority Critical patent/JP5088830B2/en
Publication of JP2010109731A publication Critical patent/JP2010109731A/en
Application granted granted Critical
Publication of JP5088830B2 publication Critical patent/JP5088830B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、ファイヤーウォールやルータなどの機能であるSPI(Stateful Packet Inspection)の技術を用いたパケット通過制御装置におけるパケット通過制御方法に関するものである。
The present invention relates to a packet passage control method in a packet passage control apparatus using SPI (Stateful Packet Inspection) technology which is a function of a firewall, a router, and the like.

ファイヤーウォールを通過するパケットのデータを読み取り、内容を判断して動的にポートを開放・閉鎖する技術としてSPIが存在する。この技術は、通常ソフトウエアを用いてCPUなどの中央演算装置で処理されている。さらに、中央演算装置におけるSPI処理を軽減する方法として、下記の特許文献1が公開されている。
特許第4137948号
SPI exists as a technique for reading the data of a packet passing through a firewall, determining the contents, and dynamically opening / closing a port. This technique is usually processed by a central processing unit such as a CPU using software. Further, as a method for reducing the SPI processing in the central processing unit, the following Patent Document 1 is disclosed.
Japanese Patent No. 4137948

前記特許文献1では、中央演算装置におけるSPI処理を軽減することのできる、パケット通過制御装置及びその方法を提供している。しかしながら、パケットのデータを読み取り、その内容を判断して動的にポート開放を行う手段において、伝送制御プロトコル(TCP)における通信開始判定のための状態監視が不十分であり、堅牢性が低いという問題がある。   Patent Document 1 provides a packet passage control apparatus and method that can reduce SPI processing in a central processing unit. However, in the means for dynamically opening the port by reading the data of the packet and judging its contents, the status monitoring for communication start determination in the transmission control protocol (TCP) is insufficient, and the robustness is low There's a problem.

本発明は、前記した従来技術に鑑みてなされたものであり、その目的は、パケット通過制御装置における堅牢性の高いパケット通過制御方法を提供することにある。   The present invention has been made in view of the above-described prior art, and an object thereof is to provide a robust packet passing control method in a packet passing control device.

上記目的を達成するために、本発明は、パケット通過制御部と中央演算処理部とを備え、一方の通信ネットワーク経路から受信したパケットを他方の通信ネットワーク経路へ通過させるか否かを制御するパケット通過制御装置におけるパケット通過制御方法であって、   In order to achieve the above object, the present invention includes a packet passage control unit and a central processing unit, and controls whether to allow a packet received from one communication network path to pass through the other communication network path. A packet passage control method in a passage controller,

パケットのフィルタ規則適合判定条件を示す全ての通信種別のパケットについてパケットの通過許可、廃棄、中央演算処理転送のいずれかを示す第1フィルタリング情報を前記パケット通過制御部のフィルタリング記憶部に登録し、   Registering the first filtering information indicating whether the packet is permitted to pass, discarding, or central processing transfer in the filtering storage unit of the packet passing control unit for all packets of communication types indicating the filter rule conformity determination condition of the packet,

受信した通信開始要求パケットが前記第1フィルタリング情報に一致する場合に、前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通信開始応答パケットについて、前記中央演算処理転送を示す第2フィルタリング情報を前記フィルタリング記憶部に登録し、   Second filtering information indicating the central processing transfer for a communication start response packet from the other communication network path to the one communication network path when the received communication start request packet matches the first filtering information Is registered in the filtering storage unit,

前記通信開始応答パケットが前記第2フィルタリング情報に一致する場合には、前記フィルタリング記憶部に登録された前記第2フィルタリング情報を削除し、前記一方の通信ネットワーク経路から前記他方の通信ネットワーク経路への通過、および前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通過、の両方の通過許可を示す第3フィルタリング情報を前記フィルタリング記憶部に登録し、   When the communication start response packet matches the second filtering information, the second filtering information registered in the filtering storage unit is deleted, and the one communication network path to the other communication network path is deleted. Registering in the filtering storage unit third filtering information indicating both passage and passage permission from the other communication network path to the one communication network path,

前記パケット通過制御部の通過処理手段が、前記受信したパケットに関連する一連のパケット処理について、前記フィルタリング記憶部に登録された前記第3フィルタリング情報に一致するか否かを判定し、一致している場合には前記中央演算処理部を介さずに通過処理を行なうようにした点に特徴がある。   The passage processing means of the packet passage control unit determines whether or not it matches the third filtering information registered in the filtering storage unit for a series of packet processing related to the received packet. If there is, the passage processing is performed without going through the central processing unit.

また、本発明は、パケット通過制御部と中央演算処理部とを備え、一方の通信ネットワーク経路から受信したパケットを他方の通信ネットワーク経路へ通過させるか否かを制御するパケット通過制御装置におけるパケット通過制御方法であって、   The present invention also provides a packet passing control apparatus that includes a packet passing control unit and a central processing unit, and controls whether or not a packet received from one communication network path is allowed to pass through to the other communication network path. A control method,

最も優先度の低いフィルタリング情報として、パケットのフィルタ規則適合判定条件を示す全ての通信種別のパケットについてパケットの通過許可、廃棄、中央演算処理転送のいずれかを示す制御種別である第1フィルタリング情報を前記パケット通過制御部のフィルタリング記憶部に登録し、   As the filtering information with the lowest priority, the first filtering information, which is a control type indicating any one of the packet passing permission, the discarding, and the central processing transfer for all the communication types indicating the packet filter rule conformity determination condition. Register in the filtering storage unit of the packet passage control unit,

前記パケット通過制御部の中央演算処理部転送手段が、通信開始要求パケットを受信した際に、当該パケットの通信種別と制御種別が、前記フィルタリング記憶部に登録されている前記第1フィルタリングに一致する場合に、その受信したパケットの少なくとも通信種別を前記中央演算処理部へ転送し、   When the central processing unit transfer means of the packet passage control unit receives the communication start request packet, the communication type and control type of the packet match the first filtering registered in the filtering storage unit In this case, at least the communication type of the received packet is transferred to the central processing unit,

前記中央演算処理部の第2フィルタリング情報登録手段が、前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通信開始応答パケットについて、前記制御種別が中央演算処理部への転送を示す第2フィルタリング情報を、前記第1フィルタリング情報より優先度の高い情報として優先的に前記フィルタリング記憶部に登録し、   The second filtering information registering means of the central processing unit has a second control type indicating a transfer to the central processing unit for the communication start response packet from the other communication network path to the one communication network path. Filtering information is preferentially registered in the filtering storage unit as information having a higher priority than the first filtering information,

前記中央演算処理部転送手段が、前記フィルタリング記憶部に登録された前記第2フィルタリング情報に一致するか否かを前記優先度順に判定し、一致している場合には前記第2フィルタリング情報の制御種別に従い、その受信したパケットの少なくとも通信種別を前記中央演算処理部へ転送し、   The central processing unit transfer means determines whether or not the second filtering information registered in the filtering storage unit matches with the order of priority, and controls the second filtering information if they match. According to the type, transfer at least the communication type of the received packet to the central processing unit,

前記中央演算処理部転送手段が、前記一方の通信ネットワーク経路から前記他方の通信ネットワーク経路への通信開始完了パケットについて、前記フィルタリング記憶部に登録された前記第1フィルタリング情報に一致するか否かを前記優先度順に判定し、一致している場合には前記第1フィルタリング情報の制御種別に従い、その受信したパケットの少なくとも通信種別を前記中央演算処理部へ転送し、   Whether the central processing unit transfer means matches the first filtering information registered in the filtering storage unit for a communication start completion packet from the one communication network path to the other communication network path. Determine in order of priority, and if they match, according to the control type of the first filtering information, transfer at least the communication type of the received packet to the central processing unit,

前記中央演算処理部の第3フィルタリング情報登録手段が、前記フィルタリング記憶部に登録された前記第2フィルタリング情報を削除し、前記一方の通信ネットワーク経路から前記他方の通信ネットワーク経路への通過、および前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通過、の両方の通過許可を示す第3フィルタリング情報を、前記第1フィルタリング情報より優先度の高い情報として優先的に前記フィルタリング記憶部に登録し、   The third filtering information registration means of the central processing unit deletes the second filtering information registered in the filtering storage unit, passes from the one communication network path to the other communication network path, and Third filtering information indicating permission to pass both from the other communication network path to the one communication network path is preferentially registered in the filtering storage unit as information having a higher priority than the first filtering information. And

前記パケット通過制御部の通過処理手段が、前記受信したパケットに関連する一連のパケット処理について、前記フィルタリング記憶部に登録された前記第3フィルタリング情報に一致するか否かを前記優先度順に判定し、一致している場合には前記中央演算処理部を介さずに通過処理を行なうようにした点に他の特徴がある。   The passage processing means of the packet passage control unit determines, in order of priority, whether or not the series of packet processing related to the received packet matches the third filtering information registered in the filtering storage unit. In the case of coincidence, there is another feature in that the passing process is performed without going through the central processing unit.

本発明によれば、通過処理手段、フィルタリング記憶部などを有するパケット通過制御部を、例えば1つのチップとしてまとめた回路構成とし、通過処理手段にパケットフィルタリングの処理を任せてCPUの処理軽減を行なう場合であっても、中央演算処理部が行う従来のパケットフィルタリングより堅牢性の高い通信を実現できる。   According to the present invention, a packet passage control unit having a passage processing unit, a filtering storage unit, and the like is configured as a single chip, for example, and the processing of the CPU is reduced by leaving the packet filtering processing to the passage processing unit. Even in this case, it is possible to realize communication with higher robustness than conventional packet filtering performed by the central processing unit.

また、パケット通過制御部のフィルタリング記憶部に、第1、第2、第3フィルタリング情報を登録することに関して、通信開始要求パケットについては前記第1フィルタリング情報と一致するか否かを判断し、一致する場合には第2フィルタリング情報を登録し、通信開始応答パケットが前記第2フィルタリング情報に一致するか否かを判断し、一致する場合には一方の通信ネットワーク経路から他方の通信ネットワーク経路への通過、および前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通過、の両方の通過許可を示す前記第3フィルタリング情報をフィルタリング記憶部に登録し、前記受信したパケットに関連する一連のパケット処理について、前記第3フィルタリング情報に一致するか否かを判定し、一致している場合には前記中央演算処理部を介さずに通過処理を行なうようにしたので、中央演算処理部が行う従来のパケットフィルタリングより堅牢性の高いパケット通過制御方法を提供することができる。   In addition, regarding registration of the first, second, and third filtering information in the filtering storage unit of the packet passage control unit, it is determined whether or not the communication start request packet matches the first filtering information. When the second filtering information is registered, it is determined whether or not the communication start response packet matches the second filtering information. If they match, the communication from one communication network path to the other communication network path is determined. The third filtering information indicating both the passage permission and the passage permission from the other communication network path to the one communication network path is registered in a filtering storage unit, and a series of packets related to the received packet For the process, it is determined whether or not it matches the third filtering information. Because if you are has to perform the passing process without going through the central processing unit, it is possible to provide a robust high packet transmission control method than traditional packet filtering central processing unit performs.

以下に、本発明を図面を参照して詳細に説明する。図1は、本発明のパケット通過制御方法の一実施形態が実施されるパケット通過制御装置の構成を示すブロック図である。   Hereinafter, the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a packet passage control apparatus in which an embodiment of the packet passage control method of the present invention is implemented.

図示されているように、パケット通過制御装置1は、例えばファイアーウォールやルータなどに組み込まれるパケット通過制御部2および中央演算処理部3から構成されている。   As shown in the figure, the packet passage control device 1 is composed of a packet passage control unit 2 and a central processing unit 3 incorporated in, for example, a firewall or a router.

前記パケット通過制御装置1は、WAN側のI/F(interface)11、LAN側のI/F(interface)12、フィルタリング処理部(中央演算処理部転送手段、通過処理手段)13、フィルタリング記憶部14および中央演算処理インタフェース(CPU/IF)15から構成されている。ここで、前記フィルタリング処理部13は、少なくともパケットの通過、廃棄、CPU転送の処理を行なう。また、前記フィルタリング記憶部14はフィルタリング情報が記録される記憶部である。また、前記中央演算処理インタフェース15は、CPU(中央演算処理部)16へ送信される情報を受付ける処理を行う。そしてこれらI/F(WAN)11、I/F(LAN)12、フィルタリング処理部13、フィルタリング記憶部14、中央演算処理インタフェース15は、転送処理の高速化を図るために半導体素子で構成したパケット通過制御部として、例えば1つのチップとしてまとめて回路構成されている。   The packet passing control device 1 includes a WAN-side I / F (interface) 11, a LAN-side I / F (interface) 12, a filtering processing unit (central processing unit transfer unit, passing processing unit) 13, a filtering storage unit 14 and a central processing interface (CPU / IF) 15. Here, the filtering processing unit 13 performs at least packet passing, discarding, and CPU transfer processing. The filtering storage unit 14 is a storage unit in which filtering information is recorded. Further, the central processing interface 15 performs processing for receiving information transmitted to a CPU (central processing unit) 16. These I / F (WAN) 11, I / F (LAN) 12, filtering processing unit 13, filtering storage unit 14, and central processing interface 15 are packets composed of semiconductor elements in order to speed up transfer processing. As the passage control unit, for example, a circuit is configured as a single chip.

前記フィルタリング情報とは、パケットの通信種別<通信サービス(TCP、UDP、HTTP、FTPなどのサービス)、フラグ種別(SYN、FINなど)、宛先IPアドレス、宛先ポート番号、送信元IPアドレス、送信元ポート番号などのフィルタ規則適合判定条件>を示す情報や、通過許可、廃棄、CPU転送の制御種別の情報であり、このフィルタイリング情報に基づいてフィルタリング処理部13がフィルタリングの処理を行う。   The filtering information includes packet communication type <communication service (services such as TCP, UDP, HTTP, FTP), flag type (SYN, FIN, etc.), destination IP address, destination port number, source IP address, source Information indicating a filter rule conformity determination condition> such as a port number, and information on control types of passage permission, discard, and CPU transfer. The filtering processing unit 13 performs filtering processing based on the filtering information.

次に、前記中央演算処理部3は、CPU16およびテーブル記憶部17から構成されている。CPU16は、機能的には、第1フィルタリング登録手段、第2フィルタリング情報登録手段、第2フィルタリング削除手段、第3フィルタリング登録手段、第3フィルタリング削除手段等を有し、主にフィルタリング処理部13で行うフィルタリング処理から外れた(つまりCPU転送された)パケットをパケット通過制御部から受信し、受信したフレームに対する転送先を検出する等のSPI処理を、予め内部で動作するソフトウエアに基づいて行う。また、テーブル記憶部17は、フィルタリングテーブルを有し、ネットワーク管理者などのユーザによって登録されたフィルタリング情報を記憶している。そして、SPI処理を行う際には、CPU16は、中央演算処理インタフェース15を介してフィルタリング処理部13から受付けたパケットの情報のみのフィルタリング処理を、テーブル記憶部17に記録されているフィルタリング情報に基づいて行なう。   Next, the central processing unit 3 includes a CPU 16 and a table storage unit 17. The CPU 16 functionally includes a first filtering registration unit, a second filtering information registration unit, a second filtering deletion unit, a third filtering registration unit, a third filtering deletion unit, and the like. An SPI process such as receiving a packet that deviates from the filtering process to be performed (that is, transferred by the CPU) from the packet passage control unit and detecting a transfer destination for the received frame is performed based on software operating in advance. The table storage unit 17 has a filtering table and stores filtering information registered by a user such as a network administrator. Then, when performing the SPI processing, the CPU 16 performs a filtering process on only the packet information received from the filtering processing unit 13 via the central processing interface 15 based on the filtering information recorded in the table storage unit 17. To do.

次に、前記フィルタリング記憶部14の構成について説明する。図2は、該フィルタリング記憶部14の構成を示す。   Next, the configuration of the filtering storage unit 14 will be described. FIG. 2 shows the configuration of the filtering storage unit 14.

図2に示されているように、フィルタリング記憶部14には、CPU転送候補エントリ、SPIエントリおよびフィルタエントリからなる3種類のフィルタリング情報が記録される。前記CPU転送候補エントリは、CPU16へ転送すると予め決められた特定のパケットについてのフィルタリング情報であり、例えばARPのパケットなどの、他の装置へ転送せずに自装置で処理するパケットに関するフィルタリング情報である。また、前記SPIエントリは、CPU16が動的に生成したフィルタリング情報であり、例えば、内部ネットワークのA装置から外部ネットワークのB装置へのHTTP接続を許可している場合において、当該パケットを受信した際に、B装置からA装置に対する返答のパケットが通過できるように、動的に生成した、B装置→A装置の通信方向のHTTP接続の通過を示すフィルタリング情報などである。また、前記フィルタエントリは、ユーザ登録作業によって予めテーブル記憶部17に記録されたものであり、パケット通過制御装置1の起動時などにCPU16によって自動的に書込まれる。また、このフィルタエントリにより1つセッションの通信開始要求パケット(SYN)などを検出する。なお、図においてはCPU転送候補エントリ、SPIエントリ、フィルタエントリの順に優先度が与えられている。優先度とはSPI処理として受信したパケットに一致するか否かを判定するための優先順位である。   As shown in FIG. 2, the filtering storage unit 14 stores three types of filtering information including a CPU transfer candidate entry, an SPI entry, and a filter entry. The CPU transfer candidate entry is filtering information about a specific packet that is determined in advance to be transferred to the CPU 16. For example, the CPU transfer candidate entry is filtering information about a packet that is processed by the own device without being transferred to another device, such as an ARP packet. is there. The SPI entry is filtering information dynamically generated by the CPU 16. For example, when an HTTP connection is permitted from the A device on the internal network to the B device on the external network, the SPI entry is received. In addition, filtering information indicating the passage of an HTTP connection in the communication direction from the B device to the A device is dynamically generated so that a reply packet from the B device to the A device can pass. The filter entry is recorded in the table storage unit 17 in advance by user registration work, and is automatically written by the CPU 16 when the packet passage control device 1 is activated. Further, a communication start request packet (SYN) of one session is detected by this filter entry. In the figure, priorities are given in the order of a CPU transfer candidate entry, an SPI entry, and a filter entry. The priority is a priority order for determining whether or not the received packet matches the SPI process.

図3は、フィルタリング記憶部14の構成とその中に形成されるフィルタリング情報登録状況テーブルとを示す図である。該フィルタリング情報登録状況テーブルとは、CPU16がフィルタリング記憶部14に登録したフィルタリング情報を記憶するためのテーブルである。   FIG. 3 is a diagram showing a configuration of the filtering storage unit 14 and a filtering information registration status table formed therein. The filtering information registration status table is a table for storing filtering information registered in the filtering storage unit 14 by the CPU 16.

次に、フィルタリング情報のフィルタリング記憶部14への第1の登録処理について説明する。   Next, the 1st registration process to the filtering memory | storage part 14 of filtering information is demonstrated.

パケット通過制御装置1が起動する際やCPU16の保持するフィルタリング情報登録状況テーブルの初期化の指示があった場合には、まず、CPU16はテーブル記憶部17からフィルタリング情報(第1フィルタリング情報)を読み込む。このフィルタリング情報は、図2で示したCPU転送候補エントリ及びフィルタエントリの各フィルタリング情報である。前記起動や初期化の際に、CPU16は、テーブル記憶部17から読み込んだフィルタリング情報(CPU転送候補エントリ、フィルタエントリ)をフィルタリング記憶部14に登録する。この登録において、フィルタエントリの制御種別が「通過」となっている情報については、「CPU転送」と書き換えて登録する。   When the packet passage control device 1 is activated or when there is an instruction to initialize the filtering information registration status table held by the CPU 16, the CPU 16 first reads the filtering information (first filtering information) from the table storage unit 17. . This filtering information is the filtering information of the CPU transfer candidate entry and the filter entry shown in FIG. At the time of startup or initialization, the CPU 16 registers the filtering information (CPU transfer candidate entry and filter entry) read from the table storage unit 17 in the filtering storage unit 14. In this registration, information whose filter entry control type is “pass” is rewritten as “CPU transfer” and registered.

CPU16はSPIエントリとなるフィルタリング情報についても登録処理を行う。このSPIエントリは、上記したように、パケット通過制御装置1がフィルタリングの処理を開始して動作している際に、セッションの通信開始要求パケット(SYN)、通信開始応答パケット(SYN&ACK)と通信開始完了パケット(ACK)の受信に基づいてCPU16が動的に生成したフィルタリング情報であり、CPU16はこの生成を行なうと、CPU転送候補エントリとフィルタエントリとの間にSPIエントリを登録していく。つまり、フィルタリング情報の中でCPU転送候補エントリを最も優先度を高く登録し、またSPIエントリを次に優先度を高く登録し、また最も優先度の低いフィルタリング情報としてフィルタエントリを登録する。CPU16はフィルタリング記憶部14に登録したフィルタリング情報については、登録したか否かを示すフラグなどをフィルタリング情報登録状況テーブルに書込んで記憶する。また優先度の順番などについてもフィルタリング情報登録状況テーブルに書込んで記憶する。   The CPU 16 also performs registration processing for filtering information that is an SPI entry. As described above, this SPI entry starts communication with the session start communication request packet (SYN), communication start response packet (SYN & ACK) when the packet passage control device 1 starts filtering processing and operates. The filtering information is dynamically generated by the CPU 16 based on the reception of the completion packet (ACK). When the CPU 16 generates the filtering information, the SPI entry is registered between the CPU transfer candidate entry and the filter entry. That is, the CPU transfer candidate entry is registered with the highest priority in the filtering information, the SPI entry is registered with the next highest priority, and the filter entry is registered as the filtering information with the lowest priority. For the filtering information registered in the filtering storage unit 14, the CPU 16 writes and stores a flag indicating whether or not the filtering information is registered in the filtering information registration status table. The order of priority is also written and stored in the filtering information registration status table.

さて、前記特許文献1に記載されているパケット通過制御方法では、例えば図8に示されるようになっていた。   Now, in the packet passing control method described in Patent Document 1, for example, as shown in FIG.

CPU16は初期化の指示を受け付けた場合や起動時において、テーブル記憶部17からCPU転送候補エントリとフィルタエントリの各制御情報を読み取って、フィルタリング記憶部14にCPU/IF15を介して登録する。この最初のフィルタリング情報の登録が完了すると、SPIの処理を伴うパケットフィルタリングの処理を開始する。   The CPU 16 reads the control information of the CPU transfer candidate entry and the filter entry from the table storage unit 17 when receiving an initialization instruction or at the time of activation, and registers them in the filtering storage unit 14 via the CPU / IF 15. When the registration of the first filtering information is completed, packet filtering processing accompanied by SPI processing is started.

図示されているように、LAN側のI/F12が通信開始要求パケット(パケットA)を受け付けると、パケット通過制御部(2)はフィルタリング記憶部14に記録されているフィルタリング情報を優先度の高い順に参照し、パケットAと一致するフィルタリング情報があるか否かを判定する。ここで、一致するフィルタリング情報があると判定されると、その制御情報はCPU転送(フィルタエントリの制御種別が通過である場合には、登録時に書き換えられて全てCPU転送となっている)であるので、パケットAをCPU16に転送する。CPU16は、パケットAを受信すると、該パケットAに関するSPIエントリを生成する処理を開始する。この時、CPU16はSPIエントリ(11)(12)を生成する。ここに、SPIエントリ(11)は、パケットAを初回(SYN)のセッションとする当該セッションにおける他のパケットのうちI/F11からI/F12へ通過するパケットのためのフィルタリング情報である。また、SPIエントリ(12)は、パケットAを初回(SYN)のセッションとした当該セッションのパケットのうちI/F12からI/F11へ通過するパケット(FIN,RST=0)のためのフィルタリング情報である。CPU16は、この生成したSPIエントリ(11)(12)をフィルタリング記憶部14に登録する。   As shown in the figure, when the I / F 12 on the LAN side accepts the communication start request packet (packet A), the packet passage control unit (2) sets the filtering information recorded in the filtering storage unit 14 to a higher priority. Reference is made in order to determine whether there is filtering information that matches packet A. Here, if it is determined that there is matching filtering information, the control information is CPU transfer (if the control type of the filter entry is passing, it is rewritten at the time of registration and is all CPU transfer). Therefore, the packet A is transferred to the CPU 16. When receiving the packet A, the CPU 16 starts processing for generating an SPI entry related to the packet A. At this time, the CPU 16 generates SPI entries (11) and (12). Here, the SPI entry (11) is filtering information for a packet passing from the I / F 11 to the I / F 12 among other packets in the session in which the packet A is the first session (SYN). The SPI entry (12) is filtering information for a packet (FIN, RST = 0) passing from the I / F 12 to the I / F 11 among the packets of the session in which the packet A is the first (SYN) session. is there. The CPU 16 registers the generated SPI entries (11) and (12) in the filtering storage unit 14.

次に、パケットAを初回(SYN)のセッションとした場合の当該セッションの他のパケットをI/F(WAN)11やI/F(LAN)12で受信する。フィルタリング処理部13はそれらの一連のパケットについてフィルタリング処理を行い、これらのパケットの通信種別が前記SPIエントリ(11)またはSPIエントリ(12)と一致すると、これらのSPIエントリ(11)(12)の制御種別が「通過」となっているので、前記パケットはCPU16に転送されずに、I/F(WAN)11で受信したパケットについては直接にI/F(LAN)12から出力し、逆にI/F(LAN)12で受信したパケットについては直接にI/F(WAN)11から出力する。   Next, when the packet A is the first (SYN) session, another packet of the session is received by the I / F (WAN) 11 or the I / F (LAN) 12. The filtering processing unit 13 performs a filtering process on the series of packets, and when the communication type of these packets matches the SPI entry (11) or the SPI entry (12), the SPI entry (11) (12) Since the control type is “pass”, the packet is not transferred to the CPU 16, and the packet received by the I / F (WAN) 11 is directly output from the I / F (LAN) 12. Packets received by the I / F (LAN) 12 are directly output from the I / F (WAN) 11.

以上のように、特許文献1に記された方法では、通信開始要求パケットAが予め登録されていた最初のフィルタリング情報と一致すると、SPIエントリ(11)(12)が生成・登録され、パケットAを初回(SYN)のセッションとした場合の当該セッションの他のパケットはI/F(WAN)11とI/F(LAN)12の間を直接伝送されるようになっている。このため、特許文献1に記載の方法は、前記したように、伝送制御プロトコル(TCP)における通信開始判定のための状態監視が不十分であり、堅牢性が低いという問題があった。   As described above, in the method described in Patent Document 1, when the communication start request packet A matches the first filtering information registered in advance, the SPI entries (11) and (12) are generated and registered, and the packet A When the first session (SYN) is set, other packets of the session are directly transmitted between the I / F (WAN) 11 and the I / F (LAN) 12. For this reason, as described above, the method described in Patent Document 1 has a problem that the state monitoring for the communication start determination in the transmission control protocol (TCP) is insufficient and the robustness is low.

本発明は、この問題を解消または軽減するものであり、本発明の一実施形態を以下に説明する。図4と図5はパケット通過制御装置1の処理フローの概要を示す図であり、図5は図4の続きの図である。また、図6はパケット通過制御装置1が受信するパケットと、そのパケットの受信に基づいて動的に生成したSPIエントリとを示すテーブルである。以下に、図4、5、6を用いてパケット通過制御装置1の動作(処理フロー)について説明する。   The present invention solves or reduces this problem, and an embodiment of the present invention will be described below. 4 and 5 are diagrams showing an outline of the processing flow of the packet passing control device 1, and FIG. 5 is a continuation of FIG. FIG. 6 is a table showing packets received by the packet passage control apparatus 1 and SPI entries dynamically generated based on the reception of the packets. The operation (processing flow) of the packet passage control device 1 will be described below with reference to FIGS.

まず、CPU16は初期化の指示を受付けた場合や起動時において、パケット通過制御装置テーブル記憶部17からCPU転送候補エントリとフィルタエントリの各フィルタリング情報を読み取って、フィルタリング記憶部14にCPU/IF15を介して登録する。この時CPU転送候補エントリを優先度を高く、またフィルタエントリをCPU転送候補エントリよりもフィルタ規則適用の優先度を低く登録する。そしてCPU16はその優先度の順番をフィルタリング情報登録状況テーブルに記録する。   First, the CPU 16 reads the filtering information of the CPU transfer candidate entry and the filter entry from the packet passage control device table storage unit 17 when receiving an initialization instruction or at the time of activation, and stores the CPU / IF 15 in the filtering storage unit 14. Register via. At this time, the CPU transfer candidate entry is registered with a higher priority, and the filter entry is registered with a lower priority for applying the filter rule than the CPU transfer candidate entry. Then, the CPU 16 records the priority order in the filtering information registration status table.

最初のフィルタリング情報の登録が完了すると、SPIの処理を伴うパケットフィルタリングの処理を開始する。いま、パケットAをLAN側のI/F12により受付けたとする(ステップS1)と、パケットAは図6に示すように、受信論理I/FがI/F(LAN)12、送信論理I/FがI/F(WAN)11、送信元IPアドレス(S−IP)がIP−x、宛先IPアドレス(D−IP)がIP−y、送信元ポート番号(S−Port)がPort−x、宛先ポート番号(D−Port)がPort−y、またTCPフラグがSYNのパケットである。   When the registration of the first filtering information is completed, packet filtering processing involving SPI processing is started. Now, assuming that the packet A is received by the LAN side I / F 12 (step S1), the packet A has a reception logic I / F of I / F (LAN) 12 and a transmission logic I / F as shown in FIG. Is the I / F (WAN) 11, the source IP address (S-IP) is IP-x, the destination IP address (D-IP) is IP-y, the source port number (S-Port) is Port-x, The destination port number (D-Port) is Port-y and the TCP flag is SYN.

フィルタリング処理部13はこのパケットAを受付けると、次に、フィルタリング記憶部14に記録されているフィルタリング情報を優先度の高い順に順次参照し、該フィルタリング情報と受信したパケットAの通信種別(通信サービス、フラグ種別、宛先IPアドレス、宛先ポート番号、送信元IPアドレス、送信元ポート番号など)と比較して、パケットAと一致するフィルタリング情報があるか否かを判定する。ここで、フィルタリング記憶部14に記録されているフィルタエントリは全ての通信種別に一致し、制御種別はCPU転送(フィルタエントリの制御種別が通過である場合には、登録時に書き換えられて全てCPU転送となっている)であるので、パケットAをCPU16に転送する(ステップS2)。   When the filtering processing unit 13 accepts the packet A, the filtering processing unit 13 sequentially refers to the filtering information recorded in the filtering storage unit 14 in descending order of priority, and the filtering type and the communication type of the received packet A (communication service) , Flag type, destination IP address, destination port number, transmission source IP address, transmission source port number, etc.) to determine whether there is filtering information matching packet A. Here, the filter entry recorded in the filtering storage unit 14 matches all communication types, and the control type is CPU transfer (if the control type of the filter entry is pass, it is rewritten at the time of registration and all CPU transfer Therefore, the packet A is transferred to the CPU 16 (step S2).

CPU16はパケットAを受信すると、そのパケットAに関するSPIエントリを生成する処理を開始する。この時、CPU16は、図6に示すようなSPIエントリ(1)を生成する。このSPIエントリ(1)は、受信論理I/FがI/F(WAN)11、送信論理I/FがI/F(LAN)12、送信元IPアドレス(S−IP)がIP−y、宛先IPアドレス(D−IP)がIP−x、送信元ポート番号(S−Port)がPort−y、宛先ポート番号(D−Port)がPort−xであるパケットを通過させ、またTCPフラグがSYN&ACKであるパケットを通過させるフィルタリング情報(第2フィルタリング情報)である。   When receiving the packet A, the CPU 16 starts a process of generating an SPI entry related to the packet A. At this time, the CPU 16 generates an SPI entry (1) as shown in FIG. In this SPI entry (1), the reception logic I / F is I / F (WAN) 11, the transmission logic I / F is I / F (LAN) 12, the transmission source IP address (S-IP) is IP-y, A packet having a destination IP address (D-IP) of IP-x, a source port number (S-Port) of Port-y, and a destination port number (D-Port) of Port-x is passed, and the TCP flag is This is filtering information (second filtering information) that passes packets that are SYN & ACK.

CPU16は監視状態を遷移して、上記のSPIエントリ(1)を生成すると、該SPIエントリ(1)をフィルタリング記憶部14に登録する(ステップS3)。この時、CPU16は、フィルタエントリより優先度が高く、またCPU転送候補エントリよりも優先度が低い位置(アドレス:番地)に登録する。また、CPU16は登録したSPIエントリ(1)の優先度の情報をフィルタリング情報登録状況テーブルにより記憶しておく。   When the CPU 16 changes the monitoring state and generates the above SPI entry (1), the SPI entry (1) is registered in the filtering storage unit 14 (step S3). At this time, the CPU 16 registers at a position (address: address) having a higher priority than the filter entry and lower priority than the CPU transfer candidate entry. The CPU 16 stores the priority information of the registered SPI entry (1) in the filtering information registration status table.

CPU16はSPIエントリ(1)を登録すると、パケットAについて、フィルタリング情報登録状況テーブルで記憶しているフィルタリング情報に基づいてフィルタリング処理を行う。フィルタリング情報登録状況テーブルで記憶しているフィルタリング情報には、全ての通信種別と一致するフィルタエントリ(制御種別=通過)が記録されているので、CPU16はパケットAをCPU/IF15を介してI/F(WAN)11に転送し、WAN側の通信ネットワークに送信する(ステップS4)。   When registering the SPI entry (1), the CPU 16 performs a filtering process on the packet A based on the filtering information stored in the filtering information registration status table. In the filtering information stored in the filtering information registration status table, filter entries (control type = pass) that match all the communication types are recorded, so the CPU 16 sends the packet A to the I / O via the CPU / IF 15. The data is transferred to F (WAN) 11 and transmitted to the WAN communication network (step S4).

その後、フィルタリング処理部13は通信開始応答パケット(パケットB)を受付ける(ステップS5)と、フィルタリング記憶部14に記録されているフィルタリング情報を優先度の高い順に順次参照し、受信したパケットBの通信種別(通信サービス、フラグ種別、宛先IPアドレス、宛先ポート番号、送信元IPアドレス、送信元ポート番号など)と比較して、パケットBと一致するフィルタリング情報があるか否かを判定する。ここで、パケットBはSPIエントリ(1)と一致し、制御種別がCPU転送であるので、パケットBはCPU16に転送される(ステップS6)。   Thereafter, when the filtering processing unit 13 receives the communication start response packet (packet B) (step S5), the filtering processing unit 13 sequentially refers to the filtering information recorded in the filtering storage unit 14 in descending order of priority, and receives the communication of the received packet B. Compared with the type (communication service, flag type, destination IP address, destination port number, source IP address, source port number, etc.), it is determined whether there is filtering information that matches packet B. Here, since the packet B matches the SPI entry (1) and the control type is CPU transfer, the packet B is transferred to the CPU 16 (step S6).

CPU16はパケットBを受信すると、そのパケットBに関するSPIエントリを生成する処理の状態を遷移させ、パケットBについて、フィルタリング情報登録状況テーブルで記憶しているフィルタリング情報に基づいてフィルタリング処理を行う。フィルタリング情報登録状況テーブルで記憶しているフィルタリング情報には、パケットBの通信種別と一致するフィルタエントリ(制御種別=通過)が記録されているので、CPU16はパケットAをCPU/IF15を介してI/F(LAN)12に転送し、LAN側の通信ネットワークに送信する(ステップS7)。   When the CPU 16 receives the packet B, the CPU 16 changes the state of processing for generating an SPI entry related to the packet B, and performs filtering processing on the packet B based on the filtering information stored in the filtering information registration status table. In the filtering information stored in the filtering information registration status table, since the filter entry (control type = pass) that matches the communication type of the packet B is recorded, the CPU 16 sends the packet A to the I via the CPU / IF 15. The data is transferred to / F (LAN) 12 and transmitted to the communication network on the LAN side (step S7).

次に、フィルタリング処理部13は通信開始完了パケット(パケットC)を受付ける(ステップS8)と、フィルタリング記憶部14に記録されているフィルタリング情報を優先度の高い順に順次参照し、受信したパケットCの通信種別(通信サービス、フラグ種別、宛先IPアドレス、宛先ポート番号、送信元IPアドレス、送信元ポート番号など)と比較して、パケットCと一致するフィルタリング情報があるか否かを判定する。ここで、フィルタリング記憶部14に記録されているフィルタエントリは全ての通信種別に一致し、制御種別はCPU転送であるので、パケットCをCPU16に転送する(ステップS9)。   Next, when the filtering processing unit 13 receives the communication start completion packet (packet C) (step S8), the filtering processing unit 13 sequentially refers to the filtering information recorded in the filtering storage unit 14 in descending order of priority, and receives the received packet C. Compared with the communication type (communication service, flag type, destination IP address, destination port number, source IP address, source port number, etc.), it is determined whether there is filtering information that matches packet C. Here, since the filter entries recorded in the filtering storage unit 14 match all the communication types and the control type is CPU transfer, the packet C is transferred to the CPU 16 (step S9).

CPU16はパケットCを受信すると、そのパケットCに関するSPIエントリを生成する処理の状態をさらに遷移させる。つまり、監視状態を終了する。この時CPU16はSPIエントリ(1)を削除し、合わせてフィルタリング記憶部14に登録したSPIエントリ(1)も削除する。さらに、フィルタリング情報登録状況テーブルに記憶しているSPIエントリ(1)の優先度の情報も削除する(ステップS10)。つまり、前記第2フィルタリング情報を削除する。   When receiving the packet C, the CPU 16 further shifts the state of processing for generating an SPI entry related to the packet C. That is, the monitoring state is terminated. At this time, the CPU 16 deletes the SPI entry (1) and also deletes the SPI entry (1) registered in the filtering storage unit 14. Further, the priority information of the SPI entry (1) stored in the filtering information registration status table is also deleted (step S10). That is, the second filtering information is deleted.

その後、CPU16は、図6で示すようなSPIエントリ(2)とSPIエントリ(3)とSPIエントリ(4)、つまり第3フィルタリング情報を生成する。SPIエントリ(2)は、受信論理I/FがI/F(WAN)11、送信論理I/FがI/F(LAN)12、送信元IPアドレス(S−IP)がIP−y、宛先IPアドレス(D−IP)がIP−x、送信元ポート番号(S−Port)がPort−y、宛先ポート番号(D−Port)がPort−x、またプロトコルがTCPであり、TCPフラグがSYN/ACK/PSH/URGであるか、またはFIN、RST=0のパケットである。つまり、パケットAを初回のセッションとした当該セッションのパケットのうちI/F(WAN)11からI/F(LAN)12へ通過するパケット(FIN、RST=0)のためのフィルタリング情報である。   Thereafter, the CPU 16 generates an SPI entry (2), an SPI entry (3), and an SPI entry (4) as shown in FIG. 6, that is, third filtering information. In the SPI entry (2), the reception logic I / F is I / F (WAN) 11, the transmission logic I / F is I / F (LAN) 12, the source IP address (S-IP) is IP-y, and the destination The IP address (D-IP) is IP-x, the source port number (S-Port) is Port-y, the destination port number (D-Port) is Port-x, the protocol is TCP, and the TCP flag is SYN. / ACK / PSH / URG, or a packet with FIN and RST = 0. That is, it is filtering information for a packet (FIN, RST = 0) that passes from the I / F (WAN) 11 to the I / F (LAN) 12 among the packets of the session in which the packet A is the first session.

またSPIエントリ(3)は、受信論理I/FがI/F(LAN)12、送信論理I/FがI/F(WAN)11、送信元IPアドレス(S−IP)がIP−x、宛先IPアドレス(D−IP)がIP−y、送信元ポート番号(S−Port)がPort−x、宛先ポート番号(D−Port)がPort−y、またプロトコルがTCPであり、TCPフラグがSYN/ACK/PSH/URGであるか、またはFIN、RST=0のパケットである。つまり、パケットAを初回のセッションとした当該セッションのパケットのうちI/F(LAN)12からI/F(WAN)11へ通過するパケット(FIN、RST=0)のためのフィルタリング情報である。   The SPI entry (3) has a reception logic I / F of I / F (LAN) 12, a transmission logic I / F of I / F (WAN) 11, a transmission source IP address (S-IP) of IP-x, The destination IP address (D-IP) is IP-y, the source port number (S-Port) is Port-x, the destination port number (D-Port) is Port-y, the protocol is TCP, and the TCP flag is SYN / ACK / PSH / URG or FIN, RST = 0 packet. That is, it is filtering information for a packet (FIN, RST = 0) that passes from the I / F (LAN) 12 to the I / F (WAN) 11 among the packets of the session in which the packet A is the first session.

さらにSPIエントリ(4)は、受信論理I/FがI/F(WAN)11、送信論理I/FがI/F(LAN)12、送信元IPアドレス(S−IP)がIP−y、宛先IPアドレス(D−IP)がIP−x、送信元ポート番号(S−Port)がPort−y、宛先ポート番号(D−Port)がPort−x、またプロトコルがTCPであり、TCPフラグがFIN=1、またはRST=1のパケットである。つまり、パケットAを初回のセッションとした当該セッションのパケットのうちI/F(WAN)11で受信したFIN=1、またはRST=1のパケットをCPU転送するためのフィルタリング情報である。   Further, the SPI entry (4) has a reception logic I / F of I / F (WAN) 11, a transmission logic I / F of I / F (LAN) 12, a transmission source IP address (S-IP) of IP-y, The destination IP address (D-IP) is IP-x, the source port number (S-Port) is Port-y, the destination port number (D-Port) is Port-x, the protocol is TCP, and the TCP flag is The packet is FIN = 1 or RST = 1. That is, it is filtering information for transferring the packet of FIN = 1 or RST = 1 received by the I / F (WAN) 11 among the packets of the session in which the packet A is the first session.

そして、CPU16は生成したSPIエントリ(2)と(3)と(4)とをフィルタリング記憶部14に登録する(ステップS11)。この時CPU16は、フィルタエントリより優先度が高く、またCPU転送候補エントリよりも優先度が低い位置(アドレス:番地)に登録する。またCPU16は登録したSPIエントリ(2)(3)(4)の優先度の情報をフィルタリング情報登録状況テーブルにより記憶しておく。   Then, the CPU 16 registers the generated SPI entries (2), (3), and (4) in the filtering storage unit 14 (step S11). At this time, the CPU 16 registers at a position (address: address) having a higher priority than the filter entry and a lower priority than the CPU transfer candidate entry. The CPU 16 stores the priority information of the registered SPI entries (2), (3), and (4) in the filtering information registration status table.

SPIエントリ(2)(3)(4)を登録すると、パケットCについて、フィルタリング情報登録状況テーブルで記憶しているフィルタリング情報に基づいてフィルタリング処理を行う。フィルタリング情報登録状況テーブルで記憶しているフィルタリング情報には、全ての通信種別と一致するフィルタエントリ(制御種別=通過)が記録されているので、CPU16はパケットCをCPU/IF15を介してI/F(WAN)11に転送し、WAN側の通信ネットワークに送信する(ステップS12)。   When the SPI entries (2), (3), and (4) are registered, filtering processing is performed on the packet C based on the filtering information stored in the filtering information registration status table. In the filtering information stored in the filtering information registration status table, filter entries (control type = pass) that match all the communication types are recorded, so the CPU 16 sends the packet C to the I / I via the CPU / IF 15. The data is transferred to F (WAN) 11 and transmitted to the WAN communication network (step S12).

次にパケットAを初回(SYN)のセッションとした場合の当該セッションの他のパケットがI/F(WAN)11やI/F(LAN)12で受信する。フィルタリング処理部13はそれらの一連のパケットについてフィルタリング処理を行なう。このフィルタリング処理は上記同様にフィルタリング記憶部14に登録されているフィルタリング情報と比較して行う。ここで、パケットAを初回(SYN)のセッションとした場合の当該セッションの他のパケットはSPIエントリ(2)またはSPIエントリ(3)と一致する。またこのSPIエントリ(2)(3)は制御種別が“通過”となっている。従って、フィルタリング処理部13は、パケットAを初回(SYN)のセッションとした場合の当該セッションの他のパケットを受信した場合には、CPU16に転送せず、I/F(WAN)11で受信したパケットについてはダイレクトにI/F(LAN)12から出力し、またI/F(LAN)12で受信したパケットについてはダイレクトにI/F(WAN)11から出力する。つまりパケットAをセッションの初回に受信したパケットとして、それ以降の同一セッションのパケットについてはパケット通過制御部でSPIの処理(双方向のハードウェア転送の処理)を行なう(ステップS13)。   Next, when the packet A is the first (SYN) session, another packet of the session is received by the I / F (WAN) 11 or the I / F (LAN) 12. The filtering processing unit 13 performs a filtering process on the series of packets. This filtering process is performed in comparison with the filtering information registered in the filtering storage unit 14 as described above. Here, when the packet A is the first (SYN) session, the other packets of the session match the SPI entry (2) or the SPI entry (3). The SPI entry (2) (3) has the control type “pass”. Therefore, when the packet processing unit 13 receives another packet of the session when the packet A is the first (SYN) session, the filtering processing unit 13 does not transfer the packet A to the CPU 16 but receives it by the I / F (WAN) 11. Packets are directly output from the I / F (LAN) 12, and packets received by the I / F (LAN) 12 are directly output from the I / F (WAN) 11. That is, assuming that packet A is a packet received for the first time of a session, the packet passing control unit performs SPI processing (bidirectional hardware transfer processing) for packets in the same session thereafter (step S13).

次に、図5に示されているように、パケットAを初回(SYN)のセッションとした場合の当該セッションの最後(FIN)のパケットDをI/F(LAN)12で受信したとする(ステップS14)。この場合、フィルタリング処理部13はフィルタリング記憶部14に登録されているフィルタリング情報と比較する。ここで、SPIエントリ(2)はFIN=1となっているパケットについてはフィルタの対象外であるので、フィルタリング処理部13は優先度に従って順次フィルタエントリまで確認する。そして、フィルタエントリにおいて通信種別の一致するエントリ(パケットAを処理したフィルタエントリと同一のエントリ)が存在し、その制御種別がCPU転送であるので、パケットDをCPU/IF15を介してCPU16へ転送する(ステップS15)。CPU16はSPIの状態を遷移させ、パケットDについての制御種別がフィルタリング情報登録状況テーブルにおいて“通過”となっているので、I/F(WAN)11へ出力する(ステップS16)。   Next, as shown in FIG. 5, when the packet A is the first (SYN) session, the last (FIN) packet D of the session is received by the I / F (LAN) 12 ( Step S14). In this case, the filtering processing unit 13 compares with the filtering information registered in the filtering storage unit 14. Here, since the SPI entry (2) does not filter the packet with FIN = 1, the filtering processing unit 13 sequentially checks the filter entries according to the priority. Since there is an entry with the same communication type in the filter entry (the same entry as the filter entry that processed packet A) and its control type is CPU transfer, packet D is transferred to CPU 16 via CPU / IF 15. (Step S15). The CPU 16 changes the state of the SPI, and since the control type for the packet D is “pass” in the filtering information registration status table, the CPU 16 outputs it to the I / F (WAN) 11 (step S16).

さらに続けて、I/F(WAN)11へ出力したパケットAを初回(SYN)のセッションとした場合の当該セッションの最後(FIN)のパケットに応答するパケットEをI/F(WAN)11で受信したとする(ステップS17)。この場合、フィルタリング処理部13はフィルタリング記憶部14に登録されているフィルタリング情報と比較する。ここで、SPIエントリ(3)はFIN=1となっているパケットについてはフィルタの対象外であるので、パケットEはSPIエントリ(4)に一致し、その制御種別がCPU転送であるので、パケットEをCPU/IF15を介してCPU16へ転送する(ステップS18)。CPU16はSPIの状態を遷移させ、パケットEについての制御種別がフィルタリング情報登録状況テーブルにおいて“通過”となっているので、I/F(LAN)12へ出力する(ステップS19)。   Further, when the packet A output to the I / F (WAN) 11 is the first (SYN) session, the packet E responding to the last (FIN) packet of the session is represented by the I / F (WAN) 11. It is assumed that it has been received (step S17). In this case, the filtering processing unit 13 compares with the filtering information registered in the filtering storage unit 14. Here, since the SPI entry (3) is not subject to filtering for a packet with FIN = 1, the packet E matches the SPI entry (4) and its control type is CPU transfer. E is transferred to the CPU 16 via the CPU / IF 15 (step S18). The CPU 16 changes the state of the SPI, and since the control type for the packet E is “passed” in the filtering information registration status table, it outputs it to the I / F (LAN) 12 (step S19).

また、CPU16は、I/F(LAN)12で受信したTCPフラグがFINであるパケットDをI/F(WAN)11へ出力した後にTCPフラグがFINであるパケットEをI/F(WAN)11で受信したため、そのパケットに関するセッションのSPIエントリ(2)、(3)及び(4)を、パケットEのI/F(LAN)12への送出後、所定の時間経過した際にフィルタリング記憶部14から削除する処理を行なう(ステップS20)。   Further, the CPU 16 outputs the packet D received by the I / F (LAN) 12 and having the TCP flag FIN to the I / F (WAN) 11 and then outputs the packet E having the TCP flag FIN to the I / F (WAN). 11, since the SPI entries (2), (3), and (4) of the session related to the packet have been sent to the I / F (LAN) 12 of the packet E, the filtering storage unit 14 is performed (step S20).

以上の処理により、フィルタリング処理部13、フィルタリング記憶部14などを有するパケット通過制御部2を、例えば1つのチップとしてまとめて回路構成し、フィルタリング処理部13にSPIの処理を任せた場合であっても、CPUで状態監視を行うSPI処理と同等の堅牢性の高い通信を実現ができる。   With the above processing, the packet passing control unit 2 including the filtering processing unit 13, the filtering storage unit 14, and the like is configured as a single chip, for example, and the SPI processing is entrusted to the filtering processing unit 13. In addition, it is possible to realize a highly robust communication equivalent to the SPI process in which the state is monitored by the CPU.

図7は、本発明の要部の機能ブロック図である。図において、10は前記フィルタリング処理部13およびCPU/IF15からなる中央演算処理部転送手段を示し、他の図1と同符号は、図1と同一または同等物を示す。   FIG. 7 is a functional block diagram of the main part of the present invention. In the figure, reference numeral 10 denotes a central processing unit transfer means comprising the filtering processing unit 13 and the CPU / IF 15, and the same reference numerals as those in FIG. 1 denote the same or equivalent parts as in FIG.

本発明は、パケット通過制御部2と中央演算処理部3とを備え、一方の通信ネットワーク経路から受信したパケットを他方の通信ネットワーク経路へ通過させるか否かを制御するパケット通過制御装置におけるパケット通過制御方法であり、以下の方法が実施される。   The present invention includes a packet passage control unit 2 and a central processing unit 3, and a packet passage in a packet passage control device that controls whether or not a packet received from one communication network path is allowed to pass to the other communication network path. It is a control method, and the following method is implemented.

(1)まず、テーブル記憶部17から読み出された、パケットのフィルタ規則適合判定条件を示す全ての通信種別のパケットについてパケットの通過許可、廃棄、中央演算処理転送のいずれかを示す制御種別である中央演算処理転送を示す第1フィルタリング情報14aを、最も優先度の低いフィルタリング情報として、前記パケット通過制御部のフィルタリング記憶部14に登録する。   (1) First, for all packets of communication types indicating the packet filter rule conformity determination conditions read from the table storage unit 17, the control type indicating any of packet passage permission, discard, and central processing transfer First filtering information 14a indicating a certain central processing transfer is registered in the filtering storage unit 14 of the packet passage control unit as filtering information having the lowest priority.

(2)前記パケット通過制御部の中央演算処理部転送手段10は、一方の通信ネットワーク経路から他方の通信ネットワーク経路への通信開始要求パケット(パケットA)を受信すると、当該パケットの通信種別と制御種別が、前記フィルタリング記憶部14に登録されている前記第1フィルタリング情報14aに一致するか否かを判定し、一致する場合に、その受信したパケットの少なくとも通信種別10aを前記中央演算処理部3へ転送する。   (2) When the central processing unit transfer means 10 of the packet passage control unit receives a communication start request packet (packet A) from one communication network path to the other communication network path, the communication type and control of the packet are controlled. It is determined whether or not the type matches the first filtering information 14a registered in the filtering storage unit 14, and if it matches, at least the communication type 10a of the received packet is set to the central processing unit 3 Forward to.

(3)上記の転送があると、前記中央演算処理部3の第2フィルタリング情報生成・登録手段3aが、前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通信開始応答パケット(パケットB)についての、前記制御種別が中央演算処理転送を示す第2フィルタリング情報14bを生成し、前記第1フィルタリング情報より優先度の高い情報として優先的に前記フィルタリング記憶部14に登録する。   (3) When there is the above transfer, the second filtering information generation / registration means 3a of the central processing unit 3 sends a communication start response packet (packet B) from the other communication network path to the one communication network path. The second filtering information 14b in which the control type indicates the central processing transfer is generated, and is preferentially registered in the filtering storage unit 14 as information having a higher priority than the first filtering information.

(4)次に、前記中央演算処理部転送手段10は、受信した前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通信開始応答パケット(パケットB)が、前記フィルタリング記憶部14に登録された前記第2フィルタリング情報14bに一致するか否かを前記優先度順に判定し、一致している場合には前記第2フィルタリング情報の制御種別に従い、その受信したパケットの少なくとも通信種別10bを前記中央演算処理部3へ転送する。   (4) Next, the central processing unit transfer means 10 registers the received communication start response packet (packet B) from the other communication network path to the one communication network path in the filtering storage unit 14. Whether or not the second filtering information matches the second filtering information 14b in order of priority, and if they match, according to the control type of the second filtering information, at least the communication type 10b of the received packet is Transfer to the central processing unit 3.

(5)次に、前記中央演算処理部転送手段10は、受信した前記一方の通信ネットワーク経路から前記他方の通信ネットワーク経路への通信開始完了パケット(パケットC)が、前記フィルタリング記憶部14に登録された前記第1フィルタリング情報14aに一致するか否かを前記優先度順に判定し、一致している場合には前記第1フィルタリング情報の制御種別に従い、その受信したパケットの少なくとも通信種別10cを前記中央演算処理部3へ転送する。   (5) Next, the central processing unit transfer means 10 registers the received communication start completion packet (packet C) from the one communication network path to the other communication network path in the filtering storage unit 14. It is determined whether or not the first filtering information 14a matches with the first filtering information in order of priority, and if they match, according to the control type of the first filtering information, at least the communication type 10c of the received packet is Transfer to the central processing unit 3.

(6)前記(4)と(5)の通信種別10bと10cの転送があると、前記中央演算処理部3の第3フィルタリング情報生成・登録手段3bが、前記フィルタリング記憶部14に登録された前記第2フィルタリング情報14bを削除し、前記一方の通信ネットワーク経路から前記他方の通信ネットワーク経路への通過、および前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通過、の両方の通過許可を示す第3フィルタリング情報14cを、前記第1フィルタリング情報より優先度の高い情報として優先的に前記フィルタリング記憶部14に登録する。   (6) When there is transfer of the communication types 10b and 10c of (4) and (5), the third filtering information generating / registering means 3b of the central processing unit 3 is registered in the filtering storage unit 14. Delete the second filtering information 14b, and allow both passage from the one communication network path to the other communication network path and from the other communication network path to the one communication network path. Is preferentially registered in the filtering storage unit 14 as information having a higher priority than the first filtering information.

(7)前記パケット通過制御部2の通過処理手段(図示せず)が、前記受信したパケットに関連する一連のパケット処理について、前記フィルタリング記憶部14に登録された前記第3フィルタリング情報14cに一致するか否かを前記優先度順に判定し、一致している場合には前記中央演算処理部3を介さずに通過処理を行なう。   (7) A passage processing means (not shown) of the packet passage control unit 2 matches the third filtering information 14c registered in the filtering storage unit 14 for a series of packet processing related to the received packet. Whether or not to do so is determined in the order of priority, and if they match, the passage processing is performed without going through the central processing unit 3.

なお、図7の第1、第2及び第3フィルタリング情報14a、14bおよび14cは、それぞれ、図4のフィルタエントリ、SPIエントリ(1)およびSPIエントリ(2)(3)(4)に対応する。   Note that the first, second, and third filtering information 14a, 14b, and 14c in FIG. 7 correspond to the filter entry, the SPI entry (1), and the SPI entries (2), (3), and (4) in FIG. 4, respectively. .

以上、本発明を実施形態により説明したが、本発明は前記した実施形態に限定されず、本発明の思想及び範囲から逸脱しない範囲内での変更は可能であり、この変更は本発明に含まれることは明らかである。例えば、図4のステップS8の後のパケットCについての「フィルタエントリに一致」の判定を省略してもよい。   As mentioned above, although this invention was demonstrated by embodiment, this invention is not limited to above-described embodiment, The change in the range which does not deviate from the thought and range of this invention is possible, This change is included in this invention. It is clear that For example, the determination of “matching filter entry” for packet C after step S8 in FIG. 4 may be omitted.

パケット通過制御装置の構成を示すブロック図である。It is a block diagram which shows the structure of a packet passage control apparatus. フィルタリング記憶部の構成の説明図である。It is explanatory drawing of a structure of a filtering memory | storage part. フィルタリング情報登録状況テーブルとフィルタリング記憶部の構成の説明図である。It is explanatory drawing of the structure of a filtering information registration condition table and a filtering memory | storage part. TCPセッション開始時のパケット通過制御装置の処理フローである。It is a processing flow of the packet passage control apparatus at the time of TCP session start. TCPセッション停止時のパケット通過制御装置の処理フローである。It is a processing flow of the packet passage control device when the TCP session is stopped. パケット通過制御装置が受信するパケットとそのパケットの受信に基づいて動的に生成されるSPIエントリを示す図である。It is a figure which shows the SPI entry dynamically generated based on the packet which a packet passage control apparatus receives, and reception of the packet. 本発明の要部の機能ブロック図である。It is a functional block diagram of the principal part of this invention. 従来のパケット通過制御装置の処理フローである。It is a processing flow of the conventional packet passage control apparatus.

符号の説明Explanation of symbols

1・・・パケット通過制御装置、2・・・パケット通過制御部、3・・・中央演算処理部、11・・・I/F(WAN)、12・・・I/F(LAN)、13・・・フィルタリング処理部、14・・・フィルタリング記憶部、15・・・CPU/IF、16・・・CPU、17・・・テーブル記憶部、10・・・中央演算処理部転送手段。   DESCRIPTION OF SYMBOLS 1 ... Packet passage control apparatus, 2 ... Packet passage control part, 3 ... Central processing part, 11 ... I / F (WAN), 12 ... I / F (LAN), 13 ... Filtering processing unit, 14 ... Filtering storage unit, 15 ... CPU / IF, 16 ... CPU, 17 ... Table storage unit, 10 ... Central processing unit transfer means.

Claims (4)

パケット通過制御部と中央演算処理部とを備え、一方の通信ネットワーク経路から受信したパケットを他方の通信ネットワーク経路へ通過させるか否かを制御するパケット通過制御装置におけるパケット通過制御方法であって、
パケットのフィルタ規則適合判定条件を示す全ての通信種別のパケットについてパケットの通過許可、廃棄、中央演算処理転送のいずれかを示す第1フィルタリング情報を前記パケット通過制御部のフィルタリング記憶部に登録し、
受信した通信開始要求パケットが前記第1フィルタリングに一致する場合に、前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通信開始応答パケットについて、前記中央演算処理転送を示す第2フィルタリング情報を前記フィルタリング記憶部に登録し、
前記通信開始応答パケットが前記第2フィルタリング情報に一致する場合には、前記フィルタリング記憶部に登録された前記第2フィルタリング情報を削除し、前記一方の通信ネットワーク経路から前記他方の通信ネットワーク経路への通過、および前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通過、の両方の通過許可を示す第3フィルタリング情報を前記フィルタリング記憶部に登録し、
前記パケット通過制御部の通過処理手段が、前記受信したパケットに関連する一連のパケット処理について、前記フィルタリング記憶部に登録された前記第3フィルタリング情報に一致するか否かを判定し、一致している場合には前記中央演算処理部を介さずに通過処理を行なうことを特徴とするパケット通過制御方法。
A packet passage control method in a packet passage control device comprising a packet passage control unit and a central processing unit, and controlling whether or not to pass a packet received from one communication network path to the other communication network path,
Registering the first filtering information indicating whether the packet is permitted to pass, discarding, or central processing transfer in the filtering storage unit of the packet passing control unit for all packets of communication types indicating the filter rule conformity determination condition of the packet,
When the received communication start request packet matches the first filtering, second filtering information indicating the central processing transfer is transmitted for a communication start response packet from the other communication network path to the one communication network path. Register in the filtering storage unit,
When the communication start response packet matches the second filtering information, the second filtering information registered in the filtering storage unit is deleted, and the one communication network path to the other communication network path is deleted. Registering in the filtering storage unit third filtering information indicating both passage and passage permission from the other communication network path to the one communication network path,
The passage processing means of the packet passage control unit determines whether or not it matches the third filtering information registered in the filtering storage unit for a series of packet processing related to the received packet. A packet passage control method, wherein the passage processing is performed without going through the central processing unit.
請求項1に記載のパケット通過制御方法において、
前記第2および第3フィルタリング情報を、前記第1フィルタリング情報より優先度の高い情報として優先的に前記フィルタリング記憶部に登録することを特徴とするパケット通過制御方法。
In the packet passage control method according to claim 1,
The packet passing control method, wherein the second and third filtering information is preferentially registered in the filtering storage unit as information having a higher priority than the first filtering information.
請求項1または2に記載のパケット通過制御方法において、
前記第1、第2および第3フィルタリング情報を、前記フィルタリング記憶部のSPIエントリに登録することを特徴とするパケット通過制御方法。
In the packet passage control method according to claim 1 or 2,
A packet passing control method, wherein the first, second and third filtering information is registered in an SPI entry of the filtering storage unit.
パケット通過制御部と中央演算処理部とを備え、一方の通信ネットワーク経路から受信したパケットを他方の通信ネットワーク経路へ通過させるか否かを制御するパケット通過制御装置におけるパケット通過制御方法であって、
最も優先度の低いフィルタリング情報として、パケットのフィルタ規則適合判定条件を示す全ての通信種別のパケットについてパケットの通過許可、廃棄、中央演算処理転送のいずれかを示す制御種別である第1フィルタリング情報を前記パケット通過制御部のフィルタリング記憶部に登録し、
前記パケット通過制御部の中央演算処理部転送手段が、通信開始要求パケットを受信した際に、当該パケットの通信種別と制御種別が、前記フィルタリング記憶部に登録されている前記第1フィルタリングに一致する場合に、その受信したパケットの少なくとも通信種別を前記中央演算処理部へ転送し、
前記中央演算処理部の第2フィルタリング情報登録手段が、前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通信開始応答パケットについて、前記制御種別が中央演算処理部への転送を示す第2フィルタリング情報を、前記第1フィルタリング情報より優先度の高い情報として優先的に前記フィルタリング記憶部に登録し、
前記中央演算処理部転送手段が、前記フィルタリング記憶部に登録された前記第2フィルタリング情報に一致するか否かを前記優先度順に判定し、一致している場合には前記第2フィルタリング情報の制御種別に従い、その受信したパケットの少なくとも通信種別を前記中央演算処理部へ転送し、
前記中央演算処理部転送手段が、前記一方の通信ネットワーク経路から前記他方の通信ネットワーク経路への通信開始完了パケットについて、前記フィルタリング記憶部に登録された前記第1フィルタリング情報に一致するか否かを前記優先度順に判定し、一致している場合には前記第1フィルタリング情報の制御種別に従い、その受信したパケットの少なくとも通信種別を前記中央演算処理部へ転送し、
前記中央演算処理部の第3フィルタリング情報登録手段が、前記フィルタリング記憶部に登録された前記第2フィルタリング情報を削除し、前記一方の通信ネットワーク経路から前記他方の通信ネットワーク経路への通過、および前記他方の通信ネットワーク経路から前記一方の通信ネットワーク経路への通過、の両方の通過許可を示す第3フィルタリング情報を、前記第1フィルタリング情報より優先度の高い情報として優先的に前記フィルタリング記憶部に登録し、
前記パケット通過制御部の通過処理手段が、前記受信したパケットに関連する一連のパケット処理について、前記フィルタリング記憶部に登録された前記第3フィルタリング情報に一致するか否かを前記優先度順に判定し、一致している場合には前記中央演算処理部を介さずに通過処理を行なうことを特徴とするパケット通過制御方法。
A packet passage control method in a packet passage control device comprising a packet passage control unit and a central processing unit, and controlling whether or not to pass a packet received from one communication network path to the other communication network path,
As the filtering information with the lowest priority, the first filtering information, which is a control type indicating any one of the packet passing permission, the discarding, and the central processing transfer for all the communication types indicating the packet filter rule conformity determination condition. Register in the filtering storage unit of the packet passage control unit,
When the central processing unit transfer means of the packet passage control unit receives the communication start request packet, the communication type and control type of the packet match the first filtering registered in the filtering storage unit In this case, at least the communication type of the received packet is transferred to the central processing unit,
The second filtering information registering means of the central processing unit has a second control type indicating a transfer to the central processing unit for the communication start response packet from the other communication network path to the one communication network path. Filtering information is preferentially registered in the filtering storage unit as information having a higher priority than the first filtering information,
The central processing unit transfer means determines whether or not the second filtering information registered in the filtering storage unit matches with the order of priority, and controls the second filtering information if they match. According to the type, transfer at least the communication type of the received packet to the central processing unit,
Whether the central processing unit transfer means matches the first filtering information registered in the filtering storage unit for a communication start completion packet from the one communication network path to the other communication network path. Determine in order of priority, and if they match, according to the control type of the first filtering information, transfer at least the communication type of the received packet to the central processing unit,
The third filtering information registration means of the central processing unit deletes the second filtering information registered in the filtering storage unit, passes from the one communication network path to the other communication network path, and Third filtering information indicating permission to pass both from the other communication network path to the one communication network path is preferentially registered in the filtering storage unit as information having a higher priority than the first filtering information. And
The passage processing means of the packet passage control unit determines, in order of priority, whether or not the series of packet processing related to the received packet matches the third filtering information registered in the filtering storage unit. A packet passing control method, wherein if the two match, a passing process is performed without going through the central processing unit.
JP2008280121A 2008-10-30 2008-10-30 Packet passing control method Active JP5088830B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008280121A JP5088830B2 (en) 2008-10-30 2008-10-30 Packet passing control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008280121A JP5088830B2 (en) 2008-10-30 2008-10-30 Packet passing control method

Publications (2)

Publication Number Publication Date
JP2010109731A JP2010109731A (en) 2010-05-13
JP5088830B2 true JP5088830B2 (en) 2012-12-05

Family

ID=42298718

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008280121A Active JP5088830B2 (en) 2008-10-30 2008-10-30 Packet passing control method

Country Status (1)

Country Link
JP (1) JP5088830B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113132308B (en) * 2019-12-31 2022-05-17 华为技术有限公司 Network security protection method and protection equipment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8185615B1 (en) * 2000-11-28 2012-05-22 Verizon Business Global Llc Message, control and reporting interface for a distributed network access system
JP4137948B2 (en) * 2006-02-14 2008-08-20 日本電信電話株式会社 Packet passage control apparatus and packet passage control method
JP4740828B2 (en) * 2006-11-24 2011-08-03 株式会社日立製作所 Information processing apparatus and information processing system

Also Published As

Publication number Publication date
JP2010109731A (en) 2010-05-13

Similar Documents

Publication Publication Date Title
EP1966977B1 (en) Method and system for secure communication between a public network and a local network
US6701432B1 (en) Firewall including local bus
US7558266B2 (en) System and method for restricting network access using forwarding databases
EA004423B1 (en) System, device and method for rapid packet filtering and processing
US20030018914A1 (en) Stateful packet forwarding in a firewall cluster
JP2004362581A (en) Multilayer firewall architecture
JP4290198B2 (en) Flexible network security system and network security method permitting reliable processes
JP2004222229A (en) Router and its packet transmission method
JP2022500957A (en) Packet processing
CN105323259A (en) Method and device for preventing synchronous packet attack
JP2007166514A (en) Device and method for processing communication
JP3581345B2 (en) Packet transfer device and packet transfer method
JP5088830B2 (en) Packet passing control method
US20070223448A1 (en) Routing apparatus and method
CN110971701B (en) Internet of things communication method and device
JP2007166513A (en) Device and method for processing communication
KR100864889B1 (en) Device and method for tcp stateful packet filter
JP2008060763A (en) Network node
CN112929278B (en) Method and system for multi-core parallel fast forwarding of data packets by network communication equipment
JP4306498B2 (en) Reply attack error detection method and apparatus
JP4542053B2 (en) Packet relay apparatus, packet relay method, and packet relay program
JP2009060245A (en) Communication control method, program and communication device
JP2006238039A (en) Packet processor
JP2009049940A (en) Protocol header analysis equipment and packet communication apparatus
JP3844302B2 (en) Protocol duplication apparatus and protocol duplication method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111003

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120807

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120906

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

Free format text: PAYMENT UNTIL: 20150921

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5088830

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150