JP2000503828A - データネットワーク上でデータパケットをスイッチングする方法および装置 - Google Patents

データネットワーク上でデータパケットをスイッチングする方法および装置

Info

Publication number
JP2000503828A
JP2000503828A JP9-530120A JP53012097A JP2000503828A JP 2000503828 A JP2000503828 A JP 2000503828A JP 53012097 A JP53012097 A JP 53012097A JP 2000503828 A JP2000503828 A JP 2000503828A
Authority
JP
Japan
Prior art keywords
cell
packet
data
network
bus
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.)
Granted
Application number
JP9-530120A
Other languages
English (en)
Other versions
JP3412825B2 (ja
Inventor
ダイ,ウイリアム
Original Assignee
アライド テレシン インターナショナル コーポレイション
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
Priority claimed from US08/603,576 external-priority patent/US5781549A/en
Application filed by アライド テレシン インターナショナル コーポレイション filed Critical アライド テレシン インターナショナル コーポレイション
Publication of JP2000503828A publication Critical patent/JP2000503828A/ja
Application granted granted Critical
Publication of JP3412825B2 publication Critical patent/JP3412825B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

(57)【要約】 バックプレーン・セルバス上でセル・スイッチングによるパケット分割および再組み立てを実装するLAN・スイッチである。複数のパケット処理ユニットはそれぞれバックプレーン・セルバスに接続され、各パケット処理ユニットが複数のLANポートをホストする。各パケット処理ユニットにはパケット処理ユニットに関係付けをしたポートでシェアーされる単一のパケット・バッファメモリが関係付けしてある。LANパケットを固定長セルに分割することによりスイッチに関係付けした各ポートでの専用帯域幅を提供する効率的なLANスイッチを実装する。高速ネットワーク・インタフェースと通信するためのLANポートとの接続も用意してある。

Description

【発明の詳細な説明】 データネットワーク上でデータパケットをスイッチングする方法および装置 発明の背景 1.発明の分野 本発明は、コンピュータ・ネットワーク上のデータ通信に関する。さらに詳し くは、本発明は、セルベース・アーキテクチャを利用するLAN(local area n etwork)スイツチング技術に関する。 2.背景 LANは、コンピューティング・マシンを使用する企業では、今日、基本的な ツールとなっている。初期のLANの実装は、種々のプロトコル、例えば、Ethe rnet(IEEE 802.3)か、Token Ring(IEEE 802.5)か、あるいは、その他のプロ トコルに従ったバスアーキテクチャに基づいて、行われていた。初期のLANの バスベースのアーキテクチャは、各ノードをネットワークへ接続するためのシェ アード帯域幅バスを利用していた。例えば、初期のEthernetネットワークは合計 10Mbps(メガビット/秒)の利用可能帯域幅を共有する複数のエンドステーシ ョン(end-stations)を備えることができた。 LANでの配線のニ−ズを簡単にするとともに、多くのオフィスビルで既存の 配線構造を活用するため、ネットワーク設計者はネットワーク・ハブまたはコン セントレータとして知られる装置を実装していた。最も簡単に言えば、ネットワ ーク・コンポーネントが接続されるバスが、初期のハブにより、1つのクローゼ ットに納まるボックス(box)のサイズまで縮小された。ネットワークに接続さ れている端末またはエンドステーションは、一般的に、既存のビル配線に接続す る能力を有する。既存のビル配線は、例えば、中央配線クローゼットに存在する 集線ハブに接続するため多くのオフィスビルに見られるUTP(unshielded twi sted pair)配線である。 しかしながら、各種LANプロトコルにより使用されるように設計された初期 のネットワーク・ハブにより、シェアード帯域幅アーキテクチャが実装された。 ユーザの要求が増加したので、現行の多数のLANのシェアード帯域幅アーキテ クチャがその限界に達した。増大した帯域幅に対するプロトコルの技術が数多く 研究されている。しかし、今日大量に導入されたLAN装置およびシステムから なる基盤は、増大した帯域幅のソリューションが近々見いだされた場合には、こ のソリューションにより専らサーブされることになる装置と互換性を有する。 コンピュータ産業で急速に普及した1つの新しい技術として、LANスイッチ の実装がある。LANスイッチは現行ののネットワーク・プロトコル、例えば、 Ethernetと、Token Ringと、FDDIに基づくことができ、従って、現行のネッ トワーク・システムと互換性を有する。スイッチングは非常に効率的にネットワ ーク・トラフィックを指示する。スイッチングは情報を発出ポートから、直接、 宛先ポートのみに送信するので、可能な全ての宛先ポートへのブロードキャスト では、トラフィックは増大されない。スイッチングはネットワーク性能を向上さ せ、柔軟性を増大し、構成(configulation)変更を容易にする。 最も簡単な構成では、LANスイッチはOSI7層ネットワークモデルにおけ るデータリンク層レベルのMACレベル2で動作するファスト・マルチポート・ ブリッジ(fast multiport bridge)である。スイッチング技術により、従来の LANネットワークより優れた主要な成果が幾つか得られる。第1に、10Mbps (メガビット/秒)または100Mbpsシェアード・メディアを、コネクションご とに、10Mbpsまたは100Mbpsの専用(dedicated)帯域幅に変更することが できる。スイッチにより、シェアード・セグメント(ワークグループ)または専 用ユーザのいずれかを、各ポートに接続することができる。さらに、このスイッ チによる接続は、ワークステーション上で既にランしているソフトウェアまたは ハードウェアを変更せずに行うことができる。このため、初期投資分は古いネッ トワーク技術から失われず、現行のNOS(network operating system)に対し て、ほとんどまたは全く影響を与えない良く知られ、しかも試験済みの技術に基 づいたマイグレーション・パスが可能である。 LANスイッチは最近開発されたものであり、初期の装置は、4ないし8ノー ドの小さなワークグループを、所定のスイッチに接続することを目標にしている ものが多かった。LANスイッチの能力を増大させ、専用帯域幅をもっと多数の ポートへ、効率的かつスケーラブルなアーキテクチャを利用して、提供すること が望ましく、そのことを本発明の目的とする。 発明の概要 以上の説明から、LANに対するスイッチング技術は、現行のネットワーク実 装において、増大する帯域幅の要求を取り扱うクリチカルで重要な新規な技術で あることは当然のことである。本発明は、Ethernetのセルベースのスイッチの例 を説明する。当然、Ethernet以外のプロトコルを用いて本発明を実現できること は明らかであり、しかも、セルスイッチング技術がネットワーク・ワークグルー プ・スイッチ以外の装置で実装できることは明らかである。 本発明は、Ethernetワークグループ・スイッチに組み込まれる典型例で説明す る。このワークグループ・スイッチの例では、24個のEthernetポートが用意さ れ、1つのファスト・ネットワーク・インタフェースが用意されている。24個 のEthernetポートは3つのセットにグループ化され、各セットは8つのポートを 有し、各セットにはパケット処理ユニットが関係付けしてある。パケット処理ユ ニットはEthernetパケットの受信を担当し、固定長セルへの分割を担当し、ワー クグループ・スイッチ内部に組み込まれたバックプレーン・セルバスへの固定長 セルの伝送を担当している。 ワークグループ・スイッチ内の各パケット処理ユニットは、パケット・バッフ ァメモリと関係付けしてある。各パケット処理ユニットはセルバス上のトラフィ ックを監視しており、パケット・バッファメモリでEthernetパケットに再組み立 てするため、セルバス上を伝送された全てのセルを集める。このパケット・バッ ファメモリは単一のパケット処理ユニットに関係付けしてある8つのポートを有 するグループに関係するので、このパケット・バッファメモリはシェアード・メ モリである。しかし、このパケット・バッファメモリは各パケット処理ユニット 専用であるので、このパケット・バッファメモリは分散型である。受信さ れたEthernetパケットは、それぞれ、各パケット・バッファメモリで再組み立て される。というのは、受信されたパケットの宛先ポートが1個または数個のパケ ット処理ユニットに関係付けしてある1個または数個のポートとすることができ るからである。 セルバスには、セルバス上のセル・トラフィックを監視するスイッチ・パケッ ト・ルーティング・コントローラも接続してある。スイッチ・パケット・ルーテ ィング・コントローラは、パケットを受信すると、各パケットを分析して、どの ポートかを判断し、ポートが判断された場合には、そのポートからそのパケット を出力する。スイッチ・パケット・ルーティング・コントローラはセルバスにコ ントロールセルを伝搬し、各パケット処理ユニットにより組み立てられている各 パケットを、どのように「ルーティング」するかを、各パケット処理ユニットに 指示する。スイッチ・パケット・ルーティング・コントローラにはルーティング テーブル・メモリも関係付けしてある。ルーティングテーブル・メモリは各ポー トと、各ポートの通信中のアドレスとを関係付けしたルーティングテーブルを作 成するため、受信されたパケットに関する情報を集めている。 典型的なEthernetワークグループ・スイッチには、高速ネットワーク・インタ フェースも含まれている。この高速ネットワーク・インタフェースは、例えば、 高速ポート、例えば、ATMポートまたはその他の高速プロトコル・コネクショ ンで使用することができる。高速ネットワーク・インタフェースはPCIバスの ような高速内部バスに結合されている。このPCIバスはバス・ブリッジング・ コントローラを介してセルバスと通信している。バス・ブリッジング・コントロ ーラには、パケット・バッファメモリも関係付けしてある。このパケット・バッ ファメモリは、パケット処理ユニットにそれぞれ関係付けしてあるパケット・バ ッフアメモリと同様の方法でオペレートする。バックプレーン・コントロールバ スは、ポートステータスデータ・カウント情報を収集するMIB(Management I nformation Base)バスといわれており、このバツクプレーン・コントロールバ スが提供されている。 特定のパケット処理ユニットに関係付けしてあるポートによりそれぞれ共有さ れるパケット・バッファメモリに対して用意されているメモリ空間モデルが実装 されている。所定のパケット・バッファメモリの各パケットは、各パケットに、 パケット処理装置がパケットを出力する数を指定するフィールドを加えて、1回 だけ、再組み立てされる。このパケット処理装置には、指定された全ポートに当 該パケットが出力されるまで、当該パケットを確実に維持するカウンタ・メカニ ズムと関係付けしてある。こうすることにより、ブロードキャスト・パケットお よびマルチキャスト・パケットが共に効率良くサポートされる。 本発明の他の態様には、調整可能なスイッチング・カットスルー・レイテンシ ・コントロール機能が含まれている。このスイッチング・カットスルー・レイテ ンシ・コントロール機能は、この機能がパケット・バッファメモリのパケット処 理ユニットに関係付けをしたポートを介して再伝送開始ができるまでに、このパ ケット・バッファメモリに何個のパケットを受信して組み立てるかを指定するの に、使用することができる。 図面の簡単な説明 以下に、本発明を詳細に説明して、本発明の目的、特徴、および効果を明らか にする。 図1は本発明によるネットワーク・スイッチの典型例を導入したネットワーク ・アーキテクチャの一部を示す図である。 図2は本発明の種々の態様を導入した典型的なネットワーク・スイッチング装 置のアーキテクチャを示すブロック図である。 図3はバックプレーン・セルバスおよびシェアード・パケット・バッファメモ リに関係付けしてある、データ・パケットを分割、再組み立てするネットワーク ・スイッチング装置の一部をさらに詳細に示すブロック図である。 図4はデータパケットを固定長セルに分割してセルバスに伝播することを担当 する回路をさらに詳細に示すブロック図である。 図5は本発明による固定長データセルに対するビット割り当てを示す図である 。 図6はパケット処理ユニットでシェアーされるバックプレーン・セルバスへの アクセスタイミングを示すタイミング図である。 図7はシェアード・パケット・バッファメモリを利用して、パケット再組み立 て、パケット伝送を行う回路を示す図である。 図8は本発明によるシェアード・パケット・バッファメモリに対するパケット ・バッファメモリ編成を示す図である。 図9は本発明の1つの態様によるパケット属性を識別する、パケット・バッフ ァメモリ内の1つのフィールドをさらに詳細に示す図である。 図10はセルベースのコントロールバスを介して、受信アクティビティを示す ポート宛に伝送されるセルに対するビット割り当てを示す図である。 図11は受信アクティビティを示すポートに対する本発明によるコントロール バス・セルのフォーマットに対するビット割り当てを示す図である。 発明の詳細な説明 セルベースのスイッチング・アーキテクチャを実装するネットワーク通信装置 の方法ならびに装置が開示されている。本発明の説明は、Ethernetワークグルー プ・スイッチが、セルベースの技術を利用する典型例において主として行う。本 例で開示される概念および方法は、セルベースのスイッチングを実装するのが望 ましい他のネットワーク通信装置を包含できるほど広い。本発明は、本例に関連 して記載したEthernetの例に限定されるものではなく、実際には、他のネットワ ーク通信プロトコルに適用することができる。本発明を完全に理解できるように 、以下の詳細な説明では、種々の具体的な説明、例えば、パケット・プロトコル や、セル・サイズ等を説明する。しかし、このような具体的な詳細な説明がなく ても、本発明を実施することができることは、当業者にとって、当然のことであ る。他の例では、本発明を不明瞭にしないようにするため、周知の制御構造およ び回路図は詳細に図示しなかった。 多くの場合、本発明を逸脱しないで実装したコンポーネントは、アーキテクチ ャおよび/または機能レベルで説明してある。本発明に関して記載されたアー キテクチャを、種々の技術、例えば、ASIC(application specific integra ted circuit)か、プログラムドロジックか、マイクロプロセッサやマイクロコ ントローラ上でランするソフトウェアを利用して、実装することができることは 、当業者にとって当然のことである。当業者にとって当然のことであるが、本発 明は、特定の実装技術に制限されるものではない。このようなコンポーネントに より実行される機能は、一度、本例で記載されると、当業者は、必要以上に熟練 しなくても、種々の技術を用いて、本発明をインプリメントすることができるこ とは、当業者にとって当然のことである。 典型的なEthernetワークグループ・スイッチ 図1を説明する。図1は、本発明の実施の形態のネットワーク・スイッチング 装置を導入したネットワーク・システムの一部を示す。典型的なネットワーク通 信装置100は10Mbps(メガビット/秒)Ethernetと互換性を有するEthernet ワークグループ・スイッチである。10Mbps EthernetはIEEE802.3規 格ともいわれる。典型的なEthernetスイッチ100には、DTE(data termina l equipment)130および132のような個々のDTEか、あるいは、Etherne tネットワーク・セグメント140のような追加のネットワーク・セグメントの いずれかに結合する24個のポート101〜124が含まれてる。Ethernetネッ トワーク・セグメント140は3台のデータ端末装置141,142,143に 結合されている。本発明の実装例である図1のEthernetスイッチには、高速ネッ トワーク・インタフェース(図には、高速ポート150として示してある)が含 まれている。この高速ネットワーク・インタフェースはポート101〜124と 、ATMネットワーク160のような高速ネットワークとの間で通信を提供する 。高速ネットワーク・インタフェースは、他の高速ネットワーク・プロトコルと 通信するのに使用することができるか、2つ以上の装置100をカスケード接続 するのに使用することができる。 図1に示したネットワークの部分へ、慣用のリピータに代えて、Ethernetスイ ッチ100を導入することにより、ネットワーク効率と速度を増大させることが できる。多くのネットワークでは帯域幅不足を経験している。これには幾つか の理由がある。これら幾つかの理由には、ネットワーク化されたユーザ数のずれ 量と、クライアント/サーバ・アプリケーション間でトランスポートされるデー タの量と、幾つかのネットワークの非効率的なトラフィック・パターンとに起因 してトラフィックが増大することが含まれる。スイッチングは、非常に効率的な 方法で、ネットワーク・トラフィックを指示する 情報を発出ポートから直接 宛先ポートのみに送出する。つまり、Ethernetスイッチ100は10 MbpsEthernetの実装に導入されるが、Ethernetスイッチ100に代えてリピータ を使用した場合のように、ネットワークのユーザがそれぞれ合計10Mbps帯域幅 をシェアーする必要はない。したがって、図1に135、136、137で示し たようなリンクにそれぞれ対応するポート101〜124には、それぞれ、専用 帯域幅10Mbpsが供給される。ユーザ141,142,143は、ネットワーク ・セグメント140上で利用可能な帯域幅をシェアーするのが適正であり、「パ ワーユーザ」の可能性があるネットワークユーザ130と132は、それぞれ、 専用の10Mbps帯域幅から恩恵を受けることができる。 図2を説明する。図2は、本発明の種々の態様を実装するEthernetスイッチ1 00の実装例の全体的なアーキテクチャを示すブロック図である。図1に関連し て説明したように、Ethernetスイッチ100には、24個のEthernetポート10 1〜124が含まれている。図2に示したアーキテクチャでは、本実施の形態の Ethernetスイッチの24個のEthernetポートは、各グループが8つのポートを有 するように、3つのグループに分割されている。各グループには単一のパケット 処理ユニット200a、200b、または200cが関係付けしてあり、パケッ ト処理ユニット200a、200b、または200cには、それぞれ、シェアー ド・パケット・バッファメモリ210a、210b、または210cが関係付け してある。シェアード・パケット・バッファメモリ210はそれぞれシェアード ・パケット・バッファメモリといわれているが、そういわれるのは、本実施の形 態から分かるように、単一のパケット処理ユニット200によってサービスされ るこれら8つのローカルポートが、それぞれ、パケット・バッファメモリ210 のうちの1つのパケット・バッファメモリによって用いられるからである。 パケット処理ユニット200はそれぞれセルバス220を介して接続されてい る。セルバス220には、スイッチ・パケット・ルーティング・コントローラ2 30と、関係付けをしたルーティングテーブル・メモリ235も接続されている 。最小限機能するEthernetスイッチ・コアは、少なくとも1つのパケット処理ユ ニット200と、スイッチ・パケット・ルーティング・コントローラ230と、 セルバス220とを用いるとともに、パケット処理ユニットおよびスイッチ・パ ケット・ルーティング・コントローラに対して関係付けをしたメモリ210と2 35を用いて、組み立てることができる。典型的なEthernetスイッチには、PC Iチップセット248を介してI/Oバス(PCIバス)245と通信するマイ クロプロセッサ240が導入してある。マイクロプロセッサ240はローカル・ ストレージ・メモリ249によってサービスされる。マイクロプロセッサ240 はローカルなコンピューティング、例えば、ネットワーク管理(SNMP)等の ために用意してある。PCIバス245はPCI/セルバス・ブリッジング・コ ントローラ250を介してセルバス220に結合してあり、PCI/セルバス・ ブリッジング・コントローラ250には、パケット・バッファメモリ252が関 係付けしてある。 図2に示した典型的なEthernetスイッチ100には、MIB(management inf ormation base)バス260も導入されている。MIBバス260はスイッチ・ ポートMIB情報を、各パケット処理ユニット200からスイッチ・ポートMI Bカウンタ265に搬送するように設計されている。スイッチ・ポートMIBカ ウンタ265はマイクロプロセッサ240上でランしているネットワーク管理エ ージェントのための適正なMIBカウンタ情報をアキュムレート(accumulate) するものである。スイッチ・ポートMIBカウンタ265にはMIBカウント・ メモリ268が関係付けしてある。 図1に関連して説明したように、Ethernetスイッチ100には、ATMネット ワーク160のような高速ネットワークと、高速ポート150を介して、通信す る高速インタフェースが含まれる。つまり、図2に示したアーキテクチャには、 Ethernetスイッチ100と高速ネットワーク160の間のデータフローを制御す る高速ネットワーキング・コントローラ270が含まれる。Ethernetスイッチン グ・コントローラ270はPCIバス245と通信し、パケット・バッファメモ リ275と関係付けしてある。高速ネットワーク・コントローラ270とパケッ ト処理ユニット200の間のインタラクションは、後程さらに詳細に説明する。 パケットの分割と再組み立て データパケットをハンドルするとともに、パケット処理ユニット200とセル バス220とのインタラクシヨンをハンドルするパケット処理ユニット200に 実装されている回路に、次の情報の多くは関係付けしてある。 本発明によるスイッチング・アーキテクチャは、セルベースのアーキテクチャ である。Ethernetパケットのようなデータパケットは、パケット処理ユニット2 00のうちの1つのパケット処理ユニット200が有するローカルポートで受信 される。データパケットは固定長のセルに分割され、セルバス220に伝搬され る。セルバス220は各パケット処理ユニットに結合してある。パケット処理ユ ニットは固定長のセルをセルバスから受信し、関係付けしてあるパケット・バッ ファメモリ210でパケット再組み立てを行なう。セルバス220に伝送される 固定長のセルのフォーマットは、図5と関連させて、後程詳細に説明するが、本 発明の実装本体によれば、各セルは60ビット長となるように定義され、12ビ ットはセルのヘッダ情報を備え、48ビットは、分割されたEthernetパケットか ら分離されたデータ・ユニット・ペイロードを備えている。 図3はパケット処理ユニット200の一般的なブロック図を示す。図3から分 かるように、パケット処理ユニット200の機能ブロックを、2つの個別の動作 部分に分割することができる。ブロック400は、図4との関連で後程詳細に説 明するが、パケット処理ユニット200に関係付けをしたEthernetポートのうち の1つEthernetポートからEthernetパケットを受信することを担当するとともに 、セルバス220へ伝送するため、当該パケットを固定長のセルに分割すること を担当している。 パケット処理ユニット200の他の主要なコンポーネントは、パケット組み立 て伝送コントロール・ロジック700であって、図7に関連して後程詳細に説明 する。パケット組み立て伝送コントロール・ロジック700はセルバス220か らセルトラフィックを受信する。このセルトラフィックには、ローカルEthernet ポートのうちの1つのローカルEthernetポートからか、あるいは、高速ネットワ ーク・インタフェースを介するかのいずれかから受信された分割データパケット が含まれるとともに、スイッチ・パケット・ルーティング・コントローラ230 によって伝播されたコントロール・セルとが含まれる。ルーティング・コントロ ーラ230からのコントロール・パケットに含まれる情報に応答して、パケット 組み立て伝送コントロール・ロジック700は、バッファメモリ210の適正な ロケーションへのセルトラフィックのストアを指示する、そして、特定のパケッ ト処理ユニット200に関係付けをしたEthernetポートの1つから、データパケ ットが再送信される場合には、再送信するため、データパケットの再組み立てを 行なう。パケット・バッファメモリ210のメモリ空間の構造について、図8に 関連して後程詳細に説明する。 図4はパケット受信/分割・セル生成論理400の詳細なブロック図を示す。 ローカルポートからパケット処理ユニット200によってパケットが受信された 場合、SFDチェッカ410は、最初に、Ethernetパケットのプリアンプルから SFDフィールドを探索して、当該パケットのデータ部分を突き止める。SFD フィールド・チェッカはそのFIFOコントローラ部分に指示して、データ・ビ ット・ストリームを、パケット処理ユニット内部動作と同期されるFIFOバッ ファ415に書き込む。FIFOバッファ415が空でない場合、受信データパ ス・コントローラ420はFIFOコントローラ410に指示して、FIFOバ ッファ415からデータ・ビット・ストリームを読み出し、そのデータを48ビ ットシリアルイン/パラレルアウト(SIPO; serial−in/paralle l-out)レジスタ425へシフトする。 データ・ペイロードが分割されると同時に、CRCチェッカ430はデータ・ ビット・ストリームからのCRC情報の計算を開始し、ビットストリームの最後 のバイト境界でCRCエラーが発生したかどうかをチェックする。バイト・カウ ンタ435はビットストリームのバイト数をカウントし、同時に、フィールド・ クラシファイヤ440がビットストリームをセルデータに分割し、得られたセル データを4つのデータ・タイプ、すなわち、宛先アドレスと、発信元アドレス と、パケットを終了させないセルデータと、パケットの終端(end)にあるセル データのうちの1つに分類する。何らかの受信エラーがCRCチェッカにより検 出された場合は、検出されたエラーはセルヘッダにエラー・ステータスとして示 される。 SIPOレジスタ425がフル(full)である場合は、受信データパス・コン トローラ420はセルデータ・レジスタ445に指示して、SIPOレジスタ4 25のデータをセルデータ・レジスタ445にロードさせることになり、また、 セルバス・アクセス・コントローラ450に通知して、関係付けをしたローカル ポートに代えて、セルバス220アクセス要求を生成することになる。一方、受 信データパス・コントローラ420はセルヘッダ・レジスタ455に命令して、 CRCチェッカ430と、バイト・カウンタ435と、フィールド分類装置44 0からの情報をロードさせ、適正なセルヘッダを生成させる。何らかの受信エラ ー、例えば、不完全な(runt)パケットか、FrameTooLongCRCエラーか、アラ イメント・エラーが検出された場合は、そのセル・タイプは、フィールド分類装 置440によって識別されたタイプとしてではなく、受信エラー・タイプとして マークされる。 セルバス・アクセス・コントローラ450がセルバス220へのアクセスに対 する肯定応答を受信した後、セルバス・アクセス・コントローラ450は、セル バス230へのアクセスを要求した全ポートの中から適正なセルヘッダとセルデ ータを、セルヘッダ・マルチプレクサ(MUX)460とセルデータMUX46 5を介して、選択することになる。適正なヘッダとデータは、2連続クロックサ イクルで、完全なセルとしてセルバス220に転送される。1クロックサイクル 当たり30ビットが転送される。セルバスへの転送はセル伝送(TX)MUX4 68を介して行なわれる。バス出力レジスタ470とトリステート出力バッファ 475は、セルバス・クロックとデータセル伝送を同期させるのに使用される。 一度、セルバス・アクセス・コントローラ450によりポート選択が行なわれる と、これに対応するバス要求は直ちにクリアされ、バス・アクセスのパイプライ ンのランを維持する。 図5を説明する。図5はセルバス220に伝送されるセルのセル定義が示して ある。各セルは60ビットのデータ・ユニットとして定義されている。セルはセ ルバス220に伝送され、セルバス20に接続されている全ての装置に、パケッ トデータまたはパケットルーティング制御情報を搬送する。本発明の実装例によ れば、データセルをデータバスに送信するのに、まず、ビット59〜30を送信 し、次に、ビット29〜0を送信する場合、システム・クロックが2サイクル分 必要である。図5に示したセルビット割り当てのフォーマットは、本発明の典型 例である。セルに入れて搬送されたパケットデータを受信するローカルポートが 、ソースポート番号(ビット57〜55)と組み合わされたソースチップ番号( ビット59〜58)により指定される。パケット処理ユニットに対して、ソース チップ番号がBCN構成(configulation)により指定され、ソースチップ番号 は「00」か、「01」か、「10」のいずれかとなる。ソースチップ番号「I Uはブリッジング・コントローラ250用に予約済みである。ローカルポート1 からローカルポート8までを2進数で表すため、ソースポート番号の範囲は「0 00」から「111」までである。 セルタイプ・フィールド(ビット54〜52)により、セルに含まれているフ ィールドのタイプが指定される。発信元ポート番号「000」により、当該セル が宛先アドレス情報を含むことが指定される。発信元ポート番号「001」によ り、当該セルがパケットの発信元アドレス・フィールドを含むことが指定される 。発信元ポート番号「010」により、当該セルがパケットを終了しない埋込み データを含むことが指定される。発信元ポート番号「011」により、パケット を終了するデータ・フィールドが指定される。発信元ポート番号「100」によ り、パケットルーティング・コントロール情報が指定される。発信元ポート番号 「111」により、受信エラーが発生したことが指定される。実装例によれば、 発信元ポート番号「101」と発信元ポート番号「110」は、予約済のセルタ イプである。 パケットデータ・バイト・カウント・フィールド(ビット51〜49)により 、当該セルにより実際に搬送されるバイト数が指定される。パケットデータ・バ イト・カウント・フィールドは「001」から「110」までをとることがで きる。パケットルーティング・コントロール・セルにとっては、このパケットデ ータ・バイト・カウント・フィールドは意味がない。 セルヘッダ・パリティチェックビット(ビット48)は、セルのビット59か らビット49までをプロテクトするのに使用される。セルヘッダ・パリティチェ ックビットを含めて、12ビット・ヘッダフィールド内の「1」の個数が偶数に なるように、セルヘッダ・パリティチェックビットがセットされる。 パケットデータ/DSTポート指示フィールド(ビット47〜0)は、当該セ ルがパケットルーティング・コントロール・セルでない場合に、パケットデータ を搬送するための48ビットを備えている。先に受信されたデータビットほど、 高位のビット空間(higher order bit space)に入れられ、後で受信されたデー タビットほど、低位のビット空間(lower order bit space)に入れられる。当 該セルがパケットルーティング・コントロール・セルである場合、ビット47に より、宛先アドレスが見付かったかどうかを表わす。「1」は宛先アドレスが見 付かったことを示し、「0」は宛先アドレスが見付からなかったことを示す。パ ケットルーティング・コントロール・フィールドは、ビット26から0までによ り、当該パケットを、対応するポートを介して、伝送した方が良いかどうかを示 す。ビット26は高速ネットワークポート用に使用されている。ビット25と2 4は、本発明の実装例によれば、ネットワーク管理ソフトウェアで使用するため か、他の機能のために予約されている。ビット23〜16は、BCNが「10」 であるパケット処理ユニットのローカルポート8〜1に対応する。ビット15〜 8は、BCNが「01」であるパケット処理ユニットのローカルポート8〜1に 対応し、ビット7〜0は、BCNが「00」であるパケット処理ユニットのロー カルポート8〜1に対応する。所定のビット位置の「1」は、セル宛先アドレス に関係付けをしたパケットを、そのビット位置に対応するローカルポートを介し て、伝送した方が良いことを表わしている。所定のビットの位置の101は、関 係付けをしたポートから伝送されないことを表わしている。つまり、あるパケッ トが2つ以上のポートから出力されるように宛先を決めることができ、しかも、 ある出力ポートを2つ以上のパケット処理ユニット200に関係付することがで きることは、明らかである。 前述したように、固定長のセルがセルバス220を介して伝送される場合は、 その伝送は、まず、当該セルの半分を送信し、次に、当該セルの残り半分を送信 することにより行なわれている。セルバス220は、既に図2に関連して述べた ように、スイッチ・パケット・ルーティング・コントローラ230との関連で機 能するように設計されている。ルーティング・コントローラ230はパケットル ーティング情報を生成しており、セルバス・サイクルを割り当てることを担当し ている。既に図2に関連して述べた実装例では、セルバスに接続された全ての装 置が、一例では、20MHz(メガヘルツ)で動作するシステム・クロックと同 期されている。さらに詳しく述べると、このセルバス上の信号はクロックの立ち 上がりエッジでアサートされ、このクロックの立ち上がりエッジで、各装置によ りラッチされる。さらに、本実装例によれば、各パケット処理ユニット200と 、ブリッジング・コントローラ250と、ルーティング・コントローラ230は 、10MHzのバスサイクルで同期されている。この10MHzのバスサイクル は2システム・クロック・サイクルとして定義されている。 セルバス220に伝送するセルがパケット処理ユニット200にある場合には 、ルーティング・コントローラ230へのバス要求信号をアサートする。ルーテ ィング・コントローラ230はバスサイクル割り当てアービトレーション・スキ ームに従って、パケット処理ユニット200のうちの1つへ肯定応答信号を送り 返す。肯定応答を受信すると、直ちに、パケット処理ユニット200はセルバス にセルを伝送し、そのバス要求信号をデアサートする。ルーティング・コントロ ーラ230に導入されているバスサイクル割り当てロジックは、パケット処理ユ ニット・バスアービトレーション・ロジックと協働して、同期パイプラインを形 成して、バスアービトレーションのオーバーヘッドに起因してバスサイクルが失 われないようにしなければならない。 図6はセルバス・アクセスのパイプライン構造を示す。このパイプラインには 、4つのステージ、すなわち、REQステージと、ACKステージと、TX1ス テージと、TX2ステージがある。各ステージは20MHzバスクロックの立ち 上がりエッジでトリガされる。時間スケールで、現行のREQステージとACK ステージは、それぞれ、直前のTX1ステージおよびTX2ステージとオ ーバーラップしている。 REQ(TX1)ステージでは、パケット処理ユニット200が、1つ以上の セルを、セルバス220を介して送信する準備ができた場合には、パケット処理 ユニット200はルーティング・コントローラ230内のバスサイクル割り当て ロジックへのバス要求信号をアサートする。このバスサイクル割り当てロジック は、受信された全てのバス要求信号を評価し、次のACKステージで、適正なパ ケット処理ユニットに送信される適正な肯定応答信号を生成する。一方、前に肯 定応答されたバス要求ユニットは、セルの前半分を伝送することになる。 ACK(TX2)ステージでは、ルーティング・コントローラ230のバスサ イクル割り当てロジックは、肯定応答信号を、選択されたバス要求ユニットヘ送 信することになる。バス要求ユニットはそれぞれバス要求が肯定応答されたかど うかをチェックし、このバス要求ユニットに、送信されるセルが2つ以上あるか どうかによって、その要求を再評価する。その要求が肯定応答され、しかも、送 信の準備ができているセルが1つしかない場合は、次のTX1ステージで、バス 要求信号をデアサートする。それ以外の場合は、そのバス要求信号をアサート状 態に維持する。これと並行に、前に肯定応答されたユニットは、当該セルの後半 分の伝送を完了することになる。 TX1(REQ)ステージでは、肯定応答されたユニットは、待機セルの前半 分を送信し、一方、ルーティング・コントローラのバスサイクル割り当てロジッ クは、全てのバス要求ユニットからの次の要求信号を評価し、次のTX2ステー ジで、適正な肯定応答信号を生成する。 どの場合にも、セルバスにカスケード接続された各ユニットは、バスクロック の立ち上がりエッジで、このセルバスからの信号でラッチする。 パケット処理ユニット200と同様に、ルーティング・コントローラ230そ れ自体もセルバス220に接続された装置である。ルーティング・コントローラ 230で、ルーティング・コントローラ230がアドレス情報セルを取り出すの は、ルーティングテーブルから宛先ポートを探索するためだけであり、また、こ れから発信元アドレス情報を学習するために、ルーティングテーブル235内の テーブルを保守するためだけである。この情報は、どの発信元アドレスにどの ローカルポートが対応するかを示すマップを組み立てるルーティングテーブル・ メモリ235に保持されることになる。ルーティング・コントローラ230に、 出力ポート情報とともに送出されるコントロール・セルがある場合には、ルーテ ィング・コントローラ230はその割り当てロジックからバスサイクルを要求し 、一度、その要求が肯定応答されると、ルーティング・コントロール・セルを送 出することになる。 図7を説明する。図7は、図3に関連して既に参照したパケット組み立て伝送 コントロール・ロジック700の回路の詳細なブロック図を示してある。セルバ ス220にセル搬送がある場合、セル受信コントロール・ロジック710はこの セルバスからのセルをラッチする。セルヘッダ・デコーダ・ロジック720はセ ルヘッダを復号し、パケット組み立てオペレーションを行うため適正な制御信号 を生成するために設けてある。パケット組み立てリンクドリスト・コントロール ・ロジック730は、24個の10Mbps低速パケットデータフロー・パケットと 、1つの高速パケットデータフローに対して、それぞれ、25本のパケット組み 立てラインを備えている。セルバス220からセルを受信した場合、セルヘッダ ・デコーダ720はセルヘッダの送信元情報に従って、適正なパケット組み立て ラインを見つけ出し、そのパケット組み立てラインに指示して、適正なオペレー ションを行うことになる。この適正なオペレーションは、既に詳細に説明したセ ルヘッダに含まれている他の情報に基づいて行われる。 パケットのデータセルが受信された場合は、受信されたデータセルに対応する パケット組み立てラインが、その対応するパケット・バッファメモリ210から バッファ空間を突き止め、そのデータをストアすることになる。組み立てライン の最後のバッファ・ブロックがフル(full)の場合か、組み立てラインにバッフ ァ・ブロックがない場合は、パケット組み立てリンクドリスト・コントロール・ ロジック730は、フリーリンクドリスト・コントロール・ロジック740に要 求して、組み立てラインに接続されるフリー・バッファ・ブロックを割り当てさ せる。そして、接続されたばかりのバッファ・ブロックの最初に利用可能なデー タワード空間に、当該データがストアされることになる。そうでない場合は、組 立てラインの最後のブロックの最初に利用可能なデータワード空間に、当 該データがストアされることになる。パケット・バッファメモリ空間モデルにつ いては図8を参照して後程詳しく説明する。 あるブロックへのデータストアが終了した後、所定のパケットに対するパケッ ト組み立てラインは、そのブロックデータについての情報と、(そのブロックデ ータがパケットの最後のブロックではない場合は)次のブロックのポインタとを 保持し、ブロック・ヘッダを更新するため、パケット・バッファメモリ210へ のアクセスをアービトレートする。 フリー・リンクドリスト・コントロール・ロジック740がフリー・バッファ ・ブロックを割り当てできない場合は、パケット組み立てリンクドリスト・コン トロール・ロジック730は、影響を受けた組み立てラインに対するマークであ って、当該バッファがフル(full)であることを表わすマークをセットすること になる。組み立てラインは、対応するポインタをフリー・リンクドリスト・コン トロール・ロジック740へ開放して、この組み立てラインに接続されたブロッ ク全部を、フリー・ブロック・プールに戻すことになる。この対応するDSTア ドレスを有する次のデータセルであって、この特定の組み立てラインに対するデ ータセルが受信され、あるバッファ・ブロックを割り当てることができるまで、 この特定の組み立てラインに対するデータセルの残りは、除去される。上述のマ ークはリセットされることになる。 受信されたセルヘッダが受信エラーを示すとき、組み立てラインで組み立てら れているパケットの伝送がまだサブミットされない場合には、この対応するパケ ット組み立てラインは、組み立てラインにリンクされたメモリ・ブロックの全部 を、フリー・リンクドリストに返し、そのパケットを破棄することになる。そう でない場合は、この受信エラー情報は、そのパケットの送出をサブミットした対 応する伝送ラインに供給されることになる。 ルーティング・コントローラ230からのルーティング・コントロール・セル が受信された場合は、このルーティング・コントロール・セルによって識別され たパケット組み立てラインが、ルーティング・コントロール・セルによって供給 された情報、例えば、パケットの送信のための種々の宛先ポートと関係付けをさ れたパケット・バッファメモリにおいて、変更されることになる。 パケット送信リンクドリスト・コントロール・ロジック750は、パケット処 理ユニット200にそれぞれ関係付けをした8つのローカルポートに対して、そ れぞれ、8本のパケット伝送ラインを保持している。各パケット伝送ラインは、 パケツト伝送ラインと関係付けをしたMAC(media access cntroller)761 〜768と通信をして、パケット伝送リンクドリスト・コントロール・ロジック 750によってサブミットされたパケットを伝送する。一度、パケットが各宛先 ポートから伝送されると、パケット伝送リンクドリスト・コントロール・ロジッ ク750はフリー・リンクドリスト・コントロール・ロジック740に信号を供 給し、再割り当てのために、パケット・バッファメモリ210のメモリ空間を開 放する。パケット伝送が成功すると、直ちに、フリー・リンクドリスト・コント ロール・ロジック740により維持されているフリー・プールに、リンクドリス ト・ポインタを戻す。 パケット処理ユニット200に関係付けをしたパケット・バッファメモリ21 0へのアクセスは、既に説明した原理に従ってオペレートするパケット・バッフ ァ・アクセス・コントロール・ロジック755によりハンドルされる。 パケット・バッファメモリの編成 図8を説明する。図8はパケット・バッファメモリ編成の概念図を示す。パケ ット・バッファメモリ210は固定長のブロック810に区分されている。典型 的な例では、各ブロックのサイズは、32ワード×48ビットである。あるブロ ックの最低位の3ワードは、ブロックヘッダを備えている。残りのワードは、簡 単な順位規則、すなわち、先に受信されたデータ・ビットほど高位のメモリ・ビ ット位置にストアされるという規則に従って、パケットデータをストアするのに 使用されている。 図8の説明から、3ワードのブロック・ヘッダがコントロール情報のための9 つのサブワード情報空間として取り扱われることは、明らかである。第1のサブ ワード820でパケット属性を定義しており、図9と関連して後程詳細に説明す る。サブワード821ないし828は、それぞれ、特定のパケット・バッファメ モリ210によってサーブされているパケット処理ユニット200に関係付けを した8つのポートに対応するネクスト・ブロック・ポインタ情報を保持している 。データパケットは任意のパケット処理ユニットのために1回だけストアされ、 しかも、パケットを2つ以上のポートから伝送させることができるので、複数ポ ートから伝送させることができるとき、各ポートに対するネクスト・ブロック・ ポインタに関する情報が、個別に保持される。可能な各ポートからパケットが伝 送される伝送レートが、トラフィック考慮事項(traffic considerations)によ り影響される可能性があるので、伝送シーケンスのどこに各ポートがあるかを追 跡することが必要である。 図9はパケット・バッファメモリ210のパケット・ブロックにおけるパケッ ト属性部分820に対するビット割り当てを示す。パケット属性部分はブロック ・ヘッダにおける高位16ビットの第1ワードにより構成されている。第1ビッ ト(ビット47)はパリティチェックビットを備えている。パリティチェックビ ットは後続の15ビットだけをプロテクトするのに使用されている。パリティチ ェックビットは、16ビット・フィールドの「1」の総数が偶数になるようにセ ットされている。伝送残りカウント(ビット46〜44)は何個の余分なポート がパケットを送信しなければならないかを表わすのに使用されている。受信タイ ムスタンプ(ビット43〜40)はパケットを受信した時刻を記録するのに使用 されている。ブロックにおける最終ワード位置(ビット39〜35)はブロック における最終ワードの位置を示すのに使用されている。当該ブロックがあるパケ ットの最終データ部分を含む場合、このフィールドはデータが占有する実際の最 終ワードの位置を含んでいる。そうでない場合には、当該ブロックが、このパケ ットの最終データ位置ではないデータのフルワードを含むことを示すため、この フィールドには「00000」がセットされる。最後に、最終ワードでのバイト カウント(ビット34〜32)は、最終ブロックのワード・カウントにより示さ れた最終ワードに、何バイトが実際にストアされているのかを示すのに、使用さ れている。 前述したように、パケット属性820のうちの伝送残りカウントを構成するビ ット46〜44よりなるフィールドは、パケットを何個のポートから伝送した方 が良いかを示すのに使用される。パケットを2つ以上のポートから出力する場 合には、伝送残りカウントは、パケットが出力されるポートの数と等しくなって いる。MAC伝送コントロール・ロジック761〜768が特定ポートからのパ ケットの伝送を完了するとき、MAC伝送コントロール・ロジック761〜76 8は伝送カウントにストアされた値をデクリメントする。一度、最後のポートが パケットの伝送が完了すると、伝送残りカウントはゼロまでデクリメントされて おり、リンクドリスト・ポインタを開放することができ、当該パケットにより占 有されていたメモリ・バッファ空間は、別のパケットに割り当てるのに利用可能 になる。 本発明に関して前述した典型的なEthernetスイッチは、カットスルー・パケッ ト伝送モードをサポートしている。カットスルー・パケット伝送モードでは、組 み立てられているパケットに対する宛先ポートが知られており、しかも、宛先ポ ートに対する伝送ラインで待機しているパケットがない場合には、パケットがま だ組み立てられている間であっても、対応するパケット伝送ロジックがMAC( media access controller)の制御によりパケツト伝送を開始する。現在のパケ ットがまだ伝送されている間に、同じポートに宛られた別のパケットが組み立て られている場合には、パケット伝送ラインの後部(back)に、そのパケットが連 結されることになる。パケット伝送ラインでパケットが待機している場合は、新 規に組み立てられたパケットが伝送ラインの後部に連結され、前のカットスルー 伝送が完了した後、この伝送ラインの先頭にあるパケットが伝送されることにな る。 カットスルー・パケット伝送機能の場合は、カットスルー伝送が開始される前 に、何個のパケットを受信した方が良いかを示す値を指定することができる。シ ステム構成レジスタのカットスルー最少開始限界値の値であって、MAC Tx コントローラが応答する値を変更することにより、最少開始ポイントを調整する ことができる。この調整により、トラフィック状況に従って最少カットスルー・ レイテンシを動的に変更し、不完全な(runt)リークスルー・レート(leak-thr ough rate)を制御するか、最小化することができる。 上述した動的に調整可能なカットスルー伝送は、パケット処理ユニットに関係 付けをした全てのポートに対するパケット処理ユニットレベルで定義されるが、 別の実施の形態では、パケット処理ユニットに関係付けをした各ポートが、各ポ ートに対する別個のトラフィック条件に従って、異なるカットスルー・レイテン シを有することができるように、個別のレジスタを各ポートに対して定義するこ とができる。 パケット伝送を終了すると、直ちに、フリー・リンクドリスト・コントロール ・ロジック740により管理されているブロック復帰キューの最初と最後のブロ ック位置に関する情報を用いて、ブロック復帰要求をキューすることにより、パ ケット伝送ロジックは、丁度伝送されたパケットデータを含むブロックを返すこ とになる。ブロック復帰ロジックは最初の要求のブロック・ヘッダを読み込んで 、伝送残りカウントが「000」までデクリメントされたかかどうかを調べる。 伝送残りカウントが「000」である場合には、関係付けしてあるブロック・リ ストを、フリー・リンクドリスト・プールの最後に連結する。そうでない場合に は、伝送残りカウントを1だけデクリメントし、ブロック・ヘッダを適正に更新 することに責任を持つ。 管理情報ベース(MIB)バス 図2を再度説明する。既に説明したが、典型的なEthernetスイッチ内にセルバ ス220を導入することに加えて、ワークグループ・スイッチ内にコントロール ・トラフィックを提供するため、管理情報ベース(MIB)バス260も用意さ れている。MIBバス260はコンパニオンMIBカウンタ265で機能するよ うに設計されている。コンパニオン(companion)MIBカウンタ265は種々 のポートのMIBカウント情報をアキュムレートし、MIBバスサイクルを割り 当てる。典型的な例によれば、MIBバス260に接続された全装置が、20M Hzでランしているシステム・クロックと同期されている。さらに詳しく述べる と、このバス上の全ての信号はクロックの立ち上がりエッジでアサートされ、ク ロックの立ち上がりエッジで各装置によってラッチされる。さらに、MIBカウ ンタは前述のセルバスサイクルと同位相で10MHzクロックに同期させた方が 良い。このバスアービトレーション・スキームはセルバスで用いられているスキ ームと同様であるが、アービトレーションはセルバスアービトレー ションから独立している。 セルバス220の場合のように、MIBバス260はセルベースのバスアーキ テクチャである。MIBバス260に伝送されたセルは、定義により、22ビッ トのデータ・ユニットであって、このセルは各パケット処理ユニットにより転送 される。パケット処理ユニットは各ローカルポートに対するMIB情報を搬送し て、種々のMIBカウント情報をアキュムレートするものである。MIBセルを 伝送するには、まず、ビット21〜11を伝送し、ついで、ビット10〜0を伝 送するので、2システムクロック・サイクルが必要である。 受信アクティビティを表すポートに対するMIBバス上に伝送されたMIBセ ルのフォーマットが、図10に示してある。ビット21〜17で、パケット処理 ユニットと発信元ポートのIDを、現在のMIBセルにより記述されている受信 アクティビティに供給している。アクティビティ・タイプ(ビット15)は、こ のビットが「0」にセットされた場合に、ポート上のアクティビティが受信アク ティビティであることを示す。ビット14が「1」にセットされた場合は、受信 フレームがバイト境界で終らないことを示す。 ビット13〜11は、ポートの受信アクティビティとしてのコードを示す。こ れら3ビットの値が「111」である場合は、フレームが正しく受信されていて 、ユニキャスト・タイプであり、スイッチによってフィルタリングされないこと を示す。「110」がセットされた場合は、フレームが正しく受信されていて、 ブロードキャスト・フレームであり、スイッチによってフィルタリングされない ことを示す。「101」がセットされた場合は、フレームが正しく受信されてい て、マルチキャスト・フレームであり、スイッチによってフィルタリングされな いことを示す。「100」がセットされた場合は、フレームが正しく受信された が、スイッチによってフィルタリングされることを示す。「011」がセットさ れた場合は、有効なフレーム長であるが、CRCエラーとドリブリング・ビット ・エラー(dribbling bit error)があるフレームを受信したことを示す。「0 10」がセットされた場合は、有効フレーム長でフレームを受信したが、ドリブ リング・ビット・エラーはないもののCRCエラーがあり、CRCがバイト境界 でチェックされることを示す。「001」がセットされた場合は、フ レームが1518バイトを超えるフレーム長で受信されたことを示しており、こ れは有効なEthernetパケットとしては大き過ぎることを示している。最後に、「 000」がセットされた場合は、フレームが64ビット未満のフレーム長で受信 されたことを示しており、このフレームは不完全な(runt)フレームと呼ばれる 。ビット10〜0はフレームが正しく受信された場合にフレームに含まれるバイ ト・カウントを示すために使用されている。 図11を説明する。図11は受信アクティビティを有するポートに対するMI Bセルのフォーマットを示してある。ここでも、ビット21〜17は、アクティ ビティが報告される発信元ポートと、発信元パケット処理ユニットとを示す。ビ ット15に「1」がセットされた場合は、当該アクティビティが伝送アクティビ ティであることを示す。ビット13〜11は、ポート伝送アクティビティに対す るコードを定義する。「111」は、コリジョンに起因するバックオフ(backof f)なしに、正しいフレームを有するパケットの伝送が初めて成功したことを示 す。「110」が設定された場合は、正しいフレーム・フォーマットのパケット の伝送に成功したが、前のバックオフはコリジョン・アクティビティに起因する ことを示す。「101」がセットされた場合は、スイッチにより許容される最大 パケット遅延より長く、パケットがパケットバッファに滞留したので、そのパケ ットが破棄されたことを示す。「100」がセットされた場合は、当該パケット を伝送しようとしている間に、MAC(media access controller)が16回以 上のコリジョンを経験したので、このパケットが破棄されたことを示す。許容さ れるコリジョン回数は別の構成では変更することができる。「011」がセット された場合は、ポートが64バイトを超えるデータを伝送した後で、コリジョン が発生したことを示す。「010」がセットされた場合は、ポートが64バイト を超えるデータを伝送する前に、コリジョンが発生したことを示す。「001」 がセットされた場合は、アライメント・エラーか、CRCエラーか、FrameTooLo ngエラーのあるパケットが伝送されたことを示す。最後に、「000」がセット された場合は、フレーム長が64バイト未満のパケット、すなわち、不完全な( runt)パケットが伝送されたことを示す。ビット10〜0の値は、エラーに遭遇 しなかったとき、伝送されたパケットに含まれるバイト・カ ウントを示すのに使用されている。 以上、データパケット・トラフィックとルーティング技術とを効率的にハンド ルするパケット処理ユニットを実装するEthernetワークグループ・スイッチの典 型例を説明した。本発明を典型例および実装例で説明したが、本発明の技術と態 様の多くは他のネットワーク通信装置で利用できることは、当業者にとって当然 のことである。従って、本発明の精神と範囲は以下の請求項でも勘酌されるべき である。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(KE,LS,MW,SD,S Z,UG),UA(AM,AZ,BY,KG,KZ,MD ,RU,TJ,TM),AL,AM,AT,AU,AZ ,BA,BB,BG,BR,BY,CA,CH,CN, CU,CZ,DE,DK,EE,ES,FI,GB,G E,HU,IL,IS,JP,KE,KG,KP,KR ,KZ,LC,LK,LR,LS,LT,LU,LV, MD,MG,MK,MN,MW,MX,NO,NZ,P L,PT,RO,RU,SD,SE,SG,SI,SK ,TJ,TM,TR,TT,UA,UG,UZ,VN

Claims (1)

  1. 【特許請求の範囲】 1.到着ネットワーク・データパケットを受信するように結合した第1ポートと 、 該第1ポートと通信するユニットであって、前記到着データパケットを複数の 固定長データセルに分割するデータパケット分割ユニットと、 該データパケット分割ユニットと通信するセルバスであって、前記固定長のデ ータセルを伝送するためのセルバスと、 該セルバスと通信するユニットであって、前記データセルを受信し、該データ セルをネットワーク・データパケットに再組み立てするデータパケット再組み立 てユニットと、 該データパケット再組み立てユニットと通信する第2ポートであって、前記デ ータ通信装置から前記ネットワーク・データパケットを伝送するための第2ポー トと を備えたことを特徴とするネットワークデータ通信装置。 2.請求項1において、前記データパケット分割ユニットと通信する複数のポー トであって、複数のネットワーク発信元アドレスからの到着ネットワーク・デー タパケットを受信するように結合した第1の複数のポートと、 前記データパケット再組み立てユニットと通信する複数のポートであって、再 組み立てしたデータパケットを複数のネットワーク宛先アドレスに伝送するよう に結合してある第2の複数のポートと をさらに備えたことを特徴とするネットワークデータ通信装置。 3.請求項2において、前記セルバスと通信するルーティング・コントロール・ ユニットであって、前記セルバス上のデータセルトラフィックを監視し、ネット ワーク・データパケットの出力ポートを決定するルーティング・コントロール・ ユニットであり、前記データパケット再組み立てユニットに宛先コントロール・ パケットを供給するルーティング・コントロール・ユニットをさらに備えたこと を特徴とするネットワークデータ通信装置。 4.請求項3において、前記ルーティング・コントロール・ユニットと通信する ルーティングテーブル・メモリであって、前記ネットワーク発信元アドレスと、 該発信元アドレスに関係付けをしたポートとを有するデータテーブルをストアす るためのルーティングテーブル・メモリをさらに備えたことを特徴とするネット ワークデータ通信装置。 5.請求項4において、前記ネットワークデータ通信装置の前記ポートの全部と 通信するコントロールバスであって、前記各ポートに関係付けをしたアクティビ ティに関するポート・ステータス・データセルを受信するためのコントロールバ スと、 該コントロールバスに結合したカウンタであって、前記ポート・ステータス・ データセルをアキュムレートするポート・ステータス・カウンタと をさらに備えたことを特徴とするネットワークデータ通信装置。 6.請求項5において、 I/Oバスと、 該I/Oバスと前記セルバスの間に結合した回路であって、データ・トラフィ ックを搬送するバス・ブリッジング回路と、 前記I/Oバスに結合した高速ネットワーク・コントローラと、 該高速ネットワーク・コントローラに接続したインタフェースであって、前記 ネットワークデータ通信装置を高速ネットワークに接続する高速ネットワーク・ インタフェースと をさらに備えたことを特徴とするネットワークデータ通信装置。 7.請求項6において、前記I/Oバスと通信するマイクロプロセッサであって 、前記ネットワークデータ通信装置に対するネットワーク管理プロトコルをハン ドルするマイクロプロセッサをさらに備えたことを特徴とするネットワーク データ通信装置。 8.請求項1において、前記データパケット分割ユニットは、 前記ネットワークデータ通信装置に関係付けしてあるクロック信号に、受信デ ータパケットを同期させるデータパケット同期装置と、 前記データパケットを分析するように結合した装置であって、前記データパケ ットを構成するデータセル用のセルヘッダを生成するセルヘッダ生成装置と、 前記データパケットを受信し、受信したデータパケットを前記セルバスに伝送 される前記データセルに包含される固定長のセル・ペイロードに分割するように 結合したセルペイロード生成装置と、 前記ヘッダ生成装置および前記セルペイロード生成装置と通信する装置であっ て、セルヘッダとセルペイロードとを組み立ててデータセルを生成し、前記セル バスに伝送するセルヘッダ・セルペイロード組み立て装置と、 該セルヘッダ・セルペイロード組み立て装置からデータセルを受信するように 結合した回路であって、前記セルバスに伝送するセル伝送回路と を備えたことを特徴とするネットワークデータ通信装置。 9.請求項8において、前記セルヘッダ生成装置は、 フィールド分類装置と、 バイト・カウンタと、 CRCチェッカと、 前記フィールド分類装置と、前記バイト・カウンタと、前記CRCチェッカに 結合したレジスタであって、前記フィールド分類装置と、前記バイト・カウンタ と、CRCチェッカにそれぞれ応答して、セルヘッダ・ビットをストアするセル ヘッダ・レジスタと を備えたことを特徴とするネットワークデータ通信装置。 10.請求項9において、前記セルペイロード生成装置は、 前記データパケットのシーケンシャル・ビットをシリアルに受信するレジスタ であって、固定長のセルペイロードを出力するためのシリアルイン/パラレルア ウト(SIPO)レジスタと、 該SIPOレジスタに結合したレジスタであって、前記固定長のセルペイロー ドを受信し保持するセルペイロード・レジスタと を備えたことを特徴とするネットワークデータ通信装置。 11.請求項10において、前記セルヘッダ・ペイロード合成装置は、 前記セルヘッダ・レジスタおよび前記セルペイロード・レジスタに結合したマ ルチプレクサであって、セルヘッダと、該セルヘッダにに対応するセルペイロー ドを選択するセル伝送マルチプレクサと、 該セル伝送マルチプレクサに結合したレジスタであって、 組み立てた固定長のデータセルを前記セルバスに伝送する前に保持するバス出力 レジスタと を備えたことを特徴とするネットワークデータ通信装置。 12.請求項11において、前記セル伝送回路は、 セルバス・アクセスを要求するコントローラであって、伝送イネーブル信号を 生成するバスアクセス・コントローラと、 前記バス出力レジスタに結合した装置であって、前記伝送イネーブル信号に応 答して前記データセルを前記セルバスに伝送するバス・ドライバと を備えたことを特徴とするネットワークデータ通信装置。 13.請求項12において、前記バスドライバは、 前記固定長のデータセルの前半と、前記固定長のデータセルの後半とを、前記 セルバスに連続して伝送することを特徴とするネットワークデータ通信装置。 14.請求項8において、前記データパケット再組み立てユニットと通信するパ ケット・バッファメモリをさらに備えたことを特徴とするネットワークデータ通 信装置。 15.請求項14において、前記データパケット再組み立てユニットは、 前記データパケットを再組み立てするため、セルデータの前記パケット・バッ ファメモリへのストアを指示するパケット組み立てリンクドリスト・コントロー ル・ロジックと、 前記データ・パケットをストアするため、前記パケット・バッファメモリのメ モリ・ブロックを割り当てるフリーリンクド・リスト・コントロール・ロジック と を備え、 所定のデータブロックに対するメモリの最初のブロックが、前記データパケッ トが伝送される前記パケット・バッファメモリに関係付けをしたポートの個数に ついての情報をストアする ことを特徴とするネットワークデータ通信装置。 16.請求項15において、 前記第2ポートおよび前記パケット再組み立てユニットと通信するロジックで あって、前記パケット・バッファメモリから前記ネットワークへの前記データパ ケットの伝送を指示するメディアアクセス・コントロール伝送ロジックをさらに 備え、 前記メディアアクセス・コントロール伝送ロジックが、パケット伝送時に、前 記フリー・リンクドリスト・ロジックに前記パケット・バッファメモリのメモリ ・ブロックを開放するように通知する ことを特徴とするネットワークデータ通信装置。 17.請求項16において、前記メディアアクセス・コントロール伝送ロジック は、再組み立て完了前に、動的に構成可能なカットスルー伝送パラメータに従っ て、データパケットの伝送を開始することを特徴とするネットワークデータ通信 装置。 18.ネットワークデータパケットを受信し伝送するための第1の複数のポート と、 該第1の複数のポートと通信するユニットであって、該第1の複数のポートか ら受信したデータパケットを固定長のデータセルに分割するユニットであり、該 第1の複数のポートの少なくとも1つから伝送するため、固定長のデータセルを データパケットに再組み立てする第1パケット処理ユニットと、 該第1パケット処理ユニットに結合したバッファメモリであって、データパケ ットが再組み立てされたとき、該データパケットが前記第1の複数のポートの少 なくとも1つから伝送できるようになるまで、ストアするための第1パケット・ バッファメモリと を備えたことを特徴とするネットワークスイッチ。 19.請求項18において、 前記第1パケット処理ユニットに結合したセルバスであって、前記データセル を伝送するためのセルバスと、 ネットワーク・データパケットを受信し伝送するための第2の複数のポートと 、 該第2の複数のポートと前記セルバスの間に結合したユニットであって、前記 第2の複数のポートの1つで受信したデータパケットを分割するユニットであり 、前記第2の複数のポートの少なくとも1つから伝送されるデータパケットを再 組み立てする第2パケット処理ユニットと をさらに備えたことを特徴とするネットワークスイッチ。 20.請求項19において、 前記セルバスに結合したユニットであって、前記データパケットを前記第1お よび第2の複数のポートのいずれかから伝送するかを識別するために、前記パ ケット処理ユニットにコントロール・セルを伝播するユニットであり、前記セル バス上のデータセル・トラフィックを監視し、ポートとネットワーク・アドレス しを関係付けをするスイッチ・パケット・ルーティング・コントロール・ユニッ トと、 該スイッチ・パケット・ルーティング・コントロール・ユニットに結合したメ モリであって、前記第1および第2の複数のポートのそれぞれに関係付けをした ネットワーク・アドレスのテーブルを保持するためのルーティングテーブル・メ モリと をさらに備えたことを特徴とするネットワークスイッチ。 21.請求項20において、 I/Oバスと、 該I/Oバスと前記セルバスの間に結合した回路であって、データ・トラフィ ックを伝搬するバス・ブリッジング回路と、 前記I/Oバスに結合した高速ネットワーク・コントローラと、 該高速ネットワーク・コントローラに結合したインタフェースであって、前記 ネットワークデータ通信装置を高速ネットワークに結合する高速ネットワーク・ インタフェースと をさらに備えたことを特徴とするネットワークスイッチ。 22.請求項21において、前記I/Oバスと通信するマイクロプロセッサであ って、前記ネットワーク・スイッチに対するネットワーク管理プロトコルを処理 するマイクロプロセッサをさらに備えたことを特徴とするネットワークスイッチ 。 23.請求項19において、前記第1および第2のパケット処理ユニットは、そ れぞれ、 データパケットを複数の固定長のデータセルに分割するパケット分割回路と、 固定長のデータセルをネットワーク・データパケットに再組み立てするパケッ ト再組み立て回路と を備えたことを特徴とするネットワークスイッチ。 24.複数のネットワークポートに関係付けをしたユニットであって、セルバス によって結合したユニットであり、関係付けをしたネットワークポートを介して 受信したデータパケットを、前記セルバスに伝送するため、固定長のセルに分割 するユニットであり、関係付けをしたネットワーク・ポートから再伝送するため 、前記セルバスからのデータパケットを再組み立てをする複数のパケット処理ユ ニットを備えたことを特徴とするネットワークスイッチ。 25.請求項21において、 前記セルバスに結合したユニットであって、前記データパケットが前記第1お よび第2の複数のポートのうちのいずれかから伝送されるかを識別するため、前 記パケット処理ユニットにコントロール・セルを伝播するユニットであり、ポー トとネットワーク・アドレスとの関係付けをするため、前記セルバス上のデータ セルトラフィックを監視するスイッチ・パケット・ルーティング・コントロール ・ユニットと、 該スイッチ・パケット・ルーティング・コントロール・ユニットに結合したメ モリであって、前記第1および第2の複数のポートにそれぞれ関係付けをしたネ ットワーク・アドレスのテーブルを保持するためのルーティングテーブル・メモ リと をさらに備えたことを特徴とするネットワークスイッチ。 26.請求項25において、 I/Oバスと、 該I/Oバスと前記セルバスの間に結合した回路であって、データ・トラフィ ックを伝送するバス・ブリッジング回路と、 前記I/Oバスに結合した高速ネットワーク・コントローラと、 該高速ネットワーク・コントローラに結合したインタフェースであって、前記 ネットワークデータ通信装置を高速ネットワークに結合する高速ネットワーク・ インタフェースと をさらに備えたことを特徴とするネットワークスイッチ。 27.請求項21において、 前記I/Oバスと通信するマイクロプロセッサであって、前記ネットワーク・ スイッチに対するネットワーク管理プロトコルを処理するマイクロプロセッサを さらに備えたことを特徴とするネットワークスイッチ。 28.ネットワーク上でデータパケットをスイッチングする方法において、 第1ネットワーク・ポートでデータパケットを受信するステップと、 前記データパケットを複数の固定長のセルに分割するステップと、 第2ネットワーク・ポートに関係付けをしたパケット処理ユニットに前記固定 長のセルを伝播するステップと、 前記固定長のセルを再組み立てネットワーク・データパケットに再組み立てす るステップと、 前記再組み立てネットワーク・データパケットを前記第2ネットワーク・ポー トから伝送するステップと を備えたことを特徴とする方法。 29.請求項28において、複数のネットワーク・ポートから前記再組み立てネ ットワーク・データパケットを伝送するステップをさらに備えたことを特徴とす る方法。 30.請求項28において、前記伝播するステップは、セルバスに前記固定長の セルを伝送するステップを備えたことを特徴とする方法。 31.請求項30において、前記分割するステップは、 内部クロック信号と前記データパケットの受信を同期させるステップと、 前記データパケットを固定長のセルペイロードに分割するステップと、 関係付けをしたセルペイロードに従ってセルヘッダを生成するステップと、 セルヘッダと、関係付けをししたセルペイロードとを組み合わせて固定長のセ ルを組み立てるステップと を備えたことを特徴とする方法。 32.請求項31において、前記再組み立てステップが データパケットを構成する前記固定長のセルを受信するステップと、 前記データパケットを再組み立てする順番に前記第2のネットワーク・ポート に付属したパケット・バッファメモリへ前記セルをストアするステップと を備えたことを特徴とする請求項31に記載の方法。 33.請求項32において、前記ストアするステップは、 前記データパケットをストアするのに必要なだけ前記パケット・バッファメモ リのブロックを割り当てるステップと、 前記パケット・バッファメモリに割り当て可能なフリー・メモリ・ブロックを 指し示すポインタにより構成されるフリー・プールを保持するステップと、 データパケットを伝送する残りの出力ポートの数を追跡するステップとを備え たことを特徴とする方法。 34.請求項33において、前記再組み立てネットワーク・データパケットを伝 送するステップは、 1つのポートからデータパケットが伝送されたときに、直ちに、パケットを伝 送する残りのポート数を表すカウンタ値をデクリメントするステップと、 前記データパケットが全宛先ポートから伝送された後に、データパケットに関 係付けをした前記パケット・バッファメモリのブロックを開放するステップと を備えたことを特徴とする方法。 35.請求項34において、 各ポートがアクティビティ情報を通知するステップと、 中央ロケーションにポートアクティビティ情報をアキュムレートするステップ と をさらに備えたことを特徴とする方法。
JP53012097A 1996-02-23 1996-11-08 データネットワーク上でデータパケットをスイッチングする方法および装置 Expired - Lifetime JP3412825B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/603,576 US5781549A (en) 1996-02-23 1996-02-23 Method and apparatus for switching data packets in a data network
US08/603,576 1996-02-23
PCT/US1996/017949 WO1997031455A1 (en) 1996-02-23 1996-11-08 Method and apparatus for switching data packets in a data network

Publications (2)

Publication Number Publication Date
JP2000503828A true JP2000503828A (ja) 2000-03-28
JP3412825B2 JP3412825B2 (ja) 2003-06-03

Family

ID=24416033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53012097A Expired - Lifetime JP3412825B2 (ja) 1996-02-23 1996-11-08 データネットワーク上でデータパケットをスイッチングする方法および装置

Country Status (4)

Country Link
US (1) US5781549A (ja)
JP (1) JP3412825B2 (ja)
AU (1) AU7674196A (ja)
WO (1) WO1997031455A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008123272A1 (ja) 2007-03-28 2008-10-16 Kabushiki Kaisha Yaskawa Denki 通信装置、同期通信システムおよび同期通信方法

Families Citing this family (184)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6370142B1 (en) * 1995-07-12 2002-04-09 Nortel Networks Limited Method and apparatus for performing per-port IP multicast pruning
US6240065B1 (en) * 1996-01-08 2001-05-29 Galileo Technologies Ltd. Bit clearing mechanism for an empty list
IL116988A (en) 1996-01-31 1999-12-31 Galileo Technology Ltd Bus protocol
IL116989A (en) 1996-01-31 1999-10-28 Galileo Technology Ltd Switching ethernet controller
IL116986A (en) * 1996-01-31 2000-01-31 Galileo Technology Ltd Switching ethernet controller providing packet routing
US6369855B1 (en) * 1996-11-01 2002-04-09 Texas Instruments Incorporated Audio and video decoder circuit and system
US6222840B1 (en) * 1996-12-30 2001-04-24 Compaq Computer Corporation Method and system for performing concurrent read and write cycles in network switch
US6094434A (en) * 1996-12-30 2000-07-25 Compaq Computer Corporation Network switch with separate cut-through buffer
US6260073B1 (en) * 1996-12-30 2001-07-10 Compaq Computer Corporation Network switch including a switch manager for periodically polling the network ports to determine their status and controlling the flow of data between ports
US6173364B1 (en) * 1997-01-15 2001-01-09 At&T Corp. Session cache and rule caching method for a dynamic filter
US6111874A (en) * 1997-02-14 2000-08-29 Advanced Micro Devices, Inc. Shared address table with source and destination two-pass algorithm
US6128666A (en) 1997-06-30 2000-10-03 Sun Microsystems, Inc. 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
US6044418A (en) 1997-06-30 2000-03-28 Sun Microsystems, Inc. Method and apparatus for dynamically resizing queues utilizing programmable partition pointers
US6044087A (en) 1997-06-30 2000-03-28 Sun Microsystems, Inc. Interface for a highly integrated ethernet network element
US6052738A (en) * 1997-06-30 2000-04-18 Sun Microsystems, Inc. Method and apparatus in a packet routing switch for controlling access at different data rates to a shared memory
US5938736A (en) * 1997-06-30 1999-08-17 Sun Microsystems, Inc. Search engine architecture for a high performance multi-layer switch element
US6014380A (en) * 1997-06-30 2000-01-11 Sun Microsystems, Inc. Mechanism for packet field replacement in a multi-layer distributed network element
US6081512A (en) 1997-06-30 2000-06-27 Sun Microsystems, Inc. Spanning tree support in a high performance network device
US6081522A (en) 1997-06-30 2000-06-27 Sun Microsystems, Inc. System and method for a multi-layer network element
US6049528A (en) 1997-06-30 2000-04-11 Sun Microsystems, Inc. Trunking ethernet-compatible networks
US6246680B1 (en) 1997-06-30 2001-06-12 Sun Microsystems, Inc. Highly integrated multi-layer switch element architecture
US6016310A (en) 1997-06-30 2000-01-18 Sun Microsystems, Inc. Trunking support in a high performance network device
US5920566A (en) * 1997-06-30 1999-07-06 Sun Microsystems, Inc. Routing in a multi-layer distributed network element
US6119196A (en) 1997-06-30 2000-09-12 Sun Microsystems, Inc. System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates
US6088356A (en) 1997-06-30 2000-07-11 Sun Microsystems, Inc. System and method for a multi-layer network element
US6094435A (en) 1997-06-30 2000-07-25 Sun Microsystems, Inc. System and method for a quality of service in a multi-layer network element
US6295299B1 (en) * 1997-08-29 2001-09-25 Extreme Networks, Inc. Data path architecture for a LAN switch
US6128296A (en) * 1997-10-03 2000-10-03 Cisco Technology, Inc. Method and apparatus for distributed packet switching using distributed address tables
US6032190A (en) * 1997-10-03 2000-02-29 Ascend Communications, Inc. System and method for processing data packets
US6148422A (en) * 1997-10-07 2000-11-14 Nortel Networks Limited Telecommunication network utilizing an error control protocol
US6081530A (en) * 1997-11-24 2000-06-27 Nokia High Speed Access Products Inc. Transmission of ATM cells
US6266335B1 (en) * 1997-12-19 2001-07-24 Cyberiq Systems Cross-platform server clustering using a network flow switch
KR100269146B1 (ko) * 1997-12-29 2000-10-16 윤종용 Atm 기반의 엑세스망에서의 기존망과의 연동장치
US6247058B1 (en) * 1998-03-30 2001-06-12 Hewlett-Packard Company Method and apparatus for processing network packets using time stamps
US6148337A (en) * 1998-04-01 2000-11-14 Bridgeway Corporation Method and system for monitoring and manipulating the flow of private information on public networks
US6426943B1 (en) * 1998-04-10 2002-07-30 Top Layer Networks, Inc. Application-level data communication switching system and process for automatic detection of and quality of service adjustment for bulk data transfers
US6359879B1 (en) * 1998-04-24 2002-03-19 Avici Systems Composite trunking
US6490281B1 (en) * 1998-06-04 2002-12-03 International Business Machines Corporation Apparatus including a scalable multiprotocol communications adapter using modular components and a method for transmitting data frames via scalable multiprotocol communication adapters
US6421348B1 (en) * 1998-07-01 2002-07-16 National Semiconductor Corporation High-speed network switch bus
AU4848699A (en) * 1998-07-08 2000-02-01 Broadcom Corporation A method of sending packets between trunk ports of network switches
US6876653B2 (en) 1998-07-08 2005-04-05 Broadcom Corporation Fast flexible filter processor based architecture for a network device
GB2339368A (en) * 1998-07-08 2000-01-19 Ibm Data communications protocol with efficient packing of datagrams
US6430188B1 (en) * 1998-07-08 2002-08-06 Broadcom Corporation Unified table for L2, L3, L4, switching and filtering
EP1097550A4 (en) * 1998-07-16 2005-11-09 Francis Lambert METHOD FOR THE SAFE TRANSFER AND STORAGE OF DATA
US6389030B1 (en) * 1998-08-21 2002-05-14 Adc Telecommunications, Inc. Internet access over a ring network
US6570880B1 (en) * 1998-08-21 2003-05-27 Adc Telecommunications, Inc. Control data over a ring network
US6279097B1 (en) 1998-11-20 2001-08-21 Allied Telesyn International Corporation Method and apparatus for adaptive address lookup table generator for networking application
US6542508B1 (en) * 1998-12-17 2003-04-01 Watchguard Technologies, Inc. Policy engine using stream classifier and policy binding database to associate data packet with appropriate action processor for processing without involvement of a host processor
US7233977B2 (en) * 1998-12-18 2007-06-19 Emc Corporation Messaging mechanism employing mailboxes for inter processor communications
US6453357B1 (en) * 1999-01-07 2002-09-17 Cisco Technology, Inc. Method and system for processing fragments and their out-of-order delivery during address translation
US6650640B1 (en) * 1999-03-01 2003-11-18 Sun Microsystems, Inc. Method and apparatus for managing a network flow in a high performance network interface
US6366961B1 (en) * 1999-03-03 2002-04-02 Nokia Telecommunications, Oy Method and apparatus for providing mini packet switching in IP based cellular access networks
US7120117B1 (en) 2000-08-29 2006-10-10 Broadcom Corporation Starvation free flow control in a shared memory switching device
EP1161817B1 (en) * 1999-03-17 2006-10-25 Broadcom Corporation Network switch
US7643481B2 (en) * 1999-03-17 2010-01-05 Broadcom Corporation Network switch having a programmable counter
US6947415B1 (en) * 1999-04-15 2005-09-20 Nortel Networks Limited Method and apparatus for processing packets in a routing switch
IL130039A (en) 1999-05-19 2003-07-06 Eci Telecom Ltd Cell bus and method for using same
AU5586400A (en) * 1999-05-21 2000-12-12 Broadcom Corporation Stacked network switch configuration
US7031302B1 (en) 1999-05-21 2006-04-18 Broadcom Corporation High-speed stats gathering in a network switch
US6859454B1 (en) 1999-06-30 2005-02-22 Broadcom Corporation Network switch with high-speed serializing/deserializing hazard-free double data rate switching
US7315552B2 (en) * 1999-06-30 2008-01-01 Broadcom Corporation Frame forwarding in a switch fabric
US6621817B1 (en) 1999-07-06 2003-09-16 Texas Instruments Incorporated Transport packet parser
WO2001019040A1 (en) * 1999-09-03 2001-03-15 Broadcom Corporation Apparatus and method for enabling voice over ip support for a network switch
US6850529B1 (en) * 1999-10-06 2005-02-01 Cisco Technology, Inc. Layer 2 funnel in fan out network device
US6343079B1 (en) 1999-10-12 2002-01-29 Sprint Communications Company, L.P. Autonomous multi-services card
US6934250B1 (en) 1999-10-14 2005-08-23 Nokia, Inc. Method and apparatus for an output packet organizer
US6882642B1 (en) 1999-10-14 2005-04-19 Nokia, Inc. Method and apparatus for input rate regulation associated with a packet processing pipeline
US6757249B1 (en) 1999-10-14 2004-06-29 Nokia Inc. Method and apparatus for output rate regulation and control associated with a packet pipeline
US7131001B1 (en) 1999-10-29 2006-10-31 Broadcom Corporation Apparatus and method for secure filed upgradability with hard wired public key
US7143294B1 (en) * 1999-10-29 2006-11-28 Broadcom Corporation Apparatus and method for secure field upgradability with unpredictable ciphertext
US7539134B1 (en) * 1999-11-16 2009-05-26 Broadcom Corporation High speed flow control methodology
ATE252298T1 (de) * 1999-11-16 2003-11-15 Broadcom Corp Verfahren und netzwerkvermittlungsstelle mit datenserialisierung durch gefahrlose mehrstufige störungsfreie multiplexierung
AU1754801A (en) * 1999-11-18 2001-05-30 Broadcom Corporation Table lookup mechanism for address resolution in a packet network switch
US7117530B1 (en) 1999-12-07 2006-10-03 Watchguard Technologies, Inc. Tunnel designation system for virtual private networks
AU2066201A (en) * 1999-12-07 2001-06-18 Broadcom Corporation Mirroring in a stacked network switch configuration
US6625161B1 (en) 1999-12-14 2003-09-23 Fujitsu Limited Adaptive inverse multiplexing method and system
US6584518B1 (en) 2000-01-07 2003-06-24 International Business Machines Corporation Cycle saving technique for managing linked lists
US7970898B2 (en) * 2001-01-24 2011-06-28 Telecommunication Systems, Inc. System and method to publish information from servers to remote monitor devices
US7693981B2 (en) * 2001-01-24 2010-04-06 Telecommunication Systems, Inc. System and method to publish information from servers to remote monitor devices
US7689696B2 (en) * 2000-01-31 2010-03-30 Telecommunication Systems, Inc. System and method for re-directing requests from browsers for communications over non-IP based networks
US7418498B2 (en) * 2001-01-24 2008-08-26 Telecommunication Systems, Inc. System and method to publish information from servers to remote monitor devices
US6435164B1 (en) 2000-12-07 2002-08-20 Ford Global Technologies, Inc. Fuel weathering method for vehicle evaporative emission system
US8370435B1 (en) 2000-01-31 2013-02-05 Telecommunication Systems, Inc. System and method for servers to send alerts to connectionless devices
US8090856B1 (en) 2000-01-31 2012-01-03 Telecommunication Systems, Inc. Intelligent messaging network server interconnection
US7003571B1 (en) 2000-01-31 2006-02-21 Telecommunication Systems Corporation Of Maryland System and method for re-directing requests from browsers for communication over non-IP based networks
US7009973B2 (en) * 2000-02-28 2006-03-07 Broadcom Corporation Switch using a segmented ring
US6704794B1 (en) * 2000-03-03 2004-03-09 Nokia Intelligent Edge Routers Inc. Cell reassembly for packet based networks
US6678678B2 (en) 2000-03-09 2004-01-13 Braodcom Corporation Method and apparatus for high speed table search
US6714562B1 (en) * 2000-03-10 2004-03-30 International Business Machines Corporation Method and apparatus for segmenting network traffic variable length frames
US6965603B1 (en) 2000-03-20 2005-11-15 Cortina Systems, Inc. Circuits for combining ATM and packet data on an optical fiber
US6751214B1 (en) 2000-03-30 2004-06-15 Azanda Network Devices, Inc. Methods and apparatus for dynamically allocating bandwidth between ATM cells and packets
US6751224B1 (en) 2000-03-30 2004-06-15 Azanda Network Devices, Inc. Integrated ATM/packet segmentation-and-reassembly engine for handling both packet and ATM input data and for outputting both ATM and packet data
US6810039B1 (en) 2000-03-30 2004-10-26 Azanda Network Devices, Inc. Processor-based architecture for facilitating integrated data transfer between both atm and packet traffic with a packet bus or packet link, including bidirectional atm-to-packet functionally for atm traffic
US7103053B2 (en) * 2000-05-03 2006-09-05 Broadcom Corporation Gigabit switch on chip architecture
US6826561B2 (en) 2000-05-22 2004-11-30 Broadcom Corporation Method and apparatus for performing a binary search on an expanded tree
EP1162792B1 (en) * 2000-06-09 2012-08-15 Broadcom Corporation Gigabit switch with frame forwarding and address learning
EP1168725B1 (en) * 2000-06-19 2005-06-15 Broadcom Corporation Switch fabric with path redundancy
US7126947B2 (en) * 2000-06-23 2006-10-24 Broadcom Corporation Switch having external address resolution interface
US7111163B1 (en) 2000-07-10 2006-09-19 Alterwan, Inc. Wide area network using internet with quality of service
US6999455B2 (en) * 2000-07-25 2006-02-14 Broadcom Corporation Hardware assist for address learning
US6804193B1 (en) * 2000-07-28 2004-10-12 Marconi Intellectual Property (Ringfence) Inc. Protected Ethernet backplane communication
US6760782B1 (en) * 2000-08-04 2004-07-06 Schneider Automation Inc. Apparatus for controlling internetwork communications
US7227862B2 (en) * 2000-09-20 2007-06-05 Broadcom Corporation Network switch having port blocking capability
US7274705B2 (en) * 2000-10-03 2007-09-25 Broadcom Corporation Method and apparatus for reducing clock speed and power consumption
US7120155B2 (en) * 2000-10-03 2006-10-10 Broadcom Corporation Switch having virtual shared memory
US6988177B2 (en) * 2000-10-03 2006-01-17 Broadcom Corporation Switch memory management using a linked list structure
US6851000B2 (en) * 2000-10-03 2005-02-01 Broadcom Corporation Switch having flow control management
US7020166B2 (en) * 2000-10-03 2006-03-28 Broadcom Corporation Switch transferring data using data encapsulation and decapsulation
US7420977B2 (en) * 2000-10-03 2008-09-02 Broadcom Corporation Method and apparatus of inter-chip bus shared by message passing and memory access
US7743125B1 (en) * 2000-11-09 2010-06-22 General Electric Company Computer multiple communications port unit
US7035255B2 (en) * 2000-11-14 2006-04-25 Broadcom Corporation Linked network switch configuration
US7035286B2 (en) * 2000-11-14 2006-04-25 Broadcom Corporation Linked network switch configuration
US6850542B2 (en) 2000-11-14 2005-02-01 Broadcom Corporation Linked network switch configuration
US7424012B2 (en) * 2000-11-14 2008-09-09 Broadcom Corporation Linked network switch configuration
ATE296007T1 (de) * 2001-01-31 2005-06-15 Teldix Gmbh Modularer skalierbarer switch und verfahren zum verteilen schneller ethernet-datenrahmen
US7342942B1 (en) * 2001-02-07 2008-03-11 Cortina Systems, Inc. Multi-service segmentation and reassembly device that maintains only one reassembly context per active output port
CN1613041A (zh) * 2001-02-14 2005-05-04 克利尔斯皮德科技有限公司 时钟分配系统
US7327760B1 (en) * 2001-05-08 2008-02-05 Cortina Systems, Inc. Multi-service segmentation and reassembly device operable with either a cell-based or a packet-based switch fabric
JP3897994B2 (ja) * 2001-05-31 2007-03-28 富士通株式会社 スイッチ装置およびデータ転送システム
US7042842B2 (en) * 2001-06-13 2006-05-09 Computer Network Technology Corporation Fiber channel switch
US7072298B2 (en) 2001-06-13 2006-07-04 Computer Network Technology Corporation Method and apparatus for rendering a cell-based switch useful for frame based protocols
US7260104B2 (en) * 2001-12-19 2007-08-21 Computer Network Technology Corporation Deferred queuing in a buffered switch
US7218636B2 (en) * 2001-06-13 2007-05-15 Inrange Technology Corporation Method and apparatus for rendering a cell-based switch useful for frame based application protocols
US6952738B1 (en) * 2001-08-17 2005-10-04 Juniper Networks, Inc. Systems and methods for removing intrapacket gaps from streams of different bandwidths
US6779050B2 (en) * 2001-09-24 2004-08-17 Broadcom Corporation System and method for hardware based reassembly of a fragmented packet
US7355970B2 (en) * 2001-10-05 2008-04-08 Broadcom Corporation Method and apparatus for enabling access on a network switch
US8325716B2 (en) * 2001-10-22 2012-12-04 Broadcom Corporation Data path optimization algorithm
US7039010B2 (en) * 2002-03-06 2006-05-02 Broadcom Corporation Optimized data path structure for multi-channel management information base (MIB) event generation
US20030174718A1 (en) * 2002-03-15 2003-09-18 Broadcom Corporation Scalable packet filter for a network device
US7161948B2 (en) * 2002-03-15 2007-01-09 Broadcom Corporation High speed protocol for interconnecting modular network devices
US7194008B2 (en) * 2002-03-15 2007-03-20 Broadcom Corporation Method and apparatus for parsing data streams
US7372864B1 (en) 2002-08-01 2008-05-13 Applied Micro Circuits Corporation Reassembly of data fragments in fixed size buffers
US7697526B2 (en) * 2002-08-06 2010-04-13 Broadcom Corporation Packet filtering based on port bit map
US7653012B2 (en) * 2002-09-26 2010-01-26 Sharp Laboratories Of America, Inc. Relay transmission of data in a centralized network
US20040081089A1 (en) * 2002-09-26 2004-04-29 Sharp Laboratories Of America, Inc. Transmitting data on scheduled channels in a centralized network
DE602004025105D1 (de) * 2003-05-27 2010-03-04 Ibm System zur bestimmung eines alternativen weges in einer nachrichtenübermittlung-middleware umgebung
US8103800B2 (en) * 2003-06-26 2012-01-24 Broadcom Corporation Method and apparatus for multi-chip address resolution lookup synchronization in a network environment
US7626985B2 (en) * 2003-06-27 2009-12-01 Broadcom Corporation Datagram replication in internet protocol multicast switching in a network device
US7443869B2 (en) * 2003-08-04 2008-10-28 Intel Corporation Deadlock avoidance queuing mechanism
US7903555B2 (en) * 2003-12-17 2011-03-08 Intel Corporation Packet tracing
US7558890B1 (en) * 2003-12-19 2009-07-07 Applied Micro Circuits Corporation Instruction set for programmable queuing
US7757033B1 (en) 2004-02-13 2010-07-13 Habanero Holdings, Inc. Data exchanges among SMP physical partitions and I/O interfaces enterprise servers
US7633955B1 (en) 2004-02-13 2009-12-15 Habanero Holdings, Inc. SCSI transport for fabric-backplane enterprise servers
US7873693B1 (en) 2004-02-13 2011-01-18 Habanero Holdings, Inc. Multi-chassis fabric-backplane enterprise servers
US7685281B1 (en) 2004-02-13 2010-03-23 Habanero Holdings, Inc. Programmatic instantiation, provisioning and management of fabric-backplane enterprise servers
US7843907B1 (en) 2004-02-13 2010-11-30 Habanero Holdings, Inc. Storage gateway target for fabric-backplane enterprise servers
US8868790B2 (en) 2004-02-13 2014-10-21 Oracle International Corporation Processor-memory module performance acceleration in fabric-backplane enterprise servers
US8145785B1 (en) 2004-02-13 2012-03-27 Habanero Holdings, Inc. Unused resource recognition in real time for provisioning and management of fabric-backplane enterprise servers
US7843906B1 (en) 2004-02-13 2010-11-30 Habanero Holdings, Inc. Storage gateway initiator for fabric-backplane enterprise servers
US7953903B1 (en) 2004-02-13 2011-05-31 Habanero Holdings, Inc. Real time detection of changed resources for provisioning and management of fabric-backplane enterprise servers
US7623519B2 (en) * 2004-06-21 2009-11-24 Brocade Communication Systems, Inc. Rule based routing in a switch
US20050281282A1 (en) * 2004-06-21 2005-12-22 Gonzalez Henry J Internal messaging within a switch
US20060013135A1 (en) * 2004-06-21 2006-01-19 Schmidt Steven G Flow control in a switch
US8713295B2 (en) 2004-07-12 2014-04-29 Oracle International Corporation Fabric-backplane enterprise servers with pluggable I/O sub-system
US20060013258A1 (en) * 2004-07-13 2006-01-19 International Business Machines Corporation System, apparatus and method of improving network data traffic between interconnected high-speed switches
US7643583B1 (en) * 2004-08-06 2010-01-05 Marvell International Ltd. High-precision signal detection for high-speed receiver
US8098676B2 (en) * 2004-08-12 2012-01-17 Intel Corporation Techniques to utilize queues for network interface devices
CN100449504C (zh) * 2005-01-05 2009-01-07 华为技术有限公司 一种基于bitmap表的缓存管理方法
US8169891B2 (en) * 2005-03-31 2012-05-01 Agere Systems Inc. Apparatus and method for handling lost cells in a communications system
US7623539B2 (en) * 2005-03-31 2009-11-24 Agere Systems Inc. Apparatus and method for processing cells in an ATM adaptation layer device in a communications system that exhibits cell delay variation
US7969966B2 (en) * 2005-12-19 2011-06-28 Alcatel Lucent System and method for port mapping in a communications network switch
US7855953B2 (en) 2005-10-20 2010-12-21 Cisco Technology, Inc. Method and apparatus for managing forwarding of data in an autonomous system
US20070091794A1 (en) * 2005-10-20 2007-04-26 Clarence Filsfils Method of constructing a backup path in an autonomous system
US7852772B2 (en) * 2005-10-20 2010-12-14 Cisco Technology, Inc. Method of implementing a backup path in an autonomous system
US7864669B2 (en) * 2005-10-20 2011-01-04 Cisco Technology, Inc. Method of constructing a backup path in an autonomous system
EP1796319A1 (en) * 2005-12-08 2007-06-13 Alcatel Lucent Method to preserve the order of packets of a same flow and transmitted either through a control plane or through a data plane of a telecommunication network element
US8218440B2 (en) * 2006-01-26 2012-07-10 Broadcom Corporation High speed transmission protocol
US8451730B2 (en) * 2006-01-26 2013-05-28 Broadcom Corporation Apparatus and method for implementing multiple high speed switching fabrics in an ethernet ring topology
JP2007208437A (ja) * 2006-01-31 2007-08-16 Fujitsu Ltd セル化方法及び装置
US8644137B2 (en) * 2006-02-13 2014-02-04 Cisco Technology, Inc. Method and system for providing safe dynamic link redundancy in a data network
US7596147B2 (en) 2006-06-28 2009-09-29 Agere Systems Inc. Apparatus and method for fractional processing of cells in a communications system
AT504739B1 (de) * 2007-01-08 2013-09-15 Bernecker & Rainer Ind Elektronik Gmbh Anordnung und ein verfahren zur sicheren datenkommunikation über ein nicht sicheres netzwerk
JP2008267150A (ja) * 2007-04-16 2008-11-06 Sanden Corp 流体機械
US7685325B2 (en) * 2008-01-04 2010-03-23 International Business Machines Corporation Synchronous bus controller system
US8661173B2 (en) * 2008-03-31 2014-02-25 Intel Corporation USB data striping
US8892775B2 (en) * 2008-05-27 2014-11-18 International Business Machines Corporation Apparatus, system, and method for redundant device management
JP2011527146A (ja) * 2008-06-23 2011-10-20 ハート コミュニケーション ファウンデーション ワイヤレス通信ネットワークアナライザ
US9047417B2 (en) 2012-10-29 2015-06-02 Intel Corporation NUMA aware network interface
US10684973B2 (en) 2013-08-30 2020-06-16 Intel Corporation NUMA node peripheral switch
JP6666686B2 (ja) * 2015-08-18 2020-03-18 株式会社ポコアポコネットワークス メモリ機器
WO2017030054A1 (ja) * 2015-08-18 2017-02-23 株式会社ポコアポコネットワークス メモリ機器
WO2019025835A1 (en) * 2017-08-03 2019-02-07 Telefonaktiebolaget Lm Ericsson (Publ) CRC ERROR LOCATION DETECTION IN AUTOMATIC SWITCHING BY BYPASS AND STORAGE-TRANSFER
FR3079695B1 (fr) * 2018-04-03 2022-11-18 Silkan Rt Analyse et filtrage de donnees dans un systeme de transmission de donnees
RU2704716C1 (ru) * 2018-12-20 2019-10-30 Общество с ограниченной ответственностью "НТЦ ГРЭК" Способ передачи сообщений в режиме реального времени на борту космических аппаратов

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5140585A (en) * 1990-07-19 1992-08-18 Kabushiki Kaisha Toshiba Star local-area network system
US5274642A (en) * 1992-06-05 1993-12-28 Indra Widjaja Output buffered packet switch with a flexible buffer management scheme
US5317565A (en) * 1993-01-26 1994-05-31 International Business Machines Corporation Method of sequencing bus operations in a simplex switch
US5420858A (en) * 1993-05-05 1995-05-30 Synoptics Communications, Inc. Method and apparatus for communications from a non-ATM communication medium to an ATM communication medium
US5408469A (en) * 1993-07-22 1995-04-18 Synoptics Communications, Inc. Routing device utilizing an ATM switch as a multi-channel backplane in a communication network
US5428607A (en) * 1993-12-20 1995-06-27 At&T Corp. Intra-switch communications in narrow band ATM networks
US5526344A (en) * 1994-04-15 1996-06-11 Dsc Communications Corporation Multi-service switch for a telecommunications network
US5412646A (en) * 1994-05-13 1995-05-02 At&T Corp. Asynchronous transfer mode switch architecture
JPH07321815A (ja) * 1994-05-24 1995-12-08 Nec Corp 共有バッファ型atmスイッチおよびその同報制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008123272A1 (ja) 2007-03-28 2008-10-16 Kabushiki Kaisha Yaskawa Denki 通信装置、同期通信システムおよび同期通信方法
US8223804B2 (en) 2007-03-28 2012-07-17 Kabushiki Kaisha Yaskawa Denki Synchronized communication system

Similar Documents

Publication Publication Date Title
JP2000503828A (ja) データネットワーク上でデータパケットをスイッチングする方法および装置
JP3412825B2 (ja) データネットワーク上でデータパケットをスイッチングする方法および装置
US4991172A (en) Design of a high speed packet switching node
US5465331A (en) Apparatus having three separated and decentralized processors for concurrently and independently processing packets in a communication network
US7296093B1 (en) Network processor interface system
US7042891B2 (en) Dynamic selection of lowest latency path in a network switch
CA2310909C (en) Packet switching apparatus and method in data network
EP0804005B1 (en) A network switch
US8798091B2 (en) Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
JP3168235B2 (ja) 高速パケット交換装置およびデータパケットの経路指定方法
US20030026267A1 (en) Virtual channels in a network switch
US20020118692A1 (en) Ensuring proper packet ordering in a cut-through and early-forwarding network switch
JPH07321822A (ja) マルチキャスティング機能を備えた装置
JP2002533994A (ja) データ交換方法およびその装置
JPH08505991A (ja) アクセス制御atmスイッチ
JP2002514367A (ja) 管理情報ベース(mib)インターフェイス一次ストレージを有する統合マルチポートスイッチ
WO2002049287A1 (en) Apparatus and methods for managing packets in a broadband data stream
US5051985A (en) Contention resolution in a communications ring
JP2009253422A (ja) セル分散型スイッチファブリック
US6463485B1 (en) System for providing cell bus management in a switch platform including a write port cell count in each of a plurality of unidirectional FIFO for indicating which FIFO be able to accept more cell
US6771654B1 (en) Apparatus and method for sharing memory using a single ring data bus connection configuration
US6512769B1 (en) Method and apparatus for rate-based cell traffic arbitration in a switch
US7218638B2 (en) Switch operation scheduling mechanism with concurrent connection and queue scheduling
US20060056424A1 (en) Packet transmission using output buffer
US7313146B2 (en) Transparent data format within host device supporting differing transaction types