JPH09205446A - 多段式ネットワークにおけるマルチキャスト・セルのバッファリング - Google Patents

多段式ネットワークにおけるマルチキャスト・セルのバッファリング

Info

Publication number
JPH09205446A
JPH09205446A JP548197A JP548197A JPH09205446A JP H09205446 A JPH09205446 A JP H09205446A JP 548197 A JP548197 A JP 548197A JP 548197 A JP548197 A JP 548197A JP H09205446 A JPH09205446 A JP H09205446A
Authority
JP
Japan
Prior art keywords
output
cell
linked list
queue
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP548197A
Other languages
English (en)
Other versions
JP3577188B2 (ja
Inventor
Fabio Massimo Chiussi
マッシモ チウシ ファビオ
Joseph George Kneuer
ジョージ クナウァー ジョセフ
Vijay Pochampalli Kumar
ポチャンパリ クマー ヴジェイ
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.)
LE-SENTO TECHNOL Inc
Nokia of America Corp
Original Assignee
LE-SENTO TECHNOL Inc
Lucent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LE-SENTO TECHNOL Inc, Lucent Technologies Inc filed Critical LE-SENTO TECHNOL Inc
Publication of JPH09205446A publication Critical patent/JPH09205446A/ja
Application granted granted Critical
Publication of JP3577188B2 publication Critical patent/JP3577188B2/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
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1886Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • H04L49/203ATM switching fabrics with multicast or broadcast capabilities
    • 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
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)

Abstract

(57)【要約】 【課題】 本発明は、自己ルーティング多段式ネットワ
ークにおいてマルチキャスト・ルーティングを可能にす
る方法および装置に関し、特に、改良されたミニマムツ
リー・マルチキャスト・ルーティングを提供する方法お
よび装置に関する。 【解決手段】 複数の入力ポートのうちのひとつで受信
された入力セルのマルチキャスティングは、複数の出力
ポートのうちのひとつ以上へ交換ネットワークを介して
行われる。受信された入力セルは、データ・ペイロード
と、データ・ペイロードが出力されるべきひとつ以上の
出力ポートを識別するビットマップ・セグメントとを含
む。データ・ペイロードは、利用可能なセル・バッファ
に格納され、各セル・バッファは、入力セルが出力され
るべきポートの数と等しい数を格納するための参照カウ
ンタと関連される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、自己ルーティング
多段式ネットワークにおいてマルチキャスト・ルーティ
ングを可能にする方法および装置に関し、特に、改良さ
れたミニマムツリー・マルチキャスト・ルーティングを
提供する方法および装置に関する。
【0002】
【従来の技術】非同期転送モード(ATM)交換網に
は、ひとつの入力ポートからひとつ(ユニキャストと呼
ぶ)、または複数の(マルチキャストと呼ぶ)出力ポー
トにセル転送を供給する目的がある。マルチキャスト接
続を処理する能力は、どのATM交換機の構成でも必須
要件である。いくつかのATM交換機ではミニマムツリ
ー・マルチキャスティングを使用しているが、そこで
は、マルチキャスト・セルは交換機内で可能な限り下流
にまで(交換機内の最下流まで)複製される。すなわ
ち、ある入力ポートに受信されたマルチキャスト・セル
の単一のコピーは、各トリー(分岐)の頂点で、そこに
つながる他の異なる頂点または出力の数だけ、複製され
る。ミニマムツリー・マルチキャスティングは、平均の
キューイング遅延と交換機が必要とするバッファサイズ
を最小化する。
【0003】
【発明が解決しようとする課題】このようなミニマムツ
リー・マルチキャスティング能力を有するATM交換機
における継続的課題は、ひとつの出力ポートでの遅延が
他の出力ポートに行くトラヒックに影響を及ぼす際に起
きる輻輳を避けることである。
【0004】
【課題を解決するための手段】本発明は、交換ネットワ
ークの複数の入力ポートのひとつで受信された入力セル
を複数の出力ポートのうちのひとつ以上にマルチキャス
トする装置および方法に関するものである。データ・ペ
イロードと、データ・ペイロードが出力されるべきひと
つ以上の出力ポートを識別するビットマップ・セグメン
トとを含む入力セルが受信される。データ・ペイロード
は、利用可能なセル・バッファに格納され、各セル・バ
ッファは、入力セルが出力されるべきポートの数と等し
い数を格納するための参照カウンタと関連付けされる。
ビットマップ・セグメントは、データ・ペイロードが運
ばれるべき出力ポートを識別するため用いられ、出力ポ
ートごとに少なくともひとつの複数のリンク・リスト出
力キューが設けられる。ビットマップ・セグメントは、
データ・ペイロードが運ばれるべき出力ポートを識別す
るために訳され、関連するリンク・リスト出力キューへ
エントリが作成される。データペイロードの1コピー
は、対応するリンク・リスト出力キューにおけるエント
リによって決定されたシーケンスにしたがって、識別さ
れた出力ポートそれぞれに伝送される。単一リンク・リ
スト・キューそれぞれにおいて、エントリは、データ・
ペイロードが識別された出力ポートへ出力される際にそ
こから削除され、参照カウンタは1ずつ減らされる。参
照カウンタがゼロと等しくなった場合、セル・バッファ
は別の受信された入力セルへ利用可能とされる。
【0005】関連する主題は、同時に同一の譲受人によ
り出願された同時係属出願:米国特許出願第08/58
4、935号(Chiussi 2-12-5)発明の名称「多段式ネ
ットワークにおける改良されたマルチキャスト・ルーテ
ィング」および米国特許出願第08/584、936号
(Chiussi 3-13-6)発明の名称「マルチキャスト・ルー
ティング輻輳フィードバックを有する多段式ネットワー
ク」に開示されている。
【0006】
【発明の実施の形態】
全般説明 以下の説明では、各図のアイテムやブロックにはそれぞ
れ、関連する符号が付けられており、最初の番号がその
アイテムが最初に出てくる図を参照する(例えば、11
0は図1にある)。
【0007】図1を参照すると、ここでは、現在の交換
機ノードの操作の概略を示す。本発明は、非同期転送モ
ード(ATM)または同様の交換機におけるマルチキャ
スティング技術を提供する。
【0008】図1は、3段式交換ノードまたはシステム
における本発明の典型的なインプリメンテーションを図
示している。このシステムでは、入力ポート・ユニット
110の多数の入力ポートカードは、それぞれ単一の内
部リンク120により中央相互接続交換ユニット(ここ
では交換機構とも称する)130に接続し、そしてこの
交換機構130は、単一の内部リンク140により出力
ポート・ユニット150の多数の出力ポート・カードそ
れぞれに接続している。入力ポート・ユニット110
は、具体的に6つのポート・カード(0〜5)を含み、
出力ポート150は、6つの出力ポート・カード(0〜
5)を含んでいる。一実施例では、入力ポート0と出力
ポート0は、同一のポートカード0を共有する。6つの
ポート・カードは図に示すとおり、それぞれが32の入
力と32の出力への相互接続を供給している。ポート・
カードは、それぞれ、ATM階層マネージャ(ALM)
およびATMバッファ・マネージャ(ABM)集積回路
を含んでいる。一実施例では、ルックアップ(LUT
1、LUT2)、翻訳(TR)、ポリシング(PO
L)、およびヘッダ翻訳(HT)テーブルは、入力カウ
ンタ903および出力カウンタ904(これらは全て後
述する)と同様に単一のALMメモリ・ユニットの一部
である。外部の入力100および出力160から入力お
よび出力ポート・ユニットへのリンクは、先頭から最後
まで、100の桁が入力(出力)ポートを識別し、下二
桁がその入力(出力)ポート・ユニットのサブポートを
識別するように番号付けされている。例えば、入力サブ
ポート1,02は、入力ポート・ユニット1のサブポー
ト2である。
【0009】図2を参照して、図2には、数個(一般的
には30)の入力サブポート回路(210)および出力
サブポート回路(212)と、これらのサブポート回路
を共通接続回路(211および213)によって、交換
機構にまたは交換機構から(図1あるいは図11)相互
接続している複数の制御ロジックおよびRAMメモリ・
ブロック(201〜208)とを含むポート・カード具
体例のブロック図が示されている。現在のインプリメン
テーションにおける制御ロジックブロックは、関連する
RAMメモリ(204)を伴うATM階層マネージャ
(ALM)(201および206)と、関連するRAM
メモリ(205)を伴うATMバッファ・マネージャ
(ABM)(202、203、207および208)と
の2つの集積回路で構成されている。入力と出力のサブ
ポートは通常、サービスのため物理層転送インタフェー
ス装置(図示せず)に接続される。システム構成の目的
と管理上の目的、そして呼の組み立てのために、ALM
とABMは両方ともマイクロプロセッサ・インタフェー
ス(図示せず)が備えられている。ALMは、仮想接続
の入力ポリシングと、交換機構のための経路ルックアッ
プと、出力仮想回線アドレス変換と、パフォーマンス統
計と、下記および付録の状態マシーン1および11の説
明により詳しく記述するその他の機能とを供給する。A
BMは、入力および出力バッファリングと、出力マルチ
キャスト・ルーティングおよび出力サブポートへのレー
ト制御と、輻輳制御およびフロー制御と、追加のパフォ
ーマンス統計と、下記および付録の状態マシーン2、
3、9および10の説明により詳しく記述するその他の
機能とを供給する。
【0010】図3を参照して、図3には、6つの入力ポ
ートIP0〜IP5と6つの出力ポートOP0〜OP5
とを相互接続するための交換モジュールASXのブロッ
ク図が示されている。交換モジュールASXは、図1の
交換機構130を有する。ASXモジュールは、どの入
力ポートも1つ以上の出力ポートへ経路付けをおこなう
6×6ポート共有メモリ交換装置である。これは、出力
キューイング、マルチキャスティング、一段および多段
構成をサポートし、さらに非ブロック化ロスレス交換ノ
ード操作を可能にする。これは、マイクロプロセッサ・
インタフェース301を介して配列される。交換モジュ
ールASXは、セル・バッファに接続する6つの入力ポ
ート回路(302)および6つの出力ポート回路(30
3)を含んでいる。セル・バッファ・ユニット304
は、経路付けアービトレーション回路305と、構成可
能リンク・リスト306と、キュー処理装置307と、
バックプレッシャ処理装置308と、マイクロプロセッ
サ・インタフェース301とに接続している。経路付け
アービトレーション回路305とバックプレッシャ処理
装置308は、入力および出力ポートに相互接続してい
る。図1に示されるASX回路の6つの出力キューOP
0〜OP5は、セルバッファ304およびリンク・リス
ト306の中にあり、ポート・カードのABM回路と同
様に動作する。
【0011】図11を参照すると、ここには、入力ポー
ト1110と、3段交換ユニット(交換機構)1130
と、出力ポート・ユニット1150とを含む交換機ノー
ドが具体的に図示されている。図11に示されている交
換機ノードは、18×18のポート交換機構を供給す
る。入力ポート1110および出力ポート1150は、
図1の入力ポート110および出力ポート150と同じ
回路を用いて実装される。3段交換機構1130は、6
つの交換モジュールASXを含む第1ステージ(入力)
1131と、6つの交換モジュールAXBを持つ第2ス
テージ(クロスバー)1132と、6つの交換モジュー
ルASXを含む第3ステージ(出力)1133とを持っ
て実装される。第1ステージの6つの各ASXモジュー
ルは、3つの入力ポート・カードのいずれからも入力を
受け取ることができ、6つの第2ステージのAXBモジ
ュールのどれにもアクセス可能な3→6伸長機として構
成されている。第2ステージの6つの各AXBモジュー
ルは、6つの第3ステージのASXモジュールのどれに
もアクセス可能な6×6ポート・クロスバーで構成され
ている。第3ステージの6つの各ASXモジュールは、
3つの出力ポート・カードのいずれにも出力可能な6→
3集線装置として構成される。ASXモジュールは、図
3参照により前に説明したものと同じである。
【0012】図4に示されるAXBモジュールは、プロ
セッサ・ベースであり、6つの出力ポート402に相互
接続する6つの入力ポート401と、相互接続されたマ
イクロプロセッサ・インタフェース403と、バックプ
レッシャ処理装置404と、経路付けアービトレーショ
ン回路405とを含む。バックプレッシャ処理装置40
4および経路付けアービトレーション回路405は、そ
れぞれ410および420のパスを経由して、第1ステ
ージ1131および第3ステージ1133の交換モジュ
ールにもつながっている。AXBモジュールは、6×6
ポート・クロスバ相互接続装置である。AXBモジュー
ルの多くの機能は、ASXの機能と同様のものである。
しかしながら、バッファリングが利用されるのは入力4
01および出力402ポート・ユニットだけである。こ
のように、AXBモジュールは、内部のRAMストレー
ジを必要としない。
【0013】本発明によれば、マルチキャスト要求に関
連し、1段(図1)または多段ATM交換システム(図
11)のいずれかの入力ポートから受信されたATMセ
ル(または同様のパケット)も、その交換機の出力ポー
トのマルチキャスト要求により定義されたどのセットに
も、可能な最小の数のストレージ・サイトと、交換機を
通る単一のパスで所望の出口(出力ポート)の全てに到
着するように交換する相互接続リンクを利用して分配さ
れる。この資源の最適使用を達成するため、所望の出口
のセットを定義するオリジナルのマルチキャスト要求D
は、交換機の相互接続リンクを通してミニマルツリー・
パスを構成する明示的なな経路のセットの1つもしくは
それ以上の部品に分解される。本発明によれば、これら
の最適経路要素の表現は、ストレージ制御機構およびリ
ンク割当機構を含む交換システムの制御構成要素が、こ
れを直接的に翻訳し要求されるシステム資源の最適使用
が達成することができるものである。
【0014】本発明の最適経路の各部分の表現方法は、
ヘッダにリンクの明示的な出力ポートのビットマップ
(図5の521など)を含めるように変更することによ
って交換機構に入力された標準のATMセル(図5の5
00)を変更または拡張して、現在の位置から1段以上
の交換機構を通って、要求された出力ポートまで渡るよ
うにするものである。含まれるべき出力ポート・ビット
マップのパターンは、マルチキャスト・リクエスト−典
型的にはセル・ヘッダ(図5の501)中の仮想回線
(VC)アドレス(VPI,VCI)を参照することに
よる−で識別される翻訳テーブル(図9)ロケーション
から抜き出したものである。多段交換機構(図11な
ど)の場合、出力ポート・ビットマップは、全体の段数
の部分だけを通るツリーパスを識別してもよい。部分的
な各パスの終点で、ビットマップの既に通過した部分は
廃棄され、ビットマップの新しい部分が、ここでもVC
アドレスまたはその他の実装で決められたシステム固有
の接続情報を参照することにより抜き出され(または生
成され)付加される。この新しい部分的なパス・ビット
マップは、現在の交換機構ロケーションより、出力ポー
ト方向に向かって先のサブツリーの構成要素だけを表し
ている。この部分パス分解の階層的またはモジュール方
式テクニックにより、通過するトータルのパスは、どん
な一時点一地点で、交換機ノードまたはシステムのスト
レージと伝送の効率を損なうことなく、一度にセルに付
加できるであろうリンクやポートよりかなり多くのリン
クとポートから構成されているが、各ビットマップ・セ
グメントまたはサブツリー表現は少ないビット数で持つ
ことができる。
【0015】交換システムの各ノードにおいて、すなわ
ち、交換機内のリンクおよび/またはポートの相互連結
の各ポイントにおいて、セルは、今度はそのパス内の各
前方のリンクへのアクセスのため格納されていてもよ
い。本発明では、このノードから前方に移動するリンク
の数とは無関係に、セルは各交換ノードごとに一回格納
される。これを達成するためのテクニックは、まず、セ
ルが加えられた参照カウント・フィールドで格納される
ことであり、この参照カウントは、そのセルが格納され
るノードから前方のリンクの数のビットマップ表現から
自動的に生まれるものである。次に、セルが格納される
ので、このノードから前方に通過するようにする各リン
クへの配信のためそれをキューイングするのに必要な情
報もまた、各入力リンクまたはポートからひとつのセル
をサーブするのに要する時間内で格納される。このマル
チキャスト・キューイング情報の並行ストレージは、交
換機のノードを入力するためにセル用に余地がある場
合、そのマルチキャスト・ツリー内のノードから前方の
リンクおよび/またはポートすべてへの配信が確実にな
されることを保障する。上記のインプリメンテーション
において、マルチキャスト・キューイング情報の並行ス
トレージは、次の2つの異なる方法で成し遂げられる。
【0016】1.最高帯域幅のシステム要素について
は、完全に並列キューイング機構が、これらの要素のセ
ル・サービス時間内でセルと並行にセルのマルチキャス
ト目的地のすべてについての入力を行う。 2.低い帯域幅のシステム要素、特に出力の数が大きい
ものについては、ビットマップが、セルの格納と並行に
且つセル・サービス時間内で特別マルチキャスト・ステ
ージング・キュー内に格納される。セル・サービス時間
内で追加のタイムスロットが提供され、よって各ステー
ジング・キュー・エントリが格納されるマルチキャスト
目的地ビットマップにしたがって、マルチキャスト・ス
テージングから出力キューに多数のキュー・エントリが
行われる。各セル・サービス時間内のそのような追加の
タイムスロットを十分な数提供することにより、すべて
のセルがシステムから物質的に離れることのできる率を
超える率でマルチキャスト・エントリが行える。キュー
イング・ハードウエアのそのようなタイムシェアリング
により、低い帯域幅の要素についてインプリメンテーシ
ョン全体の節約が成し遂げられる。
【0017】
【詳細な説明】
【仮想接続情報】図9および10を同時に参照して、図
1の交換システムにおける仮想接続のセットアップにつ
いて説明する。発呼者のマルチキャスト要求に応じて
(図14のステップ1401)、交換システムは、マル
チキャスト仮想接続(VC)識別子を確立し、仮想接続
(または翻訳)テーブル図9の900を初期設定し、各
発呼者のVCに関連する情報を格納および更新する。各
VCテーブル・エントリは、具体的に、3つの連続した
ワード905〜907からなり、図9に示されたフォー
マットを有する。特定のポート・カードについて、仮想
接続テーブルのサイズは、ポートがサポートするように
設計される最大数の入力仮想接続の関数である。
【0018】VCテーブル900に対するアドレス90
1はVC_indexおよびメモリ内のテーブルのベー
ス位置に対するポインタを用いて次のように計算され
る。
【0019】
【数1】 このVCテーブル・アドレス901は、次の情報を含む
このマルチキャスト仮想接続に関する情報を格納するよ
う用いられる。 ●出力ポート・ビットマップ(たとえば36ビット・ワ
イド)905は、セルが経路付けされるべき交換システ
ムの出力ポートを示す。ユニキャスト・セルについて
は、そのフィールド内の単一ビットのみが「1」に設定
され、マルチキャスト・セルについては、多数のセルが
「1」に設定される。ビット32から35が部分カード
0から15を出力するものを識別しながら、個々のビッ
ト0から31は、それぞれ出力カードの出力ポート0か
ら31に対応する。 ●遅延優先順位(DP)フィールド911が、この仮想
接続のための4つの遅延優先順位(0〜3)のひとつを
提供する。ここで0の値は、低相対的待ち時間を有す
る。 ●ルーティング・フィールドのキュー912は、入力ポ
ートに関連し、入力キューイング・ロジックにより用い
られ、このセルを格納する出力キュー(ポート・カード
上のアウト0〜アウト5)を識別する。ポート・カード
上では、ポート・ビットマップは、出力キューを決定す
るためには用いられない。 ●バックプレッシャのキュー(QB)913は、入力キ
ューイング・ロジックにより使用され、交換機能内のト
ラヒック輻輳を決定し、マルチキャスト・セルをスイッ
チ機能へ送信する。
【0020】接続タグ908は、ポート・カードのため
のヘッダ翻訳ルックアップ(HTL)テーブル(図7)
に対するアドレス(HXLU)を割り出し、htm_i
ndexを得るために用いられる。htm_index
から、ヘッダ翻訳(HT)テーブル(図6)に対するア
ドレスが得られる。HTテーブルは、接続ごとの発信ま
たは新たなVPI/VCIが記憶され、アクセスされる
ところである。16ビットの接続タグは、64Kまでの
出力VCをサポートする。HXLUデータ、HXLUフ
ォーマット、HTテーブル・データおよびHTテーブル
・フォーマットは、本明細書の後のセクションに記載さ
れている。
【0021】VCテーブルが確率すると、スイッチ・シ
ステム(図1または図11)は、要求されるマルチキャ
スト接続の標準のATMセルを受ける準備が整う。
【0022】ステップ2402において、システムは図
8のルックアップ・テーブルLUT1、LUT2と、図
8のHTテーブルと、図7のHTLテーブルを確立す
る。ステップ1403において、マルチキャスト・セル
は、標準のATMフォーマットにおけるシステムにより
受け取られる。
【0023】図5を参照して、図1の入力ポート・ユニ
ット110で受信された標準ATMセル500のフォー
マットについて説明する。ATMセル・フォーマット
は、5バイト(40ビット)長のATMヘッダ501
と、40バイト長のペイロードとを含む。ATMヘッダ
は、4ビットの基準フロー制御(GFC)と、8ビット
の仮想パス識別子(VPI)502と、16ビットの仮
想チャネル識別子(VCI)503と、3ビットのペイ
ロードタイプ識別子(PTI)と、1ビットのセル・ロ
ス優先順位(CLP)と、8ビットのヘッダ・エラー・
コントロール(HEC)とを有する。
【0024】図14の1404から1410までのさま
ざまなステップは、本発明にしたがった有限状態マシー
ンにより実行される。これらのさまざまなマシーンの特
別な作動の詳細は、この明細の付録により詳しく記載さ
れている。1段ATM交換機の操作は、1401から1
411までのステップにより記述され、マシーン1から
3および7から11を利用する。多段ATM交換機は、
1401から1406および1409から1411まで
のステップを含み、付録に記載のすべてのマシーン1〜
11を利用する。
【0025】ステップ1404(マシーン1により実行
される)では、ATMセルのヘッダは入力ポート・カー
ドにより修正される。入力ポート・ユニット110から
(図1のリンク120を通って)出力され、交換ユニッ
ト130に入力された修正されたフォーマットの出力セ
ルは、ローカル・ヘッダ523と、低標準ヘッダ524
と、ペイロードとを含むように520で示されている。
本発明によれば、標準ヘッダ501のVPIおよびVC
Iセグメントが用いられて、図8のルックアップ・テー
ブルLUT1およびLUT2と、図9のVC(翻訳)テ
ーブルと、図7のHTLテーブルと、図6のHTテーブ
ルとにアクセスし、ローカル・ヘッダを生成する。具体
的なローカル・ヘッダは、優先順位ビット(P)を含む
複数のセグメントと、接続タグ522と、出力ポート・
マップ521と、ルーティングのキュー(QR)と、サ
ービス特徴情報(NI、CI)、ポリシング情報(PO
L)と、Sビットとを含む。低標準ヘッダ524は、ヘ
ッダ翻訳プロセスの間に得られる標準ヘッダのGFC、
VCI、PTIおよびCLPセグメントを含む。ヘッダ
翻訳は、次のパラグラフに詳細に記述される。
【0026】ヘッダ翻訳 図1の本発明の交換ノードの具体例は、標準UNIおよ
びNNIインターフェイスで動作可能である。UNIイ
ンターフェイスについては、5ビットのサブポート部材
と、VPI502の8つの最小有効ビット(LSBs:
least significant bits)と、VCI503の14LS
Bとが、27ビットの潜在アドレス・スペースを創造す
る。NNIインターフェイスについては、追加の4つの
VPIビット(ATMセル500のヘッダのGFCビッ
ト)が31ビットの潜在アドレス・スペースを創造する
ために用いられる。
【0027】仮想接続インデックス(VC_Inde
x)は、VCテーブル900(翻訳テーブルとしても参
照される)(図9)に対するVC_Addressを割
り出し、特定の仮想接続に関連する出力ポート・ビット
マップ905(マルチキャスト・ビットマップとしても
参照される)を得る。インデクシングには2つのレベル
が用いられる。UNIインターフェイスについては、第
1のレベルが、8Kまでの単一VPI接続のスペースに
対する各サブポートをマッピングする。NNIインター
フェイスについては、第1のレベルが64Kまでの単一
VIP接続のスペースに対する各サブポートをマッピン
グする。UNIおよびNNI両方のインターフェイスに
ついては、第2のレベルが64Kまでの仮想接続のスペ
ースに対する各VPI接続をマッピングする。図8は、
ルックアップ・テーブルLUT1およびLUT2を用い
て2レベル・インデクシングの例を示している。サポー
ト部材801は、アクセスLUT1_Addressと
して用いられ、テーブルLUT1からVP_Baseお
よびMAX_VPI番号を得る。(ATMセル500で
受け取られた)VPI502がVP_BaseとVP_
Base+MAX_VPIとの間に下がる場合、ATM
セルは受け入れられる。あるいは、受け入れられない。
VP_Base+VPI502は、テーブルLUT2に
対するアクセス・アドレス(LUT2_Addres
s)として用いられ、VP_Base、MAX_VC
I、VCI_Indexを得るために用いられる。受け
取られたVPI502がVP_Base+MAX_VC
Iよりも小さい場合、ATMセル500は、受け入れら
れる。または受け入れられない。
【0028】図8に示されたように、テーブルLUT2
から得られた仮想接続VCテーブル・アドレス901
は、図9のVC(翻訳)テーブル900、ポリシング・
テーブル902および入力カウンタ903にアクセスす
るために用いられるVP_Base+VC_Index
である。
【0029】図9を参照すると、ポリシング・テーブル
902は、翻訳テーブル900として同様にアクセスさ
れ、標準「UPC」操作のためのメモリと制御情報を提
供する。すなわち、セルをマーク付けまたは注目するた
めに用いられる。
【0030】入力カウンタ903および出力カウンタ9
04は、ポリシングの結果の統計を集めるために用いら
れる。
【0031】VC翻訳テーブル900は、VCテーブル
・アドレス901を用いて、出力ポート・ビットマップ
905と、接続タグ908と、遅延優先順位911と、
ルーティングのキュー(QR)フィールド912へ各仮
想接続のためのアクセスを提供する。
【0032】出力ポート・ビットマップ・フィールド9
05は、本発明の例示的マルチキャスト接続のために、
相互接続する交換ユニット130を介して入力ポート1
02からマップを提供する。
【0033】マルチキャスト接続のための翻訳テーブル
900エントリが一度アクセスされると、ヘッダ翻訳を
発生することができる。
【0034】ヘッダ翻訳は、入力ポート・ユニット11
0のサブポート・キューから読み込まれた出力セルのた
めのローカル・ヘッダ523および低標準ヘッダ524
を生成するために用いられる。ヘッダ翻訳は、図6に示
されたヘッダ翻訳(HT)テーブル600にアクセスす
ることにより発生する。ヘッダ翻訳(HT)テーブル6
00は、フィールド:つまりP(ワード上の奇数パリテ
ィ)と、R(予約された)と、S(VP交換フラッグ)
と、vpi4(GFC/VPIヘッダ・ビットを置き換
えるか否かを示すための制御ビット)と、新たなVPI
_4(VPIの最も有効なビットMSB)と、新たなV
PI_8(VPIの8つの最小有効ビットLSB);新
たなVCI(16ビットと)からなる。
【0035】前述したように、新たなVPIおよびVC
Iの値601は、呼セットアップの間に発信VCごとの
マイクロプロセッサによって図6のヘッダ翻訳(HT)
テーブルに格納された。「vpi4ビット」と呼ばれる
新たVPI/VCIの値が格納された制御ビット新たな
VPIの4MSBがいかにして処理されるかを決定す
る。VP交換フラグSとともにこれらの値およびATM
ヘッダ501は、図5の出力セル520のための新たな
修正されたヘッダ(ローカル・ヘッダ523および低標
準ヘッダ524)を生成するために用いられる。
【0036】PTIおよびCLPビットは、ATMヘッ
ダ501から読み込まれ、出力セル520の低標準ヘッ
ダ524へ挿入される。Sビットは、(ATMヘッダ5
01に格納された)オリジナルのVCIまたは(HTテ
ーブル600に格納された)新たなVCIが発信低標準
ヘッダ524に挿入されるか否かを決定する。vpi4
ビットは、(ATMヘッダ501に格納された)GFC
フィールドまたは新たなVPI(HTテーブル600に
格納された新たなVPIの4MSBビット)が発信低標
準ヘッダ524のフィールド515に挿入されるか否か
を決定する。新たなVPI(HTテーブル600に格納
された新たなVPIの4LSBビット)の残りのビット
もまた、低標準ヘッダ524のフィールドに挿入され
る。
【0037】修正ヘッダ・セグメント523および52
4を生成するには、2レベルのルックアップを介して、
適切なHTテーブル600エントリへアクセスしなけれ
ばならない。VCテーブル900のワード907の接続
タグは、図7のヘッダ翻訳ルックアップ(HTL)テー
ブルに対するインデックスとして用いられる。HTLテ
ーブル内のバードのアドレス、hxlu、は、次の式:
【数2】 から得られる。
【0038】HTLのhxlu_addressは、接
続タグと関連する図6のHTテーブル600内のhtt
_addressを指すインデックス(htm_ind
ex701)を格納する。htt_addressは、
ローカル・ヘッダ523および低標準ヘッダ524に格
納される得られた出力セルのためのSやvpi4ビット
と同様に、新たなVPIおよびVCIの値を得るために
用いられる。
【0039】HTテーブル600におけるワードのアド
レスは、次の式:
【数3】 から得られる。
【0040】ユニキャスト・セルいついては、htm_
offset(マルチキャスト・アドレス・オフセット
としても参照される)は、ゼロと等しく画定される。マ
ルチキャスト・セルについては、多重ヘッダ(マルチキ
ャスト出力ポートごとにひとつ)は、連続メモリ位置に
格納される。マルチキャスト・セルの出力ポート接続ご
とに、適切なhtm_offsetが用いられる。ht
m_offsetは、マルチキャスト・ヘッダそれぞれ
にアクセスするために用いられる。
【0041】64Kの出力VCをサポートするには、メ
モリの64KのワードがHTLテーブル700に必要で
ある。
【0042】交換機130から(図1のリンク140を
通して)出力され、出力ポート・ユニット150に入力
されるセルのフォーマットは、図5における540とし
て示される。セル540のフォーマットは、修正ローカ
ル・ヘッダ542(出力ポート・マップ・セグメントが
出力ポート・バックプレッシャ・マップで置換された状
態)と、低標準ヘッダと、ペイロードとを含む。出力ポ
ート・ユニット150から出力されるセルのフォーマッ
トは、図5における560で示される。セル560は、
新たなVPIセグメントを持ち、新たなVCIセグメン
トを持っても持たなくてもよいことを除けば、500で
示される標準ATMセルである。
【0043】開示された実施例によれば、図6、7、8
および9のテーブルは、すべてポート・カードのALM
集積回路のALMメモリに格納される。
【0044】マルチキャスト接続処理 次の例は、入力ポート・ユニット110、交換ユニット
130および出力ポート・ユニット150で行われるマ
ルチキャスト接続処理を記述する。
【0045】処理の例として、出力ポート101(すな
わち、サブポート1またはポート・カード1、出力ポー
ト01)、104、203、204および402へのデ
リバリのためのマルチキャスト接続リクエストと関連す
る入力ポート102(すなわち、サブポート1,02)
に到着したセルを考えよう。マルチキャスト・セルのデ
リバリは、入力ポート102と要求された出力ポートと
の間に確立された仮想接続(VC)を介して発生する。
前述したように、ステップ1401および1402にお
いて、最初にマルチキャスト接続が確立されたとき、図
1の交換システムは、発呼者のマルチキャスト・リクエ
ストに答えて、出力ポート・ビットマップPBMや、キ
ュー番号QNや、遅延優先順位DLPや、接続タグなど
のエントリを含むLUT1、VC、HTLおよびHTテ
ーブルを確立し、VPIおよびVCI識別子をマルチキ
ャスト接続の間に送られたセルすべてと関連付ける。ス
テップ1403では、VPIおよびVCI識別子は、入
力ポート102が修正ヘッダ523および524をステ
ップ1401で生成できるようにする。修正ヘッダ52
3および524で識別された出力ポート・ビットマップ
521は、交換ノードが入力ポート102と識別された
出力ポートとの間の所望の仮想接続を確立できるように
する。
【0046】出力ポート101(すなわち、出力カード
1、出力ポート01)のための出力ビットマップは、図
9のVCテーブル900の出力ポート・ビットマップ9
05におけるビット1における「1」とビット0,2−
31におけるすべての「0」とを有し、出力ポート・ビ
ットマップ905のビット32〜35は、2進数にコー
ド化され、出力カード1を示す「0001」となる。
【0047】ATMセル500は、ポート・カードに配
されるATMレイヤ・マネジャ(ALM)およびATM
バッファ・マネジャ(ABM)回路により処理される。
本例では、ATMセルは入力ポート102に到着するの
で、ポートカード1のALM1およびABM1がATM
セルを処理する。
【0048】本例のマルチキャスト・リクエストについ
ては、各ATMセルは、代表的ペイロード・ビット・パ
ターン「1101」で、相互交換ユニット130を介し
て出力ポート・カード1、2および4に運ばれるはずで
ある。
【0049】入力キューイング ステップ1405(マシーン2によって実行される)に
おいて、セルが入力サブポート(たとえば、入力ポート
102)からポート・カード1へ入力されるとき、セル
はABMメモリに格納される(図10)。ABMメモリ
(図10)は、セルに関する情報を格納するために2つ
の別々のメモリ・セクション:つまりポインタ・メモリ
1010とセル・メモリ1020とを有する。それらは
それぞれ、入力セクション1011、1021および出
力セクション1012、1025に対応するエリアへさ
らに分割される。セルの格納アドレスは、利用可能なメ
モリ・アドレス(すなわち、フリー・リスト)のリンク
・リスト1001から得られる。セル・ベース上に配置
されたリンク・リスト1001は、セル・メモリ102
0の入力セクション1021内のセル・バッファにアク
セスするために用いられる。
【0050】既知の方法で、インデクシング・スキーム
は、リンク・リスト1001上の各セルを見失わないよ
うにする。インデックスは、物理的メモリ・アドレスで
はなく、テーブルへのオフセットである。これらのイン
デックスは、リンク・リストを形成するため連鎖されて
いる。各インデックスは、リンク・リスト内の次のエン
トリに対するポインタである。ポインタは、リンク・リ
スト1001のキュー・ポインタ・セクションに割り当
てられ、格納される。入力リンク・リスト・メモリ10
01内のポインタとセル・バッファ1023に格納され
たセルとの間には一対一対応が存在する。これは、与え
られたリストのヘッド・レジスタがセル・メモリに格納
されているセルのインデックスを格納するということで
ある。
【0051】入力ポート・ビットマップ(ローカル・ヘ
ッダ523のワード521)は、ポインタ・メモリ10
10の入力ポート・ビットマップ・セクション1003
に格納される。
【0052】交換機構1130に予定されている入力ポ
ート・カードを残すセルは、セル・メモリ1020から
読み込まれ、入力リンク・リストから離れる、つまりキ
ューから外される(decueued)。各タイムスロットにお
いて、入力セルはセル・メモリ1020に格納され、メ
モリからのセルは交換機構1130に送られる。
【0053】セルをキューから外すには、ステップ14
06(マシーン3により実行される)において、入力キ
ュー1001から取り除かれ、読み込み選択アルゴリズ
ムにしたがってタイムスロットごとに一度ずつ交換機構
1130に送られる。付録内のマシーン3として記述さ
れるマシーンで参照される本発明の読み込み選択アルゴ
リズムにしたがって、キューは、ラウンド・ロビン基準
にしたがって滞在される。キューが空の場合またはキュ
ー内のすべての遅延優先順位(Pr0〜Pr3)がバッ
クプレッシャ化された(マシーン3に詳細に記載されて
いる)場合、そのキューはその機会をのがし、その選択
ロジックによって飛ばされる。
【0054】ステップ1406(マシーン3により実行
される)がセルを出力した後、セルはステップ1407
(マシーン7により実行される)で記述されるように交
換機構により処理される。一段単一装置が実装される場
合、その装置のオペレーション、ステップ1407およ
び1408は、マシーン7および8で記述される(後述
する)ものと基本的に同一である。キュー・バックプレ
ッシャがクロスバー???プロセス(マシーン5、6お
よび7の一部として記述される)を介して間接的にでは
なく出力ポート・カードに直接信号が送られる。
【0055】ルーティング・ビットマップは相互交換ユ
ニット1130を介してルーティングをカバーしている
ので、VC対ルーティング・マップ・ルックアップ機能
は必要ない。相互交換ユニット1130内のオペレーシ
ョンは、比較的簡単であり、図10のABM回路メモリ
の前述のオペレーションと同様である。
【0056】ステップ1408(マシーン8で実行され
る)では、質問内のセルが割り当てられる相互交換ユニ
ット1130の複数の出力キュー(Out0〜Out
5)のいずれにおいても、問題のそのセルの先の他のす
べてのエントリがサーブされたあと、マルチキャスト・
セルは入力ポート・ユニットのセル・バッファ1023
から抜き出され、格納された参照カウントはひとつずつ
減らされ、セルは図10で示された出力ポート・ユニッ
ト1150へそのキューに関するリンク1140を横切
って運ばれる。参照カウントについての減少オペレーシ
ョンがゼロの値を示した場合、これは、そのセルのすべ
てのキュー・エントリがサーブされたことを示し、相互
交換ユニットにおける関連セル・バッファはフリーであ
ると印付けされる。
【0057】図10のインプリメンテーションの例で
は、初期のルーティング・ビットマップのみが入力ポー
トを介して延在し、交換ステージ1130と相互接続す
る。したがって、出力ポート・ユニットに対するエント
リ上で、そのユニットのVC対マップ・ルックアップ回
路(すなわち、LUT1、LUT2およびTRテーブ
ル)に対して2回目のリファレンスが行われなければな
らない。出力キューイング
【0058】次のセクションは、出力ポート・カード上
の出力キューイングの概略を説明する。
【0059】ステップ1409(マシーン9により実行
される)において、交換機構1130から出力ポート・
カードを入力するセルは、それらが伝送されるまで、セ
ル・メモリ(たとえば、図10の1025)の出力セク
ションに格納される。出力セルは、キューごとに優先順
位リンク・リストで32の出力サブポート・キューへ構
成される。各リンク・リストは、異なる遅延優先順位に
対応する。
【0060】図9の仮想接続(VC)テーブル900か
らのキュー番号QNおよび遅延優先順位DLPは、出力
キューのひとつと得られたセルの4つのリストのうちの
ひとつを識別し、適切な出力リンク・リスト1004上
のセルをキューに入れるために使用される。
【0061】リストごとに、次の値が維持される: ●ヘッド リストの最初のセルに対するポインタ ●テイル リストの最後のセルに対するポインタ リスト上の各セルを見失わないようにするために間接的
ポインタ・スキームが用いられる。インデックス・ペア
(IP)と呼ばれる小さなブロックのインデックス値
は、リンク・リスト551を形成するために連鎖され
る。各IPは、次の2つのフィールドを含む: ●セル・インデックス セル・データの最初のワード
に対するインデックス ●次のインデックス リンク・リスト内の次のエント
リに対するポインタ IPは、セル・バッファ1023とは別に出力IPメモ
リ1051に割り当てられ、格納される。これは、IP
に対する得られたリスト・ポイントのヘッド:ひとつの
インデックスはセルの位置を提供し、もう一方のインデ
ックスは次のIPの位置を提供することを意味する。こ
れは、IPs(IPフリー・リスト)用とセル(出力フ
リー・リスト)用の2つのフリー・リストが必要であ
る。
【0062】出力ポートの出力キューイングは、図10
の出力ポインタ・メモリ1012と出力セル・メモリ1
025を用いる。
【0063】出力ポインタ・メモリ1012は、出力側
用に次のデータを含む: ●IPフリー・リスト(出力IPメモリ1051に格納
されている) ●出力フリー・リストおよびマルチキャスト・フリー・
リスト(出力リンク・リスト・メモリに格納されてい
る) ●出力リスト(32個のキュー×4=128個のサブポ
ート・リスト;出力IPメモリ1051に格納されてい
る) ●出力ヘッダ翻訳オフセット(出力ヘッダ翻訳オフセッ
ト・テーブル1052に格納されている) ●サブポート・マルチキャスト・ビットマップ/マルチ
キャスト・カウンタ(セル・メモリに格納される出力セ
ルごとにひとつ;サブポート・マルチキャスト・ビット
マップ・エリア1054に格納されている) ●ラウンド・ロビン・スケジュール(1005に格納さ
れている) 出力インデックス・ペア(IP)メモリ1051は、I
Pフリー・リストと、さまざまな出力サブポートの全実
行中のキュー・エントリとを含む。インデックス・ペア
(IP)フリー・リストは、出力IPsを格納するよう
に規定されるポインタ・メモリ1010の1051内の
インデックス・ペア(セル・インデックスおよびリンク
・ポインタ)のリンク・リストである。そのリストは、
リスト内の最初と最後のエントリをそれぞれ指すヘッド
・レジスタとテイル・レジスタとからなる。出力IPは
2つのワードからなる。第1のワードは、セル・インデ
ックスであり、第2のワードは、次のインデックスであ
る。セル・インデックス・フィールドは、セル・メモリ
1020内の32Kまでの出力セルのアドレスを決める
に十分な15ビットである。最初のフリー・アドレス
は、出力IPフリー・リストのヘッド・レジスタ内に格
納される次のインデックスの値から求められる。フリー
・リストから得られ、さまざまなサブポート出力キュー
にリンクされたIPsは、出力セル・メモリ1025内
の格納セルのセル・インデックスで修正される。よっ
て、さまざまなサブポート・キュー上のいくつかのエン
トリは、すべて同じセル・ストレージ・ロケーションを
参照する。
【0064】出力リンク・リスト・メモリ1004は、
出力フリーとマルチキャスト・ステージング・リンク・
リストとを両方含む。出力フリー・リストは、ユニキャ
ストおよびマルチキャスト・セルに用いられるポインタ
・メモリ内のフリー・ブロックのリンク・リストであ
る。フリー・リストは、リスト内の最初と最後のエント
リをそれぞれ指すヘッド・レジスタとテイル・レジスタ
からなる。マルチキャスト・ステージング・リンク・リ
スト・エントリは、あるワード−次のインデックスポイ
ンタからなる。次のインデックス・ポインタは、セル・
メモリ内の32Kまでのマルチキャスト・セルのアドレ
スを決めるに十分である。優先順位ごとにひとつのマル
チキャスト・リストはそれぞれ、リスト内の最初と最後
のセルをそれぞれ指すヘッド・レジスタとテイル・レジ
スタからなる。
【0065】マルチキャスト・キューがサブポート・キ
ュー(たとえばSub0)へセルをリンクする場合、サ
ブポート・キューと関連するオフセットは1052に格
納される。オフセットは、ヘッダ翻訳の間マルチキャス
トの特別なレッグのヘッダ翻訳エントリを求めるために
用いられる。出力IPメモリ1052におけるセル・イ
ンデクス・ペア(IP)ごとにひとつのヘッダ翻訳オフ
セットが存在する。
【0066】サブポート・ビットマップ1054は、各
ビットが出力ポート・カード上のサブポートに対応する
32ビットからなる。各入力VC接続は、関連接続タグ
およびサブポート・ビットマップ1054を有する。サ
ブポート・ビットマップ1054は、VC接続がセット
アップするときにポート・カード・マイクロプロセッサ
により書き込まれる。セルが交換機構1130から到着
したあと、受信されたセルが書き込まれる出力サブポー
ト・キューを決定するためにアクセスされる。特定の接
続のためのサブポート・ビットマップは、接続に対応す
る接続タグ・データを用いて1054に位置決めされ
る。ユニキャスト・セルについては、サブポート・ビッ
トマップ1054のたったひとつのビットが設定され、
セルは対応するサブポート・リストに付加される。サブ
ポート・マルチキャストについては後のパラグラフで記
述する。
【0067】ステップ1410(マシーン10により実
行される)では、マルチキャスト・セルがマルチキャス
ト・リストのヘッドに行く場合、サブポート・マルチキ
ャスト・ビットマップ1054は、セルのコピーが予定
されている場所を決定するために検索される。セル・メ
モリ1020内のマルチキャスト・セルは、それぞれ、
ポインタ・メモリ1005に格納された関連サブサポー
ト・マルチキャスト・ビットマップ1054を有する。
サブポート・マルチキャスト・ビットマップがマルチキ
ャスト・キューのヘッドでエントリにより読み込まれる
と、マルチキャスト・アドレス・オフセットはその場所
に格納される。セル・メモリ内の出力セルは、それぞ
れ、セルの多くのコピーがいかにして作られるかを決定
する単一の5ビット(32カウント)マルチキャスト・
カウンタ1055と関連している。ユニキャスト・セル
が交換機構から受け取られ、セル・メモリに書き込まれ
た場合に、マルチキャスト・カウントは、「1」に初期
化される。マルチキャスト・セルが交換機構から受け取
られた場合、マルチキャスト・カウンタは、サブポート
・マルチキャスト・ビットマップがマルチキャスト・キ
ューにより読み込まれ、スキャンされる前には初期化さ
れない。得られたセルのマルチキャスト・カウンタ10
55は、セルがサブポート・キューから読み込まれるご
とに減少される。マルチキャスト・カウントが0と等し
い場合、マルチキャスト・セル・ロケーションは出力フ
リー・リストに移動される。リンク・リスト1004内
の次のマルチキャスト・セルはマルチキャスト・リスト
のヘッドへ行く。
【0068】ラウンド・ロビン・スケジュールは、ポイ
ンタ・メモリ1010内の1005に格納される複数の
エントリからなる。タイムスロットごとに1エントリが
読み込まれる。
【0069】各タイムスロットごとに、ひとつのセルが
サブポート・キューから取り除かれ、出力サブポートへ
送られる。読み取り選択アルゴリズムは、前述の入力側
と同様である。しかしながら、厳密な順番でキューをサ
ーブする代わりに、キューはさまざまな長さの重みづけ
されたラウンド・ロビン・スケジュール1005を用い
て処理される。テーブル内の各エントリは、「読み込ま
れるセルなし」の値と同様、このタイムスロットを読み
込むためにサポート番号を指定する。
【0070】サブポート出力速度は、特定のサブポート
がスケジュールに現われる周波数により決定される。4
61の具体的なスケジュール長さ(L)は、1.5Mb
psステップで1.5Mbpsから622Mbpsまで
のデータ転送率を許容する。特定のサブポート・キュー
を参照する(referencing)するエントリの数をN、合
計のスケジュール長さをLとすると、可能な速度は、次
の式:
【数4】 で算出される。
【0071】遅延優先順位は、前述した16エントリ重
みづけされたラウンド・ロビン・スケジュールを用い
て、入力側と全く同様の方法でサブポート・キュー内で
サービスされる。
【0072】560で示されるサブポートからの出力セ
ルのデータ・フォーマットは、VPIが新しいこと、V
CIが新しくてもそうでなくともよいことを除けば入力
セルのデータ・フォーマットと同一である。
【0073】サブポート・マルチキャスト・オペレーシ
ョンは、次のように進行する。交換機構130から受け
取られた各セルについて、ポインタ・メモリ510に記
憶されたサブポート・ビットマップにアクセスするため
に接続タグが用いられる。サブポート・ビットマップに
おける1個以上のビットが「1」に設定される場合、受
け取られたセルは、マルチキャスト・セルである。セル
は、他の仮想接続のユニキャスト・セルとともに介在ベ
ース上の適切なサブポート・キューすべてに順次に伝送
されるまで、特定のマルチキャスト・キュー上に一時的
に格納される。
【0074】たとえば、キュー処理装置は、各タイムス
ロットごとに、2つのセルをキューに入れ、ひとつのセ
ルをキューから外す十分な能力を有すると仮定する。マ
ルチキャスト・キュー上で待っているいくつかのセルが
存在する場合、キューに入れられたセルのひとつをマル
チキャスト・キューから取りだし、適切なサブポート・
キューに送る。フルロード状態で、新たなユニキャスト
がタイムスロットごとに到着する場合、これにより特定
のサブポート・リスト上のユニキャスト・セルと1:1
で介在されたマルチキャスト・セルを生じる。もちろ
ん、アイドル・セルが交換機構から受け取られた場合、
マルチキャスト・セルのひとつに置き換えることができ
る。得られたセルは、サブポート・ビットマップに指定
された予定されたサブポートに書き込まれるまで、マル
チキャスト・キューのヘッドに残る。マルチキャスト・
セルは32までのサブポート・キューに書き込まれるこ
とが可能なので、そのセルについて、それらのセル・イ
ンデックス・フィールドにおいてどれも同じ値を有す
る、すなわちセル・メモリ内の同じセルを指す32個の
異なる出力IPが存在する。セルが各サブポート・キュ
ーに書き込まれた場合、マルチキャスト・リストのヘッ
ドから取り除かれ、マルチキャスト・リストのヘッド・
レジスタが更新される。
【0075】本発明のマルチキャスト・リクエストにつ
いて、図10の右上の出力ポート・ユニットは、ポート
101および104用のビットマップ表現つまり「10
01」を生じる。上述のパラグラフ2に記述された低パ
フォーマンス要素について、第2のインプリメンテーシ
ョンとしてこのケースを引用する。オリジナルの翻訳
(入力ポート・ユニット内)により、有効なルーティン
グ・マップ・エントリの存在によって、セルは出力ポー
ト・ユニットのセル・バッファ内のフリーな場所に格納
されるが、この場合、マルチキャスト・ルーティング・
ビットマップはなく、マルチキャスト・ビットマップ内
の数「1」と等しい参照カウントを有する。
【0076】セルのストレージと並行して、マルチキャ
スト・ルーティング・ビットマップとセル・ストレージ
・バッファに対するポインタとを含むエントリが出力ポ
ート・ユニットのマルチキャスト・ステージング・キュ
ーに入力される。一般的に、このステージング・キュー
は、FIFOキューでもある。マルチキャスト・エント
リがステージング・キューのヘッドに行くと、出力ポー
ト・ユニット・ロジックは、1回に1つずつ、それぞれ
セル・ストレージ・バッファに対するポインタのコピー
とともに、最終出力キュー(例のライン101および1
04)へ分配する。マルチキャスト・ステージング・キ
ューの出力に十分早いサービス速度を供給することによ
り、制御ロジックは、最終の出力ポートへのデリバリ速
度よりも早い速度でマルチキャストのすべてのコピーを
提供することができる。このたった2つのスピードアッ
プ要素は、最終出力ポートを介しておそらく分配される
マルチキャスト・リクエストのどの組合せにおいてもセ
ル入力においてこの目的を達成するに十分である。
【0077】最後に、前にキューに入れられたエントリ
が出力ポートでサービスされるので、2つのコピー(例
の101と104)は取り除かれ、セル・バッファ参照
カウントは減少されるであろう。そして、上述したよう
に、セル・バッファ参照カウントがゼロになった場合
は、セルはフリーと印付けされる。
【0078】交換機構(すなわち、交換ユニット130
および1130)のロスレス・オペレーションを確実と
し、いずれの出力ポートもオーバーロード状態によるセ
ル・メモリの不均衡なシェアを持たないようにするため
に、バックプレッシャが利用される。バックプレッシャ
は、各キューの遅延優先順位に選択的に付与される。各
タイムスロットごとに、キュー・リストに割り当てられ
た最大数のメモリ位置は、動的に更新される。いずれか
のリストのサイズがその算出された論理限界を超える場
合、そのキュー・リストに応じたバックプレッシャ状況
ビットが主張される。調整的に、状況ビットはバックプ
レッシャ・ビットマップとして参照される。各キュー・
リストのバックプレッシャ状況は、特別キュー・リスト
からのセルが交換機構の次のステージまたは出力ポート
へ伝送されるべきか否かを示す。バックプレッシャ・ビ
ットマップは、出力ポート・カード1130の出力側か
ら第3ステージ・モジュール1133へ;第3ステージ
・モジュール1133から第2ステージ・クロスバー・
モジュール1132へ;第2ステージ・モジュール11
32から第1ステージ・モジュール1131へ;第1ス
テージ・モジュール1131から出力ポート・カード1
110の入力側へ輻輳フィードバックを提供する。
【0079】マシーン11で実行されるステップ141
1において、テーブル6および7に記述された接続タグ
および出力・オフセットに基づいて出力セル・ヘッダが
翻訳される。
【0080】多段交換ユニット構成 図11を参照して、多段交換ユニット1150構成に用
いられた3つのタイプのバックプレッシャ機構について
記述する。これらのバックプレッシャ機構は、実際の物
理的連結性パスではなく論理的パスを示す。たとえば、
第1のステージ・モジュールからポート・カードの入力
側への実際の物理的接続は存在しない。
【0081】第3ステージから第2ステージへ 第2ステージにより発生される第3ステージにおけるバ
ッファのオーバーフローの防止は、2つのパートで行わ
れる。第1のパートでは、バックプレッシャ情報が第3
ステージ・モジュール1133から各第2ステージ・ク
ロスバー・モジュール1132へ伝送される。第2のパ
ートでは、第2ステージが後のパラグラフで記述される
ように、第1のステージ・モジュール1131と通信す
る。
【0082】各タイムスロットごとに、各第3ステージ
・モジュール1133は、どのレコードのキュー(Q
R.)が現在の動的論理限界を超えたかを確かめる。得
られた論理限界を超えたリストに対応するビットはバッ
クプレッシャ・ビットマップに設定される。各モジュー
ル1133からのバックプレッシャ・ビットマップは、
専用のパスにより各クロスバー・モジュール1132へ
直接搬送るされる。18×18ポート交換機構1130
を考える。3つの出力ポートをサポートするよう構成さ
れたモジュールのためのバックプレッシャ・ビットマッ
プ・フォーマットが図12に示されている。したがっ
て、各出力モジュールは、図11の各クロスバー・モジ
ュール1132へ12ビットの情報を伝送する。その結
果、各クロスバーは、タイムスロットごとに一回、18
までの出力ポートに対応する完全なバックプレッシャ・
ビットマップを受ける。
【0083】第2ステージから第1ステージへ 図11を参照すると、第3ステージ・モジュール113
3におけるバッファのオーバーフローを防止するため、
または、クロスバー・モジュール1132における出力
回線争奪を避けるために、第2ステージ・モジュール1
132から第1ステージ・モジュールへのバックプレッ
シャが主張される。第2から第1ステージのフィードバ
ックは、専用のパスを介して搬送される。第2ステージ
へ次のフィードバック:アクセプト;第3ステージ・モ
ジュールにおけるバッファ・フル;第2ステージ・モジ
ュールで利用できない出力ラインを提供する。
【0084】ポート・カードの入力側への第1ステージ 交換機構1130の第1ステージ・モジュール1131
におけるバッファのオーバーフローを防止するために、
第1ステージ・モジュール1131から入力ポート・カ
ード1110へのバックプレッシャーが主張される。バ
ックプレッシャの適用は、リンク・リスト(ALカウン
タ)のサイズが算出された論理限界を超えるか否かに基
づいて行われる。フィードバックは、得られた入力ステ
ージ・モジュールへ直接接続されたライン・カードの入
力側に搬送される。
【0085】2つのパートでバックプレッシャ信号が起
きる。まず、バックプレッシャ・ビットマップが第1ス
テージ・モジュールからバンドの外の対応する第3ステ
ージ・モジュールへ伝送される。各入力ステージ・モジ
ュールは、図13に示されたように、それを扱う18の
キューについてバックプレッシャ・ビットマップを保持
する。一面構造において、各第1ステージ・モジュール
1131は、バックプレッシャ情報を専用のパスを介し
てひとつの第3ステージ・モジュール1133へつな
ぐ。
【0086】18×18のポート交換機構の出力ステー
ジ・モジュールは、各面からバックプレッシャ・マップ
を取り、情報を発信ATMセルのポート・ビットマップ
に多重化する。出力モジュールは、2つのタイムスロッ
トごとに順次にポート0〜8および9〜17に対応する
ビットマップを出力する。ポート0〜8に対応するビッ
トマップが発信ATMセルに伝送される場合、バックプ
レッシャ・マップ同期ビットは「1」に設定される。あ
るいは、ビットは「0」に設定される。
【0087】得られたポート・カードに予定されるセル
がない場合は、アイドル・セルがそのポート・カードへ
バックプレッシャ・ビットマップを運ぶために生成され
る。
【0088】第3ステージに対するポートカードの出力
各出力ポート・カードはまた、ポート・カード1110
の入力側から交換機構へ伝送されるセルを介して、帯域
内の(in-band )交換機構1130のその対応する第3
ステージ・モジュール1133へ4ビットのバックプレ
ッシャ状況を各遅延優先順位ごとにひとつずつ供給す
る。4ビットの情報は、遅延優先順位0からはじまり、
遅延優先順位3で終わるように、4つのタイムスロット
のコースを通って順次伝送される。出力バックプレッシ
ャ同期ビット(3)は情報に伴う。遅延優先順位「0」
が送られた場合、それは「1」に設定される。あるい
は、それは「0」に設定される。第1ステージ・モジュ
ールは、着信ATMセルから2ビットのバックプレッシ
ャ情報をはぎ取り、専用のパスを介して対応する第3ス
テージ・モジュール1133に出力ポート・カード・バ
ックプレッシャ状況の第1ステージ出力側にそって情報
を搬送する。入力ポート・カードが交換機構に予定され
るセルを持たない場合、ABMは、交換機構へ遅延優先
順位バックプレッシャ情報を運ぶためアイドル・セルを
生成する。
【0089】本発明の別の実施例にしたがい、全般説明
のパラグラフ1で参照された高パフォーマンスのインプ
リメンテーションについて説明する。付随のルーティン
グ・ビットマップを伴うマルチキャスト・セルは、その
入力ポート・ユニットから相互接続リンクをサーブする
ためにスケジュールに組まれた特定の時間(ひとつもし
くはそれ以上のクロック間隔、連続の必要はない)で入
力バスに現われる。この指定された時間の間に、セル
は、マルチキャスト・ルーティング・ビットマップでは
なく、そのビットマップにセットされたビットの数の参
照カウントで、相互接続交換ユニットのセル・バッファ
におけるフリーな位置にコピーされる。コピーと並行し
て、ビットマップのビットは、ビットマップで識別され
且つ内部リンクおよびセルが最終的に運ばれるであろう
出力ポート・ユニットと関連するそれらのキューにおけ
る並列キューイング・オペレーションを開始するために
用いられる。このようにして並列ハードウエアおよび並
行オペレーションを提供することにより、システムの最
高スループット要素のクロック速度を減少することがで
きる。
【0090】本発明の具体例 本発明のマルチキャスト・ルーティング技術の具体的且
つさらに特定したインプリメンテーションが添付の付録
に表現されている。付録は、本発明の機能を共に実行す
る11の処理マシーンそれぞれについての動作シーケン
ス(高レベル類似コード・フォーマット)を記述する。
その記述の目的により、マシーンは、明確なプログラム
・シーケンスにおいて入力から出力まで実行するコント
ローラとして規定されている。マシーンは、状態レジス
タおよび組合せロジックを用いて既知の有限状態マシー
ンとして実装される。データがさまざまな長さの時間で
バッファに記憶される場合、バッファはマシーンに対す
る出力、そしてその後、入力として機能し、いずれかの
側の「シーケンサー」は別の機械としてもっとも容易に
理解される。
【0091】各マシーンの動作シーケンスについて説明
する前に、記述されたマシーンすべてに関する2・3の
一般的説明をする。動作シーケンスは、既知の高レベル
プログラム制御文(たとえば、if、then、els
eなど)を使用する。特別な機能やプログラム文の適用
を説明するコメントには、最初に「//」をつける。た
とえば//これはコメントである。
【0092】さまざまなマシーンの操作およびマシーン
間のデータの流れは、図1、3、4およびその他の図面
を伴い図11に示された多段ATM交換の実施例に特別
に関連して記述される。
【0093】マシーン1は、すべての入力サブポートで
行われる(図11の入力ポートユニット1110のAB
M0からABM17についての)ALM入力オペレーシ
ョンの動作シーケンスを記述する。
【0094】マシーン2は、ALMから受信された各セ
ルごとに(図11の入力ポート・ユニット1110のA
BM0からABM17についての)ABM入力バッファ
の挿入の動作シーケンスを記述する。
【0095】マシーン3は、各セルの時間、(図11の
入力ポート・ユニット1110のABM0からABM1
7についての)ABM入力バッファの取りだし(unload
ing)の動作シーケンスを記述する。
【0096】マシーン4は、(図3にともに関連して図
11のASX入力モジュール0〜5それぞれについて
の)第1ステージASX交換入力バッファの挿入の動作
シーケンスを記述する。
【0097】マシーン5は、並列キュー・リストすべて
について(それらの4つの優先順位レベルを超えて)
(図3にともに関連して図11のASX入力モジュール
0〜5それぞれについての)第1ステージASX交換入
力バッファの取りだしの動作シーケンスを記述する。
【0098】マシーン6は、「ランダム」開始点から循
環的に、且つその点から「ランダム」な順番に、各入力
ポートごとに(図4にともに関連して図11のAXBク
ロスバー0〜5それぞれについての)中央ステージAX
Bクロスバー交換装置の動作シーケンスを記述する。
【0099】マシーン7は、ASXの各出力ポートごと
に(図3にともに関連して図11の各ASX出力モジュ
ール0〜5についての)第3ステージASX交換出力バ
ッファの挿入の動作シーケンスを記述する。
【0100】マシーン8は、ASXの各出力ポートごと
に(図3にともに関連して図11の各ASX出力モジュ
ール0〜5についての)第3ステージASX交換出力バ
ッファの取りだしの動作シーケンスを記述する。
【0101】マシーン9は、ASX出力モジュールから
受け取られたセルごとに(図3にともに関連して図11
の出力ポート・ユニット1150のABM0からABM
17についての)ABM出力バッファの挿入の動作シー
ケンスを記述する。
【0102】マシーン10は、ラウンド・ロビン・シー
ケンスにおいて、出力サブポートごとに(図3にともに
関連して図11の出力ポート・ユニット1150のAB
M0からABM17についての)ABM出力バッファの
取りだしの動作シーケンスを記述する。
【0103】マシーン11は、関連するABMから使用
可能なセルごとに(図3にともに関連して図11の出力
ポート・ユニット1150のABM0からABM17に
ついての)ALM出力の動作シーケンスを記述する。
【0104】これまで説明してきたものは、本発明の原
理の適用の具体例に過ぎない。他の構成や方法が、本発
明の趣旨および範囲を逸脱することなく当業者により実
現されることも可能である。特に、4つの集積回路装置
の特定の設定上で分離された特定数の順序マシーンによ
る記述は、明確にするためのものであり、記述されたオ
ペレーションの原理は、固定あるいはプログラム可能な
ロジックや適切な性能のプロセッサを用いて他の構成で
実現可能である。
【0105】
【付録】
【図面の簡単な説明】
【図1】本発明に係る単段ATM交換機の具体例を示す
図である。
【図2】ポート・カードのブロック図である。
【図3】交換モジュールASXのブロック図である。
【図4】交換ユニットAXBのブロック図である。
【図5】本発明に用いられる標準且つ改良ATMセルの
フォーマットを示す図である。
【図6】ヘッダ翻訳テーブルを示す図である。
【図7】ヘッダ翻訳ルックアップ・テーブルを示す図で
ある。
【図8】ルックアップ・テーブルを用いる2レベルのイ
ンデクシングを示す図である。
【図9】本発明のインプリメンテーションで用いられた
仮想接続(翻訳)テーブルを示す図である。
【図10】ABMメモリを示す図である。
【図11】3つのタイプのバックプレッシャ機構を用い
る多段ATM交換機を示す図である。
【図12】バックプレッシャ・ビットマップの形式を示
す図である。
【図13】バックプレッシャ・ビットマップ具体例を示
す図である。
【図14】本発明の典型的動作シーケンスのフローチャ
ートを示す図である。
【符号の説明】
100 入力 110 入力ポート・ユニット 120 内部リンク 130 中央相互接続交換ユニット(交換機構) 140 内部リンク 150 出力ポート・ユニット 160 出力
フロントページの続き (72)発明者 ジョセフ ジョージ クナウァー アメリカ合衆国 07704 ニュージャーシ ィ,フェア ヘヴン,オークラウン ロー ド 46 (72)発明者 ヴジェイ ポチャンパリ クマー アメリカ合衆国 07728 ニュージャーシ ィ,フリーホールド,タワー ロード 3

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 複数の出力ポートのうちのひとつ以上の
    出力ポートへ複数の入力ポートのうちのひとつで受信さ
    れた入力セルをマルチキャストする装置において、 (a)データ・ペイロードと、データ・ペイロードが出
    力されるべきひとつ以上の出力ポートを識別するビット
    マップ・セグメントとを含む入力セルを受信する手段と (b)利用可能なセル・バッファにデータ・ペイロード
    を格納する手段と、 (c)出力ポートごとに少なくともひとつの、複数のリ
    ンク・リスト出力キューと、 (d)入力セルが出力されるべきポートの数と等しい数
    を格納するための、各セル・バッファに関連する参照カ
    ウンタと、 (e)データ・ペイロードが運ばれるべき出力ポートを
    識別するためビットマップ・セグメントを訳し、ひとつ
    以上のリンク・リスト出力キューへエントリを作成する
    手段と、 (f)対応するリンク・リスト出力キューにおけるエン
    トリによって決定されたシーケンスにしたがって、デー
    タ・ペイロードの1コピーを識別された出力ポートそれ
    ぞれに伝送する手段と、 (g)ペイロードが識別された出力ポートに出力される
    とき、リンク・リスト出力キューそれぞれにおいてそこ
    からエントリを削除し、参照カウンタを減少し、そして
    参照カウンタがゼロとなったとき、セル・バッファを利
    用可能とする手段とからなることを特徴とする装置。
  2. 【請求項2】 セル・バッファおよびリンク・リスト出
    力キューは、同じメモリ内に位置していることを特徴と
    する請求項1記載の装置。
  3. 【請求項3】 出力ポートそれぞれのリンク・リスト出
    力キューは、同じメモリ内に位置していることを特徴と
    する請求項1記載の装置。
  4. 【請求項4】 各出力ポートごとに別々のメモリが提供
    されており、リンク・リスト出力キューへのエントリは
    並行して行われることを特徴とする請求項1記載の装
    置。
  5. 【請求項5】 ビットマップ・セグメントは別々のキュ
    ーへ置かれ、エントリは入力セル受信速度と等しいもし
    くはよりも速い速度で行われることを特徴とする請求項
    1記載の装置。
  6. 【請求項6】 リンク・リスト出力キューへのエントリ
    は、出力ポートの数で乗じた入力セル受信速度と等しい
    速度で生じることを特徴とする請求項1記載の装置。
  7. 【請求項7】 少なくともひとつの出力ポートは複数の
    リンク・リスト出力キューを含み、前記少なくともひと
    つの出力ポートについての単一リンク・リスト出力キュ
    ーそれぞれの処理は単独していることを特徴とする請求
    項1記載の装置。
  8. 【請求項8】 前記処理は、入力セルに含まれたヘッダ
    ・データによって決定される優先順位に基づくことを特
    徴とする請求項1記載の装置。
  9. 【請求項9】 受信されたユニキャスト入力セルについ
    ての別個のリンク・リスト出力キューと、受信されたマ
    ルチキャスト入力セルについての別個のリンク・リスト
    出力キューとをさらに含むことを特徴とする請求項1記
    載の装置。
  10. 【請求項10】 2つ以上のリンク・リスト出力キュー
    が出力ポート用に用いられ、次のセルが処理されるべき
    2つ以上のリンク・リスト出力キューを示すひとつ以上
    の追加ビットを有する単一リンク・リスト出力キューと
    して2つ以上のリンク・リスト出力キューが実装される
    ことを特徴とする請求項1記載の装置。
  11. 【請求項11】 複数の出力ポートのうちのひとつ以上
    の出力ポートへ入力ポートで受信された入力セルをマル
    チキャストするための交換機において、 データ・ペイロードと、データ・ペイロードが出力され
    るべきひとつ以上の出力ポートを識別するビットマップ
    ・セグメントとを含む入力セルを受信するための入力ポ
    ートと、 (a)利用可能なセル・バッファにデータ・ペイロード
    を格納し、 (b)出力ポートごとに少なくともひとつ、複数のリン
    ク・リスト出力キューを確立し、 (c)入力セルが出力されるべきポートの数と等しい数
    を格納するための参照カウンタと各セル・バッファとを
    関連させ、 (d)データ・ペイロードが運ばれるべき出力ポートを
    識別するためビットマップ・セグメントを訳し、 (e)識別された出力ポートごとに、関連するリンク・
    リスト出力キューへエントリを作成し、 (f)対応するリンク・リスト出力キューにおけるエン
    トリによって決定されたシーケンスにしたがって、デー
    タ・ペイロードの1コピーを識別された出力ポートそれ
    ぞれに伝送し、 (g)ペイロードが識別された出力ポートに出力される
    とき、リンク・リスト出力キューそれぞれにおいてそこ
    からエントリを削除して、参照カウンタを減少し、 (h)参照カウンタがゼロとなったとき、セル・バッフ
    ァを利用可能とすることにより入力セルを処理する処理
    装置と、 処理装置から受信されたペイロードを出力するための出
    力ポートとからなることを特徴とする交換機。
  12. 【請求項12】 複数の出力ポートのうちのひとつ以上
    の出力ポートへ複数の入力ポートのうちのひとつで受信
    された入力セルをマルチキャストする方法において、 (a)データ・ペイロードと、データ・ペイロードが出
    力されるべきひとつ以上の出力ポートを識別するビット
    マップ・セグメントとを含む入力セルを受信する工程
    と、 (b)利用可能なセル・バッファにデータ・ペイロード
    を格納する工程と、 (c)出力ポートごとに少なくともひとつ、複数のリン
    ク・リスト出力キューを確立する工程と、 (d)入力セルが出力されるべきポートの数と等しい数
    を格納するための参照カウンタと各セル・バッファとを
    関連させる工程と、 (e)データ・ペイロードが運ばれるべき出力ポートを
    識別するためビットマップ・セグメントを訳す工程と、 (f)識別された出力ポートごとに、関連するリンク・
    リスト出力キューへエントリを作成する工程と、 (g)対応するリンク・リスト出力キューにおけるエン
    トリによって決定されたシーケンスにしたがって、デー
    タ・ペイロードの1コピーを識別された出力ポートそれ
    ぞれに伝送する工程と、 (h)ペイロードが識別された出力ポートに出力される
    とき、リンク・リスト出力キューそれぞれにおいてそこ
    からエントリを削除して、参照カウンタを減少する工程
    と、 (i)参照カウンタがゼロとなったとき、セル・バッフ
    ァを利用可能とする工程とからなることを特徴とする方
    法。
  13. 【請求項13】 セル・バッファおよびリンク・リスト
    出力キューは、同じメモリ内に位置することを特徴とす
    る請求項12記載の装置。
  14. 【請求項14】 出力ポートそれぞれのリンク・リスト
    出力キューは、同じメモリ内に位置していることを特徴
    とする請求項12記載の装置。
  15. 【請求項15】 各出力ポートごとに別々のメモリが提
    供されており、リンク・リスト出力キューへのエントリ
    は並行して行われることを特徴とする請求項12記載の
    装置。
  16. 【請求項16】 ビットマップ・セグメントは別々のキ
    ューへ置かれ、エントリは入力セル受信速度と等しいも
    しくはよりも速い速度で行われることを特徴とする請求
    項12記載の装置。
  17. 【請求項17】 リンク・リスト出力キューへのエント
    リは、出力ポートの数で乗じた入力セル受信速度と等し
    い速度で生じることを特徴とする請求項12記載の装
    置。
  18. 【請求項18】 少なくともひとつの出力ポートは複数
    のリンク・リスト出力キューを含み、前記少なくともひ
    とつの出力ポートについての単一リンク・リスト出力キ
    ューそれぞれの処理は独立していることを特徴とする請
    求項12記載の装置。
  19. 【請求項19】 前記処理は、入力セルに含まれたヘッ
    ダ・データによって決定される優先順位に基づくことを
    特徴とする請求項18記載の装置。
  20. 【請求項20】 受信されたマルチキャスト入力セルに
    ついての別個のリンク・リスト出力キューと、受信され
    たユニキャスト入力セルについての別個のリンク・リス
    ト出力キューとをさらに含むことを特徴とする請求項1
    2記載の装置。
JP548197A 1996-01-16 1997-01-16 多段式ネットワークにおけるマルチキャスト・セルのバッファリング Expired - Fee Related JP3577188B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/584,932 US5689505A (en) 1996-01-16 1996-01-16 Buffering of multicast cells in switching networks
US08/584932 1996-01-16

Publications (2)

Publication Number Publication Date
JPH09205446A true JPH09205446A (ja) 1997-08-05
JP3577188B2 JP3577188B2 (ja) 2004-10-13

Family

ID=24339355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP548197A Expired - Fee Related JP3577188B2 (ja) 1996-01-16 1997-01-16 多段式ネットワークにおけるマルチキャスト・セルのバッファリング

Country Status (4)

Country Link
US (1) US5689505A (ja)
EP (1) EP0785698B1 (ja)
JP (1) JP3577188B2 (ja)
DE (1) DE69733703T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008177716A (ja) * 2007-01-17 2008-07-31 Fujitsu Access Ltd 多重伝送装置及びそのバス容量の設定又は変更方法
CN100426792C (zh) * 2005-07-27 2008-10-15 华为技术有限公司 多播调度中缓存权重的处理方法

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256313B1 (en) 1995-01-11 2001-07-03 Sony Corporation Triplet architecture in a multi-port bridge for a local area network
US5940597A (en) * 1995-01-11 1999-08-17 Sony Corporation Method and apparatus for periodically updating entries in a content addressable memory
US5857075A (en) * 1995-01-11 1999-01-05 Sony Corporation Method and integrated circuit for high-bandwidth network server interfacing to a local area network
US6088736A (en) 1995-07-19 2000-07-11 Fujitsu Network Communications, Inc. Joint flow control mechanism in a telecommunications network
US6212182B1 (en) * 1996-06-27 2001-04-03 Cisco Technology, Inc. Combined unicast and multicast scheduling
US5898687A (en) * 1996-07-24 1999-04-27 Cisco Systems, Inc. Arbitration mechanism for a multicast logic engine of a switching fabric circuit
US6229812B1 (en) 1996-10-28 2001-05-08 Paxonet Communications, Inc. Scheduling techniques for data cells in a data switch
US6016307A (en) 1996-10-31 2000-01-18 Connect One, Inc. Multi-protocol telecommunications routing optimization
US6473404B1 (en) 1998-11-24 2002-10-29 Connect One, Inc. Multi-protocol telecommunications routing optimization
US6493347B2 (en) 1996-12-16 2002-12-10 Juniper Networks, Inc. Memory organization in a switching device
US6201789B1 (en) * 1996-12-30 2001-03-13 Compaq Computer Corporation Network switch with dynamic backpressure per port
US5870396A (en) * 1996-12-31 1999-02-09 Northern Telecom Limited Output queueing in a broadband multi-media satellite and terrestrial communications network
US6128654A (en) * 1997-02-14 2000-10-03 Advanced Micro Devices, Inc. Method and apparatus for transmitting multiple copies by replicating data identifiers
JPH10322347A (ja) * 1997-05-16 1998-12-04 Mitsubishi Electric Corp ネットワーク通信装置
JP2970596B2 (ja) * 1997-06-10 1999-11-02 日本電気株式会社 Atm通信装置
US5963553A (en) * 1997-07-11 1999-10-05 Telefonaktiebolaget Lm Ericsson Handling ATM multicast cells
US6185209B1 (en) * 1997-07-11 2001-02-06 Telefonaktiebolaget Lm Ericsson VC merging for ATM switch
US6744728B1 (en) 1997-09-17 2004-06-01 Sony Corporation & Sony Electronics, Inc. Data pipeline timing optimization technique in a multi-port bridge for a local area network
US6446173B1 (en) 1997-09-17 2002-09-03 Sony Corporation Memory controller in a multi-port bridge for a local area network
US6157951A (en) * 1997-09-17 2000-12-05 Sony Corporation Dual priority chains for data-communication ports in a multi-port bridge for a local area network
US6617879B1 (en) 1997-09-17 2003-09-09 Sony Corporation Transparently partitioned communication bus for multi-port bridge for a local area network
US6442168B1 (en) * 1997-09-17 2002-08-27 Sony Corporation High speed bus structure in a multi-port bridge for a local area network
US6363067B1 (en) 1997-09-17 2002-03-26 Sony Corporation Staged partitioned communication bus for a multi-port bridge for a local area network
US6442139B1 (en) * 1998-01-29 2002-08-27 At&T Adaptive rate control based on estimation of message queuing delay
US6125112A (en) * 1998-03-23 2000-09-26 3Com Corporation Non-buffered, non-blocking multistage ATM switch
US6198723B1 (en) * 1998-04-14 2001-03-06 Paxonet Communications, Inc. Asynchronous transfer mode traffic shapers
US5999531A (en) * 1998-04-17 1999-12-07 Cabletron Systems, Inc. Method and system for identifying ports and forwarding packets in a multiport switch
US6349098B1 (en) * 1998-04-17 2002-02-19 Paxonet Communications, Inc. Method and apparatus for forming a virtual circuit
US6359879B1 (en) * 1998-04-24 2002-03-19 Avici Systems Composite trunking
JP3001502B2 (ja) 1998-05-20 2000-01-24 九州日本電気通信システム株式会社 Atmスイッチモジュール、atmスイッチ容量拡張方法、およびatmルーティング情報設定方法
US6201809B1 (en) * 1998-05-28 2001-03-13 3Com Corporation Port redundancy and backpressure translation table apparatus
US6453357B1 (en) * 1999-01-07 2002-09-17 Cisco Technology, Inc. Method and system for processing fragments and their out-of-order delivery during address translation
US6760331B1 (en) * 1999-03-31 2004-07-06 Cisco Technology, Inc. Multicast routing with nearest queue first allocation and dynamic and static vector quantization
US7664115B1 (en) * 1999-04-30 2010-02-16 Alcatel-Lucent Canada, Inc. Method and apparatus for merging virtual connections
US6504846B1 (en) * 1999-05-21 2003-01-07 Advanced Micro Devices, Inc. Method and apparatus for reclaiming buffers using a single buffer bit
US6501749B1 (en) 1999-06-25 2002-12-31 International Business Machines Corporation System and method for data transmission across a link aggregation
KR100307926B1 (ko) * 1999-08-04 2001-09-29 서평원 멀티캐스트 서비스가 가능한 공유 메모리형 에이티엠 스위치
US6606317B1 (en) * 1999-09-09 2003-08-12 Harris Corporation Dual key controlled content addressable memory for accessing packet switch data buffer for multicasting data packets
JP3518441B2 (ja) * 1999-10-01 2004-04-12 日本電気株式会社 ユニキャスト/マルチキャスト方式
US7203171B1 (en) 1999-12-20 2007-04-10 Cisco Technology, Inc. Ingress discard in output buffered switching devices
US7689696B2 (en) * 2000-01-31 2010-03-30 Telecommunication Systems, Inc. System and method for re-directing requests from browsers for communications over non-IP based networks
US7970898B2 (en) * 2001-01-24 2011-06-28 Telecommunication Systems, Inc. System and method to publish information from servers to remote monitor devices
US6435164B1 (en) 2000-12-07 2002-08-20 Ford Global Technologies, Inc. Fuel weathering method for vehicle evaporative emission system
US7693981B2 (en) * 2001-01-24 2010-04-06 Telecommunication Systems, Inc. System and method to publish information from servers to remote monitor devices
US7003571B1 (en) 2000-01-31 2006-02-21 Telecommunication Systems Corporation Of Maryland System and method for re-directing requests from browsers for communication over non-IP based networks
US8370435B1 (en) 2000-01-31 2013-02-05 Telecommunication Systems, Inc. System and method for servers to send alerts to connectionless devices
US7418498B2 (en) * 2001-01-24 2008-08-26 Telecommunication Systems, Inc. System and method to publish information from servers to remote monitor devices
US8090856B1 (en) 2000-01-31 2012-01-03 Telecommunication Systems, Inc. Intelligent messaging network server interconnection
US7236489B1 (en) * 2000-04-27 2007-06-26 Mosaid Technologies, Inc. Port packet queuing
US7106728B1 (en) 2000-05-01 2006-09-12 Industrial Technology Research Institute Switching by multistage interconnection of concentrators
US6591285B1 (en) 2000-06-16 2003-07-08 Shuo-Yen Robert Li Running-sum adder networks determined by recursive construction of multi-stage networks
US6992980B2 (en) * 2000-06-20 2006-01-31 International Business Machines Corporation System and method for enabling a full flow control down to the sub-ports of a switch fabric
US7103041B1 (en) * 2000-06-30 2006-09-05 Marconi Intellectual Property (Ringfence), Inc. Optimization of number of transceivers used in a switch
US7082127B1 (en) * 2000-07-28 2006-07-25 Marconi Intellectual Property (Ringfence), Inc. Synchronous dynamic register updating across a distributed system
JP3646638B2 (ja) * 2000-09-06 2005-05-11 日本電気株式会社 パケット交換装置及びそれに用いるスイッチ制御方法
ATE404001T1 (de) * 2000-09-12 2008-08-15 Ibm System und verfahren zur steuerung des mehrfachdatenverkehrs einer datenvermittlungsstelle
US6704576B1 (en) 2000-09-27 2004-03-09 At&T Corp. Method and system for communicating multimedia content in a unicast, multicast, simulcast or broadcast environment
US7106692B1 (en) 2000-10-04 2006-09-12 Ericsson Ab APS/port mirroring
TW513635B (en) * 2000-11-24 2002-12-11 Ibm Method and structure for variable-length frame support in a shared memory switch
US7023841B2 (en) * 2000-12-15 2006-04-04 Agere Systems Inc. Three-stage switch fabric with buffered crossbar devices
US7158528B2 (en) * 2000-12-15 2007-01-02 Agere Systems Inc. Scheduler for a packet routing and switching system
US7161906B2 (en) * 2000-12-15 2007-01-09 Agere Systems Inc. Three-stage switch fabric with input device features
JP2002223202A (ja) * 2001-01-26 2002-08-09 Fujitsu Ltd データ伝送方法及びそれを用いた伝送装置
US6940856B2 (en) * 2001-03-05 2005-09-06 International Business Machines Corporation Multicast buffered switch and method for operating a multicast buffered switch
US20020159437A1 (en) 2001-04-27 2002-10-31 Foster Michael S. Method and system for network configuration discovery in a network manager
US7609695B2 (en) * 2001-06-15 2009-10-27 Industrial Technology Research Institute Optimizing switching element for minimal latency
US7103059B2 (en) * 2001-06-15 2006-09-05 Industrial Technology Research Institute Scalable 2-stage interconnections
JP2003018214A (ja) * 2001-07-02 2003-01-17 Hitachi Ltd パケット通信装置,パケット通信装置におけるマルチキャストパケットの通信方法及びパケット通信装置の設定方法
US8688853B2 (en) * 2001-12-21 2014-04-01 Agere Systems Llc Method and apparatus for maintaining multicast lists in a data network
US7313135B2 (en) 2002-01-31 2007-12-25 Mosaid Technologies, Inc. Trunking in a matrix
AU2003253708A1 (en) * 2002-06-27 2004-01-19 Tellabs Operations, Inc. Apparatus and method to switch packets using a switch fabric with memory
US7274660B2 (en) * 2002-08-15 2007-09-25 Motorola, Inc. Method of flow control
US20040066791A1 (en) * 2002-10-02 2004-04-08 Jingshown Wu Asynchronous expansible switching system for switching packet with different length
US7403536B2 (en) * 2002-12-19 2008-07-22 International Business Machines Corporation Method and system for resequencing data packets switched through a parallel packet switch
US8225389B2 (en) * 2003-04-11 2012-07-17 Broadcom Corporation Method and system to provide physical port security in a digital communication system
JP4394988B2 (ja) * 2004-03-19 2010-01-06 富士通株式会社 パケット読出し制御方法及び装置
US7957275B2 (en) * 2004-09-09 2011-06-07 Jinsalas Solutions, Llc Queuing system
US8634430B2 (en) * 2006-11-27 2014-01-21 Fujitsu Limited Multicast transmissions in optical burst transport
US20080124081A1 (en) * 2006-11-27 2008-05-29 Takeo Hamada Predictive scheduling of data path control
GB2456180B (en) * 2008-01-07 2012-01-25 Virtensys Ltd Switching method for data packets
US8254386B2 (en) * 2010-03-26 2012-08-28 Verizon Patent And Licensing, Inc. Internet protocol multicast on passive optical networks
US8811406B2 (en) 2012-03-14 2014-08-19 International Business Machines Corporation Delivering multicast frames to aggregated link trunks in a distributed switch
US8953619B2 (en) 2012-03-14 2015-02-10 International Business Machines Corporation Dynamic optimization of a multicast tree hierarchy for a distributed switch
US8897301B2 (en) 2012-03-14 2014-11-25 International Business Machines Corporation Multicast bandwidth multiplication for a unified distributed switch
US8913620B2 (en) 2012-03-14 2014-12-16 International Business Machines Corporation Multicast traffic generation using hierarchical replication mechanisms for distributed switches
CN111711566B (zh) * 2020-07-03 2021-07-27 西安电子科技大学 多路径路由场景下的接收端乱序重排方法
CN112994943B (zh) * 2021-02-28 2022-05-27 新华三信息安全技术有限公司 一种报文统计方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1196791B (it) * 1986-11-18 1988-11-25 Cselt Centro Studi Lab Telecom Elemento di commutazione per reti di interconnessione multistadio autoinstradanti a commutazione di pacchetto
FR2659819B1 (fr) * 1990-03-14 1992-05-29 Alcatel Nv Reseau de commutation a trajets multiples et a autoacheminement pour la commutation de cellules a multiplexage temporel asynchrone.
US5535197A (en) * 1991-09-26 1996-07-09 Ipc Information Systems, Inc. Shared buffer switching module
US5287346A (en) * 1991-10-16 1994-02-15 Carnegie Mellon University Packet switch
US5528592A (en) * 1994-01-27 1996-06-18 Dsc Communications Corporation Method and apparatus for route processing asynchronous transfer mode cells
EP0676878A1 (en) * 1994-04-07 1995-10-11 International Business Machines Corporation Efficient point to point and multi point routing mechanism for programmable packet switching nodes in high speed data transmission networks
US5583861A (en) * 1994-04-28 1996-12-10 Integrated Telecom Technology ATM switching element and method having independently accessible cell memories

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100426792C (zh) * 2005-07-27 2008-10-15 华为技术有限公司 多播调度中缓存权重的处理方法
JP2008177716A (ja) * 2007-01-17 2008-07-31 Fujitsu Access Ltd 多重伝送装置及びそのバス容量の設定又は変更方法

Also Published As

Publication number Publication date
US5689505A (en) 1997-11-18
DE69733703T2 (de) 2006-04-27
DE69733703D1 (de) 2005-08-18
EP0785698A2 (en) 1997-07-23
EP0785698A3 (en) 2000-05-31
JP3577188B2 (ja) 2004-10-13
EP0785698B1 (en) 2005-07-13

Similar Documents

Publication Publication Date Title
JP3443264B2 (ja) 多段式ネットワークにおける改良されたマルチキャスト・ルーティング
JP3577188B2 (ja) 多段式ネットワークにおけるマルチキャスト・セルのバッファリング
JPH09247189A (ja) マルチキャスト・ルーティング輻輳フィードバックを有する多段式ネットワーク
US6421342B1 (en) Packet forwarding apparatus and method using pipelined node address processing
JP4006205B2 (ja) 別々の出力バッファを備えたスイッチング構成および方法
US5898687A (en) Arbitration mechanism for a multicast logic engine of a switching fabric circuit
US5740171A (en) Address translation mechanism for a high-performance network switch
US5583858A (en) Asynchronous transfer mode switching device
US5535197A (en) Shared buffer switching module
EP0848891B1 (en) Switching device, method and apparatus
WO1998029993A1 (en) Output queueing in a broadband multi-media satellite and terrestrial communications network
US20030137940A1 (en) Pass/drop apparatus and method for network switching node
JPH08298522A (ja) 共有メモリ非同期転送モードスイッチ内において使用されるための空間優先度を維持するための選択的押出しシステム及び方法
AU6668294A (en) Multicast virtual circuit switch using cell recycling
WO2002069668A1 (en) Switching arrangement and method with separated output buffers
US5434855A (en) Method and apparatus for selective interleaving in a cell-switched network
US6985486B1 (en) Shared buffer asynchronous transfer mode switch
US6678279B1 (en) System and method to implement a packet switch buffer for unicast and multicast data
US8271672B1 (en) Guaranteed bandwidth memory apparatus and method
JP2000138687A (ja) 中継装置
JP3132973B2 (ja) データ交換装置
EP1198098B1 (en) Switching arrangement and method with separated output buffers
US7492790B2 (en) Real-time reassembly of ATM data
O'Kane et al. An investigation into the design of high-performance shared buffer architectures based on FPGA technology with embedded memory

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20031222

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040322

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040614

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040709

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080716

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090716

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100716

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100716

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110716

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120716

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120716

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130716

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees