[go: up one dir, main page]

JPH0897844A - データ通路の設定方法及び装置 - Google Patents

データ通路の設定方法及び装置

Info

Publication number
JPH0897844A
JPH0897844A JP7213572A JP21357295A JPH0897844A JP H0897844 A JPH0897844 A JP H0897844A JP 7213572 A JP7213572 A JP 7213572A JP 21357295 A JP21357295 A JP 21357295A JP H0897844 A JPH0897844 A JP H0897844A
Authority
JP
Japan
Prior art keywords
address
data
data processing
addresses
search
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
JP7213572A
Other languages
English (en)
Inventor
Marco Jose Geraldo Bueno De
ジョセ・ゲラルド・ブエノ・デ・マルコ
Jeffrey Wayne Kidd
ジェフリー・ウエイン・キッド
Edward Hau-Chun Ku
エドワード・ハウ・チュン・ク
Karen Park Heron
カレン・パーク・ヘロン
Simin Hosne Sanaye
シミン・ホスネ・サナイェ
Sousa Silva Luis Filipe De
ルイス・フィリィペ・デ・ソウサ・シルバ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0897844A publication Critical patent/JPH0897844A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【目的】 ローカル・エリア・ネットワーク(LAN)
のようなネットワーク・システム100中のデータ通路
を効率よく設定する装置及び方法を与えること。 【構成】 アドレスをストアするために、ルータ102
によって用いられる検索トリーが設けられる。ルータに
よって用いられる検索トリーは、受け取ったデータの1
つまたはそれ以上のフレームがネットワーク・システム
100の中のどのデータ処理装置108、110、..
128に伝送されるべきかを、より効率的に、より迅速
に決定するのに用いられる。また、検索トリーを設ける
ことにより、新しいアドレスをサーチ・トリーに付加し
たり、あるいは古いアドレスをサーチ・トリーから削除
することができる。検索トリーは、アドレスをビット・
グループに区画することによって更新される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ処理システム、
より詳細に言えば、データ処理装置のネットワーク内の
データ通路を設定するためのシステム及び方法に関す
る。
【0002】
【従来の技術】ネットワークは、通信システムによって
接続されているコンピュータ及び関連機器のグループで
ある。ネットワークは、幾つかのコンピュータ、プリン
タ及びその他の装置で構成されたローカル・エリア・ネ
ットワーク(「LAN」)よりも小規模のものであって
もよく、あるいは、広大な地域にまたがって分散された
多くの小型コンピュータ及び大型コンピュータで構成さ
れたネットワークであってもよい。コンピュータが小型
であれ、あるいは大型であれ、コンピュータ・ネットワ
ークは、情報を電気的に通信し伝送する手段をコンピュ
ータ・ユーザに提供するための手段である。
【0003】ルータ(データ通路設定装置)即ちブリッ
ジは、メッセージの伝送を容易にするため通信ネットワ
ーク中で中間的に媒介する装置である。あり得る接続経
路を介して多くのコンピュータを接続する単一のネット
ワークにおいて、ルータは伝送されたメッセージを受け
取り、そして、最も効率的な利用可能ルートを通して、
受け取ったメッセージを正しい宛先装置に伝送する。同
じ通信プロトコルを用いた相互接続された一組のLAN
において、ルータは、一方のLANから他方のLANへ
メッセージを送信するLAN間のリンクとして動作する
ような通常のリンクとは若干異なった機能を遂行する。
【0004】ネットワーク中の多くのそして種々のコン
ピュータ及びその他の装置は、ルータのポート(計算装
置へのデータ及び計算装置からのデータが通過する位
置)を介してルータに結合されている。ネットワーク内
の第1の装置から第2の装置へ送られた通信情報をルー
タが受け取った時、ルータは、その通信情報により与え
られた宛先アドレス(第2の装置のアドレス)と、ルー
タ内のどのポートが第2の装置に関連しているかを表示
しストアされたアドレス・リストとを比較する。次に、
ルータは、第2の装置に結合された該当するポートにそ
の通信情報を転送する。
【0005】従来のルータは、前以って与えられている
アドレス/ポートのリストが与えられているか、または
このようなアドレス/ポートのリストを動的な態様で作
成する。このようなリストは、ルータの中にストアさ
れ、そしてルータに接続された装置から通信を受け取っ
た時にアクセスされる。従って、ルータは、アドレスの
比較処理においてマッチ(合致)した比較結果が得られ
るまで、このリスト中の各項目と、通信の宛先アドレス
とを比較する。通常、リストを照合する各新しい検索
は、リストの「最も上にある行」で開始し、マッチした
比較結果が得られるまで、リスト中のアドレスを通して
順次に進行する。このような構成によって、リスト中に
N個のアドレスがある場合、マッチした比較結果が得ら
れるまで、比較動作をN回まで行なわなければならない
可能性がある。若しNが非常に大きな数であれば、ネッ
トワーク内の通信速度はルータによって可成り低下され
ることになる。
【0006】従って、ネットワーク内のルータを通るメ
ッセージの通路を設定するためのより効率的で、より高
速な処理を行なう技術が必要である。
【0007】
【発明が解決しようとする課題】本発明の目的は、ネッ
トワーク内のブリッジ、即ちルータを通るデータの通路
を効率良く設定することにある。
【0008】
【課題を解決するための手段】上述の目的を達成するた
めに、ネットワーク内の装置の宛先アドレス/宛先ポー
トをストアし比較するために使用する新規な検索トリー
技術が用いられる。
【0009】アドレス・フィールドのデータは、受信し
たデータ・フレームをネットワーク中に転送するか否か
を決定するのに用いられる。高速度でディジタル・パタ
ーンを比較する本発明の良好な実施例の処理技術は、L
AN内のブリッジ、即ちルータのサブシステムの環境に
おいて、アドレスを認識するための理想的な検索トリー
の中に編成されストアされたディジタル・パターンと、
ディジタル・パターンのデータベースとを比較する技術
である。本発明のディジタル・パターンの比較技術はテ
スト・インストラクションをストアするためのメモリを
使用する。各テスト・インストラクションは、テスト・
コマンドとメモリ位置を指示するポインタとを持ってい
る。テスト・コマンドは検査されるべきアドレス・ビッ
トに対応している。メモリ位置を指示するポインタは、
次のテスト動作のためのテスト・インストラクションを
ストアしているメモリ・ブロックを指示する。テスト・
インストラクションは、検索トリーを作成するための学
習モードにおいて、リンクされる。学習モードの間で検
索トリーを作成するために、これらのビット・グループ
の間で比較され相異しているビット・パターンのビット
・グループだけが使用される。
【0010】受け取ったアドレスのテスト・パターンの
ビット構成に従って、テスト・パターンのマッチ処理は
特定のテスト(検索)トリーにおいて開始される。学習
モードにおいて、事前にストアされたテスト・インスト
ラクションは、テスト・トリーの経路を決定する。検索
動作の終点において、テスト・パターンは、参照されず
に検索トリーの終端のノード上にマップされて終了され
るか、または、参照パターン(ストアされたアドレス/
ポートのリスト)に突き当って終了されるかのいずれか
である。メッセージのアドレスと、ストアされたアドレ
スとの間で完全にマッチするか否かのテストが行なわれ
る。メッセージのアドレスと、ストアされたアドレス・
パターンとが完全にマッチしたときにだけ、完全マッチ
が検出される。
【0011】学習モードにおいて、新しいアドレス・ビ
ット・パターンが、現存するアドレス・ビット・パター
ンに突き当るか、または、参照されずに検索トリーの終
端ノード上にマップされるかの何れかの場合、検索トリ
ーは拡大される。古いアドレス参照パターンと新しいア
ドレス・ビット・パターンとの間を分離するために、検
索インストラクションが検索トリーに加えられる。検索
トリーが拡大を必要とする時、その検索トリーはトリー
・ノードの終端から延長する。
【0012】アドレスの参照パターンを削除する時、削
除するアドレス・パターンと関連した検索トリーが検査
され、そして、不必要なテスト・エントリ及びテスト・
ブロックはすべて除去される。検索トリーは、不必要な
テスト・ブロックを空にするために再リンクされ、そし
て、メモリ中の除去されたテスト・ブロックは後日使用
できるように保存される。
【0013】
【実施例】本発明の理解を容易にするために、特別なワ
ードや、バイト長などについての特定の細部について以
下に説明を行なう。然しながら、そのような特定の細部
を持たなくとも本発明を容易に実施できるのは当業者に
は自明である。また、不必要な細部の説明によって本発
明の開示が不明瞭になるのを避けるために、本発明を実
施するために必要な公知の回路はブロック図で示されて
いる。タイミングなどに関する細部は、本発明を理解す
るために詳細に説明する必要はなく、当業者であれば容
易に理解できる。
【0014】図1に示された各素子の寸法は正確な縮尺
で示していない。図1は、サーバ101と、データ処理
装置108、110、112、114、116、11
8、120、122、124、126及び128とがル
ータ102を介して相互接続されている代表的なネット
ワーク・システム100を示す図である。各データ処理
装置、あるいはサーバ101はネットワーク・システム
100内の任意の他のデータ処理装置と通信するように
意図されているので、ルータ102は、該当する宛先装
置に対して通信されたデータを、宛先装置のポートに実
質的に結合し、効率的に伝送することによってそのよう
な通信を容易にする。例えば、若しデータ処理装置11
4がデータ処理装置128へのデータ伝送を求めたなら
ば、データ処理装置114は、データ処理装置128に
関連した「宛先アドレス」と共にそのデータをルータ1
02に転送し、そしてそのルータ102は、データ処理
装置114からのデータと共に受け取った「宛先アドレ
ス」と、ルータ102のメモリ中のアドレス/ポートの
アドレス・リストとを比較し、次に、受け取った「宛先
アドレス」と、そのメモリ中にリストされたアドレス/
ポートの対の1つとの間のマッチが得られた時に、受け
取ったデータをデータ処理装置128に伝送するデータ
通路を設定する。
【0015】次に、図2を参照すると、ルータ102中
で実行され、ルータ102中のメモリ装置において上述
のアドレス・ポートのリストを形成するための処理の流
れ図が示されている。ルータ102は、ネットワーク・
システム100内のデータ処理装置から1つ以上のデー
タ・フレームの通信を受け取った後(ステップ20)、
データと共に転送され、かつ、送信装置に関連された
「ソース・アドレス」を、そのルータが記録するステッ
プ21に進む。例えば、若しルータ102がデータ処理
装置112から1つまたはそれ以上のデータ・フレーム
を受け取ったならば、ルータ102はデータ処理装置1
12に関連付けられた「ソース・アドレス(発信元アド
レス)」を記録する。その後、ステップ22において、
ルータ102は、データ処理装置112が接続されるル
ータ102中の特定のポートと、データ処理装置112
の「ソース・アドレス」とを関連付ける。1台以上のデ
ータ処理装置、または別個の他のネットワーク全体をル
ータ102の中の任意の1つのポートに接続することが
できる。更に、ルータ102の中のポートは、時分割多
重化技術及び他の公知のソフトウエア技術のような公知
の方法によって区分することができる。
【0016】ステップ22の処理結果として、ルータ1
02は、ルータ中のメモリ中に最終的にアドレス・テー
ブルを作成し、このアドレス・テーブルによって、ネッ
トワーク・システム100中の複数のデータ処理装置が
ルータ102の中のポートに関連付けられる。
【0017】図3を参照すると、ネットワーク・システ
ム100において、データ・フレームの通路を設定する
処理の流れ図が示されている。ステップ30において、
ルータ102は、ネットワーク・システム100内の複
数のデータ処理装置の中の1つの装置から1つ以上のデ
ータ・フレームを受け取る。ステップ20及びステップ
30は同じ処理を含むことと、図2及び図3に示された
処理は、ルータ102の中で同時に進行することには注
意を向けられたい。
【0018】次に、ステップ31において、ルータ10
2は1つ以上のデータ・フレームと共に伝送された「宛
先アドレス」と、ルータ102によって作成されたアド
レス・テーブル(図2を参照)とを比較する。ステップ
32において、ルータ102のアドレス・テーブルの中
の「宛先アドレス」が、「宛先アドレス」及び1つ以上
のデータ・フレームを受け取ったポートに関連付けられ
ているか否かを、ルータ102が決定する。若し関連付
けられているならば、それらのデータ・フレームに関す
るデータ通路を設定する必要はない。何故ならば、この
データ通路は、そのデータ・フレームが伝送された装置
と同じ装置に関連しているからである。従って、ステッ
プ33において、ルータ102は受け取られたデータ・
フレームを無視する。例えば、若しルータ102がサー
バ101からデータ・フレームを受け取り、そして、受
け取られたデータ・フレームと共に伝送された「宛先ア
ドレス」がサーバ101に割り当てられたルータのポー
トに関連していると決定されたならば、サーバ101は
データ・フレームを既に所有しているから、ルータ10
2はそのデータ・フレームを無視する。
【0019】然しながら、若し「宛先アドレス」がその
データ・フレームを受け取ったポートと同じポートに関
連されていなければ、ステップ34において、ルータ1
02は、「宛先」アドレスがアドレス・テーブル中の他
のポートに関連されているか否かを決定する。若し関連
されていれば、ステップ35において、ルータ102
は、受け取られたデータ・フレームを他のポートへ差し
向ける。例えば、若しデータ処理装置108からのデー
タ・フレームと共に伝送された「宛先アドレス」がデー
タ処理装置124に関連したポートに関連されていると
決定されたならば、ルータ102は、装置124に関連
したポートを通して、受け取られたデータ・フレームを
装置124に伝送する。
【0020】若し「宛先アドレス」が他のポートに関連
されていなければ、ステップ36に示されているよう
に、ルータ102は受け取られたデータ・フレームを、
すべてのポートに対して同報通信する。
【0021】既に述べたように、アドレス・テーブル
は、通常、ルータのポートに関連され、かつ、順序付け
られたアドレスのリストとして作成されている。そのよ
うな従来のアドレス・リストにおいて、若しルータ10
2がステップ32及びステップ34の処理を遂行したな
らば、受け取られた「宛先アドレス」は、比較検索処理
がアドレスのマッチを検出するまで、アドレス・テーブ
ル中のすべてのアドレスと比較される。若しネットワー
ク・システム100内のデータ処理装置の数が非常に大
きければ、上述の比較検索処理は可成り長い動作時間を
必要とする。このような検索方法に関連した最悪の事態
として、アドレス・テーブル中の最後の項目のマッチが
検出されるまで、マッチ結果が検出できない場合とか、
あるいは、受け取られたデータ・フレームの同報通信
(ステップ36)の結果として、所望のマッチが存在し
ないことを検出できない場合がある。
【0022】本発明の良好な実施例はルータ102の中
にストアされたアドレス・テーブルを検索するための、
より効率的で、より高速度の検索技術を与える。
【0023】本発明は、アドレス・ビットを複数個のビ
ット・グループに区分し、かつ、これらのビット・グル
ープ(区画部分)を含む検索トリーを作成し、そして、
1つまたはそれ以上の検索トリー中にアドレス/ポート
をストアすることによって、より効率的なアドレス検索
技術を与えるものである。従って、本発明の検索処理
は、受け取ったアドレスを複数個のビット・グループに
区分し、そして、これらのビット・グループと検索トリ
ーのノードとを順番に比較することによって遂行され
る。検索処理を通して、若し受け取られたアドレスとト
リー中の入力との間の完全マッチを得ることなく、検索
トリーの終端に到達したならば、受け取られたアドレス
が「ソース・アドレス」である場合に限って検索トリー
は「ソース・アドレス」中のビットを用いて延長され
る。本明細書において、これは、「学習」処理、または
「エントリ更新」処理と言う。若し受け取られたアドレ
スが「宛先アドレス」であり、かつ完全マッチを得るこ
となく検索トリーの終端に到着したならば、アドレス・
テーブルにおいて、「宛先アドレス」のための完全マッ
チが無いことを決定し、そして「宛先アドレス」に関連
したフレーム・データの同報通信(ステップ36)が行
なわれる。
【0024】また、後述されるように、検索トリー中の
アドレスの削除が行なわれる。
【0025】学習モードの間において、ルータ102の
中のアドレス・テーブルは、「ソース・アドレス」と、
受け取ったデータ・フレームの記号と、受け取ったポー
ト識別番号とを用いて更新される。ルータ102がデー
タ・フレームを受け取った時、ルータ102は、アドレ
ス・テーブル中の検索トリーのエントリと、受け取った
データ・フレームの「宛先アドレス」とを比較する。
【0026】データの送り先を表示する「宛先アドレ
ス」と、データの発信元を表示する「ソース・アドレ
ス」とが、各入力データ・フレームに関連付けられてい
る。すべての入力データ・フレームのために、「宛先ア
ドレス」及び「ソース・アドレス」は、本発明の伝送処
理の間で、アドレス・テーブルのエントリに対して処理
される。以下の説明において、ネットワーク・システム
100のネットワーク・アドレスは6バイトで構成され
ているものとする。更に、本発明の実施例を説明するだ
けの目的で、ネットワーク・システム100のアドレス
・テーブルは最大8192個の参照アドレスをサポート
するものとする。
【0027】本明細書において、「宛先アドレス」及び
「ソース・アドレス」のビット・パターンはテスト・パ
ターンと呼ばれる。テスト・パターンと言う用語を用い
ることによって、受け取られたアドレスが検索トリーの
中にストアされたビット・パターン(アドレス)に対し
てテスト(比較)されることが容易に理解できる。テス
ト・パターンは、予め決められたテスト・ビット・グル
ープに区分される。各テスト・ビット・グループは、テ
スト・マスクと関連されている。テスト・マスクは番号
が付されている。テスト・ビット・グループは1ビット
でもよいし、複数ビットでもよい。テスト・マスクは、
テスト処理の間のマッチ動作を行なうために、検査され
るべきテスト・パターンのビットを識別する。図4は本
発明の良好な実施例に従ったテスト・マスクを示す図で
ある。このマスクは、6バイトで構成されたネットワー
ク・アドレスの上述の規定と関係した48ビットのビッ
ト長を持っている。以下に説明されるように、最初の1
2ビットは遂行される最初のテストのためにマスクされ
るが、残りの36ビットはマッチ処理において遂行され
る後続テストのためのテスト・グループに分けられる。
本発明の実施例において、後続のテスト・グループは夫
々2ビットで構成されているが、他のビット長のテスト
・グループにすることもできる。
【0028】次に、図5を参照すると、最初のテスト・
ブロック(「FTB」)及び36ビット/2ビット=1
8個のテスト・グループ(「TG」)が識別されるテス
ト・パターン(「TP」)の実施例が示されている。
【0029】本発明に従ったルータ102の中で用いら
れるメモリは3つの部分に分割される。第1の部分は、
検索トリーを通して検索を開始するためのテスト・イン
ストラクションをストアする幾つかのFTBをストアし
ている。マッチ処理の速度を向上するために、FTB
は、各TGよりも大きなテスト・ブロック(テスト・ビ
ットを含むビット・グループ)であるのが好ましい。上
述の実施例において、12ビットで構成された各FTB
には4096個のエントリがある。
【0030】ルータ102のメモリの第2の部分は、F
TBの検索処理が終了した後に開始する検索処理を続行
するテスト・インストラクションをストアする次のテス
ト・ブロック(「NTB」)をストアしている。NTB
のメモリ要件は下記の通りである。 (1) 記録される参照パターンの最大数をMとする。 (2) M個の参照アドレスを区分するために、(M−
1)個のNTBブロックを必要とする。 (3) 各テスト・ブロックのビット数をjとする(T
G=2ビット、あるいは3ビット、等々)。 (4) NTBに必要な最大エントリ数は、2xEXP
(j)である。 (5) テスト・インストラクションのデータ長は(I
nte(log2(TGの数+2))+Inte(lo
g2(M−1))である。ここで、Inte(x)は整
数xに等しいか、あるいはxよりも大きい整数である。
【0031】図示の実施例においては、合計(8192
−1)個のNTBブロックが必要である。各NTBブロ
ックは、(00、01、10、11)の上述の実施例に
おいて規定されている2ビットのテスト・グループとマ
ッチするために4個のエントリを持っている。本明細書
において、上述のエントリ(00、01、10、11)
は(c1、c2、c3、c4)と記載される。
【0032】また、各テスト・グループ中のビット数
は、マッチ処理における最悪の場合のタイミングを決定
する。例えば、FTBが12ビットであり、他のすべて
のテスト・ブロックが2ビットであると仮定すると、将
来マッチされるであろう参照パターン(つまり、ストア
されたアドレス・ビット)に到達するための最悪のタイ
ミングは、48ビットのテスト・パターンの場合、19
テスト・サイクルである。若しシステムが最大8000
個の参照パターンを参照する必要があるならば、NTB
のエントリの合計数は31996(4*(8000−
1))個である。然しながら、若しテスト・ブロック中
のビット数が2ビットから4ビットに増加されたなら
ば、参照パターンとマッチする時点に到達するために、
最悪の場合でも、10テスト・サイクルを取るだけであ
るが、NTBの合計のエントリ数は、127984個
(16*(8000−1))に増加される。従って、シ
ステムの設計者は、マッチ処理速度と、それに要するコ
ストとの間の条件を所望のように妥協させることができ
る。
【0033】必要とされるルータ102のメモリの第3
の部分は、アドレス・テーブル・ストレージ(「AT
S」)のための領域であり、ATSは、参照パターン
(アドレス・データ)と、参照パターンに関連されたル
ータのポート及びポート固有の記号情報とをストアして
いる。上述の実施例において、ATSは、参照パターン
及びポートの記号情報をストアするために、合計で81
92個のATSエントリが必要とされる。
【0034】使用しないATS、つまり「フリー(fre
e)」のATSのエントリ及び「フリー」のNTBブロ
ックは空に(clear−消去)され、次に、空のエントリ
・ブロック・チェーン(鎖)を形成するために一緒に結
合される。一方のチェーンはATSのエントリのための
チェーンであり、他方のチェーンはNTBブロックのた
めのチェーンである。ATS頭部レジスタは、ATSの
空のエントリ・ブロック・チェーンの最初のエントリ位
置を保持し、そして、ATS尾部レジスタは、ATSの
空のエントリ・ブロックのチェーンの最後のエントリ位
置を保持する。ATSの頭部レジスタの内容がATSの
尾部レジスタの内容と等しい場合、ATS1つだけ余分
のエントリを保持することができる。また、NTBの空
のエントリ・ブロックのチェーンは、同時に形成される
NTBの頭部レジスタ及び尾部レジスタを持つている。
【0035】学習モードにおいて、テスト・トリーの経
路中で比較処理を実行するために、新しいATSのエン
トリ及び/またはNTBのエントリを必要とする時、そ
れらのエントリは頭部レジスタ中にストアされているメ
モリ位置情報から取り出され、そして、頭部レジスタは
次のフリー・ブロックのエントリ位置情報のために更新
される。削除処理の間において、ATSのメモリ位置、
またはNTBのメモリ位置を最早必要としない時、その
メモリ位置は、空にされ、次に、そのメモリ位置に関連
された空のエントリ・ブロックのチェーンの最後尾に結
合され、そして関連された尾部レジスタが更新される。
頭部レジスタ及び尾部レジスタの内容は連続的に更新さ
れる。
【0036】記入されるエントリの更新モード、挿入モ
ード及び削除モードにおいて、テスト・トリーは、修正
が行なわれるべき位置を決定するために検索されなけれ
ばならない。テスト・トリーは、参照パターン(ATS
エントリ)を削除する時に、少なくとも最後の3つのテ
スト・インストラクションのテスト・ブロック(FTB
及び/またはNTB)の内容が、修正されるように構成
されている。すべてのエントリのために、最後の3つの
テスト・インストラクションを追跡することによって削
除処理の効率を改善することができる。
【0037】レジスタDL1、DL2及びDL3は、シ
ステム内で最後の3つのテスト・インストラクションを
記録するためにセットされる。レジスタDL1は、削除
されるべき参照されたエントリの位置情報(ポインタ)
を保持している。この情報は、そのATSのエントリ位
置を指示することと、そのATSのエントリを空にする
ことと、削除されたエントリを「フリー」のエントリの
プール(貯蔵位置)中に戻す貯蔵位置情報を設定するこ
ととに用いることができる。
【0038】レジスタDL2は、LTB(最後のテスト
・ブロック)のエントリの位置情報(エントリ位置を指
示するポインタ)を保持している。この情報は、ATS
のエントリを削除するために空にする必要のあるテスト
・インストラクションを指示するのに使用される。
【0039】レジスタDL3は、LTBを指示するテス
ト・インストラクションの位置情報(テスト・ブロック
を指示するポインタ)を保持している。この情報は、A
TSのエントリが削除された後に不必要なテスト・ブロ
ックを除去するために使用することができる。エントリ
が除去された後に、若しNTB(DL2により指示され
た)がただ1つのテスト・インストラクション(残りの
3つの位置はすべて空にされる)を保持しているなら
ば、このNTBは冗長であり、除去可能であることには
注意を払う必要がある。レジスタDL3の内容によって
指示されたテスト・ブロック(FTB、またはNTB)
中の適当なエントリを修正することによって、冗長なN
TBは容易に除去することができ、後で使用するために
「フリー」のエントリのプール中に戻すことができる。
【0040】エントリ更新処理に対して、最大限、最後
の2つのテスト・インストラクションだけが、エントリ
の更新及び検索トリーの拡大処理のために必要とされ
る。各参照アドレス・パターンは特別なパターンなの
で、メモリ中のそれ自身特別のATSエントリ中にスト
アされる。新しい参照パターン(「NRP」)、即ち
「ソース・アドレス」をATS(アドレス・テーブル・
ストレージ)のRP(参照パターン)テーブル中に付加
するために、NRPは、まず検索処理を通らなければな
らない。レジスタDL1及びDL2は、NRPの検索処
理の間で最後の2つのテスト・インストラクションを記
録する。
【0041】次に図6を参照して、検索モード、学習モ
ード及びエントリ・モードにおいて使用されるパターン
・マッチ処理を遂行するための論理回路を以下に説明す
る。
【0042】図6に示した論理回路が動作される時、こ
の論理回路を動作するために用いられる重複しない2つ
のクロック・パルスが使用される。例えば、回路60、
61及び62は、クロックAが付勢信号を与えた時にデ
ータをサンプルし、そして、クロックBが付勢信号を与
えた時にデータを送り出す。回路65、66及び67
は、クロックBが付勢信号を与えた時にデータをサンプ
ルし、クロックAが付勢信号を与えた時にデータを送り
出す。
【0043】更新モード及び削除モードに関して、図6
に示した論理回路は、ビット・パターンのマッチ処理に
関する上述のモードの一部だけしか示されていないこと
には注意を向けられたい。
【0044】次に、図6及び図7を参照して、検索トリ
ー中のエントリ(ソース・アドレス)を更新する処理を
説明する。ステップ701において、この更新処理はテ
スト・パターン(TP)の受け取りを待機しているアイ
ドル状態にある。新しい参照パターン(NRP)、即ち
新しいテスト・パターンを受け取った時、NRPはレジ
スタ60(TPレジスタ)の中にロードされる。TPレ
ジスタ60は6バイトのビット幅を持っている。FTB
(最初のテスト・ブロック)と呼ばれる最初の12ビッ
トは、マルチプレクサ65(FTBのアドレス選択はク
ロックされている)中に転送され、他方、残りの36ビ
ットはセレクタ(SL)64に転送される。
【0045】比較器(CP)63、セレクタ(SL)6
4、マルチプレクサ(MX)65、66、67及びレジ
スタ60、61、62は、以下に説明される機能を遂行
するための従来の論理回路であることには注意を向けら
れたい。
【0046】マルチプレクサ65の中にロードされた最
初のテスト・ブロックの12ビットはルータ102のメ
モリをアドレスするためのFTBのポインタになる。レ
ジスタDL1及びDL2はこの第1ポインタと等しい値
になるように初期化される。
【0047】次に、ステップ702において、FTBは
メモリからアドレスを読み取るために使用され、そのア
ドレスは、NTBレジスタ62の中にロードされる。
【0048】NTBレジスタ62は18ビットのビット
幅を持っている。このビット幅は、メモリ中にストアさ
れているテスト・ブロックのビット幅に適合している。
各テスト・ブロックのエントリは、5ビットのテスト・
コマンドと、13ビットのテスト・ブロックのアドレス
・ポインタとを含むテスト・インストラクションをスト
アしている。テスト・ブロックのアドレス・ポインタ
は、次の検索動作のためのテスト・インストラクション
を保持するエントリを持っているテスト・ブロックの位
置(メモリの位置)を指示する。テスト・コマンドは、
既に説明したテスト・マスクに関するテスト番号であ
る。テスト・コマンドは、どのテスト・パターン(T
P)のビット・グループがこの検索処理により検査され
るかを識別する(セレクタ64を使用して)。検査され
るTPのビット・パターンは、次の検索ステップのため
のテスト・インストラクションを保持しているテスト・
ブロックのエントリを決定する。若しテスト・コマンド
が「0」をストアしていれば、このことは、検索が終了
されており、参照パターンのマッチが生じなかったこと
を定義する。1乃至18のテスト・コマンド値は、他の
テスト・ブロックがテストされるべきであることを決定
する。テスト・コマンド値24は、将来マッチされるで
あろう参照パターンがあることを定義する。
【0049】13ビットのアドレス・ポインタはメモリ
中の次のテスト・ブロック(「NTB」)の位置を指示
する。
【0050】学習モードにおいて、RP(参照パター
ン)がNRP(新しい参照パターン)とは異なっている
場合において、NRP(ソース・アドレス)が「行き止
まり」ノード(「0」のテスト・コマンドを持つエント
リ)で終了するか、または、現存するRPに突き当たっ
て終了するかを決定した時にのみ、テスト・トリーが延
長される。「行き止まり」のノードで終了した時、NR
PはRPデータベース中に付加される。数値Eのテスト
・コマンドを含むテスト・インストラクション(将来マ
ッチされるであろうRPで終了する検索を定義してい
る)は、NRPの位置情報(ポインタ)が「行き止ま
り」エントリの中に保持されていることを決定する。若
しテスト・パターンがRPに突き当たり、そしてRP及
びNRPが同一値であるならば、RPの記号情報だけが
更新される。然しながら、若しRP及びNRPが異なっ
た値を持っていれば、NRPはRPデータベースの中に
付加される。次に、RP及びNRPの間でビット値の差
異を持つテスト・グループが識別され、そして、この新
しいテスト・ブロックは、アドレス・テーブル・ストレ
ージ(ATS)中に現在ストアされている元のRP及び
NRPを指示するためのテスト・インストラクションを
保存するために、トリーの中に導入される。ATS中に
ストアされているRPを以前に指示したテスト・ブロッ
クのエントリ中のテスト・インストラクションは、作成
された新しいテスト・ブロックを現在指示するテスト・
インストラクションによって置き換えられる。
【0051】ステップ703において、受け取ったビッ
ト値を決定するために、受け取ったテスト・コマンド、
即ちNTBレジスタ62の中にストアされた5ビットの
テスト・コマンド値についてテストが行なわれる。若し
テスト・コマンドが数値0に等しければ、処理はステッ
プ706に進む。若しテスト・コマンドが数値24に等
しければ、処理はステップ710に進む。若しテスト・
コマンドが数値0でも、数値24でもないが、数値24
よりも小さければ、処理はステップ704に進む。レジ
スタDL1の内容はレジスタDL2中にストアされ、そ
してNTBレジスタ中の内容はDL1の中にストアされ
る。
【0052】若しテスト・コマンドが数値0に等しけれ
ば、このことは、新しい参照パターン(NRP)にマッ
チするテスト・トリー中のエントリは存在しないことを
表わしている。従って、ステップ706において、新し
い参照パターンのアドレスがATS(アドレス・テーブ
ル・ストレージ)の中に加えられる。ステップ707に
おいて、FTB(最初のテスト・ブロック)は、ATS
中にストアされている現在のNRPであるマッチされた
参照パターンを指示するLTB(最後のテスト・ブロッ
ク)であるように更新される。従って、このFTB/L
TBは、NRPをストアしているATS中のメモリ位置
を指示するポインタを持つことになる。次に、ステップ
708において、この更新は完了され、処理は、受け取
られるべき新しいアドレスを待機するステップ701に
戻る。
【0053】若しテスト・コマンドが数値24を持って
いれば、このことは、将来マッチされるであろう参照パ
ターンが検出されることを意味する。この場合、セレク
タ64は、13ビットのアドレス・ポインタとの組み合
せを行なうマルチプレクサ(MX)67に転送するため
のテスト・グループ(この実施例では2ビット)を選択
するための5ビットのテスト・コマンドを使用し、マル
チプレクサ67(ATSの読み取りはクロックされる)
は、レジスタ61に転送されるATS中にストアされた
参照パターンを読み取るためにメモリからATSアドレ
スを選択する。その後、ステップ711において、比較
器(CP)63は、NRPがRPに等しいか否かを決定
する。若しNRPがRPと等しければ、処理は、参照パ
ターン(RP)の記号情報を更新するためにステップ7
13に進む。参照パターンはATSのメモリ位置中に既
に存在しているので、上述のことは、学習モードに必要
なすべての処理である。参照パターンの記号情報には、
NRPがルータ102によって受け取られたことを示す
タイム・スタンプを含ませることができる。次に、処理
は前述したステップ708に進んだ後ステップ701に
進む。
【0054】ステップ711において、若しNRPがR
Pと等しくなければ、処理は、ステップ706に関して
説明したように、NRP(新しい参照パターン)をAT
Sのメモリ位置の中にストアするように転送するステッ
プ712に進む。次に、ステップ714において、テス
ト・グループ(FTB)がNRPに差し向けられ、かつ
RPに差し向けられるように、テスト・グループが更新
される。つまり、NRP及びRPの間で異なっているテ
スト・グループのビット・パターンは、それらのビット
・パターンの関連ATSエントリに別々に差し向けられ
て利用される。ステップ712及びステップ714が新
しいRPを与えている間で、ステップ715は検索トリ
ーの中にNRPを挿入する。その後、処理はステップ7
08に進む。
【0055】ステップ703において、若しテスト・コ
マンドが数値24よりも小さな値を持っていれば、図7
の処理はステップ704に進み、このステップにおいて
セレクタ64は、ATS中の次のテスト・グループをア
クセスするためのアドレスとして用いられるレジスタ6
2中にストアされている13ビットのアドレス・ポイン
タと、テスト・グループの2ビットとを組み合わせるマ
ルチプレクサ66(NTBの読み取りはクロックされ
る)に、NRP中の次のテスト・グループを転送する。
次に、この、次のテスト・ブロックはレジスタ62の中
に転送される。ステップ705において、レジスタDL
1の内容がレジスタDL2に更新され、このテスト・ブ
ロックの内容がレジスタDL1に更新される。また、ス
テップ705において、5ビットのテスト・コマンドが
決定される。ステップ703に関して説明したように、
若しテスト・コマンド値が数値0であれば、処理はステ
ップ706に進む。若しテスト・コマンド値が数値24
を持っていれば、処理はステップ710に進む。若しエ
ラー状態が発生すれば、処理はステップ709に進む。
このようなエラーは、パリティ・エラーの発生か、無効
なテスト・コマンド、即ちこの実施例において「コード
化」されていない20、21、...等のテスト・コマ
ンドの発生か、あるいはマッチ処理において反復して現
われるテスト・コマンドなどである。特定の検索通路に
おいてテスト・グループが2度以上含まれたならば、エ
ラー状態が発生されなければならない。
【0056】然しながら、若しテスト・コマンドの値が
数値24よりも小さければ、処理はステップ704に戻
り、このステップにおいて、セレクタ64は、ATS中
の次のテスト・ブロックをアドレスし、かつ検索するた
めに、前に受け取った次のテスト・ブロックからの13
ビットのアドレス・ポインタと、テスト・グループ(T
G)の2ビットとを組み合わせるマルチプレクサ66へ
2ビットの次のテスト・グループを転送し、次に、これ
はレジスタ62中にストアされる。テスト・コマンドの
値が有効で、かつ数値24以下である限り、ステップ7
04及びステップ705は繰り返えされる。
【0057】上述の処理は図8乃至図10に示されてい
る検索トリーの実施例を参照してより良く理解すること
ができる。図8乃至図10において、最右端に示された
縦列(Xを正の整数としてMXで示されている)は、A
TSのエントリを示している。
【0058】新しい参照パターン(NRP)がRP(A
TS)のエントリに最終的にマップされ、そしてNRP
及びRPが同じではない時には(ステップ711)、検
索トリーは拡大される。このような場合が図8乃至図1
0に示されており、図8乃至図10において、NRP4
は、ATS(アドレス・テーブル・ストレージ)のエン
トリRP3上にマップされているけれども(ステップ7
04及びステップ705を通して組み合わされた後の状
態)、しかし、NRP4及びRP3はまだ同じではない
(図8)。この例において、新しいATSのエントリM
7がNRP4のために作成される(図7のステップ71
2)(図9)。次に、RP3に対して前に指示されたテ
スト・グループ、この場合B2_c4中の(24、M
5)を検出するために、NRP及びRP間のビットの相
異が決定され利用される。次に、新しいNTB、B3が
作成される(ステップ714)(図9)。次に、RP3
及びNRP4に差し向けるために、新しいテスト・イン
ストラクションがB3の中にストアされる(図9及び図
10)。これらのテスト・インストラクションの各々
は、それらがATSのエントリに差し向けられているの
で、数値24を持つテスト・コマンドを含んでいる。R
P3に差し向けるポインタは、B3_c1位置にある値
(24、M5)としてストアされ、他方、NRP4に差
し向けるポインタは、B3_c4位置にある値(24、
M7)によって表わされている(ステップ714)。
【0059】B2_c4の位置にあり、RP3に差し向
ける前のポインタは、(TG7、B3)に差し向けるポ
インタに置き換えられる(ステップ715)(図9及び
図10)。
【0060】若しNRPが、数値0に等しいテスト・コ
マンド値を有するFTB、またはNTBエントリ中にマ
ップされたならば、検索トリーは下記のように拡大され
る。テスト・コマンドの数値0を有するFTBに関して
は、新しいATSエントリが得られる(ステップ70
6)。これは、図9及び図10において、NRP3で示
されている。これは、FTBnが「行き止まり」ノード
だったからである。従って、FTBnは、数値24を持
つテスト・コマンドと、ATSのエントリM4に差し向
ける13ビットのアドレス・ポインタとを有するテスト
・インストラクションを持たせるように更新される(ス
テップ707)。
【0061】図8において、若しNRPが、数値0のテ
スト・コマンドを有する「行き止まり」ノードである次
のテスト・ブロックB4_c4の中にマップされたなら
ば、新しいATSのエントリM3が形成され(ステップ
704及びステップ705後のステップ706)、そし
てB4_c4中のポインタ(24、M3)はATSエン
トリのM3に差し向けるポインタに更新される(ステッ
プ707)(図9及び図10)。
【0062】既に説明したように、若しNRP及びRP
が完全にマッチされたならば、RPの記号だけが更新さ
れる。これは、RP2を含むATSエントリのM2の経
路を通してマッチされるNRP1によって示されている
(ステップ710、711及び713)(図8)。
【0063】次に、図11を参照すると、検索トリーか
らエントリを削除する処理を説明する流れ図が示されて
いる。エントリを削除する状態は、ネットワーク・シス
テム100中の特定の装置が取り除かれて、存在しない
装置に対する情報伝送通路を、ルータ102が最早設定
する必要がない時に生じる。各ATSのエントリは、ル
ータ102のメモリ中に、関連されたポートのアドレス
を含んでいることを想起されたい。
【0064】図6の論理回路は、図11のエントリ削除
処理の流れ図のパターン・マッチ部分に対しても適用さ
れる。
【0065】ステップ901において、処理は、レジス
タ60の中に、削除される参照パターン(「DRP」)
をロードする。レジスタDL1、DL2及びDL3はす
べてFTBのポインタの数値と同じ値にセットされる。
次に、マルチプレクサ65は、レジスタ62の中に保持
するためのテスト・コマンド及びポインタ情報を検索す
るために、FTB(最初のテスト・ブロック)のメモリ
に12ビット・ポインタのアドレスを転送する(ステッ
プ902)。ステップ903において、FTB中にスト
アされているテスト・コマンドの数値がアクセスされ
る。レジスタDL2の内容はレジスタDL3の中に置か
れ、レジスタDL1の内容はレジスタDL2の中に置か
れ、そしてNTBのポインタはレジスタDL1の中に置
かれる。若しテスト・コマンドの数値が0であれば、こ
の状態は、「行き止まり」ノードに到達したことと、削
除すべき参照パターンがメモリ中に存在しないので削除
処理を必要としないこととを意味する(ステップ90
5)。次に、処理はステップ901に戻る。
【0066】若しエラー状態(既に説明した)が発生し
たならば、処理はステップ904に進む。
【0067】若しテスト・コマンド値が24よりも小さ
ければ、処理はステップ902に戻り、ステップ902
において、レジスタ60の中にストアされた36ビット
中の次のテスト・グループは、セレクタ64によって選
択され、そして、レジスタ62中にストアされている1
3ビット・ポインタのアドレスと組み合せるために、マ
ルチプレクサ66に転送される。次に、多重化されたこ
のビット・グループは、次のテスト・ブロックのための
ルータ102中のメモリをアドレスするために用いら
れ、次に、このテスト・ブロックはレジスタ62の中に
読み取られる。次に、ステップ903において、このテ
スト・コマンドは前述したと同じように決定される。
【0068】若し数値24と等しい値のテスト・コマン
ドが得られたならば、ステップ906において、13ビ
ット・ポインタはセレクタ64からのテスト・グループ
のデータと多重化されるマルチプレクサ67に転送さ
れ、次に、この内容はレジスタ61に読み取られる。ス
テップ907において、比較器(CP)63は、DRP
(削除参照パターン)が獲得した参照パターン(DP)
と等しいか否かを決定する。若し等しくなければ、処理
はステップ905に進み、ステップ905において、削
除されるべき参照パターンとマッチする参照パターンが
ATSの中には存在しないので、削除処理は終了され
る。然しながら、ステップ907において、若しDRP
がDPと同じならば、処理はステップ908に進み、削
除されるべきATSのエントリを指示する最後のテスト
・ブロック中のポインタ・エントリは空にされ(レジス
タDL2はこのLTBのポインタを保持している)、そ
して、このLTB(FTBかNTBかのいずれかに保持
されている)を空にする。若し空にされるべきこのエン
トリがFTB中にあるならば、このFTBは空にされ、
そしてATSのエントリはフリーのエントリ・ブロック
のプールに解放される。
【0069】然しながら、若し空にされるLTBがFT
B中にないが、その代わりに中間的なノードにあるなら
ば、ステップ909中の処理は、このNTBが1つのエ
ントリを含んでいるか否かを決定する。若しこのような
エントリを含んでいなければ、NTB中でこれに対応す
るエントリは空にされ、そして、このATSのエントリ
はフリーのエントリ・ブロックのプールに与えられる。
然しながら、若しNTBの中にストアされた唯1つのテ
スト・インストラクションがあれば、この最後のテスト
・ブロックは、ステップ910において削除され、ステ
ップ911の中に進む。
【0070】エントリが削除される検索トリーが示され
ている図12乃至図14を参照して、エントリを削除す
る処理を更に説明する。
【0071】DRP1(削除参照パターン1)は、行き
止まりノードB2_c1中にマップされていることには
注意を払われたい(図12)。この例において、B2_
c1は数値0のテスト・コマンドを持っており、他の動
作は必要とされない(ステップ905)。
【0072】DRP2はATSの記録位置M3の中にス
トアされているRP6中にマップされている(図1
2)。この場合、B4_c4中のテスト・コマンドは数
値24を持っている。B4_c4の内容は空にされる
(ステップ908)(図13)。ATSの記録位置M3
は空にされ、フリーのエントリ・ブロックのプールに解
放される(ステップ912)(図14)。そして、B2
が2つ以上のエントリを持っているので、削除処理は完
了される(ステップ905)。
【0073】DRP3はRP9の中にマップされている
(ステップ907)(図12)。FTBkの内容は空に
される(ステップ908)(図13)。ATSのエント
リM4は空にされ、ATSのフリーのエントリ・ブロッ
クのプールに戻される(ステップ912)(図14)。
ATSエントリを処理する最後のテスト・ブロックは最
初のテスト・ブロック(FTBk)なので、その上の処
理は必要としない。
【0074】DRP4はATSエントリM7においてR
P4の中にマップされている(ステップ907)(図1
2)。この場合、B3_c4は空にされる(ステップ9
08)(図13)。B3はただ1つのエントリを持って
いるだけなので(ステップ910)、処理は、B3を削
除するためにステップ910に進み、B3のブロックを
空にし、そして、B3のために必要とするメモリ位置を
NTBのフリーのエントリ・ブロックのプールに解放す
る(ステップ911)(図13)。B2_c4中の新し
いポインタが、残りのATSエントリのRP3に向けて
指示するよう付勢される(図14)。
【0075】次に図15を参照すると、検索トリーの中
でマッチを検出するための処理を説明するための流れ図
が示されている。図15の処理によって、ルータ102
は、受け取ったデータ・フレームを、所定の宛先装置へ
伝送するデータ通路を設定することができる。ステップ
1100において、テスト・グループの検出処理は、レ
ジスタ60の中に、受け取った「宛先アドレス」をロー
ドする。ステップ1101において、12ビットのFT
Bのデータ・ブロックは、レジスタ62中にストアされ
た次のテスト・ブロックのためのルータのメモリを検索
するために、マルチプレクサ65によって使用される。
ステップ1102において、テスト・グループのデータ
のテスト・コマンド部分の値を決定するテストが行なわ
れる。若しテスト・コマンドが数値0を持っているなら
ば、ステップ1103において、処理は、マッチがない
ことを決定した後、ステップ1100に戻る。この場
合、ルータ102は受け取ったデータの同報通報を行な
う(図2のステップ36)。
【0076】若しテスト・コマンドが数値24よりも小
さい値を持っているならば、このことは、検索トリー内
の他のノードが検索されることを表わしている。ステッ
プ1107において、マルチプレクサ66は、NTBメ
モリ位置の中にアドレスを与えるために、セレクタ64
から受け取ったテスト・グループのデータと、レジスタ
62から受け取った13ビットのアドレス・ポインタと
を組み合わせる。再言すると、ステップ1108におけ
るテストは、レジスタ62の中にストアされたテスト・
コマンドに対して行なわれる。若しテスト・コマンドが
数値24よりも小さい値を持っているならば、処理は、
ステップ1107に戻り、次に、上述と同じ処理経路を
通過して進行する。
【0077】ステップ1102、またはステップ110
8のいずれかのステップにおいて、若しテスト・コマン
ドが数値24と同じ値ならば、これは、新しい参照パタ
ーンにマッチする参照パターンがあることを意味し、こ
の場合、マルチプレクサ67は、セレクタ64からのテ
スト・グループと、レジスタ62からのポインタ・ビッ
トとを用い、次に、レジスタ61の中に読み取られる参
照パターンにマッチするためのATSの記録位置をアド
レスする。ステップ1105において、比較器63は、
テスト・パターンが検索された参照パターンと同じであ
るか否かを決定する。若しテスト・パターンが参照パタ
ーンと同じでなければ、処理はステップ1103に進
む。然しながら、若しテスト・パターンがATS中にス
トアされた参照パターンと同じならば、処理は、ステッ
プ1106に進み、そこでマッチが存在することが決定
される。従って、これは、マッチされた参照パターンに
関連したルータのポートを通過する所定の宛先装置への
データ・フレームの通路設定動作を、このルータによっ
て行なわせる(図3のステップ35)。
【0078】次に、図16を参照すると、本発明に従っ
たルータ102中の処理動作を説明するための論理回路
のブロック図が示されている。ランダム・アクセス・メ
モリ(RAM)1212はFTB、NTB及びATSの
メモリ位置を含んでいることには注意を向けられたい。
DA(宛先アドレス)マッチ・エンジン1206はTP
(テスト・パターン)データ・バスからの「宛先アドレ
ス」データを受け取り、そして「宛先アドレス」のマッ
チ処理を行なう(図15)。SA(ソース・アドレス)
マッチ・エンジン1207は、TPデータ・バスから
「ソース・アドレス」を受け取り、そして「ソース・ア
ドレス」のマッチ処理を行なう(図7)。若し参照パタ
ーンのマッチが検出されたならば、タイム・スタンプが
与えられる。マイクロプロセッサの比較エンジン120
8はマイクロプロセッサ・バスからのデータを受け取
り、そしてパターンのマッチ処理を行なう(図6の比較
器)。エントリ更新エンジン1209はマイクロプロセ
ッサ・バスからのNRPのデータを受け取り、そして、
上述したようにATSエントリの更新を遂行する(図
7)。エントリ削除エンジン1210はマイクロプロセ
ツサ・バスからDRP(削除参照パターン)を受け取
り、そしてATSエントリの削除を遂行する(図1
1)。マイクロプロセッサ・インターフェース・ロジッ
ク1202を設けることによって、必要に応じて任意の
エンジンとの間で通信することと、コマンドを発生する
ことと、RAM1212に対する読み取り及び書き込み
動作を行なうこととを、ルータ102の中のマイクロプ
ロセッサが遂行可能となる。TPバス仲裁装置1201
はTP(テスト・パターン)処理を共有する装置を仲裁
し、そしてTP処理要求のための適当な装置へのバスを
与える。
【0079】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0080】(1)データ処理装置の宛先アドレスと関
連されているデータを処理するネットワーク・システム
中のデータ通路を設定する方法において、上記宛先アド
レスと宛先アドレスのデータベースとを比較する比較ス
テップを含み、該比較ステップは、更に、上記宛先アド
レスの一部分と上記データベースの区画部分とを順番に
比較する比較ステップを含み、該比較ステップにおい
て、前に比較された一部分/区画部分の対がマッチした
時に、一部分/区画部分の対の後続の比較動作が発生さ
れることと、上記宛先アドレスの上記一部分のすべてが
上記データベースの区画部分とマッチした時に上記宛先
アドレスへの上記データ通路を設定するステップとを含
むことを特徴とするデータ通路の設定方法。 (2)宛先アドレスの上記データベースの上記区画部分
は検索トリー中に配置されている(1)に記載のデータ
通路の設定方法。 (3)上記データベースの区画部分は後続する区画部分
に差し向けるポインタを含み、前に比較された一部分/
区画部分の対がマッチした時に上記ポインタの動作が開
始されることを特徴とする(1)に記載のデータ通路の
設定方法。 (4)一部分/区画部分の対がマッチしない時に、上記
宛先アドレスのマッチされない部分を上記検索トリーに
加えるステップを含む(2)に記載のデータ通路の設定
方法。 (5)上記システムはデータ処理装置のネットワークを
含む(1)に記載のデータ通路の設定方法。 (6)ネットワーク中のデータ処理装置の間でデータ通
路を設定する装置において、上記データ処理装置へデー
タを転送し、かつ上記データ処理装置からデータを受け
取ることを可能にするインターフェース手段を含み、上
記データは上記データ処理装置の1つに関連された宛先
アドレスを含むことと、1つまたはそれ以上の検索トリ
ー中にストアされた複数個のアドレスと上記宛先アドレ
スとを比較する比較手段を含み、上記複数個のアドレス
は上記データ処理装置に関連されていることと、上記宛
先アドレスと、上記複数個のアドレスの1つとがマッチ
したことを上記比較手段が検出した時に、上記インター
フェース手段を通して上記データを上記データ処理装置
の1つに転送する手段とを含むデータ通路設定装置。 (7)上記データは上記データを発信した上記データ処
理装置の1つに関連されたソース・アドレスを含んでい
るデータ通路設定装置であって、上記1つまたはそれ以
上の検索トリー中にストアされた上記複数個のアドレス
と上記ソース・アドレスとを比較する比較手段と、上記
1つまたはそれ以上の検索トリー中にストアされた上記
複数個のアドレスの1つと上記ソース・アドレスとがマ
ッチしなかったことを上記比較手段が検出した時に、上
記1つまたはそれ以上の検索トリーの1つに上記ソース
・アドレスを付加する手段とを含む(6)に記載のデー
タ通路設定装置。 (8)上記データが発信された上記データ処理装置の1
つに関連されたアドレスと上記宛先アドレスとがマッチ
したことを上記比較手段が検出した時に、上記データを
無視する手段を含む(6)に記載のデータ通路設定装
置。 (9)上記1つまたはそれ以上の検索トリーの中にスト
アされた上記複数個のアドレスの1つと上記宛先アドレ
スとがマッチしなかったことを上記比較手段が検出した
時に、上記インターフェース手段を通して上記データ処
理装置のすべてに上記データを同報通信する手段を含む
(6)に記載のデータ通路設定装置。 (10)上記1つまたはそれ以上の検索トリー中にスト
アされた上記複数個のアドレスの1つを削除する手段を
含む(6)に記載のデータ通路設定装置。 (11)データ処理ネットワークに接続する複数個のポ
ートと、上記ネットワーク中のデータ処理装置に対応す
るアドレスをストアする手段と、上記1つまたはそれ以
上の検索トリー中の上記アドレスと、上記データに関連
付けられたアドレスとを比較することによって、上記複
数個のポートの内の一方のポートを通して上記複数個の
ポートの内の他方のポートへ、受信したデータの通路を
設定する手段とを含むルータ。 (12)上記1つまたはそれ以上の検索トリーは上記ア
ドレスの区画部分を含み、上記アドレスの1つまたはそ
れ以上のアドレスがポインタによって組み合されること
を特徴とする(11)に記載のルータ。 (13)上記1つまたはそれ以上の検索トリーの1つの
中にストアされた上記アドレスの1つと、上記データに
関連された上記アドレスとの間で将来のマッチがあるこ
とを、上記ポート内の1つまたはそれ以上のポートが表
示することを特徴とする(12)に記載のルータ。 (14)1つまたはそれ以上の上記ポインタは、上記デ
ータに関連された上記アドレスと、上記1つまたはそれ
以上の検索トリーの1つのトリーにストアされた上記ア
ドレスの1つのアドレスとの間でマッチがないことの表
示を含むことを特徴とする(12)に記載のルータ。 (15)データ処理ネットワークに接続されたルータ中
のメモリ中にアドレスをストアする方法において、上記
ネットワーク中のデータ処理装置に関連したアドレスを
受け取るステップと、上記アドレスの1つまたはそれ以
上の区画部分と、上記メモリ中の検索トリー中に配置さ
れる前にストアされた区画部分とを比較するステップ
と、上記アドレスの上記区画部分の1つが上記前にスト
アされた区画部分の1つとマッチしない時に、上記検索
トリーに上記アドレスを加えるステップとを含むアドレ
スのストア方法。 (16)上記前にストアされた区画部分は上記検索トリ
ー中の次の区画部分を指示するポインタを含んでいる
(15)に記載のアドレスのストア方法。 (17)上記前にストアされた区画部分は、(a) 上
記検索トリーはその区画部分において終端しているか、
または、(b) 上記検索トリーは他の区画部分に連続
しているか、または、(c) 上記検索トリーはマッチ
したアドレスを指示しているかのいずれかを表示するコ
ードを含むことを特徴とする(16)に記載のアドレス
のストア方法。 (18)ルータによってリンクされている複数個のデー
タ処理装置を含むデータ処理ネットワークにおいて、上
記ルータは、上記複数個のデータ処理装置の第1の装置
からデータを受け取る手段を含み、上記データは上記複
数個のデータ処理装置の第2の装置に送られるメッセー
ジを含んでおり、そして、ソース・アドレスは上記複数
個のデータ処理装置の第1の装置に関連されており、か
つ宛先アドレスは上記複数個のデータ処理装置の第2の
装置に関連されていることと、1つまたはそれ以上の検
索トリー中に配置された複数個のアドレスをストアする
メモリ手段と、上記ソース・アドレスと、1つまたはそ
れ以上の検索トリー中に配置された上記複数個のアドレ
スとを比較する第1比較手段と、該第1比較手段が1つ
またはそれ以上の検索トリー中に配置された上記複数個
のアドレスの内の任意の1つと上記ソース・アドレスと
がマッチしないことを検出した時に、1つまたはそれ以
上の検索トリー中に配置された上記複数個のアドレスを
更新する手段と、上記宛先アドレスと、1つまたはそれ
以上の検索トリー中に配置された上記複数個のアドレス
とを比較する第2比較手段と、該第2比較手段が上記宛
先アドレスと、1つまたはそれ以上の検索トリー中に配
置された上記複数個のアドレスの任意の1つとがマッチ
したことを検出した時に、上記複数個のデータ処理装置
の中の第2の装置に上記データを転送する手段とを含む
データ処理ネットワーク。 (19)1つまたはそれ以上の検索トリー中に配置され
た上記複数個のアドレスの1つを削除する手段を含む
(18)に記載のデータ処理ネットワーク。
【0081】
【発明の効果】データ通信ネットワーク内のルータを通
るメッセージのデータ通路を効率よく、しかも従来より
も遥かに迅速に設定することができる。
【図面の簡単な説明】
【図1】ルータを使用したネットワーク構成を示す図で
ある。
【図2】ルータの中にアドレス/ポートをストアする処
理を説明するための流れ図である。
【図3】ルータを通ってデータ通路を設定する処理を説
明するための流れ図である。
【図4】本発明に従ってアドレスの区分を定義するため
のテスト・グループのマスクを示す図である。
【図5】本発明の動作を行なうために区分されたアドレ
スの例を説明する図である。
【図6】本発明に従った論理回路を示すブロック図であ
る。
【図7】本発明に従ってアドレス情報を更新する処理を
説明するための流れ図である。
【図8】更新されるアドレスを有する検索トリーの実施
例を説明する図である。
【図9】更新されるアドレスを有する検索トリーの実施
例を説明する図である。
【図10】更新されるアドレスを有する検索トリーの実
施例を説明する図である。
【図11】本発明に従ってアドレスを削除するための処
理を説明するための流れ図である。
【図12】削除されるアドレスを有する検索トリーの実
施例を説明する図である。
【図13】削除されるアドレスを有する検索トリーの実
施例を説明する図である。
【図14】削除されるアドレスを有する検索トリーの実
施例を説明する図である。
【図15】本発明のアドレス・マッチ処理の実行を説明
するための流れ図である。
【図16】ルータ装置の中で本発明を遂行するための装
置のブロック図である。
【符号の説明】
60 TP(テスト・パターン)レジスタ 61 RP(参照パターン)レジスタ 62 NTB(次のテスト・ブロック)レジスタ 63 比較器 64 セレクタ 65、66、67、1211 マルチプレクサ(MX) 100 ネットワーク・システム 101 サーバ 102 ルータ 108、110、112 124、128 データ処理
装置 1201 TPバス仲裁装置 1202 マイクロプロセッサのインターフェース 1203 出力レジスタ 1204 タスク・スケジューラ 1205 バッフア管理エンジン 1206 宛先(DA)マッチ・エンジン 1207 ソース・アドレス(SA)マッチ・エンジン 1208 比較エンジン 1209 エントリ更新エンジン 1210 エントリ削除エンジン 1212 ランダム・アクセス・メモリ(RAM) ATS アドレス・テーブル・ストレージ DRP 削除パターン DA 宛先アドレス FTB 最初のテスト・ブロック NTB 次のテスト・ブロック LTB 最後のテスト・ブロック NRP 新しい参照パターン SA ソース・アドレス TG テスト・グループ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジェフリー・ウエイン・キッド アメリカ合衆国 ノースカロライナ州、ケ アリー、ケアリー・パインス・ドライブ 413 (72)発明者 エドワード・ハウ・チュン・ク アメリカ合衆国 ノースカロライナ州、ケ アリー、ロックウッド・ドライブ・ウエス ト 115 (72)発明者 カレン・パーク・ヘロン アメリカ合衆国 ノースカロライナ州、ラ ーレイ、ペニイ・ロード 9208 (72)発明者 シミン・ホスネ・サナイェ アメリカ合衆国 ノースカロライナ州、ラ ーレイ、ロードステッド・ウエイ・ウエス ト 10301 (72)発明者 ルイス・フィリィペ・デ・ソウサ・シルバ ブラジル国 リオ・デ・ジャネーロ、ジャ カレパクゥア、フレゲシア、ルア・ティロ ル 876、エィ・ピー 202

Claims (19)

    【特許請求の範囲】
  1. 【請求項1】 データ処理装置の宛先アドレスと関連さ
    れているデータを処理するネットワーク・システム中の
    データ通路を設定する方法において、 上記宛先アドレスと宛先アドレスのデータベースとを比
    較する比較ステップを含み、 該比較ステップは、更に、 上記宛先アドレスの一部分と上記データベースの区画部
    分とを順番に比較する比較ステップを含み、該比較ステ
    ップにおいて、前に比較された一部分/区画部分の対が
    マッチした時に、一部分/区画部分の対の後続の比較動
    作が発生されることと、 上記宛先アドレスの上記一部分のすべてが上記データベ
    ースの区画部分とマッチした時に上記宛先アドレスへの
    上記データ通路を設定するステップとを含むことを特徴
    とするデータ通路の設定方法。
  2. 【請求項2】 宛先アドレスの上記データベースの上記
    区画部分は検索トリー中に配置されている請求項1に記
    載のデータ通路の設定方法。
  3. 【請求項3】 上記データベースの区画部分は後続する
    区画部分に差し向けるポインタを含み、前に比較された
    一部分/区画部分の対がマッチした時に上記ポインタの
    動作が開始されることを特徴とする請求項1に記載のデ
    ータ通路の設定方法。
  4. 【請求項4】 一部分/区画部分の対がマッチしない時
    に、上記宛先アドレスのマッチされない部分を上記検索
    トリーに加えるステップを含む請求項2に記載のデータ
    通路の設定方法。
  5. 【請求項5】 上記システムはデータ処理装置のネット
    ワークを含む請求項1に記載のデータ通路の設定方法。
  6. 【請求項6】 ネットワーク中のデータ処理装置の間で
    データ通路を設定する装置において、 上記データ処理装置へデータを転送し、かつ上記データ
    処理装置からデータを受け取ることを可能にするインタ
    ーフェース手段を含み、上記データは上記データ処理装
    置の1つに関連された宛先アドレスを含むことと、 1つまたはそれ以上の検索トリー中にストアされた複数
    個のアドレスと上記宛先アドレスとを比較する比較手段
    を含み、上記複数個のアドレスは上記データ処理装置に
    関連されていることと、 上記宛先アドレスと、上記複数個のアドレスの1つとが
    マッチしたことを上記比較手段が検出した時に、上記イ
    ンターフェース手段を通して上記データを上記データ処
    理装置の1つに転送する手段とを含むデータ通路設定装
    置。
  7. 【請求項7】 上記データは上記データを発信した上記
    データ処理装置の1つに関連されたソース・アドレスを
    含んでいるデータ通路設定装置であって、 上記1つまたはそれ以上の検索トリー中にストアされた
    上記複数個のアドレスと上記ソース・アドレスとを比較
    する比較手段と、 上記1つまたはそれ以上の検索トリー中にストアされた
    上記複数個のアドレスの1つと上記ソース・アドレスと
    がマッチしなかったことを上記比較手段が検出した時
    に、上記1つまたはそれ以上の検索トリーの1つに上記
    ソース・アドレスを付加する手段とを含む請求項6に記
    載のデータ通路設定装置。
  8. 【請求項8】 上記データが発信された上記データ処理
    装置の1つに関連されたアドレスと上記宛先アドレスと
    がマッチしたことを上記比較手段が検出した時に、上記
    データを無視する手段を含む請求項6に記載のデータ通
    路設定装置。
  9. 【請求項9】 上記1つまたはそれ以上の検索トリーの
    中にストアされた上記複数個のアドレスの1つと上記宛
    先アドレスとがマッチしなかったことを上記比較手段が
    検出した時に、上記インターフェース手段を通して上記
    データ処理装置のすべてに上記データを同報通信する手
    段を含む請求項6に記載のデータ通路設定装置。
  10. 【請求項10】 上記1つまたはそれ以上の検索トリー
    中にストアされた上記複数個のアドレスの1つを削除す
    る手段を含む請求項6に記載のデータ通路設定装置。
  11. 【請求項11】 データ処理ネットワークに接続する複
    数個のポートと、 上記ネットワーク中のデータ処理装置に対応するアドレ
    スをストアする手段と、 上記1つまたはそれ以上の検索トリー中の上記アドレス
    と、上記データに関連付けられたアドレスとを比較する
    ことによって、上記複数個のポートの内の一方のポート
    を通して上記複数個のポートの内の他方のポートへ、受
    信したデータの通路を設定する手段とを含むルータ。
  12. 【請求項12】 上記1つまたはそれ以上の検索トリー
    は上記アドレスの区画部分を含み、上記アドレスの1つ
    またはそれ以上のアドレスがポインタによって組み合さ
    れることを特徴とする請求項11に記載のルータ。
  13. 【請求項13】 上記1つまたはそれ以上の検索トリー
    の1つの中にストアされた上記アドレスの1つと、上記
    データに関連された上記アドレスとの間で将来のマッチ
    があることを、上記ポート内の1つまたはそれ以上のポ
    ートが表示することを特徴とする請求項12に記載のル
    ータ。
  14. 【請求項14】 1つまたはそれ以上の上記ポインタ
    は、上記データに関連された上記アドレスと、上記1つ
    またはそれ以上の検索トリーの1つのトリーにストアさ
    れた上記アドレスの1つのアドレスとの間でマッチがな
    いことの表示を含むことを特徴とする請求項12に記載
    のルータ。
  15. 【請求項15】 データ処理ネットワークに接続された
    ルータ中のメモリ中にアドレスをストアする方法におい
    て、 上記ネットワーク中のデータ処理装置に関連したアドレ
    スを受け取るステップと、 上記アドレスの1つまたはそれ以上の区画部分と、上記
    メモリ中の検索トリー中に配置される前にストアされた
    区画部分とを比較するステップと、 上記アドレスの上記区画部分の1つが上記前にストアさ
    れた区画部分の1つとマッチしない時に、上記検索トリ
    ーに上記アドレスを加えるステップとを含むアドレスの
    ストア方法。
  16. 【請求項16】 上記前にストアされた区画部分は上記
    検索トリー中の次の区画部分を指示するポインタを含ん
    でいる請求項15に記載のアドレスのストア方法。
  17. 【請求項17】 上記前にストアされた区画部分は、 (a) 上記検索トリーはその区画部分において終端し
    ているか、または、 (b) 上記検索トリーは他の区画部分に連続している
    か、または、 (c) 上記検索トリーはマッチしたアドレスを指示し
    ているかのいずれかを表示するコードを含むことを特徴
    とする請求項16に記載のアドレスのストア方法。
  18. 【請求項18】 ルータによってリンクされている複数
    個のデータ処理装置を含むデータ処理ネットワークにお
    いて、 上記ルータは、 上記複数個のデータ処理装置の第1の装置からデータを
    受け取る手段を含み、上記データは上記複数個のデータ
    処理装置の第2の装置に送られるメッセージを含んでお
    り、そして、ソース・アドレスは上記複数個のデータ処
    理装置の第1の装置に関連されており、かつ宛先アドレ
    スは上記複数個のデータ処理装置の第2の装置に関連さ
    れていることと、 1つまたはそれ以上の検索トリー中に配置された複数個
    のアドレスをストアするメモリ手段と、 上記ソース・アドレスと、1つまたはそれ以上の検索ト
    リー中に配置された上記複数個のアドレスとを比較する
    第1比較手段と、 該第1比較手段が1つまたはそれ以上の検索トリー中に
    配置された上記複数個のアドレスの内の任意の1つと上
    記ソース・アドレスとがマッチしないことを検出した時
    に、1つまたはそれ以上の検索トリー中に配置された上
    記複数個のアドレスを更新する手段と、 上記宛先アドレスと、1つまたはそれ以上の検索トリー
    中に配置された上記複数個のアドレスとを比較する第2
    比較手段と、 該第2比較手段が上記宛先アドレスと、1つまたはそれ
    以上の検索トリー中に配置された上記複数個のアドレス
    の任意の1つとがマッチしたことを検出した時に、上記
    複数個のデータ処理装置の中の第2の装置に上記データ
    を転送する手段とを含むデータ処理ネットワーク。
  19. 【請求項19】 1つまたはそれ以上の検索トリー中に
    配置された上記複数個のアドレスの1つを削除する手段
    を含む請求項18に記載のデータ処理ネットワーク。
JP7213572A 1994-09-15 1995-08-22 データ通路の設定方法及び装置 Pending JPH0897844A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/306,783 US5761440A (en) 1994-09-15 1994-09-15 System and method utilizing multiple search trees to route data within a data processing network
US306783 1999-05-07

Publications (1)

Publication Number Publication Date
JPH0897844A true JPH0897844A (ja) 1996-04-12

Family

ID=23186822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7213572A Pending JPH0897844A (ja) 1994-09-15 1995-08-22 データ通路の設定方法及び装置

Country Status (2)

Country Link
US (1) US5761440A (ja)
JP (1) JPH0897844A (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6310876B1 (en) * 1997-02-14 2001-10-30 Advanced Micro Devices, Inc. Method and apparatus for managing bin chains in a memory
JP3512585B2 (ja) * 1997-02-24 2004-03-29 矢崎総業株式会社 データ通信方法、及びこの方法を用いたデータ通信システム
US6011795A (en) * 1997-03-20 2000-01-04 Washington University Method and apparatus for fast hierarchical address lookup using controlled expansion of prefixes
US5974481A (en) * 1997-09-15 1999-10-26 Digital Equipment Corporation Method for estimating the probability of collisions of fingerprints
US6772256B1 (en) * 1998-05-27 2004-08-03 Micron Technology, Inc. Routing arbiter for data network switching
NO309169B1 (no) * 1998-11-13 2000-12-18 Interagon As Sokeprosessor
US6298340B1 (en) * 1999-05-14 2001-10-02 International Business Machines Corporation System and method and computer program for filtering using tree structure
KR100364433B1 (ko) * 2000-04-28 2002-12-11 학교법인 동국학원 비트-벡터 테이블을 이용한 ip 주소 검색방법
DE50105319D1 (de) * 2001-08-29 2005-03-17 Alcatel Sa Router
DE50107065D1 (de) * 2001-08-29 2005-09-15 Alcatel Sa Router
US7474657B2 (en) * 2002-04-30 2009-01-06 University Of Florida Research Foundation, Inc. Partitioning methods for dynamic router tables
US20040018237A1 (en) * 2002-05-31 2004-01-29 Perricone Nicholas V. Topical drug delivery using phosphatidylcholine
US7058725B2 (en) * 2002-06-13 2006-06-06 Intel Corporation Method and apparatus to perform network routing using multiple length trie blocks
US7257576B2 (en) * 2002-06-21 2007-08-14 Microsoft Corporation Method and system for a pattern matching engine
US7444318B2 (en) * 2002-07-03 2008-10-28 University Of Florida Research Foundation, Inc. Prefix partitioning methods for dynamic router tables
US7260096B2 (en) * 2002-07-09 2007-08-21 International Business Machines Corporation Method and router for forwarding internet data packets
US7039018B2 (en) * 2002-07-17 2006-05-02 Intel Corporation Technique to improve network routing using best-match and exact-match techniques
JP3850773B2 (ja) * 2002-08-23 2006-11-29 富士通株式会社 出力ポート判定装置
US6826627B2 (en) * 2002-09-03 2004-11-30 Burnbag, Ltd. Data transformation architecture
US20040146052A1 (en) * 2003-01-27 2004-07-29 Tanli Chang Apparatus and method for address filtering in a multi-host network interface
US20060294588A1 (en) 2005-06-24 2006-12-28 International Business Machines Corporation System, method and program for identifying and preventing malicious intrusions
DE102006013763A1 (de) * 2006-03-24 2007-09-27 Robert Bosch Gmbh Verfahren zum Betreiben einer Speichereinrichtung
CN110837583B (zh) * 2019-09-27 2022-10-28 西安空间无线电技术研究所 一种基于数据链消息活跃度的快速查找方法、系统及介质
US11886324B2 (en) * 2021-12-17 2024-01-30 Doble Engineering Company Relay and metering test instrument

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL7810943A (nl) * 1978-11-03 1980-05-07 Philips Nv Lerende inrichting voor het herkennen van patronen van digitale signalen.
GB2173026B (en) * 1985-03-25 1988-07-13 Mcdonald Richard Albert Real time video pattern recognition
US4799189A (en) * 1985-07-26 1989-01-17 Motorola, Inc. Resynthesized digital radio frequency memory

Also Published As

Publication number Publication date
US5761440A (en) 1998-06-02

Similar Documents

Publication Publication Date Title
JPH0897844A (ja) データ通路の設定方法及び装置
US7924833B2 (en) Packet transfer unit
US7469243B2 (en) Method and device for searching fixed length data
US6862287B2 (en) Method and apparatus for a four-way hash table
US7797348B2 (en) Data structure and system for IP address lookup and IP address lookup system
US5881242A (en) Method and system of parsing frame headers for routing data frames within a computer network
KR19990024040A (ko) 네트워크 라우터에 사용하기 위한 마스크 기능을 갖는 연상 메모리
JPH09307581A (ja) ブリッジ装置
US6490279B1 (en) Fast data base research and learning apparatus
US6570866B1 (en) High-speed flexible longest match retrieval
US6178414B1 (en) Method and apparatus for updating and searching an ordered list of values stored within a memory resource
JP2001326679A (ja) 情報装置、テーブル検索装置、テーブル検索方法、及び記録媒体
US20140358886A1 (en) Internal search engines architecture
US6820186B2 (en) System and method for building packets
US6314099B1 (en) Address match determining device, communication control system, and address match determining method
EP0520116A1 (en) Method and apparatus for performing pattern search functions
JPH0556079A (ja) 受信装置のバツフア管理方法
WO2004054186A1 (ja) データ中継装置、連想メモリデバイス、および連想メモリデバイス利用情報検索方法
EP0365745A2 (en) A method for detecting and avoiding erroneous decombining in combining networks for parallel computing systems
JPH0696124A (ja) 情報検索装置
JPH0832613A (ja) 経路選択情報の検索装置
US7103709B2 (en) Retrieving device and method, recording medium, and program for enabling a plurality of associative memories for retrieval and auto-storing
JPH11220483A (ja) 経路情報検索方式
JP3547625B2 (ja) データ検索装置およびデータ検索方法
KR100479589B1 (ko) Cam 구성 장치