JP2006295937A - スイッチの入力ポートにおけるフレームフィルタリング - Google Patents

スイッチの入力ポートにおけるフレームフィルタリング Download PDF

Info

Publication number
JP2006295937A
JP2006295937A JP2006108722A JP2006108722A JP2006295937A JP 2006295937 A JP2006295937 A JP 2006295937A JP 2006108722 A JP2006108722 A JP 2006108722A JP 2006108722 A JP2006108722 A JP 2006108722A JP 2006295937 A JP2006295937 A JP 2006295937A
Authority
JP
Japan
Prior art keywords
frame
port
addressing information
entries
cache
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
JP2006108722A
Other languages
English (en)
Inventor
Takeshi Shimizu
剛 清水
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2006295937A publication Critical patent/JP2006295937A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】スイッチの入力ポートにおいて一定のフレームをフィルタリングする方法を提供する。
【解決手段】複数のポートを有するスイッチング装置である。ポートはフレームを受信し、アドレッシング情報がフィルタリングエントリーの1つと一致する場合にはフレームをドロップし、一致しなかった場合にはスイッチングコアに転送する。スイッチングコアは、フレームバッファと、複数のルーティングエントリーであってそれぞれ出力ポートとドロップ条件とのうち少なくとも1つを示すルーティングエントリーを保持する転送データベースと、フレームバッファ中のフレームのヘッダからアドレッシング情報を識別し、アドレッシング情報に対応する転送データベース中のルーティングエントリーの1つを識別する。ルーティングエントリーがドロップ条件を示す場合にはフレームをドロップし、ドロップ条件を示すキャッシュ更新を、フレームを受け取ったポートに通知する。
【選択図】図1

Description

本発明は、ネットワーク通信に関し、特に、スイッチの入力ポートにおけるフレームフィルタリングに関する。
ネットワークにおいて、スイッチは異なるネットワークコンポーネント間のネットワークトラフィックをルーティングする。一般的に、これらのスイッチはトラフィックをどう処理するかを示すデータベースを保持している。
本発明により、スイッチの入力ポートにおいて一定のフレームをフィルタリングする方法を提供する。実施形態によると、入力ポートにおいてフレームドロップ決定を可能とすることにより、入力ポートにおいてフレームをフィルタリングする方法と装置を提供する。入力ポートはフィルタリング情報を記憶し、一定のフィルタリング決定をする。この決定には、例えば、VLANアドレッシング違反を伴うフィルタをドロップする決定を含んでもよい。
一実施形態によると、スイッチング装置は複数のポートを有する。各ポートはキャッシュを有し、そのキャッシュは1つ以上のフィルタリングエントリーを有する。各ポートはペイロードと、アドレッシング情報を指定するヘッダとを含むフレームを受信する。各ポートは、そのアドレッシング情報がフィルタリングエントリーの1つと一致するかどうか判断し、アドレッシング情報がフィルタリングエントリーの1つと一致する場合、そのフレームをドロップし、そのアドレッシング情報がフィルタリングエントリーの1つと一致しない場合、そのフレームをスイッチングコアに転送する。スイッチング装置は、スイッチングコアも有する。スイッチングコアは、ポートから転送されたフレームを格納することができるフレームバッファを有する。スイッチング装置は、また、複数のルーティングエントリーを保持できる転送データベースも有する。各ルーティングエントリーは、出力ポート及びドロップ条件のうち少なくとも1つを示す。スイッチング装置はコントローラも有する。フレームバッファの各フレームについて、コントローラは、前記フレームのヘッダからアドレッシング情報を識別し、前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを特定し、前記対応するルーティングエントリーが出力ポートを示す場合、前記フレームを前記示された出力ポートに転送し、前記対応するルーティングエントリーがドロップ条件を示す場合、前記フレームをドロップし、前記フレームを受信したポートに前記ドロップ条件を示すキャッシュ更新を通知することができる。
本発明の実施形態は、様々な技術的利点を提供する。例えば、これらは、スイッチの入力ポートがそのスイッチの中央または共有の構成要素にアクセスすることなしに無効のフレームをドロップすることができるメカニズムを提供する。入力ポートがフレームをドロップすることができるので、スイッチの転送データベースへのアクセス回数を減らすことができる。一部の実施形態において、スイッチのフレームバッファに必要なメモリ容量を減らすことができる。一般的に、スイッチがフレームの適当な出力ポートを決定する間、フレームバッファがそのフレームを記憶する。入力ポートにおけるフレームドロップ決定を可能とすることにより、フレームバッファは、スイッチがドロップする必要があると判断する一定のフレームを記憶しなくても済む。よって、必要なフレームバッファのサイズを小さくすることができる。実施形態によっては、入力ポートにより記憶されたフィルタリング情報を選択して転送データベースとフレームバッファの使用を減らすと共に、入力ポートのサイズを最小化する。また、一部の実施形態においては、転送データベースへのアクセス回数が減るので、スイッチのスループットが高くなる。最後に、実施形態によっては、スイッチコアが、転送データベースと各ポートのキャッシュとの間のコヒーレンスを維持する。よって、入力ポートにあるキャッシュを更新することなしに、転送データベースを更新することができる。
本発明の他の技術的利点は、以下の図面、説明、及び請求項から当業者には明らかであろう。さらにまた、具体的な利点を上記したが、実施形態によっては、上記の利点の全て含むものもあり、一部のみ含むものもあり、またはまったく含まないものもある。
図1は、入力ポートにおいてフレームフィルタリングすることにより、フレームを拡張フィルタリングするスイッチ10を示す図である。図示したように、スイッチ10はポート12とスイッチコア30とを含み、スイッチコア30はコントローラ14とスイッチメモリ16とを含む。スイッチ10は、図示はしていないが、スイッチングファブリックを含んでいてもよく、このスイッチングファブリックにより接続されて、いずれかのポート12から、スイッチコア30、コントローラ14、スイッチメモリ16、いずれかまたはすべてのポート12までのフレーム転送が行われる。スイッチコア30が、スイッチングファブリックやポート間のフレーム転送をする何らかの好適な構成要素を含んでいてもよい。一般的に、スイッチ10内の構成要素は協働して、ポート12に特定のフィルタリング決定をさせることにより、ポート12において一部のフレームをフィルタする。
各ポート12は、任意の適当な制御ロジックを含む、フレームを送受信するハードウェアを表している。例えば、ポート12は、フレームを受信して送信する入力モジュールと出力モジュールとを含んでもよい。フレームという用語は、本明細書においては、アドレッシング情報を含む任意の情報セグメントを意味している。例えば、フレームにはイーサネット(登録商標)フレーム、インターネットプロトコル(IP)パケット、非同期転送モード(ATM)セル、及び/またはその他任意の好適な情報セグメントが含まれる。
図示したように、各ポート12はポートメモリ18を含み、そのポートメモリ18は入力バッファ20とキャッシュ22とを含む。入力バッファ20は対応するポート12が受信したフレームを格納する。一部の実施形態において、フレームは、スイッチメモリ16に送られて格納されるまで、入力バッファ20に格納される。入力バッファ20は、ポート12がフレームを処理するまで、そのフレームを格納する。特定の実施形態においては、ポート12がフレームを受信したときに、そのフレームのヘッダを処理する。それゆえ、フレームを入力バッファ20に格納することなく、ヘッダに基づいてドロップ決定をすることが可能である。入力バッファ20は、ポートメモリ18中の1つの論理ブロックとして示したが、言うまでもなくこれは論理的な描写であり、ポート12が受信したフレームをバッファするためのどのような構造であっても、どのような動作をするものであってもよい。
キャッシュ22はフィルタリング情報を保持し、ポート12におけるフレームフィルタリング決定を可能とする。特定の実施形態においては、キャッシュ22がスイッチメモリ16にある転送データベース26からフィルタリング情報を受け取る。キャッシュ22は異なるいろいろな方法でフィルタリング情報を格納している。例えば、フィルタリング情報はドロップ条件を含むエントリーとして構成されている。一部の実施形態においては、エントリーはテーブル、データベース、ファイル等に格納される。特定の実施形態において、キャッシュ22中のエントリーはフレームのヘッダに格納されたアドレスに対応する。一部の実施形態において、各エントリーはそのフィルタリング条件が満たされた時に取るべき動作を指示するものである。また、他の実施形態においては、ポート12はエントリーが満たされると同じ動作を実行する。特定の実施形態において、ドロップ条件は、例えば次のような動作をすべきことを示している:フレームをドロップする;フレームがブリッジプロトコルデータユニット(BPDU)フレーム(すなわち、設定フレーム)でなければドロップする;フレームをドロップするが学習はする。例えば、キャッシュ22中の特定のエントリー中のドロップ条件は、そのフィルタリング条件を満たす全てのフレームをさらに別の動作をすることなくドロップすべきことを示している。キャッシュ22中の他のエントリー中の異なるドロップ条件は、そのフィルタリング条件を満たすすべてのフレームをドロップし、ソースアドレスをスイッチコア30に送って学習させることを示している。
キャッシュ22の長さはいろいろである。一部の実施形態において、キャッシュ22中のエントリー数はスイッチ10全体のサイズを最小化するように選択される。特定の実施形態において、キャッシュ22のサイズは所与の数(例えば4つ)のエントリーのみを許容するように設定される。比較的小さいキャッシュ22を適当なサイズを有する他の構成要素と組み合わせて使用することにより、高速スイッチの全ての構成要素を仮想的に単一チップ上に実装して、毎秒10ギガビット以上のスピードで動作させることも可能である。一部の実施形態において、キャッシュ22中のフィルタリング情報は、フレームのヘッダに含まれる情報に対するフレームフィルタリング条件を指定する。
一部の実施形態において、キャッシュ22は、1つ以上の仮想的ローカルエリアネットワーク(VLAN)に対応するフィルタリング条件を保持する。フレーム違反を識別するため、キャッシュ22は、フィルタリング条件に違反するVLANアドレスをリストにして、または集めて保持している。例えば、キャッシュ22は、各エントリーに対してVLAN−ID、ポート状態、及び有効ビットを示すテーブルを含んでいてもよい。キャッシュ22中のエントリーは、一般的に、転送データベース26から選択された情報をミラー(mirror)するものである。キャッシュ22の例を説明したが、言うまでもなく、キャッシュ22をどのように構成して、どのように動作させて、対応するポート12にフレームフィルタリング決定を可能とする情報を保持してもよい。
動作中、ポート12はフレームを受信して入力バッファ20に格納する。ポート12は、次に、キャッシュ22にアクセスして、キャッシュ22中のエントリーがフレームヘッダ中の情報と一致するかどうか判断する。一部の実施形態において、キャッシュ22中の各エントリーは、VLANアドレスに対応する。ポート12は、フレームのヘッダに含まれるアドレスがキャッシュ22中のエントリーのどれかに一致するかどうか、判断する。ヘッダ中のアドレスがキャッシュ22中のエントリーに一致する場合、ポート12はキャッシュ22中のエントリーに示されたようにフレームに作用する。特定の実施形態において、キャッシュ22は、フレームをドロップすべき状況を指定するエントリーのみを含む。例えば、キャッシュ22は、そのポートに関連したフィルタリング条件に違反するVLANアドレスのリストを含む。これらの場合、フレームのヘッダ中のアドレスがキャッシュ22中のエントリーに一致する場合、入力ポート12はそのフレームをドロップする。ポート12は、そのフレームを入力バッファ20から取り除くか、さもなければそのフレームがドロップされたことを表示する。一方、フレームヘッダ中のアドレスに対応するキャッシュ22中のエントリーが見つからなければ、そのフレームはスイッチコア30に送られる。スイッチコア30の動作は以下に説明する。
ポート12は、特定の設定とモジュールの構成を含む単一の構成要素として示したが、留意すべきことは、これは論理的な描写であり、ポート12の構成要素と機能は構成要素の好適ないかなる集まり及び配置によるものであってもよい。ポート12のいろいろな構成要素により実行される機能は、フレームを送受信してフレームフィルタリング決定をするいかなる好適な装置または構成要素により達成することもできる。
一般的に、コントローラ14はスイッチ10の動作を管理する。例えば、コントローラ14は、ポート12とスイッチコア30の間のフレーム転送を管理し、スイッチメモリ16にアクセスして受信フレームの適切な出力ポート12を決定し、スイッチメモリ16に格納された情報に基づいてフレームのドロップ条件を判断する。特定の例として、コントローラ14は、受信ポート12からスイッチコア30への受信フレームの転送を管理し、スイッチメモリ16に格納されたフィルタリング条件に違反するフレームのヘッダ中の情報を識別し、フレームをドロップするように命じる。
図示したように、スイッチ10は少なくとも3つのポート12a、12b及び12nを含む。各ポート12は、独立して情報を受信して処理するように動作可能である。一部の実施形態において、スイッチ10は仮想ローカルエリアネットワーク(VLAN)を利用する環境で動作するように構成されている。VLAN環境においては、ポート12は異なるVLANに属していてもよい。コントローラ14は、スイッチメモリ16に格納されたフィルタリング条件に違反VLANアドレスを有するフレームをドロップする。フレームがフィルタリング条件に違反するのは、例えば、侵入違反(ingress violation)、放出違反(egress violation)、プロトコル違反(マルチプルスパニングツリープロトコル(MSTP)ポート状態違反等)、またはスイッチ10により監視されているその他の違反をした場合などである。
例として、ポート12aと12bが1つのVLAN「グループA」に属し、ポート12bと12nが別のVLAN「グループB」に属し、ポート12nが第3のVLAN「グループC」に属しているとする。ヘッダがVLANグループCのソースアドレスを指定するフレームをポート12aが受信すると、ポート12aはVLANグループAにしか属していないのでそのフレームは侵入違反をしている。フレーム受信後、ポート12aは、キャッシュ22aにアクセスして、フレームの1つ以上のアドレスがキャッシュ22a中のエントリーと一致するかどうか判断する。一致するエントリーが見つからなければ、ポート12aはそのフレームをスイッチコア30に転送し、スイッチコア30がそのフレームをスイッチメモリ16に格納する。コントローラ14は、スイッチメモリ16にアクセスしてそのフレームが侵入違反をしていることを識別した後、スイッチコア30にそのフレームをドロップするように命令する。
他の例として、ポート12bは、VLANグループBの学習状態にある時にVLANグループBに宛てられたフレームを受信したとする。学習状態においては、スイッチ10は、入来フレームをドロップするが、そのフレームのソースアドレスを学習し、転送データベース26にエントリーを追加・修正してそのソースアドレスを含める。フレーム受信後、ポート12bはキャッシュ22bをチェックする。キャッシュ22bは、フレームはドロップするが、そのフレームのソースアドレスは学習のため転送データベース26に送ることを示していることがある。他方、ポート12bは、VLANグループAに宛てられたフレームを受信した時、キャッシュ22bをチェックする。キャッシュ22bにVLANグループAに関する情報がない場合、そのフレームはスイッチコア30に転送される。
実施形態によっては、コントローラ14はキャッシュ22に格納されたフィルタリング情報の更新もする。上記の例において、コントローラ14は、ポート12aにフレームをコントローラ14に転送させ、後で侵入違反としてそのフレームをドロップしてもよい。コントローラ14は、次に、このドロップ条件のエントリーをキャッシュ22aに追加するようにポート12aに命じるキャッシュ更新をポート12aに送る。一部の実施形態において、コントローラ14はキャッシュ22に直接エントリーを追加する。エントリーは、ポート12aが受信したVLANグループCからのソースアドレスを有するフレームはドロップすべきことを指示している。キャッシュ22中にこのエントリーがあると、ポート12aは、将来、同様の違反をしているフレームに対してローカルでドロップ決定をする。
前掲の例は侵入違反をしている受信フレームの処理方法に関する詳細を与えるものであるが、スイッチ10は、その構成要素が前述の方法または同様な方法を用いていろいろなタイプの違反を処理することを想定している。
コントローラ14は、スイッチメモリ16により保持されたフィルタリングまたはルーティング情報の変化に応じて、キャッシュ22により格納されたフィルタリング情報を更新してもよい。一部の実施形態において、フィルタリングまたはルーティング情報の更新(例えば、VLANメンバーの変更)後、コントローラ14は、どのポート12がキャッシュ更新を受け取るべきかを決定する。コントローラ14は、次に、適当なポート12にキャッシュ更新を送る。他の実施形態においては、コントローラ14は、全てのポート12にキャッシュ更新を送る。更新を受け取ると、ポート12はその更新に含まれるフィルタリング情報をキャッシュ22中のポート12により保持された情報と比較する。ポート12が更新情報に対応するエントリーをキャッシュ22に有している場合、ポート12は受け取ったキャッシュ更新に従ってキャッシュ22中のエントリーを更新する。ポート12がキャッシュ22中に対応するエントリーを有しない場合、ポート12はキャッシュ更新を受け取っても何も動作しないことを選択することもできる。
コントローラ14は単一の構成要素が様々な動作を実行するとして図示し、説明したが、留意すべきことは、この描写はスイッチ10内の動作を分かりやすく説明するための論理的な描写であり、コントローラ14の機能を構成要素またはロジックのいかなる好適な集まり及び構成により提供してもよいことである。例えば、コントローラ14により実行されると説明した動作は、ポート12、スイッチメモリ16、またはスイッチ10中のその他の構成要素やロジックにより実行されてもよい。本明細書においては、コントローラ14は、スイッチ10のいかなる制御ロジックや回路をも含み、記述し、参照することを意図している。
図示した実施形態において、スイッチ10はスイッチメモリ16も含む。スイッチメモリ16は、図示したように、フレームバッファ24、転送データベース26、及びファームウェア28を含む。スイッチメモリ16にある情報は個別のファイル、フォルダ、またはその他の記憶要素として図示したが、言うまでもなく、説明した情報は適当ないかなる方法で格納することもできる。このように、スイッチメモリ16は、適当な制御ロジックも含めて、情報を格納するいかなる好適なハードウェアをも表している。
フレームバッファ24は、スイッチコア30内にフレームを格納し、一方、コントローラ14はフレームの適当な処理の仕方を決定する。特に、フレームバッファ24がフレームを格納し、フレームを受け取る1つ以上の出力ポートを決定する。実施形態によっては、フレームバッファ24は、フレームのヘッダとペイロードを別々に格納し、またはフレームのヘッダのコピーを別に格納する。これにより、コントローラ14はヘッダに含まれた情報を別途、素早く処理することができるようになる。一部の実施形態において、フレームバッファ24は、ポート12の1つから、フレームまたはそのペイロードを直接受け取る。実施形態によっては、フレームはポート12から受け取られるが、フレームのヘッダはスイッチコア30により処理される。従って、スイッチコア30は、フレームをフレームバッファ24に格納することを要せずしてヘッダに基づいてドロップ決定をすることができる。フレームバッファ24は、スイッチメモリ16中の1つのロジック要素として示したが、言うまでもなく、様々な方法で構成してもよいし、いかなる好適な仕方で情報を格納してもよい。
転送データベース26は、転送及びルーティング情報を保持し、ポート12間におけるフレームのスイッチングを制御する。例えば、転送データベース26は、フレーム中のアドレッシング情報に基づいてポート12間における受信フレームの転送を可能とするテーブルまたはその他の好適な情報構造体を含んでいてもよい。コントローラ14は、次に、転送データベース26にアクセスして、フレームのルーティング情報を取得する。また、転送データベース26はドロップ条件を示すものであってもよい。例えば、転送データベース26は、いろいろなタイプのドロップ条件を指示する多数のエントリーを含んでいてもよい。
実施形態によっては、転送データベース26は複数のエントリーにより構成されており、一部のエントリーは宛先アドレスを有するフレームに対して適当な出力ポート12を指定している。エントリーは、実行すべき様々な動作を指定するドロップ条件を示す。その動作には、例えば、フレームをドロップする;フレームがブリッジプロトコルデータユニット(BPDU)フレーム(すなわち、設定フレーム)でない場合、フレームをドロップする;フレームをドロップするが学習する;及びフレームを適当な出力ポート12に転送する等の動作が含まれる。エントリーは、特定のアドレッシング情報を有するフレームを破棄することを示していてもよい。例えば、各エントリーはVLANアドレスを指定してもよい。コントローラ14は、フレームヘッダにより指定されたVLANアドレスに対応するエントリーにアクセスする。そのエントリーがそのフレームをドロップすべきことを示していない場合、コントローラ14は、転送データベース26中の宛先アドレスに対応するエントリーにより指定された1つ以上の適当な出力ポート12へのフレームバッファ24からのフレーム転送を制御する。
ドロップ条件は、スイッチ10にフレームをドロップすべきと判断させるフレームの特徴または特性である。例えば、VLAN環境のドロップ条件には次の条件が含まれてもよい:フレーム中のVLANアドレスに対応するVLANテーブルエントリーが無効である;VLANメンバーシップがすべてゼロである;VLANメンバーシップが「ワンホット」(1メンバーのみを含む)である;MSTPのポート状態が入力ポートにおけるフィルタリングを要する等。これらは個別的な例であって、ドロップ条件にはスイッチ10にフレームをドロップすべきであると判断させる、フレームのいかなる特徴または特性が含まれていてもよい。他の実施形態において、フレームのアドレス以外の態様または特徴をドロップ条件としてチェックする。実施形態によっては、コントローラ14は、転送データベース26にアクセスすることにより、フレームにあるドロップ条件を検出する。コントローラ14は、次に、フレームバッファ24からドロップしたフレームの削除を指示する。フレームバッファ24からの削除には、フレームを消去すること、または単にそのフレームの記憶位置が使用可能であることを示すことが含まれる。別の実施形態においては、コントローラ14は、転送データベース26の適当なエントリーにアクセスして、帰ってきた情報を使用して、フレームがドロップ条件を満たすかどうか判断する。実施形態によっては、フレームをドロップする前に、フレームまたはそのデータに対していろいろな動作を実行する。その動作は、例えば、学習などである。
ファームウェア28は、実行された時にスイッチ10における様々な構成要素の動作を制御する好適なプログラム、ソフトウェア、ハードウェア、ロジック、または回路を含む。ファームウェア28は、スイッチメモリ16以外のスイッチ10の他の部分に含まれていてもよい。また、ファームウェア28は、スイッチメモリ16またはスイッチに含まれていてもいなくてもよい。
図示して説明したフレームの拡張フィルタリングシステムの実施形態は、全てを含むことを意図したものではない。スイッチ10は構成要素の一定の設定と配置を含むものとして示したが、留意すべきことは、この描写は論理的なものであり、スイッチ10の構成要素と機能は論理的及び物理的に適宜結合しても、分離しても、分散していてもよいということである。また、スイッチ10の機能性は、構成要素のいかなる好適な集まりと配置により定常することもできる。さらにまた、事実上、スイッチ10の全ての構成要素は単一チップ上で実施してもよい。スイッチ10のいろいろな構成要素により実行される機能は、ポート12に限定されたフィルタリング決定をさせることにより、フレームの拡張フィルタリングを提供するいかなる好適なデバイスやロジックでも達成することもできる。
図2は、入力ポート12におけるフレームドロップ決定を可能とすることにより、フレームを拡張フィルタリングする方法50を示すフローチャートである。左側52には、入力ポート12で実行される動作と機能が示されている。右側54には、スイッチコア30により実行される動作と機能が示されている。一部の実施形態において、これらの動作と機能は、コントローラ14及び/またはスイッチメモリ16により実行されてもよい。
ステップ56において、入力ポート12はフレームを受信する。ステップ58において、そのフレームは入力バッファ20に格納される。次に、ステップ60において、入力ポート12は、キャッシュ22がフレームヘッダの態様に対応するエントリーを有するか判断するため、キャッシュ22中のフレームのヘッダの1つ以上のアドレスをルックアップする。他の実施形態においては、入力ポート12は、キャッシュ22中のフレームの他の態様をルックアップし、キャッシュがフレームに対応するエントリーを有するか判断する。ステップ62において、入力ポート12は、フレームヘッダ中のアドレスがキャッシュ22中のエントリーに対応するか判断する。対応する場合、ステップ64において、入力ポート12はそのフレームをドロップする。一部の実施形態において、入力ポート12は、入力バッファ20からそのフレームを削除することによりそのフレームをドロップする。これは適当な方法を用いて実現することができる。他の実施形態において、キャッシュ22は、そのフレームに実行すべき動作または機能を指示する。例えば、キャッシュ22は、そのフレームのソースアドレスを動的学習のために転送データベース26に送ることを指示するものでもよい。また、キャッシュ22は、BPDUフレーム以外の全てのフレームをドロップすることを指示するものであってもよい。他の例として、キャッシュ22は、フレームを入力ポート12で返送することを指示するものであってもよい。言うまでもなく、キャッシュ22は、そのエントリーに対応するフレームに対して実行されるべきいかなる適当な動作を指示するものであってもよい。フレームアドレスがキャッシュ22中のエントリーに対応しない場合、ステップ66に進む。
ステップ66において、スイッチコア30は、入力ポート12からフレームを受け取り、フレームバッファ24にそのフレームを格納する。ステップ68において、コントローラ14は、フレームヘッダ中のアドレッシング情報と、転送データベース26中の対応するアドレッシングエントリーにアクセスする。ステップ70において、転送データベース26からのアドレッシング情報に基づき、コントローラ14は、そのフレームをドロップすべきかどうか判断する。コントローラ14は、ステップ70においてそのフレームをドロップすべきと判断した時、転送データベース26中の情報に基づいて、そのフレームのために適当な出力ポートを特定する。次に、コントローラ14は、ステップ74において、そのフレームを出力ポート12に転送し、ステップ56に戻り、入力ポート12がフレームを受け取る。
コントローラ14は、ステップ70においてフレームをドロップすべきであると判断すると、ステップ76においてフレームバッファ24からフレームを削除する。例えば、フレームをドロップするかどうかは、フレームのタイプに基づいてもよい。例えば、フレームは、それが設定フレームであるということを除いてドロップ条件を満たしているかも知れない。この場合、コントローラ14は、そのフレームが設定フレームであるので、そのフレームをドロップしないと判断する。また、コントローラ14は、キャッシュ22に関して説明したのと同様に、フレームまたはそのデータに追加的動作を実行してもよい。次に、ステップ78において、コントローラ14は、どの入力ポート12がキャッシュ更新を受け取るかを決定する。この決定後、ステップ80において、コントローラ14は、その入力ポートにキャッシュ更新を送る。更新を受け取った後、入力ポート12は、キャッシュ22を修正してコントローラ14から受け取った更新を組み込む。一部の実施形態において、キャッシュ22は、エントリーを追加、削除、及びまたは修正することにより修正される。次に、ステップ56に戻り、入力ポート12がフレームを受信する。
図2を参照して説明した方法は、単なる例示であり、言うまでもなく、動作の仕方および動作を実行するデバイスは適宜修正することができる。例えば、コントローラ14が方法50の多数の動作を実行すると説明したが、言うまでもなく、コントローラ14により実行されると説明した機能はいかなる好適な構成要素またはロジックにより達成されてもよい。また、本方法は、特定のステップを具体的な順序で実行すると説明したが、当然のことながら、スイッチ10は、これらのステップの一部または全部をいかなる動作可能な順序で実行する、またはまったく実行しない構成要素のいかなる好適な集まり及び配置も想定している。
図3は、転送データベース26に更新を反映する、入力ポート12の1つに対応するキャッシュ22の更新方法100を示すフローチャートである。左側102には、入力ポート12において実行される動作と機能が示されている。右側104には、スイッチコア30において実行される動作と機能が示されている。一部の実施形態において、これらの動作と機能は、コントローラ14及び/またはスイッチメモリ16により実行される。
ステップ106において、コントローラ14は転送データベース更新を受け取る。転送データベース更新は、転送データベース26に格納されたフィルタリングまたはルーティング情報を修正する。次に、ステップ108において、コントローラ14は転送データベース26を修正して、受け取った更新を反映させる。ステップ110において、コントローラ14は、入力ポート12の全てに更新を送る。ポート12に送られた更新は、スイッチメモリ16にある転送データベース26に更新を通知する。他の実施形態においては、コントローラ14は、どの入力ポート12が更新を受け取るかを判断し、その入力ポート12のみに更新を送る。
ステップ112において、入力ポート12は更新を受け取る。次に、ステップ114において、入力ポート12は、その更新がキャッシュ22中のエントリーに影響するか判断する。その更新により影響を受けるエントリーがキャッシュ22になければ、方法100はここで終了する。更新がエントリーに影響する場合、ステップ116において、入力ポート12は、その更新に従ってキャッシュエントリーを修正する。入力ポート12は、そのエントリーを変更、削除、及び/または新しいエントリーを追加することにより、キャッシュエントリーを修正する。キャッシュ22中のエントリーを修正した後、方法100は終了する。
実施形態によっては、図2と3を参照して説明した方法は、転送データベース26とポート12における動作の順序を同一にして、転送データベース26と各ポート12のキャッシュ22間のコヒーレンスを維持するように構成する。例えば、転送データベース26に(図2のステップ68のように)アクセスし、次に、(図3のステップ108のように)転送データベース26を修正した場合、キャッシュ22は、転送データベース26がアクセス及び修正されたのと同じ順序で、アクセスの結果と修正を受ける(それぞれ図2のステップ82と、図3のステップ116)。一部の実施形態において、これは、転送データベース26とキャッシュ22との間に1つの通信経路を設けることにより達成することができる。しかし、図2と3の方法を構成するために、キャッシュのコヒーレンスを補償するいかなる方法または設計を実施してもよい。
図3を参照して説明した方法は単なる例示であって、当然のことながら、上記動作を実行するように示した動作の仕方及びデバイスは、適宜修正することができる。本方法は、特定のステップを具体的な順序で実行するものとして説明したが、当然のことながら、スイッチ10は、スイッチ10は、これらのステップの一部または全部を動作可能な順序で実行する、または実行しない構成要素のいかなる好適な集まり及び配置をも想定したものである。
本発明をいくつかの実施形態により説明したが、当業者は多数の変更や修正に想到するであろう。本発明は、添付した請求項の範囲に入るこのような変更と修正も含むものである。
なお、本開示にあたり、以下の付記を記す。
(付記1)
スイッチング装置であって、
複数のポートを有し、
前記ポートはそれぞれ1つ以上のフィルタリングエントリーを有するキャッシュを有し、
前記ポートはそれぞれ、ペイロードとアドレッシング情報を指定したヘッダとを含むフレームを受信し、前記アドレッシング情報が前記フィルタリングエントリーの1つと一致するか判断し、前記アドレッシング情報が前記フィルタリングエントリーの1つと一致した場合には前記フレームをドロップし、前記アドレッシング情報が前記フィルタリングエントリーの1つと一致しなかった場合には前記フレームをスイッチングコアに転送するように動作可能であり、
前記スイッチングコアは、
前記ポートから転送されたフレームを格納するように動作可能なフレームバッファと、
複数のルーティングエントリーであってそれぞれ出力ポートとドロップ条件とのうち少なくとも1つを示すルーティングエントリーを保持するように動作可能な転送データベースと、
前記フレームバッファ中のフレームのそれぞれについて、前記フレームのヘッダからアドレッシング情報を識別し、前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを識別し、対応するルーティングエントリーが出力ポートを示す場合には前記フレームを前記示された出力ポートに転送し、対応するルーティングエントリーがドロップ条件を示す場合には前記フレームをドロップし、前記ドロップ条件を示すキャッシュ更新を前記フレームを受け取ったポートに通知するように動作可能であることを特徴とするスイッチング装置。
(付記2)
付記1に記載のスイッチング装置であって、
前記ポートはそれぞれキャッシュ更新に応じて選択されたフィルタリングエントリーを更新するようにさらに動作可能であることを特徴とするスイッチング装置。
(付記3)
付記1に記載のスイッチング装置であって、
単一チップに実装されており、それぞれのポートは毎秒10ギガビット以上で動作可能であることを特徴とするスイッチング装置。
(付記4)
付記1に記載のスイッチング装置であって、
前記コントローラは、前記転送データベースに対する更新を受け取り、前記更新に応じて前記転送データベースを修正し、前記更新が前記ルーティングエントリーの1つにより示された少なくとも1つのドロップ条件を修正することを判断し、1つ以上の前記ポートに前記修正されたドロップ条件を示すキャッシュ更新を通知するようにさらに動作可能であり、
前記修正されたドロップ条件を示す前記キャッシュ更新を受け取る前記1つ以上のポートは、前記キャッシュ更新に応じてルーティングエントリーを更新するようにさらに動作可能であり、
前記転送データベースと前記ポートにおける動作順序は、前記転送データベースと各ポート中のキャッシュとの間のコヒーレンスを維持するようにミラーされることを特徴とするスイッチング装置。
(付記5)
付記1に記載のスイッチング装置であって、
前記ドロップ条件のうちの少なくとも1つは、仮想ローカルエリアネットワーク(VLAN)アドレッシング違反とMSTPポート状態違反のうちの選択された1つに対応することを特徴とするスイッチング装置。
(付記6)
付記5に記載のスイッチング装置であって、
前記VLANアドレッシング違反は、入来ポートVLANアドレッシング違反及び出退ポートVLANアドレッシング違反のうち選択された1つを含むことを特徴とするスイッチング装置。
(付記7)
付記1に記載のスイッチング装置であって、
前記アドレッシング情報はソースアドレス及び宛先アドレスを含み、
前記コントローラは、前記転送データベースにアクセスして、前記ソースアドレス及び前記宛先アドレスのうちの1つがドロップ条件を有するか判断することを特徴とするスイッチング装置。
(付記8)
フレーム処理方法であって、
スイッチのポートにおいてペイロードとアドレッシング情報を指定するヘッダとを含むフレームを受信するステップと、
前記ポートと関連するキャッシュに複数のフィルタリングエントリーを保持するステップと、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致するか判断するステップと、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致する場合、前記フレームをドロップするステップと、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致しない場合、前記フレームをスイッチングコアに転送するステップと、
前記スイッチングコア内のフレームバッファに前記ポート及び複数の他のポートから転送されたフレームを格納するステップと、
それぞれ少なくとも出力ポートとドロップ条件の1つを含む複数のルーティングエントリーを転送データベースに保持するステップと、
前記フレームバッファ中の各フレームについて、
前記フレームのヘッダからアドレッシング情報を識別するステップと、
前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを特定するステップと、
前記対応するルーティングエントリーが出力ポートを示す場合、前記フレームを前記示された出力ポートに転送するステップと、
前記対応するルーティングエントリーがドロップ条件を示す場合、前記フレームをドロップし、前記フレームを受信したポートに前記ドロップ条件を示すキャッシュ更新を通知するステップと、を有することを特徴とする方法。
(付記9)
付記8に記載の方法であって、
キャッシュ更新の受け取りに応じて前記ポート中のフィルタリングエントリーを更新するステップをさらに有することを特徴とする方法。
(付記10)
付記8に記載の方法であって、
前記転送データベースに対する更新を受け取るステップと、
前記更新に応じて前記転送データベースを修正するステップと、
前記更新が前記ルーティングエントリーの1つにより示された少なくとも1つのドロップ条件を修正することを判断するステップと、
前記修正されたドロップ条件示すキャッシュ更新を前記ポートに通知するステップと、
前記キャッシュ更新に応じて、前記キャッシュ更新を受け取るポートのルーティングエントリーを更新するステップと、
前記転送データベース及び前記ポートにおける動作順序を一致(mirroring)させて、前記転送データベースと各ポートのキャッシュの間のコヒーレンスを維持するステップと、をさらに有することを特徴とする方法。
(付記11)
付記8に記載の方法であって、
前記ドロップ条件の少なくとも1つは、仮想ローカルエリアネットワーク(VLAN)アドレッシング違反及びMSTPポート状態違反のうち選択された1つに対応することを特徴とする方法。
(付記12)
付記11に記載の方法であって、
前記VLANアドレッシング違反は、入来ポートVLANアドレッシング違反及び出退ポートVLANアドレッシング違反のうち選択された1つを含むことを特徴とする方法。
(付記13)
付記8に記載の方法であって、
前記転送データベースにアクセスしてソースアドレスと宛先アドレスのうち1つがドロップ条件を有するか判断するステップをさらに有し、
前記アドレッシング情報は、前記ソースアドレスと前記宛先アドレスを含むことを特徴とする方法。
(付記14)
フレーム処理ロジックであって、
前記ロジックは媒体中に符号化されており、実行されたときに、
スイッチのポートにおいてペイロードとアドレッシング情報を指定するヘッダとを含むフレームを受信し、
前記ポートと関連するキャッシュに複数のフィルタリングエントリーを保持し、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致するか判断し、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致する場合、前記フレームをドロップし、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致しない場合、前記フレームをスイッチングコアに転送し、
前記スイッチングコア内のフレームバッファに前記ポート及び複数の他のポートから転送されたフレームを格納し、
それぞれ少なくとも出力ポートとドロップ条件の1つを含む複数のルーティングエントリーを転送データベースに保持し、
前記フレームバッファ中の各フレームについて、
前記フレームのヘッダからアドレッシング情報を識別し、
前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを特定し、
前記対応するルーティングエントリーが出力ポートを示す場合、前記フレームを前記示された出力ポートに転送し、
前記対応するルーティングエントリーがドロップ条件を示す場合、前記フレームをドロップし、前記フレームを受信したポートに前記ドロップ条件を示すキャッシュ更新を通知するように動作可能であることを特徴とするロジック。
(付記15)
付記14に記載のロジックであって、
キャッシュ更新に応じて前記ポート中のフィルタリングエントリーを更新するようにさらに動作可能であることを特徴とするロジック。
(付記16)
付記14に記載のロジックであって、
前記転送データベースに対する更新を受け取り、
前記更新に応じて前記転送データベースを修正し、
前記更新が前記ルーティングエントリーの1つにより示された少なくとも1つのドロップ条件を修正することを判断し、
前記修正されたドロップ条件示すキャッシュ更新を前記ポートに通知し、
前記キャッシュ更新に応じて、前記キャッシュ更新を受け取るポートのルーティングエントリーを更新し、
前記転送データベース及び前記ポートにおける動作順序を一致(mirroring)させて、前記転送データベースと各ポートのキャッシュの間のコヒーレンスを維持するようにさらに動作可能であることを特徴とするロジック。
(付記17)
付記14に記載のロジックであって、
前記ドロップ条件の少なくとも1つは、仮想ローカルエリアネットワーク(VLAN)アドレッシング違反及びMSTPポート状態違反のうち選択された1つに対応することを特徴とするロジック。
(付記18)
付記17に記載のロジックであって、
前記VLANアドレッシング違反は、入来ポートVLANアドレッシング違反及び出退ポートVLANアドレッシング違反のうち選択された1つを含むことを特徴とするロジック。
(付記19)
付記14に記載のロジックであって、
前記転送データベースにアクセスしてソースアドレスと宛先アドレスのうち1つがドロップ条件を有するか判断するようにさらに動作可能であり、
前記アドレッシング情報は、前記ソースアドレスと前記宛先アドレスを含むことを特徴とするロジック。
(付記20)
フレーム処理システムであって、
スイッチのポートにおいてペイロードとアドレッシング情報を指定するヘッダとを含むフレームを受信する手段と、
前記ポートと関連するキャッシュに複数のフィルタリングエントリーを保持する手段と、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致するか判断する手段と、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致する場合、前記フレームをドロップする手段と、
前記アドレッシング情報が前記フィルタリングエントリーの1つと一致しない場合、前記フレームをスイッチングコアに転送する手段と、
前記スイッチングコア内のフレームバッファに前記ポート及び複数の他のポートから転送されたフレームを格納する手段と、
それぞれ少なくとも出力ポートとドロップ条件の1つを含む複数のルーティングエントリーを転送データベースに保持する手段と、
前記フレームバッファ中の各フレームについて、
前記フレームのヘッダからアドレッシング情報を識別する手段と、
前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを特定する手段と、
前記対応するルーティングエントリーが出力ポートを示す場合、前記フレームを前記示された出力ポートに転送する手段と、
前記対応するルーティングエントリーがドロップ条件を示す場合、前記フレームをドロップし、前記フレームを受信したポートに前記ドロップ条件を示すキャッシュ更新を通知する手段と、を有することを特徴とするシステム。
スイッチの入力ポートにおけるフレームフィルタリングにより、フレームの拡張フィルタリングを行うスイッチを示すブロック図である。 入力ポートにおいてフレームをドロップする決定を可能とすることによりスイッチの入力ポートにおけるフレームフィルタリング方法を示すフローチャートである。 転送データベースへの更新を反映するために入力ポートのキャッシュを更新する方法を示すフローチャートである。
符号の説明
10 スイッチ
12 ポート
18 ポートメモリ
20 入力バッファ
22 キャッシュ
30 スイッチコア
14 コントローラ
16 スイッチメモリ
24 フレームバッファ
26 転送データベース
28 ファームウェア
52 入力ポート
54 スイッチコア

Claims (10)

  1. スイッチング装置であって、
    複数のポートを有し、
    前記ポートはそれぞれ1つ以上のフィルタリングエントリーを有するキャッシュを有し、
    前記ポートはそれぞれ、ペイロードとアドレッシング情報を指定したヘッダとを含むフレームを受信し、前記アドレッシング情報が前記フィルタリングエントリーの1つと一致するか判断し、前記アドレッシング情報が前記フィルタリングエントリーの1つと一致した場合には前記フレームをドロップし、前記アドレッシング情報が前記フィルタリングエントリーの1つと一致しなかった場合には前記フレームをスイッチングコアに転送するように動作可能であり、
    前記スイッチングコアは、
    前記ポートから転送されたフレームを格納するように動作可能なフレームバッファと、
    複数のルーティングエントリーであってそれぞれ出力ポートとドロップ条件とのうち少なくとも1つを示すルーティングエントリーを保持するように動作可能な転送データベースと、
    前記フレームバッファ中のフレームのそれぞれについて、前記フレームのヘッダからアドレッシング情報を識別し、前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを識別し、対応するルーティングエントリーが出力ポートを示す場合には前記フレームを前記示された出力ポートに転送し、対応するルーティングエントリーがドロップ条件を示す場合には前記フレームをドロップし、前記ドロップ条件を示すキャッシュ更新を前記フレームを受け取ったポートに通知するように動作可能であることを特徴とするスイッチング装置。
  2. 請求項1に記載のスイッチング装置であって、
    前記ポートはそれぞれキャッシュ更新に応じて選択されたフィルタリングエントリーを更新するようにさらに動作可能であることを特徴とするスイッチング装置。
  3. 請求項1に記載のスイッチング装置であって、
    単一チップに実装されており、それぞれのポートは毎秒10ギガビット以上で動作可能であることを特徴とするスイッチング装置。
  4. 請求項1に記載のスイッチング装置であって、
    前記コントローラは、前記転送データベースに対する更新を受け取り、前記更新に応じて前記転送データベースを修正し、前記更新が前記ルーティングエントリーの1つにより示された少なくとも1つのドロップ条件を修正することを判断し、1つ以上の前記ポートに前記修正されたドロップ条件を示すキャッシュ更新を通知するようにさらに動作可能であり、
    前記修正されたドロップ条件を示す前記キャッシュ更新を受け取る前記1つ以上のポートは、前記キャッシュ更新に応じてルーティングエントリーを更新するようにさらに動作可能であり、
    前記転送データベースと前記ポートにおける動作順序は、前記転送データベースと各ポート中のキャッシュとの間のコヒーレンスを維持するようにミラーされることを特徴とするスイッチング装置。
  5. 請求項1に記載のスイッチング装置であって、
    前記ドロップ条件のうちの少なくとも1つは、仮想ローカルエリアネットワーク(VLAN)アドレッシング違反とMSTPポート状態違反のうちの選択された1つに対応することを特徴とするスイッチング装置。
  6. 請求項5に記載のスイッチング装置であって、
    前記VLANアドレッシング違反は、入来ポートVLANアドレッシング違反及び出退ポートVLANアドレッシング違反のうち選択された1つを含むことを特徴とするスイッチング装置。
  7. 請求項1に記載のスイッチング装置であって、
    前記アドレッシング情報はソースアドレス及び宛先アドレスを含み、
    前記コントローラは、前記転送データベースにアクセスして、前記ソースアドレス及び前記宛先アドレスのうちの1つがドロップ条件を有するか判断することを特徴とするスイッチング装置。
  8. フレーム処理方法であって、
    スイッチのポートにおいてペイロードとアドレッシング情報を指定するヘッダとを含むフレームを受信するステップと、
    前記ポートと関連するキャッシュに複数のフィルタリングエントリーを保持するステップと、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致するか判断するステップと、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致する場合、前記フレームをドロップするステップと、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致しない場合、前記フレームをスイッチングコアに転送するステップと、
    前記スイッチングコア内のフレームバッファに前記ポート及び複数の他のポートから転送されたフレームを格納するステップと、
    それぞれ少なくとも出力ポートとドロップ条件の1つを含む複数のルーティングエントリーを転送データベースに保持するステップと、
    前記フレームバッファ中の各フレームについて、
    前記フレームのヘッダからアドレッシング情報を識別するステップと、
    前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを特定するステップと、
    前記対応するルーティングエントリーが出力ポートを示す場合、前記フレームを前記示された出力ポートに転送するステップと、
    前記対応するルーティングエントリーがドロップ条件を示す場合、前記フレームをドロップし、前記フレームを受信したポートに前記ドロップ条件を示すキャッシュ更新を通知するステップと、を有することを特徴とする方法。
  9. フレーム処理プログラムであって、
    前記プログラムは媒体中に符号化されており、実行されたときに、
    スイッチのポートにおいてペイロードとアドレッシング情報を指定するヘッダとを含むフレームを受信し、
    前記ポートと関連するキャッシュに複数のフィルタリングエントリーを保持し、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致するか判断し、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致する場合、前記フレームをドロップし、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致しない場合、前記フレームをスイッチングコアに転送し、
    前記スイッチングコア内のフレームバッファに前記ポート及び複数の他のポートから転送されたフレームを格納し、
    それぞれ少なくとも出力ポートとドロップ条件の1つを含む複数のルーティングエントリーを転送データベースに保持し、
    前記フレームバッファ中の各フレームについて、
    前記フレームのヘッダからアドレッシング情報を識別し、
    前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを特定し、
    前記対応するルーティングエントリーが出力ポートを示す場合、前記フレームを前記示された出力ポートに転送し、
    前記対応するルーティングエントリーがドロップ条件を示す場合、前記フレームをドロップし、前記フレームを受信したポートに前記ドロップ条件を示すキャッシュ更新を通知するように動作可能であることを特徴とするロジック。
  10. フレーム処理システムであって、
    スイッチのポートにおいてペイロードとアドレッシング情報を指定するヘッダとを含むフレームを受信する手段と、
    前記ポートと関連するキャッシュに複数のフィルタリングエントリーを保持する手段と、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致するか判断する手段と、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致する場合、前記フレームをドロップする手段と、
    前記アドレッシング情報が前記フィルタリングエントリーの1つと一致しない場合、前記フレームをスイッチングコアに転送する手段と、
    前記スイッチングコア内のフレームバッファに前記ポート及び複数の他のポートから転送されたフレームを格納する手段と、
    それぞれ少なくとも出力ポートとドロップ条件の1つを含む複数のルーティングエントリーを転送データベースに保持する手段と、
    前記フレームバッファ中の各フレームについて、
    前記フレームのヘッダからアドレッシング情報を識別する手段と、
    前記アドレッシング情報に対応する前記転送データベース中のルーティングエントリーの1つを特定する手段と、
    前記対応するルーティングエントリーが出力ポートを示す場合、前記フレームを前記示された出力ポートに転送する手段と、
    前記対応するルーティングエントリーがドロップ条件を示す場合、前記フレームをドロップし、前記フレームを受信したポートに前記ドロップ条件を示すキャッシュ更新を通知する手段と、を有することを特徴とするシステム。
JP2006108722A 2005-04-12 2006-04-11 スイッチの入力ポートにおけるフレームフィルタリング Pending JP2006295937A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US67036905P 2005-04-12 2005-04-12
US11/278,751 US7688825B2 (en) 2005-04-12 2006-04-05 Filtering frames at an input port of a switch

Publications (1)

Publication Number Publication Date
JP2006295937A true JP2006295937A (ja) 2006-10-26

Family

ID=37083084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006108722A Pending JP2006295937A (ja) 2005-04-12 2006-04-11 スイッチの入力ポートにおけるフレームフィルタリング

Country Status (4)

Country Link
US (1) US7688825B2 (ja)
EP (1) EP1713212B1 (ja)
JP (1) JP2006295937A (ja)
DE (1) DE602006002158D1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015159482A (ja) * 2014-02-25 2015-09-03 アラクサラネットワークス株式会社 ネットワーク装置、及び、通信方法
JP2021083128A (ja) * 2021-03-05 2021-05-27 Necプラットフォームズ株式会社 監視装置、スイッチ、通信装置、通信システム、監視方法及び監視プログラム

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070268903A1 (en) * 2006-05-22 2007-11-22 Fujitsu Limited System and Method for Assigning Packets to Output Queues
US20070280104A1 (en) * 2006-06-01 2007-12-06 Takashi Miyoshi System and Method for Managing Forwarding Database Resources in a Switching Environment
US7742408B2 (en) * 2006-08-04 2010-06-22 Fujitsu Limited System and method for filtering packets in a switching environment
US7826468B2 (en) * 2006-08-04 2010-11-02 Fujitsu Limited System and method for bypassing an output queue structure of a switch
US8576840B2 (en) * 2006-11-13 2013-11-05 World Wide Packets, Inc. Assigning packets to a network service
US7889748B1 (en) * 2007-02-02 2011-02-15 Gigamon Llc. Mapping a port on a packet switch appliance
US20090282443A1 (en) * 2008-05-07 2009-11-12 Samsung Electronics Co., Ltd. Streaming method and apparatus using key frame
CN102255804B (zh) * 2011-07-06 2014-07-02 北京星网锐捷网络技术有限公司 报文处理方法、装置及网络设备
JP6440191B2 (ja) * 2012-06-06 2018-12-19 日本電気株式会社 スイッチ装置、vlan設定管理方法及びプログラム
ES2628094T3 (es) * 2012-11-28 2017-08-01 Nec Corporation Dispositivo de conmutación, método y programa de gestión de configuración de VLAN
CN104885417A (zh) * 2012-12-28 2015-09-02 日本电气株式会社 控制装置、通信系统、通信节点控制方法以及程序
CN106789756A (zh) * 2016-12-26 2017-05-31 腾讯科技(深圳)有限公司 一种基于操作系统内核网桥的数据发送方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000156708A (ja) * 1998-10-05 2000-06-06 Paketto Engines Inc ネットワ―ク・スイッチング装置
JP2000261487A (ja) * 1999-03-10 2000-09-22 Nec Corp パケットフィルタリング装置およびパケットフィルタリング方法
JP2000261477A (ja) * 1999-03-04 2000-09-22 Nec Corp ルータ装置
JP2002158695A (ja) * 2000-11-22 2002-05-31 Nec Corp ルーティングテーブル更新方式および方法
JP2003158541A (ja) * 2001-11-21 2003-05-30 Mitsubishi Electric Corp ルーティング制御装置、及び、ルーティング制御方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5872783A (en) * 1996-07-24 1999-02-16 Cisco Systems, Inc. Arrangement for rendering forwarding decisions for packets transferred among network switches
US6208649B1 (en) * 1998-03-11 2001-03-27 Cisco Technology, Inc. Derived VLAN mapping technique
US6377577B1 (en) * 1998-06-30 2002-04-23 Cisco Technology, Inc. Access control list processing in hardware
US6847620B1 (en) * 1999-05-13 2005-01-25 Intermec Ip Corp. Mobile virtual LAN
US6934283B1 (en) * 1999-11-08 2005-08-23 Hewlett-Packard Development Company, L.P. System and method for source defined packet routing
ATE265774T1 (de) 1999-12-07 2004-05-15 Broadcom Corp Spiegelung in einer netzwerkvermittlungsstapelanordnung
US20040213237A1 (en) * 2000-06-29 2004-10-28 Toshikazu Yasue Network authentication apparatus and network authentication system
US7068667B2 (en) * 2001-04-27 2006-06-27 The Boeing Company Method and system for path building in a communications network
US7206283B2 (en) * 2001-05-15 2007-04-17 Foundry Networks, Inc. High-performance network switch
US6922749B1 (en) * 2001-10-12 2005-07-26 Agilent Technologies, Inc. Apparatus and methodology for an input port of a switch that supports cut-through operation within the switch
US7310306B1 (en) * 2001-10-16 2007-12-18 Cisco Technology, Inc. Method and apparatus for ingress port filtering for packet switching systems
JP3868815B2 (ja) * 2002-01-10 2007-01-17 富士通株式会社 通信システム
US6959364B2 (en) * 2002-06-28 2005-10-25 Intel Corporation Partially inclusive snoop filter
EP1401154A3 (en) * 2002-09-12 2010-08-04 Thomson Licensing Device for connecting a wireless network to at least one other network
US7701936B2 (en) * 2003-09-05 2010-04-20 Alcatel-Lucent Usa Inc. Obtaining path information related to a bridged network
US7440467B2 (en) * 2004-05-05 2008-10-21 Gigamon Systems Llc Asymmetric packet switch and a method of use

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000156708A (ja) * 1998-10-05 2000-06-06 Paketto Engines Inc ネットワ―ク・スイッチング装置
JP2000261477A (ja) * 1999-03-04 2000-09-22 Nec Corp ルータ装置
JP2000261487A (ja) * 1999-03-10 2000-09-22 Nec Corp パケットフィルタリング装置およびパケットフィルタリング方法
JP2002158695A (ja) * 2000-11-22 2002-05-31 Nec Corp ルーティングテーブル更新方式および方法
JP2003158541A (ja) * 2001-11-21 2003-05-30 Mitsubishi Electric Corp ルーティング制御装置、及び、ルーティング制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015159482A (ja) * 2014-02-25 2015-09-03 アラクサラネットワークス株式会社 ネットワーク装置、及び、通信方法
JP2021083128A (ja) * 2021-03-05 2021-05-27 Necプラットフォームズ株式会社 監視装置、スイッチ、通信装置、通信システム、監視方法及び監視プログラム
JP7114769B2 (ja) 2021-03-05 2022-08-08 Necプラットフォームズ株式会社 通信システム

Also Published As

Publication number Publication date
US20060227777A1 (en) 2006-10-12
DE602006002158D1 (de) 2008-09-25
US7688825B2 (en) 2010-03-30
EP1713212B1 (en) 2008-08-13
EP1713212A1 (en) 2006-10-18

Similar Documents

Publication Publication Date Title
JP2006295937A (ja) スイッチの入力ポートにおけるフレームフィルタリング
US6128666A (en) Distributed VLAN mechanism for packet field replacement in a multi-layered switched network element using a control field/signal for indicating modification of a packet with a database search engine
EP1158725B1 (en) Method and apparatus for multi- redundant router protocol support
JP5493926B2 (ja) インタフェース制御方式、インタフェース制御方法、及びインタフェース制御用プログラム
JP4115721B2 (ja) スイッチングノードのための分類およびタグ付け規則
JP4060378B2 (ja) 多層分散ネットワーク要素
US8385356B2 (en) Data frame forwarding using a multitiered distributed virtual bridge hierarchy
US8594090B2 (en) Multicasting using a multitiered distributed virtual bridge hierarchy
US7660259B1 (en) Methods and systems for hybrid hardware- and software-base media access control (MAC) address learning
JP2002508123A (ja) マルチレイヤ・ネットワーク要素用のシステムおよび方法
PT1777887E (pt) Vlan operando com endereços de mac
AU772252B2 (en) Method and system for managing forwarding tables
KR100317991B1 (ko) 기가비트 이더넷 기반 라우터에서의 병렬처리형 3계층패킷 포워딩 처리 방법 및 장치
US9515924B2 (en) Method and apparatus providing single-tier routing in a shortest path bridging (SPB) network
CN110011911A (zh) 一种静态路由处理方法及装置
US20160269271A1 (en) Msdc scaling through on-demand path update
JP2007288748A (ja) スイッチングハブ、ルータおよび仮想lanシステム
KR100489945B1 (ko) 프로세서 어레이에서 복수개의 프로세서들을 동기화하는장치 및 그 방법
US10972402B1 (en) Dynamic management of inline entries in hardware across protocols in a scaled environment
US10585725B2 (en) System and method of hitless reconfiguration of a data processing pipeline
US10832370B2 (en) System and method of hitless reconfiguration of a data processing pipeline with standby pipeline
JP2006165603A (ja) データ転送装置
KR100441033B1 (ko) 스위칭 데이터베이스 캐시 관리 시스템
WO2019191303A1 (en) System and method of hitless reconfiguration of a data processing pipeline
KR20240117337A (ko) 가상 방화벽 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100607

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100629