JP2000156713A - ネットワ―クスイッチング装置におけるコンテントベ―スの転送/フィルタリング方法 - Google Patents

ネットワ―クスイッチング装置におけるコンテントベ―スの転送/フィルタリング方法

Info

Publication number
JP2000156713A
JP2000156713A JP11282950A JP28295099A JP2000156713A JP 2000156713 A JP2000156713 A JP 2000156713A JP 11282950 A JP11282950 A JP 11282950A JP 28295099 A JP28295099 A JP 28295099A JP 2000156713 A JP2000156713 A JP 2000156713A
Authority
JP
Japan
Prior art keywords
frame
filter
value
result
switching device
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.)
Withdrawn
Application number
JP11282950A
Other languages
English (en)
Inventor
Jayansenan Sundra Ganesh
ジヤイアセナン・サンダラ・ガネーシユ
Timothy S Michels
テイモシー・スコツト・マイケルズ
James E Cathey
ジエイムズ・イー・キヤシー
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.)
PAKETTO ENGINES Inc
Original Assignee
PAKETTO ENGINES Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22602752&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2000156713(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by PAKETTO ENGINES Inc filed Critical PAKETTO ENGINES Inc
Publication of JP2000156713A publication Critical patent/JP2000156713A/ja
Withdrawn 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/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/627Queue scheduling characterised by scheduling criteria for service slots or service orders policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Oscillators With Electromechanical Resonators (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

(57)【要約】 【課題】 スイッチング装置の送信ポートで受け取られ
たフレームを宛先ポートへ通信するためにフレームを処
理する方法を提供する。 【解決手段】 この方法は、オフセット値、コンパレー
タ値及び期待の値の格納ステップと、フレーム位置の情
報とコンパレータ値との比較ステップ及びフレーム処理
ステップを含む。フレーム処理ステップは、フレームの
通信又はフレーム優先順位設定ステップを含むことがで
きる。オフセット値及びコンパレータ値は、オフセット
値の測定開始点たるアンカー値及びフレーム情報をマス
クするマスク値を含むフィルタの一部であってよい。こ
の方法は、フィルタ結果の結合ステップ及びフレーム処
理ステップを含むことができる。フィルタ結果の結合ス
テップは、該結果の論理的な結合ステップを含んでよ
い。更に、この方法は、結果のマージ・ステップ及びフ
レーム処理ステップを含むことができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般的にはネットワ
ーク・スイッチング装置に関する。更に具体的には、本
発明はフレームのコンテントに基づきスイッチング装置
を介してデータ・パケット(フレーム)を転送又はフィ
ルタリングする方法及び手段に関する。
【0002】
【従来の技術】ローカル・エリア・ネットワーク(LA
N)は、複数のコンピュータを直接に接続して、それら
コンピュータが情報を相互に直接交換することができる
ようにするシステムである。LANは、事務所、建物、
又は小さなキャンパスのような狭い領域でコンピュータ
を接続するように設計されるので局所的なものと考えら
れる。LANは、ケーブル、リピータ、スイッチ、ルー
タ、ネットワーク・インタフェース、ノード(例えば、
コンピュータ)、及び通信プロトコルのような幾つかの
構成要素から構成されるので、システムと考えられる。
イーサネットはそのようなプロトコルの1つである。情
報は、データ・パケットの中で搬送されるフレームとし
て、LANを介して通信される(「フレーム」と「デー
タ・パケット」は技術的には異なるが、情報を搬送する
データを表すためにしばしば互換的に使用される。)。
【0003】LANスイッチ(又は、より一般的には、
パケット・スイッチ)は、一般的には、それが受け取る
個々のパケットの中で発見される宛先アドレス及び/又
は他の情報に基づいて異なったポートの間でデータを転
送するマルチポート装置であると定義される。スイッチ
を使用して、LANをセグメントに区分し、異なったL
ANを接続し、又はLANの衝突する直径を拡張するこ
とができる。スイッチは、ネットワークの直径を増大さ
せる能力を有するので、イーサネット・ベースのLAN
には特に重要である。パケット・スイッチに関する追加
の背景情報は、1997年の「高速イーサネット」(F
ast Ethernet by L.Quinn e
t al.)、1996年の「コンピュータ・ネットワ
ークス」(Computer Networks、3r
d Ed.by A.Tannenbaum)、及び1
997年の「LANスイッチを用いた高速ネットワーキ
ング」(High−Speed Networking
with LAN Switches by G.H
eld)のような多数の参考文献で見ることができる。
これらのすべては、参照してここに組み込まれる。
【0004】ネットワーク・ルーティング/スイッチン
グ装置の内部には、入ポートで受け取られた個々のフレ
ームを適切な出ポートへ転送するため、それらのフレー
ムがアドレス・ルックアップ・ロジックを通過するよう
に導かれるパスが存在する。従来技術では、このパスは
フレーム内に存在するソース・アドレス及び/又は宛先
アドレスのフィールドに基づいてフレームをルーティン
グ又はスイッチングするために使用される。1つの例
は、フレームの宛先MACアドレスに基づいてフレーム
をブリッジすることである。他の例は、フレームの宛先
IPアドレスに基づいてフレームをルーティングするこ
とである。
【0005】しかし、宛先アドレスではなく、そのデー
タのようなコンテントの一部分又は全部に基づいて、フ
レームをルーティングすることが望ましい。そのために
は、フレームのコンテントを検査し評価することが必要
である。しかし、コンテントに基づいてフレームをルー
ティングする従来技術のアプローチは、あまりに遅く且
つ限られた範囲のものであった。
【0006】
【発明が解決しようとする課題】従って、本発明の目的
は、宛先アドレスに限定することなく、フレームの或る
部分又は各種の部分のコンテントから引き出された情報
に基づいてフレームをルーティングし、スイッチング
し、又はフィルタリングする改善された方法及び手段を
提供することである。
【0007】
【課題を解決するための手段】本発明に従えば、スイッ
チング装置の送信ポートで受け取られたフレームを宛先
ポートへ通信するためにフレームを処理する方法は、オ
フセット値及びコンパレータ値をスイッチング装置に格
納するステップと、オフセット値によって決定されるフ
レーム内の位置に存在する情報とコンパレータ値とを比
較してフィルタ結果を得るステップと、その結果でフレ
ームを処理するステップとを含む。フレームを処理する
ステップは、フレームを宛先ポートへ通信するかフレー
ムの優先順位を設定するステップを含むことができる。
オフセット値及びコンパレータ値は、そこからオフセッ
ト値が測定されるアンカー値及びコンパレータ値との比
較の前にフレーム情報をマスクするマスク値を含む、フ
ィルタの要素であってよい。
【0008】スイッチング装置の中にオフセット値及び
コンパレータ値の複数のセットが存在する場合、この方
法は、グループ結果を得るために前記結果を結合し、フ
レームを処理するためにグループ結果を使用するステッ
プを含むことができる。前記結果を結合するステップ
は、それらを論理的に結合するステップを含んでよい。
【0009】更に、この方法は、結果を、探索エンジン
及び関連メモリのような他のソースからのフレーム転送
情報とマージするステップと、フレームを処理するため
にマージされた結果を使用するステップとを含むことが
できる。
【0010】本発明に従った装置は、これらの方法を実
行する。そのような装置は、オフセット値及びコンパレ
ータ値をスイッチング装置に格納する手段、フィルタの
オフセット値によって決定されるフレーム内の位置に存
在する情報とコンパレータ値とを比較する手段、及びそ
の結果でフレームを処理する手段のような構成要素を含
む。
【0011】本発明のこれら及び他の態様、特徴、及び
利点は、添付の図面と組み合わせて以下の例示的実施形
態で説明される。
【0012】
【発明の実施の形態】概説 以下の説明において、「ポリシー」(policy)
は、パケット・スイッチ内でフレームをフィルタリング
するフィルタに対応する。「ポリシー式」(polic
y−expression)は、フレームの受信に応答
して、どのようなアクションを取るかを決定するとき、
1つ又は複数のフィルタ結果を論理的に結合した結果に
対応する。
【0013】そのようにして引き出された情報は、「ポ
リシー式」をフレームに適用したときの結果に基づく。
ポリシー式とは、各種のポリシーの結果を変数として含
むブール式として定義される。ポリシーの例は「マッチ
する」、「マッチしない」などである。
【0014】ポリシーの表現 ポリシーは、次のように表される。
【0015】ポリシー:={期待,オフセット,長さ,
アンカー,マスク,コンパレータ}「期待」は、次のよ
うに表される。
【0016】期待:={マッチする|マッチしない|よ
り大きい|より小さい}「オフセット」は、フレーム内
の既定の「アンカー」ポイントの始まりからフレームの
中へのバイト・オフセット又はワード・オフセットであ
る。典型的なアンカー・ポイントは次のとおりである。
【0017】1)フレームの始まり 2)レイヤ2/レイヤ3又は他の任意のレイヤ・ヘッダ
の始まり 3)レイヤ2/レイヤ3又は他の任意のレイヤ・ヘッダ
の終わり 4)フレームの始まりからの固定バイト・オフセット 「長さ」は、照準のオフセット・ワードのワード長の測
定値である。
【0018】「マスク」は、前述した「オフセット」位
置に存在するフレームのコンテントとAND/OR/N
AND/NOR結合される値である。通常、マスクは、
ポリシーを適用するために、コンテントのバイトの中に
存在する各種の不要ビットを省略するために使用され
る。
【0019】「コンパレータ」(comparato
r)は、「期待」値の1つを引き出すために「マスク」
を適用した後の結果のコンテントのバイトと比較される
値である。もし期待の値がコンパレータとマッチすれ
ば、ポリシーは成功したのである。
【0020】ポリシー式 ポリシー式は、2つの要素、即ち式及び結果アクション
から構成される。
【0021】ポリシー式:={式,アクション} 「式」は、INVERT、AND、ORのような演算
子、及び各種の「ポリシー」を変数として使用するブー
ル/組み合わせ論理式である。例えば、以下に説明する
ように、INVERT、AND、及びORを使用して任
意の複数のポリシーを結合し、TRUE又はFALSE
条件を生じるブール式を形成することができる。
【0022】式の結果がTRUEであるとき、処理され
つつあるフレームへ結果アクションが適用される。取る
ことのできる結果アクションとしては種々のものがあ
る。その例は、フレームの優先順位を高くするか低くす
ること、フレームを特定のポートに転送すること、フレ
ームをフィルタリングすること、シグネチャでフレーム
を変更すること、及び/又はフレームの変更されていな
いコピーを他のポートに送ることである。これらの結果
は、オプションとして、従来技術によるルックアップの
結果とマージすることができる。
【0023】詳細な例 次の情報に基づいて、コンテントベースのルーティング
を実行したいものと仮定する。
【0024】もしフレームが、バイト・オフセット7の
下位ニブルに「8」を有するか、又は、オフセット14
に「9b」が存在し且つオフセット30に「50」が存
在しなければ、「ポートx」へフィルタリングする。
【0025】次のフレームについては、 00 01 01 67 39 03 48 56 7
2 87 a7 e8 3e fc 9b 1a dd
41 50 48 54 433D 5C 3A 4
D 4A 53 50 52 54 P1={マッチする,7,フレーム・スタート,0x0
F,0x08} P2={マッチする,15,フレーム・スタート,0x
FF,0x9b} P3={マッチしない,30,フレーム・スタート,0
xFF,0x50} ポリシー式は次のとおりである。
【0026】 {P1&{P2|P3}}=アクション(フィルタ) 上記の例で、P1は成功し(オフセット7は0x48の
バイト値を有し、0x0Fのマスクが適用されたとき、
それは0x08とマッチする)、P2は成功し、P3は
失敗する。P1及びP2は成功するから、上記のポリシ
ー式は成功し、従って「フィルタ」のアクションがフレ
ーム上で取られる。
【0027】上記の例は3つのポリシーを使用するだけ
であるが、この計画はポリシーの数又は組み合わせ論理
の範囲を小さい範囲へ制限するものではない。
【0028】上記の計画の1つの重要な態様は、この説
明された計画が完全にASICの中へプログラムされ、
従ってコンテントベースの転送/フィルタリングが、す
べてのフレームについて、ASICに直接又は間接に接
続されたマイクロプロセッサから中断されることなく、
ワイヤー速度で達成されることである。次に、そのよう
な1つの実施形態の詳細を更に詳しく説明する。
【0029】構造、機能、及び動作 ネットワークによって、複数の当事者は相互に通信する
ことができる。最も簡単な形式では、ネットワークは一
般的に伝送線及びスイッチング装置(例えば、ルータ、
スイッチ、スイッチング・ルータなど)を含む。伝送線
は信号(例えば、電気信号、光学信号など)を搬送し、
スイッチング装置は伝送線の間に一時的な接続を確立す
る中間ステーションである。例えば、電話網では、発呼
者の回線はスイッチング装置へ行き、そこで被呼者への
実際の接続が行われる。コンピュータ・ネットワークで
は、ルータのような装置がネットワーク上でメッセージ
を受け取り、そのメッセージを正しい宛先へ転送する。
コンピュータ・ネットワークは少数のコンピュータ、プ
リンタ、及び他の装置から構成されるローカル・エリア
・ネットワーク(LAN)のような小さなものから、広
大な地理的領域に分散された多くのコンピュータから構
成されるもの(例えば、インターネット)まである。
【0030】例示的なコンピュータ・ネットワーク10
が図1に示される。ネットワークは2つのローカル・セ
グメント12及び14、並びにリモート・ネットワーク
16への接続を含む。A〜Jとラベルを付されたノード
は、ローカル・セグメントに接続されたコンピュータを
表す。スイッチング装置20は3つのポート22〜24
を含み、セグメント12、14、及びリモート・ネット
ワーク16の間でネットワーク・トラフィックを交換す
る。ネットワーク16もスイッチング装置21のような
スイッチング装置を含むことができ、そのスイッチング
装置は他のセグメント(図示されていない)をネットワ
ークに接続する。スイッチング装置20によって、1つ
のセグメント上のノードは、他のセグメント上のノード
及び他のスイッチング装置へのノードと通信することが
できる。ノードは、ネットワーク・フレームの送信と受
信をノードに許すプロトコル(例えば、HTTP、TC
P/IP、SMBなど)を介して相互に通信することが
できる。(ネットワーク・フレームは宛先アドレス、ソ
ース・アドレス、及びデータ・フィールドを含む)。ス
イッチング装置20がノードからフレームを受け取ると
き、それは図2に示されるようなルックアップ・テーブ
ル26を探索することによって宛先アドレスを分析す
る。ルックアップ・テーブル26はネットワーク・アド
レス・フィールド及びポート・フィールドを有するテー
ブル・エントリを含む。宛先アドレスがルックアップ・
テーブル中のネットワーク・アドレスとマッチしたと
き、スイッチング装置20は、マッチしたネットワーク
・アドレスに対応するポート番号を得ることによって、
どのポートにフレームを転送するかを決定する。例え
ば、もしセグメント12上のノードAがセグメント14
上のノードHにメッセージを送るとすれば、スイッチン
グ装置20はノードAからメッセージを受け取り、応答
として、ルックアップ・テーブル26のネットワーク・
アドレス・フィールドにあるエントリを探索する。テー
ブル・エントリ28はHのネットワーク・アドレスを含
む。ネットワーク・アドレスHに対応するポート・フィ
ールド30は、フレームがポート2へ転送されるべきこ
とを示す。
【0031】スイッチング装置は、そのスイッチング装
置の特定の実施形態に依存して、各種の方法でルックア
ップ・テーブル用のネットワーク・アドレスを得ること
ができる。例えば、スイッチング装置はネットワーク・
トラフィックを詮索することによって、フレームがポー
ト上で受け取られたとき、フレームのソース・アドレス
がテーブルに存在するかどうかを決定し、もし存在しな
ければ、ソース・アドレス及び入ポートを含むエントリ
をテーブルに追加することができる。従って、スイッチ
ング装置は、ノードによって送信されたフレームからア
ドレス及びポート番号を「習得」すると言われる。ルッ
クアップ・テーブルを得るために、ルータのようなスイ
ッチング装置が使用する他の手法は、特殊のプロトコル
を介して他のスイッチング装置から得る方法である。従
って、ルータは各自のルックアップ・テーブルを補充す
るため、相互にネットワーク・アドレスを提供する。
【0032】従って、ネットワーク・フレームがスイッ
チで受け取られるとき、ソース・アドレスを「習得」し
宛先アドレスに転送するために、ソース・アドレス及び
宛先アドレスの双方をルックアップ・テーブルで探索し
なければならない。ルックアップ・テーブルを探索する
ために、スイッチ20内の探索エンジン(図示されてい
ない)はルックアップ・テーブル・エントリに逐次にア
クセスし、そのエントリをネットワーク・フレーム内の
宛先アドレスと比較する。宛先アドレスの探索が終了し
た後、第2の探索がソース・アドレスについて実行され
る。
【0033】図3はスイッチング装置50のポート及び
関連ロジックを示す。本発明に関連するものは、メモリ
58、コンテントベース転送ロジック60、一時パケッ
ト記憶装置62、パケット分析及びキー抽出ロジック6
4、探索エンジン68、マージ・ロジック70、及び転
送決定ロジック72である。スイッチング装置50に
は、多くのポート(図示されていない)が存在する。ポ
ートの数、及びそれらがスイッチング装置内でどのよう
に構成されるかは、実施形態によって異なり、本発明と
直接の関係はない。
【0034】ポートは、ネットワーク・ケーブル74を
介してスイッチング装置50をネットワーク(図示され
ていない)へ接続する。ネットワーク・ケーブルはネッ
トワークのタイプに依存して多様な形式(例えば、光フ
ァイバ、撚り対線、同軸ケーブルなど)を取ることがで
きる。TCP/IP、IPX/SPX、FDDI、AT
M、ETHERNET、GIGABIT ETHERN
ET、FAST ETHERNET、トークンリング、
SONET、100Base−TXなどの多様なネット
ワーク標準及びプロトコルを使用してよい。現在存在す
るか将来開発される他のネットワーク・プロトコル、標
準、及びネットワーク・ケーブルは本発明と共に使用さ
れてよい。ネットワーク・ケーブルはフレームをポート
へ通信し、ポートはそれらをパケット記憶装置62、探
索エンジン68、及び転送ロジック60へ通信する。
【0035】一時パケット記憶装置62は、ネットワー
ク・フレームを一時的に保持し、その間に、探索エンジ
ン内の他の構成要素は、後で更に説明するように、ネッ
トワーク・フレームをどこに転送するかを決定する。或
る場合には、パケットを全く転送しないように決定する
かも知れない。そのような場合、ネットワーク・フレー
ムは、ポート相互通信ロジックへ決して渡されない。ネ
ットワーク・フレームのサイズに依存して、一時パケッ
ト記憶装置62は、幾つかのネットワーク・フレームを
保持するか、代替的に、他のポートに転送されるときの
ネットワーク・フレームの一部分のみを保持してよい。
【0036】パケット分析及びキー抽出ロジック64
は、ネットワーク・フレームからソース・アドレス及び
宛先アドレスを抽出し、それらのアドレスを探索エンジ
ン68へ転送する。更に、パケット分析及びキー抽出ロ
ジック64は、ネットワーク・フレームと共に来る又は
ネットワーク・フレームのタイプに基づいて引き出され
る仮想LAN情報のような追加情報を探索エンジン68
へ渡すことができる。この追加情報は、キーを形成する
ためにソース・アドレス及び宛先アドレスへ付加され
る。キーは、特定のアプリケーションに依存して、任意
の所望の情報を含んでよいことは、当業者に認識される
であろう。例えば、キーは宛先アドレスのみを含むこと
も、ソース・アドレス及び宛先アドレスのみを含むこと
も、ソース・アドレス及び宛先アドレス並びに追加情報
を含むことも可能である。分かりやすくするため、以下
の説明では、キーはソース・アドレス及び宛先アドレス
であるとして説明する。
【0037】探索エンジン68はメモリ58へ結合され
る。メモリはルックアップ・テーブルを格納し、探索エ
ンジンは媒体インタフェース56から受け取られたネッ
トワーク・フレームを分析するためにルックアップ・テ
ーブルを使用する。管理プロセッサ(図示されていな
い)が、探索エンジン68へ結合され、メモリ58内の
ルックアップ・テーブルを維持する。具体的には、管理
プロセッサは、探索エンジン68が探索を効率的且つ正
確に実行するために、古いテーブル・エントリを削除
し、新しいテーブル・エントリを挿入し、ソート順序に
テーブルを維持するように、探索エンジンに命令するこ
とができる。
【0038】探索エンジン68が探索を終了した後、そ
の結果は転送決定ロジック72へ渡される。転送決定ロ
ジック72は、結果を調べ、規則の所定のセットを適用
して、ネットワーク・フレームが転送されるべきか否
か、及びそれがどのポートに転送されるべきかを決定す
る。更に、転送決定ロジックはネットワーク・フレーム
の優先順位レベルを調べることができる。通常、高い優
先順位のフレームは、低い優先順位のフレームの前にス
イッチング装置50によって転送される。
【0039】更に、入フレームはまた、本発明に従って
コンテントベース転送ロジック60によっても評価され
る。その評価に基づいて、フレームは、その優先順位を
変更されたり、他のポートへ再転送されるなど多くの方
法で処理されることができる。探索エンジン68とは異
なり、転送ロジック60は宛先アドレス以外のフレーム
コンテントを見ることができる。評価の結果はマージ・
ロジック70へ渡される。ロジック70は、転送ロジッ
ク60からの結果を、探索エンジン68からの結果と、
命令されたようにマージする。例えば、探索エンジン6
8によって決定された優先順位が、転送ロジック70に
よって決定された優先順位で上書きされるといった多く
の方法で、マージしたり又はマージしなかったりする。
【0040】スイッチ・ファブリック制御78は、ネッ
トワーク・フレームがスイッチ・ファブリックを通過す
るとき、それらフレームを制御する。スイッチ・ファブ
リックがクロスバー・スイッチである場合、通常、スイ
ッチ・ファブリック制御はスケジューラと呼ばれる。ス
ケジューラはクロスバー・スイッチ内で接続を確立し、
1つのポート上の探索エンジンが、他のポート上の探索
エンジンへ、ネットワーク・フレームを直接渡すことが
できるようにする。スイッチ・ファブリックがメモリで
ある場合、スイッチ・ファブリック制御は、メモリのど
こにフレームを格納すべきかを受信側の探索エンジンに
知らせる。フレームがメモリに格納された後、スイッチ
・ファブリック制御は送信側のポートに信号を送って、
ネットワーク・フレームの送信準備ができたことを知ら
せ、フレームが置かれているメモリ位置のアドレスを与
える。更に、スイッチ・ファブリック制御は優先順位情
報を送信側のポートへ与えることができる。
【0041】図4は、コンテントベース転送ロジック7
0の実施形態のブロック図である。ロジックは、ウィン
ドウ80又はフレームが通過するときのフレームのコン
テントを見るための等価手段を含む。ウィンドウは、そ
の上に幾つかのアンカー・ポイントA0、A1、A2な
どをマークしており、これらアンカー・ポイントは、パ
ケット分析ブロック64によってロジックへ通信され
る。アクティブ・グループ内のフィルタ81(ポリシ
ー)は、ウィンドウ80をモニタして、フィルタ・オフ
セット値によって決定されるフレーム中の位置(問題と
しているフレーム・ワード)に存在する情報を検出す
る。図4において、例えば、P1はアンカーA2からの
オフセット187で始まるフレーム・ワードを捕捉し、
P2はアンカーA1からのオフセット17で始まるフレ
ーム・ワードを捕捉し、P3はアンカーA0からのオフ
セット213で始まるフレーム・ワードを捕捉し、P4
はアンカーA0からのオフセット53で始まるフレーム
・ワードを捕捉する。
【0042】次に、フィルタは、それらのセッティング
に依存して結果を発生し、それらの結果を式82へ渡
す。式82は所与の方法でそれらを結合し、1つの結果
を発生する。その結果は、フレームの優先順位を変更し
たり、フレームの宛先を付加又は変更するなど、フレー
ムを処理するために取られるアクションである。
【0043】図5は、図4のP1のようなフィルタ81
のブロック図である。フィルタ・セッティング90は、
フィルタが、その期待、オフセット、アンカー、マス
ク、及びコンパレータのために、レジスタ又は他のソー
スから受け取る値を表す。フィルタは、アンカー及びオ
フセットから、フレーム内のどのワードに関心があるか
を決定し(加算器92)、このワードをフレーム内で探
す。次に、検索されたワードは、コンパランドと比較さ
れる(比較器96)データを与えるためにマスク値とA
ND結合される(AND回路94)。比較結果は、マッ
チすれば論理1であり、マッチしなければ論理0である
期待の値を形成する。マッチしないことが望まれるなら
ば、コンパレータ出力は反転され(インバータ98)、
従ってマッチしないことが論理1を発生する。
【0044】図4及び図7〜図9を参照すると、各種の
グループに入れるためにフィルタをどのように選択する
か、及びフィルタ結果に基づいてアクションを取るため
に式82をどのように構成できるかが分かる。
【0045】図6A及び図6Bは、転送決定ロジックの
結果を探索エンジン68の結果とマージするマージ・ロ
ジック70の具体的な形式を示すと共に説明している。
【0046】例示された実施形態において、コンテント
ベース転送ロジックを形成する64のオフセット/マス
ク転送フィルタがアプリケーション特定集積回路(AS
IC)に実装される。各フィルタは、フレームの最初の
256バイトのような所望の数のバイトの中の又は任意
のL3ペイロードの中の任意のビット境界に置かれた6
4ビットワードとマッチングする能力を保証する。この
ワードの任意のビットをマスク・オフすることができ、
従って、残りのビットのみがマッチング結果を決定す
る。それを実行するために、各フィルタは、フィルタ配
置用のオフセット・カウント値、コンパランド・ワー
ド、マスク・ワード、評価されるべきフレーム・ワード
の長さ、ポート感度イネーブルイネーブルビット、及び
プロトコル・セレクタを有する。
【0047】オフセット・マスク・フィルタ(OMF)
は、そのオフセット・カウント値によって指示されたワ
ードの数を、生(L2)フレーム又はそのL3ペイロー
ド(もしあれば)の中へインデックスすることによって
働く。一度、このスタート・ポイントに達すると、フィ
ルタは、フレームの長さの定義されたワードとそのワー
ドのコンパランド及びマスク値とを比較する。もしマス
クされていないビットのすべてがマッチすれば、フィル
タ・マッチが生じる。(入力ポート番号及び/又はプロ
トコルに基づいた追加の限定が可能である。) 更に、64の単一フィルタは、各セットが1つから8つ
までのフィルタを含む16のセットにグループ分けされ
る。これらの8つのフィルタは、64の任意のものから
選択することができ、1つのフィルタが、2つ以上のグ
ループによって共用されてよい。フィルタの各グループ
は、制御フィールド及びそれに関連づけられた転送ベク
トルを有する。制御フィールドは、そのフィルタの各々
のためにイネーブルビットを有する。フィルタが機能抑
止されたとき、そのマッチング結果は失敗へ強制され
る。別個のフィルタ単位反転ビットによって、各フィル
タからの結果は不変のまま又は反転されて渡されること
ができる。フィルタ・グループへの8つの入力の1つの
線図が、図7に示される。
【0048】8つの論理制御ビットを含むグループは、
フィルタの結果がどのように結合されるかを決定する。
第1のビットは、フィルタ0の結果(F0)がF1とA
ND結合されるかOR結合されるかを決定する。第2、
第3、及び第4のビットは、同じようにF3へのF2の
ゲート、F5へのF4のゲート、F7へのF6のゲート
を制御する。第5、第6、及び第7のビットは、これら
4つの結果と一緒にゲートを制御する。第8のビットは
グループ・モード(後に説明する)を選択する。基本的
な論理制御シーケンスは次の式に示される。+/*は、
OR/ANDであり、添え字は、制御ビットの位置を示
す。
【0049】グループ結果=((F0+/*F1)+
/*(F2+/*F3))+/*((F4+/*
F5)+/*(F6+/*F7)) 8番目の論理ビット(ビット7)が0であるときアクテ
ィブである基本的フィルタ動作マップは、図8に示され
る。
【0050】これは幾分柔軟性に欠けるから(1つのフ
ィルタを4つまでのOR結合されたフィルタとAND結
合することができるにすぎず、3つまでのフィルタが無
駄になる)、図9に示されるように、8番目の論理ビッ
トが存在するとき、2つの変形モードが選択される。そ
れによって、6つ(又は7つ)のOR結合された項が2
つ(又は1つ)の項とAND結合されることができる。
【0051】グループ結果ロジックが真の条件を発生す
るとき、グループ・マッチが生じる。グループ・マッチ
はグループの転送ベクトルと共にFARモジュールへ報
告される。この転送ベクトルは、フレームを転送するの
に必要なデータを含み、このデータは、ポート・グルー
プ番号とそのイネーブルビット、VLAN IDとその
イネーブルビット、優先順位とそのイネーブルビット、
スニフ・ビットとイネーブルビット、及びカウンタ・イ
ンデックスとそのイネーブルビットを含む。FARモジ
ュールがグループ・マッチの通知を受け取ったとき、そ
れはその通常の転送決定及びデータを無効にし、それを
グループ転送ベクトルのイネーブル部分と置換する。複
数のグループ・マッチが生じたとき、ロジック60は、
最低番号のグループがイネーブルフィールドの優先権を
取る単純な優先順位の計画に基づいて、各データ・フィ
ールドを別々に調停する。衝突する場合は、グループ0
が常に勝ち、グループ15は常に負ける。もしフレーム
が、そのPグループが廃棄されるPグループであったか
らではなくブロードキャスト限度カウンタ以外のロジッ
ク60の部分によって廃棄とマークされていれば、OM
Fはその決定を変更することはできない。言い換えれ
ば、OMFマッチはブロードキャスト限度カウンタの動
作を妨害し、廃棄されるPグループからフレームをどこ
かへ再転送することができるが、そうでなければ廃棄さ
れたフレームはそのようにして残る。
【0052】フィルタ及びグループは共通のレジスタ・
セットを介してプログラムされる。特定のフィルタは、
その6ビット・インデックス値をフィルタ/グループ選
択レジスタへ書き込むことによって選択される。一度、
フィルタ・インデックス値がセットされると、選択され
たフィルタに対するレジスタのすべては、読み出し/書
き込み動作に使用でき、フィルタはどのようなフレーム
・データともマッチングしない。フィルタリングを開始
するためには、それを選択解除しなければならない。
【0053】特定のグループは、その4ビット・インデ
ックス値をフィルタ/グループ選択レジスタへ書き込む
ことによって選択される。一度、グループ・インデック
ス値がセットされると、選択されたグループに対するレ
ジスタのすべては、読み出し/書き込み動作に利用する
ことができる。
【0054】0x130フィルタ/グループ選択(V2
ASIC)−[R/W] このレジスタは、ロジック
60の64のフィルタの1つ及びその16のフィルタ・
グループの1つを変更のために選択する。選択されたフ
ィルタ及びグループのレジスタは、共用されたオフセッ
ト・マスク・レジスタ・アドレス空間0x131〜0x
13Bを介して利用可能となる。更に、ここで、チップ
・レベル検査のために、自己テスト機能を利用すること
ができる。
【0055】
【表1】 3:0 グループ選択。グループ制御レジスタ、マルチ
プレクサ選択レジスタ、及び転送ベクトル・レジスタを
介して、16のフィルタ・グループの1つを編集用に選
択する。
【0056】21:16 フィルタ選択。オフセット・
カウント及び制御レジスタ、コンパランド0〜2レジス
タ、及びマスク0〜2レジスタを介して、64のフィル
タの1つを編集用に選択する。フィルタが編集用に選択
されている間、それはフィルタとして機能しない。
【0057】22 フィルタ選択解除。フィルタが選択
されている間、そのフィルタはマッチングを生じないの
で、フィルタを選択しない方法が必要である。このビッ
トをセットすることによって、それが可能になる。
【0058】31:29 BIST。組み込み自己テス
ト。このフィールドに3’b100を書き込むと、51
2クロック自己テスト・サイクルをトリガする。ビット
29は、このサイクルの終わりにセットされ、もしテス
トが失敗すると、ビット30がセットされる。テストが
完了した後、正常動作を再開するために、3’b000
を書き込まなければならない。テストの間、正常なフィ
ルタ動作は中断され、OMFレジスタのコンテントの大
部分は破壊される。
【0059】0x131フィルタ・グループ制御(V2
ASIC)−[R/W] このレジスタは、現在選択
されている(0x130)フィルタ・グループの制御レ
ジスタへのアクセスを提供する。
【0060】
【表2】 7:0 フィルタ・イネーブル。単一のビットがグルー
プ内の8つのフィルタの各々をイネーブルする。ビット
0はフィルタ0をイネーブルし、ビット1はフィルタ1
をイネーブルし、以下同様である。イネーブルビットが
セットされたとき、そのフィルタの結果は、フレーム・
データへのコンパランド及びマスクの比較に基づく。イ
ネーブルビットがクリアされたとき、フィルタ結果は、
比較の失敗を示す低レベルに強制される。
【0061】15:8 反転イネーブル。グループ内の
8つのフィルタの各々に対する反転制御ビット。ビット
8はフィルタ0を反転し、ビット9はフィルタ1を反転
し、以下同様である。反転ビットがセットされたとき、
そのフィルタの結果は、それがグループ・マッチ・ロジ
ックへ与えられる前に反転される。反転ビットがクリア
されたとき、フィルタ結果は不変のままグループ・マッ
チ・ロジックへ渡される。
【0062】23:16 論理制御。これらの8つの論
理制御ビットは、グループのマッチング結果を決定する
ために、グループ内の8つのフィルタ結果がどのように
一緒にゲートで制御されるかを決定する。機能について
は、前記の線図を参照されたい。線図では、ビット16
は0であり、ビット17は1であり、以下同様であるこ
とに注意されたい。論理制御ビットの低レベルはAND
ゲート機能を選択し、高レベルはORゲート機能を選択
する。ビット23は特殊であり、チャートに従って代替
の論理グループを選択する。
【0063】24 カウンタ・インデックス・イネーブ
ル。単一ビットがCIDXフィールドのために可能であ
る。高レベルであるとき、フィルタ・グループの転送ベ
クトルにおけるCIDX値によって、対応するSA C
IDXカウンタが、このグループによってマッチングさ
れた各フレームのために増加される。低レベルであると
き、SA CIDXカウンタは、そのようなフレームに
よって影響を受けない。どちらの場合も、OMF転送ベ
クトルがフレームへ適用されるとき、DA CIDXカ
ウンタは影響を受けない。
【0064】25 L3編集機能抑止。このビットは、
セットされると、もしオフセット・マスク・フィルタ・
グループがマッチすれば、レイヤ3フレーム編集(ルー
ティングの必要部分)が実行されないようにする。ブロ
ックされる変更は、MACSA置換、IP TTL/ホ
ップ・カウント変更、及びIPXホップ・カウント変更
である。クリアされると、オフセット・マスク・フィル
タ・グループは正常に機能し、レイヤ3フレーム編集が
許される。
【0065】26 スニフ機能抑止。このビットは、セ
ットされたとき、オフセット・マスク・フィルタ・グル
ープの転送ベクトルがスニフ・ビットを無効にしないよ
うにする。クリアされたとき、オフセット・マスク・フ
ィルタ・グループは正常に機能し、フレームの転送ベク
トルのこの部分を無効にする。
【0066】27 Pグループ機能抑止。このビット
は、セットされたとき、オフセット・マスク・フィルタ
・グループの転送ベクトルが宛先ポート・グループを無
効にしないようにする。クリアされたとき、オフセット
・マスク・フィルタ・グループは正常に機能し、フレー
ムの転送ベクトルのこの部分を無効にする。更に、この
無効は、OMFビットをセットし、SPMヘッダ内のあ
ふれ及びCPUビットをクリアし、ブロードキャスト限
度を機能抑止する。
【0067】28 VLAN機能抑止。このビットは、
セットされたとき、オフセット・マスク・フィルタ・グ
ループの転送ベクトルがVLAN IDを無効にしない
ようにする。クリアされたとき、オフセット・マスク・
フィルタ・グループは正常に機能し、フレームの転送ベ
クトルのこの部分を無効にする。
【0068】29 優先順位機能抑止。このビットは、
セットされたとき、オフセット・マスク・フィルタ・グ
ループの転送ベクトルがフレームの優先順位を無効にし
ないようにする。クリアされたとき、オフセット・マス
ク・フィルタ・グループは正常に機能し、フレームの転
送ベクトルのこの部分を無効にする。
【0069】30 Q。このビットは、セットされたと
き、もしオフセット・マスク・フィルタ・グループがマ
ッチすれば、転送決定ロジック内のQビットをセットす
る。これはIPフレームの優先フィールドを抽出すると
共に内部優先順位へ変換し、その元の優先順位を無効に
する。レイヤ3のIPフレームについては、もしQがセ
ットされ、優先順位機能抑止(ビット29)がクリアさ
れていれば、フレームの優先順位が変換され、フレーム
のIP優先フィールドと置換されるが、それは 1)L3編集機能抑止ビットがセットされておらず、
2)これが無効バージョン又はヘッダ拡張を有するIP
v4フレームでないことを条件とする。
【0070】31 予約されている。
【0071】0x132グループ・マルチプレクサ選択
0(V2 ASIC)−[R/W]このレジスタは現在
選択されている(0x130)フィルタ・グループのマ
ルチプレクサ選択レジスタの半分へのアクセスを提供す
る。(注意:16グループをチップへ詰め込む必要があ
る内部実装のために、このレジスタへの書き込みはグル
ープ・マルチプレクサ選択1へも書き込む。常に双方の
レジスタへ0、1の順序で書き込むのであれば、これは
問題にならない。)
【0072】
【表3】 5:0 F0セレクタ。64のフィルタのどれがグルー
プのF0になるかを選択する。
【0073】11:6 F1セレクタ。64のフィルタ
のどれがグループのF1になるかを選択する。
【0074】17:12 F2セレクタ。64のフィル
タのどれがグループのF2になるかを選択する。
【0075】23:18 F3セレクタ。64のフィル
タのどれがグループのF3になるかを選択する。
【0076】31:24 予約されている。
【0077】0x133グループ・マルチプレクサ選択
1(V2 ASIC)−[R/W]このレジスタは現在
選択されている(0x130)フィルタ・グループのマ
ルチプレクサ選択レジスタの半分へのアクセスを提供す
る。
【0078】
【表4】 5:0 F4セレクタ。64のフィルタのどれがグルー
プのF4になるかを選択する。
【0079】11:6 F5セレクタ。64のフィルタ
のどれがグループのF5になるかを選択する。
【0080】17:12 F6セレクタ。64のフィル
タのどれがグループのF6になるかを選択する。
【0081】23:18 F7セレクタ。64のフィル
タのどれがグループのF7になるかを選択する。
【0082】31:24 F0〜F7の結果(読み出し
専用)。テスト目的のため、グループ内の8つのフィル
タの単一ビット・マッチ状況がここで利用できる。F0
はビット24にあり、F1はビット25にあり、以下同
様である。状況は、次のフレームが処理されるまで有効
である。
【0083】0x134オフセット・マスク転送ベクト
ル(V2 ASIC)−[R/W]このレジスタは現在
選択されている(0x130)フィルタ・グループの転
送ベクトル・レジスタへのアクセスを提供する。
【0084】
【表5】 4:0 カウンタ・インデックス。もしインデックス・
カウンタが、このグループのためにイネーブルされてい
れば、どのSAインデックス・カウンタが増加されるべ
きかを示す5ビットのインデックス。
【0085】5 S2。フレームがスニフ・リソース2
へ送られるべきことを示す単一ビット。
【0086】6 S1。フレームがスニフ・リソース1
へ送られるべきことを示す単一ビット。
【0087】16:7 ポート・グループ。受信通知メ
ッセージ内で使用される10ビットの転送ポート・グル
ープ。もしこのフィールドが、廃棄ポート・グループと
マッチすれば、S1又はS2がセットされていない限り
フレームはドロップされることに注意されたい。
【0088】28:17 VLAN ID。フレームを
転送するときに使用される12ビットのVLAN ID
番号。この番号はすべてのフレームのためにSPMヘッ
ダに置かれる。タグ付けされたフレームについては、こ
の値はフレームのタグ内のVLAN番号も置換する。
【0089】31:29 優先順位。フレームを転送す
るために使用される3ビットの優先順位値。この値はS
PMヘッダに置かれ、タグ付けされたフレームについて
は、それはフレームのタグ内の優先順位も置換する。
【0090】0x135オフセット・カウント及び制御
(V2 ASIC)−[R/W] このレジスタは、現在選択されている(x130)フィ
ルタのオフセット・カウント・レジスタ、プロトコル・
レジスタ、及びポート感度レジスタへのアクセスを提供
する。6ビット・オフセット・カウント値は、このフィ
ルタの比較ロジックのためにスタート・ポイントを確立
する、そのフレーム又はそのL3ペイロード・データの
いずれかの先頭からオフセットされた4バイト・ワード
である。
【0091】
【表6】 5:0 オフセット。6ビット・オフセット・カウント
値は、このフィルタの比較ロジックのためにスタート・
ポイントを確立する、そのフレームの先頭又はL3ペイ
ロードの先頭からオフセットされた4バイト・ワードで
ある。もし3つのすべてのコンパランド・ワードが使用
される前に、フレームの最後のワード(FCSのすべて
又は一部分を含む)又は64番目のワードに達すると、
フレームはマッチングしない。フレームが完全に受け取
られるまで、ロジック60はそれを必ず保持する必要は
ないので、256バイトを越えてフレームをマッチング
することは不可能である。
【0092】15:6 予約されている。
【0093】16 ポート感度。もしこのビットがセッ
トされていれば、コンパランド・ワード2及びマスク・
ワード2の双方の低順位5ビットは、フィルタリング目
的のためには無視され、その代わりに10のポート・マ
ッチ・ビットとして使用される。もしフレームが入って
きたポートに対応するポート・マッチ・ビットがセット
されていれば、フィルタはマッチングすることができ
る。もしクリアされていれば、フィルタはマッチングす
ることができない。
【0094】20:17 プロトコル。この4ビット値
は、フィルタがフレーム(レイヤ2)の初めからのデー
タ、又はフレームのレイヤ3部分の初めからのデータと
マッチするかどうかを決定する。もしレイヤ3が選択さ
れると、フレームの検出されたプロトコルは、フィルタ
がマッチングするためには、このプロトコル値とマッチ
しなければならない。
【0095】
【表7】 カプセル化認識のタイプは、PIDモジュール(LLC
又はSNAP)の中で機能抑止されているかも知れない
が、フィルタは依然としてカプセル化データに続くL3
データをマッチングすることができる。しかし、これら
の場合、プロトコルは「その他」になる。OMFは、ロ
ジック60のできるだけ多くの他のロジックから意図的
に切り離され、従って、それは「パッチ・キット」とし
て使用されるかも知れない。
【0096】31:21 予約されている。
【0097】0x136フィルタ・コンパランド・ワー
ド0(V2 ASIC)−[R/W] このレジスタ
は、現在選択されている(x130)フィルタのコンパ
ランド・ワード0レジスタへのアクセスを提供する。
(注意:64のフィルタをチップへ詰め込む必要がある
内部実装のために、このレジスタへの書き込みはコンパ
ランド・ワード1及びコンパランド・ワード2へも書き
込む。常に3つのすべてのレジスタへ0、1、2の順序
で書き込むのであれば、これは問題にならない。)この
ワードは、「オフセット・カウント」の位置に置かれた
フレーム・ワードと比較される。この比較の結果は、マ
スク・ワード0によって限定される。結果がマッチしな
いことは、このフレーム上のこのフィルタについての
「失敗したマッチング状況」となる。
【0098】
【表8】 0x137フィルタ・コンパランド・ワード1(V2
ASIC)−[R/W] このレジスタは、現在選択さ
れている(x130)フィルタのコンパランド・ワード
1レジスタへのアクセスを提供する。(注意:64のフ
ィルタをチップへ詰め込む必要がある内部実装のため
に、このレジスタへの書き込みはコンパランド・ワード
2へも書き込む。常に3つのすべてのレジスタへ0、
1、2の順序で書き込むのであれば、これは問題になら
ない。)このワードは「オフセット・カウント+1」の
位置に置かれたフレーム・ワードと比較される。この比
較の結果は、マスク・ワード1によって限定される。結
果のマッチしないことは、このフレーム上のこのフィル
タについての「失敗した状況」となる。
【0099】
【表9】 0x138フィルタ・コンパランド・ワード2(V2
ASIC)−[R/W] このレジスタは、現在選択さ
れている(x130)フィルタのコンパランド・ワード
2レジスタへのアクセスを提供する。このワードは「オ
フセット・カウント+2」の位置に置かれたフレーム・
ワードと比較される。この比較の結果は、マスク・ワー
ド1によって限定される。結果のマッチしないことは、
このフレーム上のこのフィルタについての「失敗した状
況」となる。注意:もしポート感度ビットがオンであれ
ば、ポート4〜0のマッチングを可能にするために、低
順位5ビット(4〜0)が使用される。ビット0は、ポ
ート0をイネーブルし、ビット1は、ポート1をイネー
ブルし、以下同様である。フレーム・マッチングの目的
には、これら5ビットは無視される。
【0100】
【表10】 0x139フィルタ・マスク・ワード0(V2 ASI
C)−[R/W] このレジスタは、現在選択されてい
る(x130)フィルタのマスク・ワード0レジスタへ
のアクセスを提供する。(注意:64のフィルタをチッ
プへ詰め込む必要がある内部実装のために、このレジス
タへの書き込みはマスク・ワード1及びマスク・ワード
2へも書き込む。常に3つのすべてのレジスタへ0、
1、2の順序で書き込むのであれば、これは問題になら
ない。)このワードはコンパランド・ワード0の比較結
果を限定する。このワードにセットされたビットは、マ
ッチングするビット位置をマスクし、真の比較結果をそ
のビットに強制する。
【0101】
【表11】 0x13Aフィルタ・マスク・ワード1(V2 ASI
C)−[R/W] このレジスタは、現在選択されてい
る(x130)フィルタのマスク・ワード1レジスタへ
のアクセスを提供する。(注意:64のフィルタをチッ
プへ詰め込む必要がある内部実装のために、このレジス
タへの書き込みはマスク・ワード2へも書き込む。常に
3つのすべてのレジスタへ0、1、2の順序で書き込む
のであれば、これは問題にならない。)このワードはコ
ンパランド・ワード1の比較結果を限定する。このワー
ドにセットされたビットは、マッチングするビット位置
をマスクし、真の比較結果をそのビットに強制する。
【0102】
【表12】 0x13Bフィルタ・マスク・ワード2(V2 ASI
C)−[R/W] このレジスタは、現在選択されてい
る(x130)フィルタのマスク・ワード2レジスタへ
のアクセスを提供する。このワードはコンパランド・ワ
ード2の比較結果を限定する。このワードにセットされ
たビットは、マッチングするビット位置をマスクし、真
の比較結果をそのビットに強制する。注意:もしポート
感度ビットがオンであれば、ポート9〜5のマッチング
を可能にするために低順位5ビット(4〜0)が使用さ
れる。ビット0は、ポート5をイネーブルし、ビット1
は、ポート6をイネーブルし、以下同様である。マスキ
ングの目的には、これらの5ビットは1へセットされて
いるものとして取り扱われる。
【0103】
【表13】 ここに示され且つ説明された本発明の実施形態から本発
明の原理を理解すれば、当業者は、そのような原理から
逸脱することなく実施形態の構成及び詳細を変更できる
ことを認識するであろう。各種のモジュールの構成を変
更して、依然として、ここで説明された機能を提供する
ことができる。各種のモジュールの構成要素は、本発明
の関連部分の範囲内でハードウェア、ソフトウェア、又
はファームウェアで実施することができる。例えば、オ
フセット値、コンパレータ値、期待の値などは、フィル
タ以外の構成に格納することができる。ワードの長さ、
フィルタの数、グループの数などは、すべてアプリケー
ションによって選択されるものであり、本発明を限定す
るものではない。
【0104】本発明の原理は多くの想定される実施形態
に適用することができるので、これらの実施形態は例示
的なものにすぎず、本発明の範囲に対する限定として解
釈されてはならないことを理解すべきである。本発明は
特許請求の範囲によって限定される。従って、これら特
許請求の範囲に入るすべての実施形態及び同等物は、本
発明として主張されるものである。
【図面の簡単な説明】
【図1】スイッチング装置を含む例示的コンピュータ・
ネットワークのブロック図である。
【図2】宛先ポートを決定するためスイッチング装置内
に設けられた例示的なルックアップ・テーブルを示す図
である。
【図3】本発明に従ったパケット・スイッチの関連部分
を示すブロック図である。
【図4】図3のコンテントベース転送ロジックを示すブ
ロック図である。
【図5】図4のフィルタを示すブロック図である。
【図6A】図3のマージ・ロジックを示すブロック図で
ある。
【図6B】図3のマージ・ロジックを示すブロック図で
ある。
【図7】フィルタをグループに入れたり外したりする方
法を示す論理図である。
【図8】グループ内のフィルタの基本的な結合を示す図
である。
【図9】図8の基本的な結合の2つの変化例を示す図で
ある。
【符号の説明】
10 コンピュータ・ネットワーク 12、14 ローカル・セグメント 16 リモート・ネットワーク 20、21 スイッチング装置 22、24 ポート 26 ルックアップ・テーブル 28 テーブル・エントリ 30 ポート・フィールド 50 スイッチング装置 56 媒体インタフェース 58 メモリ 60 コンテントベース転送ロジック 62 一時パケット記憶装置 64 パケット分析及びキー抽出ロジック 68 探索エンジン 70 マージ・ロジック 72 転送決定ロジック 74 ネットワーク・ケーブル 78 スイッチ・ファブリック制御 80 ウィンドウ 81 フィルタ 82 式 90 フィルタ・セッティング 92 加算器 94 AND回路 96 比較器 98 インバータ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 テイモシー・スコツト・マイケルズ アメリカ合衆国、ワシントン・99206、ス ポウカン、イースト・フオーテイ・セブン ス・11621 (72)発明者 ジエイムズ・イー・キヤシー アメリカ合衆国、ワシントン・99016、グ リーンエイカーズ、キヤンベル・ロード・ エス・6021

Claims (19)

    【特許請求の範囲】
  1. 【請求項1】 スイッチング装置の送信ポートで受け取
    られ宛先ポートへ通信されるフレームを処理する方法で
    あって、 オフセット値及びコンパレータ値を含むフィルタをスイ
    ッチング装置に格納するステップと、 フィルタ結果を得るために、フィルタのオフセット値に
    よって決定されるフレーム内の位置に存在する情報とコ
    ンパレータ値とを比較するステップと、 該フィルタ結果でフレームを処理するステップとを含む
    方法。
  2. 【請求項2】 フレームを処理するステップが、どの宛
    先ポートがフレームを受け取るべきかを決定する結果を
    使用して、フレームを宛先ポートへ通信するステップを
    含む、請求項1に記載の方法。
  3. 【請求項3】 フレームを処理するステップが、フィル
    タ結果を使用してフレームの優先順位を設定するステッ
    プを含む、請求項1に記載の方法。
  4. 【請求項4】 前記格納するステップが、比較するステ
    ップで使用される期待の値を含むフィルタを格納するス
    テップを含む、請求項1に記載の方法。
  5. 【請求項5】 前記格納するステップが、そこからオフ
    セット値が測定されるアンカー値を含むフィルタを格納
    するステップを含む、請求項1に記載の方法。
  6. 【請求項6】 前記格納するステップが、コンパレータ
    値との比較の前に、フレーム情報をマスクするマスク値
    を含むフィルタを格納するステップを含む、請求項1に
    記載の方法。
  7. 【請求項7】 スイッチング装置の中に、各々が前記ス
    テップを実行する複数のフィルタが存在し、 フィルタのグループ結果を得るために、フィルタ結果を
    結合するステップと、 フィルタのグループ結果でフレームを処理するステップ
    とを含む、請求項1に記載の方法。
  8. 【請求項8】 前記フィルタ結果を結合するステップ
    が、それらの結果を論理的に結合するステップを含む、
    請求項7に記載の方法。
  9. 【請求項9】 フィルタ結果を他のソースからのフレー
    ム転送情報とマージするステップと、マージされた結果
    でフレームを処理するステップとを含む、 請求項1に記載の方法。
  10. 【請求項10】 スイッチング装置の送信ポートで受け
    取られ宛先ポートへ通信されるフレームを処理する装置
    であって、 オフセット値及びコンパレータ値を含むフィルタをスイ
    ッチング装置に格納する手段と、 フィルタのオフセット値によって決定されるフレーム内
    の位置に存在する情報とコンパレータ値とを比較する手
    段と、 該フィルタ結果でフレームを処理する手段とを含む装
    置。
  11. 【請求項11】 比較するステップで使用される期待の
    値を含むフィルタを格納する手段を含む、請求項10に
    記載の装置。
  12. 【請求項12】 そこからオフセット値が測定されるア
    ンカー値を含むフィルタを格納する手段を含む、請求項
    10に記載の装置。
  13. 【請求項13】 コンパレータ値との比較の前にフレー
    ム情報をマスクするマスク値を含むフィルタを格納する
    手段を含む、請求項10に記載の装置。
  14. 【請求項14】 フィルタ結果を他のソースからのフレ
    ーム転送情報とマージする手段と、マージされた結果で
    フレームを処理する手段とを含む請求項10に記載の装
    置。
  15. 【請求項15】 複数のフィルタをスイッチング装置に
    格納する手段と、 フィルタのグループ結果を得るためにフィルタ結果を結
    合する手段と、 該フィルタのグループ結果でフレームを処理する手段と
    を含む請求項10に記載の装置。
  16. 【請求項16】 スイッチング装置の送信ポートで受け
    取られ宛先ポートへ通信されるフレームを処理する方法
    であって、 オフセット値及びコンパレータ値をスイッチング装置に
    格納するステップと、 結果を得るためにオフセット値によって決定されたフレ
    ーム内の位置に存在する情報とコンパレータ値とを比較
    するステップと、 該結果でフレームを処理するステップとを含む方法。
  17. 【請求項17】 オフセット値及びコンパレータ値がフ
    ィルタに関連づけられる、請求項16に記載の方法。
  18. 【請求項18】 オフセット値、コンパレータ値及び関
    連する結果の複数のセットが存在し、 グループ結果を得るために、前記結果を結合するステッ
    プと、 該グループ結果でフレームを処理するステップとを含む
    請求項16に記載の方法。
  19. 【請求項19】 前記結果を結合するステップが、結果
    を論理的に結合するステップを含む、請求項18に記載
    の方法。
JP11282950A 1998-10-05 1999-10-04 ネットワ―クスイッチング装置におけるコンテントベ―スの転送/フィルタリング方法 Withdrawn JP2000156713A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US166318 1998-10-05
US09/166,318 US6347087B1 (en) 1998-10-05 1998-10-05 Content-based forwarding/filtering in a network switching device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010098368A Division JP4999957B2 (ja) 1998-10-05 2010-04-22 ネットワークスイッチング装置におけるコンテントベースの転送/フィルタリング方法

Publications (1)

Publication Number Publication Date
JP2000156713A true JP2000156713A (ja) 2000-06-06

Family

ID=22602752

Family Applications (2)

Application Number Title Priority Date Filing Date
JP11282950A Withdrawn JP2000156713A (ja) 1998-10-05 1999-10-04 ネットワ―クスイッチング装置におけるコンテントベ―スの転送/フィルタリング方法
JP2010098368A Expired - Lifetime JP4999957B2 (ja) 1998-10-05 2010-04-22 ネットワークスイッチング装置におけるコンテントベースの転送/フィルタリング方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2010098368A Expired - Lifetime JP4999957B2 (ja) 1998-10-05 2010-04-22 ネットワークスイッチング装置におけるコンテントベースの転送/フィルタリング方法

Country Status (5)

Country Link
US (2) US6347087B1 (ja)
EP (1) EP0993162B1 (ja)
JP (2) JP2000156713A (ja)
AT (1) ATE314773T1 (ja)
DE (1) DE69929134D1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100488357B1 (ko) * 2002-11-11 2005-05-11 주식회사 인티게이트 이더넷 패킷의 서비스 구분을 위한 다중 패턴분석 장치 및분석방법
KR100729266B1 (ko) 2005-05-18 2007-06-15 주식회사 파이오링크 네트워크 장비에서 소정의 네트워크를 통해 전송되는파일을 검사하는 방법 및 상기 방법이 채용된 네트워크장비
JP2016506217A (ja) * 2013-01-29 2016-02-25 ▲ホア▼▲ウェイ▼技術有限公司 パケット処理方法及び転送要素

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6651102B2 (en) * 1995-12-20 2003-11-18 Nb Networks Systems and methods for general purpose data modification
US6553000B1 (en) 1998-01-27 2003-04-22 Alcatel Internetworking (Pe), Inc. Method and apparatus for forwarding network traffic
US6347087B1 (en) * 1998-10-05 2002-02-12 Packet Engines Incorporated Content-based forwarding/filtering in a network switching device
JP3556495B2 (ja) * 1998-12-15 2004-08-18 株式会社東芝 パケットスイッチ及びパケット交換方法
FI106499B (fi) * 1998-12-29 2001-02-15 Nokia Networks Oy Tiedonsiirtomenetelmä ja verkkoelementti
US6608819B1 (en) * 1999-01-12 2003-08-19 Mcdata Corporation Method for scoring queued frames for selective transmission through a switch
US7382736B2 (en) 1999-01-12 2008-06-03 Mcdata Corporation Method for scoring queued frames for selective transmission through a switch
JP3643507B2 (ja) * 1999-09-20 2005-04-27 株式会社東芝 パケット処理装置及びパケット処理方法
US6760771B1 (en) * 1999-10-21 2004-07-06 International Business Machines Corporation Method and system for optimally dispatching internetwork traffic
KR100450942B1 (ko) * 1999-11-22 2004-10-02 삼성전자주식회사 이더넷 스위치에서의 어드레스 서치 장치 및 방법
WO2001045328A1 (en) * 1999-12-17 2001-06-21 Nokia Corporation A method for contention free traffic detection
US6934260B1 (en) * 2000-02-01 2005-08-23 Advanced Micro Devices, Inc. Arrangement for controlling learning of layer 3 network addresses in a network switch
US6990531B2 (en) * 2000-04-17 2006-01-24 Circadence Corporation System and method for providing last-mile data prioritization
GB2362776B (en) * 2000-05-23 2002-07-31 3Com Corp Allocation of asymmetric priority to traffic flow in network switches
US7395348B1 (en) * 2000-06-05 2008-07-01 Cisco Technology, Inc. Network cache-based content routing
US6654373B1 (en) * 2000-06-12 2003-11-25 Netrake Corporation Content aware network apparatus
US6741594B1 (en) * 2000-06-15 2004-05-25 Advanced Micro Devices, Inc. Arrangement for identifying data packet types from multiple protocol formats on a network switch port
EP1164798A1 (fr) * 2000-06-15 2001-12-19 Sagem S.A. Emetteur de diffusion de données sur une pluralité de canaux comportant des filtres logiques pour les données à émettre
US6963565B1 (en) * 2000-08-14 2005-11-08 Advanced Micro Devices, Inc. Apparatus and method for identifying data packet at wire rate on a network switch port
DE10057780A1 (de) * 2000-11-22 2002-06-06 Siemens Ag Verfahren zum Betrieb einer programmierbaren Steuereinrichtung
US7245587B2 (en) * 2000-12-20 2007-07-17 Inmon Corporation Method to associate input and output interfaces with packets read from a mirror port
US6920135B1 (en) * 2001-01-23 2005-07-19 Tau Networks Scalable switching system and method
US6990101B1 (en) * 2001-03-23 2006-01-24 Advanced Micro Devices, Inc. System and method for performing layer 3 switching in a network device
US7788399B2 (en) * 2001-03-26 2010-08-31 Salesforce.Com, Inc. System and method for mapping of services
US9948644B2 (en) 2001-03-26 2018-04-17 Salesforce.Com, Inc. Routing messages between applications
US7689711B2 (en) 2001-03-26 2010-03-30 Salesforce.Com, Inc. System and method for routing messages between applications
US6901455B2 (en) * 2001-06-29 2005-05-31 Intel Corporation Peripheral sharing device with unified clipboard memory
US20030165139A1 (en) * 2001-08-15 2003-09-04 Tsu-Wei Chen Packet routing via payload inspection
US7411954B2 (en) * 2001-10-17 2008-08-12 Precache Inc. Efficient implementation of wildcard matching on variable-sized fields in content-based routing
US7545805B2 (en) * 2001-08-15 2009-06-09 Precache, Inc. Method and apparatus for content-based routing and filtering at routers using channels
US7609689B1 (en) * 2001-09-27 2009-10-27 Cisco Technology, Inc. System and method for mapping an index into an IPv6 address
US7580349B1 (en) * 2001-11-02 2009-08-25 Nortel Networks Limited Content-aware dynamic network resource allocation
GB2382962A (en) * 2001-12-07 2003-06-11 Altio Ltd Data routing without using an address
US7487254B2 (en) * 2001-12-20 2009-02-03 Nokia Corporation Fixed length filtering to filter clusters of discrete segments of data
US20030126188A1 (en) * 2001-12-27 2003-07-03 Zarlink Semiconductor V.N. Inc. Generic header parser providing support for data transport protocol independent packet voice solutions
US7953087B1 (en) * 2001-12-28 2011-05-31 The Directv Group, Inc. Content filtering using static source routes
GB2385233B (en) * 2002-02-07 2004-04-21 3Com Corp Network switch with parallel working of look-up engine and network processor
US7245620B2 (en) * 2002-03-15 2007-07-17 Broadcom Corporation Method and apparatus for filtering packet data in a network device
US7277438B2 (en) 2002-03-18 2007-10-02 Broadcom Corporation Fast flexible range checking
US8225371B2 (en) 2002-09-18 2012-07-17 Symantec Corporation Method and apparatus for creating an information security policy based on a pre-configured template
US8661498B2 (en) * 2002-09-18 2014-02-25 Symantec Corporation Secure and scalable detection of preselected data embedded in electronically transmitted messages
US7304992B2 (en) 2002-11-22 2007-12-04 Broadcom Corporation Fast flexible filter processor based on range checking and a method of processing based thereon
US8296452B2 (en) * 2003-03-06 2012-10-23 Cisco Technology, Inc. Apparatus and method for detecting tiny fragment attacks
US20040264479A1 (en) * 2003-06-30 2004-12-30 Makaram Raghunandan Method for generating a trie having a reduced number of trie blocks
US7477655B2 (en) * 2003-07-21 2009-01-13 Qlogic, Corporation Method and system for power control of fibre channel switches
US7573909B2 (en) * 2003-07-21 2009-08-11 Qlogic, Corporation Method and system for programmable data dependant network routing
US7792115B2 (en) * 2003-07-21 2010-09-07 Qlogic, Corporation Method and system for routing and filtering network data packets in fibre channel systems
US7525983B2 (en) * 2003-07-21 2009-04-28 Qlogic, Corporation Method and system for selecting virtual lanes in fibre channel switches
US7447224B2 (en) * 2003-07-21 2008-11-04 Qlogic, Corporation Method and system for routing fibre channel frames
US7684401B2 (en) 2003-07-21 2010-03-23 Qlogic, Corporation Method and system for using extended fabric features with fibre channel switch elements
US7894348B2 (en) 2003-07-21 2011-02-22 Qlogic, Corporation Method and system for congestion control in a fibre channel switch
US7630384B2 (en) * 2003-07-21 2009-12-08 Qlogic, Corporation Method and system for distributing credit in fibre channel systems
US7558281B2 (en) * 2003-07-21 2009-07-07 Qlogic, Corporation Method and system for configuring fibre channel ports
US7580354B2 (en) * 2003-07-21 2009-08-25 Qlogic, Corporation Multi-speed cut through operation in fibre channel switches
US7420982B2 (en) * 2003-07-21 2008-09-02 Qlogic, Corporation Method and system for keeping a fibre channel arbitrated loop open during frame gaps
US7646767B2 (en) * 2003-07-21 2010-01-12 Qlogic, Corporation Method and system for programmable data dependant network routing
DE60314153T2 (de) * 2003-11-22 2008-01-31 Broadcom Corp., Irvine Schneller, flexibler Filterprozessor basierend auf Bereichsprüfung sowie darauf basierendes Verarbeitungsverfahren
US8195744B2 (en) * 2004-07-09 2012-06-05 Orb Networks, Inc. File sharing system for use with a network
US8295299B2 (en) 2004-10-01 2012-10-23 Qlogic, Corporation High speed fibre channel switch element
KR100734063B1 (ko) * 2005-06-30 2007-07-02 오영국 좌변기용 비데기
US20070127489A1 (en) * 2005-11-18 2007-06-07 Amaya Nestor A Apparatus and method for the optimal utilization and delivery of multiple applications over a digital subscriber loop
US20080101367A1 (en) * 2006-10-31 2008-05-01 Weinman Joseph B Method and apparatus for providing security policy based route selection
US20080101368A1 (en) * 2006-10-31 2008-05-01 Weinman Joseph B Method and apparatus for providing message content based route selection
US8281360B2 (en) * 2006-11-21 2012-10-02 Steven Adams Flewallen Control of communication ports of computing devices using policy-based decisions
US8218453B2 (en) * 2007-02-08 2012-07-10 Telefonaktiebolaget Lm Ericsson (Publ) Network router and method of configuring a network router
US8295700B2 (en) * 2007-05-14 2012-10-23 Intune Technologies Distributed packet switch for use in a network
US20090074000A1 (en) * 2007-09-17 2009-03-19 Integrated Device Technology, Inc. Packet based switch with destination updating
US8046492B1 (en) * 2007-11-06 2011-10-25 Juniper Networks, Inc. Offset independent filtering
US8019709B2 (en) * 2007-11-09 2011-09-13 Vantrix Corporation Method and system for rule-based content filtering
US8478764B2 (en) * 2007-11-09 2013-07-02 Vantrix Corporation Method and apparatus for concurrent filtering of multiple components of streaming data
US7996374B1 (en) 2008-03-28 2011-08-09 Symantec Corporation Method and apparatus for automatically correlating related incidents of policy violations
JP5104514B2 (ja) * 2008-04-21 2012-12-19 富士通株式会社 パケット転送制御装置およびパケット転送制御方法
US8826443B1 (en) 2008-09-18 2014-09-02 Symantec Corporation Selective removal of protected content from web requests sent to an interactive website
US8935752B1 (en) 2009-03-23 2015-01-13 Symantec Corporation System and method for identity consolidation
US10628353B2 (en) 2014-03-08 2020-04-21 Diamanti, Inc. Enabling use of non-volatile media-express (NVMe) over a network
WO2015138245A1 (en) 2014-03-08 2015-09-17 Datawise Systems, Inc. Methods and systems for converged networking and storage
US10635316B2 (en) 2014-03-08 2020-04-28 Diamanti, Inc. Methods and systems for data storage using solid state drives
US11921658B2 (en) 2014-03-08 2024-03-05 Diamanti, Inc. Enabling use of non-volatile media-express (NVMe) over a network
US10225105B2 (en) * 2015-07-08 2019-03-05 Openvpn Technologies, Inc. Network address translation

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5515376A (en) * 1993-07-19 1996-05-07 Alantec, Inc. Communication apparatus and methods
US5473607A (en) * 1993-08-09 1995-12-05 Grand Junction Networks, Inc. Packet filtering for data networks
JPH07200436A (ja) * 1993-12-28 1995-08-04 Nippon Telegr & Teleph Corp <Ntt> 分散処理システムにおけるメッセージ通信方法
US5608662A (en) * 1995-01-12 1997-03-04 Television Computer, Inc. Packet filter engine
US5790554A (en) * 1995-10-04 1998-08-04 Bay Networks, Inc. Method and apparatus for processing data packets in a network
US5818838A (en) * 1995-10-12 1998-10-06 3Com Corporation Method and apparatus for transparent intermediate system based filtering on a LAN of multicast packets
JP3670372B2 (ja) * 1995-12-20 2005-07-13 富士電機ホールディングス株式会社 データ転送装置
US6147976A (en) * 1996-06-24 2000-11-14 Cabletron Systems, Inc. Fast network layer packet filter
US5959976A (en) * 1996-12-09 1999-09-28 Kuo; Yung-Tien Method and device for filtering transmission
US5951651A (en) * 1997-07-23 1999-09-14 Lucent Technologies Inc. Packet filter system using BITMAP vector of filter rules for routing packet through network
US6061368A (en) 1997-11-05 2000-05-09 Xylan Corporation Custom circuitry for adaptive hardware routing engine
US6347087B1 (en) * 1998-10-05 2002-02-12 Packet Engines Incorporated Content-based forwarding/filtering in a network switching device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100488357B1 (ko) * 2002-11-11 2005-05-11 주식회사 인티게이트 이더넷 패킷의 서비스 구분을 위한 다중 패턴분석 장치 및분석방법
KR100729266B1 (ko) 2005-05-18 2007-06-15 주식회사 파이오링크 네트워크 장비에서 소정의 네트워크를 통해 전송되는파일을 검사하는 방법 및 상기 방법이 채용된 네트워크장비
JP2016506217A (ja) * 2013-01-29 2016-02-25 ▲ホア▼▲ウェイ▼技術有限公司 パケット処理方法及び転送要素
US9749262B2 (en) 2013-01-29 2017-08-29 Huawei Technologies Co., Ltd. Packet processing method and forwarding element

Also Published As

Publication number Publication date
EP0993162B1 (en) 2005-12-28
DE69929134D1 (de) 2006-02-02
EP0993162A2 (en) 2000-04-12
US7065082B2 (en) 2006-06-20
JP4999957B2 (ja) 2012-08-15
ATE314773T1 (de) 2006-01-15
EP0993162A3 (en) 2003-08-20
US20020067726A1 (en) 2002-06-06
US6347087B1 (en) 2002-02-12
JP2010172011A (ja) 2010-08-05

Similar Documents

Publication Publication Date Title
JP4999957B2 (ja) ネットワークスイッチング装置におけるコンテントベースの転送/フィルタリング方法
US7079537B1 (en) Layer 3 switching logic architecture in an integrated network switch
EP1158725B1 (en) Method and apparatus for multi- redundant router protocol support
US6016310A (en) Trunking support in a high performance network device
US6950434B1 (en) Arrangement for searching packet policies using multi-key hash searches in a network switch
US6798788B1 (en) Arrangement determining policies for layer 3 frame fragments in a network switch
US6674769B1 (en) Simultaneous searching of layer 3 policy filter and policy cache in a network switch port
US6574240B1 (en) Apparatus and method for implementing distributed layer 3 learning in a network switch
JP4685254B2 (ja) データ通信スイッチ用の優先順位リマッピング
CA2393140C (en) Method and apparatus for wire speed ip multicast forwarding
US6816467B1 (en) Spanning tree support in a high performance network device
US7149214B2 (en) Dynamic unknown L2 flooding control with MAC limits
US7460542B2 (en) Tagging rules for hybrid ports
US20050171937A1 (en) Memory efficient hashing algorithm
US7346059B1 (en) Header range check hash circuit
US6526066B1 (en) Apparatus for classifying a packet within a data stream in a computer network
US20100232444A1 (en) Frame transfer method and frame transfer device
US20030174710A1 (en) Method and system for performing flow based hash transformation to generate hash pointers for a network device
US10397116B1 (en) Access control based on range-matching
JP2013051729A (ja) 仮想ルータ機能を提供する方法
US6658003B1 (en) Network relaying apparatus and network relaying method capable of high-speed flow detection
JP2003513540A (ja) ネットワークスイッチポート上でデータパケットのタイプをリアルタイムで識別するための装置および方法
US6807176B1 (en) Arrangement for switching data packets in a network switch based on subnet identifier
US6778547B1 (en) Method and apparatus for improving throughput of a rules checker logic
US7103035B1 (en) Arrangement for searching network addresses in a network switch using multiple tables based on subnet identifier

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060929

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090421

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090717

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090723

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091019

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100422

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20100427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100423