【発明の詳細な説明】
割付型並びに動的交換機フロー制御
発明の技術分野
本発明は概して通信網に関し、更に特定的には網交換機内のセル損の減少に関
する。
関連特許出願
本願は、1995年7月19日に出願された米国仮特許出願第60/001,
498号に関連する。
発明の背景
非同期転送モード(“ATM”)網といった網は、音声、映像及び他のデータ
を転送するために使用される。ATM網は、ATMセルといったデータユニット
を交換機を通じてソースから宛先へルーティングすることによってデータを伝達
する。交換機は、それを通じてATMセルが受信され、送信される入力/出力(
“I/O”)ポートを含む。セルの伝送のための適当な出力ポートはセルヘッダ
に基づいて決定される。
ATM網に関連する1つの問題は、セルの損失である。セルは、ルーティング
の前の夫々の交換機の中でバッファリングされ、スイッチから伝送される。更に
特定的には、交換機は典型的に、伝送の前にセルを一時的に記憶するため交換機
の入力又は出力のいずれかにバッファを有する。網トラヒックが増加するにつれ
、バッファ空間が不足し、データが失われる可能性が増加する。バッファの大き
さが不十分であれば、セルが失われる。セル損は、オーディオ及びビデオデータ
伝送において望ましくない中断を起こし、データ伝送の他のタイプに対してより
重大な損害を引き起こしうる。従って
セル損の回避が望ましい。
発明の概要
フロー制御を使用することにより網交換機内のセル損を除去する方法及び装置
が開示される。交換機は、少なくとも1つの入力ポートと、少なくとも1つの出
力ポートと、夫々入力及び出力ポートに関連する入力及び出力バッファとを含む
。セルは入力ポートを通って交換機に入り、入力バッファ内でバッファリングさ
れる。次にセルは入力バッファから出力バッファへ伝送され、次に出力ポートへ
伝送される。出力バッファが所定の閾値レベルまで満たされたとき、入力バッフ
ァから出力バッファへのセルの伝送を防ぐよう、入力バッファへフィードバック
メッセージが与えられる。従って、入力バッファと出力バッファとの間のセル損
はフロー制御によって防止される。
接続タイプ及びトラヒックタイプの隔離の両方を提供するため、バッファはキ
ューにグループ化され、フロー制御は1つのキュー毎に実施される。各キューは
多数のバッファを含み、各交換機は多数の入力キューと多数の出力キューとを含
む。交換機に入るとき、夫々のセルは特定出力キューへの最終的な伝送のために
特定入力キューへロードされる。次に共用資源が使用されている場合にトラヒッ
クタイプのフロー制御を提供するため、個々のキューはトラヒックタイプのグル
ープへ割り当てられる。他の実施では、各キューは、可変ビットレート(“VB
R”)サービスクラス及び有効ビットレート(“ABR”)サービスクラスとい
った特定のトラヒックタイプ(サービスクラスと称されることがある)に割り振
られる。フロー制御は1つのトラヒックタイプ毎に実施されうる。更に、フロー
制御は、各キューが特定のコネクションに割り当てられ得るトラヒックサブタイ
プ及びキューの上で実施され得、それによりトラヒックサブタイプに基づくと同
時に1つのコネクション毎に
フロー制御を提供する。以下の表1は、可能なフロー制御構成を示す。
各コネクションには、コネクションに関連するトラヒックタイプに基づいて帯
域幅タイプが割り当てられる。交換機内では、割付型帯域幅並びに動的帯域幅の
2つのタイプの帯域幅が許可される。割付型帯域幅は、帯域幅が割付けられるコ
ネクションによって使用されるために“残される”帯域幅である。概して、割付
型帯域幅によるコネクションは、そのコネクションに割付けられた帯域幅の全て
の量に対するアクセスが保証されている。このように、遅延に対する決定論的な
制御を必要とするトラヒックタイプには割付型帯域幅が割り当てられる。動的帯
域幅は、様々な競合する接続によって“共用される”帯域幅である。動的な帯域
幅は共用資源であるため、概して特定の接続が特定量の帯域幅へのアクセスを有
することは保証されない。このため、動的帯域幅は典型的にはより大きな遅延範
囲を有するコネクションに割り当てられる。他のコネクションには動的帯域幅並
びに割付型帯域幅の組合せが割り当てられうる。
フロー制御を容易にするため、第1及び第2のビットを有するディジタルフィ
ードバックメッセージが与えられる。フィードバックメッセージは、出力キュー
から入力キューへ送信されうるACCEPTメッセージを含みうる。更に特定的
には、フィードバックメッセージの第1のビットを使用し、第1のビット=0は
、セルを
出力キューへ転送する入力キュー要求のACCEPTを示す。要求した入力キュ
ーによってACCEPTが受信されると、セルは出力キューへ転送される。
フィードバックメッセージはまたREJECTメッセージを含みうる。要求し
た入力キューによってREJECTが受信されると、セルは転送されない。しか
しながら、入力キューによって更なる転送の要求か送信されうる。
フィードバックメッセージはまたNO−OP/XOFFメッセージを含みうる
。XOFFメッセージは、割付型帯域幅又は動的帯域幅を通じて伝送する間に受
信されうる。特に、XOFF(割付型)メッセージは、割付型帯域幅に関して受
信されえ、XOFF(動的)メッセージは、動的帯域幅に関して受信されうる。
動的帯域幅と割付型帯域幅に対する要求を区別するために、追加的なタグ付け技
術が使用されうる。XOFF(動的)メッセージは、要求の伝送が動的帯域幅を
通じて転送されることを一時的に停止する。特定出力キューからXOFF(動的
)を受信する各入力キューは、指定されたイベントが生ずるまで、動的帯域幅を
通じてその特定の出力キューへ送信する要求を出すことを一時的に止める。指定
されたイベントは、所定の時間の経過、又は更なる転送の要求が送信されること
を可能にするXON信号の受信である。入力キューはまた規則的に、即ちいつ各
特定の入力キューがXOFF(動的)状態に置かれたかどうかに拘わらず、XO
N信号によって可能にされ得る。そのような規則的な基準は、例えば、100ミ
リ秒毎である。2ビットメッセージの第2のビットが0である時、これはNO−
OP(非作動)信号を示す。NO−OP信号を受信する夫々の入力キューは不可
能にされていない。
XOFF(割付型)フィードバックメッセージは、割付型帯域幅を通じて転送
する要求を伝送することを一時的に停止する。特定出力キューからXOFF(割
付型)を受信する各入力キューは、指定
されたイベントが生ずるまで、割付型帯域幅を通じてその特定の出力キューへ送
信する要求を出すことを一時的に止める。指定されたイベントは、典型的には更
なる転送の要求が送信されることを可能にするXON信号の受信である。入力キ
ューはまた規則的に、即ちいつ各特定の入力キューがXOFF(割付型)状態に
置かれたかどうかに拘わらず、XON信号によって可能にされ得る。そのような
規則的な基準は、例えば、100ミリ秒毎である。2ビットメッセージの第2の
ビットが0である時、これはNO−OP信号を示す。NO−OP(非作動)信号
を受信する夫々の入力キューは不可能にされていない。
望ましい実施例では、XON信号はいずれかのXOFF状態におかれた入力キ
ーを可能にするために使用される。特定の出力キューからXONを受信する各入
力キューは、その出力キューへ伝送する要求を出すことが可能にされる。更に特
定的には、XONはXOFF(動的)及びXOFF(割付型)状態の両方をリセ
ットする。XON信号は、不必要な交換機トラヒックを減少させ、誤りによるフ
ローのブロックを防ぐことの両方のために、規則的に可能にされること共に使用
されうる。
要求する入力キューによって、伝送の要求に対する様々な組合せの応答が受信
されうることが明らかである。NO−OP及びACCEPT又はREJECTの
受信は上述の通りに動作する。XOFF(動的)及びACCEPT又はXOFF
(割付型)及びACCEPTのいずれかの受信は、指定された帯域幅を通じて転
送する更なる要求が続く1つのセルの転送を止める。XOFF(動的)及びRE
JECT又はXOFF(割付型)及びREJECTのいずれかの受信は、指定さ
れた帯域幅を通じて転送する更なる要求が直ぐに止まり、セルは全く伝送されな
い。このように、XOFFコマンドが将来の要求に影響を与える一方で、REJ
ECTコマンドは現在の要求の拒否を提供する。
NO−OP/XOFF(動的)メッセージは、交換機の中の不必要なフィード
バックのシグナリングを減少させるために使用される。交換機帯域幅は、セルが
交換機を通って伝送されることができず、REJECTが繰り返し現れる場合、
非効率的に使用される。従ってXOFF(動的)は、交換機発信側ポートプロセ
ッサ(“FSPP”)キュー全体に対する要求の数を減少するよう交換機着信側
ポートプロセッサ(“TSPP”)を変更するために使用される。
上述のフィードバックメッセージを使用したフロー制御は、交換機の中の信頼
性の高いポイントツーマルチポイント伝送、即ち単一の入力キューから多数の出
力キューへの伝送を提供する。ポイントツーマルチポイント動作では、多数の出
力キューから単一の入力キューへのフィードバックメッセージは、複数の出力キ
ューのうちのいずれか1つからの単一のXOFF(動的)又はREJECTメッ
セージが伝送を防ぐよう、論理ORとされている。従って、ポイントツーマルチ
ポイントセルは最も遅い宛先キューのレートで伝送される。
上述の2ビットフィードバックメッセージによるフロー制御はまた、交換機の
中の信頼性の高いマルチポイントツーポイント伝送、即ち多数の入力キューから
単一の出力キューへの伝送を提供する。各出力キューは閾値を有し、出力キュー
がその閾値を使い切ったときにXONメッセージを送信する。マルチポイントツ
ーポイント動作では、出力キューのXON閾値は、各入力キューが出力キューへ
伝送するために充分な空間を残すよう動的にセットされる。例えば、8つの入力
キューがあれば、出力キューが全てのセルを同期間に順次式に受信するために充
分な空間を解放するよう、閾値は8にセットされる。
図面の簡単な説明
本発明の上記及び他の特徴は添付の図面と共に詳細な説明によっ
て明らかとなろう。図中、
図1は交換機相互接続ブロック図を示す図であり、
図2はポイントツーポイント動作、交換機フロー制御及びリンクフロー制御を
示すブロック図を示す図であり、
図3はポイントツーマルチポイント動作を示すブロック図を示す図であり、
図4はマルチポイントツーポイント動作を示すブロック図を示す図である。
発明の詳細な説明
ここで図1を参照するに、交換機は、NxN交換機本体10と、帯域幅アービ
タ12と、複数の交換機着信側ポートプロセッササブシステム(“TSPP”)
14と、複数の交換機着信側ポートプロセッサASIC15と、複数の交換機発
信側ポートプロセッササブシステム(“FSPP”)16と、複数の交換機発信
側ポートプロセッサASIC17と、複数のマルチポイントトポロジコントロー
ラ18とを含む。ECLクロスポイント交換機本体といったNxN交換機本体は
、セルデータのトランスポートのために使用され、670MbpsのN倍のスル
ープットを生ずる。帯域幅アービタは交換機本体相互接続を制御し、割り当てら
れていない帯域幅を動的にスケジューリングし、マルチポイントツーポイント帯
域幅の競争を解決する。各TSPPは多数のコネクションから交換機本体へのセ
ルの伝送をスケジューリングする。入力リンクとTSPPサブシステムとの間の
物理ラインインタフェースは図示されていない。FSPPは、交換機本体からセ
ルを受信し、これらのセルを出力リンクの上に組織化する。出力リンクとFSP
Pサブシステムとの間の物理ラインインタフェースは図示されていない。
ここで図2を参照するに、交換機は、複数の入力ポート20と、複数の出力ポ
ート22と、夫々の入力ポート及び出力ポートに関連
づけられた入力バッファ26及び出力バッファ28とを含む。交換機を通るため
に、セル24は入力ポートを通って交換機に入り、入力バッファの中でバッファ
リングされる。次にセルは入力バッファから出力ポート内の出力バッファへバッ
ファリングされる。出力ポートからセルは交換機の外側、例えば他の交換機29
へ伝送される。転送要求に応答して、出力バッファが所定の閾値レベルまで満た
されれば、入力ポートから出力バッファへのセルの伝送を防ぐよう、入力ポート
へフィードバックメッセージ30が与えられる。
フィードバックメッセージ30は、交換機内のセル損を防ぐ。出力バッファへ
伝送されたセル24の数が、使用可能な出力バッファ28の数よりも大きければ
、セルは失われる。しかしながら、転送要求に応答して、出力バッファが所定の
閾値レベルまで満たされれば、入力バッファからのセルの伝送を防ぐよう、入力
ポート20へフィードバックメッセージ30が伝送される。閾値レベルは、使用
可能な出力バッファによって扱われうる数よりも多くのセルの伝送を防ぐ値にセ
ットされる。従って、入力バッファと出力バッファとの間のセル損はフロー制御
フィードバックメッセージによって防がれる。
接続タイプ及びトラヒックタイプの隔離の両方を提供するため、
バッファ26,28は夫々キュー32,34に組織化され、フロー制御は1つ
のキュー毎に実施される。各キューは多数のバッファを含み、各入力ポート及び
出力ポートは多数の入力キュー32及び多数の出力キュー34を含む。交換機に
入るとき、夫々のセル24は特定出力キュー34への最終的な伝送のために特定
入力キュー32へロードされる。共用資源が使用されている場合にトラヒックタ
イプのフロー制御を提供するため、キューはトラヒックタイプのグループへ割り
当てられる。コネクションに対して唯一のキューを割り当てることにより、フロ
ー制御は1つのコネクション毎に実施されうる。更に、1つのトラヒックタイプ
毎の、1つのコ
ネクション毎のフロー制御を提供するようキューのネストされたキューが使用さ
れうる。
マルチポイントトポロジのためには、1つのコネクション毎に多数のキューが
必要され、1つのコネクション毎のフロー制御を実施するために遠回りである。
TSPPでは、マルチポイントコネクションのために多数のソースがある場合、
多数のキューはスケジューリングリスト48の中へネストされる。TSPPでは
、単一のソースがある場合、やはりスケジューリングリストが使用されるが、単
一のキューを有する。スケジューリングリストは、実際にはキューがその接続の
ために伝送されるべきセルを有するキューのキューであり、TSPPにおいて夫
々のコネクションに対してスケジューリングリストがあり、TSPPは多数のコ
ネクションをサポートする。従って、スケジューリングリストは入力キューとし
て考えられ、用語は以下同義に使用される。
各コネクションは、コネクションに関連づけられたトラヒックタイプに基づい
て帯域幅タイプが割り当てられる。交換機内では、割付型帯域幅及び動的帯域幅
の2つのタイプの帯域幅が許可される。割付型帯域幅は、帯域幅が割付られるコ
ネクションによって使用されるために“残される”帯域幅である。概して、割付
型帯域幅によるコネクションは、そのコネクションに割付型帯域幅の全ての量に
対するアクセスが保証されている。このように、遅延に対する決定論的な制御を
必要とするトラヒックタイプには割付型帯域幅が割り当てられる。動的帯域幅は
、様々な競争する接続によって“共用される”帯域幅である。動的帯域幅は共用
資源であるため、概して特定の接続が特定量の帯域幅へのアクセスを有すること
は保証されない。このため、動的帯域幅は典型的にはより大きな遅延範囲を有す
るコネクションに割り当てられる。他のコネクションには動的及び割付型帯域幅
の組合せが割り当てられうる。
動的帯域幅、割付型帯域幅、又はその両方を使用するコネクショ
ンに関連づけられたセルを区別するため、各転送要求にはタグが付けられる。更
に特定的には、動的帯域幅を使用するコネクションの転送要求には第1の状態の
ビットでタグが付けられ、割付型帯域幅を使用するコネクションの転送要求には
第2の状態のビットでタグが付けられる。コネクションが割付られたセルレート
で、又はそれ以下で動作すれば、転送要求は割付られたようにタグが付けられる
。
ここで図1,図2及び表2を参照するに、フィードバックメッセージ30は要
求メッセージ36に応答して与えられる。入力ポート20から出力ポート22へ
セルを伝送する前に、出力ポートの中で十分なバッファ28が使用可能であるか
どうかを決定するため、入力ポートから出力ポート22へ割付型/動的タグを含
む要求メッセージが送信される。フィードバックメッセージ30は出力ポートに
おいてバッファ状態の表示を与え、よって伝送は進行する。セルは選択された条
件下においてのみ転送されるよう、要求メッセージ36は常にセル転送に先立つ
。
有効なフロー制御を提供するために、出力ポートから入力ポートへのフィード
バックメッセージ30は幾つかのサブタイプメッセージを含む。例えば、フィー
ドバックメッセージは、要求メッセージに応答して送信されうるACCEPTメ
ッセージを含む。1ビットのディジタル信号を使用し、第1のビット=0は、セ
ルを出力
キューへ転送する入力キュー要求のACCEPTを示す。要求した入力キューに
よってACCEPTが受信されると、セルは出力キューへ転送される。
フィードバックメッセージ30はまたREJECTメッセージを含みうる。更
に特定的には、要求メッセージへの応答はACCEPT又はREJECTメッセ
ージのいずれかを含む。1ビットのディジタル信号を使用し、第1のビット=1
は、セルを出力キューへ転送する要求のREJECTを示す。要求した入力キュ
ーによってREJECTが受信されると、セルは出力キューへ転送されない。し
かしながら、入力キューから出力キューへ更なる要求メッセージ36が送信され
うる。
不必要なメッセージトラヒックを減少するため、フィードバックメッセージ3
0はまた動的帯域幅を通じて要求メッセージ36が伝送されるのを一時的に停止
するXOFF(動的)メッセージを含みうる。2ビットディジタルフィードバッ
ク信号を使用し、第2のビット=1はXOFF(動的)を示す。特定出力キュー
34からXOFF(動的)を受信する各入力キュー32は、指定されたイベント
が生ずるまで、その特定の出力キューに対する動的帯域幅に対する要求メッセー
ジの伝送を一時的に止める。指定されたイベントは、所定の時間の経過、又は他
の信号の受信である。第2のビット=0はNO−OP、即ちXOFF(動的)が
アサートされていないことを意味する非作動メッセージを示す。
フィードバックメッセージはまたXOFF(割付型)フィードバックメッセー
ジを含みうる。特定出力キューからXOFF(割付型)を受信する各入力キュー
は、指定されたイベントが生ずるまで、割付型帯域幅を通じてその特定の出力キ
ューへ送信する要求を出すことを一時的に止める。指定されたイベントは、典型
的には更なる転送の要求が送信されることを可能にするXON信号の受信である
。入力キューはまた規則的に、即ちいつ各特定の入力キューがXOF
F(割付型)状態に置かれたかどうかに拘わらず、XON信号によって可能にさ
れ得る。そのような規則的な基準は、例えば、100ミリ秒毎である。
実際には要求タグ付け技術は、XOFF(動的)又はXOFF(割付型)を示
すための単一のXOFFメッセージの使用を可能にする。要求タグ付け技術は、
要求が動的帯域幅、又は割付型帯域幅のいずれのためであるかに基づくタグビッ
トによって帯域幅に対する要求をタグ付けする。このようにタグビットは割り当
てられた要求及び動的要求とフィードバックとを区別し、即ち動的帯域幅に対す
る要求に応答して伝送されたXOFFはXOFF(動的)である。
2ビットのフィードバックメッセージを使用し、要求する入力キューによって
各要求メッセージに対する様々な応答が受信されうる。そのような応答は以下の
ように解釈される。NO−OP及びACCEPT又はREJECTの受信は以下
のように作動する。XOFF(動的)及びACCEPTの受信は、転送に対する
更なる要求が1つのセルの続く転送を止めることを示す。XOFF(動的)及び
REJECTの受信は、転送に対する更なる要求が直ぐに止まり、セルは全く伝
送されないことを示す。このように、XOFF(動的)コマンドが将来の要求に
影響を与える一方で、REJECTコマンドは現在の要求の拒否を提供する。
フィードバックメッセージ30は、要求メッセージの更なる伝送を可能にする
XONメッセージを含みうる。XONメッセージは転送メッセージへの要求と非
同期的に生じ、それに応答して与えられるものではない。XONメッセージは両
方のXOFF条件を除去するために有効である。特定出力キューからXONを受
信する各入力キューは、その出力キューに対して転送する要求を出すことが可能
にされている。
交換機フロー制御においてロックアップが生ずる可能性を減少させるために、
ポートといった内部要素の除去又は失敗に拘わらず連
続した動作を可能にするタイムアウト型の機能が使用されることが望ましい。例
えば、XOFF(動的又は割付型)メッセージの受信に続いて特定出力キュー3
4に対する要求メッセージの伝送を止めた入力キュー32は、所定の時間の間に
その出力キューからXONメッセージが受信されなければ、その出力キューに対
する更なる要求メッセージを伝送しうる。或いは、入力キューは、XOFF(動
的又は割付型)状態に拘わらず要求メッセージを周期的に伝送しうる。
再び図1を参照するに、本発明はより詳細に説明される。望ましいアーキテク
チャでは、各入力ポートはTSPP14を含み、各出力ポートはFSPP16を
含む。TSPP及びFSPPは夫々キュー32,34へ組織化されるセルバッフ
ァRAMを含む。コネクション40内の全てのセルは、コネクションの寿命のた
めに、各ポート、即ち一方はTSPPにおいて、他方はFSPPにおいて単一の
キューを通過する。従ってキューはセル順序を維持する。この方法はまた、1つ
のコネクション毎にサービスの質(“QoS”)の保証を可能にする。
要求メッセージ36は、セル伝送のために充分なバッファ34が使用可能であ
るかどうかを決定するためにTSPP14からFSPP16へ送信されるプロー
ブである。交換機の中で全くセルが失われないことを保証するために、TSPP
はそのセルに対する使用可能なバッファ空間が無い限りはFSPPへセルを送信
することができない。バッファステータスを決定するため、プローブはセルが伝
送されるべきFSPPキューを示す宛先マルチキュー番号を通信する。例えば、
宛先マルチキュー番号は出力キュー34aを宛先キューとして識別しうる。その
キューの中でバッファ空間が使用可能でない場合、以下に説明されるように、F
SPPは、“REJECT”及び“XOFF(動的又は割付型)”のいずれか又
は両方によって、プローブに応答する。
交換機フロー制御のプローブ及びフィードバックメッセージを実施するために
、3つの通信パス、即ち、プローブクロスバー42と、XOFFクロスバー44
と、XONクロスバー46とが使用される。プローブクロスバー42はFSPP
マルチキュー番号を各FSPPへ伝送するために使用されるNxNクロスポイン
ト交換機本体である。マルチキュー番号は、ポイントツーマルチポイントの使用
のためにセルに対する複数の宛先キューを識別する。FSPPは、プローブ36
を適当な出力キュー34に向けるようマルチキュー番号使用し、これによりセル
の受信のために宛先キューの中に充分な出力バッファが使用可能であるかどうか
を決定する。ポイントツーマルチポイントの場合、多数のマルチキュー番号を有
するFSPP当たり、コネクション当たり唯一のマルチキュー番号がある。
XOFFクロスバー44は、FSPP16からTSPP14へ“送信不可”型
のメッセージを通信するために使用されるNxNシリアルクロスポイント交換機
本体である。各TSPPは、各コネクションに対して伝送されるべきセルのキュ
ーを有する多数のスケジューリングリスト48を含む。フィードバックメッセー
ジ30の第1のビット、即ちWOFFは、特定TSPPのスケジューリングリス
トから要求メッセージプローブ36の伝送を停止するようアサートされ、従って
受信するTSPPのスケジューリングリストをXOFF状態にする状態制御ビッ
トであり、このTSPPのスケジューリングリスト48は動的帯域幅を使用しな
いことを意味する。このTSPPのスケジューリングリストは次にXONメッセ
ージを受信するまでXOFF状態に維持される。第2のビット、即ちREJEC
Tは、FSPPないでセルを受信するために不十分なバッファ空間が使用可能で
ある場合にアサートされる。この状態は、FSPP宛先キューが満たされている
か、出力バッファのプール全体が枯渇していることによって生じうる。TSPP
は、データクロスバー47を通じてセル24をデキューしないことによってアサ
ート
されたREJECTフィードバックメッセージに応答する。代わりに、補足され
たCRCによって示されるアイドルセルが伝送される。TSPPは、TSPPの
スケジューリングリストのXOFF状態ビットを変更することによってアサート
されたXOFF(動的)フィードバックメッセージに応答する。XOFF状態ビ
ットは、FSPPによってセルバッファが使用可能であると通知されるまで、T
SPPがそのスケジューリングリスト上のそのキューから要求メッセージを送信
しようとすることを防ぐ。
XONクロスバー46は、“送信可能”型のメッセージを通信するために使用
されるNxNシリアルコンテンションベースの交換機本体である。更に特定的に
は、XONクロスバー46はXONメッセージをFSPPからTSPPへ通信す
るために使用される。FSPPキューの中のバッファリングされたセルの数がX
ON閾値以下に下がったとき、FSPPからTSPPへXONメッセージが送信
される。XONメッセージはTSPPスケジューリングリストが要求メッセージ
の送信を再開することを可能にする。
図3は、ポイントツーマルチポイント交換機フロー制御、即ち単一の入力キュ
ー32から多数の出力キュー34への伝送を示す。ポイントツーマルチポイント
動作では、XOFFクロスバーは論理OR機能を実行する。更に特定的には、X
OFFクロスバーは単一のフィードバックメッセージを与えるようFSPPによ
ってアサートされたフィードバックメッセージ30の論理ORを実行する。結果
として、いずれのFSPPからのREJECT又はXOFFの受信も、夫々RE
JECT及び/又はXOFFをアサートすると解釈される単一の結果としてのフ
ィードバックメッセージを生じさせる。この技術は、TSPPを最も遅い宛先キ
ューのレートで伝送するよう制限する。しかしながら、この技術はまた、セルの
所望の同期間の連続的な伝送を提供する。
ポイントツーマルチポイント伝送の場合、TSPPは多数のXO
Nメッセージを受信しうることが分かる。これは、多数のXOFFはFSPPに
よってセットされうる、即ち転送要求に対して1つ以上のFSPPがXOFFを
アサートしうるためである。このような場合、TSPPスケジューリングリスト
のXOFF状態がクリアされているときに受信されたXONメッセージは無視さ
れる。例えば、多数のXONメッセージが送信されるとき、TSPPは最初に受
信されたXONメッセージの後に受信されたXONを無視する。マルチポイント
ツーポイント伝送の場合、スケジューリングリストがFSPPキューへ転送させ
、XONメッセージは全てのTSPPに同時に送信される。
図4はマルチポイントツーポイント交換機フロー制御、即ち多数の入力キュー
32から単一の出力キュー34への伝送を示す図である。各出力キューは閾値を
有し、出力キューがその閾値以下に下がったとき、XONメッセージが送信され
る。マルチポイントツーポイント動作では、出力キューのXON閾値は、各入力
キューが出力キューへ伝送するために十分なバッファを残すよう、動的にセット
される。例えば、8つのキューが伝送していれば、出力キューが8つのセル全て
を連続形式で同期間に受信するよう充分なバッファを解放するよう、閾値は8に
セットされ、従って夫々のキューが伝送する機会を有することを確実にする。
ここで図1及び図4を参照するに、マルチポイントツーポイントコネクション
の場合、TSPPがアサートするFSPPキューへ伝送されるかどうかに拘わら
ず、交換機内の全てのTSPPに対してブロードキャストするためにXONクロ
スバー46が使用される。ブロードキャストのために、マルチポイントトポロジ
コントローラ18はFSPPの代わりに逆ブロードキャストチャネル番号を伝送
する。次に受信するマルチポイントトポロジコントローラは、どのスケジューリ
ングリスト48を可能にするかを決定するために、逆ブロードキャストチャネル
対スケジューリングリスト番号ルック
アップを実行する。その特定のFSPPキューに対して伝送するキューの無いT
SPPは、逆ブロードキャストチャネル番号ルックアップエントリは無効である
とマークされるため、ブロードキャストXONメッセージによって影響を受けな
い。
再び図2を参照するに、追加的なフロー制御強調によって、キューは各階層レ
ベルに多数の個々のフロー52を有する階層に基づいて組織化され、出力キュー
から入力キューへのフィードバックメッセージ30は各階層レベルにおける結合
されたフローに基づいて形成される。他の強調によって、キューは各階層レベル
に多数の個々のフローを有する階層に基づいて組織化され、出力キューから入力
キューへのフィードバックメッセージは、各個々のフローに基づいて形成される
。
プローブ&XOFF通信パスはパイプライン形式で動作する。まず、TSPP
14は入力キュー34を選択し、そのキューに関連する情報は、伝送用の出力ポ
ート、即ち宛先出力キューを決定するために使用される。帯域幅アービトレータ
は、この情報を、連続するプローブ、TSPP及びクロスポイントを制御するた
めに使用されるTSPP対FSPP接続性マップへ縮小する。更に特定的には、
FSPPマルチキュー番号はプローブクロスバー42を使用してFSPPへ伝送
される。次にFSPPはバッファのアベイラビリティをテストし、充分なバッフ
ァが使用可能でなければ、XOFFクロスバー上にREJECT及び/又はXO
FFをアサートする。次にTSPPは、REJECTがアサートされていればア
イドルセルを伝送する。XOFFがアサートされれば、TSPPはスケジューリ
ングリストをXOFF状態にする。充分なバッファが使用可能であれば、TSP
Pはデータクロスバー47を使用して、セルをFSPP出力キューへ伝送する。
表3は、動的帯域幅を使用するとしてタグ付けされた要求に応じてREJEC
T及びXOFFをアサートするために、FSPPによって使用される方法を要約
する。方法は2つの関係、即ちセル計数限界に関するトラヒックタイプセル計数
と、バッファ計数限界に関するキューの動的バッファ計数とに基づく。トラヒッ
クタイプセル計数はトラヒックタイプ、例えば“VBR”の中のコネクションに
よって共用される全てのセルの計数である。限界が超過されない場合、REJE
CT又はXOFFのいずれもアサートされない。更に特定的には、トラヒックタ
イプセル計数が限界より小さく、キューの動的バッファ計数が限界より小さい場
合、REJECT又はXOFFのいずれもアサートされない。トラヒックタイプ
セル計数が限界よりも小さいが、キューの動的バッファ計数が限界以上である場
合、REJECT及びXOFFの両方がアサートされる。トラヒックタイプセル
計数が限界以上であり、キューの動的バッファ計数が限界よりも小さい場合、X
OFFはアサートされないが、REJECTはアサートされる。トラヒックタイ
プセル計数が限界以上であり、キューの動的バッファ計数が限界以上である場合
、REJECT及びXOFFの両方がアサートされる。
表4は、割付型帯域幅を使用してタグ付けされた要求に応じてREJECT及
びXOFFをアサートするために、FSPPによって使用される方法を要約する
。方法は3つの関係、即ちバッファ状態計数限界に関するバッファ状態計数と、
セル計数限界に関するトラヒックタイプセル計数と、バッファ計数限界に関する
キューの割付けられたバッファ計数とに基づく。リンクフロー制御は送信中のセ
ルを示すためにバッファ状態カウンタを使用する。割付けられたバッファ状態カ
ウンタは、リンクフロー制御を使用するコネクションの割付けられた成分に対す
る送信中のセルを記録するために使用される。キューの割付けられたバッファ状
態計数が計数限界以上であり、トラヒックタイプセル計数がセル計数限界以上で
あり、キューの割付けられたバッファ計数が計数限界以上であるとき、REJE
CT又はXOFFのいずれもアサートされない。キューの割付けられたバッファ
計数がバッファ計数限界以上であるとき、REJECT及びXOFFの両方がア
サートされる。キューの割付けら
れたバッファ計数が計数限界より小さいが、キューの割付けられたバッファ状態
計数が計数限界以上であるか、トラヒックタイプセル計数がセル計数限界以上で
あるとき、REJECTはアサートされるが、XOFFはアサートされない。全
ての場合、FSPPキューが既にXOFFを送信していれば、そのキューは次の
プローブでXOFFを再びアサートする。
上述の方法及び装置に対する様々な変更及び修正は、ここに開示される新しい
概念を逸脱することなく行われることが理解されよう。従って、本発明は上述の
実施例に制限されるものではないと考えられる。DETAILED DESCRIPTION OF THE INVENTION
Assignable and dynamic switch flow control
TECHNICAL FIELD OF THE INVENTION
The present invention relates generally to communication networks, and more particularly to the reduction of cell loss in a network switch.
I do.
Related patent application
This application is related to US Provisional Patent Application No. 60/001, filed July 19, 1995.
No. 498.
Background of the Invention
Networks such as Asynchronous Transfer Mode ("ATM") networks provide audio, video and other data
Used to transfer. ATM networks are data units such as ATM cells
Data by routing data from source to destination through the switch
I do. The switch uses input / output (I / O) through which ATM cells are received and transmitted.
"I / O") ports. The appropriate output port for cell transmission is the cell header
Is determined based on
One problem associated with ATM networks is cell loss. Cell routing
Are buffered in the respective exchange before it and transmitted from the switch. Further
Specifically, switches are typically used to temporarily store cells before transmission.
Have a buffer at either the input or the output. As network traffic increases
Insufficient buffer space increases the possibility of data loss. Buffer size
If not, cells will be lost. Cell loss refers to audio and video data
Causing undesired interruptions in transmission, more than other types of data transmission
Can cause significant damage. Therefore
It is desirable to avoid cell loss.
Summary of the Invention
Method and apparatus for eliminating cell loss in a network switch by using flow control
Is disclosed. The switch has at least one input port and at least one output port.
Input port and input and output buffers associated with the input and output ports, respectively.
. Cells enter the switch through input ports and are buffered in input buffers.
It is. The cells are then transmitted from the input buffer to the output buffer and then to the output port
Transmitted. When the output buffer is filled to a predetermined threshold level, the input buffer
Feedback to the input buffer to prevent cell transmission from the
A message is given. Therefore, the cell loss between the input and output buffers
Is prevented by flow control.
Buffers are keyed to provide both connection-type and traffic-type isolation.
Queues, and flow control is performed for each queue. Each queue is
Each switch contains a number of input queues and a number of output queues.
No. When entering the switch, each cell is used for final transmission to a specific output queue.
Loaded to a specific input queue. Next, when shared resources are used, traffic
Each queue is a traffic-type group to provide traffic-type flow control.
Assigned to the group. In another implementation, each queue has a variable bit rate ("VB
R ") service class and effective bit rate (" ABR ") service class
Specific traffic types (sometimes called service classes)
Can be Flow control can be implemented for each traffic type. Furthermore, the flow
Control is based on the traffic subtype in which each queue can be assigned to a particular connection.
On the traffic subtype.
Sometimes per connection
Provides flow control. Table 1 below shows possible flow control configurations.
Each connection is banded based on the traffic type associated with the connection.
Bandwidth type is assigned. Within the exchange, allocatable and dynamic bandwidth
Two types of bandwidth are allowed. Allocated bandwidth is the amount of bandwidth allocated
The bandwidth "remaining" to be used by the connection. Generally, allocation
Connections with a type bandwidth are all of the bandwidth allocated to the connection.
Access to the quantity of is guaranteed. Thus, the deterministic delay
Allocated bandwidth is assigned to traffic types that require control. Dynamic belt
Bandwidth is the bandwidth "shared" by various competing connections. Dynamic bandwidth
Since bandwidth is a shared resource, generally certain connections have access to a certain amount of bandwidth.
Is not guaranteed. For this reason, dynamic bandwidth typically has a larger delay range.
Assigned to a connection that has an enclosure. Other connections have a dynamic bandwidth
And a combination of allocatable bandwidths.
To facilitate flow control, a digital filter having first and second bits is provided.
Feedback message is given. Feedback messages are sent to the output queue
From the input queue. More specific
Use the first bit of the feedback message and the first bit = 0
The cell
Indicates the ACCEPT of the input queue request to be transferred to the output queue. Requested input queue
When the ACCEPT is received by the host, the cell is transferred to the output queue.
The feedback message may also include a REJECT message. Request
When the REJECT is received by the input queue, the cell is not transferred. Only
Meanwhile, requests for further transfer can be sent by the input queue.
The feedback message may also include a NO-OP / XOFF message
. XOFF messages are received during transmission over allocatable or dynamic bandwidth.
Can be trusted. In particular, XOFF (assignment) messages are received for assigned bandwidth.
Yes, XOFF (dynamic) messages may be received for dynamic bandwidth.
Additional tagging techniques to distinguish between dynamic and allocated bandwidth requirements
Surgery may be used. XOFF (dynamic) messages indicate that the transmission of a request
Temporarily stop transmissions through. XOFF from specific output queue (dynamic
), Each input queue receives dynamic bandwidth until the specified event occurs.
Temporarily stop making requests to send to that particular output queue. Designation
The specified event has passed the specified time or a request for further transfer has been sent.
XON signal is received. Input queues are also regular, ie when each
XO regardless of whether a particular input queue has been placed in the XOFF (dynamic) state.
It can be enabled by the N signal. Such a regular criterion is, for example, 100
Every second. When the second bit of the 2-bit message is 0, this is NO-
Indicates an OP (inactive) signal. Each input queue that receives a NO-OP signal cannot be used.
Not enabled.
XOFF (allocated) feedback messages are transmitted over allocated bandwidth
Temporarily stop transmitting the request. XOFF from a specific output queue
Each input queue that receives the type is specified
Until the specified event occurs, it is sent to that particular output queue through the allocated bandwidth.
Temporarily stop making requests to trust. The specified event is typically updated
Reception of an XON signal that allows the transmission request to be transmitted. Input key
The queue is also regularly, ie, when each particular input queue is in the XOFF (allocated) state.
It can be enabled by the XON signal regardless of whether it has been placed. like that
A regular criterion is, for example, every 100 milliseconds. The second of the two-bit message
When the bit is 0, this indicates a NO-OP signal. NO-OP (non-operation) signal
The respective input queue to receive the data has not been disabled.
In the preferred embodiment, the XON signal is an input key placed in any of the XOFF states.
Used to enable Each input that receives XON from a specific output queue
The power queue is enabled to issue requests to transmit to its output queue. More special
Specifically, XON resets both XOFF (dynamic) and XOFF (assigned) states.
Cut. The XON signal reduces unnecessary switch traffic and reduces error traffic.
Used together with regularly enabled, both to prevent row blocking
Can be done.
Requesting input queues receive various combinations of responses to transmission requests
It is clear that this can be done. NO-OP and ACCEPT or REJECT
Reception operates as described above. XOFF (dynamic) and ACCEPT or XOFF
(Allocated) and ACCEPT reception is diverted through the specified bandwidth.
Stop the transfer of one cell followed by further requests to send. XOFF (dynamic) and RE
The reception of either JECT or XOFF (assignment type) and REJECT is specified.
Further requests to transfer over the allocated bandwidth stop immediately and no cells are transmitted.
No. Thus, while the XOFF command affects future requirements, REJ
The ECT command provides for rejection of the current request.
NO-OP / XOFF (dynamic) messages are unnecessary feeds in the switch.
Used to reduce back signaling. The switch bandwidth is
If it cannot be transmitted through the switch and the REJECT appears repeatedly,
Used inefficiently. Therefore, XOFF (dynamic) means that
Switch ("FSPP") queue to reduce the number of requests for the entire queue
Used to change the port processor ("TSPP").
Flow control using the feedback messages described above is a reliable
Point-to-multipoint transmission, i.e. multiple outputs from a single input queue.
Provides transmission to the force queue. In point-to-multipoint operation, multiple outputs
Feedback messages from a power queue to a single input queue can be
A single XOFF (dynamic) or REJECT message from any one of the
The logical OR is set so that the message prevents transmission. Therefore, point-to-multi
Point cells are transmitted at the rate of the slowest destination queue.
The flow control by the 2-bit feedback message described above also
Medium reliable multipoint-to-point transmission, i.e. from multiple input queues
Provides transmission to a single output queue. Each output queue has a threshold and the output queue
Sends an XON message when it has exhausted its threshold. Multipoints
In point operation, the XON threshold of the output queue is determined by the
Set dynamically to leave enough space for transmission. For example, 8 inputs
If there is a queue, the output queue is filled to receive all cells sequentially during the same period.
The threshold is set to 8 to free up space.
BRIEF DESCRIPTION OF THE FIGURES
The above and other features of the present invention will be described in detail with reference to the accompanying drawings.
Will be obvious. In the figure,
FIG. 1 shows a switch interconnect block diagram;
Figure 2 illustrates point-to-point operation, switch flow control and link flow control.
FIG.
FIG. 3 is a block diagram showing a point-to-multipoint operation.
FIG. 4 is a block diagram showing a multipoint-to-point operation.
Detailed description of the invention
Referring now to FIG. 1, the switch comprises an NxN switch body 10 and a bandwidth arbiter.
And a plurality of switch terminating port processor subsystems ("TSPP").
14, a plurality of exchange receiving port processor ASICs 15, and a plurality of exchanges
Incoming port processor subsystem ("FSPP") 16 and multiple switch originating
Side port processor ASIC 17 and multiple multipoint topology controllers
And 18. NxN switch body such as ECL cross point switch body
, Used for cell data transport, with N times the throughput of 670 Mbps
Produces a put. The bandwidth arbiter controls the switch
Dynamic scheduling of unallocated bandwidth for multipoint-to-point
Resolve regional competition. Each TSPP sends information from a number of connections to the switch itself.
Schedule transmission of files. Between the input link and the TSPP subsystem
The physical line interface is not shown. The FSPP is sent from the switch body.
And organize these cells on the outgoing link. Output link and FSP
The physical line interface to the P subsystem is not shown.
Referring now to FIG. 2, the switch includes a plurality of input ports 20 and a plurality of output ports.
Ports 22 and their respective input and output ports
And an input buffer 26 and an output buffer 28 attached thereto. To go through the exchange
At the same time, the cell 24 enters the switch through the input port and is buffered in the input buffer.
Ringed. The cells are then buffered from the input buffer to the output buffer in the output port.
Falling. From the output port, the cell is connected to the outside of the switch, for example another switch 29.
Transmitted to In response to a transfer request, the output buffer fills up to a predetermined threshold level.
Input port to prevent transmission of cells from the input port to the output buffer.
A feedback message 30 is provided.
Feedback message 30 prevents cell loss in the switch. To output buffer
If the number of transmitted cells 24 is greater than the number of available output buffers 28
, Cells are lost. However, in response to the transfer request, the output buffer
If the threshold level is met, the input buffer will prevent transmission of cells from the input buffer.
The feedback message 30 is transmitted to the port 20. Threshold level used
Set a value that prevents transmission of more cells than can be handled by the possible output buffers.
Is set. Therefore, cell loss between the input and output buffers is
Prevented by feedback messages.
To provide both connection-type and traffic-type isolation,
Buffers 26 and 28 are organized into queues 32 and 34, respectively, with one flow control
Is performed for each queue. Each queue contains a number of buffers, each input port and
The output port includes a number of input queues 32 and a number of output queues 34. To exchange
Upon entry, each cell 24 is designated for final transmission to a particular output queue 34.
It is loaded into the input queue 32. Traffic resources when shared resources are used
Queues are assigned to traffic-type groups to provide
Hit. By assigning only one queue to a connection,
-Control can be performed for each connection. In addition, one traffic type
One for each
A nested queue of queues is used to provide per-connection flow control.
Can be.
For multipoint topologies, many queues per connection
Required and circuitous to implement per-connection flow control.
In the TSPP, if there are multiple sources for a multipoint connection,
Multiple queues are nested in the scheduling list 48. In TSPP
If there is a single source, the scheduling list is still used, but
It has one queue. The scheduling list actually indicates that the queue is
Queue that has cells to be transmitted for
There is a scheduling list for each connection, and the TSPP
Support Nection. Therefore, the scheduling list is used as an input queue.
The terms are used interchangeably below.
Each connection is based on the traffic type associated with the connection.
Is assigned a bandwidth type. Within the switch, allocated and dynamic bandwidth
Two types of bandwidth are allowed. Allocated bandwidth is the cost to which the bandwidth is allocated.
The bandwidth "remaining" to be used by the connection. Generally, allocation
A connection with a typed bandwidth will have all the amount of the typed bandwidth allocated to that connection.
Access is guaranteed. Thus, deterministic control over delay
Allocated bandwidth is allocated to the required traffic types. Dynamic bandwidth is
, Bandwidth that is “shared” by various competing connections. Dynamic bandwidth is shared
As a resource, a particular connection generally has access to a certain amount of bandwidth
Is not guaranteed. Because of this, dynamic bandwidth typically has a larger delay range
Assigned to the connection. Dynamic and allocated bandwidth for other connections
May be assigned.
Connections that use dynamic bandwidth, allocated bandwidth, or both
Each transfer request is tagged to distinguish cells associated with the service. Change
More specifically, a transfer request for a connection using dynamic bandwidth is in a first state.
Requests to transfer connections that are tagged with bits and use allocatable bandwidth
The second state bit is tagged. Cell rate to which the connection was allocated
Works at or below, the transfer request is tagged as assigned
.
Referring now to FIGS. 1, 2 and Table 2, the feedback message 30 is required.
Provided in response to the request message 36. From input port 20 to output port 22
Before transmitting the cells, is there sufficient buffer 28 available in the output port?
To determine whether to include an allocatable / dynamic tag from the input port to the output port 22
Request message is sent. Feedback message 30 goes to output port
Provide an indication of the buffer status at which point the transmission proceeds. The cell is the selected item
The request message 36 always precedes the cell transfer so that
.
Feed from output port to input port to provide effective flow control
Back message 30 includes several subtype messages. For example, fee
The debug message is an ACCEPT message that can be sent in response to the request message.
Including messages. A 1-bit digital signal is used, and the first bit = 0 is
Output
Indicates the ACCEPT of the input queue request to be transferred to the queue. To the requested input queue
Thus, when the ACCEPT is received, the cell is transferred to the output queue.
Feedback message 30 may also include a REJECT message. Change
Specifically, the response to the request message is an ACCEPT or REJECT message.
Page. Using a 1-bit digital signal, the first bit = 1
Indicates REJECT of a request to transfer a cell to an output queue. Requested input queue
When the REJECT is received by the client, the cell is not transferred to the output queue. I
However, a further request message 36 is sent from the input queue to the output queue.
sell.
Feedback message 3 to reduce unnecessary message traffic
0 also temporarily stops transmission of request message 36 over dynamic bandwidth
XOFF (dynamic) message. 2-bit digital feedback
The second bit = 1 indicates XOFF (dynamic). Specific output queue
Each input queue 32 receiving XOFF (dynamic) from the designated
Request for dynamic bandwidth for that particular output queue until
Temporarily stop the transmission of the message. The specified event has passed the specified time, or
Is received. The second bit = 0 is NO-OP, that is, XOFF (dynamic)
Indicates an inactive message which means not asserted.
The feedback message is also an XOFF (assignment type) feedback message.
May be included. Each input queue that receives XOFF (assignment type) from a specific output queue
Is assigned to that particular output key through the allotted bandwidth until the specified event occurs.
Temporarily stop making requests to send to the queue. The specified event is typical
Is the reception of an XON signal which allows a request for further transfer to be sent
. The input queues are also regular, i.e., when each particular input queue is XOF
Enabled by the XON signal, regardless of whether it has been placed in the F (assigned) state.
Can be Such a regular criterion is, for example, every 100 milliseconds.
Actually, the request tagging technology indicates XOFF (dynamic) or XOFF (assignment type).
Allows the use of a single XOFF message for Request tagging technology
Tag bits based on whether the request is for dynamic bandwidth or allocated bandwidth
Tags bandwidth requests by bandwidth. Thus, the tag bits are assigned
Request and dynamic request and feedback, i.e. dynamic bandwidth
The XOFF transmitted in response to the request is XOFF (dynamic).
Using a 2-bit feedback message, depending on the input queue requested
Various responses to each request message may be received. Such a response is
Is interpreted as follows. NO-OP and reception of ACCEPT or REJECT are as follows
It works like The reception of XOFF (dynamic) and ACCEPT
Indicates that a further request will stop the subsequent transfer of one cell. XOFF (dynamic) and
Receipt of a REJECT will immediately stop further requests for transfer and the cell will not be transmitted at all.
Indicates that it will not be sent. In this way, the XOFF (dynamic) command is
While influencing, the REJECT command provides for rejection of the current request.
The feedback message 30 enables further transmission of the request message
XON messages. An XON message is a
It occurs synchronously and is not given in response. XON messages are both
This is effective for removing the XOFF condition. Receive XON from specific output queue
Each incoming queue can make a request to forward to its output queue
Has been.
To reduce the likelihood of lockups occurring in switch flow control,
Irrespective of removal or failure of internal elements such as ports
It is desirable to use a timeout type function that allows continued operation. An example
For example, after receiving the XOFF (dynamic or allocation type) message, the specific output queue 3
Input queue 32, which has stopped transmitting request messages to
If no XON message is received from the output queue, the
Further request messages may be transmitted. Alternatively, the input queue is set to XOFF (dynamic
Request message may be transmitted periodically regardless of the status (target or allocation type).
Referring again to FIG. 1, the present invention will be described in more detail. Desired architecture
In each channel, each input port includes TSPP14 and each output port includes FSPP16.
Including. TSPP and FSPP are organized into queues 32 and 34, respectively.
And RAM. All cells in connection 40 have a lifetime of the connection.
For each port, one is in the TSPP and the other is a single in the FSPP.
Go through the queue. Thus, the queue maintains cell order. This method also has one
Quality of service ("QoS") for each connection.
The request message 36 indicates that sufficient buffer 34 is available for cell transmission.
The protocol sent from TSPP14 to FSPP16 to determine if
It is. To ensure that no cells are lost in the switch, the TSPP
Sends cell to FSPP unless there is available buffer space for that cell
Can not do it. To determine buffer status, the probe sends a cell
Communicate the destination multi-queue number indicating the FSPP queue to be sent. For example,
The destination multi-queue number may identify output queue 34a as the destination queue. That
If no buffer space is available in the queue, as described below,
The SPP is either “REJECT” or “XOFF (dynamic or allocation type)” or
Responds to the probe by both.
To implement switch flow control probes and feedback messages
, Three communication paths: a probe crossbar 42 and an XOFF crossbar 44
And the XON crossbar 46 are used. Probe crossbar 42 is FSPP
NxN crosspoint used to transmit multi-queue numbers to each FSPP
It is the exchange body. Multi-queue numbers use point-to-multipoint
Identify multiple destination queues for a cell for The FSPP uses the probe 36
To the appropriate output queue 34 so that the
That there are enough output buffers available in the destination queue for receiving messages
To determine. For point-to-multipoint, there are many multi-queue numbers.
There is only one multi-queue number per connection per FSPP.
The XOFF crossbar 44 is a “transmission disabled” type from FSPP16 to TSPP14
NxN serial crosspoint switch used to communicate multiple messages
The main body. Each TSPP has a queue of cells to be transmitted for each connection.
A number of scheduling lists 48 with Feedback message
The first bit of the page 30, ie, WOFF, is the scheduling list of the specific TSPP.
Asserted to stop transmitting the request message probe 36,
A state control bit for setting the scheduling list of the received TSPP to the XOFF state.
The scheduling list 48 of the TSPP does not use dynamic bandwidth.
Means that The scheduling list of this TSPP is
XOFF state until a message is received. The second bit, REJEC
T indicates that insufficient buffer space is available to receive cells without FSPP
Asserted in some cases. This state indicates that the FSPP destination queue is full
Or the entire output buffer pool is depleted. TSPP
Does not dequeue cell 24 through data crossbar 47,
To
Respond to the REJECT feedback message. Instead, it is supplemented
The idle cell indicated by the CRC is transmitted. TSPP is
Assert by changing the XOFF status bit in the scheduling list
Responsive to the received XOFF (dynamic) feedback message. XOFF state
Until the cell buffer is available by the FSPP.
SPP sends request message from its queue on its scheduling list
Prevent trying.
XON crossbar 46 is used to communicate "sendable" type messages
NxN serial contention based switchboard. More specifically
Indicates that the XON crossbar 46 communicates XON messages from the FSPP to the TSPP.
Used to If the number of buffered cells in the FSPP queue is X
XON message is sent from FSPP to TSPP when it falls below ON threshold
Is done. XON message is TSPP scheduling list request message
To resume transmission of
FIG. 3 illustrates a point-to-multipoint switch flow control, ie, a single input queue.
-32 to a number of output queues 34. Point-to-multipoint
In operation, the XOFF crossbar performs a logical OR function. More specifically, X
The OFF crossbar will be sent by the FSPP to provide a single feedback message.
The logical OR of the feedback message 30 asserted is executed. result
REJECT or XOFF from any FSPP is received by RE
A single result flag that is interpreted as asserting JECT and / or XOFF.
Causes a feedback message. This technology allows TSPP to be the slowest destination key.
Limit transmission at the queue rate. However, this technology also
Provides continuous transmission for the desired synchronization.
In the case of point-to-multipoint transmission, the TSPP uses multiple XOs.
It can be seen that N messages can be received. This means that many XOFF
Therefore, one or more FSPPs may set XOFF for a transfer request.
This is because it can be asserted. In such a case, the TSPP scheduling list
XON messages received when the XOFF status of the
It is. For example, when a large number of XON messages are sent, the TSPP first receives
Ignore the XON received after the received XON message. Multi point
In case of two-point transmission, the scheduling list is transferred to the FSPP queue.
, XON messages are sent to all TSPPs simultaneously.
FIG. 4 shows a multipoint-to-point switch flow control, ie, multiple input queues.
FIG. 3 illustrates transmission from 32 to a single output queue 34. Each output queue has a threshold
XON message is sent when the output queue drops below that threshold
You. In multipoint-to-point operation, the XON threshold of the output queue is
Dynamically set so that the queue leaves enough buffer to transmit to the output queue
Is done. For example, if eight queues are transmitting, the output queue will be all eight cells
The threshold is set to 8 to free enough buffers to receive
Set, thus ensuring that each queue has a chance to transmit.
Referring now to FIGS. 1 and 4, a multipoint-to-point connection
, Regardless of whether the TSPP is transmitted to the asserting FSPP queue.
XON clock to broadcast to all TSPPs in the exchange.
A subbar 46 is used. Multipoint topology for broadcast
Controller 18 transmits reverse broadcast channel number instead of FSPP
I do. The next receiving multipoint topology controller determines which schedule
Reverse broadcast channel to determine whether to enable
Vs scheduling list number look
Run up. T for which there is no queue to transmit for that particular FSPP queue
SPP states that reverse broadcast channel number lookup entry is invalid
Is not affected by the broadcast XON message.
No.
Referring again to FIG. 2, with additional flow control enhancements, the queue is
The output queue is organized according to a hierarchy having a number of individual flows 52 in the bell.
Feedback messages 30 from the queue to the input queue are combined at each hierarchical level
It is formed based on the performed flow. Another emphasis is that queues are at each hierarchical level
Is organized based on a hierarchy with a large number of individual flows and inputs from output queues
Feedback messages to the queue are formed based on each individual flow
.
The probe & XOFF communication path operates in a pipeline format. First, TSPP
14 selects an input queue 34 and information associated with that queue is output to an output port for transmission.
Used to determine the destination or destination output queue. Bandwidth arbitrator
Uses this information to control successive probes, TSPPs and crosspoints.
Down to the TSPP to FSPP connectivity map used for More specifically,
FSPP multi-queue number transmitted to FSPP using probe crossbar 42
Is done. Next, the FSPP tests the availability of the buffer,
If the key is not available, REJECT and / or XO on the XOFF crossbar
Assert FF. Next, the TSPP asserts if REJECT is asserted.
Transmit the idle cell. If XOFF is asserted, the TSPP will be scheduled
The list to the XOFF state. TSP if enough buffers are available
P uses the data crossbar 47 to transfer the cell to the FSPP output queue.
Table 3 shows that REJEC according to the request tagged as using dynamic bandwidth
Summarizes the method used by the FSPP to assert T and XOFF
I do. The method has two relationships: traffic type cell counting with respect to cell counting limits.
And the dynamic buffer count of the queue with respect to the buffer count limit. Traffic
Type cell count is applied to connections in traffic type, eg "VBR"
Thus, it is a count of all cells that are shared. REJE if limit is not exceeded
Neither CT nor XOFF is asserted. More specifically, the traffic
If the ipcell count is below the limit and the queue dynamic buffer count is below the limit,
In this case, neither REJECT nor XOFF is asserted. Traffic type
If the cell count is less than the limit but the queue dynamic buffer count is
In this case, both REJECT and XOFF are asserted. Traffic type cell
If the count is above the limit and the dynamic buffer count of the queue is below the limit, X
OFF is not asserted, but REJECT is asserted. Traffic ties
If the Pussel count is over the limit and the queue dynamic buffer count is over the limit
, REJECT and XOFF are asserted.
Table 4 shows REJECT and REJECT on request tagged using allocated bandwidth.
Summarizes the method used by the FSPP to assert XOFF and XOFF
. The method has three relationships: buffer status counting with respect to the buffer status counting limit;
Traffic type cell count for cell count limit and buffer count limit for cell count limit
Based on the queue's allocated buffer count. Link flow control is
Use the buffer status counter to indicate The allocated buffer status
Counters for the assigned components of the connection using link flow control.
Used to record the cell being transmitted. Queue allocated buffer
State count is greater than the count limit and traffic type cell count is greater than the cell count limit.
Yes, when the queued buffer count is greater than or equal to the count limit, REJE
Neither CT nor XOFF is asserted. The allocated buffer of the queue
When the count is above the buffer count limit, both REJECT and XOFF
Will be asserted. Queue assignments
Buffer count is less than the count limit, but the queue's allocated buffer status
Either the count is above the count limit or the traffic type cell count is above the cell count limit.
At one time, REJECT is asserted, but XOFF is not. all
In all cases, if the FSPP queue has already sent XOFF,
Assert XOFF again with the probe.
Various changes and modifications to the methods and apparatus described above may occur in connection with the new features disclosed herein.
It will be appreciated that this can be done without departing from the concept. Therefore, the present invention
It is considered that the present invention is not limited to the embodiments.
【手続補正書】特許法第184条の8第1項
【提出日】1997年2月27日
【補正内容】
請求の範囲
1. 少なくとも1つの入力キューを形成し、複数の入力ポートに関連する複数
の入力バッファと、少なくとも1つの出力キューを形成し、複数の出力ポートに
関連する出力バッファとを有する網交換機の中で、少なくとも1つの入力された
データユニットのフローを制御する方法であって、
少なくとも1つの入力ポートで受信される少なくとも1つの入力されたデータ
ユニットを交換機内に受信する段階と、
少なくとも1つの入力されたデータユニットを少なくとも1つの出力ポートへ
伝送する要求を転送する段階と、
少なくとも1つの入力されたデータユニットを受信するために少なくとも1つ
出力ポートに関連する充分な出力バッファが使用可能であれば該伝送要求を認可
する段階と、
少なくとも1つの入力されたデータユニットを受信するために少なくとも1つ
出力ポートに関連する充分な出力バッファが使用可能でなければ該伝送要求を拒
否する段階と、
出された要求が認可されれば少なくとも1つの入力されたデータユニットを少
なくとも1つの入力ポートから少なくとも1つの出力ポートへ伝送する段階と、
伝送要求が拒否されれば少なくとも1つの入力されたデータユニットの少なく
とも1つの入力ポートから少なくとも1つの出力ポートへの伝送を遅延する段階
とからなる方法。
2. 該伝送する段階は、少なくとも1つの入力されたデータユニットを異なる
出力ポートに関連付けられる複数の各出力キューへ伝送する段階を更に有する請
求項1記載の方法。
3. 少なくとも1つの入力されたデータユニットは少なくとも1
つの入力キューで受信され、該要求を転送する段階は、少なくとも1つの入力さ
れたデータユニットの各入力されたデータユニットが宛てられた少なくとも1つ
の出力キューの夫々の出力キューにおいて少なくとも1つの入力されたデータユ
ニットを受信すると、少なくとも1つの入力キューの各入力キューから要求を転
送する段階を更に含み、各伝送要求は1つの伝送毎に夫々の入力キュー及び出力
キューに対して特定的である、請求項1記載の方法。
4. 交換機を通じて少なくとも1つのコネクションが確立され、選択されたコ
ネクションに対して少なくとも1つの入力キュー及び出力キューを割り当てる段
階を更に有し、それによりフロー制御は1つのコネクション毎に実行される、請
求項3記載の方法。
5. 選択されたサービスクラスに対して各入力キュー及び出力キューを割り当
てる段階を更に有し、各サービスクラスは伝送優先度レベルに関連づけられ、伝
送要求は少なくとも部分的に上記優先度レベルに基づいて許可及び拒否される、
請求項3記載の方法。
6. 選択されたコネクション及び選択されたサービスクラスに対して各入力キ
ュー及び出力キューを割り当てる段階を更に有し、各サービスクラスは伝送優先
度レベルに関連づけられており、それによりフロー制御は1つのコネクション毎
及び1つのサービスクラス毎に実行され、伝送要求は少なくとも部分的に上記優
先度レベルに基づいて許可及び拒否される、請求項3記載の方法。
7. 伝送要求に応答して、出された要求の許可又は拒否を示す第1の信号を含
むフィードバックメッセージを与える段階を更に有し、少なくとも1つの入力キ
ューの中の少なくとも1つの入力されたデータユニットは、上記メッセージが許
可を示せば少なくとも1つ
の出力キューへ伝送され、メッセージが拒否を示せば少なくとも1つの出力キュ
ーへ伝送されない、請求項3記載の方法。
8. フィードバックメッセージの一部として伝送要求を転送することを止める
命令、又は非作動のいずれかを示す第2の信号を与える段階を更に有し、少なく
とも1つの出力キューから伝送要求を転送することを止める命令を受信する各入
力キューは、上記伝送要求を転送することを止める命令を与えられた出力キュー
へ伝送要求を出すことを止める、請求項7記載の方法。
9. 単一の入力キューから複数の出力キューへの伝送の場合、単一の入力キュ
ーから複数の出力キューへの伝送が同期間に行われるよう、少なくとも1つの出
力キューからのフィードバックメッセージの夫々の第1及び第2の信号に対して
論理OR演算を実行する段階を更に有する、請求項8記載の方法。
10. 複数の入力キューから特定の出力キューへの伝送の場合、複数の入力キ
ューからのデータユニットの同期間的な受信のために充分なバッファを与えるた
め、特定の出力キューによって伝送要求を転送することを止める命令が与えられ
る閾値をセットする段階を更に有する、請求項8記載の方法。
11. 所定の数のデータユニットの受信のために充分なバッファが使用可能に
なったとき、少なくとも1つの入力キューのうちの1つが少なくとも1つの出力
キューのうちの1つに対して伝送要求を転送することを再び可能にすることによ
って、伝送要求を転送することを止める命令を取り消す第3の信号を与える段階
を更に含む、請求項8記載の方法。
12. 少なくとも1つの出力キューのうちの1つからデータユニットをデキュ
ーするときに第3の信号を与える段階を更に含む、請求項11記載の方法。
13. 少なくとも1つの出力キューのうちの1つが閾値以下に下がったときに
与えられる第3の信号を与えるよう、少なくとも1つの出力キューのうちの1つ
の中に閾値をセットする段階を更に有する、請求項13記載の方法。
14. 第2の信号の伝送に続いて所定の時間が経過した後に、少なくとも1つ
の入力キューのうちの1つに対して第3の信号を与える段階を更に有する、請求
項11記載の方法。
15. 規則的な時間に基づいて少なくとも1つのの入力キューのうちの1つに
対して第3の信号を与える段階を更に有する、請求項11記載の方法。
16. 少なくとも1つの出力キューのうちの1つから複数の入力キューに対し
て第3の信号を与える段階を更に有する、請求項11記載の方法。
17. 入力バッファ及び出力バッファを、各階層レベルに多数の個々のデータ
ユニットのフローを有するレベルの階層へ組織化する段階を更に有し、夫々のレ
ベルにおいて結合されたフローに基づいて各レベルに対してフィードバックメッ
セージが与えられる、請求項2記載の方法。
18. 入力バッファ及び出力バッファを、各階層レベルに多数の個々のデータ
ユニットのフローを有するレベルの階層へ組織化する
段階を更に有し、各個々のフローに対してフィードバックメッセージが与えられ
る、請求項2記載の方法。
19. 電気通信網の中で少なくとも1つのデータユニットのフローを制御する
網交換機であって、
交換機に入力されたデータユニットを受信する少なくとも1つの入力ポートと
、
該交換機から外へデータユニットを伝送する少なくとも1つの出力ポートと、
伝送のために夫々の入力ポートで受信された入力されたデータユニットをエン
キューする該少なくとも1つの入力ポートに関連する少なくとも1つの入力バッ
ファキューと、
該少なくとも1つの入力バッファキューから受信された入力されたデータユニ
ットを受信し、一時的に記憶する該少なくとも1つの入力バッファキューに関連
する少なくとも1つの出力バッファキューと、
データユニットがエンキューされる入力バッファキューから特定の出力バッフ
ァキューへ少なくとも1つのデータユニットを伝送する許可の認可を示す第1の
状態と、入力バッファキューから該少なくとも1つの出力バッファキューのうち
の1つへエンキューされたデータユニットを伝送する許可の拒否を示す第2の状
態とを有するフィードバックメッセージを、該少なくとも1つの入力バッファキ
ューに対して与えるよう動作可能な少なくとも1つのフィードバックメッセージ
発生器とからなる網交換機。
20. 該少なくとも1つの入力バッファキューのうちの該1つから該少なくと
も1つの出力バッファキューのうちの該1つへ少なくとも1つのデータユニット
を伝送する許可を要求する信号を発生するよう動作可能な少なくとも1つの伝送
要求発生器を更に有し、該
少なくとも1つのフィードバックメッセージ発生器は該少なくとも1つの伝送要
求発生器からの許可要求信号に応答して該フィードバックメッセージを与える、
請求項19記載の交換機。
21. 各出力ポートはフィードバックメッセージ発生器を含む、請求項20記
載の交換機。
22. 交換機の中で複数のコネクションが確立され、上記各コネクションは少
なくとも1つの単一の入力キューと少なくとも1つの単一の出力キューとを使用
し、それによりフロー制御は1つのコネクション毎に実行される、請求項19記
載の交換機。
23. 少なくとも1つの入力キュー及び少なくとも1つの出力キューは選択さ
れたサービスクラスに割り当てられ、それによりフロー制御は1つのサービスク
ラス毎に実行される、請求項19記載の交換機。
24. 交換機の中で複数のコネクションが確立され、各入力キュー及び各出力
キューは選択されたコネクション及び選択されたサービスクラスに割り当てられ
、それによりフロー制御は1つのサービスクラス毎、及び1つのサービスクラス
毎に実行される、請求項19記載の交換機。
25. 出された要求が認可されたか、又は拒否されたかを示す第1の信号を含
むフィードバックメッセージは該許可要求信号に応答して与えられる、請求項2
0記載の交換機。
26. 第1の信号が伝送の許可が認可されたことを示す場合、エンキューされ
たデータが伝送され、第1の信号が伝送の許可が拒否
されたことを示す場合、エンキューされたデータは直ぐには伝送されない、請求
項25記載の交換機。
27. 該フィードバックメッセージは夫々が非作動と、許可要求信号を送信す
ることを止める命令とを示す第1及び第2の状態を有する第2の信号を含み、該
複数の出力キューのうちの1つから第2の状態にある第2の信号を受信する各入
力キューは該複数の出力キューのうちの1つに対して伝送要求を出すことを止め
る、請求項20記載の交換機。
28. 単一の入力キューから複数の出力キューへの伝送の場合、単一の入力キ
ューから複数の出力キューへの伝送は直列に同期間に行われるよう、該複数の出
力キューからのフィードバックメッセージの夫々の第1及び第2の信号に対して
論理OR演算を実行する論理回路を含む、請求項27記載の交換機。
29. 複数の入力キューから特定の出力キューへの伝送の場合、複数の入力キ
ューからの伝送の同期間的な受信のために充分なバッファを与えるため、第2の
状態にある第2の信号が特定の出力キューに関連して与えられる動的に調節可能
な閾値が増加される、請求項27記載の交換機。
30. 該複数の入力キューのうちの1つが該複数の出力キューのうちの1つに
対して許可要求信号を転送すること再び可能にすることによって第2の状態にあ
る第2の信号を取り消すよう、該複数の出力キューのうちの1つから該複数の入
力キューのうちの1つに対して第3の信号が与えられる、請求項27記載の交換
機。
31. 該第3の信号は、該複数の出力キューのうちの1つからの
データユニットをデキューするときに与えられる、請求項30記載の交換機。
32. 複数の出力キューのうちの1つが閾値以下に下がったときに与えられる
該第3の信号を与えるよう、複数の出力キューのうちの1つの中で該閾値がセッ
トされる、請求項30記載の交換機。
33. 第2の状態にある該第2の信号の受信に続いて所定の時間が経過した後
に、該複数の入力キューのうちの1つに対して該第3の信号が与えられる、請求
項30記載の交換機。
34. 規則的な時間に基づいて複数の該入力キューのうちの1つに対して該第
3の信号が与えられる、請求項30記載の交換機。
35. 該複数の出力キューのうちの1つから複数の入力キューに対して該第3
の信号が与えられる、請求項30記載の交換機。
36. 該少なくとも1つの入力バッファ及び該少なくとも1つの出力バッファ
は夫々、各階層レベルに多数の個々のデータユニットのフローを有するレベルの
階層へ配置され、該フィードバックメッセージは夫々のレベルにおいて結合され
たフローに基づいて各レベルに対して与えられる、請求項19記載の交換機。
37. 該少なくとも1つの入力バッファ及び該少なくとも1つの出力バッファ
は夫々、各階層レベルに多数の個々のデータユニットのフローを有するレベルの
階層へ配置され、該フィードバックメッセージは個々のフローの夫々に対して与
えられる、請求項19記載の交換機。
38. 少なくとも1つの入力キューに関連する複数の入力バッファと、少なく
とも1つの出力キューに関連する複数の出力バッファとを有する網交換機の中で
、少なくとも1つの入力されたセルのフローを制御する方法であって、
入力メモリの入力キューの中で受信される少なくとも1つの入力されたセルを
交換機内で受信する段階と、
少なくとも1つの入力されたセルを該少なくとも1つの出力キューへ伝送する
要求を転送する段階と、
少なくとも1つの入力されたセルの受信のために出力キュー内で充分なバッフ
ァが使用可能であれば該伝送要求を認可する段階と、
少なくとも1つの入力されたセルの受信のために出力キュー内で充分なバッフ
ァが使用可能でなければ該伝送要求を拒否する段階と、
出された要求が認可されれば割付けられ、動的に使用可能なバッファ用に少な
くとも1つを使用して、少なくとも1つの入力されたセルを入力キューから出力
キューへ伝送する段階と、
出された要求が拒否されれば少なくとも1つの入力されたセルを入力キューか
ら出力キューへの伝送を遅延する段階とからなる、網内の少なくとも1つの入力
されたセルのフローを制御する方法。
39. 存在するコネクション全てによって共用される全てのセルのセル計数が
第1の限界よりも小さく、該少なくとも1つの出力キューのうちの1つに関連す
る動的バッファ計数が第2の限界以上であるとき、該要求を拒否する第1の信号
と、1つの出力キューへ伝送要求を転送することを中止させる第2の信号とを両
方ともアサートする段階を含む、請求項38記載の方法。
40. トラヒックタイプセル計数が第1の限界よりも小さく、1つの出力キュ
ーに関連する動的バッファ計数が第2の限界よりも小さい場合、第1の信号及び
第2の信号のどちらもアサートしない
段階を更に有する、請求項39記載の方法。
41. トラヒックタイプセル計数が第1の限界以上である場合、第1の信号を
アサートする段階を更に有する、請求項40記載の方法。
42. トラヒックタイプセル計数が第1の限界以上であり、1つの出力キュー
に関連する動的バッファ計数が第2の限界以上である場合、第1の信号及び第2
の信号の両方をアサートする段階を更に有する、請求項41記載の方法。
43. 1つの出力キューに関連する割付けられたバッファ状態計数が第2の限
界以上であり、トラヒックタイプセル計数が第1の限界以上であり、割付けられ
たバッファ計数が第3の限界以上であるとき、第1の信号及び第2の信号のいず
れもアサートしない段階を更に有する、請求項42記載の方法。
44. 割付けられたバッファ計数が第3の限界以上であるとき、第1の信号及
び第2の信号の両方をアサートする段階を更に有する、請求項43記載の方法。
45. 割付けられたバッファ計数が第3の限界より小さいが、割付けられたバ
ッファ状態計数が第2の限界以上であるか、又はトラヒックタイプセル計数が第
1の限界以上であるとき、第2の信号をアサートするが、第1の信号をアサート
しない段階を更に有する、請求項44記載の方法。
46. 出力キューが既に第1の信号を送信していれば、続くプローブ上で第1
の信号を再びアサートする段階を更に有する、請求
項45記載の方法。[Procedure of Amendment] Article 184-8, Paragraph 1 of the Patent Act
[Submission date] February 27, 1997
[Correction contents]
The scope of the claims
1. A plurality associated with a plurality of input ports forming at least one input queue
Forms at least one output queue with the input buffer of
At least one input switch in a network switch having an associated output buffer.
A method for controlling the flow of a data unit, comprising:
At least one input data received at at least one input port
Receiving the unit into the exchange;
At least one input data unit to at least one output port
Forwarding the request for transmission;
At least one for receiving at least one input data unit
Authorize the transmission request if sufficient output buffers associated with the output port are available
To do,
At least one for receiving at least one input data unit
If there are not enough output buffers available for the output port, the transmission request is rejected.
Rejecting,
At least one input data unit is reduced if the request issued is granted.
Transmitting from at least one input port to at least one output port;
At least one input data unit if the transmission request is rejected
Delaying transmission from at least one input port to at least one output port
A method consisting of
2. The step of transmitting differs in at least one input data unit
A transmission to each of a plurality of output queues associated with the output port.
The method of claim 1.
3. At least one input data unit has at least one
Receiving at one of the input queues and forwarding the request comprises at least one input queue.
At least one of each of the input data units addressed to
At least one input data unit in each output queue of the output queues.
When a unit is received, the request is transferred from each input queue of at least one input queue.
Sending each transmission request to a respective input queue and output for each transmission.
The method of claim 1, wherein the method is specific to the queue.
4. At least one connection is established through the switch and the selected
Assigning at least one input queue and one output queue to a connection
Floors, whereby flow control is performed for each connection.
The method of claim 3.
5. Assign each input queue and output queue to the selected service class
Each service class is associated with a transmission priority level and
Sending requests are allowed and denied based at least in part on the priority level;
The method of claim 3.
6. Each input key for the selected connection and the selected service class
Queue and output queue, each service class having transmission priority.
Level, so that flow control is done on a connection-by-connection basis.
And one service class, and the transmission request is at least partially
4. The method of claim 3, wherein permission and denial are based on a preference level.
7. In response to the transmission request, includes a first signal indicating permission or denial of the issued request.
Providing at least one input key.
At least one input data unit in the queue is
At least one if indicated
At least one output queue if the message indicates rejection.
4. The method of claim 3, wherein said method is not transmitted to a server.
8. Stop forwarding transmission requests as part of the feedback message
Providing a second signal indicating either a command or a non-actuation.
Each input receiving an instruction to stop forwarding transmission requests from one output queue
The power queue is an output queue given an instruction to stop forwarding the transmission request.
The method according to claim 7, wherein the transmission request is stopped.
9. For transmission from a single input queue to multiple output queues, a single input queue
At least one output so that transmissions from the
For each of the first and second signals of the feedback message from the force queue
9. The method of claim 8, further comprising performing a logical OR operation.
10. For transmission from multiple input queues to a specific output queue, multiple input queues
To provide enough buffer for synchronous reception of data units from the queue.
Command to stop forwarding the transmission request by a particular output queue.
The method of claim 8, further comprising setting a threshold value.
11. Sufficient buffers are available to receive a given number of data units
At least one of the at least one input queue has at least one output
By re-enabling forwarding of transmission requests to one of the queues
Providing a third signal for canceling the command to stop transmitting the transmission request.
9. The method of claim 8, further comprising:
12. Dequeue data units from one of at least one output queue.
12. The method of claim 11, further comprising the step of providing a third signal when performing.
13. When one of the at least one output queue drops below a threshold
One of the at least one output queue to provide a given third signal
14. The method of claim 13, further comprising setting a threshold value within.
14. After a predetermined time has elapsed following the transmission of the second signal, at least one
Providing a third signal to one of the input queues of
Item 12. The method according to Item 11.
15. To one of at least one input queue based on regular time
The method according to claim 11, further comprising the step of providing a third signal to the signal.
16. From one of at least one output queue to multiple input queues
12. The method of claim 11, further comprising providing a third signal.
17. Input and output buffers are organized into a number of individual data
Further comprising the step of organizing into a hierarchy of levels having a unit flow, each level
Feedback messages for each level based on the combined flows in the bell
3. The method of claim 2, wherein a sage is provided.
18. Input and output buffers are organized into a number of individual data
Organize into a hierarchy of levels with unit flows
Further comprising the step of providing a feedback message for each individual flow.
3. The method of claim 2, wherein
19. Controlling the flow of at least one data unit in a telecommunications network
A network switch,
At least one input port for receiving a data unit input to the switch;
,
At least one output port for transmitting data units out of the switch;
Encodes incoming data units received at each input port for transmission.
At least one input buffer associated with the at least one input port to queue;
Faque and
An input data unit received from the at least one input buffer queue.
Associated with the at least one input buffer queue for receiving and temporarily storing
At least one output buffer queue,
A specific output buffer from the input buffer queue where the data unit is enqueued
First indicating permission authorization to transmit at least one data unit to the queue.
Status and input buffer queue from the at least one output buffer queue.
Second state indicating a denial of permission to transmit a data unit enqueued to one of the
The feedback message having the status
At least one feedback message operable to provide to the queue
A network switch consisting of a generator.
20. The at least one of the at least one input buffer queue from the at least one
At least one data unit to the one of the one output buffer queues
At least one transmission operable to generate a signal requesting permission to transmit
A request generator;
At least one feedback message generator is configured to transmit the at least one transmission message.
Providing the feedback message in response to a permission request signal from the request generator;
An exchange according to claim 19.
21. 21. The output port of claim 20, wherein each output port includes a feedback message generator.
Onboard exchange.
22. Multiple connections are established in the exchange, and each of the above
Uses at least one single input queue and at least one single output queue
20. The method according to claim 19, wherein the flow control is performed for each connection.
Onboard exchange.
23. At least one input queue and at least one output queue are selected.
Assigned to a given service class, whereby flow control is assigned to one service class.
20. The switch of claim 19, wherein the switch is performed for each lath.
24. Multiple connections are established in the switch, each input queue and each output
Queues are assigned to selected connections and selected service classes.
, Whereby flow control is per service class and one service class
20. The switch of claim 19, which is executed every time.
25. Includes a first signal indicating whether the issued request was granted or rejected.
Wherein the feedback message is provided in response to the permission request signal.
The exchange described in 0.
26. Enqueued if the first signal indicates that transmission permission has been granted
Data is transmitted and the first signal is denied transmission permission
Enqueued data is not immediately transmitted if it indicates that
Item 30. The exchange according to Item 25.
27. The feedback message sends a permission request signal when each is inactive.
And a second signal having first and second states indicating an instruction to stop
Each input receiving a second signal in a second state from one of the plurality of output queues.
The power queue stops issuing transmission requests to one of the plurality of output queues
The exchange of claim 20, wherein
28. For transmission from a single input queue to multiple output queues, a single input queue
The transmission from a queue to a plurality of output queues is performed such that the transmission is performed serially and synchronously.
For each of the first and second signals of the feedback message from the force queue
28. The switch of claim 27, comprising a logic circuit that performs a logical OR operation.
29. For transmission from multiple input queues to a specific output queue, multiple input queues
In order to provide sufficient buffer for synchronous reception of the transmission from the queue, a second
Dynamically adjustable when a second signal in a state is provided in relation to a particular output queue
28. The switch of claim 27, wherein the threshold is increased.
30. One of the plurality of input queues becomes one of the plurality of output queues
To the second state by re-enabling the
The plurality of input queues from one of the plurality of output queues to cancel a second signal.
28. The exchange of claim 27, wherein a third signal is provided to one of the force cues.
Machine.
31. The third signal is from one of the plurality of output queues.
31. The switch of claim 30, provided when dequeuing a data unit.
32. Given when one of the output queues drops below a threshold
The threshold is set in one of a plurality of output queues to provide the third signal.
31. The switch of claim 30, wherein the switch is installed.
33. After a lapse of a predetermined time following reception of the second signal in the second state
Wherein said third signal is provided to one of said plurality of input queues.
Item 30. The exchange according to Item 30.
34. The second one for a plurality of the input queues based on a regular time.
31. The switch of claim 30, wherein three signals are provided.
35. The third from one of the plurality of output queues to the plurality of input queues;
31. The switch of claim 30, wherein the switch is provided.
36. The at least one input buffer and the at least one output buffer
Each of the levels with a large number of individual data unit flows at each hierarchical level
Arranged in a hierarchy, wherein the feedback messages are combined at each level
20. The switch according to claim 19, wherein the switch is provided for each level based on the flow.
37. The at least one input buffer and the at least one output buffer
Each of the levels with a large number of individual data unit flows at each hierarchical level
Arranged in a hierarchy, and the feedback message is given to each of the individual flows.
An exchange according to claim 19, obtained.
38. A plurality of input buffers associated with at least one input queue;
Network switch having a plurality of output buffers associated with one output queue
Controlling the flow of at least one input cell, comprising:
At least one input cell received in the input queue of the input memory
Receiving in the exchange;
Transmitting at least one incoming cell to the at least one output queue
Forwarding the request;
Sufficient buffer in the output queue to receive at least one incoming cell
Authorizing the transmission request if the key is available;
Sufficient buffer in the output queue to receive at least one incoming cell
Rejecting the transmission request if the key is not available;
Allocated requests will be allocated if granted, and fewer requests will be made for dynamically available buffers.
Output at least one input cell from input queue using at least one
Transmitting to a queue;
If at least one input cell is input queue if the requested request is rejected
Delaying transmission to an output queue from the at least one input in the network.
To control the flow of a given cell.
39. The cell count of all cells shared by all existing connections is
Less than a first limit and associated with one of the at least one output queue.
A first signal rejecting the request when the dynamic buffer count is greater than or equal to a second limit.
And a second signal that stops forwarding the transmission request to one output queue.
39. The method of claim 38, further comprising asserting the other.
40. The traffic type cell count is less than the first limit and one output queue
If the dynamic buffer count associated with the first signal is less than the second limit,
Do not assert either of the second signals
40. The method of claim 39, further comprising a step.
41. If the traffic type cell count is greater than or equal to the first limit, the first signal
41. The method of claim 40, further comprising asserting.
42. Traffic type cell count is greater than or equal to the first limit and one output queue
The first signal and the second signal if the dynamic buffer count associated with
42. The method of claim 41, further comprising asserting both of the signals.
43. The allocated buffer status count associated with one output queue is equal to the second limit.
The traffic type cell count is greater than or equal to the first limit.
When the buffer count is greater than or equal to the third limit, either the first signal or the second signal
43. The method of claim 42, further comprising the step of not asserting.
44. When the allocated buffer count is greater than or equal to the third limit, the first signal and
44. The method of claim 43, further comprising asserting both the first and second signals.
45. If the allocated buffer count is less than the third limit, but the allocated buffer count is
Buffer status count is greater than or equal to the second limit, or traffic-type cell count is
Assert the second signal, but assert the first signal when greater than or equal to one limit
The method of claim 44, further comprising the step of not performing.
46. If the output queue has already sent the first signal, the first
Further comprising the step of reasserting the signal of
Item 46. The method according to Item 45.
─────────────────────────────────────────────────────
フロントページの続き
(81)指定国 EP(AT,BE,CH,DE,
DK,ES,FI,FR,GB,GR,IE,IT,L
U,MC,NL,PT,SE),OA(BF,BJ,CF
,CG,CI,CM,GA,GN,ML,MR,NE,
SN,TD,TG),AP(KE,LS,MW,SD,S
Z,UG),UA(AM,AZ,BY,KG,KZ,MD
,RU,TJ,TM),AL,AM,AT,AU,AZ
,BB,BG,BR,BY,CA,CH,CN,CZ,
DE,DK,EE,ES,FI,GB,GE,HU,I
L,IS,JP,KE,KG,KP,KR,KZ,LK
,LR,LS,LT,LU,LV,MD,MG,MK,
MN,MW,MX,NO,NZ,PL,PT,RO,R
U,SD,SE,SG,SI,SK,TJ,TM,TR
,TT,UA,UG,US,UZ,VN
(72)発明者 ハウザー,スティーヴン エイ
アメリカ合衆国,マサチューセッツ州
01803,バーリントン,ファームズ・ドラ
イヴ 106番
(72)発明者 マニング,トマス エイ
アメリカ合衆国,マサチューセッツ州
01532,ノースボロ,サマー・ストリート
26番────────────────────────────────────────────────── ───
Continuation of front page
(81) Designated countries EP (AT, BE, CH, DE,
DK, ES, FI, FR, GB, GR, IE, IT, L
U, MC, NL, PT, SE), OA (BF, BJ, CF)
, CG, CI, CM, GA, GN, ML, MR, NE,
SN, TD, TG), AP (KE, LS, MW, SD, S
Z, UG), UA (AM, AZ, BY, KG, KZ, MD
, RU, TJ, TM), AL, AM, AT, AU, AZ
, BB, BG, BR, BY, CA, CH, CN, CZ,
DE, DK, EE, ES, FI, GB, GE, HU, I
L, IS, JP, KE, KG, KP, KR, KZ, LK
, LR, LS, LT, LU, LV, MD, MG, MK,
MN, MW, MX, NO, NZ, PL, PT, RO, R
U, SD, SE, SG, SI, SK, TJ, TM, TR
, TT, UA, UG, US, UZ, VN
(72) Inventor Hauser, Stephen A
Massachusetts, United States
01803, Burlington, Farms Dora
Eve 106
(72) Inventors Manning, Thomas A
Massachusetts, United States
01532, Northborough, Summer Street
26th