JP2002374289A - 検索システム及びそれに用いる検索条件cam登録方法並びにそのプログラム - Google Patents
検索システム及びそれに用いる検索条件cam登録方法並びにそのプログラムInfo
- Publication number
- JP2002374289A JP2002374289A JP2001177856A JP2001177856A JP2002374289A JP 2002374289 A JP2002374289 A JP 2002374289A JP 2001177856 A JP2001177856 A JP 2001177856A JP 2001177856 A JP2001177856 A JP 2001177856A JP 2002374289 A JP2002374289 A JP 2002374289A
- Authority
- JP
- Japan
- Prior art keywords
- search
- cam
- entry
- retrieval
- condition
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
能とし、検索性能を向上可能な検索システムを提供す
る。 【解決手段】 検索エンジン1はルータ装置から入力さ
れるヘッダ情報を検索キーとしてCAM2へ入力し、C
AM2に対する検索が失敗すると、ヘッダ情報をCPU
4へ入力する。CPU4はヘッダ情報を検索キーとして
大容量低速メモリ5を検索し、その検索結果を検索エン
ジン1へ受渡し、検索エンジン1がこれを本検索システ
ムの出力とする。この時、CPU4は得られた検索エン
トリをCAM2及び小容量高速メモリ3に登録するが、
宛先ポートが[下限〜上限]の範囲条件で与えられてい
るため、所定のアルゴリズムを用いて宛先ポートの[下
限〜上限]の範囲を分割し、CAM2に登録すべき複数
のエントリを求める。
Description
れに用いる検索条件CAM登録方法並びにそのプログラ
ムに関し、特にルータ装置に用いられるCAM(Con
tent−Addressable Memory)へ
の検索条件の登録方法に関する。
の性能を向上させるために、検索システムにCAMを使
用する場合が増えており、CPU(中央処理装置)が管
理する転送テーブルの一部のエントリをCAMにキャッ
シュすることで、全体的な処理性能を向上させる処理が
行われている。
理を行う場合、CAMを用いることで装置全体の負荷が
小さくなり、性能が向上すると考えられる。ここで、フ
ィルタリングとは、予め設定された条件(フィルタリン
グ条件)に基いて、受信したパケットを通過させるか、
廃棄するか等を決める処理である。
ernet Protocol)アドレスやTCP/U
DP(Transmission Control P
rotocol/User Datagram Pro
tocol)ポート番号の範囲指定(下限及び上限)が
設定されることがある。
ステムでは、フィルタリング条件をキャッシュとしてC
AMに登録するため、その範囲に含まれる個々の要素を
別々のエントリとしてCAMに登録している。
が広くなると、登録されるべきエントリが増加し、その
結果、検索ヒット率が下がり、さらにCPUによる転送
テーブルの検索回数及びCAMへの登録回数が増加し、
装置全体の性能を低下させてしまうという問題がある。
消し、検索ヒット条件を少ないエントリ数で登録するこ
とができ、検索性能を向上させることができる検索シス
テム及びそれに用いる検索条件CAM登録方法並びにそ
のプログラムを提供することにある。
ムは、範囲指定される検索ヒット条件を含むエントリを
CAM(Content−Addressable M
emory)へ登録し、パケットのヘッダ情報に対応す
るフロー識別子を検索する検索システムであって、前記
エントリにおいて範囲指定される検索ヒット条件を所定
アルゴリズムを用いて複数に分割して前記CAMに登録
する手段を備えている。
範囲指定される検索ヒット条件を含むエントリをCAM
(Content−Addressable Memo
ry)へ登録し、パケットのヘッダ情報に対応するフロ
ー識別子を検索する検索システムの検索条件CAM登録
方法であって、前記エントリにおいて範囲指定される検
索ヒット条件を所定アルゴリズムを用いて複数に分割し
て前記CAMに登録するようにしている。
ログラムは、範囲指定される検索ヒット条件を含むエン
トリをCAM(Content−Addressabl
eMemory)へ登録し、パケットのヘッダ情報に対
応するフロー識別子を検索する検索システムの検索条件
CAM登録方法のプログラムであって、コンピュータ
に、前記エントリにおいて範囲指定される検索ヒット条
件を所定アルゴリズムを用いて複数に分割して前記CA
Mに登録する処理を実行させている。
法は、検索ヒット条件に範囲指定エントリをCAM(C
ontent−Addressable Memor
y)へ登録する際に、CAMのマスク機能(Don’t
Care機能)[検索ヒット情報の情報をマスク情報
にてマスクしてから検索を行うための機能であり、マス
クする部分はどのような値でもよい(Don’t Ca
re)]を上手く使うことによって、少ないエントリ数
で、一度にその範囲を含む検索条件を全て登録すること
が可能となる。
とで、その範囲に属する全ての要素の検索ヒット条件を
少ないエントリ数で登録することが可能となるので、検
索システムの性能を向上させることが可能となる。
図面を参照して説明する。図1は本発明の一実施例によ
る検索システムの構成を示すブロック図である。図1に
おいて、本発明の一実施例による検索システムはルータ
装置における検索システムの構成例を示しており、パケ
ットのヘッダ情報を入力とし、そのパケットが属するフ
ロー識別子を出力するシステムである。
ッダに含まれるMAC(MediaAccess Co
ntrol)アドレスやIP(Internet Pr
otocol)アドレス、L4(レイヤ4)ポート番号
等の組合わせである。フロー識別子とはそのヘッダ情報
を持つパケットに対してルータ装置が行うべき転送処理
を特定するための識別子である。
CAM(Content−Addressable M
emory)2と、小容量高速メモリ3と、CPU(中
央処理装置)4と、大容量低速メモリ5と、記録媒体6
とから構成されており、検索エンジン1及びCPU4が
実行するプログラムは記録媒体6に格納されている。
入力されると、CAM2と小容量高速メモリ3とを用い
てヘッダ情報に対応するフロー識別子を検索し、検索が
成功すると、その検索結果として得られたフロー識別子
を出力する。また、検索エンジン1は検索が失敗する
と、CPU4と大容量低速メモリ5とを用いて再検索を
行い、その検索結果として得られたフロー識別子を出力
する。
あり、検索キーに対する検索結果を瞬時に出力する。C
AM2は検索ヒット情報の情報をマスク情報にてマスク
してから検索を行うためのマスク機能(Don’t C
are機能)を持っており、その場合、マスクする部分
はどのような値でもよい(Don’t Care)。
め、CAM2に比べて検索に長い時間を要する。大容量
低速メモリ5にはルータ装置(図示せず)が扱う全ての
ヘッダ情報とフロー識別子との対応が検索エントリとし
て格納されている。
れる検索エントリの具体例を示す図である。図2におい
て、大容量低速メモリ5の各エントリ#21〜#24に
はヘッダ情報として送信元アドレス[「SA(Sour
ce Address)#1」,「SA#2」,「SA
#3」,「SA#4」]と、宛先アドレス[「DA(D
estination Address)#1」,「D
A#2」,「DA#3」,「DA#4」]と、宛先ポー
ト(「20〜150」,「5000〜6000」,「1
00〜200」,「10000〜20000」)とが格
納され、それに対応するフロー識別子(「3」,
「1」,「5」,「8」)が格納されている。ここで、
各エントリ#21〜#24の宛先ポートは「下限〜上
限」のような範囲指定の形式で与えられる点に注意す
る。
リ3に格納される検索エントリの具体例を示す図であ
る。図3において、CAM2の各エントリ#31〜#3
6には送信元アドレス(32ビット)のデータ「SA#
3」及びマスク情報「1111・・・1」と、宛先アド
レス(32ビット)のデータ「DA#3」及びマスク情
報「1111・・・1」と、宛先ポート(16ビット)
のデータ「00000000 01100100」,
「00000000 01101000」,「0000
0000 01110000」,「00000000
10000000」,「00000000 11001
000」,「00000000 11000000」及
びマスク情報「11111111 1111110
0」,「11111111 11111000」,「1
1111111 11110000」,「111111
11 10000000」,「11111111 11
111111」,「11111111 1111100
0」とが格納され、小容量高速メモリ3の各エントリに
はそれに対応してフロー識別子「5]が格納されてい
る。
用いられるパケットの構成例を示す図であり、図5は本
発明の一実施例による検索システムのアルゴリズムを示
すフローチャートである。これら図1〜図5を参照して
本発明の一実施例による検索システムの動作について説
明する。図5に示すアルゴリズムはCPU4が記録媒体
6のプログラムを実行することで実現される。
が与えられると、そのヘッダ情報を持つ検索エントリを
大容量低速メモリ5から検索し、対応するフロー識別子
を検索エンジン1へ出力する。例えば、図4(a)に示
すパケット#41のヘッダ情報がCPU4に与えられる
と、大容量低速メモリ5から図2に示すエントリ#23
を検索し、そのエントリのフロー識別子=5を検索エン
ジン1へ出力する。
後、得られた検索エントリのヘッダ情報をCAM2に登
録し、フロー識別子を小容量高速メモリ3へ登録する。
この時、図2に示すエントリの宛先ポートのような範囲
指定が検索ヒット条件に含まれる場合には、図5に示す
アルゴリズムを用いて複数のエントリに分割したものを
CAM2へ登録する。例えば、大容量低速メモリ5から
図2に示すエントリ#23を検索した時、図3に示すよ
うな検索エントリがCAM2及び小容量高速メモリ3に
追加登録される。
マスクエントリとから構成されるターナリCAMであ
り、各ビットについて“0”、“1”、または“Do
n’tCare”のいずれかの値を検索条件として指定
することができる。CAM2は検索エンジン1から検索
キーとしてヘッダ情報が入力されると、そのヘッダ情報
に一致するエントリを瞬時に見つけ出し、そのアドレス
を小容量高速メモリ3へ受渡す。
リのアドレスが入力されると、そのアドレスに格納され
たフロー識別子を検索エンジン1へ出力する。例えば、
CAM2及び小容量高速メモリ3に図3に示すようなエ
ントリが格納されており、図4(a)に示すパケット#
41のヘッダ情報が検索エンジン1から与えられた時、
CAM2はエントリ#33を瞬時に見つけ出し、小容量
高速メモリ3に格納されたフロー識別子=5が検索エン
ジン1へ出力される。CAM2及び小容量高速メモリ3
に登録されたエントリは、CPU4によって最近検索さ
れなくなったものから定期的に削除されるものとする。
件として範囲条件A〜Bが与えられた時、CAM2へ登
録すべき複数のデータエントリD[0],D
[1],...,D[n−1]、マスクエントリM
[0],M[1],...,M[n−1]及びエントリ
数nを求めるアルゴリズムを示す。図5に示すフローチ
ャート中のA,B,D[i],M[i]及びA’、B’
は固定長ビット幅の変数であり、計算式中のOR、XO
R、NOTはそれぞれビット毎のOR、Exclusi
veOR、NOTの論理演算を意味する。
て、大容量低速メモリ5には図2に示す検索エントリが
格納されており、CAM2及び小容量高速メモリ3には
有効なエントリが1つも格納されていないものとする。
41を受信し、そのヘッダ情報として送信元アドレス=
SA3、宛先IPアドレス=DA3、宛先ポート=12
1が検索エンジン1に入力されると、検索エンジン1は
これらのヘッダ情報を検索キーとしてCAM2へ入力す
る。この時点でCAM2には対応するエントリが存在し
ないため、CAM2に対する検索は失敗し、検索エンジ
ン1はヘッダ情報をCPU4へ入力する。
て大容量低速メモリ5を検索し、図2に示すエントリ#
23を得る。このエントリ#23に含まれるフロー識別
子=5を検索エンジン1へ受渡し、検索エンジン1はこ
れを本検索システムの出力とする。
#23をCAM2及び小容量高速メモリ3に登録する
が、宛先ポートが[下限〜上限]の範囲条件で与えられ
ているため、図5に示すアルゴリズムを用いて宛先ポー
トの[下限〜上限]の範囲をマスク情報にてマスクしや
すいように分割し、CAM2に登録すべき複数のエント
リを求める。以下、複数のエントリを求める処理につい
て説明する。
の下限A=100、上限B=200を設定する。最初に
登録すべきエントリは、下限をA=100とし、計算式
#a1[A’←A OR (A−1)]によって上限
A’=103が得られる。
A’=103が最終的な上限B=200以下であること
を確認し、計算式#a3[D[n]←A,M[n]←N
OT(A XOR A’)]によってデータエントリD
[0]=100=00000000,01100100
(2進)と、マスクエントリM[0]=1111111
1,11111100(2進)とが求まる(図3に示す
エントリ#31)。このエントリは宛先ポートが100
〜103の検索キーにヒットする。
+1,A←A’+1)によって下限A=104、計算式
#a1によって上限A’=111がそれぞれ得られる。
条件式#a2によって上限A’=111が最終的な上限
B=200以下であることを確認し、計算式#a3によ
ってデータエントリD[1]=104=0000000
0,01101000(2進)と、マスクエントリM
[1]=11111111,11111000(2進)
とが求まる(図3に示すエントリ#32)。このエント
リは宛先ポートが104〜111の検索キーにヒットす
る。
下限A=112、計算式#a1によって上限A’=12
7がそれぞれ得られる。条件式#a2によって上限A’
=127が最終的な上限B=200以下であることを確
認し、計算式#a3によってデータエントリD[2]=
112=00000000,01110000(2進)
と、マスクエントリM[2]=11111111,11
110000(2進)とが求まる(図3に示すエントリ
#33)。このエントリは宛先ポートが112〜127
の検索キーにヒットする。
下限A=128、計算式#a1によって上限A’=19
1がそれぞれ得られる。条件式#a2によって上限A’
=191が最終的な上限B=200以下であることを確
認し、計算式#a3によってデータエントリD[3]=
128=00000000,10000000(2進)
と、マスクエントリM[3]=11111111,10
000000(2進)とが求まる(図3に示すエントリ
#34)。このエントリは宛先ポートが128〜191
の検索キーにヒットする。
下限A=192、計算式#a1によって上限A’=25
5がそれぞれ得られる。しかしながら、条件式#a2に
よって上限A’=255が最終的な上限B=200を超
えていることが確認されるため、データエントリ及びマ
スクエントリの計算は行わず、#b1の処理に移り、残
りの宛先ポートが下限A=192から上限B=200の
検索キーにヒットするエントリを求める。
計算式#b1[B’←B ANDNOT(NOT(B)
−1)]によって下限B’=200が得られる。条件式
#b2(A>B’)によって、下限B’=200がA=
192以上であることを確認し、計算式#b3[D
[n]←B’,M[n]←NOT(B XOR
B’)]によってデータエントリD[4]=200=0
0000000,11001000(2進)と、マスク
エントリM[4]=11111111,1111111
1(2進)とが求まる(図3に示すエントリ#35)。
このエントリは宛先ポートが200の検索キーにヒット
する。
+1,B←B’−1)によって上限B=199、計算式
#b1によって下限B’=192がそれぞれ得られる。
条件式#b2によって下限B’=192がA=192以
上であることを確認し、計算式#b3によってデータエ
ントリD[5]=192=00000000,1100
0000(2進)と、マスクエントリM[5]=111
11111,11111000(2進)とが求まる(図
3に示すエントリ#36)。このエントリは宛先ポート
が192〜199の検索キーにヒットする。
上限B=191,下限B’=128がそれぞれ得られる
が、条件式#b2によって下限B’=128がA=19
2未満であるため、ここで処理を終了する。
の宛先ポートフィールドに登録すべきデータエントリD
[0],D[1],...,D[5]及びマスクエント
リM[0],M[1],...,M[5]が得られる。
CPU4はこれらを用いてCAM2及び小容量高速メモ
リ3に、図3に示すように、エントリ登録を行い、パケ
ット#41に関する処理を終了する。
(b)に示すパケット#42を受信すると、そのヘッダ
情報として送信元アドレス=SA3、宛先アドレス=D
A3、宛先ポート=153がそれぞれ検索エンジン1へ
入力され、検索エンジン1は検索キーとしてそれをCA
M2へ入力する。
登録されており、入力されたヘッダ情報はエントリ#3
4にヒットする。検索エンジン1は小容量高速メモリ3
から対応するフロー識別子=5を受取り、それを検索シ
ステムの出力とする。
パケットを再び受信した時に、CAM2及び小容量高速
メモリ3に既にエントリが存在するため、CPU4と大
容量低速メモリ5とによる低速な検索処理を必要とせ
ず、非常に短時間で対応するフロー識別子を得ることが
できる。
エントリをCAM2に登録する場合、従来、その範囲に
属する個々の要素毎にエントリを登録しているため、C
AM2に登録するエントリ数が増加し、検索システムの
性能の低下につながってしまう。
機能(Don’t Care機能)を使うことで、その
範囲に属する全ての要素の検索ヒット条件を少ないエン
トリ数で登録することができ、検索システムの性能を向
上させることができる。
くの検索ヒット条件を登録することができるため、CA
M2の1つ当たりの検索性能を向上させることができ
る。また、所望の性能を出すために必要となるCAM2
のエントリ数を少なくすることができるため、コスト及
び消費電力を小さくすることができる。
少なくなり、CPU4の負荷を小さくすることができ
る。さらにまた、CAM2の検索ヒット率が高くなるた
め、CPU4からCAM2へのエントリ登録回数が少な
くなり、CPU4の負荷を小さくすることができる。
への検索条件の登録方法では、特に範囲の上限と下限と
の差が大きいほど、従来のCAM2への検索条件の登録
方法に比べてその効果が大きくなる。
囲指定される宛先ポートのみを分割して複数のエントリ
を求め、それら複数のエントリを一括してCAM2へ登
録する処理について述べたが、ヘッダ情報の送信元アド
レスや宛先アドレスも範囲指定される場合には、上記と
同様の方法で、CAM2へ登録することができる。
囲指定される検索ヒット条件を含むエントリをCAMへ
登録し、パケットのヘッダ情報に対応するフロー識別子
を検索する検索システムにおいて、エントリにおける範
囲指定される検索ヒット条件を所定アルゴリズムを用い
て複数に分割してCAMに登録することによって、検索
ヒット条件を少ないエントリ数で登録することができ、
検索性能を向上させることができるという効果がある。
示すブロック図である。
トリの具体例を示す図である。
る検索エントリの具体例を示す図である。
るパケットの構成例を示す図である。
リズムを示すフローチャートである。
Claims (11)
- 【請求項1】 範囲指定される検索ヒット条件を含むエ
ントリをCAM(Content−Addressab
le Memory)へ登録し、パケットのヘッダ情報
に対応するフロー識別子を検索する検索システムであっ
て、前記エントリにおいて範囲指定される検索ヒット条
件を所定アルゴリズムを用いて複数に分割して前記CA
Mに登録する手段を有することを特徴とする検索システ
ム。 - 【請求項2】 前記エントリは、前記ヘッダ情報のうち
の少なくとも送信元アドレスと宛先アドレスと宛先ポー
トとを格納するようにしたことを特徴とする請求項1記
載の検索システム。 - 【請求項3】 前記検索ヒット条件は、前記ヘッダ情報
のうちの下限及び上限で範囲指定される情報であること
を特徴とする請求項1または請求項2記載の検索システ
ム。 - 【請求項4】 前記検索ヒット条件は、前記下限及び上
限で範囲指定される宛先ポートであることを特徴とする
請求項3記載の検索システム。 - 【請求項5】 前記所定アルゴリズムは、前記範囲指定
される検索ヒット条件をマスク情報にてマスク可能に分
割するアルゴリズムであることを特徴とする請求項1か
ら請求項4のいずれか記載の検索システム。 - 【請求項6】 範囲指定される検索ヒット条件を含むエ
ントリをCAM(Content−Addressab
le Memory)へ登録し、パケットのヘッダ情報
に対応するフロー識別子を検索する検索システムの検索
条件CAM登録方法であって、前記エントリにおいて範
囲指定される検索ヒット条件を所定アルゴリズムを用い
て複数に分割して前記CAMに登録するようにしたこと
を特徴とする検索条件CAM登録方法。 - 【請求項7】 前記エントリは、前記ヘッダ情報のうち
の少なくとも送信元アドレスと宛先アドレスと宛先ポー
トとを格納するようにしたことを特徴とする請求項6記
載の検索条件CAM登録方法。 - 【請求項8】 前記検索ヒット条件は、前記ヘッダ情報
のうちの下限及び上限で範囲指定される情報であること
を特徴とする請求項6または請求項7記載の検索条件C
AM登録方法。 - 【請求項9】 前記検索ヒット条件は、前記下限及び上
限で範囲指定される宛先ポートであることを特徴とする
請求項8記載の検索条件CAM登録方法。 - 【請求項10】 前記所定アルゴリズムは、前記範囲指
定される検索ヒット条件をマスク情報にてマスク可能に
分割するアルゴリズムであることを特徴とする請求項6
から請求項9のいずれか記載の検索条件CAM登録方
法。 - 【請求項11】 範囲指定される検索ヒット条件を含む
エントリをCAM(Content−Addressa
ble Memory)へ登録し、パケットのヘッダ情
報に対応するフロー識別子を検索する検索システムの検
索条件CAM登録方法のプログラムであって、コンピュ
ータに、前記エントリにおいて範囲指定される検索ヒッ
ト条件を所定アルゴリズムを用いて複数に分割して前記
CAMに登録する処理を実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001177856A JP3711895B2 (ja) | 2001-06-13 | 2001-06-13 | 検索システム及びそれに用いる検索条件cam登録方法並びにそのプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001177856A JP3711895B2 (ja) | 2001-06-13 | 2001-06-13 | 検索システム及びそれに用いる検索条件cam登録方法並びにそのプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002374289A true JP2002374289A (ja) | 2002-12-26 |
JP3711895B2 JP3711895B2 (ja) | 2005-11-02 |
Family
ID=19018640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001177856A Expired - Fee Related JP3711895B2 (ja) | 2001-06-13 | 2001-06-13 | 検索システム及びそれに用いる検索条件cam登録方法並びにそのプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3711895B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007525883A (ja) * | 2004-01-14 | 2007-09-06 | リヴァーストーン ネットワークス インコーポレーテッド | ネットワークノードにおける処理利用管理 |
JP2011124799A (ja) * | 2009-12-10 | 2011-06-23 | Nec Engineering Ltd | データ転送装置 |
JP2013164814A (ja) * | 2012-02-13 | 2013-08-22 | Canon Inc | 情報処理装置およびその制御方法 |
US8775726B2 (en) | 2012-07-27 | 2014-07-08 | International Business Machine Corporation | TCAM extended search function |
-
2001
- 2001-06-13 JP JP2001177856A patent/JP3711895B2/ja not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007525883A (ja) * | 2004-01-14 | 2007-09-06 | リヴァーストーン ネットワークス インコーポレーテッド | ネットワークノードにおける処理利用管理 |
JP2011124799A (ja) * | 2009-12-10 | 2011-06-23 | Nec Engineering Ltd | データ転送装置 |
JP2013164814A (ja) * | 2012-02-13 | 2013-08-22 | Canon Inc | 情報処理装置およびその制御方法 |
US8775726B2 (en) | 2012-07-27 | 2014-07-08 | International Business Machine Corporation | TCAM extended search function |
Also Published As
Publication number | Publication date |
---|---|
JP3711895B2 (ja) | 2005-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10389633B2 (en) | Hash-based address matching | |
US7437354B2 (en) | Architecture for network search engines with fixed latency, high capacity, and high throughput | |
US20190058661A1 (en) | Storing keys with variable sizes in a multi-bank database | |
US7389377B2 (en) | Access control list processor | |
US9537771B2 (en) | Exact match hash lookup databases in network switch devices | |
EP1623347B1 (en) | Comparison tree data structures and lookup operations | |
US8181258B2 (en) | Access control list constructed as a tree of matching tables | |
US6307855B1 (en) | Network routing table using content addressable memory | |
US7480299B2 (en) | Rules engine for access control lists in network units | |
US8599859B2 (en) | Iterative parsing and classification | |
US20070028039A1 (en) | Controlling a searchable range within a network search engine | |
US20060248095A1 (en) | Efficient RAM lookups by means of compressed keys | |
JP2005130489A (ja) | ルータ用の改良型アクセス制御リスティング機構 | |
KR20150026979A (ko) | 어드밴스드 피처를 갖는 정규 표현식 패턴에 대한 비결정성 유한 오토마톤 (nfa) 생성 | |
US7861291B2 (en) | System and method for implementing ACLs using standard LPM engine | |
US6529897B1 (en) | Method and system for testing filter rules using caching and a tree structure | |
US7644085B2 (en) | Directed graph approach for constructing a tree representation of an access control list | |
US20200228449A1 (en) | Exact match and ternary content addressable memory (tcam) hybrid lookup for network device | |
US7403526B1 (en) | Partitioning and filtering a search space of particular use for determining a longest prefix match thereon | |
US20040233692A1 (en) | Magnitude comparator based content addressable memory for search and sorting | |
US7739445B1 (en) | Circuit, apparatus, and method for extracting multiple matching entries from a content addressable memory (CAM) device | |
US9305115B1 (en) | Method and apparatus for reducing power consumption during rule searches in a content search system | |
WO2024067746A1 (zh) | 一种基于fpga实现的掩码匹配方法及系统 | |
JP2002374289A (ja) | 検索システム及びそれに用いる検索条件cam登録方法並びにそのプログラム | |
JP3558151B2 (ja) | データ検索回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040922 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041005 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050111 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050314 |
|
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: 20050726 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050808 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080826 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090826 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090826 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100826 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110826 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110826 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120826 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130826 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |