JP2000151627A - Packet filter circuit - Google Patents

Packet filter circuit

Info

Publication number
JP2000151627A
JP2000151627A JP31573298A JP31573298A JP2000151627A JP 2000151627 A JP2000151627 A JP 2000151627A JP 31573298 A JP31573298 A JP 31573298A JP 31573298 A JP31573298 A JP 31573298A JP 2000151627 A JP2000151627 A JP 2000151627A
Authority
JP
Japan
Prior art keywords
information
packet
packet filter
entry
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP31573298A
Other languages
Japanese (ja)
Other versions
JP3028414B1 (en
Inventor
Satoshi Nojima
聡 野島
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.)
Ultra High Speed Network and Computer Technology Laboratories
Original Assignee
Ultra High Speed Network and Computer Technology Laboratories
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 Ultra High Speed Network and Computer Technology Laboratories filed Critical Ultra High Speed Network and Computer Technology Laboratories
Priority to JP31573298A priority Critical patent/JP3028414B1/en
Application granted granted Critical
Publication of JP3028414B1 publication Critical patent/JP3028414B1/en
Publication of JP2000151627A publication Critical patent/JP2000151627A/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To suppress increase in hardware volume by realizing high speed processing performance. SOLUTION: Individual information discrimination CAMs (contents retrieval memories) 1-1, 1-2, 1-3 are provided to each type of various information configuring packet filter conditions. Coincident address output circuits 13-1, 13-2, 13-3 output an address of a coincident entry when an entry storing information coincident with information of an input packet. A CAM cell array 31 stores a set of coincident entry addresses as the packet filter conditions. A coincident signal output circuit 32 outputs a coincidence signal when the set of the coincident entry addresses outputted from a register 2 is coincident with the packet filter conditions of the CAM cell array 31.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、ネットワーク間を
接続するゲートウェイ装置等のパケット中継装置に係
り、特にある一定の条件を満たすパケットを転送あるい
は廃棄するというパケットフィルタ機能を実現するパケ
ットフィルタ回路に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a packet relay device such as a gateway device for connecting networks, and more particularly to a packet filter circuit for realizing a packet filter function of transferring or discarding a packet satisfying a certain condition. Things.

【0002】[0002]

【従来の技術】従来より、ネットワーク間を接続するゲ
ートウェイ装置等のパケット中継装置においては、IP
アドレス、MACアドレス、TCPポート番号等々の、
パケットヘッダに格納されている各種の情報を用いて、
その各々がある一定の条件(パケットフィルタ条件)を
満足した場合に、該パケットを転送あるいは廃棄すると
いうパケットフィルタ機能が必要とされる。
2. Description of the Related Art Conventionally, in a packet relay device such as a gateway device for connecting networks, an IP is used.
Address, MAC address, TCP port number, etc.
Using various information stored in the packet header,
When each of them satisfies a certain condition (packet filter condition), a packet filter function of transferring or discarding the packet is required.

【0003】このフィルタ判別は、以下の要件を要求す
る。 (A)パケットフィルタ条件は、IPアドレス、MAC
アドレス、TCPポート番号等の各種情報のベクトル条
件(集合)で設定される場合が一般的である。 (B)パケットフィルタ条件を構成する各種情報は、ゲ
ートウェイ装置の場合の常として、長いビット長(例え
ば、IPアドレスで32ビット)を持つが、ある箇所の
ゲートウェイ装置では、そのビット長が示す数値空間の
中で狭い数量しか必要としない。
[0003] This filter discrimination requires the following requirements. (A) The packet filter conditions are IP address, MAC
In general, it is set based on a vector condition (set) of various information such as an address and a TCP port number. (B) As in the case of a gateway device, various types of information constituting a packet filter condition have a long bit length (for example, 32 bits in an IP address). Only a small quantity is needed in the space.

【0004】パケットフィルタ回路を構成する上での問
題点は、それぞれの情報の持つ数値空間全体に対して、
必要とされる条件エントリの数は微小であり、有効な構
成物量で必要な条件エントリを保持、検索させることが
困難なことである。また、上述のように、パケットフィ
ルタ条件は各種情報のベクトル条件であるため、入力パ
ケットがパケットフィルタ条件を満たすか否かを判定す
るには、必要な全ての組み合わせを記憶した上で比較判
定することが必要となり、この場合、上記した構成物量
の無駄はより大きな問題を引き起こす。
A problem in configuring a packet filter circuit is that the entire numerical value space of each piece of information is
The number of required condition entries is very small, and it is difficult to hold and search for necessary condition entries with an effective amount of constituents. Further, as described above, since the packet filter condition is a vector condition of various information, in order to determine whether or not the input packet satisfies the packet filter condition, all necessary combinations are stored, and comparison determination is performed. In this case, the above-mentioned waste of the component amount causes a larger problem.

【0005】従来は、このようなパケットフィルタの構
成の多くはソフトウェアに依存し、パケットフィルタ条
件を具現化する判断分岐(フローチャート)を処理する
ことで実現される。ハードウェアによる構成の場合に
は、各種情報の必要な全ての組み合わせを記憶した内容
検索型メモリ(Content Addressable Memory、以下、C
AMとする))の利用が考えられる。
Conventionally, many of such packet filter configurations depend on software and are realized by processing a decision branch (flowchart) that embodies packet filter conditions. In the case of a hardware configuration, a content addressable memory (hereinafter, referred to as C) stores all necessary combinations of various information.
AM))).

【0006】図4はCAMを利用した従来のパケットフ
ィルタ回路のブロック図である。図4の例では、IPア
ドレスとMACアドレスとTPCポート番号の集合から
パケットフィルタ条件が構成される場合を示し、CAM
41の1行が1つのパケットフィルタ条件を格納したエ
ントリとなっている。このように判定に必要な全てのパ
ケットフィルタ条件をCAM41のエントリに格納した
形となっている。よって、IPアドレスが同じであって
も、MACアドレスあるいはポート番号が異なるパケッ
トフィルタ条件を設定する必要がある場合には、異なる
エントリをCAM41に設ける必要がある。つまり、パ
ケットフィルタ条件を構成する個別の情報に重複するも
のがあったとしても、パケットフィルタ条件の総数と等
しいエントリ数が必要となる。
FIG. 4 is a block diagram of a conventional packet filter circuit using a CAM. FIG. 4 shows an example in which a packet filter condition is configured from a set of an IP address, a MAC address, and a TPC port number.
One row of 41 is an entry storing one packet filter condition. In this manner, all the packet filter conditions necessary for the determination are stored in the entry of the CAM 41. Therefore, even if the IP address is the same, if it is necessary to set packet filter conditions with different MAC addresses or port numbers, it is necessary to provide different entries in the CAM 41. In other words, even if the individual information constituting the packet filter condition overlaps, the number of entries equal to the total number of packet filter conditions is required.

【0007】図4の例では、パケットフィルタ条件をI
PアドレスとMACアドレスとTPCポート番号の3種
類からなるものとしたが、通常、より多種の情報(アド
レスであれば、送信元アドレス、受信先アドレスの2種
類など)が要求される。よって、CAM41の1エント
リが更に長くなることが予想され、現状実現されている
CAMのエントリビット長が64から128程度である
ことを考慮した場合、十分なパケットフィルタ条件を設
定することは困難である。
[0007] In the example of FIG.
Although the P address, the MAC address, and the TPC port number are assumed to be three types, usually, more types of information (for an address, two types of a source address, a destination address, and the like) are required. Therefore, it is expected that one entry of the CAM 41 will be longer, and it is difficult to set a sufficient packet filter condition in consideration of the currently realized CAM entry bit length of about 64 to 128. is there.

【0008】[0008]

【発明が解決しようとする課題】以上のように、パケッ
トフィルタをソフトウェアで実現した場合、複数のパケ
ットフィルタ条件と入力パケットとの比較判定がシリア
ルで処理されるため、多くの処理ステップが必要とな
り、処理に時間がかかるという問題点があった。また、
パケットフィルタをCAM等のハードウェアで実現した
場合、非常に長いワード(エントリ)長を必要とし、多
くのハードウェア量を必要とするという問題点があっ
た。本発明は、上記課題を解決するためになされたもの
で、ソフトウェア処理よりも高速な処理性能を実現する
と共に、ハードウェア量の増大を抑制することができる
パケットフィルタ回路を提供することを目的とする。
As described above, when a packet filter is implemented by software, a plurality of packet filter conditions are compared serially with input packets in a comparison judgment, so that many processing steps are required. However, there is a problem that the processing takes time. Also,
When the packet filter is realized by hardware such as CAM, there is a problem that a very long word (entry) length is required and a large amount of hardware is required. The present invention has been made in order to solve the above-described problems, and an object of the present invention is to provide a packet filter circuit that realizes processing performance faster than software processing and that can suppress an increase in hardware amount. I do.

【0009】[0009]

