JP2003536323A - スイッチシステム - Google Patents
スイッチシステムInfo
- Publication number
- JP2003536323A JP2003536323A JP2002502991A JP2002502991A JP2003536323A JP 2003536323 A JP2003536323 A JP 2003536323A JP 2002502991 A JP2002502991 A JP 2002502991A JP 2002502991 A JP2002502991 A JP 2002502991A JP 2003536323 A JP2003536323 A JP 2003536323A
- Authority
- JP
- Japan
- Prior art keywords
- router
- cell
- ingress
- queue
- cells
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
- H04L49/254—Centralised controller, i.e. arbitration or scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/42—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
- H04Q3/54—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
- H04Q3/545—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
- H04Q3/54541—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
- H04Q3/5455—Multi-processor, parallelism, distributed systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/101—Packet switching elements characterised by the switching fabric construction using crossbar or matrix
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3027—Output queuing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3045—Virtual queuing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1302—Relay switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1304—Coordinate switches, crossbar, 4/2 with relays, coupling field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/131—Register
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13103—Memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13106—Microprocessor, CPU
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13196—Connection circuit/link/trunk/junction, bridge, router, gateway
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
(57)【要約】
コントローラによって制御されるスイッチングマトリックスによって相互接続される入口ルータと出口ルータとを有するデータスイッチングデバイスである。各入口ルータは、各出口ルータに対する1つまたは複数の仮想出力キューを維持している。スイッチングマトリックス自体が、送信すべきセルのキューヘッドバッファを維持している。これらのキューの各々は、複数の仮想出力キューの1つに対応しており、スイッチングマトリックスに記憶されているセルは、それぞれの仮想出力キュー中で待機しているセルからの複製である。したがって、スイッチングマトリックスの所与の入力と出力の間の接続をなすべきことが決定されと、スイッチングマトリックスは、その接続に沿った伝送に適したセルをすでに利用することができる。複数の入口ルータのうちの1つが新しいセルを受信すると、そのセルは、そのセルに対する出口ルータに対応する入口ルータの複数の仮想出力キューの1つに記憶され、また、バッファにスペースがある場合、対応するキューヘッドバッファに書き込まれる。バッファにスペースがない場合は、セルは記憶され、バッファがそのためのスペースを有した時点で、キューヘッドバッファに書き込まれる。
Description
【0001】
(発明の分野)
本発明は、データを交換するためのデバイスおよび装置に関する。本発明の用
途例の1つは、複数のプロセッサがメモリを共有するシステム内における広帯域
幅相互接続を提供することである。
途例の1つは、複数のプロセッサがメモリを共有するシステム内における広帯域
幅相互接続を提供することである。
【0002】
(発明の背景)
常に拡大している、処理集約型コンピュータアプリケーションに対する要求は
、これまで以上の処理能力を有するシステムを製造するべく、市場を駆り立てて
いるが、残念ながらプロセッサ技術の進歩は、印象的ではあるがこの要求のすべ
てを満足するには不十分である。
、これまで以上の処理能力を有するシステムを製造するべく、市場を駆り立てて
いるが、残念ながらプロセッサ技術の進歩は、印象的ではあるがこの要求のすべ
てを満足するには不十分である。
【0003】
処理能力が向上したシステムを創造するための、実現性のある代替方法の1つ
は、密接して結合した複数の処理ノードをタンデムに操作することである。ノー
ドの各々は、独自のローカルメモリ空間で動作するが、密接結合されているため
、ある程度メモリを共有しなければならない。この共有メモリを、単一中央コピ
ーとして組み込むことができ、あるいは(より典型的には)ノードのローカルメ
モリ中に複製し、かつ、分散させることができるが、いずれにせよそのためには
、前者の場合、中央メモリとアクセスするため、また、後者の場合、分散コピー
を繋がった状態に確実に維持するために、広帯域幅ノード間通信システムが必要
である。
は、密接して結合した複数の処理ノードをタンデムに操作することである。ノー
ドの各々は、独自のローカルメモリ空間で動作するが、密接結合されているため
、ある程度メモリを共有しなければならない。この共有メモリを、単一中央コピ
ーとして組み込むことができ、あるいは(より典型的には)ノードのローカルメ
モリ中に複製し、かつ、分散させることができるが、いずれにせよそのためには
、前者の場合、中央メモリとアクセスするため、また、後者の場合、分散コピー
を繋がった状態に確実に維持するために、広帯域幅ノード間通信システムが必要
である。
【0004】
この通信システムを介してトラフィックを生成するノードは、継続して処理を
実行することができるようになるまでに、その要求に対して、頻繁に応答しなけ
ればならない。したがって、ノードは、処理を中断するかあるいは(可能であれ
ば)このようにストールされることのない他のタスクと交換しなければならない
が、いずれのオプションも総合的な性能を犠牲にすることになる。したがって、
ノード間通信システムにおける待ち時間が短いことが、このような損失を最小化
するための主要な要求事項である。
実行することができるようになるまでに、その要求に対して、頻繁に応答しなけ
ればならない。したがって、ノードは、処理を中断するかあるいは(可能であれ
ば)このようにストールされることのない他のタスクと交換しなければならない
が、いずれのオプションも総合的な性能を犠牲にすることになる。したがって、
ノード間通信システムにおける待ち時間が短いことが、このような損失を最小化
するための主要な要求事項である。
【0005】
データ通信システムでは、セル損失はプロトコルスタック中のより高い層によ
って処理されるため、許容される。対照的に、プロセッサ相互接続システムにお
けるセル損失は、ストール要求処理のため、さらには短いシステム待ち時間を維
持するために、このようなシステムは典型的には最小限のプロトコル層で動作し
ているため、一般的には許容されない。したがって、物理層は、高信頼転送プロ
トコルをハードウェアで実現しなければならない。
って処理されるため、許容される。対照的に、プロセッサ相互接続システムにお
けるセル損失は、ストール要求処理のため、さらには短いシステム待ち時間を維
持するために、このようなシステムは典型的には最小限のプロトコル層で動作し
ているため、一般的には許容されない。したがって、物理層は、高信頼転送プロ
トコルをハードウェアで実現しなければならない。
【0006】
本明細書にその開示の全体が組み込まれるWO 00/38375に、帯域幅
が広く、システムの拡張が容易であり、待ち時間が短く、物理容積が小さく、か
つ、低コストという固有の属性を有するデータ交換装置が提案されている。この
技術については、本出願の優先日付で、ごく限られた詳細のみが公表されている
。図1は、その技術を示したものである。
が広く、システムの拡張が容易であり、待ち時間が短く、物理容積が小さく、か
つ、低コストという固有の属性を有するデータ交換装置が提案されている。この
技術については、本出願の優先日付で、ごく限られた詳細のみが公表されている
。図1は、その技術を示したものである。
【0007】
スイッチシステムには、双方向性であるn+1個のルータが使用されている。
各ルータの情報伝送アスペクトは、「入口ルータ」ITM0、ITM1、..IT
Mnで表されている。ルータの情報受信アスペクトは、n+1個の「出口ルータ
」ETM0、ETM1、..ETMnで表されている。各ルータは、1つまたは複
数のデータ送信装置(例えば、1組のプロセッサが構成する「ノード」)から情
報を受信しており、例えば入口ルータITM0は、m+1個のデータ送信装置I
LE00、..、ILE0mから情報を受信している。同様に、各出口ルータは、1
つまたは複数のデータ受信装置へ情報を送信しており、例えば出口ルータETM0 は、データ送信装置ELE00、..ELE0mへ情報を送信している。マスタデ
バイスSCおよび1つまたは複数のマトリックスデバイスSWは、中央相互接続
構造(CIF)を構成している。マトリックスSWを介して伝送するためのセル
は、長さが等しく、かつ、それぞれ優先順位が関連付けられている。各入口ルー
タは、各出口ルータおよび各優先順位に対して、マトリックスデバイスSWがそ
の入口ルータをその出口ルータに接続した場合に、その出口ルータへ伝送するた
めのその優先順位のセルのそれぞれの「仮想出力キュー」を維持している。各入
口ルータは、マスタデバイスSCに接続要求を送信している。マスタデバイスS
Cは、第1のアービトレーションプロセスによって接続すべき入口および出口ル
ータを決定している。接続される出口ルータが知らされている各入口ルータは、
その出口ルータに送信するセルの優先順位を決定するために第2のアービトレー
ションを実行し、優先順位を決定すると、マスタから直接送信される接続情報と
同時に着信させるべく、シリアルリンクを介して、その優先順位およびその出口
ルータに対する仮想出力キューのヘッドをマトリックスSWに送信する。実際に
は、マスタから直接送信される接続情報は、仮想出力キューのヘッドよりはるか
に速いため、ルータを介した経路の待ち時間に整合させるために、人工的に遅延
させなければならない。総括すると、上記システムは、無メモリ構造を使用して
いるため、ルータ内におけるバッファリングのあらゆる輻輳をもたらしている。
各ルータの情報伝送アスペクトは、「入口ルータ」ITM0、ITM1、..IT
Mnで表されている。ルータの情報受信アスペクトは、n+1個の「出口ルータ
」ETM0、ETM1、..ETMnで表されている。各ルータは、1つまたは複
数のデータ送信装置(例えば、1組のプロセッサが構成する「ノード」)から情
報を受信しており、例えば入口ルータITM0は、m+1個のデータ送信装置I
LE00、..、ILE0mから情報を受信している。同様に、各出口ルータは、1
つまたは複数のデータ受信装置へ情報を送信しており、例えば出口ルータETM0 は、データ送信装置ELE00、..ELE0mへ情報を送信している。マスタデ
バイスSCおよび1つまたは複数のマトリックスデバイスSWは、中央相互接続
構造(CIF)を構成している。マトリックスSWを介して伝送するためのセル
は、長さが等しく、かつ、それぞれ優先順位が関連付けられている。各入口ルー
タは、各出口ルータおよび各優先順位に対して、マトリックスデバイスSWがそ
の入口ルータをその出口ルータに接続した場合に、その出口ルータへ伝送するた
めのその優先順位のセルのそれぞれの「仮想出力キュー」を維持している。各入
口ルータは、マスタデバイスSCに接続要求を送信している。マスタデバイスS
Cは、第1のアービトレーションプロセスによって接続すべき入口および出口ル
ータを決定している。接続される出口ルータが知らされている各入口ルータは、
その出口ルータに送信するセルの優先順位を決定するために第2のアービトレー
ションを実行し、優先順位を決定すると、マスタから直接送信される接続情報と
同時に着信させるべく、シリアルリンクを介して、その優先順位およびその出口
ルータに対する仮想出力キューのヘッドをマトリックスSWに送信する。実際に
は、マスタから直接送信される接続情報は、仮想出力キューのヘッドよりはるか
に速いため、ルータを介した経路の待ち時間に整合させるために、人工的に遅延
させなければならない。総括すると、上記システムは、無メモリ構造を使用して
いるため、ルータ内におけるバッファリングのあらゆる輻輳をもたらしている。
【0008】
WO94/17617に、特許請求の範囲の請求項1のプリアンブルによるス
イッチが開示されている。スイッチングマトリックスは、単一スイッチングサイ
クルの間に形成することができるスイッチングマトリックスを通る経路毎に1つ
のセルを唯一記憶することができるバッファを備えている。スイッチを介して送
信すべきセルが決定されると、これらのセルは、入口ルータを出て、スイッチン
グマトリックスを介して送信される。この通過には、これらのセルがセルを通過
し、セルが入口ルータにもはや記憶されなくなる際の、バッファ中へのセルの一
時的な記憶が含まれている。
イッチが開示されている。スイッチングマトリックスは、単一スイッチングサイ
クルの間に形成することができるスイッチングマトリックスを通る経路毎に1つ
のセルを唯一記憶することができるバッファを備えている。スイッチを介して送
信すべきセルが決定されると、これらのセルは、入口ルータを出て、スイッチン
グマトリックスを介して送信される。この通過には、これらのセルがセルを通過
し、セルが入口ルータにもはや記憶されなくなる際の、バッファ中へのセルの一
時的な記憶が含まれている。
【0009】
(本発明の概要)
本発明の目的は、新規かつ有用なデータスイッチングデバイスおよび方法を提
供することである。
供することである。
【0010】
一般的には、本発明は、スイッチングマトリックス自体が、送信すべきセルの
(例えば、ショート)キューヘッドバッファを維持することを提案している。こ
れらのキューの各々は、入口ルータによって記憶されている複数の仮想出力キュ
ーの1つに対応しており、実際にスイッチングマトリックスに記憶されているセ
ルは、それぞれの仮想出力キュー中で待機している第1のセルからの複製である
。したがって、スイッチングマトリックスの所与の入力と出力の間の接続をなす
べきことが決定されると、スイッチングマトリックスは、その接続に沿った伝送
に適したセルをいつでも利用することができ、入口ルータからセルを入手する必
要はない。複数の入口ルータのうちの1つが新しいセルを受信すると、そのセル
は、そのセルに対する出口ルータに対応する入口ルータの複数の仮想出力キュー
の1つに記憶される。仮想出力キューおよびキューバッファのヘッドの各々は、
先入れ先出し(FIFO)キューであり、キューヘッドバッファは、仮想出力バ
ッファの最初のいくつかのエントリを複製することができる。エントリの複製は
、例えば、入口ルータが新しいセルを受信し、受信したセルを仮想出力キュー中
に書き込み、また、対応するキューヘッドバッファにスペースがある場合、受信
したセルをそのキューヘッドバッファに書き込む際に、入口ルータによって達成
することができる。対応するキューヘッドバッファにそのためのスペースがない
場合は、バッファがそのためのスペースを有した時点で入口ルータが受信した新
しいセルを記憶し、キューヘッドバッファに書き込むことができる。バッファに
スペースがあるか否かの問合せには、バッファ内の自由セルの数を表すクレジッ
トカウント変数の調査をそれぞれのバッファに対して実行することによって回答
される。
(例えば、ショート)キューヘッドバッファを維持することを提案している。こ
れらのキューの各々は、入口ルータによって記憶されている複数の仮想出力キュ
ーの1つに対応しており、実際にスイッチングマトリックスに記憶されているセ
ルは、それぞれの仮想出力キュー中で待機している第1のセルからの複製である
。したがって、スイッチングマトリックスの所与の入力と出力の間の接続をなす
べきことが決定されると、スイッチングマトリックスは、その接続に沿った伝送
に適したセルをいつでも利用することができ、入口ルータからセルを入手する必
要はない。複数の入口ルータのうちの1つが新しいセルを受信すると、そのセル
は、そのセルに対する出口ルータに対応する入口ルータの複数の仮想出力キュー
の1つに記憶される。仮想出力キューおよびキューバッファのヘッドの各々は、
先入れ先出し(FIFO)キューであり、キューヘッドバッファは、仮想出力バ
ッファの最初のいくつかのエントリを複製することができる。エントリの複製は
、例えば、入口ルータが新しいセルを受信し、受信したセルを仮想出力キュー中
に書き込み、また、対応するキューヘッドバッファにスペースがある場合、受信
したセルをそのキューヘッドバッファに書き込む際に、入口ルータによって達成
することができる。対応するキューヘッドバッファにそのためのスペースがない
場合は、バッファがそのためのスペースを有した時点で入口ルータが受信した新
しいセルを記憶し、キューヘッドバッファに書き込むことができる。バッファに
スペースがあるか否かの問合せには、バッファ内の自由セルの数を表すクレジッ
トカウント変数の調査をそれぞれのバッファに対して実行することによって回答
される。
【0011】
したがって、仮想出力キューは、対応するキューヘッドバッファへの複製を待
機しているセルを含んだ第1の領域と、キューヘッドバッファに複製されたセル
を含む第2の領域の2つの領域に分離されている。
機しているセルを含んだ第1の領域と、キューヘッドバッファに複製されたセル
を含む第2の領域の2つの領域に分離されている。
【0012】
クレジットカウントが対応するキューヘッドバッファの自由セルの数を正しく
表していることを保証するための適切な方法の1つは、新しいセルが仮想出力キ
ュー中に書き込まれ、かつ、対応するキューヘッドバッファのクレジットカウン
トがゼロでない場合、セルの複製がそのキューヘッドバッファに送信されるよう
、クレジットカウントを1カウントだけ減らすことである。入口ルータのセルを
スイッチングマトリックスを介して交換するべくコントローラによって接続され
ると、接続許可信号がその入口ルータに送信され、クレジットカウントが1カウ
ントだけインクリメントされる。所与の仮想出力キューの第1の領域に少なくと
も1つのセルが存在し、かつ、対応するキューヘッドバッファの自由セルの数が
ゼロでないことが決定されると、第1の領域の少なくとも1つのセルの複製が、
そのキューヘッドバッファに送信される。
表していることを保証するための適切な方法の1つは、新しいセルが仮想出力キ
ュー中に書き込まれ、かつ、対応するキューヘッドバッファのクレジットカウン
トがゼロでない場合、セルの複製がそのキューヘッドバッファに送信されるよう
、クレジットカウントを1カウントだけ減らすことである。入口ルータのセルを
スイッチングマトリックスを介して交換するべくコントローラによって接続され
ると、接続許可信号がその入口ルータに送信され、クレジットカウントが1カウ
ントだけインクリメントされる。所与の仮想出力キューの第1の領域に少なくと
も1つのセルが存在し、かつ、対応するキューヘッドバッファの自由セルの数が
ゼロでないことが決定されると、第1の領域の少なくとも1つのセルの複製が、
そのキューヘッドバッファに送信される。
【0013】
適当な時期に、例えば、入口ルータが、キューヘッドバッファによる対応する
仮想出力キューのフロントの複製を満足されると、入口ルータは、接続要求をコ
ントローラに送信することができる。
仮想出力キューのフロントの複製を満足されると、入口ルータは、接続要求をコ
ントローラに送信することができる。
【0014】
コントローラは、複数の接続要求を受信すると、応えるべき接続要求を決定す
る。コントローラは先ず第一に、受信した要求の中から(例えば、複数のキュー
ヘッドバッファの1つのフロント部のセルに関連する要求の中から)、受信した
複数の他のすべての要求に対する応答を不可能にすることなく任意の所与の1つ
に応えることができるかどうかを決定することができる。その場合、コントロー
ラは、その所与の要求に応えることになり、その要求の対象であるセルが送信さ
れる。そうでない場合(すなわち、少なくとも2つの要求が競合する場合)、コ
ントローラは、例えば知られている技法に従って、応えるべき要求を決定するた
めのアービトレーションを実行することができる。
る。コントローラは先ず第一に、受信した要求の中から(例えば、複数のキュー
ヘッドバッファの1つのフロント部のセルに関連する要求の中から)、受信した
複数の他のすべての要求に対する応答を不可能にすることなく任意の所与の1つ
に応えることができるかどうかを決定することができる。その場合、コントロー
ラは、その所与の要求に応えることになり、その要求の対象であるセルが送信さ
れる。そうでない場合(すなわち、少なくとも2つの要求が競合する場合)、コ
ントローラは、例えば知られている技法に従って、応えるべき要求を決定するた
めのアービトレーションを実行することができる。
【0015】
上で言及したように、入口ルータおよび出口ルータの各対に対して、複数の仮
想出力キューが存在している。例えば、セルは、優先順位などの「タイプ」が異
なり、各タイプに対する仮想出力キューが異なる(したがって回線キューのヘッ
ドが異なる)セルであっても良い。この場合、コントローラは、入力ポートと出
力ポートの間を送信すべきセルの優先順位を、接続することになる入力ポートと
出力ポートの複数の対と結び付けて決定し、かつ、その情報をスイッチングマト
リックスに送信することができ、それにより、その優先順位を有し、かつ、対応
する入力および出力ポートの対を有するキューからセルが送信される。送信する
ための優先順位の決定は、知られている技法によるアービトレーション(例えば
、所定のルール)によって実行することができる。
想出力キューが存在している。例えば、セルは、優先順位などの「タイプ」が異
なり、各タイプに対する仮想出力キューが異なる(したがって回線キューのヘッ
ドが異なる)セルであっても良い。この場合、コントローラは、入力ポートと出
力ポートの間を送信すべきセルの優先順位を、接続することになる入力ポートと
出力ポートの複数の対と結び付けて決定し、かつ、その情報をスイッチングマト
リックスに送信することができ、それにより、その優先順位を有し、かつ、対応
する入力および出力ポートの対を有するキューからセルが送信される。送信する
ための優先順位の決定は、知られている技法によるアービトレーション(例えば
、所定のルール)によって実行することができる。
【0016】
詳細には、本発明の第1の態様によれば、複数の入口ルータ、複数の出口ルー
タ、スイッチングマトリックス、および接続コントローラを有し、 スイッチングマトリックスが、それぞれの前記入口ルータに接続された入力ポ
ート、およびそれぞれの前記出口ルータに接続された出力ポートを有し、コント
ローラによる制御により、入力ポートと出力ポートの複数の対の間の接続を形成
し、 各入口ルータが、スイッチングマトリックス接続に使用すべき出口ルータを形
成したヘッダを有する固定長セルを記憶するようになされた、1つまたは複数の
仮想出力キューを各出口ルータに対して備え、 各入口ルータが、入口ルータが新しいセルを受信すると、受信したセルを受信
したセルに対する出口ルータに対応する入口ルータの前記仮想出力キュー中に格
納するようになされたデータスイッチングデバイスであって、 スイッチングマトリックスの各入力ポートが、その入力ポートに接続された入
口ルータ内の各仮想出力キューに対して、それぞれのキューヘッドバッファを備
え、 スイッチングマトリックスが、スイッチングマトリックスが所与の入力ポート
と出力ポートの間の接続を形成すると、複数のキューヘッドバッファのうちの対
応する1つから、その出力ポートへセルを送信するようになされ、 各出口ルータが、出口ルータが複数の入口ルータの1つの複数の仮想出力キュ
ーの1つから、エラーを生じることなくセルを受信すると、その入口ルータに受
取り信号を送信するようになされ、 各入口ルータが、前記仮想出力キュー中にセルが記憶され、かつ、対応するキ
ューヘッドバッファの自由セルの数を表すクレジットカウントがゼロでない場合
、そのキューヘッドバッファにセルの複製を送信し、かつ、接続要求をコントロ
ーラに送信するようになされ、 各入口ルータが、さらに、対応する受信信号を受信するまで、各受信セルを対
応する仮想出力キュー中に保存するようになされることを特徴とするデータスイ
ッチングデバイスが提供される。
タ、スイッチングマトリックス、および接続コントローラを有し、 スイッチングマトリックスが、それぞれの前記入口ルータに接続された入力ポ
ート、およびそれぞれの前記出口ルータに接続された出力ポートを有し、コント
ローラによる制御により、入力ポートと出力ポートの複数の対の間の接続を形成
し、 各入口ルータが、スイッチングマトリックス接続に使用すべき出口ルータを形
成したヘッダを有する固定長セルを記憶するようになされた、1つまたは複数の
仮想出力キューを各出口ルータに対して備え、 各入口ルータが、入口ルータが新しいセルを受信すると、受信したセルを受信
したセルに対する出口ルータに対応する入口ルータの前記仮想出力キュー中に格
納するようになされたデータスイッチングデバイスであって、 スイッチングマトリックスの各入力ポートが、その入力ポートに接続された入
口ルータ内の各仮想出力キューに対して、それぞれのキューヘッドバッファを備
え、 スイッチングマトリックスが、スイッチングマトリックスが所与の入力ポート
と出力ポートの間の接続を形成すると、複数のキューヘッドバッファのうちの対
応する1つから、その出力ポートへセルを送信するようになされ、 各出口ルータが、出口ルータが複数の入口ルータの1つの複数の仮想出力キュ
ーの1つから、エラーを生じることなくセルを受信すると、その入口ルータに受
取り信号を送信するようになされ、 各入口ルータが、前記仮想出力キュー中にセルが記憶され、かつ、対応するキ
ューヘッドバッファの自由セルの数を表すクレジットカウントがゼロでない場合
、そのキューヘッドバッファにセルの複製を送信し、かつ、接続要求をコントロ
ーラに送信するようになされ、 各入口ルータが、さらに、対応する受信信号を受信するまで、各受信セルを対
応する仮想出力キュー中に保存するようになされることを特徴とするデータスイ
ッチングデバイスが提供される。
【0017】
第2の態様によれば、本発明により、複数の入口ルータ、複数の出口ルータ、
スイッチングマトリックス、および接続コントローラを有し、 スイッチングマトリックスが、それぞれの前記入口ルータに接続された入力ポ
ート、およびそれぞれの前記出口ルータに接続された出力ポートを有し、コント
ローラによる制御により、入力ポートと出力ポートの複数の対の間の接続を形成
するデータスイッチングデバイスを操作する方法であって、 各出口ルータに対する1つまたは複数の仮想出力キューを各入口ルータに維持
するステップであって、各仮想出力キューが、スイッチングマトリックス接続に
使用すべき出口ルータを形成したヘッダを有する固定長セルを記憶するようにな
され、かつ、各入口ルータが、新しいセルを受信すると、受信したセルを受信し
たセルに対する出口ルータに対応する入口ルータの前記仮想出力キュー中に格納
するようになされたステップを含み、 前記方法が、さらに、 各入力ポートに接続された入口ルータ内の各仮想出力キューに対するスイッチ
ングマトリックスの各入力ポートに、それぞれのキューヘッドバッファを維持す
るステップと、 スイッチングマトリックスが、所与の入力ポートと出力ポートの間の接続を形
成すると、スイッチングマトリックスがその入力ポートからその出力ポートへ、
1つまたは複数の対応するキューヘッドバッファの1つからセルを送信するステ
ップと、 出口ルータが、複数の入口ルータの1つの複数の仮想出力キューの1つから、
エラーを生じることなくセルを受信すると、その出口ルータがその入口ルータに
受取り信号を送信するステップと、 複数の入口ルータの1つが新しいセルを受信し、かつ、対応するキューヘッド
バッファの自由セルの数を表すクレジットカウントがゼロでない場合、入口ルー
タがそのキューヘッドバッファにセルの複製を送信し、かつ、接続要求をコント
ローラに送信するステップと、 各入口ルータが、対応する受信信号を受信するまで、各受信セルを対応する仮
想出力キュー中に保存するステップとを含むことを特徴とする、データスイッチ
ングデバイスを操作する方法が提供される。
スイッチングマトリックス、および接続コントローラを有し、 スイッチングマトリックスが、それぞれの前記入口ルータに接続された入力ポ
ート、およびそれぞれの前記出口ルータに接続された出力ポートを有し、コント
ローラによる制御により、入力ポートと出力ポートの複数の対の間の接続を形成
するデータスイッチングデバイスを操作する方法であって、 各出口ルータに対する1つまたは複数の仮想出力キューを各入口ルータに維持
するステップであって、各仮想出力キューが、スイッチングマトリックス接続に
使用すべき出口ルータを形成したヘッダを有する固定長セルを記憶するようにな
され、かつ、各入口ルータが、新しいセルを受信すると、受信したセルを受信し
たセルに対する出口ルータに対応する入口ルータの前記仮想出力キュー中に格納
するようになされたステップを含み、 前記方法が、さらに、 各入力ポートに接続された入口ルータ内の各仮想出力キューに対するスイッチ
ングマトリックスの各入力ポートに、それぞれのキューヘッドバッファを維持す
るステップと、 スイッチングマトリックスが、所与の入力ポートと出力ポートの間の接続を形
成すると、スイッチングマトリックスがその入力ポートからその出力ポートへ、
1つまたは複数の対応するキューヘッドバッファの1つからセルを送信するステ
ップと、 出口ルータが、複数の入口ルータの1つの複数の仮想出力キューの1つから、
エラーを生じることなくセルを受信すると、その出口ルータがその入口ルータに
受取り信号を送信するステップと、 複数の入口ルータの1つが新しいセルを受信し、かつ、対応するキューヘッド
バッファの自由セルの数を表すクレジットカウントがゼロでない場合、入口ルー
タがそのキューヘッドバッファにセルの複製を送信し、かつ、接続要求をコント
ローラに送信するステップと、 各入口ルータが、対応する受信信号を受信するまで、各受信セルを対応する仮
想出力キュー中に保存するステップとを含むことを特徴とする、データスイッチ
ングデバイスを操作する方法が提供される。
【0018】
次に、単なる説明目的に過ぎないが、図を参照して、本発明の一実施例につい
て説明する。
て説明する。
【0019】
(実施形態の詳細な説明)
本明細書において説明する本発明の実施形態は、図1を参照して上で説明した
システムを発展させたもので、さらに待ち時間が短縮され、かつ、耐故障性が改
善されている。図2は、その実施形態を示したもので、多数(最大16)の多重
プロセッサノード1、3、..31を有するシステムが示されている。各ノード
は、ルータデバイス33を備えている。ルータデバイスは、各処理ノードと中央
相互接続構造57の間のインタフェース(情報の受信および送信)を提供してい
る。
システムを発展させたもので、さらに待ち時間が短縮され、かつ、耐故障性が改
善されている。図2は、その実施形態を示したもので、多数(最大16)の多重
プロセッサノード1、3、..31を有するシステムが示されている。各ノード
は、ルータデバイス33を備えている。ルータデバイスは、各処理ノードと中央
相互接続構造57の間のインタフェース(情報の受信および送信)を提供してい
る。
【0020】
構造57は、電力およびクロック領域が分離した2つの独立チャネルとして構
成されている。各チャネルは、1つのマスタと複数のマトリックスデバイスから
なっており、マトリックスデバイスの数が、構造の総合帯域幅を決定している。
多重プロセッサシステムの各ノードのルータは、ケーブルを介して動作する高速
シリアルリンクのアレイを介して構造中に接続されている。図1に関連して上で
説明した、知られているシステムの場合と同様、この実施形態も、相互接続と処
理ノードの間のインタフェースを提供するルータデバイス、構造内におけるスケ
ジューリングおよびアービトレーション機能を提供するマスタデバイス(コント
ローラ)、およびクロスバー機能を提供する1つまたは複数のマトリックスデバ
イスの3種類のデバイスを備えている。複数のチャネルのうちの1つのチャネル
に沿ったノードの送信および受信は、上で説明した、図1に示す構造に準拠して
いる。つまり、ルータは、データの入出力機能を入口および出口ルータと見なす
ことができる双方向ルータであり、マスタ(コントローラ)および巡回スイッチ
ングマトリックスを使用して通信(1つのチャネルを介して)している。
成されている。各チャネルは、1つのマスタと複数のマトリックスデバイスから
なっており、マトリックスデバイスの数が、構造の総合帯域幅を決定している。
多重プロセッサシステムの各ノードのルータは、ケーブルを介して動作する高速
シリアルリンクのアレイを介して構造中に接続されている。図1に関連して上で
説明した、知られているシステムの場合と同様、この実施形態も、相互接続と処
理ノードの間のインタフェースを提供するルータデバイス、構造内におけるスケ
ジューリングおよびアービトレーション機能を提供するマスタデバイス(コント
ローラ)、およびクロスバー機能を提供する1つまたは複数のマトリックスデバ
イスの3種類のデバイスを備えている。複数のチャネルのうちの1つのチャネル
に沿ったノードの送信および受信は、上で説明した、図1に示す構造に準拠して
いる。つまり、ルータは、データの入出力機能を入口および出口ルータと見なす
ことができる双方向ルータであり、マスタ(コントローラ)および巡回スイッチ
ングマトリックスを使用して通信(1つのチャネルを介して)している。
【0021】
故障のない正規の状態では、メッセージは、この実施形態を介したトラフィッ
クのバランスを取るため、2チャネルのうちのいずれかを介して経路指定されて
いる。一方のチャネルが故障すると、もう一方のチャネルが、縮小した総合帯域
幅ですべてのトラフィックを搬送することができる。ノード間肯定応答/否定応
答プロトコルのサポートにより、信頼性の高いポート間メッセージ転送が保証さ
れ、それにより、相互接続を介して転送されるすべてのメッセージが原始ノード
にレポートバックされ、破損したすべてのメッセージが、自動的に再送信される
。
クのバランスを取るため、2チャネルのうちのいずれかを介して経路指定されて
いる。一方のチャネルが故障すると、もう一方のチャネルが、縮小した総合帯域
幅ですべてのトラフィックを搬送することができる。ノード間肯定応答/否定応
答プロトコルのサポートにより、信頼性の高いポート間メッセージ転送が保証さ
れ、それにより、相互接続を介して転送されるすべてのメッセージが原始ノード
にレポートバックされ、破損したすべてのメッセージが、自動的に再送信される
。
【0022】
この実施形態には、上で説明したGB9828144.7のシステムからの以
下の変更が組み込まれている。
下の変更が組み込まれている。
【0023】
・ルータアービトレーション機能を引き継ぐために、マスタに各メッセージの
等級選択の制御が付与されている。
等級選択の制御が付与されている。
【0024】
・マスタが生成する接続に直ちに反応するべく、マトリックスが、ルータを参
照することなく、一定限度のメッセージの記憶を維持している。これは、1組の
キューヘッド(HOQ)バッファを、原始ポート、行先ポートおよびメッセージ
等級の各組合せにそれぞれ1つずつマトリックス中に維持することによって実現
される。ルータバッファ(VOQ)とマトリックスHOQの間の対応は、この追
加記憶に起因するあらゆる回線ヘッドの閉塞を回避するために、1:1になって
いる。
照することなく、一定限度のメッセージの記憶を維持している。これは、1組の
キューヘッド(HOQ)バッファを、原始ポート、行先ポートおよびメッセージ
等級の各組合せにそれぞれ1つずつマトリックス中に維持することによって実現
される。ルータバッファ(VOQ)とマトリックスHOQの間の対応は、この追
加記憶に起因するあらゆる回線ヘッドの閉塞を回避するために、1:1になって
いる。
【0025】
・メッセージバッファが空いている軽負荷の状況では、可能な最短待ち時間を
実現するために、メッセージバッファをバイパスすることができる。
実現するために、メッセージバッファをバイパスすることができる。
【0026】
以下で考察するように、これらの改善により、マトリックスは、マスタから受
け取る接続に対して、ルータによる何らかのアクションを待機することなく、直
ちにアクションを取ることができる。すべてのポスト−マスタアービトレーショ
ンルータアクションが、最長経路から効果的に除去され、55nsという短い総
合ポート間待ち時間になっている。
け取る接続に対して、ルータによる何らかのアクションを待機することなく、直
ちにアクションを取ることができる。すべてのポスト−マスタアービトレーショ
ンルータアクションが、最長経路から効果的に除去され、55nsという短い総
合ポート間待ち時間になっている。
【0027】
図3は、1つのチャネルの1つの入口ポートおよび1つの出口ポートの動作を
示す論理図である。新しいメッセージが入口ルータ60に着信すると、ヘッダか
ら等級および行先が抽出され、該当するVOQ62にメッセージが追加される。
メッセージは、後に、エラーを生じることなく受信されたことが出口ルータ64
によって肯定応答されるまで、VOQ62に保持される。複数のマトリックスデ
バイスが、コントローラ(マスタ)68によって制御されているマトリックス6
6をサポートしている。マトリックスデバイス内の対応するHOQ69が満杯で
ない場合、VOQへの書込みと同時に、マトリックスデバイスにメッセージのコ
ピーが転送され、ルータは、新しいメッセージの行先および等級を知らせるべく
、接続要求をマスタ68に送信する。マスタは、未だ応答していない要求のバッ
ファを維持する。
示す論理図である。新しいメッセージが入口ルータ60に着信すると、ヘッダか
ら等級および行先が抽出され、該当するVOQ62にメッセージが追加される。
メッセージは、後に、エラーを生じることなく受信されたことが出口ルータ64
によって肯定応答されるまで、VOQ62に保持される。複数のマトリックスデ
バイスが、コントローラ(マスタ)68によって制御されているマトリックス6
6をサポートしている。マトリックスデバイス内の対応するHOQ69が満杯で
ない場合、VOQへの書込みと同時に、マトリックスデバイスにメッセージのコ
ピーが転送され、ルータは、新しいメッセージの行先および等級を知らせるべく
、接続要求をマスタ68に送信する。マスタは、未だ応答していない要求のバッ
ファを維持する。
【0028】
マスタ68は、接続要求を受信すると、直ちにマトリックスデバイスに信号を
送り、着信したメッセージを受け取るべきHOQバッファを知らせる。メッセー
ジの様々な部分を各マトリックスデバイスが受け取るため、通常、メッセージヘ
ッダからこの情報を解読することができるのは、複数のデバイスのうちのただ1
つのデバイスであり、したがって上記の機能が必要である(この実施形態の場合
)。
送り、着信したメッセージを受け取るべきHOQバッファを知らせる。メッセー
ジの様々な部分を各マトリックスデバイスが受け取るため、通常、メッセージヘ
ッダからこの情報を解読することができるのは、複数のデバイスのうちのただ1
つのデバイスであり、したがって上記の機能が必要である(この実施形態の場合
)。
【0029】
マスタ68は、次に、競合している要求間でアービトレーションし、後に、マ
トリックス66が確立すべき1組の接続を送出する。1組の接続のうちの1つは
、当該メッセージのためのものである。また、マスタ68は、各接続に対して、
各メッセージに含まれている特定のHOQを識別するために、転送されるメッセ
ージの等級をマトリックスに知らせている。それによりマトリックス66は、こ
の情報をマスタ68から受け取ると直ちに接続を生成し、かつ、メッセージを転
送することができる。マトリックス66からメッセージが着信したことを表す有
効データが出口ルータ64に送信され、また、そのメッセージがマトリックスか
ら転送されたことを表す接続許可が入口ルータ60に送信される。
トリックス66が確立すべき1組の接続を送出する。1組の接続のうちの1つは
、当該メッセージのためのものである。また、マスタ68は、各接続に対して、
各メッセージに含まれている特定のHOQを識別するために、転送されるメッセ
ージの等級をマトリックスに知らせている。それによりマトリックス66は、こ
の情報をマスタ68から受け取ると直ちに接続を生成し、かつ、メッセージを転
送することができる。マトリックス66からメッセージが着信したことを表す有
効データが出口ルータ64に送信され、また、そのメッセージがマトリックスか
ら転送されたことを表す接続許可が入口ルータ60に送信される。
【0030】
出口ルータ64は、メッセージを受け取ると、メッセージCRC欄をチェック
し、発信入口ルータに応答(正しく受信したことを表す肯定応答、さもなければ
否定応答)を転送する。出口ルータ64は、障害のあるメッセージを放棄し、メ
ッセージがノードに送信される等級に対する該当する出口キューEQ中で優良メ
ッセージを待機する。
し、発信入口ルータに応答(正しく受信したことを表す肯定応答、さもなければ
否定応答)を転送する。出口ルータ64は、障害のあるメッセージを放棄し、メ
ッセージがノードに送信される等級に対する該当する出口キューEQ中で優良メ
ッセージを待機する。
【0031】
待ち時間を、図1に関連して上で考察した、知られているシステムの待ち時間
と比較して短縮するための主要な方法は、上で説明したように、接続許可を介し
て経路を除去するHOQバッファ、入口ルータアービトレーション、およびマス
タによる接続のアービトレーション上の最長経路からマトリックスへのシリアル
リンクを備えることである。
と比較して短縮するための主要な方法は、上で説明したように、接続許可を介し
て経路を除去するHOQバッファ、入口ルータアービトレーション、およびマス
タによる接続のアービトレーション上の最長経路からマトリックスへのシリアル
リンクを備えることである。
【0032】
メッセージが空のVOQに着信する軽負荷状況では、メッセージは、HOQへ
転送されることになり、また、VOQへのメッセージの書込みと同時に、接続要
求が生成されることになる。これにより、バッファ書込みおよび読出しのオーバ
ヘッドが回避される。
転送されることになり、また、VOQへのメッセージの書込みと同時に、接続要
求が生成されることになる。これにより、バッファ書込みおよび読出しのオーバ
ヘッドが回避される。
【0033】
マスタ68が接続要求を受け取ると、入口あるいは出口のいずれかに対する競
合する要求が存在しない場合、マスタ68は、正規のアービトレーションアルゴ
リズムをバイパスし、マトリックス66への接続を直ちに生成することができる
。これにより、HOQが着信メッセージを受信する正規の仕様が置換され、マト
リックス66が接続を生成し、(空の)HOQにメッセージを格納することなく
、必要な行先に転送することになる。
合する要求が存在しない場合、マスタ68は、正規のアービトレーションアルゴ
リズムをバイパスし、マトリックス66への接続を直ちに生成することができる
。これにより、HOQが着信メッセージを受信する正規の仕様が置換され、マト
リックス66が接続を生成し、(空の)HOQにメッセージを格納することなく
、必要な行先に転送することになる。
【0034】
最後に、優良CRCを有するメッセージが空のEQに着信し、かつ、ノード(
すなわち、メッセージを受信した出口ルータに結合したノード)がそのメッセー
ジを受け取ることができる場合、そのメッセージは直ちに転送され、したがって
他の不要なバッファ読出しおよび書込みが回避される。
すなわち、メッセージを受信した出口ルータに結合したノード)がそのメッセー
ジを受け取ることができる場合、そのメッセージは直ちに転送され、したがって
他の不要なバッファ読出しおよび書込みが回避される。
【0035】
入口ルータ60からマトリックス66へのメッセージの転送は、クレジットプ
ロトコルによって制御されており、それにより、入口ルータ60は、マトリック
ス66が新しいメッセージを受け取ることができるかどうかを、要求/応答シス
テムのオーバヘッドを生じることなく、いつでも知ることができる。
ロトコルによって制御されており、それにより、入口ルータ60は、マトリック
ス66が新しいメッセージを受け取ることができるかどうかを、要求/応答シス
テムのオーバヘッドを生じることなく、いつでも知ることができる。
【0036】
入口ルータ60は、それぞれ空のHOQのメッセージ容量に初期設定された後
、カウントを開始する、各VOQ/HOQ対に対するクレジットカウンタを維持
している。メッセージがHOQへの伝送に有効である場合、このカウンタの状態
が調査される。使用可能クレジットが存在している場合(カウンタが非ゼロ)、
シリアルインタフェースを介してメッセージが転送され、クレジットは、1だけ
デクリメントされる。後に、メッセージがHOQから除去されたことを表す接続
許可を受け取ると、クレジットカウンタはインクリメントされる。新しいメッセ
ージをマトリックスに送るだけの十分なクレジットが存在しない場合、メッセー
ジはVOQに格納され、後に、クレジットが使用可能になった時点で送信される
。
、カウントを開始する、各VOQ/HOQ対に対するクレジットカウンタを維持
している。メッセージがHOQへの伝送に有効である場合、このカウンタの状態
が調査される。使用可能クレジットが存在している場合(カウンタが非ゼロ)、
シリアルインタフェースを介してメッセージが転送され、クレジットは、1だけ
デクリメントされる。後に、メッセージがHOQから除去されたことを表す接続
許可を受け取ると、クレジットカウンタはインクリメントされる。新しいメッセ
ージをマトリックスに送るだけの十分なクレジットが存在しない場合、メッセー
ジはVOQに格納され、後に、クレジットが使用可能になった時点で送信される
。
【0037】
このスキームに対する本発明の範囲内における単純な拡張により、システムは
、異なるサイズのメッセージを処理することができる。クレジットカウンタの代
わりに単純にメッセージ全体をカウントすることにより、メッセージワードをカ
ウントすることができる。この場合、カウンタは、追加あるいは除去されるメッ
セージのワードの数だけデクリメントあるいはインクリメントされ、新しいメッ
セージを追加することができる基準は、カウンタがデクリメントの結果として負
にならないことである。
、異なるサイズのメッセージを処理することができる。クレジットカウンタの代
わりに単純にメッセージ全体をカウントすることにより、メッセージワードをカ
ウントすることができる。この場合、カウンタは、追加あるいは除去されるメッ
セージのワードの数だけデクリメントあるいはインクリメントされ、新しいメッ
セージを追加することができる基準は、カウンタがデクリメントの結果として負
にならないことである。
【0038】
任意の時間における使用可能クレジットは、入口ルータ60から見た、マトリ
ックス66内におけるそのHOQ中の非完遂予備容量である。
ックス66内におけるそのHOQ中の非完遂予備容量である。
【0039】
図1に関連して上で説明したシステムでは、メッセージは、メッセージがマト
リックスへ転送されると、そのメッセージのVOQから抹消されるが、本発明に
よる実施形態では、高信頼転送プロトコルをサポートするために、メッセージは
、問題なく受信したことを出口ルータ64がレポートするまで、VOQ中に保存
される。したがって概念上、VOQの占有領域を3つの領域(それらのいずれか
、あるいはすべてが空であっても良い)に分割することができる。
リックスへ転送されると、そのメッセージのVOQから抹消されるが、本発明に
よる実施形態では、高信頼転送プロトコルをサポートするために、メッセージは
、問題なく受信したことを出口ルータ64がレポートするまで、VOQ中に保存
される。したがって概念上、VOQの占有領域を3つの領域(それらのいずれか
、あるいはすべてが空であっても良い)に分割することができる。
【0040】
・W−この領域には、HOQへの送信待ちメッセージが含まれる。この領域は
、対応するHOQに対するそれ以上のメッセージのためのクレジットが、さし当
たって存在していない場合にのみ、占有される。
、対応するHOQに対するそれ以上のメッセージのためのクレジットが、さし当
たって存在していない場合にのみ、占有される。
【0041】
・H−この領域は、HOQへ転送され、かつ、行先への前方伝送をHOQで待
機しているメッセージを表す。
機しているメッセージを表す。
【0042】
・A−この領域には、HOQから転送され、転送に対する応答(肯定応答ある
いは否定応答)を未だ受け取っていないメッセージが含まれる。
いは否定応答)を未だ受け取っていないメッセージが含まれる。
【0043】
HおよびAは、VOQの個別領域として示されているが、これらの領域は概念
的なものであることに留意されたい。入口ルータ60に関する限り、領域Hおよ
びAは、既にマトリックス66へ転送済みのセルの単一領域を構成している。ル
ータには、接続許可信号を介してこの境界を追跡することが可能であるが、実際
にはそれは不要であり、したがって実行されることはない。
的なものであることに留意されたい。入口ルータ60に関する限り、領域Hおよ
びAは、既にマトリックス66へ転送済みのセルの単一領域を構成している。ル
ータには、接続許可信号を介してこの境界を追跡することが可能であるが、実際
にはそれは不要であり、したがって実行されることはない。
【0044】
各着信メッセージは、出口ルータ64でCRCが正しいかどうかチェックされ
、肯定(良)あるいは否定(不良)応答が生成される。また、紛失メッセージを
保護するために、メッセージヘッダ内のシーケンス番号がチェックされ、最新メ
ッセージのシーケンス番号が先行メッセージと連続していない場合、現行メッセ
ージに対する応答に先立って、何らかの紛失メッセージに対する否定応答が生成
される。出口ルータ64によって生成された応答は、マスタ68へ送信され、そ
こで発信入口ルータ60へ経路指定されて戻される。
、肯定(良)あるいは否定(不良)応答が生成される。また、紛失メッセージを
保護するために、メッセージヘッダ内のシーケンス番号がチェックされ、最新メ
ッセージのシーケンス番号が先行メッセージと連続していない場合、現行メッセ
ージに対する応答に先立って、何らかの紛失メッセージに対する否定応答が生成
される。出口ルータ64によって生成された応答は、マスタ68へ送信され、そ
こで発信入口ルータ60へ経路指定されて戻される。
【0045】
入口ルータ60では、着信した応答は、該当するVOQのヘッドで必ずメッセ
ージ照合される(これは、メッセージおよび応答にシーケンス番号のタグを振る
ことによってチェックされる)。メッセージは、応答が、メッセージが正しく転
送されたことを示す肯定応答である場合、VOQから除去され、放棄される。応
答が否定応答である場合、メッセージはVOQの末尾に再びキュー登録され、新
しいメッセージと同様に処理される。
ージ照合される(これは、メッセージおよび応答にシーケンス番号のタグを振る
ことによってチェックされる)。メッセージは、応答が、メッセージが正しく転
送されたことを示す肯定応答である場合、VOQから除去され、放棄される。応
答が否定応答である場合、メッセージはVOQの末尾に再びキュー登録され、新
しいメッセージと同様に処理される。
【0046】
各HOQバッファの深さは、VOQから充てんされるクレジットプロトコル上
を全帯域幅で動作し、かつ、高負荷状態下で効率的に進行させるためのスケジュ
ーリングおよびアービトレーションを可能にする十分なメッセージを提供するべ
く選択されている。
を全帯域幅で動作し、かつ、高負荷状態下で効率的に進行させるためのスケジュ
ーリングおよびアービトレーションを可能にする十分なメッセージを提供するべ
く選択されている。
【0047】
前者の要求事項に対しては、メッセージバッファが空であり、かつ、全帯域幅
のメッセージストリームが、ノードからの着信を開始するシステムを考慮された
い。このメッセージストリームに対して、VOQの領域Wにキュー登録すること
なくHOQへの流出を維持するために、新しいメッセージは、決してゼロクレジ
ットに遭遇してはならない。ノードからの第1のメッセージの着信と、そのメッ
セージに対するクレジットの復旧との間の遅延を考慮すべきである: 接続要求生成 5ns ルータ−マスタシリアル制御インタフェース 20ns マスタアービトレーション 10ns 接続許可生成 5ns マスタ−ルータシリアル制御インタフェース 20ns 解読およびクレジット復旧 5ns 合計 65ns このチャネル上で10ns毎に送信すべきメッセージが、全帯域幅でルータに
着信すると、これは、メッセージの流れを抑制するクレジットの欠乏を避けるた
めには、HOQが最低7つのメッセージを保持しなければならないことを示して
いる。当然のことではあるが実際にはポートが競合するため、マスタアービトレ
ーションは、10nsより長い相当な時間を要している。余剰HOQスペースは
、このような状況における流れの抑制の開始を遅延させている。
のメッセージストリームが、ノードからの着信を開始するシステムを考慮された
い。このメッセージストリームに対して、VOQの領域Wにキュー登録すること
なくHOQへの流出を維持するために、新しいメッセージは、決してゼロクレジ
ットに遭遇してはならない。ノードからの第1のメッセージの着信と、そのメッ
セージに対するクレジットの復旧との間の遅延を考慮すべきである: 接続要求生成 5ns ルータ−マスタシリアル制御インタフェース 20ns マスタアービトレーション 10ns 接続許可生成 5ns マスタ−ルータシリアル制御インタフェース 20ns 解読およびクレジット復旧 5ns 合計 65ns このチャネル上で10ns毎に送信すべきメッセージが、全帯域幅でルータに
着信すると、これは、メッセージの流れを抑制するクレジットの欠乏を避けるた
めには、HOQが最低7つのメッセージを保持しなければならないことを示して
いる。当然のことではあるが実際にはポートが競合するため、マスタアービトレ
ーションは、10nsより長い相当な時間を要している。余剰HOQスペースは
、このような状況における流れの抑制の開始を遅延させている。
【0048】
高負荷状態下で効率的に進行させるためのスケジューリングおよびアービトレ
ーションを可能にするべく十分なメッセージを提供するためには、HOQが満杯
であり、かつ、マスタ68が連続する一連の接続のアービトレーションを開始す
るシステムを考慮されたい。VOQの領域Wで待機しているメッセージのバック
ログが存在すると仮定すると、HOQは、接続を満たすために、復旧したクレジ
ットがVOQからの流れを再開させるまでの間、十分なメッセージを含んでいな
ければならない。マスタによる接続の生成と、ルータから着信する新しい接続要
求の間の遅延を考慮すべきである: 接続許可生成 5ns マスタ−ルータシリアル制御インタフェース 20ns 解読およびクレジット復旧 5ns VOQ領域Wからのメッセージ抽出 10ns 接続要求生成 5ns ルータ−マスタシリアル制御インタフェース 20ns 合計 65ns 10ns毎に接続が生成される場合、これは、接続に対するあらゆる妨害を避
けるためには、HOQが、ルータからの新しいメッセージを待機しつつ、最低7
つのメッセージを含んでいなければならないことを意味している。
ーションを可能にするべく十分なメッセージを提供するためには、HOQが満杯
であり、かつ、マスタ68が連続する一連の接続のアービトレーションを開始す
るシステムを考慮されたい。VOQの領域Wで待機しているメッセージのバック
ログが存在すると仮定すると、HOQは、接続を満たすために、復旧したクレジ
ットがVOQからの流れを再開させるまでの間、十分なメッセージを含んでいな
ければならない。マスタによる接続の生成と、ルータから着信する新しい接続要
求の間の遅延を考慮すべきである: 接続許可生成 5ns マスタ−ルータシリアル制御インタフェース 20ns 解読およびクレジット復旧 5ns VOQ領域Wからのメッセージ抽出 10ns 接続要求生成 5ns ルータ−マスタシリアル制御インタフェース 20ns 合計 65ns 10ns毎に接続が生成される場合、これは、接続に対するあらゆる妨害を避
けるためには、HOQが、ルータからの新しいメッセージを待機しつつ、最低7
つのメッセージを含んでいなければならないことを意味している。
【0049】
図4ないし図8は、この実施形態のコンポーネントの動作シーケンスおよびタ
イミングシーケンスを示したものである。この実施形態を介した待ち時間は、入
口ルータ60内で有効なメッセージから、出口ルータ64内で有効かつチェック
済みメッセージまで形成されている。図4は、シリアルリンクを介した待ち時間
を詳細に示したものである。次に、様々な動作の実行に要する時間を詳細に説明
する。
イミングシーケンスを示したものである。この実施形態を介した待ち時間は、入
口ルータ60内で有効なメッセージから、出口ルータ64内で有効かつチェック
済みメッセージまで形成されている。図4は、シリアルリンクを介した待ち時間
を詳細に示したものである。次に、様々な動作の実行に要する時間を詳細に説明
する。
【0050】
1.高速メッセージ転送
マスタ68が接続要求を受け取り、かつ、その要求に必要な入口ポートおよび
出口ポートに対する競合が存在しないことを検出すると(HOQおよびアービタ
状態)、マスタ68は、アービトレーション段階(競合を公正に解決するために
存在している)をバイパスし、直ちに接続を許可することができる。この「高速
メッセージ転送」機能は、この実施形態が軽負荷の状態にあるか、あるいは確率
的非競合フローをサポート中である場合のメッセージ転送待ち時間を短縮してい
る。
出口ポートに対する競合が存在しないことを検出すると(HOQおよびアービタ
状態)、マスタ68は、アービトレーション段階(競合を公正に解決するために
存在している)をバイパスし、直ちに接続を許可することができる。この「高速
メッセージ転送」機能は、この実施形態が軽負荷の状態にあるか、あるいは確率
的非競合フローをサポート中である場合のメッセージ転送待ち時間を短縮してい
る。
【0051】
高速メッセージ転送では、HOQが経路指定したデータは、メッセージをHO
Qに記憶させる必要がないため、マスタ−マトリックスインタフェースを介して
マトリックスデバイスには送信されない。
Qに記憶させる必要がないため、マスタ−マトリックスインタフェースを介して
マトリックスデバイスには送信されない。
【0052】
図5は、動作の時間尺度を示したものである。行先ポートに対する競合が存在
しない場合、この実施形態は、上で示したように、55nsの「高速メッセージ
転送」待ち時間で、すべてのポートに対する全ポート帯域幅をサポートしている
。この実施形態は厳密に非閉塞構造であり、したがって入力競合あるいは内部競
合は存在しない。
しない場合、この実施形態は、上で示したように、55nsの「高速メッセージ
転送」待ち時間で、すべてのポートに対する全ポート帯域幅をサポートしている
。この実施形態は厳密に非閉塞構造であり、したがって入力競合あるいは内部競
合は存在しない。
【0053】
2.アービトレーション済みメッセージ転送
図6は、構造中にある程度の競合が存在し、かつ、余計なキュー遅延を伴うこ
となく要求メッセージが転送される「正規」メッセージ転送のタイミングを示し
たものである。出力ポートに対する競合(同一出力ノードへ転送されることにな
る複数のメッセージが構造中に存在する)が生じた場合は、ルータ−ノードイン
タフェースの帯域幅が限られているため、1つのメッセージを除くすべてのメッ
セージがHOQバッファに強制的にキュー登録される。このメッセージ間の衝突
によるキュー化は、構造を通した平均待ち時間の増加として現われる。この待ち
時間の増加の大きさは、アプリケーションのトラフィックパターンによって様々
である(メッセージ衝突の確率)。
となく要求メッセージが転送される「正規」メッセージ転送のタイミングを示し
たものである。出力ポートに対する競合(同一出力ノードへ転送されることにな
る複数のメッセージが構造中に存在する)が生じた場合は、ルータ−ノードイン
タフェースの帯域幅が限られているため、1つのメッセージを除くすべてのメッ
セージがHOQバッファに強制的にキュー登録される。このメッセージ間の衝突
によるキュー化は、構造を通した平均待ち時間の増加として現われる。この待ち
時間の増加の大きさは、アプリケーションのトラフィックパターンによって様々
である(メッセージ衝突の確率)。
【0054】
図7は、この実施形態を介した平均メッセージ待ち時間を示したもので、16
ポートTSIは、等しい確率で、かつ、無作為内部メッセージギャップで、すべ
てのポートが他のすべてのポートに送信されると仮定している。チャートは、こ
の実施形態の性能が、特に単純なFIFO待機構造(VOQがない)と比較した
場合、M/M/1キュー(つまり、キューの/MarkのMark、位置分散着
信率および位置分散サービス率を有する単一サーバQを表す当分野の用語)の最
適挙動に近いことを示している。
ポートTSIは、等しい確率で、かつ、無作為内部メッセージギャップで、すべ
てのポートが他のすべてのポートに送信されると仮定している。チャートは、こ
の実施形態の性能が、特に単純なFIFO待機構造(VOQがない)と比較した
場合、M/M/1キュー(つまり、キューの/MarkのMark、位置分散着
信率および位置分散サービス率を有する単一サーバQを表す当分野の用語)の最
適挙動に近いことを示している。
【0055】
このチャートには、上で説明した(例えば図5に関連して)、軽負荷時におけ
る平均待ち時間をさらに短縮することができる高速メッセージ転送の効果が示さ
れていないことに留意されたい。
る平均待ち時間をさらに短縮することができる高速メッセージ転送の効果が示さ
れていないことに留意されたい。
【0056】
また、高負荷状態におけるメッセージ待ち時間の増加は、この構造の特徴では
なく、出力競合によってもたらされていること、すなわち、この影響を緩和する
ためには、ノードは、個々のノードのメッセージ放出速度より速い速度(約20
%速く)でメッセージを受け取る(かつ、処理する)ことができなければならな
いことに留意すべきである。実際には、これは、単に競合ポイントをデータフロ
ーのさらに下流に移動させる働きをしているに過ぎず、必ずしも総合システム性
能を改善しているわけではない。
なく、出力競合によってもたらされていること、すなわち、この影響を緩和する
ためには、ノードは、個々のノードのメッセージ放出速度より速い速度(約20
%速く)でメッセージを受け取る(かつ、処理する)ことができなければならな
いことに留意すべきである。実際には、これは、単に競合ポイントをデータフロ
ーのさらに下流に移動させる働きをしているに過ぎず、必ずしも総合システム性
能を改善しているわけではない。
【0057】
ルータ肯定応答/否定応答待ち時間は、2つのノード間の全帯域幅フローを維
持するために必要なVOQの最少深さを形成している。図8は、正規肯定応答/
否定応答待ち時間が115nsであることを示している。10nsのメッセージ
の場合、これは、絶対最少VOQ深さが、HおよびA領域に対して12メッセー
ジであることを示している。W領域のサイズは、休止インタフェースをノードか
ら取り戻すための待ち時間によって決定される。
持するために必要なVOQの最少深さを形成している。図8は、正規肯定応答/
否定応答待ち時間が115nsであることを示している。10nsのメッセージ
の場合、これは、絶対最少VOQ深さが、HおよびA領域に対して12メッセー
ジであることを示している。W領域のサイズは、休止インタフェースをノードか
ら取り戻すための待ち時間によって決定される。
【0058】
以上、本発明について、ただ1つの実施形態に関連して説明したが、本発明の
範囲内において多くの変形形態が可能である。例えば本発明は、多重チャネル伝
送に限定されたものではない。また、本発明は、データプロセッサ間のデータ伝
送に限らず、任意のディジタル通信システムに使用することができる。
範囲内において多くの変形形態が可能である。例えば本発明は、多重チャネル伝
送に限定されたものではない。また、本発明は、データプロセッサ間のデータ伝
送に限らず、任意のディジタル通信システムに使用することができる。
【0059】
また、本発明について、それぞれ単一ノードにのみ送信されるセルに関連して
説明したが、本発明は、マルチキャスト信号の場合にも適用することができる。
例えば、複数の出口ルータに送信するセルを、入口ルータによって、それぞれ単
一出口ルータに送信するための複数のセルに分割することができる。同様に、単
一出口ルータに結合した複数の出力部に送信するセルのヘッダに、その情報を持
たせ、それにより出口ルータは、その情報にしたがってセルを送信することがで
きる。
説明したが、本発明は、マルチキャスト信号の場合にも適用することができる。
例えば、複数の出口ルータに送信するセルを、入口ルータによって、それぞれ単
一出口ルータに送信するための複数のセルに分割することができる。同様に、単
一出口ルータに結合した複数の出力部に送信するセルのヘッダに、その情報を持
たせ、それにより出口ルータは、その情報にしたがってセルを送信することがで
きる。
【0060】
同様に、本発明によるセルは、一般的にその長さが等しいが、所与のセルの欄
のいくつかは、有用な情報の伝達には使用されない、という意味において「無効
」であっても良い。
のいくつかは、有用な情報の伝達には使用されない、という意味において「無効
」であっても良い。
【図1】
GB9828144.7および本発明の一実施形態のシステムを示す図である
。
。
【図2】
本発明の一実施形態の略図である。
【図3】
図2の実施形態における処理を示す略図である。
【図4】
図2の実施形態のシリアルリンクによる遅延を示す図である。
【図5】
アービトレーションを必要としない場合の本発明による処理を示す図である。
【図6】
アービトレーションを必要とする場合の本発明による処理を示す図である。
【図7】
本発明による平均待ち時間を他の交換技法と比較して示す図である。
【図8】
セルが正しく送信されたことを確認するステップを含む、本発明による処理を
示す図である。
示す図である。
─────────────────────────────────────────────────────
フロントページの続き
(81)指定国 EP(AT,BE,CH,CY,
DE,DK,ES,FI,FR,GB,GR,IE,I
T,LU,MC,NL,PT,SE,TR),OA(BF
,BJ,CF,CG,CI,CM,GA,GN,GW,
ML,MR,NE,SN,TD,TG),AP(GH,G
M,KE,LS,MW,MZ,SD,SL,SZ,TZ
,UG,ZW),EA(AM,AZ,BY,KG,KZ,
MD,RU,TJ,TM),AE,AG,AL,AM,
AT,AU,AZ,BA,BB,BG,BR,BY,B
Z,CA,CH,CN,CO,CR,CU,CZ,DE
,DK,DM,DZ,EC,EE,ES,FI,GB,
GD,GE,GH,GM,HR,HU,ID,IL,I
N,IS,JP,KE,KG,KP,KR,KZ,LC
,LK,LR,LS,LT,LU,LV,MA,MD,
MG,MK,MN,MW,MX,MZ,NO,NZ,P
L,PT,RO,RU,SD,SE,SG,SI,SK
,SL,TJ,TM,TR,TT,TZ,UA,UG,
US,UZ,VN,YU,ZA,ZW
(72)発明者 ジョンソン,イアン,デイヴィッド
イギリス国,ビーエヌ16 1キューワイ
サセックス,リトルハンプトン,イースト
プレストン,ゴールデン アヴェニュー
23,ウェスト キングストン コテージ
(72)発明者 パイカルスキー,マレク,スティーブン
イギリス国,エスケイ11 8ユーイー チ
ェシャー,マックルスフィールド,ガース
ワース ロード 20
(72)発明者 ダックスベリー,マーティン
イギリス国,エスケイ6 1ピーエイチ
チェシャー,ストックポート,ウッドリ
ー,ポールエイカー レイン 55
Fターム(参考) 5K030 GA03 GA11 HA10 HB17 HD03
KX09 KX11 KX26 LA01 LA02
LA03
【要約の続き】
ファがそのためのスペースを有した時点で、キューヘッ
ドバッファに書き込まれる。
Claims (16)
- 【請求項1】 複数の入口ルータ(33;60)、複数の出口ルータ(33
;64)、スイッチングマトリックス(57;66)、および接続コントローラ
(68)を有するデータスイッチングデバイスであり、 前記スイッチングマトリックス(57;66)が、それぞれの前記入口ルータ
(33;60)に接続された入力ポート、および、それぞれの前記出口ルータ(
33;64)に接続された出力ポートを有し、そして、前記コントローラ(68
)によって制御されて、入力ポートと出力ポートの複数の対の間の接続を形成し
ており、 各入口ルータ(33;60)が、各出口ルータ(33;64)のための1つま
たは複数の仮想出力キュー(62)を備え、各仮想出力キュー(62)が、スイ
ッチングマトリックス(57;66)接続に使用すべき出口ルータ(33;64
)を形成するヘッダを有する固定長セルを記憶するように構成されており、 各入口ルータ(33;60)が、その入口ルータ(33;60)によって新し
いセルが受信された際に、受信した前記新しいセルを、前記新しいセルのための
出口ルータ(33;64)に対応する入口ルータ(33;60)の前記仮想出力
キュー(62)中に格納するように構成されている ところのデータスイッチングデバイスであって、 前記スイッチングマトリックス(57;66)の各入力ポートが、その入力ポ
ートに接続された前記入口ルータ(33;60)内の各仮想出力キュー(62)
に対して、それぞれのキューヘッドバッファ(69)を備え、 前記スイッチングマトリックス(57;66)が、前記スイッチングマトリッ
クス(57;66)が所与の入力ポート及び出力ポート間の接続を形成する際に
、複数の前記キューヘッドバッファ(69)のうちの対応する1つからのセルを
、前記出力ポートに送信するように構成されており、 各出口ルータ(33;64)が、その出口ルータ(33;64)が複数の前記
入口ルータ(33;60)のうちの1つの入口ルータの複数の前記仮想出力キュ
ー(62)のうちの1つの仮想出力キューから、エラーを生じることなくセルを
受信する際に、前記入口ルータに受取り信号を送信するように構成されており、 各入口ルータ(33;60)が、前記仮想出力キュー(62)中にセルを格納
する際であって、しかも、対応するキューヘッドバッファ(69)の自由セルの
数を表すクレジットカウントがゼロでない場合に、前記キューヘッドバッファ(
69)にセルの複製を送信し、そして、接続要求をコントローラ(68)に送信
するように構成されており、そして、 各入口ルータ(33;60)が、対応する受取り信号を受信するまで、各受信
セルを対応する仮想出力キュー(62)中に保存するように更に構成されている
ことを特徴とするデータスイッチングデバイス。 - 【請求項2】 前記コントローラ(68)が、前記スイッチングマトリック
ス(57;66)を介して入口ルータ(33;60)のセルを交換するための接
続を実行させる際に、接続許可信号が前記入口ルータ(33;60)に送信され
、そして、クレジットカウントが1カウントだけインクリメントされる、請求項
1に記載のデバイス。 - 【請求項3】 前記セルの前記複製が前記キューヘッドバッファ(69)に
送信される際に、それぞれのクレジットカウントが1カウントだけデクリメント
される、請求項1または請求項2に記載のデバイス。 - 【請求項4】 前記仮想出力キュー(62)が、対応するキューヘッドバッ
ファ(69)に対する複製を待機しているセルを含む第1の領域(W)と、キュ
ーヘッドバッファ(69)に対して複製されたセルを含む第2の領域(H、A)
との2つの領域に分割されており、そして、前記第1の領域に少なくとも1つの
セルが存在し、かつ、対応するキューヘッドバッファ(69)の自由セルの数が
ゼロでないことが決定される際に、前記第1の領域(W)の少なくとも1つのセ
ルの複製が、前記キューヘッドバッファ(69)に送信され、前記セルが前記第
2の領域(H、A)に転送され、そして、接続要求が前記コントローラ(68)
に送信される、請求項1から3のいずれか1つに記載のデバイス。 - 【請求項5】 セルの各々に優先順位が関連付けられており、前記仮想出力
キュー(62)が、それぞれの優先順位のセルのための仮想出力キュー(62)
を備えており、前記コントローラ(68)が、入力ポート及び出力ポートの複数
対が前記コントローラにタンデム接続される状態で、入口ポート及び出口ポート
の前記複数対間を送信すべきセルの優先順位を決定する、請求項1から4のいず
れか1つに記載のデバイス。 - 【請求項6】 前記コントローラ(68)が、前記仮想出力キュー(62)
中の複数のセルのうちの1つの所与のセルを、仮想出力キュー(62)中のセル
の、入力ポートおよび出力ポートの他の対の間の伝送を妨げることなく、入力ポ
ートおよび出力ポートの適切な対の間で送信することができるか否かを決定し、
そして、その場合に、前記所与のセルを送信させる、請求項1から5のいずれか
1つに記載のデバイス。 - 【請求項7】 各出口ルータ(33;64)が、前記スイッチングマトリッ
クス(57;66)によって送信されたセルが正しく受信されていないことを検
出し、そして、その場合に、対応する入口ルータ(33;60)に再伝送要求を
送信する、請求項1から6のいずれか1つに記載のデバイス。 - 【請求項8】 前記再伝送要求を受け取った際に、前記入口ルータ(33;
60)が、前記第2の領域(H、A)中の対応するセルを前記第1の領域(W)
に転送し、そして、対応する接続要求を前記コントローラ(68)に送信する、
請求項4または7に記載のデバイス。 - 【請求項9】 複数の入口ルータ(33;60)、複数の出口ルータ(33
;64)、スイッチングマトリックス(57;66)および接続コントローラ(
68)を有し、 前記スイッチングマトリックス(57;66)が、それぞれの前記入口ルータ
(33;60)に接続された入力ポート、および、それぞれの前記出口ルータ(
33;64)に接続された出力ポートを有し、そして、前記コントローラ(68
)によって制御されて、入力ポートと出力ポートの複数の対の間の接続を形成す
るデータスイッチングデバイスを操作する方法であって、 各出口ルータ(33;64)のための1つまたは複数の仮想出力キュー(62
)を各入口ルータ(33;60)に維持するステップであって、各仮想出力キュ
ー(62)が、スイッチングマトリックス(57;66)接続に使用すべき出口
ルータ(33;64)を形成するヘッダを有する固定長セルを記憶するように構
成されており、そして、各入口ルータ(33;60)が、新しいセルを受信する
際に、前記新しいセルを、前記新しいセルのための出口ルータ(33;64)に
対応する入口ルータ(33;60)の前記仮想出力キュー(62)中に格納する
ように構成されているところのステップを含み、前記方法が、さらに、 各入力ポートに接続された入口ルータ(33;60)内の各仮想出力キュー(
62)に対するスイッチングマトリックス(57;66)の各入力ポートに、そ
れぞれのキューヘッドバッファ(69)を維持するステップと、 前記スイッチングマトリックス(57;66)が、所与の入力ポート及び出力
ポート間の接続を形成する際に、前記スイッチングマトリックス(57;66)
が前記入力ポートから前記出力ポートへ、1つまたは複数の対応するキューヘッ
ドバッファ(69)のうちの1つからセルを送信するステップと、 出口ルータ(33;64)が、複数の前記入口ルータ(33;60)のうちの
1つの入口ルータの複数の仮想出力キュー(62)のうちの1つの仮想出力キュ
ーから、エラーを生じることなくセルを受信する際に、前記出口ルータ(33;
64)が前記入口ルータ(33;60)に受取り信号を送信するステップと、 複数の入口ルータ(33;60)のうちの1つが新しいセルを受信し、そして
、対応するキューヘッドバッファ(69)の自由セルの数を表すクレジットカウ
ントがゼロでない場合に、前記入口ルータ(33;60)が前記キューヘッドバ
ッファ(69)にセルの複製を送信し、そして、接続要求を前記コントローラ(
68)に送信するステップと、そして、 各入口ルータ(33;60)が、対応する受取り信号を受信するまで、各受信
セルを対応する仮想出力キュー(62)中に保存するステップと を含むことを特徴とする、データスイッチングデバイスを操作する方法。 - 【請求項10】 前記コントローラ(68)が、前記スイッチングマトリッ
クス(57;66)を介して入口ルータ(33;60)のセルを交換するための
接続を実行させる際に、接続許可信号が前記入口ルータ(33;60)に送信さ
れ、そして、クレジットカウントが1カウントだけインクリメントされる、請求
項9に記載の方法。 - 【請求項11】 前記セルの前記複製が前記キューヘッドバッファ(69)
に送信される際に、それぞれのクレジットカウントが1カウントだけデクリメン
トされる、請求項9または請求項10のいずれか1つに記載の方法。 - 【請求項12】 前記仮想出力キュー(62)が、対応するキューヘッドバ
ッファ(69)に対する複製を待機しているセルを含む第1の領域(W)と、キ
ューヘッドバッファ(69)に対して複製されたセルを含む第2の領域(H、A
)との2つの領域に分割されており、そして、前記第1の領域に少なくとも1つ
のセルが存在し、かつ、対応するキューヘッドバッファ(69)の自由セルの数
がゼロでないことが決定される際に、前記第1の領域の少なくとも1つのセルの
複製が、前記キューヘッドバッファ(69)に送信され、前記セルが第2の領域
に転送され、そして、接続要求が前記コントローラ(68)に送信される、請求
項9から11のいずれか1つに記載の方法。 - 【請求項13】 セルの各々に優先順位が関連付けられており、前記仮想出
力キュー(62)が、それぞれの優先順位のセルのための仮想出力キュー(62
)を備えており、前記コントローラ(68)が、入力ポート及び出力ポートの複
数の対が前記コントローラにタンデム接続される状態で、入力ポート及び出力ポ
ートの前記複数対間を送信すべきセルの優先順位を決定する、請求項9から12
のいずれか1つに記載の方法。 - 【請求項14】 前記コントローラ(68)が、前記仮想出力キュー(62
)中の複数のセルのうちの1つの所与のセルを、仮想出力キュー(62)中のセ
ルの、入力ポートおよび出力ポートの他の対の間の伝送を妨げることなく、入力
ポートおよび出力ポートの適切な対の間で送信することができるか否かを決定し
、そして、その場合に、前記所与のセルを送信させる、請求項9から13のいず
れか1つに記載の方法。 - 【請求項15】 各出口が、前記スイッチングマトリックス(57;66)
によって送信されたセルが正しく受信されていないことを検出し、そして、その
場合に、対応する入口ルータ(33;60)に再伝送要求を送信する、請求項9
から14のいずれか1つに記載の方法。 - 【請求項16】 前記再伝送要求を受け取った際に、前記入口ルータ(33
;60)が、前記第2の領域中の対応するセルを前記第1の領域に転送し、そし
て、対応する接続要求を前記コントローラ(68)に送信する、請求項12また
は請求項15に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0013571.5A GB0013571D0 (en) | 2000-06-06 | 2000-06-06 | Switching system |
GB0013571.5 | 2000-06-06 | ||
PCT/GB2001/002443 WO2001095576A1 (en) | 2000-06-06 | 2001-06-01 | Switching system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003536323A true JP2003536323A (ja) | 2003-12-02 |
Family
ID=9892954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002502991A Pending JP2003536323A (ja) | 2000-06-06 | 2001-06-01 | スイッチシステム |
Country Status (9)
Country | Link |
---|---|
US (1) | US6876663B2 (ja) |
EP (1) | EP1287648B1 (ja) |
JP (1) | JP2003536323A (ja) |
KR (1) | KR20030051433A (ja) |
CN (1) | CN1443413A (ja) |
AU (1) | AU2001262507A1 (ja) |
DE (1) | DE60126934T2 (ja) |
GB (1) | GB0013571D0 (ja) |
WO (1) | WO2001095576A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008166888A (ja) * | 2006-12-27 | 2008-07-17 | Hitachi Ltd | スイッチにおける優先度帯域制御方法 |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030084219A1 (en) * | 2001-10-26 | 2003-05-01 | Maxxan Systems, Inc. | System, apparatus and method for address forwarding for a computer network |
US7110360B1 (en) * | 2001-11-05 | 2006-09-19 | Juniper Networks, Inc. | Credit-based flow control over unreliable links |
US8418129B1 (en) | 2001-12-14 | 2013-04-09 | Qualcomm Incorporated | Method for automatically generating code to define a system of hardware elements |
US7352694B1 (en) | 2001-12-14 | 2008-04-01 | Applied Micro Circuits Corporation | System and method for tolerating data link faults in a packet communications switch fabric |
US7424013B1 (en) * | 2001-12-20 | 2008-09-09 | Applied Micro Circuits Corporation | System and method for granting arbitrated bids in the switching of information |
US7085846B2 (en) * | 2001-12-31 | 2006-08-01 | Maxxan Systems, Incorporated | Buffer to buffer credit flow control for computer network |
US7145914B2 (en) * | 2001-12-31 | 2006-12-05 | Maxxan Systems, Incorporated | System and method for controlling data paths of a network processor subsystem |
US7406038B1 (en) | 2002-04-05 | 2008-07-29 | Ciphermax, Incorporated | System and method for expansion of computer network switching system without disruption thereof |
US7307995B1 (en) | 2002-04-05 | 2007-12-11 | Ciphermax, Inc. | System and method for linking a plurality of network switches |
US7295561B1 (en) | 2002-04-05 | 2007-11-13 | Ciphermax, Inc. | Fibre channel implementation using network processors |
US20030195956A1 (en) * | 2002-04-15 | 2003-10-16 | Maxxan Systems, Inc. | System and method for allocating unique zone membership |
US20030200330A1 (en) * | 2002-04-22 | 2003-10-23 | Maxxan Systems, Inc. | System and method for load-sharing computer network switch |
US20030202510A1 (en) * | 2002-04-26 | 2003-10-30 | Maxxan Systems, Inc. | System and method for scalable switch fabric for computer network |
US7263091B1 (en) * | 2002-05-23 | 2007-08-28 | Juniper Networks, Inc. | Scalable routing system |
US20040030766A1 (en) * | 2002-08-12 | 2004-02-12 | Michael Witkowski | Method and apparatus for switch fabric configuration |
WO2004026921A1 (en) | 2002-09-20 | 2004-04-01 | Exxonmobil Chemical Patents Inc. | Polymer production at supercritical conditions |
EP1673683A4 (en) * | 2003-10-14 | 2010-06-02 | Raptor Networks Technology Inc | MEDIATION SYSTEM WITH DISTRIBUTED COUPLING FIELD |
US7852836B2 (en) * | 2003-11-19 | 2010-12-14 | Cray Inc. | Reduced arbitration routing system and method |
US7688816B2 (en) * | 2004-03-15 | 2010-03-30 | Jinsoo Park | Maintaining packet sequence using cell flow control |
US20060165081A1 (en) * | 2005-01-24 | 2006-07-27 | International Business Machines Corporation | Deflection-routing and scheduling in a crossbar switch |
US8135024B2 (en) * | 2005-11-14 | 2012-03-13 | Corning Incorporated | Method and system to reduce interconnect latency |
US20080151894A1 (en) * | 2006-12-22 | 2008-06-26 | Intel Corporation | Selectively hybrid input and output queued router |
US7904602B2 (en) * | 2008-02-05 | 2011-03-08 | Raptor Networks Technology, Inc. | Distributed computing bus |
US8862706B2 (en) | 2007-12-14 | 2014-10-14 | Nant Holdings Ip, Llc | Hybrid transport—application network fabric apparatus |
CN101272348B (zh) * | 2008-04-30 | 2012-07-04 | 杭州华三通信技术有限公司 | 一种带宽控制的方法和*** |
CN101286947B (zh) | 2008-05-30 | 2010-12-01 | 杭州华三通信技术有限公司 | 数据输出控制方法和装置 |
WO2010045732A1 (en) | 2008-10-20 | 2010-04-29 | Tadeusz Szymanski | Crossbar switch and recursive scheduling |
US8868700B2 (en) | 2010-12-28 | 2014-10-21 | Nant Holdings Ip, Llc | Distributed network interfaces for application cloaking and spoofing |
US10212101B2 (en) | 2014-01-14 | 2019-02-19 | Nant Holdings Ip, Llc | Low level provisioning of network fabrics |
US9917728B2 (en) | 2014-01-14 | 2018-03-13 | Nant Holdings Ip, Llc | Software-based fabric enablement |
KR102269068B1 (ko) * | 2017-03-10 | 2021-06-24 | 한국전자통신연구원 | 스위칭을 위한 스케줄링 방법 및 스케줄러 |
US11165721B1 (en) * | 2020-04-09 | 2021-11-02 | Arista Networks, Inc. | Reprogramming multicast replication using real-time buffer feedback |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4475192A (en) * | 1982-02-16 | 1984-10-02 | At&T Bell Laboratories | Data packet flow control scheme for switching networks |
JPH01165246A (ja) | 1987-12-22 | 1989-06-29 | Oki Electric Ind Co Ltd | パケット交換方式 |
MX9308193A (es) | 1993-01-29 | 1995-01-31 | Ericsson Telefon Ab L M | Conmutador atm de acceso controlado. |
US5515359A (en) * | 1994-08-26 | 1996-05-07 | Mitsubishi Electric Research Laboratories, Inc. | Credit enhanced proportional rate control system |
GB9511844D0 (en) * | 1995-06-10 | 1995-08-09 | Plessey Telecomm | Atm local access |
US5732087A (en) * | 1996-05-10 | 1998-03-24 | Mitsubishi Electric Information Technology Center America, Inc. | ATM local area network switch with dual queues |
US6747954B1 (en) * | 1997-12-19 | 2004-06-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Asynchronous transfer mode switch providing pollstate status information |
CA2295065A1 (en) * | 1998-04-29 | 1999-11-04 | Shang-Tse Chuang | Packet-switch system |
US6501731B1 (en) * | 1998-06-27 | 2002-12-31 | Intel Corporation | CBR/VBR traffic scheduler |
GB9828144D0 (en) | 1998-12-22 | 1999-02-17 | Power X Limited | Data switching apparatus |
US6721271B1 (en) | 1999-02-04 | 2004-04-13 | Nortel Networks Limited | Rate-controlled multi-class high-capacity packet switch |
-
2000
- 2000-06-06 GB GBGB0013571.5A patent/GB0013571D0/en not_active Ceased
-
2001
- 2001-06-01 KR KR1020027016679A patent/KR20030051433A/ko not_active Application Discontinuation
- 2001-06-01 EP EP01936637A patent/EP1287648B1/en not_active Expired - Lifetime
- 2001-06-01 DE DE60126934T patent/DE60126934T2/de not_active Expired - Fee Related
- 2001-06-01 AU AU2001262507A patent/AU2001262507A1/en not_active Abandoned
- 2001-06-01 WO PCT/GB2001/002443 patent/WO2001095576A1/en active IP Right Grant
- 2001-06-01 CN CN01813144A patent/CN1443413A/zh active Pending
- 2001-06-01 JP JP2002502991A patent/JP2003536323A/ja active Pending
- 2001-06-05 US US09/874,500 patent/US6876663B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008166888A (ja) * | 2006-12-27 | 2008-07-17 | Hitachi Ltd | スイッチにおける優先度帯域制御方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1287648B1 (en) | 2007-02-28 |
CN1443413A (zh) | 2003-09-17 |
EP1287648A1 (en) | 2003-03-05 |
GB0013571D0 (en) | 2000-07-26 |
US6876663B2 (en) | 2005-04-05 |
US20020012344A1 (en) | 2002-01-31 |
KR20030051433A (ko) | 2003-06-25 |
WO2001095576A1 (en) | 2001-12-13 |
DE60126934D1 (de) | 2007-04-12 |
DE60126934T2 (de) | 2007-11-15 |
AU2001262507A1 (en) | 2001-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2003536323A (ja) | スイッチシステム | |
EP0459752B1 (en) | Network adapter using buffers and multiple descriptor rings | |
US6965563B1 (en) | Resource reservation system in a computer network to support end-to-end quality-of-service constraints | |
US6606326B1 (en) | Packet switch employing dynamic transfer of data packet from central shared queue path to cross-point switching matrix path | |
US9094327B2 (en) | Prioritization and preemption of data frames over a switching fabric | |
JP3517245B2 (ja) | パケットスイッチングネットワーク内のルーチングデバイス出力アクセス用調整方法および装置 | |
US7042842B2 (en) | Fiber channel switch | |
JP2540930B2 (ja) | 輻輳制御装置 | |
EP1006694B1 (en) | Communications method and communications system | |
US7613849B2 (en) | Integrated circuit and method for transaction abortion | |
JP2000503828A (ja) | データネットワーク上でデータパケットをスイッチングする方法および装置 | |
JP2002533994A (ja) | データ交換方法およびその装置 | |
WO1999000939A1 (en) | Shared memory management in a switched network element | |
JPH0748745B2 (ja) | アダプタ間のパケツト転送方法、競合解消装置、及びトークン・リング装置 | |
JP2003204347A (ja) | パケット通信装置及び該パケット通信装置を利用したパケットデータ転送制御方法 | |
GB2360168A (en) | Network switch | |
US7564860B2 (en) | Apparatus and method for workflow-based routing in a distributed architecture router | |
JP2507230B2 (ja) | インタ―フェ―ス装置および方法並びに通信アダプタ | |
US6442168B1 (en) | High speed bus structure in a multi-port bridge for a local area network | |
JP2003258932A (ja) | 相互に通信する電子装置間の順序化され、パイプライン化されたトランザクションのフローを制御するための方法およびシステム | |
JPH07283817A (ja) | Atm−lanノード間フロー制御方法 | |
JP3495042B2 (ja) | 非同期転送モード(atm)ネットワークのための方法及び装置 | |
JP2000022728A (ja) | ネットワーク装置 | |
JP2001325212A (ja) | マルチプロセッサシステムにおけるソースプロセッサから宛先プロセッサにデータブロックを送信する方法と装置 | |
JP3460080B2 (ja) | 分散管理型通信方法及び装置 |