JP3517245B2 - パケットスイッチングネットワーク内のルーチングデバイス出力アクセス用調整方法および装置 - Google Patents

パケットスイッチングネットワーク内のルーチングデバイス出力アクセス用調整方法および装置

Info

Publication number
JP3517245B2
JP3517245B2 JP53032897A JP53032897A JP3517245B2 JP 3517245 B2 JP3517245 B2 JP 3517245B2 JP 53032897 A JP53032897 A JP 53032897A JP 53032897 A JP53032897 A JP 53032897A JP 3517245 B2 JP3517245 B2 JP 3517245B2
Authority
JP
Japan
Prior art keywords
buffer
port
router
flow control
bsm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP53032897A
Other languages
English (en)
Other versions
JPH11504781A (ja
Inventor
ウィッキー,トーマス,マーチン
ラーソン,ジェフリー,ディー.
ミュー,アルバート
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPH11504781A publication Critical patent/JPH11504781A/ja
Application granted granted Critical
Publication of JP3517245B2 publication Critical patent/JP3517245B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/104Asynchronous transfer mode [ATM] switching fabrics
    • H04L49/105ATM switching elements
    • H04L49/106ATM switching elements using space switching, e.g. crossbar or matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5619Network Node Interface, e.g. tandem connections, transit switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5651Priority, marking, classes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】 発明の分野 この発明は一般的にはアービタに係わり、特にパケッ
トスイッチングネットワークにおけるルーチングデバイ
スの出力へのアクセス用アービタに関する。
発明の背景 パケットスイッチングネットワークにおけるルーチン
グデバイスは、パケットがその最終宛先に到達するまで
1つのルーチングデバイスから他のルーチングデバイス
に向かうルートを選択する。ルーチングデバイスはしば
しば、パケットが転送され得る速度を一時的に越える速
度でパケットを受け取り、従って、ルーチングデバイス
は選択された時間にどのパケットが送信されるかを決定
するために調停方法を使用する。
パケットスイッチングネットワークは、固定されたプ
ライオリティあるいは巡回方法のような種々の調停方法
を使用する。しかしながら、従来の調停方法は、データ
パケットが出力されることを許容する以前に、次の宛先
ルーチングデバイスがデータパケットを受信する容量を
有することを確実にすることのないものに限定される。
従って、制限された出力リソースはしばしば、完了の不
可能な処理において浪費される。さらに、従来の調停方
法の多くは、マイクロプロセッサに基づく方法以上に本
質的に高性能を具備するハードウエア中に容易にまたは
経済的に組み込まれない。
非同期転送モード(ATM)ネットワークにおいて、次
の宛先ルーチングデバイスの記憶容量を推定するルーチ
ングデバイスは周知である。この推定は、ネットワーク
の利用可能な帯域幅およびパケットが転送されている速
度に基づいている。しかしながら、この推定方法は、次
の宛先ルーチングデバイス中で利用可能な正確な領域量
を記憶できない、従って十分な領域が利用可能であるこ
とを保証することのできない方法に限定される。従っ
て、パケットは時々パケットを受信することのできない
ルーチングデバイスに送信され、このような誤りはネッ
トワークの性能を顕著に低減し得る。このような誤りの
危険性は転送速度に比例するので、危険性を最小にする
ためにはパケット転送速度は減少されねばならない。こ
の制限は、マルチプロセッサベースネットワークがATM
ネットワークにおけるよりも極めて高速度でデータパケ
ットを転送するので、マルチプロセッサベースパケット
スイッチングネットワーク中で特に厳しいものとなる。
さらに、アービタが固定されたプライオリティ調停方
法を使用する時には、十分な領域がパケットに対してだ
けでなく将来のより高いプライオリティのトラヒックに
対しても存在することを保証されることが望ましい。さ
もなければ、より低いプライオリティのトラヒックは、
より高いプライオリティのトラヒックを遅延するかもし
れない。ATMネットワーク中で使用される方法は、より
低いプライオリティのパケットの転送前により高いプラ
イオリティのパケットに対して十分な領域が存在するこ
とを確認できないものに限定される。従って、次の宛先
ルーチングデバイスがパケットおよび存在する場合には
将来のより高いプライオリティのパケットの双方を受信
するための容量を有しているならば、データパケットが
出力にアクセスすることだけを許容するパケットスイッ
チングネットワーク中の調停方法に適合する必要があ
る。さらに、経済的にハードウエア内に組み込まれ得る
調停方法を有することも望まれている。
発明の要約 本発明は、パケットスイッチングネットワークにおけ
るルーチングデバイスの出力へのアクセスの調整方法お
よび装置を提供する。本発明のアービタは、ルーチング
デバイスの出力にアクセスするためのリクエストを受信
する。アービタは、現在の調停サイクル中で最も高いプ
ライオリティを有するリクエストを選択し、最高のプラ
イオリティを有する1以上のリクエストが存在する場合
には、アービタはこれらのリクエストのうち時間的に最
初に受信されたものを選択する。これは高いプライオリ
ティのパケットが最初に許可され、同じプライオリティ
のパケットはそれらが受信された順序で転送されること
を確実にする。さらに、統計的によりいっぱいのバッフ
ァはほとんど空のバッファよりもより古いリクエストを
持っている傾向があるので、ほとんどいっぱいのバッフ
ァはほとんどからのバッファよりも大抵は優先される。
これは、ルーチングデバイスはいっぱいのバッファを有
する入力ポートにパケットを受信することができないの
で望ましいものである。
受信入力バッファがデータパケットを受信するために
十分な容量を有しているならば、アービタは出力にアク
セスすることだけを許容する。高いプライオリティのリ
クエストに対して、入力バッファはデータパケットを記
憶するための十分な領域を有していなければならない。
中および低いプライオリティのパケットに対して、入力
バッファはより高いプライオリティのパケットに対して
も十分な領域を有していなければならい。この方法はよ
り低いプライオリティのトラヒックが高いプライオリテ
ィのトラヒックを遅延させることを防止し、限られたリ
ソースが完了が不可能な転送において浪費されることを
防止する。本発明の調停方法は、経済的にハードウエア
中に組み込むことを可能とする。
図面の簡単な説明 図1は、本発明にかかる第1のルーチングデバイスの
ブロックダイヤグラムである。
図2は、第1のルーチングデバイスおよび相互に結合
された本発明にかかる第2のルーチングデバイスのブロ
ックダイヤグラムである。
図3aは、本発明にかかる第1のルーチングデバイスの
2つのポートのブロックダイヤグラムである。
図3bは、本発明にかかる第2のルーチングデバイスの
2つのポートのブロックダイヤグラムである。
図4aは、本発明のアービタを示すブロックダイヤグラ
ムである。
図4bは、本発明のアービタ中のメモリ要素を示すブロ
ックダイヤグラムである。
図5は、本発明の調停方法を示すフローチャートであ
る。
図6は、本発明の調停方法の例を示すフローチャート
である。
図7は、本発明の実施例によるノード、ルータおよび
リンクを含むネットワークを示す図である。
図8は、本発明の実施例による図7に示すネットワー
ク中の2つのルータの詳細図である。
図9は、本発明の実施例による図8に示すネットワー
ク中の2つのルータの一層詳細な図である。
図10は、本発明の実施例によるデータ受信ルータ中の
2つのレジスタを表す値を含むバッファ状態メッセージ
に応答するデータ転送ルータ内のバッファの状態を示す
状態線図である。
図11は、本発明の実施例によるデータ受信ルータ中の
1つのレジスタを表す値を含むバッファ状態メッセージ
に応答するデータ転送ルータ内のバッファの状態を示す
状態線図である。
図12は、本発明の実施例による転送プロトコルのフロ
ー線図である。
図13は、本発明の実施例によるバッファ状態メッセー
ジ発生および転送のフロー線図である。
図14は、本発明の実施例によるバッファ状態メッセー
ジ受信のフロー線図である。
図15(a)−15(g)は、本発明の望ましい実施例に
よるレジスタ値の例である。
望ましい実施例の詳細な説明 第I節 図1は、本発明に係るルーチングデバイス10のブロッ
クダイヤグラムである。ルーチングデバイスはパケット
スイッチングネットワークの一部であり、ルーチングデ
バイスのネットワークはパケットがその最終宛先に到達
するまで1つのルーチングデバイスから他のルーチング
デバイスへデータパケットをルート転送する。(なお、
本明細書において論議されるデータパケットは、フレー
ムヘッダを含むために、時々″フレーム”と記載され
る。フレームヘッダは、ネットワークを介してパケット
をルート転送するために必要な情報を記憶している。)
1つの実施例において、ルーチングデバイス10はキャッ
シュコヒーレント・ノンユニフォームメモリアクセスマ
ルチプロセッサシステム(ccNUMA)中で使用される。
ルーチングデバイス10はポート1−6でデータパケッ
トを受信し、ポート1−6からデータパケットを転送す
る。ポート1−6は同一であり、簡略化のために図1に
示されていないけれどもポート1−6のそれぞれは直接
すべての他のポートに接続されている。図1はルーチン
グデバイス10中に6つのポートを示しているけれども、
ポートの数は変更し得ることは認識されるべきである。
ルーチングデバイス10は、1つのポートにデータパケ
ットを受信し、他のポートから転送することによってパ
ケットスイッチングネットワークを介してデータパケッ
トをルート転送する。クロスバースイッチ12は、データ
パケットをルーチングデバイス内の1つのポートから他
のポートに転送する。例えば、ポート1がポート4から
出力されるべきデータパケットを受信したならば、クロ
スバースイッチ12はデータパケットをポート1からポー
ト4に転送する。クロスバースイッチ12は、周知のルー
チングデバイスにおいて見られる従来型のスイッチであ
ってよく、あるいは1996年2月22日にJeffrey D.Larson
およびAlbert Muによって出願された米国出願No.PCT/US
97/02941″電圧の揺れを少なくし、かつ、内部のブロッ
ク化データパスを生じないクロスバースイッチおよびそ
の方法″において開示されたクロスバースイッチであっ
てもよい。
図2は、他のルーチングデバイス14に接続されたルー
チングデバイス10を示している。ルーチングデバイス14
内のポート7−12は、ルーチングデバイス10内のポート
1−6と同一である。ポート1−12のそれぞれは入力お
よび出力を具備するが、入力および出力は共にルーチン
グデバイスの同一ポートに接続される。例えば、ポート
6の入力はポート7の出力に接続され、ポート6の出力
はポート7の入力に接続される。
本発明のポート操作および調停方法が、データパケッ
トをルーチングデバイス10のポート1からルーチングデ
バイス14のポート7にルート転送する処理について記述
される。ポート1および7の選択は任意であり、この方
法に関する記述はすべてのポートに対して適用される。
データパケットをルーチングデバイス10のポート1から
ルーチングデバイス14のポート7にルート転送するため
に、ルーチングデバイス10はデータパケットをポート1
からポート6に転送する。そしてそれはパケットをポー
ト6からポート7に転送する。
図3aはルーチングデバイス10のポートおよび1ポート
6を示し、図3bはルーチングデバイス14のポート7を示
している。各ポートはデータシンクロナイザ、フロー制
御レシーバユニット、フロー制御トランスミッタユニッ
ト、変更ユニット、マルチプレクサ、入力バッファおよ
びアービタを有する。簡略化のために図示していない
が、ルーチングデバイス内で各アービタはすべての入力
バッファおよびすべてのデータシンクロナイザに接続さ
れている。
ポート1は周知のデータシンクロナイザ110において
ポート7を宛先とするデータパケットを受信する。デー
タシンクロナイザ110は、データパケットのフレームヘ
ッダをルーチングデバイス10のクロック信号と同期させ
るために周知のFIFO同期を使用する。データシンクロナ
イザ110がフレームヘッダを同期させた後、データパケ
ットは1つの実施例においては6つのパケットを記憶す
ることのできる周知のバッファである入力バッファ112
中に記憶される。
ポート6はポート7に接続されているので、ポート7
で受信されるためにはデータパケットはポート6から出
力されなければならない。図4aに図示されているアービ
タ614は、ポート6の出力に対するアクセスを制御す
る。簡略化のために、図4aはポート1からポート7への
データパケットのルート転送を説明するために有用なア
ービタ614に対する限られた接続だけを示している。な
お、アービタはそれが配置されているポートに対するア
クセスだけを制御する。
アービタ614はプライオリティレベルの数に対応した
数のメモリ素子602、604、606を含んでいる。メモリ素
子602、604、606のそれぞれは1つのプライオリティレ
ベルのリクエストを記憶する。メモリ素子602は高いプ
ライオリティリクエストを記憶し、メモリ素子604は中
間のプライオリティリクエストを記憶し、メモリ素子60
6は低いプライオリティリクエストを記憶する。
アービタ614はコントローラ608をも含むが、これは以
下に記述され、図5に示される方法に従って、どのリク
エストを許容するかを決定する。このことは、通常の論
理回路を使用するコントローラ608中において実現され
る。
ポート7を宛先とするデータパケットの受信に応答し
て、データシンクロナイザ110は、メモリ素子602、60
4、606のそれぞれにバリッドビットを送信する。2つの
メモリ素子が低バリッドビットを受信し、メモリ素子の
1つが高バリッドビットを受信した場合は、アービタ61
4は高バリッドビットをポート6の出力へのアクセスリ
クエストと認識する。データシンクロナイザ110は、デ
ータパケットのプライオリティに対応するメモリ素子に
高バリッドビットを送信する。例えば、パケットが中間
のプライオリティを有していれば、メモリ素子604が高
バリッドビットを受信し、メモリ素子602および606は低
バリッドビットを受信する。
データシンクロナイザ110は、またアービタ614に、パ
ケットが記憶されている入力バッファのアドレスを示す
数ビットを送信する。そのビット数はlog2Nに等しい。
ここでNは入力バッファ112中のバッファ要素の数であ
る。高バリッドビットを受信したメモリ素子はアドレス
識別ビットを受信する。ある実施例においては、これら
のアドレス識別ビットはルーチングデバイス10中のすべ
てのアービタ中の他のメモリ素子にも送信される。しか
しながら、高バリッドビットを受信していないメモリ素
子はこの情報を記憶しない。
図4bを参照すると、メモリ素子602がより詳細に図示
されている。メモリ素子604および606も同一である。メ
モリ素子602は、周知のFIFOであってよいメモリまたは
記憶素子640−650を含んでいる。記憶素子640−650の数
は、ルーチングデバイスのポートの数に対応している。
各入力ポート中の各データシンクロナイザは、別個の記
憶素子640−650に接続されている。
記憶素子640−650は、データシンクロナイザによって
送信されたバリッドおよびアドレス識別ビットを受信す
る。高バリッドビットが1またはそれ以上の記憶素子64
0−650で受信されると、すべての記憶素子640−650の入
力が、記憶素子640−650中にクロック移動される。すべ
ての記憶素子の入力が同時にクロック移動されるので、
メモリ素子602、604、606は多重入力を有することがで
きる。従って、アービタ614は、同じプライオリティに
対する異なるリクエストを同時に受信することが可能で
ある。記憶素子640−650は、受信された順序でビットを
出力し、一緒にクロック入力されたビットは一緒に出力
される。もし2またはそれ以上の高バリッドビットが同
時に受信されたならば、コントローラ652は最低入力ポ
ートにおいて受信された高バリッドビットを最初に出力
するであろう。コントローラ652は、入力ポートの任意
の順序に基づいてどのバリッドビットを出力するかを決
定できることが理解される。コントローラ652の動作は
通常のロジック回路で実現される。
ポート7中の受信入力バッファ712中に適当な領域が
ある場合のみ、アービタ614はポート6の出力にアクセ
スすることを許容する。フロー制御受信ユニット616は
入力バッファ712の空き容量を示すバッファ状態メッセ
ージを受信し、存在するどのプライオリティのリクエス
トが許容され得るかをアービタ614に通知する。もし入
力バッファ712中に使用可能な少なくとも3つの領域が
存在すれば、フロー制御レシーバ616はどのプライオリ
ティのリクエストも許容されることを示す信号をアサー
ト(assert)する。入力バッファ712中に使用可能な2
つの領域だけが存在するならば、フロー制御レシーバ61
6は中プライオリティリクエストまたは高プライオリテ
ィリクエストのみが許容されることを示す信号を発生す
る。入力バッファ612中に使用可能な1つの領域だけが
存在するならば、フロー制御レシーバ616は高プライオ
リティリクエストのみが許容されることを示す信号を発
生する。この方法は、入力バッファ712がデータパケッ
トを受信するのに十分な領域を有することを保証する。
さらに、もしデータパケットが中または低プライオリテ
ィを有しているならば、この方法はより高プライオリテ
ィのトラヒックに対して入力バッファ712中に領域が確
保されることを確実にする。もし、より高いプライオリ
ティのトラヒックに対して領域が確保されないならば、
より高いプライオリティのリクエストがより低いプライ
オリティのリクエストによって引き止められることにな
る。
フロー制御トランスミッタ718は、入力バッファ712の
空き容量を監視する。これは、フロー制御レシーバ616
で受信されるバッファ状態メッセージを発生する。この
バッファ状態メッセージは、フロー制御トランスミッタ
718から周知のマルチプレクサ722に移動し、マルチプレ
クサ22はアービタ714がポート空き信号をアサートした
ときにバッファ状態メッセージを出力する。アービタ71
4は、ポート7の出力にアクセスするどのようなリクエ
ストも許容されないことに応答して、またはフロー制御
トランスミッタ718からの強制信号の受信に応答してポ
ート空き信号をアサートする。データパケットの不必要
なブロッキングを避けるためにバッファ状態メッセージ
が送信されなければならないときに、フロー制御トラン
スミッタ718は強制信号を発生する。マルチプレクサ722
から出力されるバッファ状態メッセージはデータシンク
ロナイザ610で受信され、データシンクロナイザ610はそ
のメッセージの同期をとり、かつそれらをフロー制御レ
シーバ616に転送する。
アービタ614が、データパケットがポート6の出力に
アクセスすることを許容したときに、それは入力バッフ
ァ112、クロスバースイッチ12および変更ユニット620に
許容信号を送信する。許容信号の受信に応答して、入力
バッファ112はデータパケットをクロスバースイッチ12
に転送する。許容信号は完全なデータパケットのクロス
バースイッチ12への転送中はアサートとされたままであ
る。
許容信号はクロスバースイッチ12をして許容信号の受
信に応答してデータパケットのヘッダを変更する変更ユ
ニット620にデータパケットを送信することを可能なら
しめる。周知の方法を使用すれば、データパケットが入
力バッファ712内に記憶されるであろう場所のアドレス
を示すためにヘッダは変更される。そして、変更された
データパケットはマルチプレクサ622に送信され、マル
チプレクサ622はアービタ614がポート空き信号をアサー
トしなかったならば、データパケットを出力。
許容の第1サイクルにおいて、フロー制御レシーバユ
ニット616はアービタ614から新たな許容信号を受信す
る。新たな許容信号は、フロー制御レシーバ616に入力
バッファ712内で利用可能な1以下の領域が存在するこ
とを通知する。必要があれば、フロー制御レシーバ616
は、パケットが入力バッファ712に送信されるために次
のパケットがどのプライオリティにあるべきかの表示を
調整する。
図5のフローチャートは本発明の調停方法を図示して
いる。調停サイクルを開始するために、アービタ614は
フロー制御トランスミッタ618からの強制信号がアサー
トされているか、またはポート6の出力にアクセスする
ためのリクエストが存在するかを502で決定する。リク
エストが存在しないか、または強制信号がアサートされ
ていれば、アービタ614は504でポート空き信号をアサー
トし、ステップ502に戻る。
もしリクエストが存在すれば、アービタ614は506で現
在の調停サイクルにおいて最高のプライオリティを有す
る1以上のリクエストを選択する。3レベルのプライオ
リティが存在するが、他の複数のプライオリティレベル
が存在してもよい。3つのプライオリティレベルは高、
中および低であり、高プライオリティリクエストは中お
よび低プライオリティリクエストよりも先に許容され、
中プライオリティリクエストは低プライオリティリクエ
ストよりも先に許容される。
そして、アービタ614は508で、現在の調停サイクル中
に1以上の最高プライオリティのリクエストが存在する
かを決定する。そのようなリクエストの存在に応答し
て、アービタ614は510で、最初に受信されたそのような
リクエストを選択する。これはパケットが同じプライオ
リティを有していること、および同一出力に対する競合
が受信された順番に転送されることを確実にする。さも
なければ、同一プライオリティのパケットが順不同に到
達したならば、宛先ノードまたはルーチングデバイスに
おいて、それらを並べ替えなければならず発信元から宛
先への転送時間が増加し宛先ノードの経済的な全ハード
ウエアによる実現を妨げるであろう。あるプライオリテ
ィレベル内で最初に受信されたパケットを選択するよう
にすれば、パケットが同一プライオリティの他のパケッ
トによって不当に遅延させられることが防止される。な
お、メモリ素子602、604および606が図4bに記載されて
いるようにFIFOで構成されているならば、FIFOは自動的
に受信された最初のリクエストを出力するので、コント
ローラ608はステップ508および510を実行する必要はな
い。
もし2以上のリクエストが同時に受信され、これらが
受信された最初のリクエストであるならば、アービタ61
4は512、514で、最低番号の入力ポートに到達したパケ
ットに対応するリクエストを選択する。アービタ614
は、ポートの任意の順序に基づいてパケットに対応する
リクエストを選択することが可能であることが理解され
る。
1つのリクエストが選択されると、アービタ614は強
制信号がアサートされたか、およびリクエストが許容さ
れることの可能なプライオリティであるかを516で決定
する。上述したように、フロー制御レシーバ616は出力
に対するアクセスを得るためにリクエストがどのプライ
オリティであるべきかをアービタ614に示す。高プライ
オリティのリクエストが許容されるためには、受信入力
バッファ内で利用可能な少なくとも1つの領域が存在す
るべきである。中プライオリティのリクエストが許容さ
れるためには、受信入力バッファ内に少なくとも2つの
空き領域が存在すべきである。これは高プライオリティ
トラヒックに対して入力バッファ内に十分な領域がまだ
存在することを保証する。低プライオリティのリクエス
トが許容されるためには、受信入力バッファ内に利用可
能な少なくとも3つの領域が存在しなければならず、こ
れによって高および中プライオリティトラヒックに対し
て入力バッファ内に十分な領域がまだ存在することを保
証する。同様に他のレベルのプライオリティを有するリ
クエストを許容するために、受信入力バッファ内で利用
可能な領域の数は、そのリクエストのプライオリティよ
り高いプライオリティの数に少くとも1を加えた数であ
るべきである。もし選択されたリクエストが許容される
ことができないものであるか、または強制信号がアサー
トされているならば、アービタ614はポート空き信号を5
17でアサートし、ステップ506に戻る。そうでなければ
アービタ614はステップ518に進む。
ステップ518において、アービタ614はポート空き信号
をデアサート(de−assert)し、許容信号および新たな
許容信号をアサートする。次のクロックサイクルにおい
て、アービタ614は520で選択されたリクエストに関連し
たデータパケットが完全にクロスバースイッチ12に転送
されたかを確かめる。もし否定されれば、アービタ614
は522で転送が完了するまで、新たな許容信号ではな
く、許容信号をアサートする。そうでなければ、アービ
タ614はポート空き信号をアサートし、524で許容信号も
新たな許容信号もアサートされていないことを確実にす
る。これは調停サイクルを完了し、アービタ614はステ
ップ502に戻る。
図6のチャートは、本発明の調停方法の例を示してい
る。時刻t1において、2つの中プライオリティリクエス
トおよび1つの低プライオリティリクエストが存在す
る。時刻t1において中プライオリティリクエストが最高
プライオリティであるので、アービタは最初の受信され
た中プライオリティリクエストを選択する。受信入力バ
ッファ内に中プライオリティリクエストのための十分な
領域が存在するので、このリクエストは許容される。
時刻t2において、高プライオリティリクエスト、中プ
ライオリティリクエストおよび低プライオリティリクエ
ストは未解決のままとされる。アービタは高プライオリ
ティリクエストを選択するが、受信入力バッファは領域
を有しないので、リクエストは許容されず、ポート空き
信号がアサートされる。時刻t3において、領域が受信入
力バッファ中で使用可能となり、アービタは高プライオ
リティリクエストを許容し、ポート空き信号をデアサー
トする。時刻t4において、アービタは強制信号を受信す
る。従って、リクエストは許容されず、ポート空き信号
がアサートされる。
第II節 本実施例において、フロー制御レシーバ616およびフ
ロー制御トランスミッタ718は、以下の説明するフロー
制御レシーバおよびフロー制御トランスミッタであり得
る。以下の説明は、出願番号 、弁護士用ドケ
ット番号2274、“フロー制御プロトコル・システムおよ
び方法”の名称で、Thomas M.Wicki,Patrick J.Hella
nd,Jeffrey D.Larson,Albert MuおよびRaghu Sastry
によって1996年2月22日に出願された米国出願の一部と
本質的に同一である。
図7は、本発明に係るノード、ルータ(ルーチングデ
バイス)およびリンクを含むネットワークを示してい
る。図7に示されているネットワークは8つのノード91
02、即ちNodeA−H9102A−H、および7つのルータ9104A
−Gを含んでいる。本発明の望ましい実施例によれば、
ネットワークは分散メモリシステムである。即ち、この
システムは物理的に分散されているアーキテクチャを有
しているが、メモリ(記憶素子)は論理的に共有されて
いる。例えば、1つのノード、例えば9102DはNodeD9102
Dが局所的であるが実際に物理的に異なる場所に配置さ
れ、異なるノード、例えばNodeA9102Aに接続されている
と信じるメモリ位置にアクセスをリクエストすることが
できる。リクエストしたノード(NodeD9102D)はメモリ
の位置を認識し、ネットワークは迅速にデータを取り出
す。分散されたメモリネットワークにおいて、重要な性
能パラメータはネットワークの待ち時間である。ネット
ワークの待ち時間は、メモリリクエストが転送された時
間から計測され、リクエストされたデータをリクエスト
ノードに提供するために必要とされる時間である。
もしNodeD9102DがNodeA9102A中に記憶されているデー
タをリクエストしたならば、NodeD9102Dはネットワーク
を介してデータリクエストを転送する。データリクエス
トは、例えばNodeD9102Dから第3のルータ9104E、第2
のルータ9104B、第1のルータ9104Aを介してNodeA9102A
に移動する。データはNodeA9102Aに接続される記憶素子
から取り出され、NodeD9102Dにネットワークを介して送
信される。データはパケットとしてネットワークを介し
て送信される。ノード、例えばNodeA9102Aはネットワー
クを介する通信路を決定し、このルーチング情報を各パ
ケットのヘッダ中に記憶する。例えば、NodeA9102Aから
NodeD9102Dに送信されるデータは、NodeA9102Aから第1
のルータ9104Aへ、そして第1のルータ9104Aから第2の
ルータ9104Bへ、第2のルータ9104Bから第3のルータ91
04Eへ、そして第3のルータ9104EからNodeD9102Dに送信
するよう各パケットに指示するルーチング情報を有する
ことができる。ネットワークの待ち時間はデータリクエ
ストを送信するリクエストノードからデータを受信する
リクエストノードの間の時間間隔であるので、各ルータ
9104によってもたらされる遅れの低減はネットワークの
待ち時間を低減する。上述したように、各ルータ9104は
受信されるべきデータを一時的に記憶するためのバッフ
ァを含んでいる。ある実施例においては、ルータのポー
ト当たり6つのバッファが存在し、ルータ上に6つのポ
ートが存在する。各バッファの大きさは、最大パケット
長さ、例えば1292ビットに等しい。しかしながら、上述
のようにルータ9104を設計したときに、価格は重要な考
慮点である。各ルータ内でバッファの数の増加は高価な
ものであり、バッファが存在する集積回路上に大きさの
制限があるのである状況においては不可能である。
ルータは相互に2重信号ライン9106によって接続され
ている。各2重信号線9106Aは双方向への、即ち、第1
のルータ9104Aの第2のポートから第1のルータ9104Aの
第2のポートへのデータの同時転送を可能としている。
2重信号線9106Aは、図8を参照しつつ以下により詳細
に説明される。
図8は、図7に示されたネットワークにおける本発明
にかかる2つのルータ9104のより詳細な図である。2重
信号線9106Aは、2つの信号線9210、9212によって表さ
れている。各信号線は一方向性である。第1の信号線92
10は、第1のルータ9104Aのポート2 9202Aから第2の
ルータ9104Bのポート6 9202Bへ情報を転送する。第2
の信号線9212は、第2のルータ9104Bのポート6 9202B
から第1のルータ9104Aのポート2 9202Aへ情報を転送
する。1つの実施例において、各図示された信号線921
0、9212は、ポート間でデータを並列に転送する43本の
信号線を含んでいる。各ルータ9104は、それぞれがクロ
スバースイッチ9206に接続される6つのポート9202を含
んでいる。さらに、各ポートは6つのアービタ9204、即
ちA1−A6に接続され、各アービタ9204はポートの1つの
出力部と関連付けられている。例えば、第1のルータ91
04A上のアービタ2 9204Aはポート2 9202Aの出力部
に接続される。ポート2 9202Aの出力部は信号線9210
に接続されている。図8に示すように、各ポート、例え
ば第1のルータ9104Aのポート2 9202Aおよび第2のル
ータ9104Bのポート6 9202Bは、異なるルータ内の1つ
のポートだけに接続される。例えば、第1のルータ9104
Aのポート2 9202Aは第2のルータ9104Bのポート6 9
202Bに接続されて、第1のルータ9104Aのポート2 920
2Aは第2のルータ9104Bのポート6 9202Bからのデータ
だけを受信し、第2のルータ9104Bのポート6 9202Bへ
だけデータを転送し、第2のルータ9104Bのポート6 9
202Bは第1のルータ9104Aのポート2 9202Aからのデー
タだけを受信し、第1のルータ9104Aのポート6 9202A
へだけデータを転送する。アービタ9204、クロスバース
イッチ9206およびポート9202の動作は、図3−9を参照
して以下により詳細に説明される。
図9は図1および2に図示された本発明にかかる第1
のルータ9104Aおよび第2のルータ9104Bのより詳細な図
である。各ルータ9104内の各ポート9202はフロー制御レ
シーバ9304、バッファアレイ9322、変更ユニット9326、
マルチプレクサ(MUX)9328、データシンクロナイザ932
4、およびフロー制御トランスミッタ9305を含んでい
る。各フロー制御レシーバ9304は、送信用非受信レジス
タ(SANRR)9308、受信現状充満レジスタ(RCFR)9310
およびバッファビジーレジスタ(BBR)9312に接続され
るバッファ状態メッセージ(BSM)レシーバ9306を含ん
でいる。各フロー制御トランスミッタ9305は次回送信メ
ッセージレジスタ(NMTSR)9318および現状充満レジス
タ(CFR)9320に接続されたBSMジェネレータ9316を含ん
でいる。ルータ9104を参照して説明されているけれど
も、各ノード9102もまたフロー制御レシーバ9304Aおよ
びフロー制御トランスミッタ9305B中にレジスタを含ん
でいる。これらポート要素の動作は、上述のデータ転送
例を参照して今から説明される。
もしNodeD9102DがNodeA9102Aによって制御されるメモ
リ素子中に記憶されたデータをリクエストした場合は、
NodeD9102DはNodeA9102Aにリクエストを転送する。Node
A9102Aはデータを取り出し、データパケットがネットワ
ークを通過する通信路を決定し、上述したように各パケ
ットのヘッダ中にこのルーチング情報を記憶する。第1
のルータ9104Aは、NodeA9102Aからパケットの形式でデ
ータを受信する。NodeA9102Aは、第1のルータ9104Aの
ポート3に接続される。従って、各パケットは、ポート
3バッファアレイ9322A中のバッファに送信される。フ
レームヘッダ中のルーチング情報は、データがトラバー
ス(traverse)すべき次のルータ9104を認識する。本実
施例において、次のルータは第2のルータ9104Bであ
る。第1のルータ9104Aのポート2 9202Aは、第2のル
ータ9104Bのポート6 9202Bに接続される。従ってフレ
ームヘッダ中のルーチング情報は、第1のルータ9104A
に対する出力ポートとしてポート2 9202Aを認識す
る。この出力ポート情報は出力ポートに関連したアービ
タ9204によって受信される。本実施例において、アービ
タ2 9204Aは第1のルータ9104Aのポート2 9202Aと
関連付けられる。アービタ2 9204Aはフロー制御レシ
ーバ9304Aから受信ポートへのデータ伝送が実行される
かを示す信号を受信する。本実施例において、受信ポー
トは、第2のルータ9104Bのポート6 9202Bである。そ
して、アービタ2 9204Aは、ポート3バッファアレイ9
322A中の第1のバッファに第1のバッファ中のデータを
クロスバーマトリックス9206に送信することをポート3
バッファアレイ9322Aに命令する信号を伝送する。アー
ビタ2 9204Aはまた、クロスバーマトリックス9206に
ポート3バッファアレイ9322A中の第1のバッファを第
1のルータ9104Aのポート2 9202Aに接続させる信号を
クロスバーマトリックス2906に送信する。アービタ9204
のそれぞれは第I節に記述されたアービタ614であって
よい。各クロスバーマトリックス9206の動作は、全体と
して参照によって識別され組み込まれる1996年2月22日
にAlbert MuおよびJeffrey D.Larsonによって出願さ
れた“電圧の揺れを少なくし、かつ、内部のブロック化
データパスを生じさせないクロスバースイッチおよびそ
の方法”と名付けられた系属中の特許出願により詳細に
記述されている。
受信ポート(第2のルータ9104Bのポート6 9202B)
へのデータ伝送を実行し得るかを示すアービタ2 9204
Aへの信号の送信前に、フロー制御レシーバ9304Aは、変
更ユニット9326Aにポート6バッファアレイ9322B中の空
のバッファ(受信バッファ)のアドレスを識別する信号
を伝送する。フロー制御レシーバ9304A中のBBR9312A
は、第2のルータ9104Bのポート6バッファアレイ9322B
中の各バッファに対する1ビットを含んでいる。BBR931
2A中の各ビットの値は、第2のルータ9104Bのポート6
バッファアレイ9322B中の関連するバッファが空である
ことを第1のルータ9104Aが決定したかを示す。BBR9312
A中のビットをセットおよびリセットする方法は、図4
−9を参照して以下に説明される。第1のルータ9104A
中の変更ユニット9326Aは、第2のルータ9104Bのポート
6バッファアレイ9322B中の空のバッファのアドレスを
受信する。この空のバッファは受信バッファである。
アービタ2 9204Aがクロスバースイッチ9206Aにポー
ト3バッファアレイ9322A内の第1のバッファを変更ユ
ニット9326に接続することを命令したときに、アービタ
2 9204Aはまた、フロー制御レシーバ9304Aにパケット
が伝送されたことを通知する信号をフロー制御レシーバ
9304Aに送信する。パケットが受信バッファに転送され
たこと、およびBSMレシーバ9306Aがパケットの受信を認
める信号を受信していないことを示すために、フロー制
御レシーバ9304A中のBSMレシーバ9306Aはポート6バッ
ファアレイ9322B中の受信バッファに関連するSANRR9308
A中のビットの値を変更する。以下に説明するように、B
BR9312の値はSANRR9308AとRCFR9310Aの論理的ORと等し
い。ポート6バッファアレイ9322B中の受信バッファに
関連するビットの値は論理1に等しく設定されるので、
BBR9312A中の関連ビットもまた論理1に等しく設定され
る。このビットが論理1に等しいとき、BBR9312A中のこ
のビットがリセットされるまでフロー制御レシーバ9304
Aから第1のルータ9104Aの変更ユニット9326Aの送信さ
れるバッファアドレス信号は受信バッファを識別しな
い、即ちBBR9312Aがリセットされるまで受信バッファ
は″ビジー″として認識される。ポート6バッファアレ
イ9322B中のすべてのバッファが、最近のBSM中の情報に
よって決定されたように、あるいは第1のルータ9104A
がパケットを第2のルータに転送したときにSANRR9308A
とBBR9312Aの設定によるフロー制御レシーバ9304Aによ
って決定されるように空でなければ、BBR9312A中の全ビ
ットは論理1に等しく設定されるであろう。このような
状況において、BSMレシーバ9306Aはアービタ2 9204A
に通知し、BBR9312A中の少なくとも1つのビットがリセ
ットされるまでアービタ2 9204Aはポート6 9202Bへ
のいかなる追加のパケット転送を許容しない。上記の説
明は全パケットに対して単一の伝送プライオリティレベ
ルだけが存在する状況を説明している。以下に説明する
ように、本発明は多重伝送プライオリティレベルを有す
るパケットをもサポートしている。
変更ユニット9326Aは、ポート3バッファアレイ9322A
からクロスバースイッチ9206Aを介してパケットを受信
し、フロー制御レシーバ9304Aから受信バッファアドレ
スを受信する。変更ユニット9326Aは、第2のルータ910
4Bのポート2 9202Aを識別するルーチング情報を削除
することによってフレームヘッダを変更し、例えばフレ
ームヘッダ中の残存するルーチング情報をシフトする。
変更ユニット9326Aは、またフレームヘッダに受信バッ
ファアドレスを加算する。変更ユニット9326Aは、2重
信号線9106Aの信号線9210を介して第2のルータ9104Bに
パケットを転送するMUX9328Aにパケットを転送する。
第2のルータ9104B中のデーターシンクロナイザ9324B
は、第1のルータ9104Aのポート2 9202Aからデータを
受信する。各ルータ9104はクロック(図示せず)を含ん
でいる。データーシンクロナイザ9324Bの1つの機能
は、受信データを第2のルータ9104B中の内部クロック
と同期させることである。データーシンクロナイザ9324
Bの他の機能は、データパケットとデータ/状態制御信
号を使用して第1のルータ9104Aから受信されるバッフ
ァ状態メッセージを区別することである。受信したパケ
ットがデータパケットであることを決定した後に、デー
ターシンクロナイザ9324Bはポート6バッファアレイ932
2B内の受信バッファにデータを転送する。フレームヘッ
ダの受信後、第2のルータは上述した手法を使用して第
3のルータ9104Eに対するデータの伝送を開始すること
ができる。しかしながら、第3のルータ9104E中のポー
ト4バッファアレイ中の全バッファが空でなければ、第
2のルータ9104Bはポート6バッファアレイ9322B内に第
1のルータ9104Aから受信したデータの記憶を継続す
る。
データがポート6バッファアレイ9322B内の受信バッ
ファによって受信されたとき、BSMトランスミッタ9305B
中のBSMジェネレータ9316Bに通知される。パケットの一
部が受信バッファによって受信されたことを示すため
に、BSMジェネレータ9316Bは受信バッファに関連するNM
TSR9318B内のビットを論理1にセットする。さらに、受
信バッファは空ではないことを示すために、BSMジェネ
レータ9316BはCFR9320B内の関連するビットを論理1に
セットする。BSMトランスミッタ9305BはBSMを発生し、
転送する。BSMの内容は図4−9を参照して以下に説明
される。BSMは第1のルータ9104Aによって送信されたパ
ケットが受信されたという確認を含み、またポート6バ
ッファアレイ中のバッファの状態、即ち各バッファが空
であるか否かの表示を含む。BSMジェネレータ9316Bは第
2のルータ9104B内のMUX9328Bの入力ポートにデータを
伝送する。さらに、BSMジェネレータ9316BはBSMが第1
のルータ9104Aに転送されることをリクエストする信号
をアービタ6 9204Bに転送することができる。アービ
タ6 9204BはMUX9328Bを制御する信号を発生する。こ
の信号がアービタ6 9204Bによって送信されると、BSM
が信号線9212を介して第1のルータ9104Aのポート2 9
202Aに送信される。
ポート2 9202A中のデータシンクロナイザ9324Aは、
BSMを受信する。データシンクロナイザ9324Aは受信され
たデータがBSMであるかを決定し、フロー制御レシーバ9
304A中のBSMレシーバ9306Aにデータを送信する。フロー
制御レシーバ9304Aは、受信されたBSMに基づいてSANRR9
308A、RCFR9310AおよびBBR9312Aを更新する。上述した
ように、これらのレジスタ中のビット値はBSMレシーバ9
306Aによって受信される。BSMレシーバ9306Aは、さらな
るパケットが第2のルータ9104Bのポート6 9202Bに送
信され得るかを決定する。フロー制御レシーバ9304Aお
よびフロー制御トランスミッタ9305Bの動作は、図4−
9を参照して以下にさらに詳細に記述される。
図10は、本発明の実施例による第2のルータ9104B中
のフロー制御トランスミッタ9305B中のNMTR9318Bおよび
CFR9320Bの双方を表す値を含むBSMに応答する第1のル
ータ9104A中のフロー制御レシーバ9304A中のバッファの
状態を描いた状態図である。本発明のフロー制御プロト
コルの利点はそれが強いことである。即ち、フロー制御
プロトコルは送信誤り、例えば失われたBSMまたは失わ
れたデータパケットを回復することが可能である。パケ
ットが第1のルータ9104Aから第2のルータ9104Bに転送
されたときに、本発明に係るフロー制御プロトコルは5
つのレジスタを利用する。
これらのレジスタは、第1のルータ9104A中のフロー
制御レシーバ9304A中のSANRR9308A、RCFR9310AおよびBB
R9312Aならびに第2のルータ9104B中のフロー制御トラ
ンスミッタ9305B中のNMTSR9318BおよびCFR9320Bであ
る。フロー制御プロトコルに関する以下の記述は、これ
ら5つのレジスタを参照するであろう。上述したよう
に、これら5つのレジスタのそれぞれはポート6バッフ
ァアレイ9322B中の各バッファに関連したビットを含ん
でいる。1つの実施例において、ポート6バッファアレ
イ9322Bは6つのバッファを含んでいる。図10および図1
1はこれら5つのレジスタのそれぞれの中の1ビットに
対する状態線図を示す。従って、単一のバッファに対す
るフロー制御プロトコルがここに示されている。
ネットワークが初期化されたときに、フロー制御レシ
ーバ9304A中のレジスタは状態IIIに関連した値に初期化
される。即ちRCFR=1、SANRR=0およびBBR=1であ
る。上述のように、BSMレシーバ9306AはBBR9312Aの値を
RDFR9310AとSANRR9308Aの論理的ORに等しく設定する。
フロー制御レシーバレジスタ、即ちSANRR9308A、RCFR93
10AおよびBBR9312Aは、それが最も保守的なフロー制御
推定であるので、状態IIIに示された値に設定される。
即ち、フロー制御レシーバレジスタが状態IIIにあると
き、状態IIIにあるときはBBR9312Aが受信バッファが空
でないことを示す論理1に等しく設定されるので、フロ
ー制御レシーバ9304Aはあらゆるデータが第2のルータ9
104Aのポート6 9202Bに送信されることを防止する。
以下に説明するように、もし受信バッファが空であれ
ば、フロー制御プロトコルはフロー制御レシーバレジス
タの状態を適切な状態を示すために変更する。上述のよ
うに、BSMはNMTSR9318BおよびCFR9320B内のビット値を
含んでいる。この例に対して、BSM=1,0は、受信バッフ
ァに関連するNMTSR9318B中のビットは論理1に等しい値
を有し、受信バッファに関連するCFR9320B中のビットは
論理零に等しい値を有していることを示す。状態IIから
状態IIIへ遷移後は、許容される2つのBSM値、即ちBSM
=1,1およびBSM=1,0だけが存在する。この理由は、NMT
SR9318Bは、(1)前回のBSMで伝送されたCFR9320Bの
値、または(2)前回のBSM内のCFR9320B中の関連する
ビットの値にかかわらずパケットが受信バッファによっ
て受信されたときは少なくとも1つのBSMに対する論理
1のいずれかであるからである。状態IIIにあるとき
は、最後のBSM内のCFR9320Bの値は論理1に等しいが、
これはRCFR9310Aがこの値を記憶するからである。従っ
て次のBSM内のNMTSR9318Bの値は、上記(1)および
(2)に基づいて論理1に等しくなければならない。し
かしながら、初期化手続の結果レジスタが状態IIIにあ
れば、BSM=0,0は有効であり、フロー制御レシーバ9304
A中のレジスタを状態IIIから状態Iに遷移させる。
BSM=1,1は受信バッファが空ではないことを示す。従
って、もしBSM=1,1がフロー制御レシーバ9304Aによっ
て受信されたならば、フロー制御レシーバ9304A内のレ
ジスタは同一状態を維持する。BSM=1,0はパケットがポ
ート6バッファアレイ9322B内の受信バッファによって
受信されたこと、第3のルータ9104Eに伝送されたこと
を示す。従って、受信バッファは現在空である。もしBS
M=1,0が受信されれば、フロー制御レシーバ9304A内の
レジスタは状態IIIから状態Iに遷移する。
状態Iにおいて、SANRR9308A、RCFR9310AおよびBBR93
12Aはすべて論理零に等しい。BBR9312Aが論理零に等し
いので、フロー制御レシーバ9304Aはアービタ2 9204A
に受信バッファが空であることを通知する。以下に説明
されるプライオリティの制限によって、パケットがポー
ト39202Aにおいて第2のルータ9104Bのポート6 9202B
に伝送されることが可能であれば、アービタ2 9204A
は、クロスバーマトリックス9206Aに対してポート3バ
ッファアレイ9322A中の伝送バッファをポート2 9202A
の変更ユニット9326Aに接続することを命じる。上述し
たように、アービタ2 9204Aは、フロー制御レシーバ9
304Aにデータは送信されていることを伝える信号もフロ
ー制御レシーバ9304Aに伝送する。このとき、BSMレシー
バ9306AはSANRR9308Aを論理1に等しく設定し、従ってB
BR9312Bを論理1に設定する。RCFR9310Aは変更されな
い。従って、データが第2のルータ9104Bに伝送された
ならば、フロー制御レシーバ9304A中のレジスタは状態I
Iに遷移する。状態Iである間にデータが送信されなけ
れば、フロー制御レシーバ9304A中のレジスタは状態I
に維持される。
状態IIにおいて、SANRR9308AおよびBBR9312Aが論理1
に等しければ、RCFR9310Aは論理零に等しい。この状態
において、フロー制御レシーバ9304A中のレジスタは、
パケットがポート6バッファアレイ9322B中の受信バッ
ファに送信されたがフロー制御レシーバ9304Aは受信バ
ッファがBSMを介してパケットを受信した確認を受信し
ていないことを示す。さらに、RCFR9310Aは最新のBSMに
基づき受信バッファが空であることを示す論理零に等し
い。状態IIにあるとき、フロー制御レシーバ9304Aは、
他のパケットが受信バッファに送信されることを許容し
ないであろう。もしBSM=0,0が受信されれば、BSMは以
前のBSMが伝送されて以来データは受信バッファ内に受
信されていないことを示すので、フロー制御レシーバ93
04A中のレジスタは状態IIを維持する。もしBSM=1,1が
受信されれば、フロー制御レシーバ9304A中のレジスタ
は状態IIIに遷移する。BSM=1,1はいくらかのパケット
データが受信レジスタによって受信され、受信レジスタ
は空ではないことを示している。いくらかのパケットデ
ータが受信されたので、SANRR9308Aは論理零にリセット
される。受信バッファが空でなのでRCRF9310Aは論理1
に設定される。状態IIIについての説明は、上記に与え
られている。もしBSM=1,0が受信されれば、フロー制御
レシーバ9304A中のレジスタは状態Iに遷移する。状態I
Iにあれば、BSM=1,0はパケットデータは受信バッファ
によって受信されたこと、およびパケットはすでに第3
のルータ9104Eに伝送されたことを示す。従って、受信
バッファは空である。パケットデータが受信バッファに
よって受信されたので、SANRR9308Aはリセットされる。
受信バッファは空であるので、RCFR9310Aは論理零に等
しく維持される。上述のように、状態Iにあるときは、
フロー制御レシーバ9304Aはアービタ29204Aに新しいパ
ケットをポート6バッファアレイ9322B中の受信バッフ
ァに伝送することを命令することができる。
上述したように、本発明に係るフロー制御プロトコル
装置および方法は強い。即ち、プロトコルは伝送誤りを
回復することができる。フロー制御プロトコルの時間切
れ特徴は、ネットワークにBSMまたはパケット伝送誤り
がなければバッファアレイ9322中の利用可能なバッファ
の数を低減することができるパケット伝送誤りを回復す
ることを可能とする。フロー制御レシーバ9304A中のレ
ジスタが状態IIにあり、第2のルータ9104B内のフロー
制御トランスミッタ9305Bが、例えばB=1,0を発生すれ
ば、フロー制御レシーバ9304A中のレジスタは状態Iに
遷移し、受信バッファは上述したように付加的なパケッ
トを受信することが可能となる。しかしながら、BSMが
フロー制御レシーバ9304Aによって受信されなかったな
らば、問題が発生する。フロー制御レシーバ9304A中の
レジスタは状態IIにあるが、フロー制御トランスミッタ
9305Bはフロー制御レシーバ9304A中のレジスタは状態I
にあると考える。即ち、フロー制御トランスミッタ9305
Bは受信バッファが伝送されたパケットを受信したこと
および受信バッファが付加的なパケットを受信すること
が可能であることを示すBSM(BSM=1,0)を発生し、伝
送した。受信バッファは空であり、新しいパケットが送
信されないので、フロー制御トランスミッタ9305BはBSM
=0,0に等しいBSMだけを発生する。フロー制御レシーバ
9304A中のレジスタは状態IIにあるので、BSM=0,0はこ
れらのレジスタの状態を変更しないであろう。従って、
第1のルータ9104A中のフロー制御レシーバ9304Aは最早
受信バッファを使用しないであろう。同様に、もし第1
のルータ9104Aから伝送されたパケットが第2のルータ9
104Bによって受信されなければ、フロー制御レシーバ93
04A中のレジスタは状態IIにあるが、第2のルータ9104B
中のフロー制御トランスミッタ9305Bは、パケットが受
信されなかったことを示すBSM=0,0に等しいBSMだけを
発生する。
上述したように、バッファは高価な貴重な資源であ
る。1つのバッファの喪失はネットワークの効率を低減
する。本発明に係るフロー制御プロトコルは、バッファ
の喪失を避けるために時間切れ機構を導入する。時間切
れ機構は、フロー制御レシーバ9304A中のレジスタが状
態IIにある間に予め定めた最小量のクロックサイクルが
発生したかを決定する。もし少なくともこの最小時間長
の間レジスタが状態IIにあれば、フロー制御レシーバ93
04Aはこのレジスタを状態Iにリセットし、誤りが発生
したことを識別するために誤りカウンタ(図示せず)を
インクリメントする。予め定められた数のクロックサイ
クルが発生したかを決定する1つの技術は、各バッファ
アレイ9322中の各バッファに対するカウンタを使用する
ことである。例えば、カウンタが受信バッファに対して
満期となれば、フロー制御レシーバ9304Aはそのレジス
タを状態IIから状態Iに遷移する。しかしながら、各カ
ウンタに要求されるビット数は約10または11ビットであ
る。各ルータ9104が各関連バッファに対して11ビットカ
ウンタを有する要求は価格を増大し、ルータ9104の潜在
能力を減少する。望ましい実施例において、36以上のバ
ッファが各ルータ9104に設置され得る。本発明は、特定
のルータに設置されるすべてのバッファに対して1つの
10ビットカウンタを使用することによって、各バッファ
のそれぞれに対して1ビットフラグだけを使用すること
によってこの課題を解決する。10ビットカウンタが、例
えば、全論理1から全論理零に遷移し、フロー制御レシ
ーバ9104A中の関連レジスタが状態IIにある各バッファ
に対してビットフラグが論理1に設定されたときに、10
ビットカウンタは連続的にクロックサイクルをカウント
する。もしフロー制御レシーバ9104A中のレジスタが状
態を変更したならば、1ビットフラグは論理零にリセッ
トされる。しかしながら、レジスタの状態が次の10ビッ
トカウンタによる全論理零の遷移を変更しなければ、時
間切れが発生するであろう。上述のように、時間切れが
発生したときに、フロー制御レシーバ9104Aはそのレジ
スタを状態Iに遷移する。
図11は本発明に係る第2のルータ9104Bのフロー制御
トランスミッタ9305B内のNMTSR9318Bだけを表す値を含
むBSMに応答する第1のルータ9104A内のフロー制御レシ
ーバ9304A内のバッファの状態を示す状態図である。フ
ロー制御レシーバ9304Aがどのように状態I、状態IIお
よび状態IIIを解釈するかは上記図10を参照して記述さ
れる。もしBSMがNMTSR9318B内に値だけを表すならば、
本発明に係るフロー制御プトコルは、BSMがNMTSR9318B
およびCFR9320Bの双方の値を表す状況とは相違して、BS
Mを解釈する。フロー制御レシーバ9304Aが初期化された
とき、フロー制御レシーバ9304A内のレジスタは状態III
を示す値に設定される。もしNMTSR9318B内の受信レジス
タに関連するビットがBSMが発生されたときに論理1に
等しければ、BSMは論理1に等しい値を有する、即ちBSM
=1である。BSM=1は(1)以前のBSMが送信されてか
らパケットデータが受信バッファによって受信されたこ
と、または(2)CFR9320Bによって示されるように以前
のBSMの送信時に受信バッファが空ではなかったことの
いずれかを示す。もしBSM=1がフロー制御レシーバ930
4Aによって、そのレジスタが状態IIIにあるときに受信
されたならば、これらのレジスタの値は変化しない。BS
M=0は受信バッファが空であることを示す。BSM=0が
フロー制御レシーバ9304Aによって受信されたときに、
レジスタの状態は状態IIIから他のパケットが受信バッ
ファに送信され得ることを示す状態Iに遷移する。
フロー制御レシーバ9104A中のレジスタの状態は、パ
ケットがポート6バッファアレイ9322B内の受信バッフ
ァに伝送されるまで状態Iを維持する。パケットが送信
されたとき、フロー制御レシーバ9304A中のレジスタの
状態は状態Iから状態IIに遷移する。もし状態IIである
間にBSM=0が受信されれば、状態の変化は発生しな
い。BSM=0は、以前のBSMの伝送以後受信バッファによ
ってデータは受信されなかったことを示す。BSM=1
は、以前のBSMの伝送以後受信バッファによっていくつ
かのデータパケットが受信されたことの確認である。従
って、もしBSM=1が受信されれば、パケットが受信バ
ッファによって受信されたのでSANRR9308Aはリセットさ
れる。しかしながら、SANRR9308Aは受信バッファがデー
タを受信後少なくとも1つのBSMに対して1に等しく設
定されなければならないので、フロー制御レシーバ9304
A中のレジスタが状態IIにあるときにBSM=1が受信され
た場合は、BSMが送信されたときに受信バッファが空で
あるかの情報は識別され得ない。従って、SANRR9308A中
の関連ビットはリセットされ、RCFR9310A中の関連ビッ
トは論理1に設定される。BSMがNMTSR9318Bだけを表す
ときは、BSMがNMTSR9318BおよびCFR9320Bの双方を表す
ときに可能なように、フロー制御レシーバ9304A中のレ
ジスタは単一のBSMに応答して状態IIから状態Iに遷移
しない。BSMがNMTSR9318Bだけを表すときに状態IIから
状態Iに遷移するために、フロー制御レシーバは少なく
とも2つのBSMを受信しなければならない。第1のBSMは
レジスタの状態IIから状態IIIへの遷移を可能とし、第
2のBSMはレジスタの状態IIIから状態Iへの遷移を可能
とする。しかしながら、もし時間切れが発生したなら
ば、フロー制御レシーバ9304A中のレジスタは状態IIか
ら状態Iへの遷移が可能である。時間切れの発生は、上
記の図10を参照して説明される。フロー制御プロトコル
装置および方法の動作は、以下に図6−9を参照してよ
り詳細に説明される。
図12は、本発明に係る第1のルータ9104Aから第2の
ルータ9104Bへのパケットの伝送に対するフロー制御プ
ロトコルのフロー線図である。アービタ2 9204Aは、
第1のルータ9104Aのポート2 9202Aを介して第2のル
ータ9104Bのポート6 9202Bに送信されるデータが存在
するかを9602で決定する。9602における送信すべきデー
タが存在するかの決定後、アービタ2 9204Aはパケッ
トのプライオリティを決定するためのフレームヘッダを
検査する。1つの実施例において、各パケットは3つの
プライオリティ、即ち高、中、低プライオリティの1つ
を有している。第1のルータ9104A中のフロー制御レシ
ーバ9304Aは9606でポート6バッファアレイ9322B中の空
のバッファの数を決定する。1つのプライオリティプロ
トコルの例において、もしただ1つのバッファが空であ
れば、フロー制御レシーバは9608でこのバッファを受信
バッファとして選択し、上述のように受信バッファのア
ドレスを変更ユニット9326Aに送信する。フロー制御レ
シーバ9304Aは、第1のルータ9104Aから第2のルータ91
04Bへパケットを伝送するためにどのパケットプライオ
リティが要求されるかを9610で決定する。例えば、ポー
ト6バッファアレイ中で少なくとも1つのバッファが空
であれば、フロー制御レシーバ9304Aは、高プライオリ
ティパケットがポート6 9202Bに伝送されることがで
きることを示す信号を高プライオリティ信号線を用いて
アービタ2に伝送する。ポート6バッファアレイ中で少
なくとも2つのバッファが空であれば、フロー制御レシ
ーバ9304Aは、高プライオリティパケットまたは中プラ
イオリティパケットがポート6 9202Bに伝送されるこ
とができることを示す信号を高プライオリティ信号線ま
たは中プライオリティ信号線を用いてアービタ2に伝送
する。ポート6バッファアレイ中で少なくとも3つのバ
ッファが空であれば、フロー制御レシーバ9304Aは、高
プライオリティパケット、中プライオリティパケットま
たは低プライオリティパケットがポート69202Bに伝送さ
れることができることを示す信号を高プライオリティ信
号線、中プライオリティ信号線または低プライオリティ
信号線を用いてアービタ2に伝送する。
アービタ2は9614で、パケットが送信される十分なプ
ライオリティを有するかを決定するために関連するプラ
イオリティ信号線で受信される信号の値を有するフレー
ムヘッダ中でパケットプライオリティを比較する。もし
プライオリティ信号線がパケットが伝送され得ないこと
を示していれば、パケットは、パケットが送信され得る
時間までポート3バッファアレイ9322A中に残留するで
あろう。もしプライオリティ信号線がパケットが送信さ
れ得ることを示しているならば、パケットは9616におい
て上述した方法で第2のルータ9104Bのポート6 9202B
に伝送される。
第2のルータ9104Bは9618でパケットを受信する。デ
ータシンクロナイザ9324Bがそれがデータパケットであ
ることを決定後、データシンクロナイザ9324Bは9620で
受信バッファ中のパケットを記憶する。データシンクロ
ナイザはデータをポート6バッファアレイ9322Bに送信
する。ポート6バッファアレイ9322B中のどのバッファ
が受信バッファであるかを決定するために、ポート6バ
ッファアレイ9322Bはフレームヘッダ中のバッファアド
レスを読むことが可能であり、フレームヘッダ中にある
アドレスのバッファにパケットを多重化する。他の技術
において、ポート6バッファアレイ9322Bはパケットが
受信される前に受信バッファを選択する。パケットが受
信された時、それは直ちに予め選択されたバッファに送
信される。フレームヘッダ中のバッファアドレスはバッ
ファタグであり、9624で実際のバッファアドレスと関連
付けられる。BSMが発生されたとき、NMTSR9318BおよびC
FR9320B中のビットは実際のバッファアドレスの代わり
にポート6バッファアレイ9322B中のバッファのバッフ
ァタグアドレスに対応する。例えば、フロー制御レシー
バ9304Aが受信バッファとして001に等しいアドレスを有
するバッファ1を選択したならば、このアドレスはフレ
ームヘッダ中に記憶される。このパケットが第2のルー
タ9104Bに伝送されたとき、データシンクロナイザ9324B
はこのパケットをポート6バッファアレイ9322Bに送信
する。ポート6バッファアレイ9322Bは、受信バッファ
としてアドレス011を有するバッファ3を選択してもよ
い。パケット中のデータはバッファ3に記憶される。し
かしながら、BSMジェネレータ9316BがNMTSR9318Bおよび
CFR9320Bを記憶したときに、バッファの状態はタグアド
レス、即ち001に対応したビット位置内に記憶される。
従って、BSMが第1のルータ9104A中のフロー制御レシー
バ9304Aによって受信されたときに、BSM中のNMTSR9318B
の値およびCFR9320Bの値は、BSMレシーバ9306Aによって
発生されたタグ値に対応している。
本実施例において、パケットが第3のルータ9104Eに
送られることが可能でない限り、全パケットは受信バッ
ファ内に記憶されない。このバーチャル・カット・スル
ー技術はフレームヘッダ内に全ルーチング情報を有する
ことによって達成される。従って、いったん第2のルー
タ9104Bがフレームヘッダを受信すると、第3のルータ9
104Eに接続される第3のルータ9104B内の出力ポート、
例えばポート2は既知であり、第2のルータ9104Bが全
パケット体を受信する前に第2のルータ9104Bは第3の
ルータ9104Eに対するフレームヘッダの伝送を開始する
ことが可能となる。
受信バッファがパケットの一部を受信した後、第2の
ルータ9104B中のフロー制御トランスミッタ9305BはBSM
ジェネレータ9316Bに受信バッファの状態を送信する。
以前のBSMが発生され、データが受信バッファで受信さ
れたときに受信バッファが空であれば、NMTSR9318B内の
関連するビットは9626で論理1に等しく設定する。上述
したように、パケットが第2のルータ9104Bによって受
信されたことの確認として機能するために、NMTSR9318B
内のビットは少なくとも1つのBSMに対して論理1の等
値を維持する。さらに、受信バッファが空でないとき、
CFR9320Bはまた9628で論理1に設定される。しかしなが
ら、もしBSMが発生される前に受信バッファが空になれ
ば、CFR9320Bは9630で受信バッファが空であることを示
す論理零にリセットされる。上述のように、NMTSR9138B
および多分CFR9320Bの内容はBSM中に含まれる。BSMの伝
送および受信に関するより詳細な説明は図13−15を参照
して以下に記述される。
図13は本発明に係るバッファ状態メッセージ発生およ
び伝送技術のフロー線図である。データパケットが第2
のルータ9104Bから第1のルータ9104Aに伝送されなかっ
たときは常に、即ちパケットが上記例に記載されたもの
から反対方向に伝送されたときは、フロー制御トランシ
ミッタ9305BはBSMを伝送する。もし反対方向へのデータ
フローが重ければ、全データパケットが送信される後ま
で、BSMは送信されない。しかしながら、フロー制御ト
ランシミッタ9305Bがフロー制御レシーバ9304Aに直ちに
BSMを伝送することが重要である状況がある。この状況
の一例は、バッファがポート6バッファアレイ9322B中
で使用可能となったときである。例えばパケットが送信
されるようにポート6バッファアレイ9322B内で十分な
バッファが使用可能となることを待っている第1のルー
タ9104A中のバッファアレイ9322中に記憶されるパケッ
トが存在するので、フロー制御レシーバ9304Aがバッフ
ァが使用可能となったことを示すBSMを受信することは
重要であるかもしれない。例えば、フロー制御レシーバ
9304A内の情報がポート6バッファアレイ9322B内で2つ
のバッファだけが使用可能であることを示していれば、
上述のプライオリティプロトコルが使用されるならば、
低プライオリティを有するパケットは第1のルータ9104
Aから第2のルータ9104Bのポート6 9202Bに送信され
得ない。第3のバッファがポート6バッファアレイ9322
B内で使用可能となったときに、この情報はBSMの形式で
フロー制御レシーバ9304Aに伝送され得る。迅速なBSMの
伝送のために、フロー制御トランスミッタは第2のルー
タ9104B中のアービタ6 9204BにBSMが可能な限り迅速
に伝送されることをリクエストする信号を送信する。ア
ービタ6 9204Bは第2のルータ9104B上のMUX9328Bを制
御する信号を発生する。この信号に応答して、例えば現
在伝送中のパケットが完全に伝送された後に、MUX9328B
は信号線9212上でBSMを多重化することが可能である。
もし9702でBSMを送信すべき時間であれば、BSMジェネ
レータ9316Bは9704でBSMを発生する。上述のように、BS
Mの内容はNMTSR9318BまたはNMTSR9318BとCFR9320Bの双
方であり得る。もしCFR9320Bの値が論理零であり以前の
BSMが送信されて以後いくつかのデータがバッファ中に
受信されたならば、バッファに関連するNMTSR9318B内の
値が上述したようにパケットが受信されたことを示すた
めに論理1に等しく設定されるという例外の下に、NMTS
R9318Bの内容は以前のBSM時のCFR9320Bの内容に等し
い。フロー制御トランシミッタ9305Bは、9706でBSMをMU
X9328Bに伝送する。そしてMUX9328Bは9708でBSMを第1
のルータ9104Aに伝送する。9706でBSMパケットをMUX932
8Bに伝送した後、フロー制御トランシミッタ9305Bは971
0でNMTSR9318BをCFR9320Bに等しく設定する。
図14は、本発明に係るバッファ状態メッセージ受信技
術のフロー線図である。データシンクロナイザ9324AがB
SMを受信し、BSMがデータパケットでなくバッファ状態
メッセージであることを9802で決定し、BSMをフロー制
御レシーバ9304Aに送信する。フロー制御レシーバ9304A
は9804で各バッファを選択し、各バッファに対して並列
に図14に残りのステップを実行する。フロー制御レシー
バ9304A中のBSMレシーバ9306Aは9806でSANRR9308A中の
各バッファに関連するビットが論理1に等しいかを決定
する。もしSANRR9308Aが論理1に等しければ、BSMレシ
ーバ9306Aは9808でBSMのNMTSR9318B部中の各バッファに
関連するビットが論理1に等しいかを決定する。NMTSR
=1であれば、SANRR9308Aは9810で論理零に設定され、
処理はステップ9812に進む。もしSANRR9308Aの値が論理
零に等しいか、もしNMTSR9318Bの値が論理零に等しけれ
ば、処理はステップ9812に進む。もしBSMがNMTSR9318B
およびCFR9320Bの双方を表すならば、RCFR9310A内の各
ビットはステップ9812でCFR9320B内の関連するビットに
等しく設定される。もしBSMがNMTSR9318Bだけを表すの
であれば、BSMレシーバ9306Aは9812でRCFR9310AをBSMの
NMTSR9318B部内の関連するビットに等しく設定する。そ
してBSMレシーバ9306Aは9814で、BBR9312A内の各ビット
をSANRR9308AおよびRCFR9310A内の関連するビットの論
理的ORに等しく設定する。
図9(a)−9(g)は、本発明に係るレジスタ値の
例である。図15において、RCFR9310A、SANRR9308Aおよ
びBBR9312Aとラベル付けされた3つのレジスタは、パケ
ットが第1のルータ9104Aから第2のルータ9104Bに伝送
されたときの、第1のルータ9104A中のフロー制御レシ
ーバ9304A中のレジスタの値に対応している。CFR9320B
およびNMTSR9318Bとラベル付けされた2つのレジスタ
は、パケットが第1のルータ9104Aから第2のルータ910
4Bに伝送されたときの、第2のルータ9104B中のフロー
制御トランスミッタ9305B中のこれらのレジスタの値に
対応している。図15(a)は、ルータ9104が初期化され
たときのレジスタの値を示している。図10および図11の
状態線図に示されているように、RCFR9310AおよびBBR93
12A内の値は論理1に等しく設定されるが、残りのレジ
スタの値は論理零に設定されたままである。フロー制御
トランスミッタ9305Bは、上述したように第1のBSMを発
生し、それをフロー制御レシーバ9304Aに伝送する。第
1のBSM受信後のレジスタの値は図15(b)に示されて
いる。第1のBSMは、BSMのサイズに応じてBSM=0,0また
はBSM=0のいずれかに等しい。いずれの状況であって
も、フロー制御レシーバ9304Aのレジスタは状態IIIから
状態Iに遷移する。この例の残りの部分は、上述したよ
うにポート6バッファアレイ9322B中の第1のバッファ
またはタグ001に関連するバッファを含む。第1のルー
タ9104Aはパケットを第2のルータ9104Bに伝送する。パ
ケット伝送後のレジスタの状態は、図15(c)に示され
ている。図15(c)において、第1のルータ9104Aはパ
ケットを送信したが確認信号を受信しなかったのでSANR
R9308Aは論理1に等しく設定される。SANRR9308Aは論理
1に等しく設定されているので、BBR9312Aもまた論理1
に設定される。
パケットがポート6バッファアレイ9322Bによって受
信され、フロー制御トランスミッタはNMTSR9318Bおよび
RCFR9320Bを更新した後、レジスタの値は図15(d)に
示される値となる。図15(d)において、BSMがフロー
制御レシーバ9304Aによって受信されていないので、SAN
RR9308A、RCFR9310AおよびBBR9312Aの値は変化しなかっ
た。しかしながら、第1のBSMが送信された後にデータ
がポート6バッファアレイ9322Bによって受信されたの
で、NMTSR9318B内の第1ビットは論理1に等しい。第1
のバッファは空ではないので、CFR9320B内の第1ビット
もまた論理1に設定される。しかしながら、第2のBSM
が送信される前に、パケットが第3のルータ9104Eに伝
送され、第1のバッファは空となる。従って、第2のBS
Mが発生されたときのCFR9320Bの値は、論理零に等し
い。これは図15(e)に示されている。レジスタの値が
図15(e)に示されているようであるときは、フロー制
御トランスミッタ9305Bは第2のBSMを発生し伝送する。
もし第2のBSMがNMTSR9318BおよびCFR9320Bの双方を含
むならば、フロー制御レシーバ9304A内のレジスタの値
は第2のBSMの受信後、図15(g)に示すものとなる。
図15(g)において、SANRR9308A、RCFR9310AおよびBBR
9312A内の全ビットの値は論理零に等しくなる。CFR9320
Bの値がNMTSR9318B内に記憶されるので、フロー制御ト
ランスミッタ9305B中のレジスタの値も全て論理零に等
しい。これは、図10に示す状態IIから状態Iに遷移した
フロー制御レシーバ9304A内のレジスタに等しい。もし
第2のBSMがNMTSR9318Bだけを含むときは、フロー制御
レシーバ9304Aが第2のBSMを受信した後のレジスタの値
は図15(f)に示すものとなる。これは、図11に示す状
態IIから状態IIIに遷移したフロー制御レシーバ9304A内
のレジスタに等しい。以後は、フロー制御トランスミッ
タ9305Bは、NMTSR9318Bの値だけを含む第3のBSMを発生
し伝送するであろう。第3のBSMを受信後、レジスタの
値は図15(g)に示すようになる。これは図11に示す状
態IIIから状態Iに遷移したフロー制御レシーバ9304A内
のレジスタに等しい。
フロントページの続き (72)発明者 ミュー,アルバート アメリカ合衆国,カリフォルニア 95035,ミルピタス,サンダルウッド レーン 1051 (56)参考文献 特開 平7−297840(JP,A) 米国特許5434848(US,A) (58)調査した分野(Int.Cl.7,DB名) H04L 12/00

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】出力へのアクセスが許容されたデータパケ
    ットが第2のルーチングデバイスの受信入力バッファに
    伝送されるパケットスイッチネットワークにおける第1
    のルーチングデバイスの出力へのアクセスの調整方法で
    あって、 出力にアクセスするためにデータパケットから少なくと
    も1つのリクエストを受信する段階と、 リクエストを選択する段階と、 第2のルーチングデバイスからの、受信入力バッファの
    空き容量の通知を受信する段階と、 該空き容量の通知に基いて第2のルーチングデバイスの
    受信入力バッファがデータパケットを受信するための容
    量を有するかを決定する段階と、 受信入力バッファがデータパケットを受信するための容
    量を有するという決定に応答して、選択されたリクエス
    トを許容する段階と、 受信入力バッファがデータパケットを受信するための容
    量を有しないという決定に応答して、選択されたリクエ
    ストを許容しない段階と、を具備する調整方法。
  2. 【請求項2】選択されたリクエストがプライオリティを
    有し、 前記決定する段階が、受信入力バッファの空き容量から
    選択されたリクエストが許容される最低のプライオリテ
    ィを決定する段階を含むものである請求項1に記載の調
    整方法。
  3. 【請求項3】出力へのアクセスが許容されたデータパケ
    ットが第2のルーチングデバイスの受信入力バッファに
    伝送されるパケットスイッチネットワークにおける第1
    のルーチングデバイスの出力へのアクセスの調整装置で
    あって、 出力にアクセスするためのリクエストを受信し記憶する
    記憶デバイスと、 第2のルーチングデバイスからの、受信入力バッファの
    空き容量の通知を受信する手段と、 リクエストを選択し、該空き容量の通知に基いて第2の
    ルーチングデバイスの受信入力バッファがデータパケッ
    トを受信するための容量を有するかを決定し、 受信入力バッファがデータパケットを受信するための容
    量を有することに応答して、選択されたリクエストを許
    容するために、前記記憶デバイスに接続されるコントロ
    ーラと、を具備する調整装置。
JP53032897A 1996-02-22 1997-02-20 パケットスイッチングネットワーク内のルーチングデバイス出力アクセス用調整方法および装置 Expired - Fee Related JP3517245B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/603,880 US5892766A (en) 1996-02-22 1996-02-22 Method and apparatus for coordinating access to an output of a routing device in a packet switching network
US08/603,880 1996-02-22
PCT/US1997/002698 WO1997031460A1 (en) 1996-02-22 1997-02-20 Method and apparatus for coordinating access to an output of a routing device in a packet switching network

Publications (2)

Publication Number Publication Date
JPH11504781A JPH11504781A (ja) 1999-04-27
JP3517245B2 true JP3517245B2 (ja) 2004-04-12

Family

ID=24417307

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53032897A Expired - Fee Related JP3517245B2 (ja) 1996-02-22 1997-02-20 パケットスイッチングネットワーク内のルーチングデバイス出力アクセス用調整方法および装置

Country Status (5)

Country Link
US (1) US5892766A (ja)
EP (1) EP0823167B1 (ja)
JP (1) JP3517245B2 (ja)
DE (1) DE69738798D1 (ja)
WO (1) WO1997031460A1 (ja)

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3335069B2 (ja) * 1996-04-11 2002-10-15 富士通株式会社 固定長セル多重伝送装置,固定長セル多重伝送方法,固定長セル送信装置及び固定長セル多重装置
US6442172B1 (en) 1996-07-11 2002-08-27 Alcatel Internetworking, Inc. Input buffering and queue status-based output control for a digital traffic switch
US5768257A (en) * 1996-07-11 1998-06-16 Xylan Corporation Input buffering/output control for a digital traffic switch
JP3590203B2 (ja) 1996-07-16 2004-11-17 株式会社東芝 記憶手段の制御方法及びその装置
US6285679B1 (en) * 1997-08-22 2001-09-04 Avici Systems, Inc. Methods and apparatus for event-driven routing
US6865154B1 (en) 1998-01-12 2005-03-08 Enterasys Networks, Inc. Method and apparatus for providing bandwidth and delay guarantees in combined input-output buffered crossbar switches that implement work-conserving arbitration algorithms
CA2318163A1 (en) * 1998-01-12 1999-07-15 Cabletron Systems, Inc. Method for providing delays independent of switch size in a crossbar switch with speedup
US6563837B2 (en) 1998-02-10 2003-05-13 Enterasys Networks, Inc. Method and apparatus for providing work-conserving properties in a non-blocking switch with limited speedup independent of switch size
US6105095A (en) * 1998-02-23 2000-08-15 Motorola, Inc. Data packet routing scheduler and method for routing data packets on a common bus
US6456628B1 (en) * 1998-04-17 2002-09-24 Intelect Communications, Inc. DSP intercommunication network
DE69940571D1 (de) * 1998-12-03 2009-04-23 Agency Ind Science Techn Kommunikationsverfahren und -system
US6324613B1 (en) * 1999-01-05 2001-11-27 Agere Systems Guardian Corp. Port router
JP3319723B2 (ja) * 1999-04-02 2002-09-03 日本電気株式会社 スイッチ及びそのスケジューラ並びにスイッチスケジューリング方法
US6891834B1 (en) * 1999-09-09 2005-05-10 Avici Systems Apparatus and method for packet scheduling
AU2001231263A1 (en) 2000-01-31 2001-08-07 Texas Instruments Incorporated Home networking over phone lines
US6731645B1 (en) * 2000-02-29 2004-05-04 International Business Machines Corporation Methods, switches, systems, and computer program products for fair transmission of data received at multiple inputs in the order received in a queued memory switch
US6961781B1 (en) * 2000-08-31 2005-11-01 Hewlett-Packard Development Company, L.P. Priority rules for reducing network message routing latency
US7012895B1 (en) 2000-11-17 2006-03-14 University Of Kentucky Research Foundation Packet-switching network with symmetrical topology and method of routing packets
US7283554B2 (en) * 2001-02-12 2007-10-16 Texas Instruments Incorporated Network manager for a hybrid network environment
US20020167902A1 (en) * 2001-04-27 2002-11-14 Foster Michael S. Method and system for performing security via virtual addressing in a communications network
AU2002258931A1 (en) * 2001-04-27 2002-11-11 The Boeing Company Method and system for virtual addressing in a communications network
US20030210685A1 (en) * 2001-04-27 2003-11-13 Foster Michael S. Method and system for interswitch deadlock avoidance in a communications network
US7068672B1 (en) * 2001-06-04 2006-06-27 Calix Networks, Inc. Asynchronous receive and transmit packet crosspoint
US7068603B2 (en) * 2001-07-06 2006-06-27 Juniper Networks, Inc. Cross-bar switch
US7120113B1 (en) * 2001-07-16 2006-10-10 Juniper Networks, Inc. Systems and methods for limiting low priority traffic from blocking high priority traffic
US6763418B1 (en) 2001-09-07 2004-07-13 Agilent Technologies, Inc. Request bus arbitration
US6950394B1 (en) 2001-09-07 2005-09-27 Agilent Technologies, Inc. Methods and systems to transfer information using an alternative routing associated with a communication network
US7237016B1 (en) 2001-09-07 2007-06-26 Palau Acquisition Corporation (Delaware) Method and system to manage resource requests utilizing link-list queues within an arbiter associated with an interconnect device
US7054330B1 (en) 2001-09-07 2006-05-30 Chou Norman C Mask-based round robin arbitration
US6920106B1 (en) 2001-09-07 2005-07-19 Agilent Technologies, Inc. Speculative loading of buffers within a port of a network device
US7274692B1 (en) 2001-10-01 2007-09-25 Advanced Micro Devices, Inc. Method and apparatus for routing packets that have multiple destinations
US7295563B2 (en) * 2001-10-01 2007-11-13 Advanced Micro Devices, Inc. Method and apparatus for routing packets that have ordering requirements
US6839794B1 (en) 2001-10-12 2005-01-04 Agilent Technologies, Inc. Method and system to map a service level associated with a packet to one of a number of data streams at an interconnect device
US6922749B1 (en) 2001-10-12 2005-07-26 Agilent Technologies, Inc. Apparatus and methodology for an input port of a switch that supports cut-through operation within the switch
US7209476B1 (en) 2001-10-12 2007-04-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and apparatus for input/output port mirroring for networking system bring-up and debug
US7290277B1 (en) * 2002-01-24 2007-10-30 Avago Technologies General Ip Pte Ltd Control of authentication data residing in a network device
US7016996B1 (en) 2002-04-15 2006-03-21 Schober Richard L Method and apparatus to detect a timeout condition for a data item within a process
US7024492B2 (en) * 2002-05-24 2006-04-04 Convedia Corporation Media bus interface arbitration for a data server
US7313090B2 (en) * 2002-09-26 2007-12-25 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for providing data packet flow control
CA2508051C (en) * 2002-12-20 2009-06-30 International Business Machines Corporation Maximum lifetime routing in wireless ad-hoc networks
KR100532416B1 (ko) * 2003-01-18 2005-11-30 삼성전자주식회사 다중 소스의 다중 채널로의 할당 방법 및 시스템
US7447205B2 (en) * 2003-05-09 2008-11-04 Hewlett-Packard Development Company, L.P. Systems and methods to insert broadcast transactions into a fast data stream of transactions
US7876763B2 (en) * 2004-08-05 2011-01-25 Cisco Technology, Inc. Pipeline scheduler including a hierarchy of schedulers and multiple scheduling lanes
US7522609B2 (en) * 2004-01-14 2009-04-21 Cisco Technology, Inc Propagation of minimum guaranteed scheduling rates among scheduling layers in a hierarchical schedule
US20060041705A1 (en) * 2004-08-20 2006-02-23 International Business Machines Corporation System and method for arbitration between shared peripheral core devices in system on chip architectures
US7599381B2 (en) * 2004-12-23 2009-10-06 Cisco Technology, Inc. Scheduling eligible entries using an approximated finish delay identified for an entry based on an associated speed group
US7672303B1 (en) * 2005-02-17 2010-03-02 Emc Corporation Arbitration method and system
US7724733B2 (en) * 2005-03-31 2010-05-25 International Business Machines Corporation Interconnecting network for switching data packets and method for switching data packets
US8018845B2 (en) * 2006-01-25 2011-09-13 Cisco Technology, Inc Sampling rate-limited traffic
US8077611B2 (en) * 2006-07-27 2011-12-13 Cisco Technology, Inc. Multilevel coupled policer
US8625624B1 (en) * 2008-06-13 2014-01-07 Cisco Technology, Inc. Self-adjusting load balancing among multiple fabric ports
US8243737B2 (en) * 2009-03-23 2012-08-14 Lsi Corporation High speed packet FIFO input buffers for switch fabric with speedup and retransmit
US8910171B2 (en) * 2009-04-27 2014-12-09 Lsi Corporation Thread synchronization in a multi-thread network communications processor architecture
US8873550B2 (en) 2010-05-18 2014-10-28 Lsi Corporation Task queuing in a multi-flow network processor architecture
US8537832B2 (en) * 2010-03-12 2013-09-17 Lsi Corporation Exception detection and thread rescheduling in a multi-core, multi-thread network processor
US8869150B2 (en) 2010-05-18 2014-10-21 Lsi Corporation Local messaging in a scheduling hierarchy in a traffic manager of a network processor
US8705531B2 (en) 2010-05-18 2014-04-22 Lsi Corporation Multicast address learning in an input/output adapter of a network processor
US8869156B2 (en) 2010-05-18 2014-10-21 Lsi Corporation Speculative task reading in a traffic manager of a network processor
US8321385B2 (en) * 2010-03-12 2012-11-27 Lsi Corporation Hash processing in a network communications processor architecture
US8874878B2 (en) 2010-05-18 2014-10-28 Lsi Corporation Thread synchronization in a multi-thread, multi-flow network communications processor architecture
US8843682B2 (en) 2010-05-18 2014-09-23 Lsi Corporation Hybrid address mutex mechanism for memory accesses in a network processor
US8615013B2 (en) 2010-05-18 2013-12-24 Agere Systems Llc Packet scheduling with guaranteed minimum rate in a traffic manager of a network processor
US8910168B2 (en) 2009-04-27 2014-12-09 Lsi Corporation Task backpressure and deletion in a multi-flow network processor architecture
US8499137B2 (en) * 2010-03-12 2013-07-30 Lsi Corporation Memory manager for a network communications processor architecture
US8505013B2 (en) * 2010-03-12 2013-08-06 Lsi Corporation Reducing data read latency in a network communications processor architecture
US8848723B2 (en) 2010-05-18 2014-09-30 Lsi Corporation Scheduling hierarchy in a traffic manager of a network processor
US8949578B2 (en) 2009-04-27 2015-02-03 Lsi Corporation Sharing of internal pipeline resources of a network processor with external devices
US8515965B2 (en) 2010-05-18 2013-08-20 Lsi Corporation Concurrent linked-list traversal for real-time hash processing in multi-core, multi-thread network processors
US8547878B2 (en) 2010-05-18 2013-10-01 Lsi Corporation Modularized scheduling engine for traffic management in a network processor
US8539199B2 (en) * 2010-03-12 2013-09-17 Lsi Corporation Hash processing in a network communications processor architecture
US9218290B2 (en) 2009-04-27 2015-12-22 Intel Corporation Data caching in a network communications processor architecture
US8576862B2 (en) 2010-05-18 2013-11-05 Lsi Corporation Root scheduling algorithm in a network processor
US9160684B2 (en) 2009-04-27 2015-10-13 Intel Corporation Dynamic updating of scheduling hierarchy in a traffic manager of a network processor
US8638805B2 (en) 2010-05-18 2014-01-28 Lsi Corporation Packet draining from a scheduling hierarchy in a traffic manager of a network processor
US8869151B2 (en) 2010-05-18 2014-10-21 Lsi Corporation Packet draining from a scheduling hierarchy in a traffic manager of a network processor
US8917738B2 (en) 2009-04-27 2014-12-23 Lsi Corporation Multicasting traffic manager in a network communications processor architecture
US9300597B2 (en) 2009-04-27 2016-03-29 Intel Corporation Statistics module for network processors in virtual local area networks
US9444757B2 (en) 2009-04-27 2016-09-13 Intel Corporation Dynamic configuration of processing modules in a network communications processor architecture
US8868889B2 (en) * 2010-03-12 2014-10-21 Lsi Corporation Instruction breakpoints in a multi-core, multi-thread network communications processor architecture
US9461930B2 (en) 2009-04-27 2016-10-04 Intel Corporation Modifying data streams without reordering in a multi-thread, multi-flow network processor
US8949500B2 (en) 2011-08-08 2015-02-03 Lsi Corporation Non-blocking processor bus bridge for network processors or the like
US8352669B2 (en) * 2009-04-27 2013-01-08 Lsi Corporation Buffered crossbar switch system
US8761204B2 (en) 2010-05-18 2014-06-24 Lsi Corporation Packet assembly module for multi-core, multi-thread network processors
US8489794B2 (en) * 2010-03-12 2013-07-16 Lsi Corporation Processor bus bridge for network processors or the like
US8943507B2 (en) * 2009-04-27 2015-01-27 Deepak Mital Packet assembly module for multi-core, multi-thread network processors
US8837501B2 (en) 2010-05-18 2014-09-16 Lsi Corporation Shared task parameters in a scheduler of a network processor
US8677075B2 (en) 2010-05-18 2014-03-18 Lsi Corporation Memory manager for a network communications processor architecture
US8935483B2 (en) * 2009-04-27 2015-01-13 Lsi Corporation Concurrent, coherent cache access for multiple threads in a multi-core, multi-thread network processor
US8565250B2 (en) 2010-05-18 2013-10-22 Lsi Corporation Multithreaded, superscalar scheduling in a traffic manager of a network processor
US8683221B2 (en) 2010-05-18 2014-03-25 Lsi Corporation Configurable memory encryption with constant pipeline delay in a multi-core processor
US8407707B2 (en) * 2009-05-18 2013-03-26 Lsi Corporation Task queuing in a network communications processor architecture
US8514874B2 (en) * 2010-03-12 2013-08-20 Lsi Corporation Thread synchronization in a multi-thread network communications processor architecture
US8619787B2 (en) 2010-05-18 2013-12-31 Lsi Corporation Byte-accurate scheduling in a network processor
US9183145B2 (en) 2009-04-27 2015-11-10 Intel Corporation Data caching in a network communications processor architecture
US9727508B2 (en) 2009-04-27 2017-08-08 Intel Corporation Address learning and aging for network bridging in a network processor
US9152564B2 (en) 2010-05-18 2015-10-06 Intel Corporation Early cache eviction in a multi-flow network processor architecture
US8949582B2 (en) 2009-04-27 2015-02-03 Lsi Corporation Changing a flow identifier of a packet in a multi-thread, multi-flow network processor
EP2336894B1 (en) * 2009-12-18 2014-03-26 STMicroelectronics Srl On-chip interconnect method and system, and corresponding computer program product
US9755947B2 (en) 2010-05-18 2017-09-05 Intel Corporation Hierarchical self-organizing classification processing in a network switch
US9485200B2 (en) 2010-05-18 2016-11-01 Intel Corporation Network switch with external buffering via looparound path
CN102158402B (zh) * 2011-03-16 2013-10-02 华为技术有限公司 一种纵横式交换矩阵缓存信元的方法及装置
US9065761B2 (en) 2011-07-25 2015-06-23 Intel Corporation Packet reassembly processing
US10372640B2 (en) * 2016-11-21 2019-08-06 International Business Machines Corporation Arbitration of data transfer requests
US10587504B2 (en) 2017-02-08 2020-03-10 International Business Machines Corporation Packet broadcasting mechanism for mesh interconnected multi-computers
US11275632B2 (en) 2018-09-14 2022-03-15 Advanced Micro Devices, Inc. Broadcast command and response
CN113010173A (zh) 2019-12-19 2021-06-22 超威半导体(上海)有限公司 并行处理中矩阵数据广播的方法
CN113094099A (zh) 2019-12-23 2021-07-09 超威半导体(上海)有限公司 矩阵数据广播架构
US11403221B2 (en) 2020-09-24 2022-08-02 Advanced Micro Devices, Inc. Memory access response merging in a memory hierarchy
WO2023217364A1 (en) * 2022-05-11 2023-11-16 Huawei Technologies Co., Ltd. A self-adaptive traffic arbitration engine

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5434848A (en) 1994-07-28 1995-07-18 International Business Machines Corporation Traffic management in packet communications networks

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US547375A (en) * 1895-10-01 Half to william g
JPH01177239A (ja) * 1988-01-06 1989-07-13 Nec Corp パケット集線装置及びパケット交換機
US4995056A (en) * 1989-01-13 1991-02-19 International Business Machines Corporation System and method for data communications
US4965793A (en) * 1989-02-03 1990-10-23 Digital Equipment Corporation Method and apparatus for interfacing a system control unit for a multi-processor
JP2531275B2 (ja) * 1989-09-29 1996-09-04 日本電気株式会社 Atmセル転送方式
US5291481A (en) * 1991-10-04 1994-03-01 At&T Bell Laboratories Congestion control for high speed packet networks
SE515178C2 (sv) * 1992-03-20 2001-06-25 Ericsson Telefon Ab L M Förfaranden och anordningar för prioritering vid bufferthantering i paketnät
US5473752A (en) * 1993-03-17 1995-12-05 Detector Electronics Corporation Fault isolation circuit
US5541919A (en) * 1994-12-19 1996-07-30 Motorola, Inc. Multimedia multiplexing device and method using dynamic packet segmentation
US5689500A (en) * 1996-01-16 1997-11-18 Lucent Technologies, Inc. Multistage network having multicast routing congestion feedback

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5434848A (en) 1994-07-28 1995-07-18 International Business Machines Corporation Traffic management in packet communications networks

Also Published As

Publication number Publication date
US5892766A (en) 1999-04-06
DE69738798D1 (de) 2008-08-14
JPH11504781A (ja) 1999-04-27
EP0823167A1 (en) 1998-02-11
EP0823167B1 (en) 2008-07-02
WO1997031460A1 (en) 1997-08-28

Similar Documents

Publication Publication Date Title
JP3517245B2 (ja) パケットスイッチングネットワーク内のルーチングデバイス出力アクセス用調整方法および装置
JP3739799B2 (ja) フロー制御プロトコルシステムおよび方法
US5659718A (en) Synchronous bus and bus interface device
EP1287648B1 (en) Switching system
JP3448067B2 (ja) ネットワークアダプタのためのネットワークコントローラ
US5745477A (en) Traffic shaping and ABR flow control
US6747984B1 (en) Method and apparatus for transmitting Data
US5884040A (en) Per-packet jamming in a multi-port bridge for a local area network
AU738983B2 (en) Networking systems
EP0669778B1 (en) Fast-packet switching networks
US7274660B2 (en) Method of flow control
US20130182704A1 (en) Prioritization and preemption of data frames over a switching fabric
US20030126297A1 (en) Network processor interface system
JPH10505214A (ja) フィードバック・ネットワークにおけるバッファ先頭からのドロップ方法
RU2117405C1 (ru) Система связи
US20020065991A1 (en) Method and apparatus for increasing data rates in a data network while maintaining system coherency
US6301256B1 (en) Selection technique for preventing a source port from becoming a destination port in a multi-port bridge for a local area network
JPH10243000A (ja) スイッチングフロー制御
US6195334B1 (en) Apparatus and method for terminating a data transfer in a network switch in response to a detected collision
US6725270B1 (en) Apparatus and method for programmably modifying a limit of a retry counter in a network switch port in response to exerting backpressure
JPH0773290B2 (ja) 順序を保持したデータ・ストリーム伝送におけるリンク切替え方法
WO1999014901A1 (en) High speed bus structure in a multi-port bridge for a local area network
JPH11239163A (ja) Lan間フロー制御方法及びスイッチ
EP1106003A1 (en) Method and system for prioritised congestion control in a switching hub
US6819675B2 (en) Self-route multi-memory expandable packet switch with overflow processing means

Legal Events

Date Code Title Description
A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040123

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

Free format text: PAYMENT UNTIL: 20080130

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090130

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100130

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110130

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110130

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120130

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140130

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees