JPH11143888A - アドレス検索回路 - Google Patents

アドレス検索回路

Info

Publication number
JPH11143888A
JPH11143888A JP9303170A JP30317097A JPH11143888A JP H11143888 A JPH11143888 A JP H11143888A JP 9303170 A JP9303170 A JP 9303170A JP 30317097 A JP30317097 A JP 30317097A JP H11143888 A JPH11143888 A JP H11143888A
Authority
JP
Japan
Prior art keywords
search
address
row
line
center
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.)
Pending
Application number
JP9303170A
Other languages
English (en)
Inventor
Akira Toyoshima
鑑 豊島
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP9303170A priority Critical patent/JPH11143888A/ja
Publication of JPH11143888A publication Critical patent/JPH11143888A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【課題】 構成が単純でありながら、検索対象のテーブ
ルサイズが大きい場合にも検索時間の短いアドレス検索
回路を提供する。 【解決手段】 テーブル15は登録アドレス,転送処理
情報,検索続行/停止を示す検索停止ビットを含む行を
登録アドレス順に記憶する。先頭行番号レジスタ11,
末尾行番号レジスタ12はテーブル15の検索範囲を規
定し、中央行番号演算回路13はこれら各行から中央行
を求め、これを変換回路14でメモリアドレスへ変換
し、テーブル15にアクセスして中央行の内容を読み出
す。比較器19は登録アドレスと入力情報のアドレスを
比較し、その大小関係に応じて先頭行番号レジスタ11
又は末尾行番号レジスタ12を中央行番号で更新して検
索範囲を絞る。比較器19が両アドレスの一致を検出す
るか、両アドレスが不一致かつ検索停止ビットが検索停
止であって入力アドレスが未登録であることをゲート2
0が検出すると、検索が終了する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータ間通
信等において IP(Internet Protocol)パケットや
Ethernet(登録商標) フレームを受信してデ
ータ転送を行う場合に、高速に入力される大量のパケッ
トやフレームを受信して、これらを宛先につながれた方
路へ出力するブリッジやルータ等に適用され、宛先IP
アドレスや宛先MAC(Media Access Control)アドレ
スをキーとして宛先情報が登録されたテーブルの検索を
行うアドレス検索回路に関するものである。
【0002】
【従来の技術】まず、従来技術によるアドレス検索回路
の一例について説明する。図9は、従来技術を用いたI
Pパケット転送処理情報のアドレス検索回路100の構
成を示すブロック図である。同図において、テーブル1
5は、登録された宛先IPアドレス,サブネットマス
ク,IPパケットの転送処理情報の組が複数格納されて
いる。すなわち、テーブル15は、宛先IPアドレス,
サブネットマスク,IPパケットの転送処理情報をひと
まとめにしたものを一行としたときに、これらの行が複
数集められて構成されている。またテーブル15は、宛
先IPアドレスを数値(符号無しの2進数)と見なして
その各行が昇順にソートされていると共に、各行には
“0”から順にそれぞれ行番号が付与されている。ここ
で、以下の説明では、テーブル15の行数が2n 行であ
るものとしている。しかしながら、実際は、テーブル1
5に登録される行数がちょうど2n 行になるとは限らな
いため、例えば上記のように各行を昇順にソートする場
合、テーブル15の後ろの部分に空きの行ができること
になる。そこでこうした場合は、すべての空きの行の内
容を全ビット“1”に設定しておくか、あるいは、空き
でない最後の行(つまり、宛先IPアドレスを数値と見
なしたときにその値の最も大きな行)の内容をすべての
空きの行へ設定しておくようにする。こうすることで、
検索動作に影響を与えることなく、テーブル15の行数
を2n にすることができる。また、アドレス検索回路1
00はIPアドレスのうちホストアドレス以外の部分が
一致するものの検索を目的としているため、ホストアド
レス部分は何であっても良い。したがって、テーブル1
5に登録される宛先IPアドレスのうち、ホストアドレ
ス部分のビットはオール“0”に設定しておくようにす
る。
【0003】次に、先頭行番号レジスタ11及び末尾行
番号レジスタ12は、テーブル15上の検索範囲に対応
した先頭行番号及び末尾行番号をそれぞれ保持するレジ
スタであって、検索開始時点において、先頭行番号及び
末尾行番号の初期値が予めセットされる。また、これら
先頭行番号レジスタ11及び末尾行番号レジスタ12
は、後述の比較器19から出力される書き込みパルスに
従って、それぞれ独立にその保持内容が更新される。
【0004】次に、中央行番号演算回路13は、アドレ
ス検索回路100の外部から与えられる検索開始トリガ
を契機として、先頭行番号レジスタ11及び末尾行番号
レジスタ12が保持する先頭行番号〜末尾行番号で特定
される検索範囲の中央行を算出し、これを中央行番号と
して出力する。
【0005】ここで、中央行番号の演算方法の一例とし
て、先頭行番号と末尾行番号の加算平均をとってその小
数点以下を切り捨てる「切り捨て方式」が考えられる。
この演算を実現するには、加算器で先頭行番号と末尾行
番号を加算したのち、得られた加算結果の全ビットを1
ビットだけ右シフトさせるなどすれば良い。こうした切
り捨て方式を採用する場合、検索開始時点における末尾
行番号レジスタ12の設定値は、実際の末尾行番号(す
なわち、検索開始時点における検索範囲の最終行番号)
そのものでなく、実際の末尾行番号に対して“1”を加
算した値が設定される。こうすることで、全ての行を漏
れなく検索対象とすることができる。
【0006】また、中央行番号の演算方法の他の例とし
て、先頭行番号と末尾行番号の加算平均を切り上げる
「切り上げ方式」が考えられる。そしてこの方式の場
合、検索開始時点における先頭行番号レジスタ11の設
定値は、実際の先頭行番号(すなわち、検索開始時点に
おける検索対象範囲の最初の行番号)そのものでなく、
実際の先頭行番号から“1”を減じた値が設定される。
なお、検索開始時に先頭行番号レジスタ11へ設定する
先頭行番号は、“0”から始まってもいても“1”から
始まっていても良い。
【0007】一方、変換回路14は、中央行番号に対応
したテーブル15上の登録情報を読み出すためのメモリ
アドレスを生成して、メモリによって構成されるテーブ
ル15へ供給する。中央行番号レジスタ16は中央行番
号を保持するレジスタであって、次に述べる照合回路1
7から送られる行番号不一致信号をトリガとして、中央
行番号演算回路13から出力される中央行番号を取り込
む。なお、中央行番号レジスタ16の内容は、検索開始
前において、テーブル15上の何れの登録IPアドレス
値とも一致しない有り得ない値に初期化される。例え
ば、切り捨て方式の場合には中央行番号レジスタ16の
内容を全ビット“1”とすれば良く、また、切り上げ方
式を採用する場合にはその内容を全ビット“0”とすれ
ば良い。
【0008】照合回路17は、検索対象である“入力情
報のIPアドレス”がテーブル15に未登録であること
を検出するための回路であり、未登録が検出されない間
は行番号一致信号を出力し、未登録が検出された時点で
行番号不一致信号を出力する。そのために、照合回路1
7は、中央行番号演算回路13が出力する現時点の中央
行番号と中央行番号レジスタ16が保持する前回の中央
行番号との一致/不一致を判定し、これら双方の中央行
番号が等しい場合に入力情報のIPアドレスが未登録で
あるとする。
【0009】AND演算回路18は入力情報のIPアド
レスとテーブル15から読み出されるサブネットマスク
との論理積をビット毎に演算し、得られた演算結果を
「入力IPアドレス値」として出力する。このようにサ
ブネットマスクを用いたマスク演算を行うのは、IPア
ドレスの場合にはIPパケットをサブネットの入り口ま
で転送すれば良く、前述したようにホストアドレス部分
が不要なためである。なお、現在のIPv4(IPバー
ジョン4)プロトコルによればIPアドレスとサブネッ
トマスクは何れも32ビット構成である。また、サブネ
ットマスクは上位ビット(MSB)から“1”が連続し
ているものとし、それ以外のホストアドレス部分は
“0”が連続しているものとする。比較器19は、入力
IPアドレス値及びテーブル15から読み出される登録
IPアドレスをそれぞれ数値と見なして比較し、図示し
た通り、これら双方の大小関係に応じた3種類の信号の
うちの何れかを出力する。
【0010】次に、上記構成によるアドレス検索回路1
00の動作は以下のようになる。まず、検索を開始させ
る前に先頭行番号レジスタ11と末尾行番号レジスタ1
2に対して予め先頭行番号と末尾行番号の初期設定を行
っておく。その後、アドレス検索回路100に検索開始
トリガが与えられると、中央行番号演算回路13が先頭
行番号レジスタ11及び末尾行番号レジスタ12の各行
番号値から中央行番号を算出する。すると変換回路14
は、演算された中央行番号に基づき、これに対応するテ
ーブル15のメモリアドレスを生成する。
【0011】このメモリアドレスがテーブル15に与え
られると、テーブル15からは中央行の登録情報として
サブネットマスク,登録IPアドレス,転送処理情報が
読み出される。これらのうち、サブネットマスクはAN
D演算回路18へ供給されて、入力情報のIPアドレス
とビット毎にAND演算が施されてその演算結果である
入力IPアドレス値が比較器19に供給される。比較器
19は、入力IPアドレス値とテーブル15から読み出
された登録IPアドレス値とを比較して、以下の何れか
の結果を判定する。 [ケースA]:入力IPアドレス値=登録IPアドレス
値 [ケースB]:入力IPアドレス値<登録IPアドレス
値 [ケースC]:入力IPアドレス値>登録IPアドレス
【0012】まずケースAの場合は、入力情報のIPア
ドレスが検索されたことになるため、テーブル15から
読み出した転送処理情報と,IPアドレス一致を示す比
較器19からのパルスとをアドレス検索回路100外部
へ出力し、検索を終了する。一方、ケースBの場合は、
入力情報のIPアドレスがテーブル15上の検索範囲の
前半に存在することを意味している。したがって、現時
点における検索範囲のうちの前半部分を次回の検索範囲
とするために、中央行番号を末尾行番号レジスタ12に
書き込んだのち、新たな中央行番号を演算して上述した
のと同様の検索処理を繰り返し行ってゆく。
【0013】他方、ケースCの場合は、入力情報のIP
アドレスがテーブル15上の検索範囲の後半に存在する
ことを意味する。そこでこの場合は、中央行番号を先頭
行番号レジスタ11に書き込んだのち、新たな中央行番
号を演算して上述したのと同様の検索処理を繰り返すよ
うにする。それゆえ、ケースB又はケースCの場合に
は、検索処理を一回実施する度に検索範囲が半分に絞り
込まれてゆくことになる。
【0014】そして、入力情報のIPアドレスがテーブ
ル15に登録されていない場合は、検索処理が進むこと
でいずれは先頭行番号と末尾行番号が等しくなる状況に
至る。こうした状況を検出するため、検索の度に中央行
番号レジスタ16へ中央行番号を書き込んで1回の検索
の間だけ保持するようにする。そして、中央行番号レジ
スタ16に保持された前回の中央行番号と現時点におけ
る中央行番号を照合回路17で照合し、これらが等しく
なったときに「IPアドレス未登録」をアドレス検索回
路100の外部へ出力する。
【0015】ここで、以上の検索動作を図10に示すテ
ーブル構成に沿って説明すれば以下のようになる。ここ
では中央行番号の算出方式として切り捨て方式を想定す
る。また、図10では検索対象となるテーブル15のサ
イズを2n としており、テーブル15が16行の検索ア
ドレス(つまり、nが4)を有するものとする。さら
に、入力IPアドレス値としては、テーブル15に登録
された登録IPアドレスのうち、行番号“0”のアドレ
ス値よりも大きく,且つ,行番号“1”のアドレス値よ
りも小さい場合を想定する。
【0016】なお、以下の説明からわかるように、テー
ブル15上における実際の検索範囲は、「先頭行番号〜
(末尾行番号−1)」であるため、図10ではこれに従
って各検索時点における検索範囲を図示するようにして
いる。また、各検索時点における先頭行番号レジスタ1
1及び末尾行番号レジスタ12の各内容,中央行番号,
入力IPアドレス値と登録IPアドレス値の比較結果,
検索終了チェックの結果をそれぞれ[表1]に示してお
く。
【表1】
【0017】(1)最初の検索ではテーブル15の全体
(行番号“0”〜“15”からなる2 4 行)を検索範囲
とする。そこで、中央行番号の演算方法として切り捨て
方式を採用する場合は、先頭行番号として“0”を設定
するとともに、末尾行番号には“16”(=15+1)
を設定する。そしてこれらの行番号から定まる中央行番
号に従って、前回及び今回の中央行番号の一致/不一致
とIPアドレス値の一致/不一致が調べられる。
【0018】すなわち、切り捨て方式で中央行番号を求
めるとすれば、行番号“0”〜“16”に対する中央行
番号は<(0+16)/2>=8となる。この場合、
“前回の中央行番号”は有り得ない値に初期設定されて
いるため、行番号“8”に対する行番号の比較結果は常
に不一致となる。また、入力情報のIPアドレス値は行
番号“0”〜“1”の間に存在するため、IPアドレス
の比較結果はケースBとなり、2回目の検索開始時点で
の行番号範囲は行番号“0”〜“8”となる。 (2)2回目の検索では、1回目の検索の場合と同様の
手順によって中央行番号が“4”となるため、中央行番
号“4”と前回の中央行番号“8”は不一致となる。ま
た、行番号“4”に対するIPアドレスの比較結果は1
回目の検索の場合と同様にケースBであり、3回目の検
索開始時点での行番号範囲は行番号“0”〜“4”とな
る。
【0019】(3)3回目の検索における中央行番号は
“2”となるため、行番号の比較結果はやはり不一致と
なり、また、IPアドレスの比較結果はケースBである
ために4回目の検索開始時点での行番号範囲は行番号
“0”〜“2”となる。 (4)4回目の検索の場合も全く同様であって、中央行
番号が“1”であって行番号の比較結果は不一致とな
り、IPアドレスの比較結果もケースBであって、5回
目の検索開始時点における行番号範囲は行番号“0”〜
“1”となる。
【0020】(5)5回目の検索における中央行番号は
“0”であるため行番号の比較結果は不一致となり、そ
の一方で、IPアドレスの比較結果はケースCとなる。
もっとも、この場合は先頭行番号が中央行番号“0”で
置き換えられることになるため、6回目の検索開始時点
での行番号範囲は5回目と同じになる。 (6)6回目の検索では、今回算出される中央行番号が
5回目の検索の場合と同じ“0”となるため、中央行番
号の一致が照合回路17で検出されてIPアドレス未登
録が出力される。しかもこの場合、IPアドレス値は5
回目の検索時と同様に一致しておらず、IPアドレス一
致信号が検出されることもなく検索が終了する。
【0021】
【発明が解決しようとする課題】上述した従来技術によ
るIPアドレスのアドレス検索回路は、IPパケット転
送処理装置に適用するための回路である。最近では、こ
うしたIPパケット転送処理装置のほか、LAN(Loca
l Area Network)に用いられるEthernetフレームの転送
処理装置(この場合、IPアドレスの代わりにMACア
ドレスの検索を必要とする)のパフォーマンスとして、
より高速なものが求められている。
【0022】こうしたことから、本発明者らは、「電子
情報通信学会技術報告書,IN97−28〜37,[情
報ネットワーク],坪井秀幸・藤原弘之・渡辺裕・宮尾
浩・豊島鑑・林一博,“ATM網におけるパーマネント
カットスルー転送技術を用いた高速コンピュータ通信シ
ステム”,1997年4月22日」において、IPパケ
ット/EthernetフレームをATMセルで高速に転送する
ための技術を提案している。この文献にはIPパケット
/Ethernetフレーム転送のパフォーマンスが示されてお
り、それによれば、アドレスの検索を1セル(=53バ
イト)時間内で行うときの検索処理時間としては、 1
50Mbit/s(メガビット毎秒),600Mbit/s でお
およそ 2.83μs,707ns 以下であることが要
求される。
【0023】そして、高速な転送処理装置へ適用される
アドレス検索回路としては、未登録なアドレスに対して
もこうした検索処理時間内で検索結果を出力することが
必要となってくる。しかしながら、従来のアドレス検索
回路によると、1セル通過時間内という制約の下では検
索動作が間に合わないという問題を抱えていた。もっと
も、従来のアドレス検索回路を用いて無理矢理に検索動
作を1セル通過時間内に間に合わせることも全く不可能
とは言えない。しかしながら、そうした場合は、検索行
数すなわちテーブルサイズを小さくしなければならず、
こうした制限は、IPパケット転送処理装置やEthernet
フレーム転送処理装置が扱えるIPアドレス/MACア
ドレスの総数に利用限界を生じさせることになる。
【0024】その一方で、こうしたアドレス総数の制限
を無くしてテーブルを大きくするためには、今度は検索
処理時間の間に一旦セルを蓄積する必要が生じてくる。
これを実現するには新たに蓄積バッファが必要となるた
めに、転送処理装置が複雑かつ大規模なものになってし
まうという問題が生じる。本発明は上記の点に鑑みてな
されたものであり、その目的は、構成が単純でありなが
ら、検索対象となるテーブルサイズが大きい場合であっ
ても検索時間の短いアドレス検索回路を提供することに
ある。
【0025】
【課題を解決するための手段】以上の課題を解決するた
めに、請求項1記載の発明は、通信の宛先アドレスと該
宛先アドレスへの転送処理情報を組にした行を前記宛先
アドレスの値順にソートして記憶する記憶手段を有し、
該記憶手段上の検索範囲の先頭行と末尾行から該検索範
囲の中央行を求め、受信した入力アドレスと前記中央行
に含まれる宛先アドレスとの大小関係の判定結果に応
じ、前記中央行に基づいて前記先頭行又は前記末尾行を
更新して前記検索範囲を絞り込んでゆくことで、前記入
力アドレスに一致する宛先アドレスの含まれた行を検索
するアドレス検索回路であって、前記記憶手段の各行
は、前記入力アドレスに関する検索動作の検索続行又は
検索停止を指示する検索制御情報を記憶するように構成
され、予め、前記検索範囲が最終的に一行となる行の前
記検索制御情報に検索停止を設定し、これら以外の行の
前記検索制御情報に検索続行を設定する設定手段と、
(a)前記判定結果がアドレスの一致を示すとき、前記
中央行に含まれる転送処理情報を出力して検索動作を終
了させ、(b)前記判定結果がアドレスの不一致を示
し,かつ,前記中央行における前記検索制御情報が検索
停止を示すとき、前記入力アドレスの未登録を出力して
検索動作を終了させ、(c)前記判定結果がアドレスの
不一致を示し,かつ,前記中央行における前記検索制御
情報が検索続行を示すときに、前記検索動作を続行させ
る制御手段とを具備することを特徴としている。
【0026】また、請求項2記載の発明は、請求項1記
載の発明において、前記中央行に基づいて前記先頭行を
更新する際は、前記先頭行から前記中央行までの行のう
ち前記中央行を除いた行範囲を次の検索範囲として設定
し、前記中央行に基づいて前記末尾行を更新する際は、
前記中央行から前記末尾行までの行のうち前記中央行を
除いた行範囲を次の検索範囲として設定することを特徴
としている。また、請求項3記載の発明は、請求項1又
は2記載の発明において、前記設定手段は、前記入力ア
ドレスと前記宛先アドレスの大小関係を判定する際のア
ドレスの比較対象部分を規定するマスク情報を予め前記
記憶手段の各行に設定し、前記入力アドレス及び前記中
央行に含まれる宛先アドレスのうち、該中央行に含まれ
るマスク情報で規定される部分のみを比較することで、
これらアドレスの大小関係を判定することを特徴として
いる。
【0027】また、請求項4記載の発明は、請求項1〜
3の何れかの項記載の発明において、前記記憶手段の各
行には行番号が順次付与されており、前記先頭行及び前
記末尾行の各行番号の加算平均の小数点以下を切り捨て
て得られる行番号を持つ行を前記中央行に決定すること
を特徴としている。また、請求項5記載の発明は、請求
項1〜3の何れかの項記載の発明において、前記記憶手
段の各行には行番号が順次付与されており、前記先頭行
及び前記末尾行の各行番号の加算平均の小数点以下を切
り上げて得られる行番号を持つ行を前記中央行に決定す
ることを特徴としている。
【0028】
【発明の実施の形態】以下、図面を参照して本発明の実
施形態について説明する。 [第1実施形態](請求項1,4,5に対応) 図1は、本実施形態によるアドレス検索回路の構成を示
すブロック図であって、図中、図9に示されたのと同じ
構成要素については同一の符号を付してあり、ここでは
その説明を省略するものとする。
【0029】本実施形態によるアドレス検索回路101
は、Ethernetフレーム転送処理情報を検索するための回
路であって、従来技術のようなIPアドレスではなくM
ACアドレス(現在のところ48ビット)を検索するも
のである。そして、図1及び図9の対比から分かるよう
に、従来技術において存在していた中央行番号レジスタ
16,照合回路17,AND演算回路18がなくなって
いる。そのため、本実施形態による比較器19は、入力
情報のアドレス(MACアドレス)そのものとテーブル
15から読み出される登録アドレス(MACアドレス)
を比較するようになる。
【0030】また、テーブル15は、登録された宛先の
MACアドレス,Ethernetフレームの転送処理情報,検
索停止ビットをひとまとめにして一行としており、宛先
MACアドレスを数値と見なして各行を昇順にソートし
ている。ここで、検索停止ビットは、アドレス検索回路
101における検索動作の継続又は終了を制御するため
のビットであり、その内容が“1”であれば「検索停
止」を意味する一方、その内容が“0”であれば「検索
続行」を意味する。なお、図示したように、検索停止ビ
ットと転送処理情報を別にするのではなく、検索停止ビ
ットを転送処理情報の中に含ませるようにしても良い。
【0031】また、本実施形態では、アンドゲートの一
方の入力側を反転入力端子としたゲート20が新たに追
加されている。このゲート20は、比較器19が出力す
る比較結果が入力アドレス値及び登録アドレス値の不一
致を示しており,且つ,テーブル15から読み出された
検索停止ビットが検索停止を示しているときに、アドレ
ス未登録を出力する。換言すれば、検索停止指示とアド
レス一致が同時に検出された場合は、アドレス一致が優
先して出力されて、アドレス未登録が検出されないよう
に構成されている。
【0032】さて、図2は本実施形態におけるテーブル
15の構成を示す図であって、従来技術の説明で使用し
た図10と同じく、テーブル15のテーブルサイズとし
て16行の検索アドレスを持つことを前提としている。
また、図示したように、本実施形態では検索停止ビット
がテーブルの各行に含まれており、図示しない設定回路
により以下のようにして各検索停止ビットに“1”もし
くは“0”が設定されるようになっている。
【0033】いま、テーブルの総行数を2n (この場合
はn=4)としてテーブルの各行の行番号を0〜(2n
−1) とする。そして、中央行番号の演算方式として
「切り捨て方式」を採る場合は、奇数行の検索停止ビッ
トに“1”(検索停止)を立てるとともに、偶数行の検
索停止ビットを“0”(検索続行)とする。ただし、行
番号“1”の検索停止ビットには“1”(検索停止)を
立てずに“0”(検索続行)を設定し、その代わり、行
番号“0”の検索停止ビットに“1”(検索停止)を立
てるようにする。なおこの場合も、従来技術で説明した
ように、検索開始時点における末尾行番号の行番号とし
ては実際の末尾行番号に“1”を加算するように初期設
定がなされる。
【0034】一方、中央行番号の演算方式として「切り
上げ方式」を採用する場合は、偶数行の検索停止ビット
に“1”(検索停止)を立て、奇数行の検索停止ビット
を“0”(検索続行)とする。ただし、行番号“(2n
−2)”の検索停止ビットは“1”(検索停止)を立て
ずに“0”(検索続行)を設定し、その代わり、行番号
“(2n −1)”の検索停止ビットに“1”(検索停
止)を立てるようにする。そしてこの場合も、従来技術
で説明したように、検索開始時点における先頭行番号の
行番号から“1”を減算するような初期設定がなされ
る。
【0035】次に、上記構成によるアドレス検索回路の
動作について説明する。まず、テーブル15の検索範囲
の先頭行番号,末尾行番号をそれぞれ先頭行番号レジス
タ11,末尾行番号レジスタ12に初期設定するが、そ
の際、末尾行番号の値に“1”を加算しておく。そし
て、検索を開始させるために検索開始トリガをアドレス
検索回路101へ与えると、中央行番号演算回路13
は、先頭行番号及び末尾行番号に基づいて中央行番号を
切り捨て方式で算出する。すると、変換回路14は中央
行番号に対応するテーブル15のメモリアドレスを生成
してこれをテーブル15へ供給する。これにより、テー
ブル15からは中央行番号に対応した登録情報として登
録アドレス,転送処理情報,検索停止ビットが読み出さ
れる。
【0036】そして比較器19は、入力情報のアドレス
とテーブル15から出力される登録アドレスとを比較
し、比較結果として以下の3種類のうちの何れかを判定
する。 [ケースA]:入力アドレス値=登録アドレス値 [ケースB]:入力アドレス値<登録アドレス値 [ケースC]:入力アドレス値>登録アドレス値
【0037】これら各ケースにおける動作は従来技術で
説明したのと同様である。すなわち、ケースAの場合は
テーブル15上で入力情報のアドレスが検索されたので
あるから、テーブル15から読み出された転送処理情報
と比較器19が出力するMACアドレスのアドレス一致
パルスとをアドレス検索回路101の外部へ出力して検
索を終了させる。
【0038】また、ケースBの場合は、入力情報のアド
レスが検索範囲の前半に存在するため、次回の検索のた
めに中央行番号を末尾行番号レジスタ12へ書き込む。
同様に、ケースCの場合は、入力情報のアドレスが検索
範囲の後半に存在することから、中央行番号を先頭行番
号レジスタ11に書き込む。そして、ケースB又はケー
スCの場合は、更新された末尾行番号又は先頭行番号を
用いて再び中央行番号を演算し、上記同様の検索処理を
繰り返し行ってゆく。
【0039】いま、入力情報のアドレスがテーブル15
上に存在していれば、比較器19によりいずれはケース
Aの判定結果が得られる。これに対し、入力情報のアド
レスがテーブル15に登録されていない場合は、検索動
作が進むうちに、テーブル15から検索停止ビットとし
て“1”(検索停止)が読み出されるようになる。この
とき、比較器19がアドレス一致パルスを発生すること
はなく、ゲート20の出力が“1”となって、アドレス
検索回路101の外部へアドレス未登録信号が出力され
て、検索動作も終了する。
【0040】さて、以上の検索動作を図2に示すテーブ
ル構成に沿って説明すれば以下のようになる。この場合
も、前掲した図10の場合と同様に、中央行番号の算出
方式として切り捨て方式を採用した場合を想定する。ま
た、従来技術と同じく、入力アドレス値がテーブル15
に格納された登録アドレス値のうち、行番号“0”のア
ドレス値よりも大きく,且つ,行番号“1”のアドレス
値より小さいものとする。さらに、本実施形態において
も、テーブル15上における実際の検索範囲は「先頭行
番号〜(末尾行番号−1)」であるため、図2ではこれ
に基づいて検索範囲を図示してある。
【0041】ここで、各検索における先頭行番号,末尾
行番号,中央行番号,入力アドレス値と登録アドレス値
の比較結果,検索終了チェックの結果をそれぞれ[表
2]に示しておく。
【表2】
【0042】従来技術と同様に、本実施形態の場合も、
検索に先立ってテーブル15の検索範囲に対する先頭行
番号,末尾行番号として“0”,“16”がそれぞれ先
頭行番号レジスタ11,末尾行番号レジスタ12に初期
設定される。 (1)最初の検索時点では、行番号範囲が“0”〜“1
6”であって、テーブル15の全体(行番号“0”〜
“15”)が検索範囲となる。そしてこの検索範囲から
定まる中央行番号に従って、比較器19によりMACア
ドレスの一致/不一致が調べられる。この場合は切り捨
てによって中央行番号を求めることから、行番号“0”
〜“16”に対する中央行番号は<(0+16)/2>
=8となる。そして行番号“8”の検索停止ビットは
“0”であり、当該行番号に対するアドレス値の比較結
果はケースBであるから、2回目の検索開始時点におけ
る行番号範囲は行番号“0”〜“8”となる。
【0043】(2)2回目の検索では、1回目の検索の
場合と同様に考えて中央行番号が“4”となり、この行
番号“4”に対する検索停止ビットは“0”である。さ
らに、行番号“4”に対するアドレス値の比較結果は1
回目と同様にケースBであるため、3回目の検索開始時
点での行番号範囲は行番号“0”〜“4”となる。 (3)3回目の検索における中央行番号は“2”とな
り、当該行番号の検索停止ビットは“0”であって、ま
た、アドレス値の比較結果はケースBであるから、4回
目の検索開始時点における行番号範囲は行番号“0”〜
“2”となる。 (4)4回目の検索における中央行番号は“1”とな
り、当該行番号の検索停止ビットは“0”であって、ま
た、アドレス値の比較結果はケースBであるから、5回
目の検索開始時点における行番号範囲は行番号“0”〜
“1”となる。
【0044】(5)このように、4回目の検索が終了す
るまでは従来技術と同様にして検索動作が進行するもの
の、これ以後の検索動作が従来技術の場合とは異なって
いる。すなわち、5回目の検索では中央行番号が“0”
となるが、今度は行番号“0”の検索停止ビットが
“1”(検索停止)となっている。したがって、この場
合のように、アドレス値の比較結果がケースAでない
(この場合は従来技術と同様にケースCである)と、比
較器19から出力されるアドレス一致信号は“0”であ
るため、ゲート20からアドレス未登録信号として
“1”が出力されて、検索が終了する。つまり、本実施
形態では従来技術とは違って6回目の検索は行われな
い。
【0045】以上のように、本実施形態によれば、テー
ブル15の各行に検索停止ビットを設け、当該検索停止
ビットを用いて検索終了を検出するようにしている。こ
れにより、従来必要であった中央行番号レジスタ16や
照合回路17(図9参照)などが不要となってアドレス
検索回路の構成を単純にできるほか、前回の中央行番号
と今回の中央行番号の比較が行われないため、アドレス
比較回数を減らすことができる。なお、本実施形態で
も、従来技術の場合と同様に、先頭行番号レジスタ11
へ最初に設定される先頭行番号は“0”から始まってい
ても“1”から始まっていても良い。
【0046】[第2実施形態](請求項2,4,5に対
応) 図3は、本実施形態によるEthernetフレーム転送処理情
報のアドレス検索回路の構成を示すブロック図であり、
図1に示されたのと同じ構成要素については同一の符号
を付してあり、ここではその説明を省略する。
【0047】さて、図1のアドレス検索回路101と図
3のアドレス検索回路102との構成上の相違は、中央
行番号演算回路13から出力される中央行番号に対し
て、加算回路21,減算回路22によってそれぞれ“+
1”,“−1”された行番号値が先頭行番号レジスタ1
1,末尾行番号レジスタ12の各々に与えられることで
ある。また、本実施形態では、テーブル15の検索停止
ビットは、中央行番号の算出方式が切り捨て方式か切り
上げ方式かによらず、全ての偶数行に対して“1”(検
索停止)が立てられ、全ての奇数行に対して“0”(検
索続行)が設定される。
【0048】次に、上記構成によるアドレス検索回路の
動作について説明する。なお、本発明によれば先頭行番
号と末尾行番号の加算結果は必ず“2”で割り切れるた
め、本実施形態では、中央行番号の算出方式が切り捨て
方式,切り上げ方式の何れであってもアドレス検索回路
の動作は同じになる。まず、第1実施形態と同様にして
以下の動作が行われる。すなわち、検索範囲に対する先
頭行番号,末尾行番号が先頭行番号レジスタ11,末尾
行番号レジスタ12に予め初期設定される。ただし本実
施形態では、これらレジスタの初期設定に際して、末尾
行番号(「切り上げ方式」の場合は先頭行番号)を設定
する際の“1”の減算(「切り上げ方式」の場合は加
算)処理は行われない。そして、アドレス検索回路10
2の外部から検索開始トリガが与えられると、中央行番
号演算回路13が中央行番号を算出し、この中央行番号
に対応するテーブル15のメモリアドレスを変換回路1
4が生成する。これによって、テーブル15から中央行
番号に対応する登録アドレス,転送処理情報,検索停止
ビットが読み出される。
【0049】次に比較器19は、第1実施形態と同じ
く、入力情報のアドレスとテーブル15から出力される
登録アドレスを比較して、以下の3種類のうちの何れか
の比較結果を判定する。 [ケースA]:入力アドレス値=登録アドレス値 [ケースB]:入力アドレス値<登録アドレス値 [ケースC]:入力アドレス値>登録アドレス値 そしてケースAの場合は、第1実施形態と同様に、テー
ブル15から読み出された転送処理情報と比較器19が
出力するMACアドレスのアドレス一致パルス信号とを
アドレス検索回路102の外部へ出力し、検索を終了さ
せる。
【0050】これに対し、ケースA以外の場合の処理は
第1実施形態の場合と異なるものになる。すなわち、ケ
ースBの場合(つまり、入力情報のアドレスが検索範囲
の前半に存在する場合)は、中央行番号演算回路13が
出力する中央行番号の値を減算回路22で“1”だけ減
じてからこれを末尾行番号レジスタ12に書き込み、新
たな中央行番号を演算して上述したのと同様の検索処理
を繰り返し行うことになる。一方、ケースCの場合(つ
まり、入力情報のアドレスが検索範囲の後半に存在する
場合)は、中央行番号演算回路13が出力する中央行番
号の値を加算回路21で“1”だけ増加させてから先頭
行番号レジスタ11に書き込み、新たな中央行番号を演
算して上述したのと同様の検索処理を繰り返すこととな
る。
【0051】つまり、本実施形態では、次回の検索のた
めの検索範囲を決定するにあたって、既に入力情報のア
ドレスとの不一致が判明している現時点の中央行番号を
検索範囲から除外するようにしている。換言すれば、ケ
ースBの場合の次回の検索範囲は先頭行〜中央行の一行
手前となり、ケースCの場合の次回の検索範囲は中央行
の一行後ろ〜末尾行となる。他方、入力情報のアドレス
がテーブル15に登録されていない場合は、第1実施形
態と同様である。すなわち、検索動作が進むうちにテー
ブル15から検索停止ビットとして“1”(検索停止)
が読み出されるため、ゲート20からアドレス未登録信
号が出力され、検索動作も終了する。
【0052】さて、以上の検索動作を図4に示すテーブ
ル構成に沿って説明すれば以下のようになる。この場合
も、テーブル15のサイズは2n であって16行の検索
アドレスを有しているが、行番号“15”は未使用とし
てあり、検索開始時点における検索範囲の行数は(2n
−1) である。また、第1実施形態と同様、入力アド
レス値は、テーブル15に格納された登録アドレス値の
うち、行番号“0”のアドレス値よりも大きく,且つ,
行番号“1”のアドレス値より小さいものとする。
【0053】ここで、[表3]に、本実施形態の検索動
作における先頭行番号,末尾行番号,中央行番号,入力
アドレス値と登録アドレス値の比較結果,検索終了チェ
ックの結果を示しておく。
【表3】
【0054】また、図5は本実施形態の検索動作に沿っ
たテーブル15の基本構造を示した図である。すなわ
ち、上述した中央行番号に対応する行が同図の“アドレ
ス照合行A”に相当する。また図中、アドレス照合行A
より上側に位置する行の集合Bが、アドレス照合行Aよ
りもアドレス値が小さい行の集合であって、これは上述
したケースBの判定結果に対応する。同様に、図中にお
いてアドレス照合行Aより下側に位置する行の集合C
が、アドレス照合行Aよりもアドレス値が大きい行の集
合であって、これは上述したケースCの判定結果に対応
する。以上から、アドレス照合行Aの行数は常に1行で
あり、また、行の集合B,Cの行数は何れも同一ではあ
るが、それぞれの行数は検索範囲の大きさによって、
0,1,2,…,2n-1−1 の何れかをとることにな
る。
【0055】一方、図6は本実施形態による検索動作に
対応したテーブル15の検索ツリーの具体例を示したも
のであって、図中の左側から右側に向かって検索処理が
進行してゆくことを表している。ここで、ツリーに存在
する枝分かれは3方向に分岐しているが、この枝分かれ
のうち、水平方向に分岐するものが図5におけるアドレ
ス照合行Aに対応する。また、枝分かれにおける上下各
々の分岐はそれぞれ図5における行の集合B,Cに対応
するもので、入力アドレス値とアドレス照合行Aの登録
アドレス値との大小関係に応じて、上下何れかの分岐部
分の右側に接続されたサブツリー(部分木)が新たな検
索範囲となる。
【0056】さて、以下、図4に沿って説明するが、本
実施形態では第1実施形態と違って、先頭行番号〜末尾
行番号が検索範囲に一致している。 (1)最初の検索時点では、テーブル15のうち最終行
を除く全ての行(行番号“0”〜“14”)を検索範囲
とする。そしてこの検索範囲から定まる中央行番号に従
って、比較器19によりMACアドレスの一致/不一致
が調べられる。この場合は、切り捨てによって中央行番
号を求めるので、行番号“0”〜“14”の範囲に対す
る中央行番号は<(0+14)/2>=7となる。この
行番号“7”の検索停止ビットは“0”であるため、以
後も検索が続行される。そして行番号“7”に対するア
ドレス値の比較結果はケースBとなるため、中央行番号
の値を“−1”した値が末尾行番号に設定されることに
なり、2回目の検索開始時点における行番号範囲は行番
号“0”〜“6”となる。
【0057】(2)2回目の検索では中央行番号が
“3”となり、この行番号“3”に対する検索停止ビッ
トは“0”である。また、行番号“3”に対するアドレ
ス値の比較結果は1回目の検索のときと同様にケースB
であるため、末尾行番号だけが更新されて、3回目の検
索開始時点における行番号範囲は行番号“0”〜“2”
となる。 (3)3回目の検索における中央行番号は“1”とな
り、この行番号“1”に対する検索停止ビットは“0”
である。そしてアドレス値の比較結果はやはりケースB
であるため、2回目の検索のときと同様に末尾行番号だ
けが更新されて、4回目の検索開始時点における行番号
範囲は行番号“0”〜“0”となる。
【0058】(4)4回目の検索では中央行番号が
“0”となる。したがって、今度は行番号“0”に対す
る検索停止ビットが“1”(検索停止)であるから、こ
の場合のように、アドレス値の比較結果がケースA以外
(この場合はケースC)であれば、第1実施形態と同様
に、比較器19からアドレス一致パルスは出力されず、
ゲート20からアドレス未登録信号が出力されて検索動
作が終了する。
【0059】以上のように、本実施形態によれば、加算
回路21と減算回路22を設けて、既に検索された中央
行を次回の検索範囲から除外するようにしている。これ
により、第1実施形態に比して、検索動作に必要となる
アドレス比較回数を少なくすることができる。なお、本
実施形態においても、従来技術や第1実施形態の場合と
同様に、先頭行番号レジスタ11へ最初に設定される先
頭行番号は“0”から始まっていても“1”から始まっ
ていても良い。
【0060】[第3実施形態](請求項3に対応) 図7及び図8は、本実施形態によるアドレス検索回路1
03,104の構成を示すものであって、それぞれが第
1実施形態(図1)及び第2実施形態(図3)に対応し
ている。これらのアドレス検索回路が第1実施形態又は
第2実施形態と異なるのは、Ethernetフレームの代わり
にIPパケットを扱っている点にあり、従来技術におけ
るのと同様に、MACアドレスではなくIPアドレスを
用いて検索が行われる。それゆえ、図9の場合と同じ
く、テーブル15にはサブネットマスクがさらに記憶さ
れており、このサブネットマスクを用いて、AND演算
回路18により入力情報のIPアドレスにビット毎にマ
スクをかけて入力アドレス値を求める処理が施される。
そして、この処理以外は上記第1実施形態又は第2実
【0061】なお、上記各実施形態では、テーブル15
の各行をMACアドレス又はIPアドレスの昇順にソー
トしているが、これを降順にソートするようにしても良
いのはもちろんである。
【0062】
【発明の効果】以上説明したように、本発明によれば、
検索動作の続行又は停止を指示する検索制御情報を記憶
手段の各行に設ける構成とし、検索範囲が最終的に一行
となる行か否かに応じて各行の検索制御情報を設定して
おく。そして、入力アドレスと中央行の宛先アドレスが
一致していれば中央行の転送処理情報を出力して検索動
作を終了させ、また、これらアドレスが不一致の場合
で、中央行の検索制御情報が検索停止であれば入力アド
レスの未登録を出力して検索動作を終了させる一方、当
該検索制御情報が検索続行であれば引き続き検索を行う
ようにしている。
【0063】これにより、従来のように前回の中央行番
号と今回の中央行番号とを照合する必要がなくなるた
め、照合処理に必要な回路が不要となって、アドレス検
索回路の構成をより単純化することができる。また、検
索範囲が一行となった時点で検索動作が終了するため、
従来に比べてアドレス比較回数を減らすことができる。
また、本発明の構成によれば、アドレス検索回路をハー
ドウェア回路で実現可能なため、MACアドレスといっ
た入力アドレスをキーとして、Ethernetフレーム等の転
送処理情報を従来よりも高速に検索することができる。
そのため、高速に入力される大量のEthernetフレーム等
を宛先につながる方路へ遅滞なく出力することができ
る。
【0064】また、請求項2記載の発明によれば、先頭
行又は末尾行を更新する際に、中央行を除いた行範囲を
次の検索範囲として設定するようにしている。これによ
り、既に検索された中央行が次回の検索範囲から除外さ
れるため、アドレス比較回数をさらに減らすことがで
き、より高速に検索動作を行うことができる。また、請
求項3記載の発明によれば、入力アドレスと宛先アドレ
スの大小関係を判定する際の比較対象部分を規定するマ
スク情報を記憶手段の各行に設定しておき、当該マスク
情報で規定される部分のみの比較によってこれらアドレ
スの大小関係を判定するようにしている。これにより、
IPアドレスのようにホストアドレス部分の比較が不要
な場合であっても、検索対象の入力アドレスを何ら加工
することなくそのままアドレス検索回路へ与えることが
できる。
【図面の簡単な説明】
【図1】 本発明の第1実施形態によるアドレス検索回
路の構成を示すブロック図である。
【図2】 同実施形態で行われる検索処理のテーブル1
5上における検索範囲と中央行を示す説明図である。
【図3】 本発明の第2実施形態によるアドレス検索回
路の構成を示すブロック図である。
【図4】 同実施形態で行われる検索処理のテーブル1
5上における検索範囲と中央行を示す説明図である。
【図5】 同実施形態における検索動作に対応したテー
ブル15の基本構造を示す説明図である。
【図6】 同実施形態における検索動作に対応したテー
ブル15の検索ツリーの具体例を示す説明図である。
【図7】 本発明の第3実施形態によるアドレス検索回
路のうち、図1に示す第1実施形態の構成を変形した場
合の回路構成を示すブロック図である。
【図8】 本発明の第3実施形態によるアドレス検索回
路のうち、図3に示す第2実施形態の構成を変形した場
合の回路構成を示すブロック図である。
【図9】 従来の技術によるアドレス検索回路の構成を
示すブロック図である。
【図10】 従来の技術で行われる検索処理のテーブル
15上における検索範囲と中央行を示す説明図である。
【符号の説明】
11 先頭行番号レジスタ 12 末尾行番号レジスタ 13 中央行番号演算回路 14 変換回路 15 テーブル 18 AND演算回路 19 比較器 20 ゲート 21 加算回路 22 減算回路 101〜104 アドレス検索回路

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 通信の宛先アドレスと該宛先アドレスへ
    の転送処理情報を組にした行を前記宛先アドレスの値順
    にソートして記憶する記憶手段を有し、 該記憶手段上の検索範囲の先頭行と末尾行から該検索範
    囲の中央行を求め、受信した入力アドレスと前記中央行
    に含まれる宛先アドレスとの大小関係の判定結果に応
    じ、前記中央行に基づいて前記先頭行又は前記末尾行を
    更新して前記検索範囲を絞り込んでゆくことで、前記入
    力アドレスに一致する宛先アドレスの含まれた行を検索
    するアドレス検索回路であって、 前記記憶手段の各行は、前記入力アドレスに関する検索
    動作の検索続行又は検索停止を指示する検索制御情報を
    記憶するように構成され、 予め、前記検索範囲が最終的に一行となる行の前記検索
    制御情報に検索停止を設定し、これら以外の行の前記検
    索制御情報に検索続行を設定する設定手段と、(a)前
    記判定結果がアドレスの一致を示すとき、前記中央行に
    含まれる転送処理情報を出力して検索動作を終了させ、
    (b)前記判定結果がアドレスの不一致を示し,かつ,
    前記中央行における前記検索制御情報が検索停止を示す
    とき、前記入力アドレスの未登録を出力して検索動作を
    終了させ、(c)前記判定結果がアドレスの不一致を示
    し,かつ,前記中央行における前記検索制御情報が検索
    続行を示すときに、前記検索動作を続行させる制御手段
    とを具備することを特徴とするアドレス検索回路。
  2. 【請求項2】 前記中央行に基づいて前記先頭行を更新
    する際は、前記先頭行から前記中央行までの行のうち前
    記中央行を除いた行範囲を次の検索範囲として設定し、
    前記中央行に基づいて前記末尾行を更新する際は、前記
    中央行から前記末尾行までの行のうち前記中央行を除い
    た行範囲を次の検索範囲として設定することを特徴とす
    る請求項1記載のアドレス検索回路。
  3. 【請求項3】 前記設定手段は、前記入力アドレスと前
    記宛先アドレスの大小関係を判定する際のアドレスの比
    較対象部分を規定するマスク情報を予め前記記憶手段の
    各行に設定し、 前記入力アドレス及び前記中央行に含まれる宛先アドレ
    スのうち、該中央行に含まれるマスク情報で規定される
    部分のみを比較することで、これらアドレスの大小関係
    を判定することを特徴とする請求項1又は2記載のアド
    レス検索回路。
  4. 【請求項4】 前記記憶手段の各行には行番号が順次付
    与されており、 前記先頭行及び前記末尾行の各行番号の加算平均の小数
    点以下を切り捨てて得られる行番号を持つ行を前記中央
    行に決定することを特徴とする請求項1〜3の何れかの
    項記載のアドレス検索回路。
  5. 【請求項5】 前記記憶手段の各行には行番号が順次付
    与されており、 前記先頭行及び前記末尾行の各行番号の加算平均の小数
    点以下を切り上げて得られる行番号を持つ行を前記中央
    行に決定することを特徴とする請求項1〜3の何れかの
    項記載のアドレス検索回路。
JP9303170A 1997-11-05 1997-11-05 アドレス検索回路 Pending JPH11143888A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9303170A JPH11143888A (ja) 1997-11-05 1997-11-05 アドレス検索回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9303170A JPH11143888A (ja) 1997-11-05 1997-11-05 アドレス検索回路

Publications (1)

Publication Number Publication Date
JPH11143888A true JPH11143888A (ja) 1999-05-28

Family

ID=17917740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9303170A Pending JPH11143888A (ja) 1997-11-05 1997-11-05 アドレス検索回路

Country Status (1)

Country Link
JP (1) JPH11143888A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001167125A (ja) * 1999-12-13 2001-06-22 Mitsubishi Electric Corp 2分検索装置及び2分検索方法
JP2002124972A (ja) * 2000-10-16 2002-04-26 Murata Mach Ltd ファクシミリサーバ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001167125A (ja) * 1999-12-13 2001-06-22 Mitsubishi Electric Corp 2分検索装置及び2分検索方法
JP2002124972A (ja) * 2000-10-16 2002-04-26 Murata Mach Ltd ファクシミリサーバ

Similar Documents

Publication Publication Date Title
US6453358B1 (en) Network switching device with concurrent key lookups
US7023807B2 (en) Network switching device with pipelined search engines
US5920886A (en) Accelerated hierarchical address filtering and translation using binary and ternary CAMs
US7130847B2 (en) Prefix search method
US20020059197A1 (en) Longest best match search
US20050171937A1 (en) Memory efficient hashing algorithm
US20030026259A1 (en) Method and apparatus for a four-way hash table
US20030103499A1 (en) Configurable packet processor
EP0746823B1 (en) Bit mapping apparatus and method
JPH07143180A (ja) Cladにおけるアドレス学習装置
JPH10257084A (ja) コンピュータ・ネットワーク内でデータ・フレームを経路指定するフレーム・ヘッダを解析する方法およびシステム
US6570866B1 (en) High-speed flexible longest match retrieval
US6201755B1 (en) Method and system for storing and retrieving information in a communications node
US5146560A (en) Apparatus for processing bit streams
JPH10257066A (ja) ネットワークアドレス検索方式
US6421660B1 (en) Enhanced searching method and apparatus for variable bit chains
US8018935B2 (en) Address search
JPH11143888A (ja) アドレス検索回路
EP0520116A1 (en) Method and apparatus for performing pattern search functions
JP3558151B2 (ja) データ検索回路
JP3573319B2 (ja) Ipパケット転送処理装置における高速検索回路およびipパケット転送処理装置
JPH0514458B2 (ja)
US7757006B2 (en) Implementing conditional packet alterations based on transmit port
KR100460188B1 (ko) 인터넷 프로토콜 주소 룩-업 방법
CA1312957C (en) Apparatus for processing bit streams

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040511