JP4340653B2 - Communication processing apparatus and communication processing method - Google Patents

Communication processing apparatus and communication processing method Download PDF

Info

Publication number
JP4340653B2
JP4340653B2 JP2005363511A JP2005363511A JP4340653B2 JP 4340653 B2 JP4340653 B2 JP 4340653B2 JP 2005363511 A JP2005363511 A JP 2005363511A JP 2005363511 A JP2005363511 A JP 2005363511A JP 4340653 B2 JP4340653 B2 JP 4340653B2
Authority
JP
Japan
Prior art keywords
search
information
frame
entry
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
JP2005363511A
Other languages
Japanese (ja)
Other versions
JP2007166514A (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.)
NTT Electronics Corp
Nippon Telegraph and Telephone Corp
Original Assignee
NTT Electronics Corp
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Electronics Corp, Nippon Telegraph and Telephone Corp filed Critical NTT Electronics Corp
Priority to JP2005363511A priority Critical patent/JP4340653B2/en
Publication of JP2007166514A publication Critical patent/JP2007166514A/en
Application granted granted Critical
Publication of JP4340653B2 publication Critical patent/JP4340653B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、パケットフィルタリング機能を有し、パケットの転送処理を行うルータなどの通信処理装置及び通信処理方法に関する。   The present invention relates to a communication processing apparatus such as a router having a packet filtering function and performing packet transfer processing, and a communication processing method.

近年、インターネットに代表されるネットワークの利用拡大に伴い、企業及び家庭内にLAN(ローカルエリアネットワーク、以下、内部ネットワーク)を構築し、外部のネットワークにインターネット等を介して接続する形態をとることが多くなってきている。
しかし、内部の端末を、外部ネットワークを接続する際、内部ネットワークのセキュリティの確保が重要な問題となっている。
すなわち、外部ネットワークに自由に接続することが可能であるため、外部から内部ネットワークに対する不正なアクセスにより、個人情報等の機密情報が漏洩し、また、改竄されることが考えられる。
In recent years, with the expansion of the use of networks typified by the Internet, it is possible to construct a LAN (local area network, hereinafter referred to as an internal network) in a company and a home and connect to an external network via the Internet or the like. It is getting more.
However, when connecting an internal terminal to an external network, ensuring the security of the internal network is an important issue.
That is, since it is possible to freely connect to the external network, it is considered that confidential information such as personal information is leaked or tampered with by unauthorized access to the internal network from the outside.

上述した不正なアクセスを防止する方法の1つとして、パケットのフィルタリング処理が用いられている。
上記パケットフィルタリング処理は、ファイアウォールなどに用いられ、保護したいネットワークを不正アクセスから守る有効な方法と考えられている。
すなわち、パケットフィルタリング処理は、パケットを中継するルータなどの通信装置に機能として設けられ、入力されるパケットを全てチェックし、設定されているフィルタリングのルールに基づいて、パケットの通過を許可するか否かを判定するものである。
As one of the methods for preventing the above-described unauthorized access, packet filtering processing is used.
The packet filtering process is used in a firewall or the like, and is considered an effective method for protecting a network to be protected from unauthorized access.
In other words, the packet filtering process is provided as a function in a communication device such as a router that relays packets, checks all input packets, and determines whether to allow the passage of packets based on the set filtering rules. This is a judgment.

各ルールには、パケットに関するいくつかの要素を定義し、これらの要素に応じて、パケットがフィルタリング処理される。
ここで、フィルタリング処理の判定に用いられるパケットの要素としては、例えば、パケットの送信元アドレス、送信先アドレス、プロトコル、送信元ポート番号、送信先ポート番号、パケットのペイロードなどがある。
Each rule defines several elements related to the packet, and the packet is filtered according to these elements.
Here, the packet elements used for the determination of the filtering process include, for example, a packet transmission source address, a transmission destination address, a protocol, a transmission source port number, a transmission destination port number, and a packet payload.

すなわち、ある送信元から送られるパケットの通過を拒否したり、別の送信元から、ある宛先へ送られるパケットの通過を許可の判定を行うことができる。
上記ルールは、パケットのフィルタリング処理部のテーブルに順番に記憶され、パケットが通信装置に到着した際、テーブルに記憶された順に評価のために読み出される。
パケットが通信装置に入力されたとき、このパケットに該当する要素を含む最初のルールが適用され、パケットはそのルールに示されるように処理される。
That is, it is possible to reject passage of a packet sent from a certain transmission source, or to permit passage of a packet sent from another transmission source to a certain destination.
The above rules are stored in order in the table of the packet filtering processing unit, and are read for evaluation in the order stored in the table when the packet arrives at the communication device.
When the packet is input to the communication device, the first rule including the element corresponding to the packet is applied, and the packet is processed as indicated by the rule.

また、上記フィルタ処理に加えて、受信インターフェースや送信インターフェースに基づく、品質クラスの分類処理がルータにより転送されるパケットに対して行われる。
さらに、ルータ等においては、転送を行う際に、経路検索処理により、パケットをどのポートに転送するかなどを設定が行われる。
上述したような、フィルタ処理,分類処理及び経路検索の処理等は、例えば、非特許文献1に記載されている。
In addition to the filtering process, a quality class classification process based on the reception interface and the transmission interface is performed on the packet transferred by the router.
Furthermore, in the router or the like, when performing the transfer, a setting is made as to which port the packet is to be transferred by route search processing.
The filter processing, classification processing, route search processing, and the like as described above are described in Non-Patent Document 1, for example.

上述したルータ内部において、上記フィルタ処理,分類処理及び経路検索の処理を行う検索部は、図9に示すように、入力フィルタ検索部501,入力分類検索部502,経路検索部503,出口フィルタ検索部504及び出口分類検索部505を有している。
ここで、入力フィルタ検索部501は、パケットの転送先を決定する転送処理(経路検索処理)前に、受信物理インターフェース(または受信論理インターフェース)に応じて異なるルールによって、フレームのフィルタリング(破棄または転送)を行う入口フィルタ処理を実行する。
また、出口フィルタ検索部504は、転送処理後に、送信物理インターフェース(または送信論理インターフェース)に応じて異なるルールによって、フレームのフィルタリングを行う出口フィルタ処理を実行する。
上記入口及び出口フィルタ処理においては、1個または複数個のルールにより、フレームの破棄または通過(転送)が決定される。上記ルールには、フィルタの破棄を指定する破棄ルールとフレームの通過を指定する通過ルールとがある。
As shown in FIG. 9, the search unit that performs the filtering process, the classification process, and the route search process in the router described above includes an input filter search unit 501, an input classification search unit 502, a route search unit 503, and an exit filter search. A unit 504 and an exit classification search unit 505.
Here, the input filter search unit 501 performs frame filtering (discard or transfer) according to different rules depending on the reception physical interface (or reception logical interface) before transfer processing (route search processing) for determining a packet transfer destination. ) Is executed.
The egress filter search unit 504 executes egress filter processing for filtering frames according to different rules according to the transmission physical interface (or transmission logical interface) after the transfer processing.
In the entrance and exit filter processing, frame discard or passage (transfer) is determined by one or a plurality of rules. The rules include a discard rule that specifies discard of a filter and a pass rule that specifies passage of a frame.

また、入力分類検索部502は、上述したフィルタ処理と同様に、フレームの転送先を決定する転送処理前に、受信物理インターフェース(または受信論理インターフェース)に応じた異なるルールによって、フレームに対する品質クラスの分類を行う入口分類処理を実行する。
出力分類検索部505は、上記転送処理前に、送信物理インターフェース(または送信論理インターフェース)に応じた異なるルールによって、フレームに対する品質クラスの分類を行う出口分類処理を実行する。
上記入口及び出口分類処理において、1種類または複数の分類ルールにより、入力される各フレームの品質クラスが決定され、この品質クラスは後段のキュー選択処理や送信における優先制御処理に用いられる。
Similarly to the filtering process described above, the input classification search unit 502 determines the quality class for a frame according to different rules according to the reception physical interface (or reception logical interface) before the transfer process for determining the frame transfer destination. An entrance classification process for performing classification is executed.
The output classification search unit 505 executes an exit classification process for classifying a quality class for a frame according to different rules according to a transmission physical interface (or transmission logical interface) before the transfer process.
In the entrance / exit classification processing, the quality class of each input frame is determined by one or more classification rules, and this quality class is used for queue selection processing at the subsequent stage and priority control processing in transmission.

また、経路検索部503は、受信論理インターフェース番号,L3プロトコル(上位プロトコル情報),送信元IPアドレス及び宛先IPアドレスなどにより、宛先MACアドレス送信論理インターフェース番号等が示す経路先を検索して出力する。
「LANスイッチング徹底解説」、p464、日経BP社
Also, the route search unit 503 searches for and outputs the route destination indicated by the destination MAC address transmission logical interface number or the like based on the reception logical interface number, the L3 protocol (upper protocol information), the transmission source IP address, the destination IP address, and the like. .
"LAN switching thorough explanation", p464, Nikkei Business Publications, Inc.

上記入力フィルタ検索部501,入力分類検索部502,出口フィルタ検索部504,出力分類検索部505各々は、図9に示すように、ハードウェアで構成する際に、4つの回路ブロックで機能別に構成されている。
しかしながら、入力フィルタ検索部501,入力分類検索部502,出口フィルタ検索部504及び出力分類検索部505各々は、回路ブロックの配置位置の違い(入口か出口か)、検索条件の一部の違い(受信物理インターフェースか送信物理インターフェースか)、検索結果の違い(フィルタ処理における破棄・通過か、分類処理における品質クラス)、エントリ数(ルールの数)の違いがあるが、ほぼ同様の回路構成で形成されている。
As shown in FIG. 9, each of the input filter search unit 501, the input classification search unit 502, the exit filter search unit 504, and the output classification search unit 505 is configured by four circuit blocks according to function. Has been.
However, each of the input filter search unit 501, the input classification search unit 502, the exit filter search unit 504, and the output classification search unit 505 has a difference in circuit block arrangement position (entrance or exit) and a difference in part of search conditions ( (Receiving physical interface or transmitting physical interface), search result difference (discard / pass in filtering process, quality class in classification process), entry number (number of rules), but almost the same circuit configuration Has been.

このため、従来のルータにおいては、同様の回路構成であるにもかかわらず、上述した入口フィルタ処理,入口分類処理,出口フィルタ処理及び出口分類処理の各機能別に回路ブロックを設けているため、実際には重複する無駄な回路部分を有し、回路規模が大きくなるという欠点がある。
また、従来のルータにおいては、回路の設計上、上記各検索部で取り扱えるルール数が各々独立した機能により制約され、各検索部間において設定されるルール数に偏りがある場合でも、ルール数に余裕がある検索部に、ルール数に余裕のない検索部の検索処理を代替えさせることができず、検索部間で回路の使い回しができず、場合によって使用されない回路部分が発生し、有効な回路利用ができないという欠点がある。
For this reason, in the conventional router, although the circuit configuration is the same, a circuit block is provided for each function of the above-described entrance filter processing, entrance classification processing, exit filter processing, and exit classification processing. Has the disadvantage that it has redundant circuit portions that overlap, resulting in an increase in circuit scale.
Also, in the conventional router, the number of rules that can be handled by each search unit is restricted by an independent function due to circuit design, and even if there is a bias in the number of rules set between each search unit, It is not possible to replace the search processing with a search section with a sufficient number of rules with a search section with a sufficient margin, and the circuit cannot be reused between the search sections. There is a disadvantage that the circuit cannot be used.

本発明は、このような事情に鑑みてなされたもので、検索部の回路を統合することにより、従来例のように使用されない回路部分を削減し、有効な回路利用が行え、全体的な検索部全体の回路規模を縮小することができる通信処理装置及び方法を提供することを目的とする。   The present invention has been made in view of such circumstances, and by integrating the circuit of the search unit, circuit portions that are not used as in the conventional example can be reduced, effective circuit utilization can be performed, and overall search can be performed. An object of the present invention is to provide a communication processing apparatus and method capable of reducing the circuit scale of the entire unit.

本発明の通信処理装置は、
フレームを受信し、前記フレームから前記フレーム内の所定の位置に記述されている情報または前記情報及び前記フレームを入力したインタフェースの情報を含む解析結果情報を取得し、前記解析結果情報に応じて、前記フレームの加工または前記フレームの転送を行う、通信処理装置であり、
解析結果情報に対する条件を示す検索条件情報と、フレームの加工または前記フレームの転送の処理方法を指定する判定情報を、検索テーブルのエントリとして記憶する記憶部と、
前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリの判定情報を出力する、検索部と、を有し、
前記記憶部が、前記検索テーブルの各エントリに1つの検索条件情報を記憶し、1つのエントリには、複数の検索カテゴリ別の判定情報と、当該検索カテゴリ別の判定情報の有効・無効を指定する結果有効フラグと、をそれぞれに記憶し、
前記検索部が、前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリのうち、当該エントリに記憶された検索カテゴリの結果有効フラグが有効を示す場合にのみ、当該エントリに記憶された判定情報を当該検索カテゴリの判定情報として出力する、
ことを特徴とする。
The communication processing apparatus of the present invention
Receiving a frame, obtaining information described in a predetermined position in the frame from the frame or analysis result information including the information and information of an interface that inputs the frame, and according to the analysis result information, A communication processing device for processing the frame or transferring the frame;
A storage unit that stores search condition information indicating a condition for the analysis result information, and determination information that specifies a processing method of frame processing or frame transfer, as an entry of a search table;
A search unit that determines whether or not the analysis result information is compatible based on the search condition information of each entry of the search table, and outputs determination information of the entry determined to be compatible;
The storage unit stores one piece of search condition information in each entry of the search table, and one entry specifies determination information for a plurality of search categories and validity / invalidity of the determination information for each search category And a result valid flag to be stored in each ,
Based on the search condition information of each entry of the search table, the search unit determines whether or not the analysis result information is compatible, and among the entries determined to be compatible, the result of the search category stored in the entry Only when the valid flag indicates valid, the determination information stored in the entry is output as the determination information of the search category.
It is characterized by that.

本発明の通信処理装置は、
前記検索カテゴリがフィルタ検索及び品質クラス検索であり、
前記通信処理装置が、前記解析結果情報に基づき、前記受信したフレームを送信する送信論理インタフェースを判定し、前記送信論理インタフェースを識別する送信論理インタフェース番号を取得する、経路検索部を有し、
前記経路検索部が、前記受信したフレームを送信する送信論理インタフェースを識別する送信論理インタフェース番号を取得した後に、前記検索部が、各フレーム毎に、解析結果情報,前記送信論理インタフェース番号とから、フィルタ検索及び品質クラス検索各々の判定情報を検索し、フレームの転送可否または品質クラスとして出力することを特徴とする。
The communication processing apparatus of the present invention
The search category is filter search and quality class search;
The communication processing apparatus, based on the analysis result information, and determines the transmission logic interface for transmitting the received frame, obtains the transmission logic interface number for identifying the transmission logic interface has a route search unit,
After the path search unit obtains a transmission logical interface number for identifying a transmission logical interface that transmits the received frame, the search unit obtains, for each frame, analysis result information, the transmission logical interface number , The determination information of each of the filter search and the quality class search is searched and output as frame transfer availability or quality class.

本発明の通信処理方法は、
フレームを受信し、前記フレームから前記フレーム内の所定の位置に記述されている情報または前記情報及び前記フレームを入力したインタフェースの情報を含む解析結果情報を取得し、前記解析結果情報に応じて、前記フレームの加工または前記フレームの転送を行う、通信処理方法であり、
解析結果情報に対する条件を示す検索条件情報と、フレームの加工または前記フレームの転送の処理方法を指定する判定情報を、検索テーブルのエントリとして記憶部に記憶する記憶過程と、
検索部が前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリの判定情報を出力する、検索過程と、
を有し、
前記記憶部に、前記検索テーブルの各エントリに1つの検索条件情報を記憶し、1つのエントリには、複数の検索カテゴリ別の判定情報と、当該検索カテゴリ別の判定情報の有効・無効を指定する結果有効フラグと、がそれぞれに記憶され、
前記検索部が、前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリのうち、当該エントリに記憶された検索カテゴリの結果有効フラグが有効を示す場合にのみ、当該エントリに記憶された判定情報を当該検索カテゴリの判定情報として出力する、
ことを特徴とする。
The communication processing method of the present invention includes:
Receiving a frame, obtaining information described in a predetermined position in the frame from the frame or analysis result information including the information and information of an interface that inputs the frame, and according to the analysis result information, A communication processing method for processing the frame or transferring the frame,
A storage process for storing search condition information indicating a condition for analysis result information and determination information for specifying a processing method of frame processing or frame transfer in a storage unit as an entry of a search table;
A search process in which the search unit determines whether or not the analysis result information is compatible based on search condition information of each entry of the search table, and outputs determination information of the entry determined to be compatible;
Have
In the storage unit, stores one search condition information in each entry of the look-up table, the one entry, and another determination information search categories of multiple, to enable or disable of the search category judgment information The result valid flag to be specified is stored in each ,
Based on the search condition information of each entry of the search table, the search unit determines whether or not the analysis result information is compatible, and among the entries determined to be compatible, the result of the search category stored in the entry Only when the valid flag indicates valid, the determination information stored in the entry is output as the determination information of the search category.
It is characterized by that.

本発明の通信処理方法は、フレームを受信し、前記フレームから前記フレーム内の所定の位置に記述されている情報または前記情報及び前記フレームを入力したインタフェースの情報を含む解析結果情報を取得し、前記解析結果情報に応じて、前記フレームの加工または前記フレームの転送を行う、通信処理方法であり、解析結果情報に対する条件を示す検索条件情報と、フレームの加工または前記フレームの転送の処理方法を指定する判定情報を、検索テーブルのエントリとして記憶部に記憶する記億過程と、検索部が前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリの判定情報を出力する、検索過程と、を有し、前記記億部に、前記検索テーブルの各エントリに、前記エントリが属する前記検索カテゴリを指定する検索カテゴリ情報が記憶され、前記検索部が、前記検索テーブルの各エントリの検索条件情報に基づき、解析結果情報に対して適合の有無を判定し、適合と判定したエントリについて、前記エントリに記憶された判定情報を、前記エントリに記憶された検索カテゴリ情報が指定する検索カテゴリの、判定情報として出力する、ことを特徴とする。   The communication processing method of the present invention receives a frame, acquires information described in a predetermined position in the frame from the frame or analysis result information including the information and information of an interface that inputs the frame, A communication processing method for processing the frame or transferring the frame according to the analysis result information, comprising: search condition information indicating a condition for the analysis result information; and a processing method for frame processing or the frame transfer. Based on the storage process of storing the determination information to be specified in the storage unit as an entry of the search table, and the search unit determines whether the analysis result information is compatible based on the search condition information of each entry of the search table. A search process for outputting the determination information of the entry determined to be compatible, and storing each entry of the search table in the storage section. Search category information that specifies the search category to which the entry belongs is stored, and the search unit determines whether or not the analysis result information is compatible based on search condition information of each entry in the search table, For the entry determined to be compatible, the determination information stored in the entry is output as determination information of the search category specified by the search category information stored in the entry.

以上説明したように、本発明によれば、従来例における入口フィルタ検索部,入口分類検索部,出口フィルタ検索部及び出口分類検索部を、ルールが記載された検索テーブルを含めた検索機能を、検索部として統合したため、従来例のように使用されない回路部分を削減し、有効な回路利用が行うことができる。
また、本発明によれば、上記各検索部の機能を統合したため、重複する回路部分を削減することができ、全体的な検索部全体の回路規模を縮小することができる。
As described above, according to the present invention, the entrance filter search unit, the entrance classification search unit, the exit filter search unit, and the exit classification search unit in the conventional example have a search function including a search table in which rules are described. Since the search unit is integrated, circuit portions that are not used as in the conventional example can be reduced, and effective circuit utilization can be performed.
Further, according to the present invention, since the functions of the respective search units are integrated, overlapping circuit portions can be reduced, and the overall circuit scale of the entire search unit can be reduced.

本発明の通信処理装置は、フレームを受信し、このフレームからフレーム内の所定の位置に記述されている情報またはこの情報及びフレームを入力したインタフェースの情報を含む解析結果情報を取得し、上記解析結果情報に応じて、フレームの加工またはフレームの転送を行うものであり、解析結果情報に対する条件を示す検索条件情報と、フレームの加工またはフレームの転送の処理方法を指定するフィルタ検索結果及び品質クラスを、検索テーブルのエントリとして記憶する記億部と、検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリのフィルタ検索結果及び品質クラスを出力する、検索部と、を有し、記億部が、検索テーブルの各エントリに、エントリが属する検索カテゴリを指定する検索カテゴリ情報を記憶し、検索部が、検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリについて、エントリに記憶されたフィルタ検索結果及び品質クラスを、エントリに記憶された検索カテゴリ情報が指定する検索カテゴリの、判定情報として出力する。
上記記億部には、検索テーブルの各エントリに、1つの検索条件情報に対応付けて、検索カテゴリ別のフィルタ検索結果及び品質クラスと、検索カテゴリ情報としてフィルタ検索結果及び品質クラス別の有効・無効を指定する結果有効フラグとが記憶されいる。
上記検索部は、検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリについて、エントリに記憶された結果有効フラグが有効を示す、エントリに記憶されたフィルタ検索結果及び品質クラスを、フィルタ検索結果及び品質クラスが属する検索カテゴリのフィルタ検索結果及び品質クラスとして出力する。
The communication processing device of the present invention receives a frame, acquires analysis result information including information described in a predetermined position in the frame or information of this information and an interface that inputs the frame from the frame, and performs the analysis Frame processing or frame transfer according to the result information, search condition information indicating conditions for analysis result information, filter search result and quality class specifying frame processing or frame transfer processing method Based on the search condition information of each entry in the search table and the filter search result of the entry determined to be compatible A search section that outputs a quality class, and the storage section is assigned to each entry of the search table. Search category information that specifies a search category to be stored, and the search unit determines whether or not the analysis result information is compatible based on the search condition information of each entry of the search table. The filter search result and quality class stored in the entry are output as determination information of the search category specified by the search category information stored in the entry.
In the storage part, each entry of the search table is associated with one search condition information, the filter search result and quality class for each search category, and the filter search result and quality class valid / A result valid flag designating invalidity is stored.
The search unit determines whether or not the analysis result information is compatible based on the search condition information of each entry in the search table, and the result valid flag stored in the entry indicates that the entry is determined to be compatible. The filter search result and quality class stored in the entry are output as the filter search result and quality class of the search category to which the filter search result and quality class belong.

すなわち、本発明の通信処理装置は、受信したフレームから、このフレーム内の所定の位置に記述されている情報、またはこの情報及び上記フレームを入力したインタフェースの情報を含む解析結果情報を取得し、この解析結果情報に応じて、フレームの加工またはこのフレームの転送を行う、通信処理装置に関わる。
上記通信処理装置は、イーサネット(登録商標)フレームのヘッダから、宛先・送信元MACアドレス,VLANタグの有無,VLANタグ有のときのVLAN ID、VLAN優先度、イーサネット(登録商標)タイプを抽出し、さらに、イーサネット(登録商標)タイプがPPPoEセッションステージを示す場合は、イーサネット(登録商標)フレームのヘッダに続くPPPoEヘッダから、PPPoE有の情報として、PPPoEセッションIDを抽出する。
That is, the communication processing device of the present invention acquires, from the received frame, analysis result information including information described at a predetermined position in the frame, or information on this information and the interface that inputs the frame, The present invention relates to a communication processing apparatus that processes a frame or transfers the frame according to the analysis result information.
The communication processing device extracts the destination / source MAC address, presence / absence of a VLAN tag, VLAN ID when there is a VLAN tag, VLAN priority, and Ethernet (registered trademark) type from the header of the Ethernet (registered trademark) frame. Further, when the Ethernet (registered trademark) type indicates the PPPoE session stage, the PPPoE session ID is extracted as information with PPPoE from the PPPoE header following the header of the Ethernet (registered trademark) frame.

また、イーサネット(登録商標)タイプもしくはPPPoEの上位プロトコルがIPV4またはIPV6を示す場合には、上位プロトコルが上記IPV4またはIPV6のいずれであるかを識別するIPV4/IPV6識別情報を取得し、さらに、イーサネット(登録商標)フレームのヘッダもしくはPPPoEヘッダに続くIPパケットのヘッダから、送信元・宛先IPアドレス、DSCP(IPV4のTOS、IPv6のトラフィッククラス)、上位プロトコル等を抽出する。   When the Ethernet (registered trademark) type or PPPoE upper layer protocol indicates IPV4 or IPV6, IPV4 / IPV6 identification information for identifying whether the upper layer protocol is IPV4 or IPV6 is acquired. From the header of the (registered trademark) frame or the header of the IP packet following the PPPoE header, the source / destination IP address, DSCP (IPV4 TOS, IPv6 traffic class), upper protocol, and the like are extracted.

さらに、上記IPパケットのヘッダに、IPフラグメントを示す情報が含まれている場合には、上記情報に基づき、フラグメント状態(フラグメント無,先頭/最後尾/中間)を識別するフラグメント状態情報を取得する。
また、上位プロトコルがTCPもしくはUDPである場合には、上記IPパケットのヘッダに続くTCP/UDPヘッダから、送信元・宛先ポート番号を抽出する。ここで、TCPヘッダからは、さらにTCPフラグ(SYN/ACK/FIN/RST等)を抽出する。
Further, when information indicating an IP fragment is included in the header of the IP packet, fragment state information for identifying a fragment state (no fragment, head / end / intermediate) is acquired based on the information. .
When the upper protocol is TCP or UDP, the source / destination port number is extracted from the TCP / UDP header following the header of the IP packet. Here, a TCP flag (such as SYN / ACK / FIN / RST) is further extracted from the TCP header.

一方、プロトコルがICMPである場合には、上記IPパケットのヘッダに続くICMPヘッダから、ICMPタイプ・コードを抽出する。
なお、本発明の通信処理装置には、WAN側ネットワーク接続用の物理インタフェースと、LAN側ネットワーク接続用の物理インタフェースを備えるため、この受信した物理インタフェースを示す情報が受信フレームに付加される。
さらに、本発明の通信処理装置には、IPsecのトンネルモードでのカプセル化を送信フレームに対して実施し、IPsecのトンネルモードでのデカプセル化を受信フレームに対して実施する、IPsec処理を有し、このIPsec処理において、受信フレームに対するIPsecの有無と、IPsecが有のときの受信IPsec SAを識別する受信SA番号、の情報が受信フレームに付加される。
上述したように、本発明の通信処理装置は、受信したフレームの各種ヘッダから抽出した情報、上記受信した物理インタフェースを示す情報、さらにこれらの情報に基づきIPsec等の処理を施した結果得られた情報を、解析結果情報として取得する。
On the other hand, when the protocol is ICMP, the ICMP type code is extracted from the ICMP header following the header of the IP packet.
Since the communication processing apparatus of the present invention includes a physical interface for connecting to the WAN side network and a physical interface for connecting to the LAN side network, information indicating the received physical interface is added to the received frame.
Furthermore, the communication processing apparatus of the present invention has an IPsec process for performing encapsulation in the IPsec tunnel mode for a transmission frame and performing decapsulation in the IPsec tunnel mode for a reception frame. In this IPsec process, information on the presence / absence of IPsec for the received frame and the received SA number for identifying the received IPsec SA when IPsec is present is added to the received frame.
As described above, the communication processing apparatus of the present invention is obtained as a result of performing processing such as IPsec based on information extracted from various headers of the received frame, information indicating the received physical interface, and the information. Information is acquired as analysis result information.

また、本発明の通信処理装置は、受信したフレームの上記解析結果情報に対して、受信論理I/F検索、NAT/NAPT検索、経路検索、フィルタ検索、品質クラス検索等の検索を行う各検索部を備える。この各検索部においては、解析結果情報に含まれる各種情報の全て、または一部(検索によって対象となる情報が異なる)に対して、外部(例えばCPU)から設定された転送条件情報に基づく適合判定のルールに従って、適合判定を行う。
本発明の通信処理装置は、上記転送条件情報を、フレームの加工またはこのフレームの転送の処理方法を指定する判定情報とともに、テーブルのエントリとして記憶している。上記テーブルの各エントリの転送条件情報に基づいて、受信したフレームの解析結果情報に対して、上記転送条件情報との適合の有無を判定し、適合が有ると判定したエントリの判定情報に基づいて、対応するフレームの加工またはこのフレームの転送の処理を行う。
In addition, the communication processing device of the present invention performs a search such as a reception logic I / F search, a NAT / NAPT search, a route search, a filter search, and a quality class search on the analysis result information of the received frame. A part. In each search unit, conformity based on transfer condition information set from the outside (for example, CPU) with respect to all or a part of the various information included in the analysis result information (target information differs depending on the search) Conformance is determined according to the determination rules.
The communication processing apparatus of the present invention stores the transfer condition information as a table entry together with determination information for specifying a frame processing or frame transfer processing method. Based on the transfer condition information of each entry in the table, it is determined whether or not the analysis result information of the received frame is compatible with the transfer condition information, and based on the determination information of the entry determined to be compatible The processing of the corresponding frame or the transfer of this frame is performed.

上記転送条件情報に基づく、エントリにおける適合判定のルールの一例を以下に示す。転送条件情報は、解析結果情報に含まれる各判定対象値(例えばフレームから抽出したあて先IPアドレス)に対して、一致/不―致を判定するための一致判定条件値や、一致判定対象値に対してマスクを行うための一致判定マスク値(例えばあて先IPアドレスの上位24ビットのみが比較対象であり下位8ビットをマスクする場合、すなわち、判定対象値の下位8ビットを0として各判定条件値と一致比較する場合、判定マスク値は、プレフィックス長である「24」、またはマスク長である「8」、となる)などである。このように、判定対象値に対して上記判定マスク値を用いてマスク処理を行った後に、一致判定条件値との一致・不―致の判定が行われる。   An example of a rule for conformity determination in the entry based on the transfer condition information is shown below. The transfer condition information includes a match determination condition value for determining match / mismatch or a match determination target value for each determination target value (for example, destination IP address extracted from the frame) included in the analysis result information. Match determination mask value for masking (for example, when only the upper 24 bits of the destination IP address are to be compared and the lower 8 bits are masked, that is, the lower 8 bits of the determination target value are set to 0, and each determination condition value The matching mask value is “24” as the prefix length or “8” as the mask length). As described above, after the mask process is performed on the determination target value using the determination mask value, the match / mismatch determination with the match determination condition value is performed.

また、転送条件情報は、解析結果情報中の各判定対象値(例えばあて先ポート番号)に対して、範囲内・範囲外を判定するための範囲判定最小値と範囲判定最大値である。上記判定対象値が対応する範囲判定最小値以上であり、かつ範囲判定最大値以下である場合に一致と判定し、上述した以外の場合、すなわち範囲判定最小値と範囲判定最大値との範囲内にないとことが検出された場合に不―致と判定される。このとき、複数の判定対象値の各々に対して一致・不一致の判定を行う場合には、上記複数の判定対象値全てに対して一致と判定された場合にのみ、適合と判定され、前記以外の場合には、不適合と判定される。   Further, the transfer condition information is a range determination minimum value and a range determination maximum value for determining inside / outside of range for each determination target value (for example, destination port number) in the analysis result information. When the determination target value is greater than or equal to the corresponding range determination minimum value and less than or equal to the range determination maximum value, it is determined to match, and in other cases, that is, within the range between the range determination minimum value and the range determination maximum value. If it is detected that it is not, it is determined as non-match. At this time, in the case of performing a match / mismatch determination for each of a plurality of determination target values, it is determined as conforming only when it is determined that all of the plurality of determination target values match. In this case, it is determined as nonconforming.

また、本発明の通信処理装置は、受信論理I/F検索、NAT/NAPT検索、経路検索、フィルタ検索、品質クラス検索、等の検索を行う各検索部が、各判定情報を出力する。この各検索部の動作について、下記に簡単に示す。
受信論理I/F検索を行う検索部において、受信論理I/F検索の判定対象値は、受信物理I/F,あて先MACアドレス,送信元MACアドレス,VLANタグ有無,VLANタグ有のときのVLANID,PPPoE有無,PPPoE有のときのPPPoEセッションID,受信IPsec有無,受信IPsec有のときの受信SA番号であり、判定結果は、受信論理I/F番号,NAT/NAPTの有無などである。ここで、受信論理I/F番号とは、VLANやIPsecによって1個の物理I/Fに複数個の論理I/Fを構成可能である場合に、フレームを受信した論理I/Fを識別する番号として用いられる。また、前記でNAT/NAPT有の結果を得たパケットのみが、後述のNAT/NAPT検索(グローバル→ローカル)の対象となる。
In the communication processing apparatus of the present invention, each search unit that performs a search such as a reception logic I / F search, a NAT / NAPT search, a route search, a filter search, and a quality class search outputs each determination information. The operation of each search unit is briefly described below.
In the search unit that performs the reception logical I / F search, the determination target value of the reception logical I / F search includes the reception physical I / F, the destination MAC address, the transmission source MAC address, the presence / absence of the VLAN tag, and the VLAN ID when the VLAN tag is present. , PPPoE presence / absence, PPPoE session ID when PPPoE is present, reception IPsec presence / absence, reception SA number when reception IPsec is present, and determination results include reception logical I / F number, presence / absence of NAT / NAPT, and the like. Here, the reception logical I / F number identifies a logical I / F that has received a frame when a plurality of logical I / Fs can be configured in one physical I / F by VLAN or IPsec. Used as a number. Further, only the packets obtained as a result of having NAT / NAPT as described above are subjected to NAT / NAPT search (global → local) described later.

また、NAT/NAPT検索を行う検索部において、NAT/NAPT検索(グローバル→ローカル)の判定対象値は、宛先IPアドレスと宛先TCP/UDPポート番号(NAPTのみ)であり、この宛先IPアドレスと宛先TCP/UDPポート番号とに対して、一致判定条件値が転送条件情報として、外部から設定される。これら宛先IPアドレスと宛先TCP/UDPポート番号に対しては、この判定において、すでに述べた一致判定マスク値はなく、判定対象値と一致判定条件値とが完全に一致するか否かによる判定が行われる。判定情報は、付け替え後のあて先IPアドレスと宛先TCP/UDPポート番号(NAPTのみ)である。ここで、NAT/NAPT検索(グローバル→ローカル)の対象となったパケットに対する、経路検索、フィルタ検索、品質クラス検索の各々は、解析結果情報に含まれあて先IPアドレスとあて先TCP/UDPポートではなく、NAT/NAPT検索結果である付け替え後のあて先IPアドレスとあて先TCP/UDPポートを、判定対象値として、適合判定を行う(グローバル→ローカルNAT/NAPTを行うパケットについてはローカルアドレスやポート番号に基づく検索が行われる)。   In the search unit that performs NAT / NAPT search, the determination target value of NAT / NAPT search (global → local) is a destination IP address and a destination TCP / UDP port number (NAPT only). A match determination condition value is set as transfer condition information from the outside for the TCP / UDP port number. For these destination IP addresses and destination TCP / UDP port numbers, there is no match determination mask value already described in this determination, and determination based on whether or not the determination target value and the match determination condition value match completely. Done. The determination information is the destination IP address after replacement and the destination TCP / UDP port number (NAPT only). Here, each of the route search, filter search, and quality class search for the NAT / NAPT search (global → local) target packet is not the destination IP address and the destination TCP / UDP port included in the analysis result information. , The destination IP address after reassignment and the destination TCP / UDP port as the NAT / NAPT search result are used as determination target values, and conformance determination is performed (for a packet to be subjected to global → local NAT / NAPT, based on the local address and port number) Search is performed).

経路検索の判定対象値は、受信論理I/F番号,送信元IPアドレス,あて先IPアドレスであり、これら受信論理I/F番号,送信元IPアドレス,あて先IPアドレス前記各々に対して、一致判定条件値と一致判定マスク値とが転送条件情報として、外部から設定される。ここで、受信論理I/F番号に対する一致判定マスク値は、受信論理I/F番号を判定条件に加えるか否かを示すフラグであり、このフラグを立てた場合、受信論理I/F番号に対する一致判定条件値との一致・不一致の判定結果によらず、一致として扱うこととなる。   The route search determination target values are a reception logical I / F number, a transmission source IP address, and a destination IP address. A match determination is made for each of the reception logical I / F number, transmission source IP address, and destination IP address. The condition value and the match determination mask value are set as transfer condition information from the outside. Here, the match determination mask value for the reception logic I / F number is a flag indicating whether or not the reception logic I / F number is added to the determination condition. When this flag is set, the match logic mask value for the reception logic I / F number is set. Regardless of the result of coincidence / non-coincidence with the coincidence decision condition value, it is handled as a coincidence.

また、送信元IPアドレス,あて先IPアドレスに対する一致判定マスク値は、プレフィックス長であり、IPアドレスの最上位ビットからプレフィックス長までのビットのみについて、一致判定条件値との一致・不―致の判定が行われる。判定情報は、送信I/F番号,宛先MACアドレス,NAT/NAPT有無,などである。ここで、送信論理I/F番号とは、パケットを送信する論理I/Fを識別する番号(受信論理I/Fと送信論理I/Fが同一である場合は番号も共通)である。また、上記判定情報を用いた判定において、NAT/NAPT有の結果を得たパケットのみが、後述のNAT/NAPT検索(ローカル→グローバル)の対象となる。   The match determination mask value for the source IP address and destination IP address is the prefix length, and only the bits from the most significant bit of the IP address to the prefix length are determined to match or not match with the match determination condition value. Is done. The determination information includes a transmission I / F number, a destination MAC address, presence / absence of NAT / NAPT, and the like. Here, the transmission logical I / F number is a number for identifying a logical I / F that transmits a packet (if the reception logical I / F and the transmission logical I / F are the same, the number is also common). In addition, in the determination using the determination information, only the packet that obtained the result having NAT / NAPT is subjected to the NAT / NAPT search (local → global) described later.

上述したNAT/NAPT検索(ローカル→グローバル)の判定対象値は、送信元IPアドレスと送信元TCP/UDPポート番号(NAPTのみ)とであり、この送信元IPアドレスと送信元TCP/UDPポート番号に対して、一致判定条件値が転送条件情報として、外部から設定される。これら送信元IPアドレスと送信元TCP/UDPポート番号に対しては、この判定において、すでに述べた一致判定マスク値はなく、判定対象値と一致判定条件値とが完全に一致するか否かによる判定が行われる。判定情報は、付け替え後の送信元IPアドレスと送信元TCP/UDPポート番号(NAPTのみ)である。   The above-described NAT / NAPT search (local → global) determination target values are the transmission source IP address and the transmission source TCP / UDP port number (NAPT only), and the transmission source IP address and the transmission source TCP / UDP port number. On the other hand, a match determination condition value is set as transfer condition information from the outside. For these source IP address and source TCP / UDP port number, there is no match determination mask value already described in this determination, and it depends on whether the determination target value and the match determination condition value completely match. A determination is made. The determination information is the source IP address and source TCP / UDP port number (NAPT only) after replacement.

フィルタ検索および品質クラス検索の判定対象値は、受信論理I/F番号,送信論理I/F番号,VLAN優先度,IPv4/IPv6識別情報,送信元IPアドレス,あて先IPアドレス,DSCP,フラグメント状態情報,上位プロトコル,送信元ポート番号,あて先ポート番号,TCPフラグ,ICMPタイプ・コードである。これら受信論理I/F番号,送信論理I/F番号,VLAN優先度,IPv4/IPv6識別情報,送信元IPアドレス,あて先IPアドレス,DSCP,フラグメント状態情報,上位プロトコル,送信元ポート番号,あて先ポート番号,TCPフラグ,ICMPタイプ・コードに対して、一致判定条件値と一致判定マスク値、あるいは、範囲判定最小値と範囲判定最大値とが、転送条件情報として、外部から設定される。   Determination target values for filter search and quality class search are reception logical I / F number, transmission logical I / F number, VLAN priority, IPv4 / IPv6 identification information, transmission source IP address, destination IP address, DSCP, fragment status information , Upper protocol, source port number, destination port number, TCP flag, and ICMP type code. These reception logical I / F number, transmission logical I / F number, VLAN priority, IPv4 / IPv6 identification information, transmission source IP address, destination IP address, DSCP, fragment status information, higher level protocol, transmission source port number, destination port For the number, TCP flag, and ICMP type code, a match determination condition value and a match determination mask value, or a range determination minimum value and a range determination maximum value are externally set as transfer condition information.

上記受信論理I/F番号,送信論理I/F番号,VLAN優先度,IPv4/IPv6識別情報,フラグメント状態情報,上位プロトコル,ICMPタイプ・コード各々に対する、一致判定マスク値は、これら受信論理I/F番号,送信論理I/F番号,VLAN優先度,IPv4/IPv6識別情報,フラグメント状態情報,上位プロトコル,ICMPタイプ・コード各々を判定条件に加えるか否かを示すフラグであり、このフラグを立てた上記判定対象値に対する判定結果は無条件にて一致として扱うこととなる。送信元IPアドレス,宛先IPアドレスに対する一致判定マスク値は、プレフィックス長であり、IPアドレスの最上位ビットからプレフィックス長までのビットのみについて、一致判定条件値との一致・不−致の判定が行われる。   The match determination mask value for each of the reception logical I / F number, transmission logical I / F number, VLAN priority, IPv4 / IPv6 identification information, fragment status information, upper protocol, and ICMP type code is the received logical I / F. F number, transmission logical I / F number, VLAN priority, IPv4 / IPv6 identification information, fragment status information, upper protocol, and ICMP type code are flags indicating whether or not to add to the determination condition. The determination result for the determination target value is unconditionally handled as a match. The match determination mask value for the source IP address and destination IP address is the prefix length, and only the bits from the most significant bit of the IP address to the prefix length are determined to match or not match with the match determination condition value. Is called.

また、DSCP,TCPフラグに対する、一致判定マスク値は、判定対象値のビット毎に、DSCP,TCPフラグ各々を判定条件に加えるか否かを示すマスクビットパターンであり、このマスクビットパターンのビットが1の判定対象値のビットを0として、一致判定条件値との一致・不一致の判定が行われる。
さらに、送信元ポート番号,宛先ポート番号に対しては、範囲判定最小値と範囲判定最大値とが、転送条件情報として外部から設定される。判定対象値であるポート番号が範囲判定最小値から範囲判定最大値までの範囲内にあるか否かにより、判定が行われる。フィルタ検索の判定情報は、破棄/通過等の指定であり、品質クラス検索結果は品質クラスに関する各種情報(送信時のVLAN優先度,リマ一クの有無,リマーク値=書換え後のDSCP,キューの指定など)である。
The match determination mask value for the DSCP and TCP flags is a mask bit pattern indicating whether or not each DSCP and TCP flag is added to the determination condition for each bit of the determination target value. The bit of the determination target value of 1 is set to 0, and determination of match / mismatch with the match determination condition value is performed.
Further, for the transmission source port number and the destination port number, a range determination minimum value and a range determination maximum value are set as transfer condition information from the outside. The determination is performed based on whether or not the port number that is the determination target value is within the range from the range determination minimum value to the range determination maximum value. The filter search judgment information is designation of discard / pass, etc., and the quality class search result includes various information related to the quality class (VLAN priority at the time of transmission, presence / absence of remark, remark value = DSCP after rewriting, queue status) Designation).

上記検索部は、従来例における入力フィルタ検索部501,入力分類検索部502,経路検索部503,出口フィルタ検索部504及び出口分類検索部505と、各検索テーブルとが記憶された記憶部とを有していることを特徴としている。
また、上記転送条件情報は、例えば、上述した転送元情報及び転送先情報の組合せから構成され、入力されるフレームのヘッダ情報に応じて、転送の可否及びフレームの通信のための分類クラスを判定するためのルール(規則)として記憶部に設定されている。
The search unit includes an input filter search unit 501, an input classification search unit 502, a route search unit 503, an exit filter search unit 504, and an exit classification search unit 505 in the conventional example, and a storage unit in which each search table is stored. It is characterized by having.
The transfer condition information is composed of, for example, a combination of the transfer source information and the transfer destination information described above, and determines whether transfer is possible and a classification class for frame communication according to the header information of the input frame. Is set in the storage unit as a rule (rule) for

<第1の実施形態>
以下、本発明の一実施形態による通信処理装置を図面を参照して説明する。図1は同実施形態による通信処理装置の構成を示す図である。すなわち、図1は、本発明の通信処理回路の第1実施形態による通信処理回路2を備えた通信処理装置1及び通信処理装置1がLAN(Local Area Network)及びWAN(Wide Area Network)に接続する構成を示す概略ブロック図である。
通信処理装置1は、GMII(Gigabit Medium Independent Interface)やMII(Medium Independent Interface)の規格のインタフェースを介してWANに接続する物理I/F(Interface)100及びLANに接続する物理I/F110と接続し、LAN側から送信されるパケットをWAN側へ転送し、また、WAN側から送信されるパケットをLAN側へ転送する。
<First Embodiment>
Hereinafter, a communication processing apparatus according to an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing a configuration of a communication processing apparatus according to the embodiment. That is, FIG. 1 shows that the communication processing device 1 and the communication processing device 1 including the communication processing circuit 2 according to the first embodiment of the communication processing circuit of the present invention are connected to a LAN (Local Area Network) and a WAN (Wide Area Network). It is a schematic block diagram which shows the structure to perform.
The communication processing apparatus 1 is connected to a physical I / F (Interface) 100 connected to a WAN and a physical I / F 110 connected to a LAN via an interface of GMII (Gigabit Medium Independent Interface) or MII (Medium Independent Interface) standards. Then, the packet transmitted from the LAN side is transferred to the WAN side, and the packet transmitted from the WAN side is transferred to the LAN side.

また、本実施形態の通信処理装置1では、OSIの第3層にあたるネットワーク層では、IPv4あるいはIPv6のパケットの送受信を行い、OSIの第2層にあたるデータリンク層では、イーサネット(登録商標)のフレームの送受信を行う。
以下、第2層に係る処理については送受信されるものについてはフレームと記載し、第3層に係る処理について送受信されるデータ、すなわちフレームからMACヘッダが除かれたものについてはパケットと記載して、パケット及びフレームを使い分けているが、フィルタリングの処理においては、ヘッダ情報としてフレームのヘッダが使用されている。
In the communication processing apparatus 1 according to the present embodiment, IPv4 or IPv6 packets are transmitted and received in the network layer corresponding to the third layer of OSI, and Ethernet (registered trademark) frames are transmitted in the data link layer corresponding to the second layer of OSI. Send and receive.
Hereinafter, the process related to the second layer is described as a frame when it is transmitted / received, and the data transmitted / received regarding the process according to the third layer, that is, a packet obtained by removing the MAC header from the frame is described as a packet. Although the packet and the frame are properly used, the header of the frame is used as the header information in the filtering process.

通信処理装置1は、転送処理の高速化を図るため半導体素子で構成される通信処理回路2と、CPU(中央処理部:Central Processing Unit)4と、DDR−SDRAM(Double Data Rate-Synchronous Dynamic Random Access Memory、以下、メモリとする)3とを備えている。
上記メモリ3は、半導体記憶素子であり、一定容量値、例えば2キロバイトごとに領域分割され、フレーム長が長いフレームであっても、短いフレームであっても分割した1つの領域を割り当てて記憶する。なお、分割されたそれぞれの領域は、後述するハンドル管理部18が付与するハンドル番号に対応付けられる。
The communication processing apparatus 1 includes a communication processing circuit 2 composed of semiconductor elements for speeding up transfer processing, a CPU (Central Processing Unit) 4, a DDR-SDRAM (Double Data Rate-Synchronous Dynamic Random). Access Memory (hereinafter referred to as “memory”) 3.
The memory 3 is a semiconductor memory element, and is divided into areas each having a constant capacity value, for example, 2 kilobytes, and allocates and stores one divided area regardless of whether the frame length is long or short. . Each divided area is associated with a handle number assigned by a handle management unit 18 described later.

CPU4は、主に通信処理回路2で転送処理を行うことができないフレームを通信処理回路2から受信し、受信したフレームに対する転送先を検出する等の処理を予め内部で動作するソフトウェアに基づいて行う。CPU4が備えるドライバ4aは、通信処理回路2がCPU4に入力するパケットのCPU4の内部のメモリへの書き込み及び読み出しを行い、また、通信処理回路2の各機能部の動作を制御する情報の設定を各機能部に対して行う。   The CPU 4 receives, from the communication processing circuit 2, a frame that cannot be transferred by the communication processing circuit 2 mainly, and performs processing such as detecting a transfer destination for the received frame based on software operating in advance. . The driver 4 a included in the CPU 4 writes and reads packets input to the CPU 4 by the communication processing circuit 2 to and from the internal memory of the CPU 4, and sets information for controlling the operation of each functional unit of the communication processing circuit 2. Perform for each functional unit.

通信処理回路2において、WAN用MAC(Media Access Control)I/F11は、WANに接続される物理I/F100へ接続する接続インタフェースである。LAN用MACI/F12は、LANに接続される物理I/F110へ接続する接続インタフェースである。WAN用MACI/F11及び、LAN用MACI/F12は、上記したGMII及びMIIに準拠した規格を有し、送受信するイーサネット(登録商標)のフレーム(以下、フレームと記載)に対してIEEE802.3準拠のMAC処理を行い、また、物理I/F100あるいは110との間で送受信されるフレームに対してCRC(Cyclic Redundancy Check)処理などを行う。   In the communication processing circuit 2, a WAN MAC (Media Access Control) I / F 11 is a connection interface connected to a physical I / F 100 connected to the WAN. The LAN MAC I / F 12 is a connection interface connected to the physical I / F 110 connected to the LAN. The WAN MAC I / F 11 and the LAN MAC I / F 12 have standards conforming to the above-mentioned GMII and MII, and comply with IEEE 802.3 for Ethernet (registered trademark) frames (hereinafter referred to as frames) to be transmitted and received. MAC processing is also performed, and CRC (Cyclic Redundancy Check) processing is performed on a frame transmitted / received to / from the physical I / F 100 or 110.

IPsec部13は、WAN用MACI/F11に接続され、RFC(Request for Comments)2406準拠のIPsec処理に基づく暗号化処理をWANに送信するパケットに対して行い、また、WANから受信するパケットに対して復号化処理を行う。ここで、RFC2406準拠のIPsec処理とは、RFC2403/2404準拠のHMAC−MD5(Keyed Hashing for Message Authentication Code-Message Digest 5)やHMAC−SHA−1(HMAC-Secure Hash Algorithm-1)の認証機能や、RFC2410/2451のNULL,CBC−AES(Cipher Block Chaining - Advanced Encryption Standard)の暗号機能などによるIPv4及びIPv6パケットに対する暗号化及び復号化処理である。   The IPsec unit 13 is connected to the WAN MAC I / F 11 and performs an encryption process based on an IPsec process conforming to RFC (Request for Comments) 2406 on a packet transmitted to the WAN, and a packet received from the WAN. To perform the decryption process. Here, RFC2406-compliant IPsec processing refers to RFC2403 / 2404-compliant HMAC-MD5 (Keyed Hashing for Message Authentication Code-Message Digest 5) and HMAC-SHA-1 (HMAC-Secure Hash Algorithm-1) authentication functions, This is encryption and decryption processing for IPv4 and IPv6 packets using the encryption function of RFC2410 / 2451 NULL, CBC-AES (Cipher Block Chaining-Advanced Encryption Standard), and the like.

書き込みスケジューラ部14は、IPsec部13と、LAN用MACI/F12と、CPU4に接続するCPUI/F15とに接続され、ラウンドロビン方式により、IPsec部13と、LAN用MACI/F12と、CPUI/F15の順に、これら3つの機能部によって情報が付加されたフレーム(以下、前記3つの機能部によって情報が付加されたフレームをフレーム情報と記載)を出力する。   The write scheduler unit 14 is connected to the IPsec unit 13, the MAC I / F 12 for LAN, and the CPU I / F 15 connected to the CPU 4, and in a round robin manner, the IPsec unit 13, the MAC I / F 12 for LAN, and the CPU I / F 15 are connected. In this order, a frame to which information is added by these three function units (hereinafter, a frame to which information is added by the three function units will be described as frame information) is output.

CPUI/F15は、通信処理回路2の各機能部と、書き込みスケジューラ部14と、メモリコントローラ部17とCPU4とに接続され、メモリコントローラ部17から出力されるフレーム情報をCPU4に入力する。また、CPU4から出力されるフレームを書き込みスケジューラ部14に入力する。また、CPU4が通信処理回路2の各機能部に対して設定を行う際、CPUI/F15は、設定情報を該当する機能部に入力する。
DDR−SDRAMI/F(以下、メモリI/Fとする)19は、メモリコントローラ部17とメモリ3に接続され、メモリコントローラ部17とメモリ3の間でフレームの入出力を行う。
The CPU I / F 15 is connected to each functional unit of the communication processing circuit 2, the write scheduler unit 14, the memory controller unit 17, and the CPU 4, and inputs frame information output from the memory controller unit 17 to the CPU 4. The frame output from the CPU 4 is input to the write scheduler unit 14. Further, when the CPU 4 performs setting for each function unit of the communication processing circuit 2, the CPU I / F 15 inputs setting information to the corresponding function unit.
A DDR-SDRAM I / F (hereinafter referred to as a memory I / F) 19 is connected to the memory controller unit 17 and the memory 3, and performs frame input / output between the memory controller unit 17 and the memory 3.

フレーム生成部16は、予めCPU4のドライバ4aから設定される情報に基づいて、メモリコントローラ部17から出力されるフレームに対して送信先の論理インタフェースに応じたVLAN(Virtual LAN)タグやPPPoE(Point to Point Protocol over Ethernet:Ethernetは登録商標)ヘッダの挿入を行い、当該挿入を行ったフレームを出力する。また、フレーム生成部16は、宛先MACアドレスの付け替え、NAT(Network Address Translation)/NAPT(Network Address Port Translation)のためのIPアドレス及びポート番号の付け替えを行う。また、フレーム生成部16は、IPsec部13に出力するフレーム対してIPsecSA(Security Association)の情報の付加を行う。また、フレーム生成部16は、DSCP(DiffServ Code Point)のIPパケットのヘッダへの付加、VLAN priorityのフレームのヘッダへの付加を行う。DSCPやVLAN priorityは、優先制御の際に参照される品質クラス情報となる。ここで、品質クラス情報とは、転送されるフレームに含まれる情報の種別を分類する分類情報であり、分類情報によって示される情報の種別が例えば音声の場合には、当該分類種別を有するフレームには遅延が少ない高い品質の通信処理が適用されることになる。   Based on information set in advance from the driver 4 a of the CPU 4, the frame generation unit 16 applies a VLAN (Virtual LAN) tag or PPPoE (Point) corresponding to the logical interface of the transmission destination for the frame output from the memory controller unit 17. to Point Protocol over Ethernet: Ethernet is a registered trademark) header and inserts the inserted frame. The frame generation unit 16 also changes the destination MAC address and the IP address and port number for NAT (Network Address Translation) / NAPT (Network Address Port Translation). Further, the frame generation unit 16 adds information on IPsec SA (Security Association) to the frame output to the IPsec unit 13. Further, the frame generation unit 16 adds DSCP (DiffServ Code Point) to the header of the IP packet and adds it to the header of the VLAN priority frame. DSCP and VLAN priority are quality class information that is referred to during priority control. Here, the quality class information is classification information for classifying the type of information included in the transferred frame. When the type of information indicated by the classification information is, for example, voice, the quality class information is a frame having the classification type. Therefore, high-quality communication processing with a small delay is applied.

ハンドル管理部18は、QoS(Quality of Service)部70と、メモリコントローラ部17とに接続され、メモリ3の分割された領域のそれぞれに対応するハンドル番号に基づいてメモリ3の分割された領域の空塞管理を行う。ここで、空塞管理とは、メモリコントローラ部17へは空きハンドル番号を出力して使用中のハンドル番号として管理し、QoS部70から入力されるフレーム破棄により返却対象となるハンドル番号や、送信により返却対象となるハンドル番号については領域が空きとなるため、空きのハンドル番号として管理する。また、ハンドル管理部18は、マルチキャストフレームの場合には、マルチキャストの回数分送信が終了するまで、フレームを削除できないため、QoS部70が、メモリコントローラ部17にジョブ情報を出力した情報を図1に示すQoS部70からメモリコントローラ部17へ直接接続する接続線から分岐する線により参照して、送信開始時に定められるマルチキャストの回数を管理する。   The handle management unit 18 is connected to the QoS (Quality of Service) unit 70 and the memory controller unit 17, and determines the divided areas of the memory 3 based on the handle numbers corresponding to the divided areas of the memory 3. Perform airfight management. Here, empty block management means that an empty handle number is output to the memory controller unit 17 and managed as a handle number in use. The handle number to be returned by discarding a frame input from the QoS unit 70 or transmission The handle number to be returned is managed as an empty handle number because the area becomes empty. Further, in the case of a multicast frame, the handle management unit 18 cannot delete the frame until transmission for the number of times of multicasting is completed, and therefore the information that the QoS unit 70 outputs job information to the memory controller unit 17 is shown in FIG. The number of multicasts determined at the start of transmission is managed with reference to a line branched from a connection line directly connected from the QoS unit 70 to the memory controller unit 17 shown in FIG.

メモリコントローラ部17は、書き込みスケジューラ部14と、フレーム生成部16と、メモリI/F19と、パーサ部30と、ハンドル管理部18と、QoS部70とに接続されている。メモリコントローラ部17は、書き込みスケジューラ部14から入力されるフレーム情報に対し、ハンドル管理部18から付与された空きハンドルのハンドル番号に対応するメモリ3の分割された領域に、メモリI/F19を介してメモリ3に書き込む。また、メモリコントローラ部17は、書き込みスケジューラ部14から入力されるフレーム情報に対し、ハンドル管理部18から付与されたハンドル番号を付加してパーサ部30に出力する。また、メモリコントローラ部17は、後述するQoS部70から出力されるジョブ情報に含まれるハンドル番号に対応するメモリ3の領域からメモリI/F19を介してフレーム情報を読み出し、読み出したフレーム情報に対してジョブ情報に基づく情報を付加し、フレーム生成部16に出力、あるいはCPUI/F15を介してCPU4に出力する。   The memory controller unit 17 is connected to the write scheduler unit 14, the frame generation unit 16, the memory I / F 19, the parser unit 30, the handle management unit 18, and the QoS unit 70. The memory controller unit 17 receives the frame information input from the write scheduler unit 14 via the memory I / F 19 in a divided area of the memory 3 corresponding to the handle number of the empty handle assigned from the handle management unit 18. Write to the memory 3. Further, the memory controller unit 17 adds the handle number given from the handle management unit 18 to the frame information input from the write scheduler unit 14 and outputs the frame information to the parser unit 30. Further, the memory controller unit 17 reads frame information from the area of the memory 3 corresponding to the handle number included in the job information output from the QoS unit 70 to be described later via the memory I / F 19, and outputs the frame information to the read frame information. Information based on the job information is added and output to the frame generation unit 16 or output to the CPU 4 via the CPU I / F 15.

パーサ部30は、メモリコントローラ部17によりハンドル番号が付加されたフレーム情報に対して解析を行い、フレーム情報から転送処理に係る情報であるヘッダ情報などを抽出し、解析結果情報としてメモリコントローラ部17が付加したハンドル番号等の情報とともに、検索部40に対して出力する。
すなわち、パーサ部30は、メモリコントローラ部17から入力されるフレーム情報がCPU転送要因を有するフレームであるか否かを予め内部に記憶しているフレーム解析条件情報に基づいて解析し、解析結果情報をハンドル番号等の付加情報とともに検索部40に出力する。ここで、予め内部に記憶しているフレーム解析条件情報とは、以下の条件を示した情報を含んでいる。すなわち、フレームに含まれるIPパケットにおいて、非IPパケット、すなわちIPパケットでない場合、IPヘッダのパラメータが異常である場合、ヘッダオプション付きIPパケットの場合などである。なお、ヘッダオプション付きIPパケットについて、IPv6の場合には拡張ヘッダ付きIPパケットも含まれる。
The parser unit 30 analyzes the frame information to which the handle number is added by the memory controller unit 17, extracts header information that is information related to transfer processing from the frame information, and the memory controller unit 17 as analysis result information. Is output to the search unit 40 together with information such as the handle number added.
That is, the parser unit 30 analyzes whether or not the frame information input from the memory controller unit 17 is a frame having a CPU transfer factor based on the frame analysis condition information stored therein in advance, and the analysis result information Is output to the search unit 40 together with additional information such as a handle number. Here, the frame analysis condition information stored in advance in advance includes information indicating the following conditions. That is, the IP packet included in the frame is a non-IP packet, that is, not an IP packet, an IP header parameter is abnormal, or an IP packet with a header option. As for IP packets with header options, IP packets with extension headers are also included in the case of IPv6.

検索部40は、パーサ部30(転送条件抽出部)から入力される解析結果情報に基づいて、予めCPU4により検索部40の内部に設定される転送条件情報を参照し、転送条件情報に基づいて、当該フレームを破棄するか、通過させるか、CPU4へ転送、すなわちCPU4へ入力するかを示すフィルタ検索結果、経路検索結果,NAT/NAPT検索結果及び品質クラス検索結果などを検出し、検出したこれらの結果と、パーサ部30から入力される解析結果情報の一部の情報、例えばエラー情報やフレーム長とともにCPU転送判定部61に出力する。ここで、転送条件情報に含まれる条件としては、MACアドレス、IPアドレス、ポート番号、送信元情報などがあり、解析結果情報に含まれるフレームのヘッダ情報がこれらの転送条件情報に一致するか否かの検索が行われる。この検索部40の構成については、後に詳細に説明する。   The search unit 40 refers to transfer condition information set in advance in the search unit 40 by the CPU 4 based on the analysis result information input from the parser unit 30 (transfer condition extraction unit), and based on the transfer condition information. Detect the filter search result, route search result, NAT / NAPT search result and quality class search result indicating whether the frame is to be discarded, passed or transferred to the CPU 4, that is, input to the CPU 4. And a part of the analysis result information input from the parser unit 30, for example, error information and frame length, are output to the CPU transfer determination unit 61. Here, the conditions included in the transfer condition information include a MAC address, an IP address, a port number, transmission source information, and the like, and whether or not the frame header information included in the analysis result information matches these transfer condition information. A search is performed. The configuration of the search unit 40 will be described in detail later.

CPU転送判定部61は、検索部40においてCPU4へ転送する要因があるとして検出されたフレームに対して、CPU転送要因を示す情報、すなわち後述するCPU転送要因フラグを付与し、CPU4へ転送するか、あるいは破棄するかを判定し、判定したフィルタ検索結果を、検索部40から出力される情報とともに出力する。   Whether the CPU transfer determination unit 61 assigns information indicating a CPU transfer factor, that is, a CPU transfer factor flag, which will be described later, to a frame detected by the search unit 40 as having a factor to be transferred to the CPU 4 and transfers the frame to the CPU 4 Or whether to discard, and outputs the determined filter search result together with the information output from the search unit 40.

キュー選択部62は、CPU転送判定部61から入力される情報に含まれる品質クラス情報や送信先の論理I/Fの情報に基づいてQoS部70がキューを選択する際に参照するキュー番号を検出し、CPU転送判定部61から出力される情報と、検出したキュー番号とを出力する。   The queue selection unit 62 selects a queue number to be referred to when the QoS unit 70 selects a queue based on the quality class information included in the information input from the CPU transfer determination unit 61 or the logical I / F information of the transmission destination. Information detected and output from the CPU transfer determination unit 61 and the detected queue number are output.

QoS部70は、キュー選択部62から出力される情報に基づいてジョブ情報を生成し、同じくキュー選択部62から出力されるキュー番号に基づいて、生成したジョブ情報を該当するキューに記録する。また、QoS部70は、キューに記録されているジョブ情報を予め定められているキューごとの優先度に基づいて読み出し、メモリコントローラ部17へ出力する。また、メモリコントローラ部17へ出力する際に、ハンドル番号を返却するためハンドル管理部18へ出力する。ここで、ジョブ情報とは、WAN用MACI/F11やLAN用MACI/F12から送信されるフレームに対しては、受信フレーム長、送信フレーム長、送信論理I/F、宛先MACアドレス、NAT/NAPT指定、DSCPやVLAN priority等の情報に対応する品質クラス、ハンドル番号等の情報から構成されている。また、CPU4に転送されるフレームに対しては、ジョブ情報は、受信フレーム長、送信フレーム長、受信論理I/F、CPU転送理由、品質クラス、ハンドル番号等の情報から構成される。   The QoS unit 70 generates job information based on the information output from the queue selection unit 62, and records the generated job information in the corresponding queue based on the queue number output from the queue selection unit 62. Further, the QoS unit 70 reads out job information recorded in the queue based on a predetermined priority for each queue, and outputs it to the memory controller unit 17. Further, when outputting to the memory controller unit 17, it outputs it to the handle management unit 18 in order to return the handle number. Here, the job information refers to the received frame length, transmission frame length, transmission logical I / F, destination MAC address, NAT / NAPT for frames transmitted from the WAN MAC I / F 11 or LAN MAC I / F 12. It consists of information such as designation, quality class corresponding to information such as DSCP and VLAN priority, and handle number. For frames transferred to the CPU 4, the job information includes information such as a reception frame length, a transmission frame length, a reception logic I / F, a CPU transfer reason, a quality class, and a handle number.

なお、CPU転送判定部61において破棄すると判定されたフレームついてはCPU転送判定部61あるいはQoS部70のいずれかにより破棄されることとなる。   Note that the frame determined to be discarded by the CPU transfer determination unit 61 is discarded by either the CPU transfer determination unit 61 or the QoS unit 70.

次に、図2を参照して、検索部40の構成を詳細に説明する。この図2は、第1の実施形態による検索部40の構成例を示すブロック図である。本実施形態及び以降に説明する他の第2〜第3の実施形態において、検索部40は、フィルタ検索結果とともに解析結果情報(ハンドル番号等の付加情報を含む)を、次段のCPU転送判定部61に対して出力する。
検索部40は、記憶部41,ルール読出部42,適合判定部43,記憶部44,ルール読出部45及び適合判定部46を有している。ここで、記憶部41,ルール読出部42,適合判定部43は経路検索を行う経路検索部を構成し、記憶部44,ルール読出部45,適合判定部46はフィルタ検索及び品質クラス検索を行うフィルタ・品質クラス検索部を構成している。
また、図には示していないが、適合判定部43の前段には、受信論理I/F検索部およびNAT/NAPT検索部が適合判定部43と同様の構成で設けられるようにしてもよい。
この図2における記憶部41には、フレームを転送する宛先への経路の適合検出(検索)処理に用いられるルールが記載された経路情報テーブルが記憶されている。
ここで、上記受信論理I/F検索部およびNAT/NAPT検索部各々には、適合判定部43と同様に、それぞれ受信論理I/F検索処理,NAT/NAPT検索処理に用いられるルールが記載された検索テーブルが記憶されている。
Next, the configuration of the search unit 40 will be described in detail with reference to FIG. FIG. 2 is a block diagram illustrating a configuration example of the search unit 40 according to the first embodiment. In this embodiment and other second to third embodiments described below, the search unit 40 uses the analysis result information (including additional information such as a handle number) together with the filter search result to determine CPU transfer in the next stage. To the unit 61.
The search unit 40 includes a storage unit 41, a rule reading unit 42, a conformity determination unit 43, a storage unit 44, a rule readout unit 45, and a conformity determination unit 46. Here, the storage unit 41, the rule reading unit 42, and the conformity determination unit 43 constitute a route search unit that performs a route search, and the storage unit 44, the rule readout unit 45, and the conformity determination unit 46 perform a filter search and a quality class search. Configures the filter / quality class search unit.
Although not shown in the figure, a reception logic I / F search unit and a NAT / NAPT search unit may be provided in the same stage as the match determination unit 43 in the preceding stage of the match determination unit 43.
The storage unit 41 in FIG. 2 stores a route information table in which rules used for a route adaptation detection (search) process for a destination to which a frame is transferred are described.
Here, each of the reception logic I / F search unit and the NAT / NAPT search unit describes rules used for the reception logic I / F search process and the NAT / NAPT search process, respectively, as in the case of the conformity determination unit 43. A search table is stored.

上記受信論理I/F検索部に対応する検索テーブルには、パーサ部30から入力する解析結果情報に基づいた受信論理I/F検索の検索結果を得るためのルールとして、受信側の物理インターフェース,VLAN識別情報,送信元MACアドレス,PPPoE Session識別情報,受信SA(Security Association)番号,上位プロトコルなどのいずれかまたは組合せが記憶され、これらのルールそれぞれに対応した受信論理I/F検索結果(受信論理I/F番号)が記憶されている。
また、上記NAT/NAPT検索部に対応する検索テーブルには、パーサ部30から入力する解析結果情報と、前段の受信論理I/F検索結果と、に基づいたNAT/NAPT検索の検索結果を得るためのルールとして、NATに対してIPグローバルアドレス及びIPローカルアドレスのいずれかまたは組合せ、NAPTに対してIPグローバルアドレス,IPローカルアドレス,L4フラグ(TCPまたはUDPの判定フラグ),グローバルポイント番号,ローカルポート番号などが記憶され、これらのルールそれぞれに対応したNAT/NAPT検索結果(適合エントリの有無,変更後のIPアドレスとポート番号,エントリ番号など)が記憶されている。
In the search table corresponding to the reception logic I / F search unit, as a rule for obtaining the search result of the reception logic I / F search based on the analysis result information input from the parser unit 30, a physical interface on the reception side, Any one or a combination of VLAN identification information, transmission source MAC address, PPPoE Session identification information, reception SA (Security Association) number, upper layer protocol, etc. is stored, and a reception logical I / F search result (reception received) corresponding to each of these rules (Logical I / F number) is stored.
The search table corresponding to the NAT / NAPT search unit obtains the search result of the NAT / NAPT search based on the analysis result information input from the parser unit 30 and the reception logic I / F search result of the previous stage. Rules for NAT include any or a combination of IP global address and IP local address for NAT, IP global address, IP local address, L4 flag (TCP / UDP determination flag), global point number, local for NAPT Port numbers and the like are stored, and NAT / NAPT search results (existence of conforming entry, changed IP address and port number, entry number, etc.) corresponding to each of these rules are stored.

また、上記経路情報テーブルには、パーサ部30から入力する解析結果情報と、前段の受信論理I/F検索結果およびNAT/NAPT検索結果と、に基づいた経路検索結果のフィルタ検索結果を得るためのルールとして、受信論理インターフェース(ルールにおいて複数の受信論理インターフェースを指定可),L3プロトコル(ルールにおいて、Pv4またはIPv6のいずれかを指定可),送信元IPv4/IPv6アドレス,宛先IPv4/IPv6アドレス等のいずれかまたは組合せが記憶され、これらのルールそれぞれに対応した経路検索結果が記憶されている。
経路検索結果のフィルタ検索結果としては、適合エントリの有無,宛先MACアドレス,送信論理I/F番号(インターフェース別のフラグ),検索ミスヒット有無情報(適合検出により適合したか否かを示す情報),MTU値,送信時のNAT/NAPT処理の有無,自宛の有無(自宛の転送理由に基づくCPU4への転送の有無),エントリ番号等がある。
Further, in the route information table, to obtain the filter search result of the route search result based on the analysis result information inputted from the parser unit 30, the reception logic I / F search result and the NAT / NAPT search result of the previous stage. As a rule, a receiving logical interface (a plurality of receiving logical interfaces can be specified in the rule), an L3 protocol (either Pv4 or IPv6 can be specified in the rule), a source IPv4 / IPv6 address, a destination IPv4 / IPv6 address, etc. Are stored, and route search results corresponding to the respective rules are stored.
Filter search results of route search results include the presence / absence of a matching entry, destination MAC address, transmission logical I / F number (interface-specific flag), search miss presence / absence information (information indicating whether or not matching was detected by matching detection) , MTU value, presence / absence of NAT / NAPT processing at the time of transmission, presence / absence of own address (presence / absence of transfer to CPU 4 based on transfer reason addressed to own), entry number, etc.

適合判定部43は、パーサ部30から解析結果情報,受信論理I/F検索結果およびNAT/NAPT検索結果が入力されると、ルール読出部42に対して、記憶部41からのルールの読み出しを依頼する。
ルール読出部42は、適合判定部43の要求に基づき、検索条件情報とその検索条件情報に対応した経路検索結果とを読み出し、適合判定部43へ出力する。
また、適合判定部43は、上記解析結果情報と、順次読み出される検索条件情報とを比較して、解析結果情報,受信論理I/F検索結果およびNAT/NAPT検索結果に対して適合する検索条件情報の有無を検出する。
ここで、適合判定部43は、経路情報テーブルにおける全ての検索条件情報と、入力された解析結果情報,受信論理I/F検索結果およびNAT/NAPT検索結果との比較が終了した際、解析結果情報が複数のルールに適合した場合、優先度の最も高い検索条件情報に対応したフィルタ検索結果を、解析結果情報,受信論理I/F検索結果およびNAT/NAPT検索結果及びハンドル番号などの付加情報とともに、経路情報結果として適合判定部46へ出力する。
When the analysis result information, the reception logic I / F search result, and the NAT / NAPT search result are input from the parser unit 30, the conformity determination unit 43 reads the rule from the storage unit 41 to the rule reading unit 42. Ask.
The rule reading unit 42 reads the search condition information and the route search result corresponding to the search condition information based on the request of the match determination unit 43, and outputs it to the match determination unit 43.
Further, the suitability determination unit 43 compares the analysis result information with the search condition information that is sequentially read out, and the search condition that matches the analysis result information, the reception logic I / F search result, and the NAT / NAPT search result. Detect the presence of information.
Here, the conformity determination unit 43, when the comparison between all the search condition information in the route information table and the input analysis result information, the reception logic I / F search result, and the NAT / NAPT search result is completed, When the information conforms to a plurality of rules, the filter search result corresponding to the search condition information with the highest priority is added to the additional information such as analysis result information, reception logic I / F search result, NAT / NAPT search result, and handle number. At the same time, the result is output to the conformity determination unit 46 as a route information result.

また、記憶部44には、図3に示すように、少なくとも検索テーブル群として、フィルタ・分類テーブル,結果有効フラグテーブル,フィルタ検索結果テーブル及び品質クラス検索結果テーブルが記憶されている。
フィルタ・品質クラス検索の検索対象は、受信論理I/F番号,送信論理I/F番号,VLAN優先度,IPV4/IPV6識別情報,送信元IPアドレス,あて先IPアドレス,DSCP,フラグメント状態情報,上位プロトコル,送信元ポート番号,あて先ポート番号,TCPフラグ,ICMPタイプ・コードである。
ここで、NAT/NAPT検索(グローバル→ローカル)の対象となったパケットについては、解析結果情報に含まれるあて先IPアドレスとあて先TCP/UDPポートではなく、NAT/NAPT検索結果である付け替え後のあて先IPアドレスとあて先TCP/UDPポートを、検索の対象とする(つまり、グローバル→ローカルNAT/NAPTを行うパケットについてはローカルアドレスやポート番号に基づく検索が行われる)。
また、受信論理I/F番号は受信論理I/F検索により取得されたものであり、送信論理I/F番号は経路検索により取得されたものである。前記以外の検索対象は、パーサ部30がパケットから抽出した解析結果情報に含まれる。
上記検索対象に対して、一致判定条件値と一致判定マスク値、あるいは、範囲判定最小値と範囲判定最大値が、フィルタ・分類検索テーブルの検索条件情報として外部から設定され、記憶部に記憶される。受信論理I/F番号,送信論理I/F番号,VLAN優先度,IPv4/IPv6識別情報,フラグメント状態情報,上位プロトコル,ICMPタイプ・コードに対する、一致判定マスク値は、前記を判定条件に加えるか否かを示すフラグであり、このフラグを立てた上記判定対象値に対する判定結果は一致として扱う。
送信元IPアドレス,あて先IPアドレスに対する一致判定マスク値は、プレフィックス長であり、IPアドレスの最上位ビットからプレフィックス長までのビットのみについて、一致判定条件値との一致・不一致の判定を行う。DSCP,TCPフラグに対する、一致判定マスク値は、前記検索対象(DSCP,TCPフラグ)のビット毎に、前記を判定条件に加えるか否かを示すマスクビットパターンであり、このマスクビットが1の検索対象のビットを0とみなして、一致判定条件値との一致・不一致の判定を行う。
送信元ポート番号,あて先ポート番号に対しては、範囲判定最小値と範囲判定最大値が、検索条件情報として外部から設定される。検索対象であるポート番号が範囲判定最小値から範囲判定最大値の範囲内であるか否かにより、判定を行う。フィルタ検索の判定情報は、破棄/通過等の指定であり、品質クラス検索結果は品質クラスに関する各種情報(送信時のVLAN優先度,リマークの有無,リマーク値=書換え後のDSCP,キューの指定など)である。
ここで、各検索条件情報毎に付けられたエントリ番号は、例えば#1から#mあり、それぞれが、フィルタ・分類検索テーブルにおける、ルール#1からルール#mの検索条件情報に対応している。
本実施形態においては、フィルタ・分類検索テーブルとして構成、すなわち同一の検索テーブルに記述する条件式の検索カテゴリとして、フィルタ検索及び品質クラスの検索を選択しているが、経路検索,フィルタ検索及び品質クラス検索を、同一の検索テーブルに記載する検索カテゴリとして、経路・フィルタ・分類検索テーブルから、解析結果情報と受信論理I/F検索結果により、経路検索を含めたフィルタ検索結果を検索するようにてもよい。
As shown in FIG. 3, the storage unit 44 stores at least a filter / classification table, a result valid flag table, a filter search result table, and a quality class search result table as a search table group.
The search target of the filter / quality class search is reception logical I / F number, transmission logical I / F number, VLAN priority, IPV4 / IPV6 identification information, transmission source IP address, destination IP address, DSCP, fragment status information, and higher order. Protocol, source port number, destination port number, TCP flag, ICMP type code.
Here, for the packet subjected to the NAT / NAPT search (global → local), the destination after the replacement, which is the NAT / NAPT search result, not the destination IP address and the destination TCP / UDP port included in the analysis result information. The search is performed on the IP address and the destination TCP / UDP port (that is, a search based on the local address and port number is performed for a packet that performs global → local NAT / NAPT).
Further, the reception logic I / F number is acquired by the reception logic I / F search, and the transmission logic I / F number is acquired by the route search. Other search targets are included in the analysis result information extracted from the packet by the parser unit 30.
For the above search target, the match determination condition value and the match determination mask value, or the range determination minimum value and the range determination maximum value are set from the outside as the search condition information of the filter / classification search table and stored in the storage unit. The Whether the match judgment mask value for the reception logical I / F number, transmission logical I / F number, VLAN priority, IPv4 / IPv6 identification information, fragment status information, upper protocol, ICMP type code is added to the judgment condition. It is a flag indicating whether or not, and the determination result for the determination target value for which this flag is set is treated as coincidence.
The match determination mask value for the source IP address and the destination IP address is the prefix length, and only the bits from the most significant bit of the IP address to the prefix length are determined to match or do not match the match determination condition value. The match determination mask value for the DSCP and TCP flags is a mask bit pattern indicating whether or not to add the above to the determination condition for each bit of the search target (DSCP and TCP flag). The target bit is regarded as 0, and a match / mismatch determination with the match determination condition value is performed.
For the transmission source port number and the destination port number, the range determination minimum value and the range determination maximum value are set as search condition information from the outside. The determination is made based on whether or not the port number to be searched is within the range of the range determination minimum value to the range determination maximum value. The filter search judgment information specifies discard / pass, etc., and the quality class search result includes various information related to the quality class (VLAN priority at transmission, presence / absence of remark, remark value = DSCP after rewriting, specification of queue, etc.) ).
Here, the entry numbers assigned to each search condition information are, for example, # 1 to #m, and each corresponds to the search condition information of rule # 1 to rule #m in the filter / classification search table. .
In this embodiment, filter search and quality class search are selected as the filter / category search table, that is, the search category of the conditional expression described in the same search table. As a search category described in the same search table, a class search is searched for a filter search result including a route search from the route / filter / classification search table based on the analysis result information and the reception logic I / F search result. May be.

結果有効フラグテーブルには、上記エントリ番号に対応、すなわち各ルール毎に対応して、検索条件情報からの検索結果としてのフィルタ検索結果及び品質クラス検索結果において、検索結果である判定情報がいずれの検索カテゴリに対して有効か、すなわち得られた判定情報がフィルタ検索結果または品質クラス検索結果のいずれの検索カテゴリであるかを判定するフラグレジスタ(検索カテゴリ情報)が設けられており、例えば、このフラグレジスタに「0」が書き込まれている場合、フィルタ検索結果であること、すなわち検索カテゴリとしてフィルタ検索のフィルタ検索結果であることを示し、一方、「1」が書き込まれている場合、品質クラス検索結果であること、すなわち検索カテゴリとして品質クラス検索(分類検索)の品質クラス結果であることを示している。
したがって、検索条件情報の解析結果情報,受信論理I/F検索結果,NAT/NAPT検索結果及び経路検索結果に対応した検索結果がフィルタ検索結果である場合、「0」が書き込まれており、フィルタ検索結果として有効であることを示し、一方、検索結果が品質クラス検索結果である場合、「1」が書き込まれており、品質クラス検索結果として有効であることを示している。
この有効フラグレジスタの値は、ルールを検索テーブルに記載する時点で、検索カテゴリに対応して書き込んでおく、また、検索カテゴリの種類の数により、各検索カテゴリを区別できるビット数とする。
結果および品質クラス検索結果を記憶する領域を共通化し、結果有効フラグの直に応じて、この共通の記憶領域(フィルタ・品質クラス検索結果テーブル)に格納されている情報が、フィルタ検索結果であるか品質クラス検索結果であるかを判定してもよい。すなわち、結果有効フラグの値が「0」のときは、共通の記憶領域に記憶された情報を、フィルタ検索結果として扱い、結果有効フラグの値が「1」のときは、共通の記憶領域に記憶された情報を、品質クラス検索結果として扱う。このように、1つのエントリから1つの検索カテゴリの判定情報しか取得しない場合は、検索結果を記憶する記憶領域を、各検索カテゴリ別に設けることなく、共通化することが可能であり、回路規模を削減する効果が得られる。
In the result valid flag table, which corresponds to the above entry number, that is, for each rule, in the filter search result and the quality class search result as the search result from the search condition information, which judgment information is the search result A flag register (search category information) for determining whether the search category is valid, that is, whether the obtained determination information is a search category of a filter search result or a quality class search result is provided. When “0” is written in the flag register, it indicates that the result is a filter search result, that is, the filter search result of the filter search as a search category. On the other hand, when “1” is written, the quality class Quality of search results, that is, quality class search (classified search) as a search category It indicates that the class results.
Therefore, if the search result corresponding to the analysis result information of the search condition information, the reception logic I / F search result, the NAT / NAPT search result, and the route search result is a filter search result, “0” is written and the filter On the other hand, when the search result is a quality class search result, “1” is written, indicating that the search result is valid as the quality class search result.
The value of the valid flag register is written in correspondence with the search category at the time when the rule is written in the search table, and is the number of bits that can distinguish each search category depending on the number of types of search categories.
The area for storing the result and the quality class search result is made common, and the information stored in this common storage area (filter / quality class search result table) according to the result valid flag is the filter search result. It may be determined whether the result is a quality class search result. That is, when the value of the result valid flag is “0”, the information stored in the common storage area is handled as a filter search result. When the value of the result valid flag is “1”, the information is stored in the common storage area. The stored information is treated as a quality class search result. As described above, when only the determination information of one search category is acquired from one entry, a storage area for storing the search result can be shared without providing each search category, and the circuit scale can be reduced. The effect of reduction is obtained.

例として、図4において、m=8の場合の記憶部44に記憶された検索テーブル群の概念図を示す。
図4に示すように、フィルタ検索結果テーブルには、エントリ番号に対応、すなわち各ルールに対応して、フィルタ処理における破棄または通過を示すフィルタ検索結果が記載されている。
同様に、品質クラス検索結果テーブルには、エントリ番号に対応、すなわち各ルールに対応して、フレームが分類される品質クラスの検索結果である品質クラス検索結果として記載されている。
また、検索カテゴリとして、選択した検索結果がフィルタ検索結果または品質クラスとなる。例えば、受信側論理I/F検索,NAT/MAPT検索,経路検索,フィルタ検索,分類検索を検索カテゴリとした場合、各検索に対応するフィルタ検索結果または品質クラスが検索部40から出力される。
As an example, FIG. 4 shows a conceptual diagram of a search table group stored in the storage unit 44 when m = 8.
As shown in FIG. 4, the filter search result table describes filter search results indicating discard or passage in the filter processing corresponding to the entry number, that is, corresponding to each rule.
Similarly, the quality class search result table describes the quality class search result corresponding to the entry number, that is, the search result of the quality class in which the frame is classified corresponding to each rule.
In addition, as a search category, a selected search result becomes a filter search result or a quality class. For example, when the receiving side logical I / F search, NAT / MAPT search, route search, filter search, and classification search are used as search categories, the filter search result or quality class corresponding to each search is output from the search unit 40.

ここで、結果有効フラグテーブルには、各フラグ番号(エントリ番号に対応)毎に、フィルタ検索結果が有効であるかまたは品質クラス検索結果が有効であるかを結果有効フラグレジスタが設けられ、フラグ値が書き込まれている。
図4の場合、第1,第2,第3,第6及び第8エントリのルール#1,#2,#3,#6,#8にフラグ値として「0」が書き込まれており、フィルタ検索結果に対応した検索条件情報であり、第4,第5及び第7のルール#4,#5,#6にフラグ値として「1」が書き込まれており、品質クラス検索結果に対応した検索条件情報である。
すなわち、フィルタ検索結果#1,#2,#3,#6,#8がフィルタ検索の検索結果として有効であり、品質クラス検索結果#4,#5,#6が品質クラス検索の品質クラス検索結果として有効である。
Here, in the result valid flag table, for each flag number (corresponding to the entry number), a result valid flag register indicating whether the filter search result is valid or the quality class search result is valid is provided. A value has been written.
In the case of FIG. 4, “0” is written as the flag value in the rules # 1, # 2, # 3, # 6, and # 8 of the first, second, third, sixth, and eighth entries, and the filter Search condition information corresponding to the search result, and “1” is written as a flag value in the fourth, fifth and seventh rules # 4, # 5, and # 6, and the search corresponding to the quality class search result Condition information.
That is, filter search results # 1, # 2, # 3, # 6, and # 8 are effective as filter search search results, and quality class search results # 4, # 5, and # 6 are quality class search quality class searches. As a result, it is effective.

適合判定部46は、解析結果情報及び経路検索結果とが入力されると、ルール読出部45に対して、記憶部44のフィルタ・分類検索テーブルから検索条件情報を読み出すように指示する。
ルール読出部45は、上記フィルタ・分類検索テーブルから、このフィルタ・分類検索テーブルに記載された順番に、順次検索条件情報を読み出し、適合判定部46へ出力する。
また、適合判定部46は、上述したように、入力された解析結果情報及び経路検索結果と、順次ルール読出部45から入力される検索条件情報とを比較し、適合した場合、適合した検索条件情報に対応する結果有効フラグが「0」または「1」のいずれか、すなわち結果としてのフィルタ検索結果や品質クラス検索結果のいずれかが、判定情報として有効かの検出を行う。
そして、適合判定部46は、適合と判定されかつ結果有効フラグにより有効とされたフィルタ検索結果及び品質クラス検索結果それぞれにおいて、最も優先度の高いフィルタ検索結果及び品質クラス検索結果各々を選択し、これらを判定情報としてCPU転送判定部61へ出力する。
When the analysis result information and the route search result are input, the conformity determination unit 46 instructs the rule reading unit 45 to read the search condition information from the filter / classification search table in the storage unit 44.
The rule reading unit 45 sequentially reads the search condition information from the filter / category search table in the order described in the filter / category search table, and outputs the search condition information to the conformity determination unit 46.
Further, as described above, the conformity determination unit 46 compares the input analysis result information and the route search result with the search condition information sequentially input from the rule reading unit 45. It is detected whether the result valid flag corresponding to the information is “0” or “1”, that is, whether the resulting filter search result or quality class search result is valid as the determination information.
The conformity determination unit 46 selects the filter search result and the quality class search result with the highest priority in the filter search result and the quality class search result determined to be conformity and validated by the result valid flag, These are output to the CPU transfer determination unit 61 as determination information.

図2及び図4を用いて、フレームの適合判定を行う場合の動作定を以下に説明する。
適合判定部43は、パーサ部30からの解析結果情報と、受信論理I/F検索結果およびNAT/NAPT検索結果とが入力されると、ルール読出部42に対して、経路検索テーブルから検索条件情報の読み出しを行い、適合した検索条件情報に対応する経路検索結果を適合判定部46に対して出力する。
この適合判定部43は、経路検索の処理において、前段の受信論理I/F検索部及びNAT/NAPT検索部にて、各々受信論理I/F検索処理,NAT/NAPT検索処理が行われており、受信論理I/F解析結果として受信論理IF番号、NAT/NAPT検索結果として、IPアドレス(WANの場合グローバルアドレス、LANの場合ローカルアドレス),プロトコル(NAPTのみ),ポート番号(WANの場合グローバルポート番号、LANの場合ローカルポート番号)、受信物理IF番号(WANポート,LANポート,CPUI/F)等が入力され、記憶部41に記憶されている経路検索テーブルのルールとの適合判定処理の結果として、NAT/NAPTの有無、NAT/NAPT方法(NAT,NAPT,また全てのルールに対して不適合の場合付け替えなし)、付け替え後のIPv4アドレス及びポート番号及び適合が検出されたルールのエントリ番号、検索ミスヒット有無情報(適合検出により適合したか否かを示す情報)等のNAT/NAPT情報が得られる。
The operation constant when performing frame conformity determination will be described below with reference to FIGS.
When the analysis result information from the parser unit 30, the reception logic I / F search result, and the NAT / NAPT search result are input, the suitability determination unit 43 causes the rule reading unit 42 to search the route search table from the search condition. Information is read out, and a route search result corresponding to the matched search condition information is output to the suitability determination unit 46.
In the match determination unit 43, in the route search process, the reception logic I / F search unit and the NAT / NAPT search unit in the preceding stage respectively perform the reception logic I / F search process and the NAT / NAPT search process. Receive logical I / F analysis result, receive logical IF number, NAT / NAPT search result, IP address (global address for WAN, local address for LAN), protocol (NAPT only), port number (global for WAN) Port number, local port number in the case of LAN), received physical IF number (WAN port, LAN port, CPU I / F), etc. As a result, the presence / absence of NAT / NAPT, NAT / NAPT method (NAT, NAPT, and all Such as the IPv4 address and port number after the replacement, the entry number of the rule in which the conformance is detected, the search miss hit presence / absence information (information indicating whether or not the conformity is detected), etc. NAT / NAPT information is obtained.

次に、適合判定部43は、フレームを転送する宛先への経路の適合検出(検索)処理として、解析結果情報,受信論理I/F検索結果,NAT/NAPT検索結果と、記憶部41の経路検索テーブルからルールを読み込み、適合判定処理の結果として、宛先MACアドレス,送信論理I/F番号,検索ミスヒット有無情報(適合検出により適合したか否かを示す情報)、NAT/NAPTの有無等を経路検索結果として、解析結果情報(ハンドル番号等の付加情報を含む)とともに適合判定部46へ出力する。   Next, the conformity determination unit 43 performs analysis (information), received logic I / F search results, NAT / NAPT search results, and routes in the storage unit 41 as route conformance detection (search) processing for a destination to which a frame is transferred. The rule is read from the search table, and as a result of the conformity determination process, the destination MAC address, transmission logical I / F number, retrieval mishit presence / absence information (information indicating whether or not conformance was detected by conformance detection), presence / absence of NAT / NAPT, etc. As a route search result, together with analysis result information (including additional information such as a handle number), to the matching determination unit 46.

次に、適合判定部46は、受信論理I/F検索結果,NAT/NAPT検索結果,経路検索結果と、解析結果情報とが入力されると、ルール読出部45に対して、記憶部44のフィルタ・分類検索テーブルからの検索条件情報の読み出しを依頼する。
そして、ルール読出部45は、記憶部44の検索テーブル群におけるフィルタ・分類検索テーブルから検索条件情報を順次読み出し、適合判定部46へ出力する。
これにより、適合判定部46は、適合判定部43から入力される経路検索結果及び解析結果情報と、検索条件情報との適合比較(上述した判定式における適合検出処理)を行い、適合したフィルタ検索結果及び品質クラス検索結果としての品質クラスを次段のCPU判定部61へ出力する。
Next, when the reception logic I / F search result, the NAT / NAPT search result, the route search result, and the analysis result information are input, the conformity determination unit 46 stores the storage unit 44 in the storage unit 44. Requests reading of search condition information from the filter / classification search table.
Then, the rule reading unit 45 sequentially reads the search condition information from the filter / classification search table in the search table group of the storage unit 44 and outputs the search condition information to the conformity determination unit 46.
Thereby, the conformity determination unit 46 performs the conformity comparison (conformity detection processing in the above-described determination formula) with the route search result and analysis result information input from the conformity determination unit 43 and the search condition information, and the matched filter search The result and the quality class as the quality class search result are output to the CPU determination unit 61 in the next stage.

このとき、適合判定部46は、受信論理I/F検索結果,NAT/NAPT検索結果,経路検索結果及び解析結果情報と各検索条件情報との適合判定の結果、適合が検出された場合、記憶部44の結果有効フラグテーブルのフラグ値により、判定がフィルタ検索結果または品質クラス検索結果のいずれかであるかの判定を行う。
そして、適合判定部46は、例えば、受信論理I/F検索結果,NAT/NAPT検索結果,経路検索結果及び解析結果情報と検索条件情報との判定結果して、第2,第3,第4,第5,第6,第7エントリが適合したと判定する。
そして、適合判定部46は、結果有効フラグが「0」で有るものを検出し、フィルタ検索結果テーブルのフィルタ検索結果#2,#3及び#6が複数のフィルタ検索結果として検出し、それらのなかで最も優先度の高いフィルタ検索結果を選択し、選択されたものを最終的な判定として、解析結果情報(ハンドル情報等の付加情報を含む),経路検索結果とともに出力する。
At this time, the conformity determination unit 46 stores the received logical I / F search result, NAT / NAPT search result, route search result, and the result of the conformity determination between the analysis result information and each search condition information, when the conformity is detected. Based on the flag value of the result valid flag table of the unit 44, it is determined whether the determination is a filter search result or a quality class search result.
Then, the conformity determination unit 46 determines, for example, the reception logic I / F search result, the NAT / NAPT search result, the route search result, the analysis result information, and the search condition information as the second, third, fourth, , 5th, 6th and 7th entries are determined to be suitable.
Then, the conformity determination unit 46 detects that the result valid flag is “0”, detects the filter search results # 2, # 3, and # 6 in the filter search result table as a plurality of filter search results. A filter search result with the highest priority is selected, and the selected result is output as final determination together with analysis result information (including additional information such as handle information) and a route search result.

同様に、適合判定部46は、結果有効フラグが「1」で有るものを検出し、品質クラステーブルの品質クラス検索結果#4,#5及び#7が複数の品質クラス検索結果として検出し、それらのなかで最も優先度の高い品質クラス検索結果を選択し、選択されたものを最終的な判定情報として、解析結果情報(ハンドル情報等の付加情報を含む),経路検索結果とともに出力する。
本実施形態において、エントリ番号が小さい数字、すなわちテーブルの上位に記載されているほど優先度が高いため、適合判定部46は、フラグが立っているフィルタ検索結果において、最も優先度の高いフィルタ検索結果#2を選択する。
Similarly, the conformity determination unit 46 detects that the result valid flag is “1”, detects quality class search results # 4, # 5, and # 7 in the quality class table as a plurality of quality class search results, Among them, a quality class search result with the highest priority is selected, and the selected result is output as final determination information together with analysis result information (including additional information such as handle information) and a route search result.
In this embodiment, since the priority is higher as the entry number is smaller, that is, the higher the entry is in the table, the conformity determination unit 46 performs the filter search with the highest priority in the flagged filter search result. Select result # 2.

同様に、適合判定部46は、フラグが立っている品質クラス検索結果において、最も優先度の高い品質クラス検索結果#4を選択して、適合検出処理の結果の品質クラス検索結果として、品質クラス検索結果#3及び品質クラス検索結果#4を判定として出力する。   Similarly, the suitability determination unit 46 selects the quality class search result # 4 having the highest priority from the flagged quality class search results, and uses the quality class search result as the quality class search result as the quality class search result. Search result # 3 and quality class search result # 4 are output as judgments.

また、上述の説明では、フィルタ・分類検索テーブルにおけるルール各々と、フィルタ検索結果または品質クラス検索結果(品質クラスの検索結果)のいずれかとが一対一対応として記載した。
しかしながら、上述したように、フィルタ・分類検索テーブルにおけるルールがフィルタ検索結果及び品質クラス検索結果の二者択一の設定ではなく、適合を検出する判定式によってはフィルタ検索結果及び品質クラス検索結果のいずれかに有効となるように設定しても良い。
また、上述した説明において、結果有効フラグを1ビットして、「0」であればフィルタ検索結果が有効であり、「1」であれば品質クラス結果が有効であることを示している。
しかしながら、結果有効フラグを複数ビット、例えば、2ビットとして、「00」であれば品質クラス結果及びフィルタ検索結果の双方が無効であり、「01」であれば品質クラス結果が有効であり、「10」であればフィルタ検索結果が有効であり、「11」であれば双方を有効とするように設定してもよい。
In the above description, each rule in the filter / category search table and one of the filter search result or the quality class search result (quality class search result) are described as a one-to-one correspondence.
However, as described above, the rules in the filter / category search table are not an alternative setting of the filter search result and the quality class search result. You may set so that it may become effective in either.
In the above description, the result valid flag is 1 bit, and if it is “0”, the filter search result is valid, and if it is “1”, the quality class result is valid.
However, if the result valid flag is a plurality of bits, for example, 2 bits, if “00”, both the quality class result and the filter search result are invalid, and if “01”, the quality class result is valid. If “10”, the filter search result may be valid, and if “11”, both may be valid.

<第2の実施形態>
すでに述べた第1の実施形態において、図4に示すように、検索テーブルに記載された順番により、各ルールに対して優先度が設定されているが、第2の実施形態においては、例えば、図5に示すように、エントリ番号毎、すなわちフィルタ・分類検索テーブルのルール毎に、優先度が設定されている。この優先度は数値が小さいものほど優先度が高くなるように、検索テーブルが設定されている。
第2の実施形態の構成及び動作は、上述した図1及び図2に示す第1の実施形態とほぼ同様であり、優先度が数値として設定された構成及び動作のみが異なる。以下、第2の実施形態が第1の実施形態と異なる点のみを説明する。
<Second Embodiment>
In the first embodiment already described, as shown in FIG. 4, priority is set for each rule in the order described in the search table. In the second embodiment, for example, As shown in FIG. 5, a priority is set for each entry number, that is, for each rule of the filter / classification search table. The search table is set so that the priority is higher as the numerical value is smaller.
The configuration and operation of the second embodiment are substantially the same as those of the first embodiment shown in FIGS. 1 and 2 described above, and only the configuration and operation in which the priority is set as a numerical value are different. Hereinafter, only differences between the second embodiment and the first embodiment will be described.

第2の実施形態の検索テーブル群には、図5に示すように、エントリ番号に対応して、各フィルタ・分類検索テーブルにおける検索条件情報の優先度が設定されている。
そして、適合判定部46は、受信論理I/F検索結果,NAT/NAPT検索結果,経路検索結果及び解析結果情報と各検索条件情報との適合判定の結果、適合が検出された場合、記憶部44の結果有効フラグテーブルのエントリ番号に対応したフラグ番号のフラグレジスタに「0」または「1」のいずれが書き込まれているか、すなわちフィルタ検索結果及び品質クラス検索結果のいずれの検索結果が有効であるかの検出を行う。
ここで、適合判定部46は、図5に示す検索レジスタ群(第1の実施形態の図4に対応)において、例えば、受信論理I/F検索結果,NAT/NAPT検索結果,経路検索結果及び解析結果情報と検索条件情報との判定結果として、第2,第3,第4,第5,第6,第7エントリが適合したと判定する。
そして、適合判定部46は、結果有効フラグが「0」で有るものを検出し、フィルタ検索結果テーブルのフィルタ検索結果#2,#3及び#6が複数のフィルタ検索結果として検出し、それらのなかで最も優先度の高いフィルタ検索結果を選択し、選択されたものを最終的なフィルタ検索結果として、解析結果情報(ハンドル情報等の付加情報を含む),経路検索結果とともに出力する。
In the search table group of the second embodiment, as shown in FIG. 5, the priority of the search condition information in each filter / classification search table is set corresponding to the entry number.
Then, the conformity determination unit 46 stores the storage unit when the conformity is detected as a result of the conformity determination between the received logic I / F search result, the NAT / NAPT search result, the route search result and the analysis result information and each search condition information. 44. Which of “0” or “1” is written in the flag register of the flag number corresponding to the entry number of the result valid flag table 44, that is, which of the filter search result and the quality class search result is valid. Detect if there is any.
Here, in the search register group shown in FIG. 5 (corresponding to FIG. 4 of the first embodiment), the conformity determination unit 46, for example, receives logic I / F search results, NAT / NAPT search results, route search results, and As the determination result between the analysis result information and the search condition information, it is determined that the second, third, fourth, fifth, sixth and seventh entries are matched.
Then, the conformity determination unit 46 detects that the result valid flag is “0”, detects the filter search results # 2, # 3, and # 6 in the filter search result table as a plurality of filter search results. The filter search result with the highest priority is selected, and the selected result is output as the final filter search result together with the analysis result information (including additional information such as handle information) and the route search result.

同様に、適合判定部46は、結果有効フラグが「1」で有るものを検出し、品質クラス検索結果テーブルの品質クラス検索結果#4,#5及び#7が複数の品質クラス検索結果として検出し、それらのなかで最も優先度の高い品質クラス検索結果を選択し、選択されたものを最終的な品質クラスとして、解析結果情報(ハンドル情報等の付加情報を含む),経路検索結果とともに出力する。
そして、適合判定部46は、選択されたフィルタ検索結果及び品質クラス検索結果それぞれのなかで最も優先度の高い品質クラス検索結果を選択し、選択されたものを最終的な品質クラス検索結果として出力する。
すなわち、適合判定部46は、フィルタ検索結果及び品質クラス検索結果毎に、テーブルの優先度の欄の優先度の値を読み込み、それらのなかで最も優先度の高いフィルタ検索結果を選択し、選択されたものを最終的なフィルタ検索結果として、解析結果情報(ハンドル情報等の付加情報を含む),経路検索結果とともに出力する。
Similarly, the conformity determination unit 46 detects that the result valid flag is “1”, and detects quality class search results # 4, # 5, and # 7 in the quality class search result table as a plurality of quality class search results. Then, the quality class search result with the highest priority is selected, and the selected result is output as the final quality class together with the analysis result information (including additional information such as handle information) and the route search result. To do.
Then, the conformity determination unit 46 selects the quality class search result with the highest priority among the selected filter search result and quality class search result, and outputs the selected result as the final quality class search result. To do.
That is, the conformity determination unit 46 reads the priority value in the priority field of the table for each filter search result and quality class search result, selects the filter search result with the highest priority among them, and selects The result is output as a final filter search result together with analysis result information (including additional information such as handle information) and a route search result.

すなわち、適合判定部46は、優先度の数値が小さいほど優先度が高いため、適合判定部46は、フラグが立っているフィルタ検索結果において、フィルタ検索結果#3(優先度:17),#6(優先度:28)及び#8(優先度:2)であるため、最も優先度の高いフィルタ検索結果#8をフィルタ検索結果として選択する。
同様に、適合判定部46は、フラグが立っている品質クラス検索結果において、品質クラス検索結果#4(優先度:8),#5(優先度:31)及び#7(優先度:25)であるため、最も優先度の高い品質クラス検索結果#4を品質クラス検索結果として選択する。
そして、適合判定部46は、適合検出処理の結果である品質クラス検索結果として、フィルタ検索結果#3及び品質クラス検索結果#4を品質クラス検索結果として出力する。
In other words, since the suitability determination unit 46 has a higher priority as the numerical value of the priority is smaller, the match determination unit 46 uses the filter search result # 3 (priority: 17), # Since 6 (priority: 28) and # 8 (priority: 2), the filter search result # 8 with the highest priority is selected as the filter search result.
Similarly, the conformity determination unit 46 determines the quality class search results # 4 (priority: 8), # 5 (priority: 31) and # 7 (priority: 25) in the flagged quality class search results. Therefore, the quality class search result # 4 with the highest priority is selected as the quality class search result.
And the conformity determination part 46 outputs filter search result # 3 and quality class search result # 4 as a quality class search result as a quality class search result which is a result of a conformity detection process.

<第3の実施形態>
第3の実施形態は、図1及び図2に示す第1の実施形態とほぼ同様であるため、異なる動作及び構成のみを説明する。
記憶部44における検索テーブル群は、図6に示すように、フィルタ・分類検索テーブルの検索条件情報毎に、入口用か出口用かを示すI/Oフラグが設けられており、「1」が記載されていれば(フラグが立っていれば)入口用であり、「0」が記載されていれば(フラグがたっていなければ)出口用である。
適合判定部46は、適合判定処理において、I/Oフラグを検出して、入口用ルールであることを検出した場合、検索条件情報により規定されたインターフェース番号をフレームの受信インターフェース番号と比較し、出口用であることを検出した場合、検索条件情報により規定されたインターフェース番号をフレームの送信インターフェース番号と比較する。
<Third Embodiment>
Since the third embodiment is substantially the same as the first embodiment shown in FIGS. 1 and 2, only different operations and configurations will be described.
As shown in FIG. 6, the search table group in the storage unit 44 is provided with an I / O flag indicating whether it is for entrance or for each search condition information in the filter / category search table. If it is described (if the flag is set), it is for the entrance. If “0” is described (if the flag is not set), it is for the exit.
When the conformity determination unit 46 detects an I / O flag in the conformity determination process and detects that it is an entrance rule, the conformity determination unit 46 compares the interface number defined by the search condition information with the reception interface number of the frame, When it is detected that it is for exit, the interface number defined by the search condition information is compared with the transmission interface number of the frame.

第3の実施形態において、フィルタ・分類検索テーブルのルールとしては、例えば以下のような適合判定式が記憶されている。
((受信インターフェース==”インターフェース番号”)&&(”I/Oフラグ”==入口))||((送信インターフェース==”インターフェース番号”&&(”I/Oフラグ”==出口))||(”インターフェース条件マスク”)&&(送信元IPアドレス&”送信元IPアドレスマスク値”)&&(”送信元IPアドレス値”))&&((宛先IPアドレス&”宛先IPアドレスマスク値”==”宛先IPアドレス値”))&&・・・・
ここで、適合判定部46は、ルールとして適合判定式を読み込み、上述した””にて挟まれた数値がフィルタ・分類検索テーブルに記述された検索条件情報として記載された数値を入力し、””にて囲まれていない部分に解析結果情報から対応する種別の数値を入力し、条件式の結果が「真」であれば適合、「偽」であれば不適合と判定する。
In the third embodiment, as rules of the filter / category search table, for example, the following conformity determination formula is stored.
((Receiving interface == “Interface number”) && (“I / O flag” == entrance)) || ((Transmission interface == “Interface number” && (“I / O flag” == exit)) | | ("Interface condition mask") && (source IP address &"source IP address mask value") &&("source IP address value")) && ((destination IP address &"destination IP address mask value") = = "Destination IP address value")) && ...
Here, the conformity determination unit 46 reads the conformity determination formula as a rule, and inputs the numerical value described as the search condition information described in the filter / category search table with the numerical value sandwiched between the above-mentioned “”. A numerical value of the corresponding type is input from the analysis result information to a part not enclosed by “”, and if the result of the conditional expression is “true”, it is determined to be conforming, and if it is “false”, it is determined to be nonconforming.

そして、適合判定部46は、適合判定処理において、適合と判定し、かつ結果有効フラグにおいてフィルタ検索結果が有効であるであり、さらにI/Oフラグが入口用であるフィルタ検索結果から最も優先度の高いフィルタ検索結果を入口フィルタ結果として出力する。
同様に、適合判定部46は、適合判定処理において、適合と判定し、かつ結果有効フラグにおいてフィルタ検索結果が有効であるであり、さらにI/Oフラグが出口用であるフィルタ検索結果から最も優先度の高い判定情報を出口フィルタ結果として出力する。
このとき、適合判定部46は、上述した入口フィルタ結果及び出口フィルタ結果(フィルタ検索結果)において、少なくとも一方が破棄を指定する場合、破棄と決定してこのことを示すフィルタ検索結果を出力する。
Then, the conformity determination unit 46 determines conformity in the conformity determination process, the filter search result is valid in the result valid flag, and the highest priority is obtained from the filter search result whose I / O flag is for entry. A high filter search result is output as an entrance filter result.
Similarly, the conformity determination unit 46 determines conformity in the conformity determination process, and the filter search result is valid in the result valid flag, and the highest priority is given to the filter search result whose I / O flag is for exit. A high degree of judgment information is output as an exit filter result.
At this time, when at least one of the above-described entrance filter result and exit filter result (filter search result) designates discard, the conformity determination unit 46 determines discard and outputs a filter search result indicating this.

第3の実施形態の動作として、フレームが入力され、経路検索後において、適合判定部46は、適合判定部43から入力される受信論理I/F検索結果,NAT/NAPT検索結果,経路検索結果及び解析結果情報を、ルール読出部45から入力される各検索条件情報と比較し、第1及び第2の実施形態と同様に、フィルタ検索結果及び品質クラス検索結果各々を出力する。
例えば、図8に示すように、適合判定部46は、適合検出処理の結果、結果有効フラグのフラグ値が「0」であり、フィルタ検索結果が有効とされたフィルタ検索結果として、ルール#1,#3、#6,#8を検出したとする。
ここで、図8に示されているように、ルール#3及び#6が入口フィルタ結果に対応し、ルール#1及び#8が出口フィルタ結果に対応している。
As an operation of the third embodiment, after the frame is input and the route search is performed, the suitability determination unit 46 receives the reception logic I / F search result, the NAT / NAPT search result, and the route search result input from the match determination unit 43. The analysis result information is compared with each search condition information input from the rule reading unit 45, and the filter search result and the quality class search result are output, respectively, as in the first and second embodiments.
For example, as shown in FIG. 8, the match determination unit 46 determines that rule # 1 is the filter search result in which the flag value of the result valid flag is “0” as a result of the match detection process and the filter search result is valid. , # 3, # 6, # 8 are detected.
Here, as shown in FIG. 8, rules # 3 and # 6 correspond to the inlet filter result, and rules # 1 and # 8 correspond to the outlet filter result.

このため、適合判定部46は、フィルタ検索結果が有効な判定結果であると検出した後、I/Oフラグが「1」であるものを検出、すなわち入口フィルタ検索に対応する検索結果であるフィルタ検索結果として、フィルタ検索結果#3(破棄)とフィルタ検索結果#6(通過)との優先度を比較する。
本実施形態において、第1の実施形態と同様に、エントリ番号が小さい数字、すなわちテーブルの上位に記載されているほど優先度が高いため、適合判定部46は、フラグが立っている入口フィルタ結果において、最も優先度の高いフィルタ検索結果#3(破棄)を、入口フィルタ結果として選択し、フィルタ検索結果として出力する。
同様に、適合判定部46は、フィルタ検索結果が有効な判定結果であると検出した後、I/Oフラグが「0」であるものを検出、すなわち出口フィルタ検索に対応する検索結果であるフィルタ検索結果として、フィルタ検索結果#1(通過)とフィルタ検索結果#8(破棄)との優先度を比較し、最も優先度の高いフィルタ検索結果#1(通過)を、出口フィルタ結果として選択する。
そして、適合判定部46は、フィルタ検索結果#3(破棄)とフィルタ検索結果#1(通過)とにおいて、フィルタ検索結果の一方であるフィルタ検索結果#3が破棄を示すため、通過に対しては破棄が優先度が高いため、最終的なフィルタ検索結果として「破棄」を出力する。
Therefore, after detecting that the filter search result is an effective determination result, the suitability determination unit 46 detects the I / O flag “1”, that is, the filter that is the search result corresponding to the entrance filter search. As the search results, the priorities of the filter search result # 3 (discard) and the filter search result # 6 (pass) are compared.
In this embodiment, as in the first embodiment, since the priority is higher as the entry number is smaller, that is, the higher the priority is listed in the table, the conformity determination unit 46 sets the flag result of the entrance filter. The filter search result # 3 (discard) with the highest priority is selected as the entrance filter result and output as the filter search result.
Similarly, the conformity determination unit 46 detects that the filter search result is a valid determination result, and then detects that the I / O flag is “0”, that is, a filter that is a search result corresponding to the exit filter search. As a search result, the priority levels of the filter search result # 1 (pass) and the filter search result # 8 (discard) are compared, and the filter search result # 1 (pass) with the highest priority is selected as the exit filter result. .
Then, the conformity determination unit 46 determines that the filter search result # 3 (discard) and the filter search result # 1 (pass) are discarded because the filter search result # 3, which is one of the filter search results, indicates discard. Since discard has a high priority, “discard” is output as the final filter search result.

なお、図1における検索部40の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより適合検出処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。   It should be noted that the program for realizing the function of the search unit 40 in FIG. 1 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into the computer system and executed to execute the adaptation detection process. May be performed. Here, the “computer system” includes an OS and hardware such as peripheral devices. The “computer system” includes a WWW system having a homepage providing environment (or display environment). The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Further, the “computer-readable recording medium” refers to a volatile memory (RAM) in a computer system that becomes a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. In addition, those holding programs for a certain period of time are also included.

また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。   The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.

本発明の第1(及び第2,第3)の実施形態による通信処理装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the communication processing apparatus by 1st (and 2nd, 3rd) embodiment of this invention. 図1における検索部40の構成例を示すブロック図である。It is a block diagram which shows the structural example of the search part 40 in FIG. 第1実施形態における記憶部41に記憶されている検索テーブル群の構成例を示す概念図である。It is a conceptual diagram which shows the structural example of the search table group memorize | stored in the memory | storage part 41 in 1st Embodiment. 第1の実施形態における検索テーブル群の構成例を示す概念図である。It is a conceptual diagram which shows the structural example of the search table group in 1st Embodiment. 第2実施形態における記憶部41に記憶されている検索テーブル群の構成例を示す概念図である。It is a conceptual diagram which shows the structural example of the search table group memorize | stored in the memory | storage part 41 in 2nd Embodiment. 第3の実施形態における検索テーブル群の構成例を示す概念図である。It is a conceptual diagram which shows the structural example of the search table group in 3rd Embodiment. 第3実施形態における記憶部44に記憶されている検索テーブル群の構成例を示す概念図である。It is a conceptual diagram which shows the structural example of the search table group memorize | stored in the memory | storage part 44 in 3rd Embodiment. 第3の実施形態における検索テーブル群の構成例を示す概念図である。It is a conceptual diagram which shows the structural example of the search table group in 3rd Embodiment. 従来の通信処理装置における検索部の構成を示すブロック図である。It is a block diagram which shows the structure of the search part in the conventional communication processing apparatus.

符号の説明Explanation of symbols

1…通信処理装置
2…通信処理回路
3…DDR−SDRAM
4…CPU
4a…ドライバ
11…WAN用MACI/F
12…LAN用MACI/F
13…IPsec部
14…書き込みスケジューラ部
15…CPUI/F
16…フレーム生成部
17…メモリコントローラ部
18…ハンドル管理部
19…DDR−SDRAMI/F
30…パーサ部
40…探索部
41,44…記憶部
42,45…ルール読出部
43,46…適合判定部
DESCRIPTION OF SYMBOLS 1 ... Communication processing device 2 ... Communication processing circuit 3 ... DDR-SDRAM
4 ... CPU
4a ... Driver 11 ... WAN MAC I / F
12 ... MAC I / F for LAN
13 ... IPsec part 14 ... Write scheduler part 15 ... CPU I / F
16 ... Frame generation unit 17 ... Memory controller unit 18 ... Handle management unit 19 ... DDR-SDRAM I / F
30 ... Parser unit 40 ... Search unit 41, 44 ... Storage unit 42, 45 ... Rule reading unit 43, 46 ... Conformity determination unit

Claims (4)

フレームを受信し、前記フレームから前記フレーム内の所定の位置に記述されている情報または前記情報及び前記フレームを入力したインタフェースの情報を含む解析結果情報を取得し、前記解析結果情報に応じて、前記フレームの加工または前記フレームの転送を行う、通信処理装置であり、
解析結果情報に対する条件を示す検索条件情報と、フレームの加工または前記フレームの転送の処理方法を指定する判定情報を、検索テーブルのエントリとして記憶する記憶部と、
前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリの判定情報を出力する、検索部と、を有し、
前記記憶部が、前記検索テーブルの各エントリに1つの検索条件情報を記憶し、1つのエントリには、複数の検索カテゴリ別の判定情報と、当該検索カテゴリ別の判定情報の有効・無効を指定する結果有効フラグと、をそれぞれに記憶し、
前記検索部が、前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリのうち、当該エントリに記憶された検索カテゴリの結果有効フラグが有効を示す場合にのみ、当該エントリに記憶された判定情報を当該検索カテゴリの判定情報として出力する、
ことを特徴とする通信処理装置。
Receiving a frame, obtaining information described in a predetermined position in the frame from the frame or analysis result information including the information and information of an interface that inputs the frame, and according to the analysis result information, A communication processing device for processing the frame or transferring the frame;
A storage unit that stores search condition information indicating a condition for the analysis result information, and determination information that specifies a processing method of frame processing or frame transfer, as an entry of a search table;
A search unit that determines whether or not the analysis result information is compatible based on the search condition information of each entry of the search table, and outputs determination information of the entry determined to be compatible;
The storage unit stores one piece of search condition information in each entry of the search table, and one entry specifies determination information for a plurality of search categories and validity / invalidity of the determination information for each search category And a result valid flag to be stored in each ,
Based on the search condition information of each entry of the search table, the search unit determines whether or not the analysis result information is compatible, and among the entries determined to be compatible, the result of the search category stored in the entry Only when the valid flag indicates valid, the determination information stored in the entry is output as the determination information of the search category.
A communication processing apparatus.
前記検索カテゴリがフィルタ検索及び品質クラス検索であり、
前記通信処理装置が、前記解析結果情報に基づき、前記受信したフレームを送信する送信論理インタフェースを判定し、前記送信論理インタフェースを識別する送信論理インタフェース番号を取得する、経路検索部を有し、
前記経路検索部が、前記受信したフレームを送信する送信論理インタフェースを識別する送信論理インタフェース番号を取得した後に、前記検索部が、各フレーム毎に、解析結果情報,前記送信論理インタフェース番号とから、フィルタ検索及び品質クラス検索各々の判定情報を検索し、フレームの転送可否または品質クラスとして出力することを特徴とする請求項1に記載の通信処理装置。
The search category is filter search and quality class search;
The communication processing apparatus, based on the analysis result information, and determines the transmission logic interface for transmitting the received frame, obtains the transmission logic interface number for identifying the transmission logic interface has a route search unit,
After the path search unit obtains a transmission logical interface number for identifying a transmission logical interface that transmits the received frame, the search unit obtains, for each frame, analysis result information, the transmission logical interface number , 2. The communication processing apparatus according to claim 1 , wherein the determination information of each of the filter search and the quality class search is searched and output as frame transfer availability or quality class.
前記エントリ毎に優先度が設定され、前記検索部が、前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリが複数検出され、かつ、前記適合と判定したエントリに記憶された検索カテゴリ情報が指定する検索カテゴリが、複数のエントリについて一致する場合に、前記エントリのうち前記優先度が最も高いエントリに記憶された判定情報を、前記検索カテゴリの判定情報として出力する、ことを特徴とする請求項1または請求項2に記載の通信処理装置。 A priority is set for each entry, and the search unit determines whether the analysis result information is compatible based on search condition information of each entry in the search table, and detects a plurality of entries determined to be compatible. And when the search category specified by the search category information stored in the entry determined to be relevant matches for a plurality of entries, the determination information stored in the entry having the highest priority among the entries. The communication processing apparatus according to claim 1 , wherein: is output as determination information of the search category. フレームを受信し、前記フレームから前記フレーム内の所定の位置に記述されている情報または前記情報及び前記フレームを入力したインタフェースの情報を含む解析結果情報を取得し、前記解析結果情報に応じて、前記フレームの加工または前記フレームの転送を行う、通信処理方法であり、
解析結果情報に対する条件を示す検索条件情報と、フレームの加工または前記フレームの転送の処理方法を指定する判定情報を、検索テーブルのエントリとして記憶部に記憶する記憶過程と、
検索部が前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリの判定情報を出力する、検索過程と、
を有し、
前記記憶部に、前記検索テーブルの各エントリに1つの検索条件情報を記憶し、1つのエントリには、複数の検索カテゴリ別の判定情報と、当該検索カテゴリ別の判定情報の有効・無効を指定する結果有効フラグと、がそれぞれに記憶され、
前記検索部が、前記検索テーブルの各エントリの検索条件情報に基づいて、解析結果情報に対して適合の有無を判定し、適合と判定したエントリのうち、当該エントリに記憶された検索カテゴリの結果有効フラグが有効を示す場合にのみ、当該エントリに記憶された判定情報を当該検索カテゴリの判定情報として出力する、
ことを特徴とする通信処理方法。
Receiving a frame, obtaining information described in a predetermined position in the frame from the frame or analysis result information including the information and information of an interface that inputs the frame, and according to the analysis result information, A communication processing method for processing the frame or transferring the frame,
A storage process for storing search condition information indicating a condition for analysis result information and determination information for specifying a processing method of frame processing or frame transfer in a storage unit as an entry of a search table;
A search process in which the search unit determines whether or not the analysis result information is compatible based on search condition information of each entry of the search table, and outputs determination information of the entry determined to be compatible;
Have
In the storage unit, stores one search condition information in each entry of the look-up table, the one entry, and another determination information search categories of multiple, to enable or disable of the search category judgment information The result valid flag to be specified is stored in each ,
Based on the search condition information of each entry of the search table, the search unit determines whether or not the analysis result information is compatible, and among the entries determined to be compatible, the result of the search category stored in the entry Only when the valid flag indicates valid, the determination information stored in the entry is output as the determination information of the search category.
A communication processing method.
JP2005363511A 2005-12-16 2005-12-16 Communication processing apparatus and communication processing method Active JP4340653B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005363511A JP4340653B2 (en) 2005-12-16 2005-12-16 Communication processing apparatus and communication processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005363511A JP4340653B2 (en) 2005-12-16 2005-12-16 Communication processing apparatus and communication processing method

Publications (2)

Publication Number Publication Date
JP2007166514A JP2007166514A (en) 2007-06-28
JP4340653B2 true JP4340653B2 (en) 2009-10-07

Family

ID=38248858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005363511A Active JP4340653B2 (en) 2005-12-16 2005-12-16 Communication processing apparatus and communication processing method

Country Status (1)

Country Link
JP (1) JP4340653B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011096127A1 (en) * 2010-02-04 2011-08-11 日本電信電話株式会社 Packet transfer processing device, method, and program
US9825884B2 (en) 2013-12-30 2017-11-21 Cavium, Inc. Protocol independent programmable switch (PIPS) software defined data center networks
US9438703B2 (en) * 2014-06-19 2016-09-06 Cavium, Inc. Method of forming a hash input from packet contents and an apparatus thereof
US9635146B2 (en) 2014-06-19 2017-04-25 Cavium, Inc. Method of using bit vectors to allow expansion and collapse of header layers within packets for enabling flexible modifications and an apparatus thereof
US9628385B2 (en) 2014-06-19 2017-04-18 Cavium, Inc. Method of identifying internal destinations of networks packets and an apparatus thereof
US9742694B2 (en) 2014-06-19 2017-08-22 Cavium, Inc. Method of dynamically renumbering ports and an apparatus thereof
US10616380B2 (en) 2014-06-19 2020-04-07 Cavium, Llc Method of handling large protocol layers for configurable extraction of layer information and an apparatus thereof
US20240039814A1 (en) 2020-08-14 2024-02-01 Nippon Telegraph And Telephone Corporation Communication system, communication quality measuring method, gateway device and program

Also Published As

Publication number Publication date
JP2007166514A (en) 2007-06-28

Similar Documents

Publication Publication Date Title
US11032190B2 (en) Methods and systems for network security universal control point
JP4340653B2 (en) Communication processing apparatus and communication processing method
US7367052B1 (en) Access list key compression
US8190767B1 (en) Data structures and state tracking for network protocol processing
US6496935B1 (en) System, device and method for rapid packet filtering and processing
US8370921B2 (en) Ensuring quality of service over VPN IPsec tunnels
US9407605B2 (en) Routing a packet by a device
Kent et al. RFC 4301: Security architecture for the Internet protocol
US8165125B2 (en) Apparatus and method of classifying packets
US6798788B1 (en) Arrangement determining policies for layer 3 frame fragments in a network switch
US6701432B1 (en) Firewall including local bus
US8274979B2 (en) Method and system for secure communication between a public network and a local network
JP2007135035A (en) Communication device and packet processing method
US7000120B1 (en) Scheme for determining transport level information in the presence of IP security encryption
US7974209B1 (en) Packet processing with re-insertion into network interface circuitry
AU2001241717A1 (en) System, device and method for rapid packet filtering and processing
US7359983B1 (en) Fragment processing utilizing cross-linked tables
US20080077694A1 (en) Method and system for network security using multiple virtual network stack instances
JP4263718B2 (en) Communication processing apparatus and communication processing method
US7359380B1 (en) Network protocol processing for routing and bridging
US20100265949A1 (en) Methods, systems, and computer readable media for performing flow compilation packet processing
US9240898B1 (en) Integrating VLAN-unaware devices into VLAN-enabled networks
JP4340646B2 (en) Communication processing circuit and communication processing method
JP4350713B2 (en) Data transfer apparatus and data transfer method
US7920564B1 (en) Differential services support for control traffic from privileged nodes in IP networks

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080707

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090402

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090415

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4340653

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120710

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130710

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350