【課題を解決するための手段】本発明のパケットフィル
タ回路は、請求項1に記載のように、パケットフィルタ
条件を構成する各種情報の種別毎に設けられ、該当種別
の情報を格納するエントリを備え、各エントリに格納さ
れた情報と入力パケットが有する該当種別の情報とを比
較して、一致する情報を格納しているエントリが存在す
るとき、この一致エントリのアドレスを出力する複数の
第1の内容検索型メモリと、各種情報の集合からなるパ
ケットフィルタ条件の代わりに、これら情報を格納して
いる第1の内容検索型メモリの一致エントリアドレスの
集合をパケットフィルタ条件として記憶し、複数の第1
の内容検索型メモリからそれぞれ出力された一致エント
リアドレスの集合がパケットフィルタ条件と一致したと
き、一致信号を出力する第2の内容検索型メモリとを有
するものである。このように、第1の内容検索型メモリ
によってパケットフィルタ条件を構成する各種情報の種
別毎に検索を行い、第2の内容検索型メモリによって第
1の内容検索型メモリからの一致エントリアドレスの集
合がパケットフィルタ条件と一致するか否かを判定する
ことにより、入力パケットの属性を判断することができ
る。
According to a first aspect of the present invention, a packet filter circuit is provided for each type of various information constituting a packet filter condition, and stores an entry for storing information of the corresponding type. And comparing the information stored in each entry with the information of the corresponding type included in the input packet, and when there is an entry storing the matching information, outputs a plurality of first addresses that output the address of the matching entry. Instead of a content search type memory and a packet filter condition consisting of a set of various information, a set of matching entry addresses of a first content search type memory storing these information is stored as a packet filter condition. First
And a second content search type memory that outputs a match signal when a set of matching entry addresses respectively output from the content search type memory matches the packet filter condition. In this way, the first content search type memory performs a search for each type of information constituting the packet filter condition, and the second content search type memory sets a set of matching entry addresses from the first content search type memory. By determining whether or not matches the packet filter condition, the attribute of the input packet can be determined.

【0010】また、請求項2に記載のように、パケット
フィルタ条件を構成する各種情報の種別毎に設けられ、
該当種別の情報を格納するエントリを備え、各エントリ
に格納された情報と入力パケットが有する該当種別の情
報とを比較して、一致する情報を格納しているエントリ
が存在するとき、この一致エントリの情報を表すコード
を出力する複数の第1の内容検索型メモリと、各種情報
の集合からなるパケットフィルタ条件の代わりに、これ
ら情報を表すコードの集合をパケットフィルタ条件とし
て記憶し、複数の第1の内容検索型メモリからそれぞれ
出力されたコードの集合がパケットフィルタ条件と一致
したとき、一致信号を出力する第2の内容検索型メモリ
とを有するものである。このように、第1の内容検索型
メモリによってパケットフィルタ条件を構成する各種情
報の種別毎に検索を行い、第2の内容検索型メモリによ
って第1の内容検索型メモリからのコードの集合がパケ
ットフィルタ条件と一致するか否かを判定することによ
り、入力パケットの属性を判断することができる。ま
た、請求項3に記載のように、複数の第1の内容検索型
メモリの出力を所定の順序に配列して、これを第2の内
容検索型メモリに与えるレジスタを有するものである。
[0010] According to a second aspect of the present invention, there is provided for each type of various information constituting a packet filter condition,
An entry for storing information of a corresponding type is provided. The information stored in each entry is compared with the information of the corresponding type included in the input packet, and when there is an entry storing matching information, the matching entry is determined. Instead of a plurality of first content-search-type memories that output codes representing the information of a plurality of types of information and a packet filter condition composed of a set of various types of information, a set of codes representing the information is stored as a packet filter condition, and A second content search type memory for outputting a match signal when a set of codes respectively output from the first content search type memory matches the packet filter condition. As described above, the first content search type memory performs a search for each type of various information constituting the packet filter condition, and the second content search type memory stores a set of codes from the first content search type memory as a packet. By determining whether the input packet matches the filter condition, the attribute of the input packet can be determined. According to a third aspect of the present invention, there is provided a register for arranging outputs of the plurality of first content search memories in a predetermined order and supplying the outputs to the second content search memory.

【0011】[0011]

【発明の実施の形態】[実施の形態の1]次に、本発明
の実施の形態について図面を参照して詳細に説明する。
図1は本発明の第1の実施の形態となるパケットフィル
タ回路のブロック図である。本実施の形態のパケットフ
ィルタ回路は、パケットフィルタ条件を構成する各種情
報の種別毎に設けられた、個別情報判定CAM(第1の
内容検索型メモリ)1−1,1−2,1−3を有してい
る。
DESCRIPTION OF THE PREFERRED EMBODIMENTS [First Embodiment] Next, an embodiment of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a block diagram of a packet filter circuit according to a first embodiment of the present invention. The packet filter circuit according to the present embodiment includes individual information determination CAMs (first content search type memories) 1-1, 1-2, and 1-3 provided for each type of various types of information constituting packet filter conditions. have.

【0012】各個別情報判定CAM1−1,1−2,1
−3は、入力パケットのパケットヘッダから該当種別の
情報(検索ワード)を抽出するラッチ回路11−1,1
1−2,11−3と、該当種別の情報(被検索ワード)
を格納するための複数のエントリを有するCAMセルア
レイ12−1,12−2,12−3と、ラッチ回路11
−1,11−2,11−3から出力された情報と一致す
る情報を保持しているエントリが存在するとき、この一
致エントリのアドレスを出力する一致アドレス出力回路
13−1,13−2,13−3とから構成されている。
Each individual information determination CAM1-1, 1-2, 1
-3 is a latch circuit 11-1, 1 for extracting information (search word) of a corresponding type from a packet header of an input packet.
1-2, 11-3, and information of the corresponding type (searched word)
CAM cell arrays 12-1, 12-2, 12-3 having a plurality of entries for storing
When there is an entry holding information that matches the information output from -1, 11-2, 11-3, the match address output circuits 13-1, 13-2, 13-2, 13-2 output the address of the match entry. 13-3.

【0013】個別情報判定CAM1−1は、パケットフ
ィルタ条件を構成する各種情報のうちIP(Internet
Protocol)アドレスに対応するものである。ラッチ回路
11−1は、入力パケットのパケットヘッダからIPア
ドレスを抽出し、CAMセルアレイ12−1は、IPア
ドレスを被検索ワードとして格納している。一致アドレ
ス出力回路13−1は、ラッチ回路11−1から出力さ
れたIPアドレスと一致するIPアドレスを保持してい
るエントリがCAMセルアレイ12−1に存在すると
き、この一致エントリのアドレスを出力する。
The individual information determination CAM1-1 includes an IP (Internet) among various information constituting a packet filter condition.
Protocol) address. The latch circuit 11-1 extracts an IP address from the packet header of the input packet, and the CAM cell array 12-1 stores the IP address as a word to be searched. When an entry holding an IP address that matches the IP address output from the latch circuit 11-1 exists in the CAM cell array 12-1, the match address output circuit 13-1 outputs the address of the match entry. .

【0014】個別情報判定CAM1−2は、パケットフ
ィルタ条件を構成する各種情報のうちMAC(Media Ac
cess Control)アドレスに対応するものである。ラッチ
回路11−2は、入力パケットのパケットヘッダからM
ACアドレスを抽出し、CAMセルアレイ12−2は、
MACアドレスを被検索ワードとして格納している。一
致アドレス出力回路13−2は、ラッチ回路11−2か
ら出力されたMACアドレスと一致するMACアドレス
を保持しているエントリがCAMセルアレイ12−2に
存在するとき、この一致エントリのアドレスを出力す
る。
The individual information determination CAM1-2 is a MAC (Media Acquisition) of various information constituting the packet filter condition.
cess control) address. The latch circuit 11-2 calculates M from the packet header of the input packet.
The CAM cell array 12-2 extracts the AC address,
The MAC address is stored as a word to be searched. When there is an entry in the CAM cell array 12-2 holding a MAC address that matches the MAC address output from the latch circuit 11-2, the match address output circuit 13-2 outputs the address of the match entry. .

【0015】個別情報判定CAM1−3は、パケットフ
ィルタ条件を構成する各種情報のうちTCP(Transmis
sion Control Protocol )ポート番号に対応するもので
ある。ラッチ回路11−3は、入力パケットのパケット
ヘッダからTCPポート番号を抽出し、CAMセルアレ
イ12−3は、TCPポート番号を被検索ワードとして
格納している。一致アドレス出力回路13−3は、ラッ
チ回路11−3から出力されたTCPポート番号と一致
するTCPポート番号を保持しているエントリがCAM
セルアレイ12−3に存在するとき、この一致エントリ
のアドレスを出力する。
The individual information determination CAM1-3 includes a TCP (Transmis- sion) among various information constituting the packet filter condition.
sion Control Protocol) corresponding to the port number. The latch circuit 11-3 extracts the TCP port number from the packet header of the input packet, and the CAM cell array 12-3 stores the TCP port number as a word to be searched. The matching address output circuit 13-3 is configured such that the entry holding the TCP port number that matches the TCP port number output from the latch circuit 11-3 is a CAM.
When it exists in the cell array 12-3, it outputs the address of this matching entry.

【0016】以上のように、各個別情報判定CAM1−
1,1−2,1−3は、それぞれが対応する情報に関し
ての一致検索を実施する。レジスタ2は、各個別情報判
定CAM1−1,1−2,1−3から出力された一致エ
ントリアドレスを所定の順序に配列するためのもので、
各個別情報判定CAM1−1,1−2,1−3から出力
された一致エントリアドレスをいったん格納し、これら
を所定の順序で出力する。
As described above, each individual information determination CAM1-
Each of 1, 1-2, and 1-3 performs a match search on the information corresponding to each. The register 2 is for arranging the matching entry addresses output from the individual information determination CAMs 1-1, 1-2 and 1-3 in a predetermined order.
The matching entry addresses output from the individual information determination CAMs 1-1, 1-2, and 1-3 are temporarily stored, and are output in a predetermined order.

【0017】次に、本実施の形態のパケットフィルタ回
路では、従来のような各種情報の集合からなるパケット
フィルタ条件の代わりに、これら情報を格納している各
個別情報判定CAM1−1,1−2,1−3の一致エン
トリアドレスの集合をパケットフィルタ条件としてい
る。
Next, in the packet filter circuit of this embodiment, each individual information determination CAM1-1,1-CAM1 which stores these information is used instead of the conventional packet filter condition composed of a set of various information. A set of matching entry addresses of 2, 1-3 is set as a packet filter condition.

【0018】フィルタ条件判定CAM(第2の内容検索
型メモリ)3は、個別情報判定CAM1−1,1−2,
1−3の一致エントリアドレスの集合をパケットフィル
タ条件として格納するCAMセルアレイ31と、レジス
タ2から出力された一致エントリアドレスの集合がCA
Mセルアレイ31のパケットフィルタ条件と一致したと
き、一致信号を出力する一致信号出力回路32とから構
成されている。
The filter condition determination CAM (second content search type memory) 3 includes individual information determination CAMs 1-1, 1-2,
CAM cell array 31 that stores a set of matching entry addresses 1-3 as a packet filter condition, and a set of matching entry addresses output from register 2 is CA
A match signal output circuit 32 outputs a match signal when the packet filter condition of the M cell array 31 matches.

【0019】このように、本実施の形態では、個別情報
判定CAM1−1,1−2,1−3により、パケットフ
ィルタ条件を構成する各種情報の種別毎に検索を行い、
各個別情報判定CAM1−1,1−2,1−3から出力
された一致エントリアドレスをレジスタ2によって所定
の順序に配列して、フィルタ条件判定CAM3に入力す
る。そして、フィルタ条件判定CAM3によってレジス
タ2からの一致エントリアドレスの集合がパケットフィ
ルタ条件と一致するか否かを判定することにより、入力
パケットの属性を判断することができ、一致信号の出力
に応じて入力パケットの転送あるいは廃棄を行うことが
できる。
As described above, in the present embodiment, the individual information determination CAM1-1, 1-2, and 1-3 perform a search for each type of various information constituting the packet filter condition.
The matching entry addresses output from the individual information determination CAMs 1-1, 1-2 and 1-3 are arranged in a predetermined order by the register 2 and input to the filter condition determination CAM3. The attribute of the input packet can be determined by determining whether the set of matching entry addresses from the register 2 matches the packet filter condition by the filter condition determination CAM3. Input packets can be transferred or discarded.

【0020】なお、レジスタ2から出力される一致エン
トリアドレスの順序は、CAMセルアレイ31に格納さ
れた一致エントリアドレスの順序と同じであることは言
うまでもない。例えば、CAMセルアレイ31に格納さ
れたパケットフィルタ条件がCAM1−1のエントリア
ドレス、CAM1−2のエントリアドレス、CAM1−
3のエントリアドレスの順に設定されているとすれば、
レジスタ2は、この順序で各個別情報判定CAM1−
1,1−2,1−3からの一致エントリアドレスを出力
する。
It is needless to say that the order of the matching entry addresses output from the register 2 is the same as the order of the matching entry addresses stored in the CAM cell array 31. For example, the packet filter conditions stored in the CAM cell array 31 include an entry address of CAM1-1, an entry address of CAM1-2, and CAM1-
If they are set in the order of the entry addresses of
The register 2 stores the individual information determination CAM1-
The matching entry addresses from 1, 1-2 and 1-3 are output.

【0021】図2は本実施の形態のパケットフィルタ回
路の動作を説明するための説明図である。図2におい
て、個別情報判定CAM1−1,1−2,1−3及びフ
ィルタ条件判定CAM3の各行は、エントリを示してい
る。入力パケットのパケットヘッダにIPアドレス=
c、MACアドレス=b、ポート番号=iiiが設定さ
れていたとすると、個別情報判定CAM1−1,1−
2,1−3からは一致エントリアドレスとして、それぞ
れアドレスma,mb,mcが出力される。このとき、
フィルタ条件判定CAM3のCAMセルアレイ31にエ
ントリアドレスma,mb,mcの組み合わせがパケッ
トフィルタ条件として設定されていれば、一致信号出力
回路32より一致信号が出力される。
FIG. 2 is an explanatory diagram for explaining the operation of the packet filter circuit according to the present embodiment. In FIG. 2, each row of the individual information determination CAM1-1, 1-2, 1-3 and the filter condition determination CAM3 indicates an entry. IP address = in packet header of input packet
Assuming that c, MAC address = b, and port number = iii are set, individual information determination CAM1-1,1-
Addresses ma, mb, and mc are output from 2, 1-3 as matching entry addresses, respectively. At this time,
If a combination of the entry addresses ma, mb, and mc is set as a packet filter condition in the CAM cell array 31 of the filter condition determination CAM3, a match signal is output from the match signal output circuit 32.

【0022】[実施の形態の2]図3は本発明の第2の
実施の形態となるパケットフィルタ回路のブロック図で
あり、図1と同一の構成には同一の符号を付してある。
本実施の形態において、個別情報判定CAM1a−1,
1a−2,1a−3内のCAMセルアレイ12a−1,
12a−2,12a−3は、図1のCAMセルアレイ1
2−1,12−2,12−3と同様の情報とこの情報を
表すコード(符号)とを各エントリに格納している。
[Embodiment 2] FIG. 3 is a block diagram of a packet filter circuit according to a second embodiment of the present invention. The same components as those in FIG. 1 are denoted by the same reference numerals.
In the present embodiment, the individual information determination CAM1a-1,
CAM cell arrays 12a-1 in 1a-2 and 1a-3,
12a-2 and 12a-3 are CAM cell arrays 1 of FIG.
Information similar to 2-1 and 12-2 and 12-3 and a code (code) representing this information are stored in each entry.

【0023】符号出力回路14−1,14−2,14−
3は、ラッチ回路11−1,11,2,11−3から出
力された情報と一致する情報を保持しているエントリが
CAMセルアレイ12a−1,12a−2,12a−3
に存在するとき、この一致エントリに格納されたコード
を出力する。
Code output circuits 14-1, 14-2, 14-
No. 3 indicates that the entry holding the information that matches the information output from the latch circuits 11-1, 11, 2, 11-3 is a CAM cell array 12a-1, 12a-2, 12a-3.
, The code stored in the matching entry is output.

【0024】本実施の形態のパケットフィルタ回路で
は、各種情報の集合からなるパケットフィルタ条件の代
わりに、各種情報をコード化して、コードの集合をパケ
ットフィルタ条件としている。フィルタ条件判定CAM
3aは、コードの集合をパケットフィルタ条件として格
納するCAMセルアレイ31aと、レジスタ2から出力
されたコードの集合がCAMセルアレイ31aのパケッ
トフィルタ条件と一致したとき、一致信号を出力する一
致信号出力回路32aとから構成されている。その他の
構成は、実施の形態の1と全く同じである。
In the packet filter circuit of this embodiment, instead of a packet filter condition consisting of a set of various information, various kinds of information are coded, and a set of codes is used as a packet filter condition. Filter condition judgment CAM
Reference numeral 3a denotes a CAM cell array 31a that stores a set of codes as packet filter conditions, and a match signal output circuit 32a that outputs a match signal when the set of codes output from the register 2 matches the packet filter conditions of the CAM cell array 31a. It is composed of Other configurations are exactly the same as those of the first embodiment.

【0025】[0025]

【発明の効果】本発明によれば、パケットフィルタ回路
を内容検索型メモリというハードウェアで構成したの
で、ソフトウェア処理よりも高速な処理性能を実現する
ことができる。また、第1の内容検索型メモリの各々は
同一の情報を重複して持つ必要がなく、パケットフィル
タ条件を構成する各種情報の種別毎に第1の内容検索型
メモリを設けるため、パケットフィルタ条件が多種類の
情報から構成される場合であっても、実現性が高く、従
来のパケットフィルタ回路よりもハードウェア量を低減
することができる。さらに、第2の内容検索型メモリは
一致エントリアドレスの集合あるいは情報を表すコード
の集合をパケットフィルタ条件として記憶するため、パ
ケットフィルタ条件を表す必要ビット数が最低限度の量
で事足りるので、ハードウェア量を更に低減することが
できる。
According to the present invention, since the packet filter circuit is constituted by hardware called a content search type memory, processing performance higher than software processing can be realized. In addition, since each of the first content search memories does not need to have the same information redundantly, and the first content search memory is provided for each type of various information constituting the packet filter condition, the packet filter condition Is highly feasible and the amount of hardware can be reduced as compared with the conventional packet filter circuit. Further, since the second content search type memory stores a set of matching entry addresses or a set of codes representing information as packet filter conditions, the required number of bits representing the packet filter conditions is sufficient with a minimum amount. The amount can be further reduced.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明の第1の実施の形態となるパケットフ
ィルタ回路のブロック図である。
FIG. 1 is a block diagram of a packet filter circuit according to a first embodiment of the present invention.

【図2】 図1のパケットフィルタ回路の動作を説明す
るための説明図である。
FIG. 2 is an explanatory diagram for explaining an operation of the packet filter circuit of FIG. 1;

【図3】 本発明の第2の実施の形態となるパケットフ
ィルタ回路のブロック図である。
FIG. 3 is a block diagram of a packet filter circuit according to a second embodiment of the present invention.

【図4】 従来のパケットフィルタ回路のブロック図で
ある。
FIG. 4 is a block diagram of a conventional packet filter circuit.

【符号の説明】[Explanation of symbols]

1−1、1−2、1−3、1a−1、1a−2、1a−
3…個別情報判定CAM、2…レジスタ、3、3a…フ
ィルタ条件判定CAM、11−1、11−2、11−3
…ラッチ回路、12−1、12−2、12−3、12a
−1、12a−2、12a−3…CAMセルアレイ、1
3−1、13−2、13−3…一致アドレス出力回路、
14−1、14−2、14−3…符号出力回路、31、
31a…CAMセルアレイ、32、32a…一致信号出
力回路。
1-1, 1-2, 1-3, 1a-1, 1a-2, 1a-
3: Individual information determination CAM, 2: Register, 3, 3a: Filter condition determination CAM, 11-1, 11-2, 11-3
... Latch circuits, 12-1, 12-2, 12-3, 12a
-1, 12a-2, 12a-3 ... CAM cell array, 1
3-1, 13-2, 13-3 ... matching address output circuit,
14-1, 14-2, 14-3 ... code output circuit, 31,
31a: CAM cell array; 32, 32a: coincidence signal output circuit.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 ネットワーク間でパケット中継を実現す
るパケット中継装置において、入力パケットの転送ある
いは廃棄を決定するために入力パケットの属性を判断す
るパケットフィルタ回路であって、 パケットフィルタ条件を構成する各種情報の種別毎に設
けられ、該当種別の情報を格納するエントリを備え、各
エントリに格納された情報と入力パケットが有する該当
種別の情報とを比較して、一致する情報を格納している
エントリが存在するとき、この一致エントリのアドレス
を出力する複数の第1の内容検索型メモリと、 各種情報の集合からなるパケットフィルタ条件の代わり
に、これら情報を格納している第1の内容検索型メモリ
の一致エントリアドレスの集合をパケットフィルタ条件
として記憶し、複数の第1の内容検索型メモリからそれ
ぞれ出力された一致エントリアドレスの集合がパケット
フィルタ条件と一致したとき、一致信号を出力する第2
の内容検索型メモリとを有することを特徴とするパケッ
トフィルタ回路。
In a packet relay device for realizing packet relay between networks, a packet filter circuit for determining an attribute of an input packet in order to determine whether to transfer or discard the input packet, the packet filter circuit comprising: An entry that is provided for each type of information and includes an entry for storing the information of the corresponding type, and compares the information stored in each entry with the information of the corresponding type included in the input packet, and stores matching information. Exists, a plurality of first content search type memories for outputting the address of the matching entry, and a first content search type memory storing these information instead of a packet filter condition comprising a set of various information. A plurality of first content search memories storing a set of matching entry addresses in the memory as packet filter conditions When a set of al matching entry address each output matches the packet filter condition, the outputs a coincidence signal 2
And a content search type memory.
【請求項2】 ネットワーク間でパケット中継を実現す
るパケット中継装置において、入力パケットの転送ある
いは廃棄を決定するために入力パケットの属性を判断す
るパケットフィルタ回路であって、 パケットフィルタ条件を構成する各種情報の種別毎に設
けられ、該当種別の情報を格納するエントリを備え、各
エントリに格納された情報と入力パケットが有する該当
種別の情報とを比較して、一致する情報を格納している
エントリが存在するとき、この一致エントリの情報を表
すコードを出力する複数の第1の内容検索型メモリと、 各種情報の集合からなるパケットフィルタ条件の代わり
に、これら情報を表すコードの集合をパケットフィルタ
条件として記憶し、複数の第1の内容検索型メモリから
それぞれ出力されたコードの集合がパケットフィルタ条
件と一致したとき、一致信号を出力する第2の内容検索
型メモリとを有することを特徴とするパケットフィルタ
回路。
2. A packet relay device for realizing packet relay between networks, comprising: a packet filter circuit for determining an attribute of an input packet in order to determine whether to transfer or discard the input packet; An entry that is provided for each type of information and includes an entry for storing the information of the corresponding type, and compares the information stored in each entry with the information of the corresponding type included in the input packet, and stores matching information. Exists, a plurality of first content-search-type memories that output codes representing the information of the matching entries, and, instead of a packet filter condition consisting of a set of various kinds of information, a set of codes representing these pieces of information A set of codes stored as conditions and output from the plurality of first content search memories is When matched with Ttofiruta condition, the packet filter circuit and having a second content addressable memory which outputs a coincidence signal.
【請求項3】 請求項1又は2記載のパケットフィルタ
回路において、 複数の第1の内容検索型メモリの出力を所定の順序に配
列して、これを第2の内容検索型メモリに与えるレジス
タを有することを特徴とするパケットフィルタ回路。
3. The packet filter circuit according to claim 1, wherein a plurality of outputs of the first content-search-type memories are arranged in a predetermined order, and a register for providing the output to the second content-search-type memory is provided. A packet filter circuit comprising:
JP31573298A 1998-11-06 1998-11-06 Packet filter circuit Expired - Lifetime JP3028414B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31573298A JP3028414B1 (en) 1998-11-06 1998-11-06 Packet filter circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31573298A JP3028414B1 (en) 1998-11-06 1998-11-06 Packet filter circuit

Publications (2)

Publication Number Publication Date
JP3028414B1 JP3028414B1 (en) 2000-04-04
JP2000151627A true JP2000151627A (en) 2000-05-30

Family

ID=18068877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31573298A Expired - Lifetime JP3028414B1 (en) 1998-11-06 1998-11-06 Packet filter circuit

Country Status (1)

Country Link
JP (1) JP3028414B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008193732A (en) * 2008-03-28 2008-08-21 Matsushita Electric Ind Co Ltd Monitoring video transmission method
US7525927B2 (en) 2002-01-17 2009-04-28 Panasonic Corporation Unicast-to-multicast converting apparatus, method, and computer program product, and monitoring system comprising the same
US7860029B2 (en) 2004-02-26 2010-12-28 Nec Corporation Subscriber line accommodation device and packet filtering method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7525927B2 (en) 2002-01-17 2009-04-28 Panasonic Corporation Unicast-to-multicast converting apparatus, method, and computer program product, and monitoring system comprising the same
US7860029B2 (en) 2004-02-26 2010-12-28 Nec Corporation Subscriber line accommodation device and packet filtering method
JP2008193732A (en) * 2008-03-28 2008-08-21 Matsushita Electric Ind Co Ltd Monitoring video transmission method
JP4665007B2 (en) * 2008-03-28 2011-04-06 パナソニック株式会社 Surveillance video transmission apparatus and method

Also Published As

Publication number Publication date
JP3028414B1 (en) 2000-04-04

Similar Documents

Publication Publication Date Title
US7237058B2 (en) Input data selection for content addressable memory
US7830892B2 (en) VLAN translation in a network device
US5949696A (en) Differential dynamic content addressable memory and high speed network address filtering
US7313667B1 (en) Methods and apparatus for mapping fields of entries into new values and combining these mapped values into mapped entries for use in lookup operations such as for packet processing
US6957272B2 (en) Stackable lookup engines
US7233597B2 (en) High speed parser
US20030086434A1 (en) SRAM based cache for DRAM routing table lookups
US8599859B2 (en) Iterative parsing and classification
JPH09307581A (en) Bridge
US6804230B1 (en) Communication device with forwarding database having a trie search facility
US20070058633A1 (en) Configurable network connection address forming hardware
US10623316B2 (en) Scaling of switching tables with high bandwidth
GB2462237A (en) Packet switch device
US7403526B1 (en) Partitioning and filtering a search space of particular use for determining a longest prefix match thereon
US6570866B1 (en) High-speed flexible longest match retrieval
US8331368B2 (en) Method of processing information packets and telecommunication apparatus using the same
US7219187B1 (en) Search parameter table in a content addressable memory
US7564841B2 (en) Apparatus and method for performing forwarding table searches using consecutive symbols tables
US7702882B2 (en) Apparatus and method for performing high-speed lookups in a routing table
US20080175241A1 (en) System and method for obtaining packet forwarding information
JP3028414B1 (en) Packet filter circuit
US8037238B2 (en) Multiple mode content-addressable memory
US7114026B1 (en) CAM device having multiple index generators
US8040882B2 (en) Efficient key sequencer
US20060064413A1 (en) Data retrieval method and device