JP4732654B2 - ネットワークスイッチポート上でデータパケットのタイプをリアルタイムで識別するための装置および方法 - Google Patents

ネットワークスイッチポート上でデータパケットのタイプをリアルタイムで識別するための装置および方法 Download PDF

Info

Publication number
JP4732654B2
JP4732654B2 JP2001534807A JP2001534807A JP4732654B2 JP 4732654 B2 JP4732654 B2 JP 4732654B2 JP 2001534807 A JP2001534807 A JP 2001534807A JP 2001534807 A JP2001534807 A JP 2001534807A JP 4732654 B2 JP4732654 B2 JP 4732654B2
Authority
JP
Japan
Prior art keywords
minimum term
minimum
incoming data
data packet
byte
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.)
Expired - Fee Related
Application number
JP2001534807A
Other languages
English (en)
Other versions
JP2003513540A (ja
JP2003513540A5 (ja
Inventor
ツェン,シュル−ジィー
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices 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
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2003513540A publication Critical patent/JP2003513540A/ja
Publication of JP2003513540A5 publication Critical patent/JP2003513540A5/ja
Application granted granted Critical
Publication of JP4732654B2 publication Critical patent/JP4732654B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • H04L49/602Multilayer or multiprotocol switching, e.g. IP switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • H04L49/352Gigabit ethernet switching [GBPS]
    • 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

Description

【0001】
【発明の分野】
この発明は、サブネットワーク間でデータパケットを交換するように構成される非閉塞網スイッチ内でのデータパケットの第2層および第3層交換(switching)に関する。
【0002】
【発明の背景】
ローカルエリアネットワークはネットワークケーブルまたは他の媒体を用いてネットワーク上のステーションを接続する。各ローカルエリアネットワークアーキテクチャは、ネットワークインターフェイス装置が各ネットワークノードでネットワーク媒体にアクセスできるようにするメディアアクセス制御(MAC)を用いる。
【0003】
イーサネット(R)プロトコルIEEE802.3が発達して、データパケットを伝送するための半2重のメディアアクセスメカニズムおよび全2重のメディアアクセスメカニズムを特定するようになった。全2重のメディアアクセスメカニズムは、2つのネットワーク要素間、たとえばネットワークノードとスイッチされたハブとの間で双方向のポイントツーポイントの通信リンクをもたらす。
【0004】
スイッチされたローカルエリアネットワークには、より高速の接続性、より柔軟性のあるスイッチング性能、およびより複雑なネットワークアーキテクチャに対処する能力に対する需要が高まっている。たとえば、US−A−5 953 335は、異なるネットワークノード間で第2層タイプのイーサネット(R)(IEEE802.3)データパケットを交換するように構成されるネットワークスイッチを開示しており、受取られたデータパケットは、(ルータを介して)別のサブネットワークまたはステーションの所定の群を特定するIEEE802.1qプロトコルに従った、VLAN(仮想LAN)タグ付きフレームを含むことがある。スイッチングは第2層レベルで起こるため、サブネットワーク間でデータパケットを転送するのに通常、ルータが必要とされる。
ネットワーク周辺でデータパケットの伝送を容易にする方法は衆知のものである。たとえば、US−A−5 546 389は、データパケットに添付されるラベルを用い、経路指定された情報を迅速に判定できることを説明する。WO−A−99 53648はデータパケット内のヘッダの情報をハッシュし、スイッチングの情報を示すこのようなタグが記憶されるメモリに対してインデックスを形成する。US A−5 802 054はマスキングテンプレートを用いてハッシュされるべき入来データパケットからのバイトを選択するよう用いられる、アトミックネットワークスイッチにおいて同様のシステムを用いる。
WO−A−98 35480は、ネットワークノードにより受取られるデータパケットのタイプを判定し、データパケットに関連する情報を含むデータ構造を添付し、ノードでの処理を容易にするためのメディアアクセスコントロールミクロ−RISCストリームプロセッサを説明する。この書類で開示される方法は、添付の請求項1のプリアンブルの特徴を含む。
【0005】
ネットワークスイッチのスイッチング性能を高め、第3層(たとえばインターネットプロトコル)の処理を含むための努力は、重大な欠点を有することがある。なぜなら、現在の第2層スイッチは好ましくは非閉塞モードにおいて動作するように構成され、データパケットは、データパケットが受取られる速度と同じ速度でスイッチから出力され得るからである。より高速のスイッチが、100Mbpsまたはギガビットのネットワーク等のより高速なネットワークに対し、第2層スイッチングおよび第3層スイッチングのどちらの能力も確実に提供できるよう、新たな設計が必要とされる。
【0006】
しかし、このような設計要件はネットワークスイッチの非閉塞の特徴を失わせる危険がある。なぜなら、ネットワークスイッチの交換構造にとってワイヤ速度(すなわち、ネットワークデータ速度)で第3層の処理を行なうことが益々難しくなっているからである。
【0007】
【発明の概要】
ネットワークスイッチが、100Mbpsおよびギガビットのリンクに対し、データパケットを閉塞することなく第2層スイッチングおよび第3層スイッチングの能力を提供できる構成に対するニーズがある。
【0008】
さらに、ネットワークスイッチが、第2層スイッチングおよび第3層スイッチングの能力を、そうでなければ交換されたデータパケットの待ち時間に影響を及ぼすおそれのある、ネットワークスイッチ内の最小のバッファリングで提供することが可能な構成に対するニーズがある。
【0009】
さらに、第3層データパケットの異なるタイプの区別をするようネットワークスイッチを容易にプログラム可能として、サービス品質(QoS)の達成が可能な構成に対するニーズがある。
【0010】
さらに、ネットワークスイッチポートが入来データパケットを瞬時に評価し、第3層またはより上位のプロトコルを判定し、関連する切換構造に、検出されたプロトコルに従って入来データパケットを処理するのに充分な時間を提供することができる構成に対するニーズがある。
【0011】
これらのおよび他のニーズは、ネットワークスイッチポートが入来データパケットを瞬時のベースで評価するように構成されるフィルタを含む、この発明により達成される。このフィルタは、データパケットの入来データストリームとそれぞれのプロトコルを認識するように構成される多数のテンプレートとを同時に比較する。各テンプレートは複数の最小項(min term)から成り、各最小項は入来データパケットの選択されたデータバイトとの所定の比較動作を特定する。フィルタはデータバイトの順序に基づいて最小項にアクセスするが、それは第1のデータバイトの比較に用いられる最小項が第1のデータバイトが受取られると第1のデータバイトとの比較のために最初にアクセスされ、第2のデータバイトの比較に用いられる最小項が第2のデータバイトが受取られると第2のデータバイトとの比較のために次にアクセスされるように、行われる。したがって、フィルタは、選択されたバイトがネットワークスイッチポートにより受取られると、入来データパケットの選択されたバイトに対応する最小項を、同時に比較する。最小項と入来データストリームの選択されたデータバイトとの比較結果は、フィルタ内の方程式のコア(core)により評価され、それはテンプレートに対する比較結果を判定し、タグをスイッチングコアに出力し、スイッチングコアに、受取られたデータパケットをどのように処理すべきかについての情報を提供する。したがって、スイッチングコアは高速データネットワークにおいて非閉塞で、受取られたデータパケットの第2層または第3層のスイッチングを行なうのに充分な時間を有する。
【0012】
この発明の1つの局面は、ネットワークスイッチポートで入来データパケットを評価する方法を提供する。この方法は、それぞれのデータフォーマットを認識するように構成された複数のテンプレートを記憶するステップを含み、各テンプレートは、対応する所定の値と入来データパケットの対応する選択されたバイトとを比較するように構成される、少なくとも1つの最小項を有する。この方法はさらに、選択されたバイトと選択されたバイトに対応する最小項とを、選択されたバイトがネットワークスイッチポートにより受取られると同時に比較するステップと、最小項と、ネットワークスイッチポートにより受取られるデータバイトとの比較に基づいて入来データパケットを識別する比較結果を生成するステップとを含む。それぞれのデータフォーマットを識別するように構成されるテンプレートを記憶することにより、ユーザ定義のデータフォーマットを識別するためにネットワークスイッチポートを容易にプログラムできる。さらに、選択されたバイトがネットワークスイッチポートから受取られると同時に、選択されるバイトに対応する最小項を比較することにより、確実に入来データパケットをリアルタイムで評価できるようになり、データパケットが受取られると、ユーザ定義のデータフォーマットに対して入来データパケットの識別が可能になる。
【0013】
この発明の別の局面は、ネットワークスイッチポートで入来データパケットを評価する方法を提供する。この方法は、第1のバイトがネットワークスイッチポートにより受取られると同時に、入来データパケットの第1のバイトと複数のテンプレートとを、テンプレートの少なくとも1つと関連する少なくとも第1の最小項と比較することにより、比較するステップを含み、各テンプレートは入来データパケット内の所定のフォーマットを識別するように構成される。この方法はさらに、第1のバイトに続き、入来データパケットの第2のバイトとテンプレートとを、第2のバイトを少なくともテンプレートの1つと関連する少なくとも第2の最小項と比較することにより、同時に比較するステップと、複数のテンプレートに対し第1のバイトと第2のバイトとの比較からの最小項の結果に基づいて比較結果を生成するステップとを含む。第1のバイトと少なくとも第1の最小項とを同時に比較し、さらに第1のバイトに続く第2のバイトと少なくとも第2の最小項とを同時に比較することにより、関連するデータバイトの受取られる順序に基づき、確実に最小項の順次的な処理が行われる。したがって、多数のテンプレートの処理は、入来データストリームに基づき最小項を順序付けることにより、同時におよびリアルタイムに行われ得る。したがって、入来データパケットはネットワークスイッチポートでリアルタイムに評価され、ネットワークスイッチポートでの待ち時間を最小化することができる。
【0014】
この発明のさらに別の局面は、入来データパケットを評価するように構成されたネットワークスイッチポートフィルタを提供する。ネットワークスイッチポートフィルタは最小項の値を記憶するように構成された最小項メモリを含む。各最小項の値は、入来データパケットの対応する選択されたバイトに基づき、比較のため最小項メモリに記憶される。最小項の値はさらに、対応する比較動作を特定する表現部分と、対応する最小項を用いるテンプレートを特定する識別子フィールドとを含む。ネットワークスイッチポートフィルタはさらに、入来データパケットの受取られたバイトと、受取られたバイトに対応する最小項とを同時に比較し、それぞれの最小項の比較結果を生成させるように構成された最小項発生器と、テンプレートに対する最小項の比較結果に基づいて入来データパケットを識別するフレームタグを生成するように構成された方程式のコアとを含む。各最小項の値は入来データパケットの対応する選択されたバイトに基いた位置に記憶されるので、各最小項は最小項メモリからのアクセスが可能で、ネットワークスイッチポートにより受取られる選択されたバイトの順序に基づいて選択されたバイトと比較することが可能である。したがって、最小項発生器は、入来データパケットの所与の受取られたバイトと、関連するすべての最小項とを同時に比較することができ、入来データパケットをリアルタイムで評価することができる。
【0015】
この発明のさらなる利点および新規の特徴のある部分は以下の説明に述べられるであろうし、ある部分は以下を考察すると当業者には明らかになるか、またはこの発明の実施により認識されるであろう。この発明の利点は特に添付の請求項に示された手段および組合せにより認識され、達成されるであろう。
【0016】
添付の図の参照では、同じ参照番号を有する構成要素は、すべて同じ要素または構成要素を示す。
【0017】
【この発明を実施するための最良の態様】
図1はイーサネット(R)(IEEE802.3)ネットワーク等のパケット交換ネットワーク10を示すブロック図である。パケット交換ネットワークは、ネットワークステーション14間でのデータパケットの通信を可能にする、集積化された(すなわちシングルチップの)マルチポートスイッチ12を含む。各ネットワークステーション14、たとえばクライアントのワークステーションは通常、IEEE802.3プロトコルに従い、10Mbpsまたは100Mbpsでデータパケットの送信および受信をするように構成される。集積マルチポートスイッチ12の各々はギガビットイーサネット(R)リンク16により相互接続され、サブネットワーク18a、18b、および18c間でのデータパケットの転送を可能にする。したがって、各サブネットワークはスイッチ12と、ネットワークステーション14の関連する群とを含む。
【0018】
各スイッチ12は、メディアアクセス制御(MAC)モジュール22とパケット分類モジュール24とを含むスイッチポート20を含む。MACモジュール20はIEEE802.3uプロトコル従って10/100Mbps物理層(PHY)トランシーバ(図示せず)を介し、データパケットを関連するネットワークステーション14に送受信する。各スイッチ12はさらに、受取られるデータパケットに対しフレーム転送決定を行なうように構成された切換構造25を含む。特に、切換構造25は送信元アドレス、宛先アドレス、およびイーサネット(R)(IEEE802.3)ヘッダ内のVLAN情報に基づき、第2層のスイッチング決定を行なうように構成される。スイッチ構造25はさらに、イーサネット(R)パケット内のIPデータパケットの評価に基づき、選択的に第3層のスイッチング決定を行なうように構成される。
【0019】
図1に示されるように、各スイッチ12は関連するホストCPU26と、バッファメモリ28、たとえばSSRAMとを有する。ホストCPU26は、切換構造25のプログラミングを含む、対応するスイッチ12のすべての動作を制御する。バッファメモリ28は対応するスイッチ12によって用いられてデータフレームを記憶し、一方、切換構造25は受取られたデータパケットに対し転送決定の処理を行なう。
【0020】
上述のとおり、切換構造25は第2層スイッチング決定および第3層スイッチング決定を行なうように構成される。第3層スイッチング決定の有用性は、サブネットワーク18a内のエンドステーション14がサブネットワーク18b、18c、またはその両方における選択されたネットワークステーションに、eメールのメッセージを送信したいとき、特に有効になるかもしれない。第2層スイッチング決定しか利用できなければ、スイッチ12aの切換構造25は特定の宛先アドレス情報なしにeメールのメッセージをスイッチ12bおよびスイッチ12cに送り、スイッチ12bおよびスイッチ12cのすべてのポートを溢れさせる結果になるだろう。そうでなければ、スイッチ12aの切換構造25はeメールのメッセージをルータ(図示せず)に送る必要があり、さらなる遅れを招くだろう。切換構造25による第3層のスイッチング決定を用いることにより、スイッチ構造25は先行転送決定を含めてパケットをどのように扱うかについて、さらにビデオまたは音声等の待ち時間に敏感な適用に対し,或るパケットを高いプライオリティのパケットと考えるべきかどうかに至るまで、インテリジェントな決定を行なうことができる。切換構造25による第3層のスイッチング決定を用いることにより、さらに、スイッチ12aのホストCPU26は、スイッチ12bのIPアドレスに対応するIPアドレスを有するメッセージを送ることにより、遠隔で他のスイッチ、たとえばスイッチ12bをプログラミングすることができる。スイッチ12bは、スイッチ12bへのアドレスをつけられたメッセージの検出に応答して、対応するホストCPU26にメッセージを転送し、スイッチ12bのプログラミングを行うことができる。
【0021】
図2は、IPパケット32をペイロードデータとして搬送するイーサネット(R)(IEEE802.3)パケット30を示す図である。特に、イーサネット(R)パケット30はスタートフレームデリミタ(SFD)34、イーサネット(R)ヘッダ36、IPパケット32、およびサイクリックリダンダンシチェック(CRC)またはフレームチェックシーケンス(FCS)フィールド38を含む。したがって、第3層のスイッチング決定のように構成される切換構造25は、受取られたイーサネット(R)フレーム30内でIPパケット32の処理を迅速に行ない、スイッチ内のフレームの閉塞を避けることができなければならない。
【0022】
図3は、入来データパケットに対して行なわれる可能性のある、第3層の処理のタイプの例を示すフロー図である。図3のフロー図は従来、ソフトウェアで実現され、入来データパケットがハイパテキストトランスポートプロトコル(HTTP)パケットであるのかをステップ50で、SNMPパケットであるのかをステップ52で、または高いプライオリティのパケットであるのかをステップ54でチェックすることを含むだろう。その後、ステップ56、57、58、または60においてパケットを識別する適切なタグが割当てられるだろう。
【0023】
しかし、図3の構成は、実用上の観点から、100Mbpsまたはギガビットのネットワークに対し非閉塞のスイッチを提供するように、ハードウェアで実現することはできない。特に、図3の決定プロセスの順次的な性質により、入来データパケットに対して過度の待ち時間を生ずる結果になるだろう。
【0024】
開示された実施例によれば、図1のパケット分類モジュール24は、入来データストリームと入来データストリームのデータフォーマットを識別するテンプレートとの多数の同時比較を行なうように構成される。特に、ホストプロセッサ26のユーザは、或るIPプロトコルを有するデータパケットが切換構造25によりいかに扱われるべきかを規定する方針を特定するであろう。このような方針は、切換構造25内に、各対応するIPプロトコルタイプに対するフレーム転送決定の組をローディングすることによって実現される。したがって、切換構造25は、HTTPパケットに対し1組のフレーム転送命令を、SNMPパケットに対しフレーム転送命令の別の組を、高いプライオリティのパケット(たとえばビデオ、音声等)に対しフレーム転送命令の別の組を含む可能性がある。
【0025】
図4は、この発明の実施例に従ったパケット分類モジュール24を示すブロック図である。図4に示されるように、ネットワークスイッチポート20はMAC22、受信FIFOバッファ27、ヘッダモディファイヤ29、およびパケット分類モジュール24を含む。パケット分類モジュール24はネットワークスイッチポートフィルタとも呼ばれ、ネットワークスイッチポート20で入来データパケットを識別(すなわち評価)し、さらに受取ったデータパケットのタイプに基づき、データパケット上に行なわれるべき処置を特定するタグを切換構造25に与えるように構成される。特に、パケット分類モジュール24は、入来データパケットと、それぞれのデータフォーマットを識別するように構成される複数のテンプレートとを、同時に比較する。パケット分類モジュール24は、入来データパケットと複数のテンプレートとの比較に基づき、切換構造25に与えられるべきタグを特定する、実行されるべき方程式を識別する。
【0026】
特に、パケット分類モジュール24は、複数のテンプレートから少なくとも1つの符合したテンプレートを検出することにより、入来データパケットを識別する比較結果を生成する。その後、パケット分類モジュール24は、方程式のうちどれが符合したテンプレートを含むかを識別し、方程式によって特定されたタグを生成する。
【0027】
図5Aおよび図5Bは、パケット分類モジュール24による、方程式の2つのテンプレートの同時処理を示す図である。図5Aは方程式のパケット分類モジュール24による論理評価を示す。
【0028】
Eq1=M1*M2*M3*M4*(M5+M6+M7+M8)
図5Bは方程式Eq1が実際に最小項メモリ70内にどのように記憶されるかを示す。方程式Eq1は4つのテンプレートの62a、62b、62c、および62dを含む。テンプレート62aは最小項M1、M2、M3、M4、およびM5を含む。テンプレート62bは最小項M1、M2、M3、M4、およびM6を含む。テンプレート62cは最小項M1、M2、M3、M4、およびM7を含む。テンプレート62dは最小項M1、M2、M3、M4、およびM8を含む。各テンプレート62は、IPデータパケット32のヘッダに基づいて認識可能な特定のIPデータフォーマットに対応する。たとえば、テンプレート62aおよび62cはHTTPパケットを識別するように構成されるとよく、テンプレート62bおよび62dはSNMPパケットを識別するように構成されるとよい。特に、HTTPパケットの識別は、それがIPv4フォーマット内にあり、IP内の生存時間フィールドが1より大きく、IPヘッダ内のプロトコルフィールドがTCPであり、ヘッダチェックサムが正しく、発信元TCPポートが80であるか宛先TCPポートが80であると行なわれる。SNMPパケットの識別は、それがIPv4フォーマット内にあり、IP内の生存時間フィールドが1より大きく、IPヘッダ内のプロトコルフィールドがTCPであり、ヘッダチェックサムが正しく、発信元TCPポートが25であるか宛先TCPポートが25であると行なわれる。
【0029】
したがって、以下の最小項は上述の基準のすべてを表わすよう確立され得る。
M1=パケットはIPv4フォーマット内にある
M2=IP内の生存時間フィールドは1より大きい
M3=IPヘッダ内のプロトコルフィールドはTCPである
M4=ヘッダチェックサムは正しい
M5=ソースTCPポートは80である
M6=宛先TCPポートは80である
M7=ソースTCPポートは25である
M8=宛先TCPポートは25である
したがって、テンプレート62aおよび62cはHTTPパケットを識別し、テンプレート62bおよび62dはSNMPパケットを識別する。したがって、方程式1(Eq1)は、テンプレート62a、62b、62c、または62dのいずれかが真であると、特定の結果(たとえば、特定された値を有するタグ)が切換構造25に出力されるべきであると特定する。
【0030】
さらに、最小項M1からM8は、関連するテンプレート62aおよび/または62b内に、入来データストリーム内でデータバイトの関連位置に対応する所定の順序で配置される。図6に示されるように、最小項M1はIPパケット32の第1のバイト(B1)と比較されように構成され、最小項M2はB1に続くIPパケット32の後のバイト(B2)と比較されるように構成され、最小項M3はB2に続く後のバイト(B3)と比較されるように構成され、以下同様である。したがって、入来データストリーム内のデータバイトの関連位置に基づいた順序で最小項を有するテンプレート62を用いることにより、入来データストリームと最小項との多数の同時比較を行なうことができる。したがって、入来データパケットは多数のテンプレートと比較され、入来データパケットのデータフォーマットに加え、切換構造25により、どのような処置をとる必要があるかを判定することができる。
【0031】
図4は図1のパケット分類器24の詳細を示すブロック図である。図4に示されるように、パケット分類器24はネットワークスイッチポートフィルタとも呼ばれ、図7に示され以下で説明されるように、最小項の値(たとえばM1、M2等)を記憶するための最小項メモリ70を含む。パケット分類器24はさらに、受取られた第2層のフレームのタイプを識別するように構成されるフレーム識別子72を含む。特に、受取られた第2層のフレームのタイプ(たとえばイーサネット(R)、IEEE802〜3等)を識別することにより、第2層パケット30内でIPパケット32の開始位置64を識別することができる。パケット分類器24はさらに、最小項コントローラ74、最小項発生器76、方程式のコア78、および評価結果メモリ80を含む。プロセッサインターフェイスモジュール(pi_mod)82は生成した最小項をホストCPU26から最小項メモリ70へ転送するために用いられる。
【0032】
最小項コントローラ74は、最小項をIPフレーム32の選択されたバイトに対応する最小項メモリ70からフェッチするように構成される。最小項コントローラ74はさらに、第2層のフレームのタイプを特定するフレーム識別子72からのフレーム型(frm_type)信号を受取ることに応答して、開始ポイント64の実際のバイトの位置(byte_location)を特定するように構成される位置コンバータを含む。したがって、最小項コントローラ74は、IPパケットの始まりを検出することに応答し、IPパケット32の第1のバイト(B1)と比較されるべきすべての最小項、たとえば、図6の方程式のEq1、Eq2、およびEq3に対する最小項のM1、M9、およびM14をフェッチする。その後、最小項コントローラ74は最小項の値(M_STRU INFO)を最小項発生器76および方程式のコア78に転送する。
【0033】
最小項発生器76は最小項コントローラによりフェッチされた最小項と入来データストリームの選択されたバイトとの実際の最小項の比較を行なう。たとえば、最小項発生器76は、図6において、入来データバイトB1と最小項M1、M9、およびM14とを同時に比較し、さらに最小項比較結果(mt_result)を方程式のコア78に与える。次の比較サイクルの間に、最小項発生器76は入来データバイトB2と最小項M2、M10、およびM15とを同時に比較する。開示された実施例によれば、最小項発生器は入来データストリームを最大で8つまでの最小項と同時に比較するように構成される。
【0034】
方程式のコア78は関連するテンプレート62に対し、最小項発生器76から受取られた最小項比較結果に基づきフレームタグを生成するように構成される。たとえば、方程式のコア78は、図5Aおよび図5Bで示されるように、結果が最小項発生器から供給されると順次的に最小項の結果を評価することにより、方程式1を評価する。たとえば、最小項のM1、M2、M3、M4、M5、およびM6の各々の比較が、図7に関して以下に説明されるように、結果として真の条件になると、終端は方程式1に符合し、方程式のコア78は方程式1に対し特定される条件に対応するタグを生成する。フレームタグは入来データパケットの性質に加え、切換構造25により行なわれる必要のある処置を識別する。
【0035】
図7は最小項メモリ70内の最小項構造のデータフォーマットを示す図である。開示された実施例によれば、最小項は比較されるべきデータバイトの関連位置に対応する順序で最小項メモリ70内に記憶される。したがって、第1のデータバイトと比較されるべきすべての最小項は、最小項メモリの第1の部分内にすべて記憶され、その後第2のデータバイトと比較されるべき最小項が続き、以下同様である。
【0036】
代わりに、最小項はIPヘッダ内の関連情報に加え、比較されるべきデータバイトの関連位置に基づく順序で記憶されてもよい。したがって、最小項は発信元IPアドレス、宛先IPアドレス、および発信元を提供するデータバイトのシーケンスを発信元および宛先ポートと比較するための順序で記憶されるとよい。この場合、IPフレームの始まりにある関連性のないデータバイトは、最小項メモリ70の始まりに記憶される関連最小項を有さず、最小項メモリ70の有効性をさらに高めるだろう。
【0037】
各テーブルエントリ90は最小項部分と評価部分とを含む。最小項部分はマスクフィールド(MASK)94と、期待データフィールド(EXP_DATA)96と、オペレータフィールド(OPERATOR)98とを含む。最小項メモリ70内のテーブルエントリ90の位置に基づき、最小項コントローラ74はIPパケットの始まり64に関し、IPパケット32のどのバイトを対応する最小項と比較する必要があるのかを判定することができる。マスクフィールド94は比較を行う際に最小項発生器76により用いられるマスクである。マスクが1にセットされたビットを有すると、値が比較され、マスク値がフィールド内に0を有すると、比較はなされない(don’t care)。期待データフィールド96はIPパケット32の関連するデータバイトと比較されるべき期待データを特定する。オペレータフィールド98は最小項発生器により行われるべき比較のタイプ、たとえば、未満、以下、等しい、より大きい、以上、および等しくない、を特定する。
【0038】
評価部分はブランチ部分100、最小項の部分の比較が真である場合に対する応答部分(RINP1)102、最小項の部分の比較が偽である場合に対する第2の応答部分(RINP0)106、および方程式識別子110を含む。ブランチ部分100は方程式内のOR項の順序を特定する。たとえば、最小項M1は図5および図5Bならびに図6に示されるように、ブランチの部分が00001111にセットされ、方程式識別子フィールド110内で特定される方程式の最初の4つのブランチが対応する最小項を含むべきであることを示すだろう。ブランチの部分に対し8つのビットを用いるのは、いかなる所与の方程式にも最大8つのブランチがあると仮定したものである。
【0039】
応答部分102は、比較されるデータバイトに対し、最小項部分が真であると評価されると行われるべき動作を特定する。特に、終了ビット(FIN)は、方程式の結果が判定され、最小項の結果が真であると1にセットされる。初期に戻る(BINIT)は、最小項の結果が真であると評価過程が初期状態(init)に戻るべきときに、1にセットされる。たとえば、最小項M1の場合、RINP1のFINビットおよびBINITビットは0にセットされる。なぜなら、最小項の結果が真ならば、さらに比較しなければならないからである。最小項M5、M6、M7、およびM8の場合、RINP1のFINビットは1に設定される。なぜなら、「真の」結果の比較結果は図5Aおよび図5Bに示されるように、結果的に評価の終了になるからである。
【0040】
応答部分106は、最小項の部分が比較されるデータバイトに関し偽と評価されると、行われるべき動作を特定する。特に、終了ビット(FIN)は方程式の結果が判定され、最小項の結果が偽であると、1にセットされる。初期に戻る(BINIT)は、最小項の結果が偽であると評価プロセスが初期状態(init)に戻るべきときに、1にセットされる。たとえば、最小項M1の場合、図5Aおよび図5Bに示されるように、最小項の結果M1が偽であると、方程式がINIT状態に戻るように、FINビットは0にセットされ、RINP1のBINITビットは1にセットされる。
【0041】
方程式識別子フィールド110は最小項が対応する方程式(または、方程式内に1つしかテンプレートがない場合はテンプレート)を識別する。
【0042】
したがって、方程式のコア78は特定された方程式の中に、入来データストリームと符合するテンプレート62を有するものがあるかどうかを判定する。入来データストリームと多数のテンプレート62との多数の同時比較に基づき、方程式のコア78は符合する方程式を識別し、符合した方程式に対応する適切なタグを生成して、これを切換構造25に与えることができる。所望ならばコア78はさらに、ヘッダモディファイア29にコマンドを出力することにより、スイッチにデータを転送する前に第2層のヘッダ、第3層のヘッダ、または両方のヘッダを変更する。
【0043】
開示された実施例によれば、ネットワークスイッチポートは、データパケットの入来データストリームと対応するプロトコルを識別するように構成される多数のテンプレートとの多数の同時比較を行なうことができるフィルタを含む。パケット分類モジュール24はIPフレーム32のいかなるバイトも処理できるので、パケット分類モジュール24はIPパケット32内の第3層プロトコルから最大第7層プロトコルまでのすべてのヘッダの情報を解釈することができる。さらに、多数の同時比較により、ネットワークスイッチ12はネットワークスイッチ内を閉塞することなく100Mbpsおよびギガビットのネットワークに対し第3層のスイッチングを行なうことができる。最後に、データが受取られる順序で多数の同時比較を行うことにより、プログラマブル可能論理アレイ(PLA)等の代わりのスキームが処理を開始する前に全部のヘッダの受取りを要求するのとは対照的に、リアルタイムでの比較を行うことが可能になる。
【0044】
この発明は、現在最も慣用的に好ましい実施例と考えられるものと共に記載されてきたが、この発明が開示された実施例に限定されるものではなく、反対に、添付の請求項の領域内に含まれるさまざまな変更および同等の構成をカバーするよう意図されることが理解されるべきである。
【図面の簡単な説明】
【図1】 この発明の好ましい実施例に従い、それぞれのサブネットワーク間でデータパケットの交換を行うための多数のネットワークスイッチを含む、パケット交換網のブロック図である。
【図2】 第3層インターネットプロトコル(IP)パケットを搬送する、従来の第2層イーサネット(R)タイプのデータパケットを示す図である。
【図3】 IPパケットを評価する従来の(先行技術の)方法を示すフロー図である。
【図4】 この発明の実施例に従い、ネットワークスイッチポートフィルタを含む、図1のネットワークスイッチポートを示すブロック図である。
【図5A】 図4の最小項発生器による方程式の4つのテンプレートの同時処理を示す図である。
【図5B】 図4の最小項発生器による方程式の4つのテンプレートの同時処理を示す図である。
【図6】 図4の最小項発生器による最小項の同時処理をさらに詳細に示す図である。
【図7】 この発明の実施例に従って、図4の最小項メモリ内の最小項のテーブルエントリを示す図である。

Claims (18)

  1. 複数のスイッチポートを有するネットワークスイッチのネットワークスイッチポートで入来データパケットを評価する方法であって、
    それぞれのデータフォーマットを識別するように構成された複数のテンプレートを記憶するステップを含み、各テンプレートは、対応する所定の値を前記入来データパケットの対応する選択されたバイトと比較するように構成された、少なくとも1つの最小項を有し、前記方法は、
    前記選択されたバイトと前記選択されたバイトに対応する前記最小項とを前記選択されたバイトが前記ネットワークスイッチポートにより受信されると同時に比較するステップと、
    前記最小項と前記ネットワークスイッチポートにより受信される前記データバイトとの比較に基づいて、前記入来データパケットを識別する比較結果を生成するステップとを含む、方法。
  2. 前記同時に比較するステップは、
    前記データバイトの第1のものに対応する前記最小項を最小項発生器にロードするステップと、
    前記最小項発生器内にロードされた前記最小項と前記データバイトの前記第1のものとを並行して比較するステップと、
    前記最小項発生器内にロードされた前記最小項に対する比較結果を評価コアに出力するステップとを含む、請求項1に記載の方法。
  3. 前記同時に比較するステップは、前記データバイトの前記第1のものの次に続く、前記データバイトの第2のものに対応する前記最小項を前記最小項発生器にロードするステップをさらに含む、請求項2に記載の方法。
  4. 前記比較結果に基づいて、前記対応するフレームタグに基づいて前記入来データパケットを選択的に交換するように構成される切換構造に、フレームタグを出力するステップをさらに含む、請求項1に記載の方法。
  5. 前記記憶するステップは、各最小項をメモリ内にテーブルエントリとして記憶するステップを含み、各テーブルエントリは、前記入来データパケット内の前記対応する選択されたバイトの位置に基づいて前記メモリ内に位置を有し、前記テーブルエントリは、前記対応する所定の値および比較オペランドを特定する最小項表現部分と、前記対応する最小項を用いる前記テンプレートを特定するテンプレート識別子フィールドとを含む、請求項1に記載の方法。
  6. 前記生成するステップは、
    前記最小項と前記入来データパケットの前記選択されたバイトとの前記比較の結果を一時的に記憶するステップと、
    前記最小項の前記比較の前記結果に基づいて前記複数のテンプレートから少なくとも1つの符合するテンプレートを検出するステップと、
    前記検出された少なくとも1つの符合するテンプレートに基づいて前記比較結果を生成するステップとを含む、請求項5に記載の方法。
  7. 前記データバイトの前記第1のものは所定のフォーマットを有する或るパケットの前記データバイトの第1のものに対応し、前記同時に比較するステップは前記所定のフォーマットを有する前記パケットの始まりに対し、前記選択されたデータバイトを評価するステップを含む、請求項5に記載の方法。
  8. 前記所定のフォーマットはインターネットプロトコル(IP)フォーマットである、請求項7に記載の方法。
  9. 前記検出された少なくとも1つの符合するテンプレートに基づいて前記比較結果を生成する前記ステップは、
    前記入来データパケットと比較された前記最小項の各々に対し、対応する方程式を識別するステップを含み、各方程式は前記テンプレートの選択された群に対する唯一の結果を特定し、前記ステップはさらに、
    前記検出された少なくとも1つの符合するテンプレートを有する前記方程式により、前記比較結果を生成するステップを含む、請求項6に記載の方法。
  10. 複数のスイッチポートを有するネットワークスイッチのネットワークスイッチポートで入来データパケットを評価する方法であって、
    第1のバイトが前記ネットワークスイッチポートにより受信されると前記入来データパケットのバイトの前記第1のものと複数のテンプレートとを、バイトの前記第1のものと少なくとも1つの前記テンプレートに関連する第1の最小項とを比較することにより、同時に比較するステップを含み、各テンプレートは前記入来データパケット内で所定のフォーマットを識別するように構成され、前記方法は、
    バイトの前記第1のものに続き、前記入来データパケットのバイトの第2のものと前記テンプレートとを、バイトの前記第2のものと少なくとも1つの前記テンプレートに関連する少なくとも第2の最小項とを比較することにより同時に比較するステップと、
    前記複数のテンプレートに関してバイトの前記第1のものとバイトの前記第2のものとの前記比較から最小項の結果に基づいて比較結果を生成するステップとを含む、方法。
  11. 前記第1の最小項は前記テンプレートの第1の群と関連し、第3の最小項は、バイトの前記第1のものと比較するように構成され、前記テンプレートの第2の群と関連し、バイトの前記第1のものを同時に比較する前記ステップは、バイトの前記第1のものを前記第1の最小項および第3の最小項と同時に比較するステップを含む、請求項10に記載の方法。
  12. 各テンプレートは前記入来データパケットのそれぞれのバイトを比較するために複数の最小項を有し、前記方法は、前記入来データパケットの前記それぞれのバイトの前記関連する位置に基づいて前記テンプレートの前記最小項を引続き比較するステップをさらに含む、請求項11に記載の方法。
  13. 前記生成するステップは、前記方程式の結果に割当てられた前記テンプレートに対する前記比較結果に基づいて、ネットワーク切換構造により行われるべき処置を特定する方程式の結果を生成するステップを含む、請求項12に記載の方法。
  14. 複数のスイッチポートを有するネットワークスイッチのネットワークスイッチポート内で入来データパケットを評価するように構成されるネットワークスイッチポートフィルタであって、
    最小項の値を記録するように構成される最小項メモリを含み、各最小項の値は前記入来データパケットの対応する選択されたバイトの位置に基づいて比較のために記憶され、最小項の値は、対応する比較動作を特定する表現部分と、前記対応する最小項を用いるテンプレートを特定するテンプレート特定子フィールドとを含み、前記スイッチポートフィルタは、
    前記入来データパケットの受信されたバイトと前記受信されたバイトに対応する前記最小項とを同時に比較し、それぞれの最小項の比較結果を生成するように構成された最小項発生器と、
    前記テンプレートに関して前記最小項の比較結果に基づいて前記入来データパケットを識別するフレームタグを生成するように構成された方程式のコアとを含む、ネットワークスイッチポートフィルタ。
  15. 第2層パケットのタイプを識別するように構成されたフレーム識別子をさらに含み、前記入来データパケットの前記選択されたバイトは第2層パケットの前記識別されたタイプに基づいて判定される、請求項14に記載のフィルタ。
  16. 記憶された最小項の値の各々の前記位置は前記第2層パケット内のIPフレームの始まりに関連する、請求項15に記載のフィルタ。
  17. 前記入来データパケット内で、前記IPフレームの選択されたバイトに対応する前記最小項メモリから前記最小項をフェッチするために
    構成される最小項コントローラをさらに含む、請求項16に記載のフィルタ。
  18. 前記方程式のコアは、前記フレームタグを前記入来データパケットのワイヤ速度で、かつ前記入来データパケットの終わりの前に生成する、請求項15に記載のフィルタ。
JP2001534807A 1999-10-29 2000-05-16 ネットワークスイッチポート上でデータパケットのタイプをリアルタイムで識別するための装置および方法 Expired - Fee Related JP4732654B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/430,753 US6700897B1 (en) 1999-10-29 1999-10-29 Apparatus and method for identifying data packet types in real time on a network switch port
US09/430,753 1999-10-29
PCT/US2000/013397 WO2001033774A1 (en) 1999-10-29 2000-05-16 Apparatus and method for identifying data packet types in real time on a network switch port

Publications (3)

Publication Number Publication Date
JP2003513540A JP2003513540A (ja) 2003-04-08
JP2003513540A5 JP2003513540A5 (ja) 2007-06-07
JP4732654B2 true JP4732654B2 (ja) 2011-07-27

Family

ID=23708878

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001534807A Expired - Fee Related JP4732654B2 (ja) 1999-10-29 2000-05-16 ネットワークスイッチポート上でデータパケットのタイプをリアルタイムで識別するための装置および方法

Country Status (6)

Country Link
US (2) US6700897B1 (ja)
EP (1) EP1224773B1 (ja)
JP (1) JP4732654B2 (ja)
KR (1) KR100615663B1 (ja)
DE (1) DE60018780T2 (ja)
WO (1) WO2001033774A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US6999454B1 (en) * 2001-02-09 2006-02-14 Nortel Networks Limited Information routing system and apparatus
US6950405B2 (en) * 2001-07-16 2005-09-27 Agilent Technologies, Inc. Traffic stream generator having a non-consecutive addressing mechanism
US7765313B2 (en) 2001-10-09 2010-07-27 Alcatel Lucent Hierarchical protocol classification engine
KR100439185B1 (ko) * 2001-12-28 2004-07-05 한국전자통신연구원 혼합형 액티브 네트워크 모델 및 액티브 네트워크모델에서의 패킷 처리 방법
US7768993B2 (en) * 2002-02-13 2010-08-03 Nortel Networks Limited Transport for wireless radio access networks
US7245620B2 (en) * 2002-03-15 2007-07-17 Broadcom Corporation Method and apparatus for filtering packet data in a network device
WO2004023762A1 (en) * 2002-09-06 2004-03-18 Infineon Technologies Ag A parser for parsing data packets
US7120790B1 (en) 2002-10-11 2006-10-10 Network General Technology Method and system for network traffic analysis with run-time behavioral enhancements
US7177930B1 (en) * 2002-10-11 2007-02-13 Network General Technology Method and system for network traffic analysis with configuration enhancements
FR2847404B1 (fr) * 2002-11-15 2005-03-11 Thales Sa Procede d'analyse recursive et statistique de communications reseaux
GB2395395B (en) * 2002-11-15 2004-11-10 3Com Corp Classification search scheme and rules engine for network unit
US20040264479A1 (en) * 2003-06-30 2004-12-30 Makaram Raghunandan Method for generating a trie having a reduced number of trie blocks
FR2858502B1 (fr) * 2003-08-01 2006-02-24 Cit Alcatel Dispositif et procede de traitement de donnees de trafic reseau pour l'auto-configuration d'un routeur
US7492763B1 (en) * 2004-07-16 2009-02-17 Applied Micro Circuits Corporation User-specified key creation from attributes independent of encapsulation type
US20060224822A1 (en) * 2005-03-18 2006-10-05 Blomquist Scott A System and method for tagging and filtering electronic data
US8249064B1 (en) 2005-06-29 2012-08-21 Marvell International Ltd. Remote switching
US8260968B2 (en) * 2006-01-23 2012-09-04 Lantiq Deutschland Gmbh Method and system for booting a software package on a network processor
US7787462B2 (en) * 2006-03-06 2010-08-31 Cisco Technology, Inc. Applying features to packets in the order specified by a selected feature order template
US8223965B2 (en) * 2006-05-05 2012-07-17 Broadcom Corporation Switching network supporting media rights management
US7995543B2 (en) 2006-05-05 2011-08-09 Marvell World Trade Ltd. Network device for implementing multiple access points and multiple client stations
US20090028150A1 (en) * 2007-07-26 2009-01-29 Telefonaktiebolaget L M Ericsson (Publ) Protocol-Independent Packet Header Analysis
US8848746B2 (en) * 2010-06-30 2014-09-30 Vitesse Semiconductor Corporation Packet protocol processing with precision timing protocol support
KR101469500B1 (ko) * 2012-10-30 2014-12-05 한국전력공사 계통보호전송장치용 전송지연 검출장치
US10776535B2 (en) 2016-07-11 2020-09-15 Keysight Technologies Singapore (Sales) Pte. Ltd. Methods, systems and computer readable media for testing network devices using variable traffic burst profiles
US11388078B1 (en) 2019-06-10 2022-07-12 Keysight Technologies, Inc. Methods, systems, and computer readable media for generating and using statistically varying network traffic mixes to test network devices

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999000937A1 (en) * 1997-06-30 1999-01-07 Sun Microsystems, Inc. Spanning tree support in a high performance network device

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE515422C2 (sv) 1993-03-10 2001-07-30 Ericsson Telefon Ab L M Etiketthantering i paketnät
US5949786A (en) * 1996-08-15 1999-09-07 3Com Corporation Stochastic circuit identification in a multi-protocol network switch
US5802054A (en) * 1996-08-15 1998-09-01 3Com Corporation Atomic network switch with integrated circuit switch nodes
US6172990B1 (en) * 1997-06-19 2001-01-09 Xaqti Corporation Media access control micro-RISC stream processor and method for implementing the same
WO1998035480A1 (en) 1997-02-11 1998-08-13 Xaqti Corporation Media access control micro-risc stream processor and method for implementing the same
US5953335A (en) 1997-02-14 1999-09-14 Advanced Micro Devices, Inc. Method and apparatus for selectively discarding packets for blocked output queues in the network switch
US6021132A (en) * 1997-06-30 2000-02-01 Sun Microsystems, Inc. Shared memory management in a switched network element
US6041058A (en) * 1997-09-11 2000-03-21 3Com Corporation Hardware filtering method and apparatus
US6430184B1 (en) * 1998-04-10 2002-08-06 Top Layer Networks, Inc. System and process for GHIH-speed pattern matching for application-level switching of data packets
US6233236B1 (en) * 1999-01-12 2001-05-15 Mcdata Corporation Method and apparatus for measuring traffic within a switch
US6453360B1 (en) * 1999-03-01 2002-09-17 Sun Microsystems, Inc. High performance network interface
US6571291B1 (en) * 2000-05-01 2003-05-27 Advanced Micro Devices, Inc. Apparatus and method for validating and updating an IP checksum in a network switching system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999000937A1 (en) * 1997-06-30 1999-01-07 Sun Microsystems, Inc. Spanning tree support in a high performance network device

Also Published As

Publication number Publication date
JP2003513540A (ja) 2003-04-08
US6744783B1 (en) 2004-06-01
KR100615663B1 (ko) 2006-08-25
KR20020059657A (ko) 2002-07-13
WO2001033774A1 (en) 2001-05-10
US6700897B1 (en) 2004-03-02
EP1224773A1 (en) 2002-07-24
DE60018780D1 (de) 2005-04-21
DE60018780T2 (de) 2005-08-11
EP1224773B1 (en) 2005-03-16

Similar Documents

Publication Publication Date Title
JP4732654B2 (ja) ネットワークスイッチポート上でデータパケットのタイプをリアルタイムで識別するための装置および方法
US6571291B1 (en) Apparatus and method for validating and updating an IP checksum in a network switching system
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
US6574240B1 (en) Apparatus and method for implementing distributed layer 3 learning in a network switch
US6674769B1 (en) Simultaneous searching of layer 3 policy filter and policy cache in a network switch port
US6925085B1 (en) Packet classification using hash key signatures generated from interrupted hash function
US6718379B1 (en) System and method for network management of local area networks having non-blocking network switches configured for switching data packets between subnetworks based on management policies
KR100755979B1 (ko) 네트워크 스위치 포트상에서 와이어 속도로 데이터 패킷을식별하는 장치 및 방법
US7002955B1 (en) Selective address table aging in a network switch based on application state determined from a received data packet
US6807183B1 (en) Arrangement for reading a prescribed location of a FIFO buffer in a network switch port
JP4680478B2 (ja) パケットのデータバイトを複数の最小項でバッファなしに評価するための装置および方法
US6711165B1 (en) Apparatus and method for storing min terms in network switch port memory for access and compactness
US6741594B1 (en) Arrangement for identifying data packet types from multiple protocol formats on a network switch port
US6678272B1 (en) Apparatus and method using a register scheme for efficient evaluation of equations in a network switch
US6728255B1 (en) Apparatus and method for storing min terms in a network switch port memory for identifying data packet types in a real time
US6714542B1 (en) Apparatus and method for storing min terms in a central min term memory for efficient sharing by a plurality of network switch ports
US6885666B1 (en) Apparatus and method in a network switch for synchronizing transfer of a control tag to a switch fabric with transfer of frame data to a buffer memory
US6693908B1 (en) Apparatus and method for efficient evaluation of equations which generate frame tags in a network switch
US6678276B1 (en) Apparatus and method for specifying successive byte locations for evaluating data packets in a network switch port

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070405

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090804

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100706

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110412

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110421

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140428

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140428

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140428

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees