JPH0637798A - Reserved ring mechanism of packet exchange - Google Patents

Reserved ring mechanism of packet exchange

Info

Publication number
JPH0637798A
JPH0637798A JP10817993A JP10817993A JPH0637798A JP H0637798 A JPH0637798 A JP H0637798A JP 10817993 A JP10817993 A JP 10817993A JP 10817993 A JP10817993 A JP 10817993A JP H0637798 A JPH0637798 A JP H0637798A
Authority
JP
Japan
Prior art keywords
network
cell
cells
switch
copy
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.)
Withdrawn
Application number
JP10817993A
Other languages
Japanese (ja)
Inventor
Joseph B Lyles
ビー ライルズ ジョセフ
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.)
Xerox Corp
Original Assignee
Xerox Corp
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 Xerox Corp filed Critical Xerox Corp
Publication of JPH0637798A publication Critical patent/JPH0637798A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE: To provide a reservation ring mechanism adjusting contention in a wide band ISDN high speed packet exchange. CONSTITUTION: The reservation ring mechanism is provided with a means for circularly shifting a reservation vector in a top-to-down order during at least one arbitration cycle and permitting the contended inputs to access to the same output in the top-to-down order. When the maximum permission number of competitors are in a contention state on outputs, access to specified output is permitted to the maximum permission number of competitors during the respective arbitration cycles.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、高速広帯域通信ネット
ワーク、より詳細には、高性能ローカルエリアネットワ
ーク(LAN)に関するものである。
FIELD OF THE INVENTION This invention relates to high speed broadband communication networks, and more particularly to high performance local area networks (LANs).

【0002】[0002]

【従来の技術】研究プロジェクトやシステムプロダクト
は、ほどなく既設のLANの容量を越える帯域幅、応答
性および(または)リアルタイムの諸要求をもつであろ
う。たとえば、私文書から技術文献に及ぶ文書について
紙から電子書式への移行が進行中であり、そのために進
歩した電子走査装置や印刷装置が開発された。これらの
装置は、装置の速度や解像度が増しているほか、装置の
カラーやグレースケール容量が拡大されているため、そ
の帯域幅の要求は拡大し続けるであろう。改良型LAN
に対する要求のもう1つの例は、壁サイズ表示装置をベ
ースとする会議支援装置とライブビデオリンクを使用す
るゼロックスメデアスペース(Xerox Media Space)な
ど、出現しつつあるいくつかの共同制作技術によって考
えられている高品質ビデオイメージに集中している。さ
らに、高性能コンピュータは、計算資源、高性能ファイ
ルサーバー、視覚化ワークステーション、等として使用
できるようになりつつあるが、現在使用されているLA
Nは、これらの高性能コンピュータを支援するのに必要
な容量を備えていない。
Research projects and system products will soon have bandwidth, responsiveness and / or real-time requirements that exceed the capacity of existing LANs. For example, there is an ongoing transition from paper to electronic formats for documents ranging from private documents to technical literature, and for this reason advanced electronic scanning and printing devices have been developed. The bandwidth requirements of these devices will continue to grow due to the increased speed and resolution of the devices as well as the increased color and grayscale capacity of the devices. Improved LAN
Another example of the demand for IoT is conceived by some emerging co-production technologies, such as Xerox Media Space, which uses live video links and conference aids based on wall-sized displays. You are focused on high quality video images. In addition, high performance computers are becoming available as computing resources, high performance file servers, visualization workstations, etc.
N does not have the necessary capacity to support these high performance computers.

【0003】需要の多い潜在的な科学計算や視覚化アプ
リケーションは、ギガビット/秒(Gbps ) のデータ伝
送速度を必要とするが、大多数の知覚アプリケーション
には10 〜 100メガビット/秒( Mbps )の帯域幅で十
分である。しかし、リアルタイムビデオなど、一部の知
覚アプリケーションは、ネットワークに長い連続負荷を
にかけるし、また二点間(unicast )リンクのほかに、
1対多(multicast )伝送を要求するであろう。従っ
て、ごく普通のユーザー共同体を同時にサポートするた
めに、LANがほどなく 10 〜 40 Gbpsの総合帯域幅を
必要とするであろうという仮定は妥当である。異なるユ
ーザー共同体は一般に異なるニーズを有しており、また
あらゆるユーザー共同体の要求は一般に時間と共に膨ら
むので、ユーザー共同体の要求を優雅にかつ経済的に満
たすためにスケール(scale)する高性能LANが要望さ
れている。
[0003] Potential demanding scientific computing and visualization applications require data rates of gigabits per second (Gbps), while the vast majority of perceptual applications require between 10 and 100 megabits per second (Mbps). Bandwidth is sufficient. However, some perceptual applications, such as real-time video, put long continuous loads on the network, and in addition to point-to-point (unicast) links,
It will require one-to-many (multicast) transmission. Therefore, it is reasonable to assume that a LAN will soon require an aggregate bandwidth of 10-40 Gbps to simultaneously support the ordinary user community. Since different user communities generally have different needs, and the needs of all user communities generally grow over time, there is a need for a high performance LAN that scales to meet the needs of the user community gracefully and economically. Has been done.

【0004】[0004]

【発明が解決しようとする課題】既知のFDDI(Fibe
r Distributed Data Interface) ネットワークは、本発
明が考えているLANのピーク帯域幅要求も、総合帯域
幅要求も満足させることができない。また、クロスバー
交換機または高速同報通信バスをベースとする技術な
ど、最近開発された他の多くの技術は、提案されたLA
Nのマルチキャスト(muticast) 、同報通信(broadcas
t) 、および(または)余裕度(affordability) の諸要
求を満たすことができないように思われる。
[Problems to be Solved by the Invention] Known FDDI (Fibe
r Distributed Data Interface) networks cannot meet the peak bandwidth requirements of the LAN as contemplated by the present invention or the aggregate bandwidth requirements. Also, many other recently developed technologies, such as those based on crossbar exchanges or high speed broadcast buses, are based on the proposed LA.
N multicast (muticast), broadcast (broadcas)
It seems that t) and / or affordability requirements cannot be met.

【0005】[0005]

【課題を解決するための手段】本発明に従って、分類ネ
ットワークと、前記分類ネットワークの次に配置され、
複数の入力から複数の出力へパケットを経路指定する複
数の経路指定ネットワークを有する非ブロッキング自己
経路指定式交換機は、同一出力に対するアクセスを争っ
ている入力間の対立を解決する予約リング機構を備えて
いる。この予約リング機構は、少なくとも1仲裁サイク
ルの間にトップツーダウン順に環状に予約ベクトルを移
して、前記競合している入力が同一出力に対しトップツ
ーダウン順にアクセスするのを許可する手段を備えてい
て、少なくとも最大許容数の競合者が同一出力に対し競
合状態にある時はいつも、前記各仲裁サイクル中に前記
数の競合者にその特定の出力へのアクセスを許可する。
According to the invention, a classification network is arranged next to said classification network,
A non-blocking self-routing switch with multiple routing networks that routes packets from multiple inputs to multiple outputs has a reservation ring mechanism that resolves conflicts between the inputs competing for access to the same output. There is. The reservation ring mechanism comprises means for circularly transferring the reservation vector in top-to-down order for at least one arbitration cycle to allow the competing inputs to access the same output in top-down order. Thus, whenever at least the maximum allowed number of competitors are competing for the same output, that number of competitors is granted access to that particular output during each said arbitration cycle.

【0006】[0006]

【実施例】I.定義 以下の用語は、ここで使用する場合には以下の意味を有
する。
EXAMPLE I. Definitions The following terms, as used herein, have the following meanings.

【0007】「チャンネルレート(channel rate) 」と
は、特定のストリーム、チャンネル、等、たとえば単一
テレビジョン伝送、ファイル転送、データベーストラン
ザクションのビットレートである。
"Channel rate" is the bit rate of a particular stream, channel, etc., eg, single television transmission, file transfer, database transaction.

【0008】「リンクレート(link rate)」とは、ネッ
トワークのデバイス(ホスト、ルータ、交換機)が個別
リンク(一対の電線、同軸ケーブル、光ファイバー)上
で維持することができる、または維持しなければならな
いビットレートである。このレートは、チャンネルレー
トの上限である。また、このレートはインタフェースの
ハードウェアのコストや、ネットワークプロトコルのハ
ードウェアやソフトウェアのコストに大きな影響を及ぼ
す。
"Link rate" means that devices in the network (hosts, routers, switches) can or must be maintained on individual links (pairs of wires, coaxial cables, optical fibers). It is a bit rate that cannot be achieved. This rate is the upper limit of the channel rate. In addition, this rate has a great influence on the cost of interface hardware and the cost of network protocol hardware and software.

【0009】「総合レート(aggregate rate)」とは、同
時に伝送することができる最大数のリンクについてリン
クレートの合計として表される最大総合ネットワーク容
量である。バスまたはリングとして具体化されたネット
ワーク、すなわち単一周波数無線同報通信を使用するネ
ットワークの場合、リンクレートは総合レートと同じで
ある。逆に、通常の電話交換システムは、どんなリンク
のレートよりもはるかに高い総合レートが得られる。
"Aggregate rate" is the maximum aggregate network capacity expressed as the sum of link rates for the maximum number of links that can be transmitted simultaneously. For networks embodied as buses or rings, i.e. networks using single frequency wireless broadcast, the link rate is the same as the aggregate rate. Conversely, conventional telephone switching systems provide much higher aggregate rates than any link rate.

【0010】II. 基本的アーキテクチャ 本発明のATM LANは、AT&T/Bellcore によっ
て開発された形式の VLSI ベース”Batcher/banyan”ネ
ットワークを使用して具体化することができる。理解さ
れるように、このLANは、 115 Mbps のリンクレート
で動作するユニキャストおよびマルチキャストバーチャ
ル回線をサポートし、リンクレートを600 Mbpsまで増や
す用意がなされている。ここに開示する具体化において
は、各交換機は32ポートをサポートするであろう。し
かし、Batcher/banyanネットワークは、256ポートよ
り大きな交換機や、(一部には、ここに開示した進歩の
ために、)1ギカビット/秒以上のリンクレートに対し
スケールするであろうと思われる。また、より大きなユ
ーザー共同体をサポートするために、これらの交換機を
相互に接続し、より大きな階層型ネットワークを作るこ
とができる。
II. Basic Architecture The ATM LAN of the present invention can be implemented using a VLSI based "Batcher / banyan" network of the type developed by AT & T / Bellcore. As will be appreciated, this LAN supports unicast and multicast virtual circuits operating at a link rate of 115 Mbps and is prepared to increase the link rate to 600 Mbps. In the implementation disclosed herein, each switch would support 32 ports. However, it is likely that the Batcher / banyan network will scale for switches larger than 256 ports and for link rates of 1 gigabit / second and above (in part due to the advances disclosed herein). Also, these switches can be interconnected to create a larger hierarchical network to support a larger community of users.

【0011】ATM交換の魅力の1つは、標準規格にな
るのもかなり近いことである。この形式のネットワーク
の基本的概念は、すべての通信が「セル」と呼ばれる小
さい固定サイズデータパケットの送信と交換によって行
われることである。バーチャル回線技法を使用すること
によって各パケットのオーバーヘッドが減るので、各セ
ルのヘッダーはソースと宛先間のすべての交換機によっ
てあらかじめ設定された経路を識別する。そのため、セ
ルおよびその望ましい経路指定を識別するために必要な
情報は、通常のXNSまたはTCP/IPデータグラム
の場合のヘッダー情報よりもかなり少ない。ATM標準
規格作成活動やその技術的内容に興味のある人は、CC
ITT (International Telegraph and Telphone Consu
ltativeCommittee)の Study Groups XI および XVIII
およびANSI (American National Standards Insti
tute) sub-committee T1S1により公表された上記
主題の論文を参照されたい。
One of the attractions of ATM switching is that it is fairly close to becoming a standard. The basic idea of this type of network is that all communication is done by sending and exchanging small fixed size data packets called "cells". Since the overhead of each packet is reduced by using the virtual circuit technique, the header of each cell identifies the route preset by all switches between the source and destination. As such, the information needed to identify a cell and its desired routing is significantly less than the header information for a normal XNS or TCP / IP datagram. Those who are interested in the ATM standard creation activities and their technical content are CC
ITT (International Telegraph and Telphone Consu
ltative Committee) Study Groups XI and XVIII
And ANSI (American National Standards Insti
tute) sub-committee See the article on the subject published by T1S1.

【0012】明らかになりつつあるATM標準規格に従
って、セルは小さい固定サイズ(53バイト)パケット
である。そのヘッダーに宛先バーチャル回線インデック
ス(Virtual Circuit Index ;VCIと略す)として知
られる宛先アドレッシング情報が入っている。そのほか
に、バーチャルパスインデックス(Virtual Path Inde
x;VPIと略す)があるが、バーチャルパス上の交換
は本質的にバーチャル回線上の交換に等しいので、バー
チャルパスインデックスについての詳細は省略する。セ
ルが交換網に入る前に、ソースホストは、セルをそのソ
ースから宛先へ転送する「バーチャル回線(Virtual Ci
rcuit )」として知られる固定ルートを決定する。この
バーチャル回線の切り換えられた各リンク(各交換機間
リンクおよび各交換機宛先間リンク)は、交換機特定バ
ーチャル回線識別子(VCI′)によって独自に識別さ
れる。従って、1つのバーチャル回線は多数の名前を有
する。セルはバーチャル回線に沿ったどの点でも再順序
付けができないので、セルはそれらが送出された順序で
到着するはずである。
In accordance with the emerging ATM standard, cells are small fixed size (53 byte) packets. The header contains destination addressing information known as a destination virtual circuit index (abbreviated as VCI). In addition, the Virtual Path Index
x; abbreviated as VPI), but since the exchange on the virtual path is essentially equal to the exchange on the virtual circuit, details of the virtual path index are omitted. Before a cell enters the switched network, the source host transfers the cell from its source to its destination, a "Virtual Circuit".
rcuit) "to determine the fixed route. Each switched link (each inter-exchange link and each inter-exchange destination link) of this virtual circuit is uniquely identified by a switch-specific virtual circuit identifier (VCI '). Therefore, one virtual circuit has many names. Since cells cannot be reordered at any point along the virtual circuit, they should arrive in the order in which they were sent.

【0013】上記のことを心に留めて第1図を見ると、
階層型LAN21は、1つまたはそれ以上のソース3
1,32から1つまたはそれ以上の宛先33へセルたと
えばATMセル27を転送する複数の自己経路指定非ブ
ロッキング式交換機22〜25で構成されていることが
わかる。たとえば、LANの場合には、ソース31,3
2はワークステーションであってもよいし、宛先33は
ファイルサーバであってもよい。図示のように、LAN
21は2段階の階層を有するが、階層は、Metroporitan
Area Networks(MANs)や Wide Area Networks
(WANs)を含む、かなり長い経路を通してパケット
の移送および交換を行うように拡張できることは明らか
であろう。
With the above in mind, looking at FIG.
Hierarchical LAN 21 includes one or more sources 3
It can be seen that it comprises a plurality of self-routing non-blocking switches 22-25 which transfer cells, eg ATM cells 27, from 1, 32 to one or more destinations 33. For example, in the case of LAN, the sources 31, 3
2 may be a workstation and destination 33 may be a file server. LAN as shown
21 has a two-level hierarchy, the hierarchy is Metropolitan
Area Networks (MANs) and Wide Area Networks
It will be apparent that it can be extended to transport and switch packets over fairly long paths, including (WANs).

【0014】次に、図2について説明する。交換機22
〜25はそれぞれのバッチャー/バンヤン(batcher/ba
nyan) ネットワーク41によって適当に構成されてい
る。図示のように、交換機22の場合は、単一nポート
バッチャー分類ネットワーク42が、ある数k(一般
に、2または3)のバイヤン経路指定ネットワーク4
3,44へセルを提供する。バンヤン経路指定ネットワ
ーク43,44は、同一セル交換サイクルの間にどのセ
ルも紛失させずに、k個のセルを同一出力ポート番号へ
経路指定できるように接続されている。この並行処理に
適応させるため、バンヤン経路指定ネットワーク43,
44から1サイクル当たり最大k個のセルを受け入れる
ように作られた比較的大きな(数千個のセル)FIFO
バッファ45が各出力ポートに設けられている。FIF
Oバッファ45は、実時間トラヒックと「最善努力」ト
ラヒックの両方を取り扱うために、2個のFIFOバッ
ファ(図示せず)、すなわちレート制限付きすなわち予
約トラヒックのための数百個のセルから成る小さいFI
FOバッファと、未予約トラヒックのための相当大きな
FIFOバッファとで構成されていることが好ましい。
小さいFIFOバッファのサイズは、レート制限付きス
トリームの周期のほぼ2倍に制限される。問題のレート
について、これは予約トラヒックのためのFIFOバッ
ファを少なくとも 200〜300 セルのサイズにすべきこと
を意味する。厳格なレート限界によって制限されない
「バースト」トラヒックの場合は、バーチャル回線はよ
り大きなFIFOバッファ(最善努力トラヒック)で待
機させられる。決められた出力ポートをアクセス中の各
入力ポートについて少なくとも1個のフルデータグラム
分のバッファリングが存在すれば、伝送制御プロトコル
(TCP)は有効に実行することが判る。従って、N個
の全ポートが1出力へ同時にTCPパケットを送るであ
ろうNポート交換機の場合は、より大きな出力FIFO
バッファ内に約4×4Kバイト分のバッファリングが必
要である。知られているように、これらのサイズのFI
FOバッファはSRAMから簡単に作られる。
Next, FIG. 2 will be described. Switchboard 22
~ 25 is for each batcher / banyan (batcher / ba
nyan) Network 41 is appropriately configured. As shown, in the case of switch 22, a single n-port batcher classification network 42 has a number k (typically 2 or 3) of Bayan routing networks 4
Providing cells to 3,44. Banyan routing networks 43, 44 are connected such that k cells can be routed to the same output port number without losing any cells during the same cell exchange cycle. To accommodate this parallel processing, the Banyan routing network 43,
A relatively large (thousands of cells) FIFO made to accept up to k cells per cycle from 44
A buffer 45 is provided at each output port. FIF
O-buffer 45 is a small two FIFO buffer (not shown), or hundreds of cells for rate-limited or reserved traffic, to handle both real-time and "best effort" traffic. FI
It is preferably composed of a FO buffer and a fairly large FIFO buffer for unreserved traffic.
The size of the small FIFO buffer is limited to approximately twice the period of the rate limited stream. For the rate in question, this means that the FIFO buffer for reserved traffic should be at least 200-300 cells in size. For "burst" traffic that is not limited by strict rate limits, the virtual circuit is queued in a larger FIFO buffer (best effort traffic). It can be seen that the Transmission Control Protocol (TCP) effectively executes if there is at least one full datagram buffering for each input port that is accessing the determined output port. Therefore, in the case of an N-port switch, where all N ports will send TCP packets to one output simultaneously, a larger output FIFO
It is necessary to buffer about 4 × 4 Kbytes in the buffer. FI of these sizes, as is known
The FO buffer is easily created from SRAM.

【0015】理解されるように、仮に単一交換サイクル
の間にk個以上のセルを同一出力ポート番号へ送られる
ようなことがあれば、交換機は単に過剰のセルを落とす
というよりは、予想されるように実行するのに失敗する
であろう。従って、この状況は避けなければならない。
そのため、一般に認められている慣例に従って、そのよ
うな対立するセル間の競合を公平に裁くと同時に、どの
サイクルにおいても多くてもk個のセルを交換機へ与え
る予約リング46が設けられている。以下詳しく説明す
るように、この予約リング46は、短縮アレイ(systol
ic array) を作るためすべてのポートを通して配線され
た一組の回路(各ポートにつき1個の回路)で構成され
ている。
As will be appreciated, if more than k cells could be sent to the same output port number during a single switching cycle, the switch would predict rather than simply drop excess cells. Will fail to perform as done. Therefore, this situation should be avoided.
Therefore, in accordance with generally accepted practice, a reservation ring 46 is provided that imparts fairness to such conflicting cells between cells and at the same time provides at most k cells to the switch in any cycle. As will be described in more detail below, this reservation ring 46 is a shortened array (systol
It consists of a set of circuits (one circuit for each port) wired through all the ports to create an ic array).

【0016】交換網41および予約リング46の入力側
に接続されているのは、n×nコピーネットワーク48
である。コピーネットワーク48は在庫または特注のク
ロスバー交換機の構成部品を使用して作ることができ
る。すべてのセルは、スイッチヘッダー内のマルチキャ
ストビットの状態によって、二地点間セルまたはマルチ
キャストセルとして特別に標識が付けられる。理解され
るように、ATMセルを交換網41を通して経路指定
し、FIFOバッファ45において適当な出力待ち行列
に入れるために、ATMセルにスイッチヘッダーが事前
に付けられている。入ってきたマルチキャストセルは、
コピーネットワークを迂回し、交換網41に通される
が、そのとき交換網41でインタセプトされ、出力回線
へ送られずに、コピーネットワーク48へ戻される。
Connected to the input side of the switching network 41 and the reservation ring 46 is an n × n copy network 48.
Is. The copy network 48 can be made using off-the-shelf or custom crossbar switch components. All cells are specially marked as point-to-point or multicast cells depending on the state of the multicast bit in the switch header. As can be seen, the ATM cells are pre-populated with switch headers for routing the ATM cells through the switching network 41 and enqueuing the appropriate output queues in the FIFO buffer 45. The incoming multicast cell is
Although it bypasses the copy network and is passed through the switching network 41, it is intercepted by the switching network 41 at that time and returned to the copying network 48 without being sent to the output line.

【0017】詳しく述べると、マルチキャストセルのヘ
ッダー内の宛先バーチャル回線インデックス(VCI)
は、個々の宛先でなく、グループを識別する。従って、
交換ネットワーク41を通るマルチキャストセルの最初
のパスにより、セルはコピーネットワーク48の入力へ
送られる。コピーネットワーク48はセルのコピーをC
個(または、たぶんもう少し多い)作成することができ
る。ここで、Cはセルがアドレスされたグループのサイ
ズである。交換機22〜25のような階層形態の交換機
を取り扱う必要がある場合には、ある程度の複雑になる
が、この複雑さによってハードウェアが複雑になること
はない。セルのコピーがコピーネットワーク48から出
ていくとき(しかし、交換ネットワーク41に入る前
に)、事前にプログラムされたパーポートマッピング
(per-port mapping) ハードウェア(図示せず)が各コ
ピーを異なるグループ番号へアドレスする。これを実行
するために、コピーネットワーク48の各出力ポートに
ある別個のテーブルが、一般にグループ番号によってイ
ンデックスされる。前記テーブルにはグループ番号に対
する出力ポート番号が入っているので、コピーネットワ
ーク48の決められたどの入力ポートも、類似サイズの
多数のグループを扱うことができる。明らかに、上述の
コピーネットワーク48は、多数のマルチキャストグル
ープをサポートできるが、グループメンバー数の変動が
比較的にまれであるアプリケーションに最も適してい
る。
Specifically, the destination virtual circuit index (VCI) in the header of the multicast cell.
Identifies groups rather than individual destinations. Therefore,
The first pass of the multicast cell through the switching network 41 causes the cell to be routed to the input of the copy network 48. The copy network 48 makes a copy of the cell C
You can create one (or maybe more). Where C is the size of the group to which the cell is addressed. When it is necessary to handle a switch having a hierarchical structure such as the switches 22 to 25, it becomes complicated to some extent, but this complexity does not make the hardware complicated. When a copy of a cell exits the copy network 48 (but before entering the switching network 41), pre-programmed per-port mapping hardware (not shown) makes each copy different. Address to group number. To do this, a separate table at each output port of copy network 48 is typically indexed by group number. Since the table contains the output port number for the group number, any given input port of the copy network 48 can handle a large number of groups of similar size. Obviously, the copy network 48 described above can support a large number of multicast groups, but is most suitable for applications where the variation in the number of group members is relatively rare.

【0018】また、入ってくるセルと、コピーネットワ
ーク48によって与えられるセルをバッファリングする
ために、交換網41の各入力ポートにFIFOセルバッ
ファ51,52が設けられている。これらのバッファ5
1,52は、それらのセルを競合せずに交換網41を通
して経路指定することができるまで、入力ポートに届い
たセルを保持する(所望ならば、複数の優先権クラスを
サポートするために、これらのバッファ51,52の一
方または両方をサブバッファに分割することができ
る)。
FIFO cell buffers 51, 52 are also provided at each input port of the switching network 41 for buffering incoming cells and cells provided by the copy network 48. These buffers 5
1, 52 keep cells arriving at their input ports until they can be routed through switching network 41 without conflicting them (if desired, to support multiple priority classes, One or both of these buffers 51, 52 can be split into sub-buffers).

【0019】交換網41を通るセルの経路指定は、交換
機に対する入力ポートにあるVCIトランスレータ53
によって制御される。これらのトランスレータ53は、
ホストプロセッサ(図示せず)によつて維持、更新され
るVCI参照用テーブル54を使用して、入力ポートア
ドレスと、入力ポートに対する待ち行列の先頭にいるセ
ルのヘッダーに含まれている宛先バーチャル回線インデ
ックス(VCI)の樹木値関数(tree valued functio
n) を計算する。すなわち、[ VCI ′, outputPORT, mut
icastFlag] ← Routing Function [i, VCI]。理解され
るように、主として各種の経路指定テーブルやマッピン
グテーブルをVCI参照用テーブル54にロードして交
換機22を制御するために、通常のマイクロプロセッサ
または同種の装置(図示せず)に対するインタフェース
が必要である。
The routing of cells through the switching network 41 is accomplished by the VCI translator 53 at the input port to the switch.
Controlled by. These translators 53
Using the VCI lookup table 54 maintained and updated by the host processor (not shown), the input port address and destination virtual circuit contained in the header of the cell at the head of the queue for the input port. Tree valued functio of index (VCI)
Calculate n). That is, [VCI ′, outputPORT, mut
icastFlag] ← Routing Function [i, VCI]. As will be appreciated, an interface to a conventional microprocessor or similar device (not shown) is required primarily to load various routing and mapping tables into the VCI lookup table 54 to control the switch 22. Is.

【0020】III. 交換機の構成要素の詳細な説明 A.バーチャル回線トランスレータ アドレス・マッピングを実行するために交換網41の入
力ポートに設けられたトランスレータ53は、目標宛先
への経路上の交換網41から出力ポートを選択すること
(入力待ち行列の先頭にいるATMセルのヘッダー内の
宛先VCI/VPIアドレスに基づいて); 入力VC
I/VPIアドレスを出力リンクに適した値に書き直す
こと(VCI/VPIはエンドツウエンド有意性(end-
to-end significance)を持たないことを想起された
い);および後で詳しく説明するように、マルチキャス
ト伝送に必要なマッピングを管理すること、を含むいく
つかの機能を有する。これらのトランスレータ53は、
さらに、たとえば請求書作成やロード監視のために、バ
ーチャル回線ごとに交換されるATMセルの数のカウン
トを保持することができる。図3は、典型的なATMセ
ルの書式を示し、図4はATMセルの典型的なスイッチ
ヘッダーの書式を示す。セルヘッダー内の広域フローコ
ントロール(GFC)フィールドは通常はNULL値が
入ることに留意されたい。
III. Detailed Description of the Components of the Switch A. A translator 53 provided at the input port of switching network 41 to perform virtual circuit translator address mapping selects an output port from switching network 41 on the route to the target destination (at the head of the input queue). Based on the destination VCI / VPI address in the header of the ATM cell); input VC
Rewrite the I / VPI address to a value suitable for the output link (VCI / VPI is end-to-end significance (end-
It has no to-end significance); and, as will be explained in more detail below, managing the mapping required for multicast transmission. These translators 53
In addition, a count of the number of ATM cells exchanged per virtual circuit can be maintained for billing and load monitoring, for example. FIG. 3 shows a typical ATM cell format, and FIG. 4 shows a typical switch header format for an ATM cell. Note that the Global Flow Control (GFC) field in the cell header usually contains a NULL value.

【0021】B.バッチャー/バンヤン(Batcher/Bany
an) ネットワーク 交換網は、どの交換サイクルにおいてもその入力の任意
順列(arbitrary permutaton) または部分順列(partia
l permutation)を生成することができる場合には、「非
ブロッキング」であると呼ばれる。言い換えると、非ブ
ロッキング式交換機は、考えられるすべての1対1入力
/出力マッピングを生成することができる。
B. Batcher / Bany
an) Network A switching network is an arbitrary permutaton or partial permutaton of its inputs in every switching cycle.
l permutation), it is said to be "non-blocking". In other words, the non-blocking switch can generate all possible 1: 1 input / output mappings.

【0022】交換網は、一般に単一交換機のカスケード
ネットワークすなわちステージで構成される。このよう
な交換網を通る経路は、決められた入力から決められた
出力へ交換機のステージを通る通路である。交換網は、
交換網内の各ステージごとに、そのステージに入ってく
るセルに含まれる情報すなわち局部的に入手可能な情報
だけで経路指定を決定することができる場合には、「自
己経路指定」と分類される。
Switching networks are generally made up of cascaded networks or stages of single switches. The path through such a switching network is the path through the stages of the switch from a defined input to a defined output. The exchange network is
For each stage in the switching network, if the routing can be determined only by the information contained in the cells entering that stage, i.e. locally available information, it is classified as "self-routing". It

【0023】バッチャー/バンヤンネットワークは、非
ブロッキング自己経路指定式交換網の知られた例であ
る。知られているように、バッチャーネットワークは、
一般に深さ log2 N(これはNlog2N個の分類要素が必
要であることを意味する)のネットワークでN個のデー
タストリームを分類する並行分類ネットワークである。
図5に示すように、各分類要素62は、2つの入力(A
およびB)を受け取り、最小値と最大値を計算すること
によって入力を分類する。従って、もし入力が始めに最
上位ビットを有する2ビット直列データストリームの形
をしていれば、分類要素は、図6に示した非常に簡単な
有限状態マシン(finite state machine)64として機
能する。4つの入力、8つの入力、それ以上の入力につ
いては、通例、これらの分類要素62を再帰的に組み合
わせて分類ネットワーク65すなわちソーターが作られ
る(図7参照)。
The Batcher / Banyan network is a known example of a non-blocking self-routing switching network. As is known, the Batcher Network
Generally depth log 2 N (which means that the need for Nlog 2 N pieces of classification elements) is parallel sorting network for classifying the N data streams in the network.
As shown in FIG. 5, each classification element 62 has two inputs (A
And B) and classify the inputs by calculating the minimum and maximum values. Therefore, if the input is initially in the form of a 2-bit serial data stream with the most significant bit, the classification element functions as the very simple finite state machine 64 shown in FIG. . For four inputs, eight inputs, and more, these classification elements 62 are typically recursively combined to form a classification network 65 or sorter (see FIG. 7).

【0024】図8に示すように、標準バンヤン経路指定
ネットワーク71は深さ log2 Nの複数ステージのネッ
トワークである。ここで、Nはネットワークへの入力数
である。バンヤン経路指定ネットワーク71は、バッチ
ャー分類ネットワーク65と同様に、2つの入力と2つ
の出力を有する基本交換要素72を再帰的に組み合わせ
て構成される。従って、バンヤンネットワーク71に
は、O(Nlog2N)個の基本交換要素72がある。デー
タシーケンスがバンヤンネットワーク71を通って流れ
るとき、バンヤンネットワーク71の各ステージにある
基本要素72は、出力アドレスの1ビットを調べ、その
ビットの値に従って、そのデータシーケンス内のそのビ
ットおよび後続のすべてのビットを一方または他方の出
力へ経路指定する。慣例に従って、アドレスビットは各
ステージごとに変わるので、第1ステージは最上位アド
レスビットの値に基づいて経路指定を行い、第2ステー
ジは第2の上位アドレスビットの値に基づいて経路指定
を行い、N番目のステージは最下位アドレスビットの値
に基づいて経路指定を行う。N個のアドレスビットが処
理された後、シーケンスの残りの部分は交換機の出力へ
設定された経路をたどる。これは、あるシーケンスの終
端と次のシーケンスの始端を外部因子によって決定する
必要があることを意味する。従って、この例の場合、各
シーケンスは固定サイズATMセル+その固定サイズス
イッチヘッダーであることを想起されたい。
As shown in FIG. 8, the standard Banyan routing network 71 is a multi-stage network of depth log 2 N. Here, N is the number of inputs to the network. The Banyan routing network 71, like the Batcher classification network 65, is constructed by recursively combining basic switching elements 72 having two inputs and two outputs. Therefore, the Banyan network 71 has O (Nlog 2 N) basic switching elements 72. As the data sequence flows through the Banyan network 71, the primitive 72 at each stage of the Banyan network 71 examines one bit of the output address and, according to the value of that bit, that bit and all subsequent bits in the data sequence. The bits of to one or the other output. By convention, the address bits change from stage to stage, so the first stage routes based on the value of the most significant address bits and the second stage routes based on the value of the second higher address bits. , Nth stage routes based on the value of the least significant address bit. After the N address bits have been processed, the rest of the sequence follows the established path to the switch output. This means that the end of one sequence and the start of the next sequence must be determined by external factors. Thus, in this example, recall that each sequence is a fixed size ATM cell + its fixed size switch header.

【0025】バンヤンネットワーク71のどのステージ
においても、2つの入力が同一出力を選択する可能性が
ある。もしそれが起きれば、バンヤンネットワーク71
は、「ブロックする」ので、不確定な結果が生じる。言
い換えると、バンヤンネットワーク71はその入力の任
意順列を計算することができない。しかし、バンヤンネ
ットワーク71は「非ブロッキング」であるから、順列
のクラスが存在する。これらのクラスの1つは、入力が
出力アドレスによって順序付けられるクラスである。こ
のため、非ブロッキング自己経路指定である交換網41
を得るために、図2に示すように、バッチャー分類ネッ
トワーク42はバンヤン経路指定ネットワーク43,4
4の前にある。
At any stage of the Banyan network 71, two inputs may select the same output. If that happens, Banyan Network 71
"Blocks", resulting in indeterminate results. In other words, Banyan network 71 is unable to compute an arbitrary permutation of its inputs. However, since the Banyan network 71 is "non-blocking", there is a permutation class. One of these classes is the class whose inputs are ordered by output address. Therefore, switching network 41 that is non-blocking self-routing
2, the batcher classification network 42 is a banyan routing network 43, 4 as shown in FIG.
In front of 4.

【0026】図2に示すように、複数のバンヤン経路指
定ネットワーク43,44(一般に、2または3個)を
使用して、出力競合(output contention)を減らすこと
が好ましい。たとえば、図示した実施例の場合は、k=
2のスピードアップ率を得るために、バッチャー分類ネ
ットワーク42の後方に2個のバンヤン経路指定ネット
ワーク43,44が存在する。各バンヤン経路指定ネッ
トワーク43,44は入力の1/kのみを使用するの
で、他の入力はふさがれる。バッチャー分類ネットワー
ク42のk番目の出力がバンヤン経路指定ネットワーク
43または44のk番目の入力に接続されるように、バ
ッチャー分類ネットワーク42の出力はバンヤン経路指
定ネットワーク43,44の入力に接続されている(こ
れは、図示のように、バンヤン経路指定ネットワーク4
3,44がバッチャー分類ネットワーク42の奇数およ
び偶数番号の出力をそれぞれ経路指定することを意味す
る)。従って、同一出力ポートへアドレスされたk個ま
での個別セルがバッチャー分類ネットワーク42の連続
するk個の出力に現れることができる。それらの個別セ
ルは、そのあとk個の別個のバンヤン経路指定ネットワ
ーク43,44を通して交換網41の目標出力ポートへ
経路指定することがきる。
As shown in FIG. 2, multiple Banyan routing networks 43, 44 (typically 2 or 3) are preferably used to reduce output contention. For example, in the illustrated embodiment, k =
There are two Banyan routing networks 43, 44 behind the batcher classification network 42 to obtain a speedup rate of 2. Since each Banyan routing network 43, 44 uses only 1 / k of the inputs, the other inputs are blocked. The output of the Batcher classification network 42 is connected to the input of the Banyan routing network 43, 44 so that the kth output of the Batcher classification network 42 is connected to the kth input of the Banyan routing network 43 or 44. (This is as shown in the Banyan Routing Network 4
3 and 44 respectively route the odd and even numbered outputs of the batcher classification network 42). Thus, up to k individual cells addressed to the same output port can appear on successive k outputs of batcher classification network 42. The individual cells can then be routed to the target output port of switching network 41 through k separate Banyan routing networks 43,44.

【0027】C.予約リング 予約リング46(図2参照)は、単一出力へ宛てられた
セルの数がk以上のとき交換網41の出力ポートに対す
る「公正」なアクセスを実施する仲裁者(アービタ)で
ある。「公正」については多くの異なる定義がなされて
いるが、交換網41の競合中の入力ポートに対し総当た
り(ラウンドロビン)サービスを提供する仲裁者が好ま
れる。
C. Reservation Ring The reservation ring 46 (see FIG. 2) is an arbitrator (arbiter) that implements "fair" access to the output ports of the switching network 41 when the number of cells addressed to a single output is greater than or equal to k. Although many different definitions of "fairness" have been made, arbitrators who provide brute force (round robin) service to competing input ports of switching network 41 are preferred.

【0028】詳しく説明すると、予約リング46は、Ar
turo Cisneros, "Large Packet Switch and contention
Resolution Device," Proc.XII International Switch
ingSymposium,Stockholm,Sweden, May/June,1990. V3,
pp.77-83 の公表論文の教示に従って、それぞれが隣接
マシンとだけ通信する有限状態マシン76a,76
b,...76i,76(i+1)の線型短縮アレイ7
5(図9)として具体化される。線型短縮アレイたとえ
ばアレイ75を使用することの特にすぐれた利点は、す
べての通信がローカルであり、電気的負荷がアレイのサ
イズと共に増さないことである。このことがシステムの
線形スケーリングを可能にする。
More specifically, the reservation ring 46 is made of Ar.
turo Cisneros, "Large Packet Switch and contention
Resolution Device, "Proc.XII International Switch
ingSymposium, Stockholm, Sweden, May / June, 1990. V3,
In accordance with the teaching of the published paper of pp.77-83, each of the finite state machines 76a, 76 communicates only with its neighbors.
b ,. . . 76i, 76 (i + 1) linear shortening array 7
5 (FIG. 9). A particular advantage of using a linear shortened array, such as array 75, is that all communications are local and the electrical load does not increase with array size. This allows linear scaling of the system.

【0029】上記論文の予約リング機構を修正すること
により、複数の経路指定ネットワーク43,44(すな
わち、k≧2のネットワーク)を有する交換網たとえば
交換網41に対する公正な総当たり競合解決策が得られ
ることが判った。作動中、有限状態マシン76a〜76
nは、交換網41の入力ポートに対応付けられた一組の
空間固定評価要素(spatially fixed evaluation eleme
nts)として機能し、これらの有限状態マシンすなわち評
価子76a〜76nを環状に通過するように状態情報の
ベクトルがシフトされる。これを実行するために、各評
価子76a〜76nは、内部アドレスレジスタRAi
外部シフト済アドレスレジスタSAi 、競合フラグビッ
トのための内部単一ビットレジスタFCi 、競合要求フ
ラグのための第2の内部単一ビットレジスタRCi 、ペ
ンディング競合要求フラグのための第3の内部単一ビッ
トレジスタFi 、シフト済競合フラグのための外部レジ
スタSCi 、走査ベクトルのための単一ビットレジスタ
i 、および内部(k−1)ビット log2 k mod k カ
ウンタCntri を備えている。さらに、各評価子76a〜
76nをアクティブ(InSession =0) 状態と非アクテ
ィブ(InSession =1) 状態の間で切り換えるための手
段が設けられている。
By modifying the reservation ring mechanism of the above paper, a fair brute force conflict solution for switching networks, eg switching network 41, with multiple routing networks 43, 44 (ie networks with k ≧ 2) is obtained. I found out that During operation, finite state machines 76a-76
n is a set of spatially fixed evaluation elements associated with the input ports of the switching network 41.
nts), and the vector of state information is shifted so as to pass through these finite state machines, that is, the evaluators 76a to 76n in a ring shape. To do this, each evaluator 76a~76n internal address register RA i,
External shifted address register SA i , internal single-bit register FC i for conflict flag bits, second internal single-bit register RC i for conflict request flags, third internal for pending conflict request flags With a single bit register F i , an external register SC i for the shifted contention flag, a single bit register T i for the scan vector, and an internal (k-1) bit log 2 k mod k counter Cntr i There is. Furthermore, each evaluator 76a-
Means are provided for switching 76n between the active (InSession = 0) and inactive (InSession = 1) states.

【0030】システムリセット時間に、すべての評価子
76a〜76nがリセットされ、その結果それらのアド
レスレジスタRAi ,SAi がクリヤされ、それらのカ
ウンタCntri と、フラグビットおよび状態RCi ,SC
i ,FCi ,Fi ,Ti および InSessioni が“0”す
なわち「偽」へセットされる。各仲裁サイクルの始め
に、評価子76a〜76nが交換網41の入力ポートに
対する入力待ち行列の先頭にいるアクティブセルを走査
し、これらのセルがアドレスされる出力ポートのアドレ
スを、内部アドレスレジスタRAi と外部アドレスレジ
スタSAi にロードする。もし入力ポートが非アクティ
ブであれば(すなわち、もしその入力待ち行列が空であ
れば)、評価子は非アクティブ状態(InSession =0、
i =0)へ切り換えられる。この初期化手順が終わっ
た後、一連の少なくとも(n−1)のシフトおよび比較
ステップが開始され、それによりアドレス値SAi と競
合フラグビットSCがリング内でシフトされる(すなわ
ち、ポートiの評価子におけるそれらの変数の値がポー
トi+1における評価子へシフトし、最後のポートの評
価子における変数の値が0番目のポートの評価子へシフ
トする)。Ti はシフトダウンするが、ポート0のT入
力は“1”のままである。
At system reset time, all evaluators 76a-76n are reset, resulting in the clearing of their address registers RA i , SA i , their counter Cntr i and their flag bits and states RC i , SC.
i , FC i , F i , T i and InSession i are set to “0” or “false”. At the beginning of each arbitration cycle, the evaluators 76a-76n scan the active cells at the head of the input queue for the input ports of the switching network 41, and the addresses of the output ports to which these cells are addressed are stored in the internal address register RA. i and the external address register SA i . If the input port is inactive (ie its input queue is empty), the evaluator is in the inactive state (InSession = 0,
T i = 0). After this initialization procedure is finished, a series of at least (n-1) shift and compare steps are started, which shift the address value SA i and the conflict flag bit SC in the ring (ie port i). The values of those variables in the evaluator shift to the evaluator at port i + 1 and the values of the variables in the evaluator at the last port shift to the evaluator at the 0th port). T i is shifted down but, T input of port 0 remains "1".

【0031】各シフトの後、アドレスレジスタRAi
SAi の内容が各評価子によって比較される。もしアク
ティブ評価子においてそれらが同一であると判れば、そ
の評価子は、その要求された競合フラグRCi とシフト
された競合フラグSCi とが同じ値にセットされている
かどうかを判断することによって、その同一性が正当な
仲裁セッションに由来するものかどうかを判断する。
After each shift, the address registers RA i ,
The contents of SA i are compared by each evaluator. If, in the active evaluator, they are found to be identical, the evaluator determines whether the requested conflict flag RC i and the shifted conflict flag SC i are set to the same value. , Determine whether the identity comes from a legitimate arbitration session.

【0032】もし評価子が正当な仲裁セッションの参加
者であれば、評価子は競合ベクトルTi の現在状態を検
査する。もしTi が依然として偽(“0”)であれば、
i番目の評価子は、交換網41のi番目の入力ポートに
あるアクティブセルと、その上の一定の入力ポートにあ
るアクティブセルとが同一出力ポートに対するアクセス
を争っていると判断する。どの交換サイクルにおいて
も、交換網41の同一出力ポートに対しk個までのセル
(しかし、k個のセルに過ぎない)を交換することがで
きるので、i番目の評価子は、交換網41内のそれより
上のどこかのポートと競合していることを発見すると、
カウンタCntri を単に増分する。しかし、もしカウンタ
Cntri がオーバーフローする前にi番目の評価子が真
(“1”)の競合ベクトル値Ti を受け取れば、i番目
の評価子は、カウンタCntri 内の現在カウント+同意信
号を入力バッファへ戻すことによって、交換網41のi
番目の入力ポートに対する入力待ち行列の先頭にいるセ
ルを解放し、要求された出力ポートへ切り換える。他
方、もし真(“1”)の競合ベクトル値Ti を受け取る
前にカウンタCntri がオーバーフローすれば、i番目の
評価子において競合フラグビットFCi とペンディング
競合フラグFi が真(“1”)状態へセットされ、要求
されたときすべての競合者に対し交換網41の要求され
た出力ポートに対するアクセスを総当たりトップダウン
順に許可するため、1つまたはそれ以上の追加交換サイ
クルの間競合セッションが延長される。
If the evaluator is a legitimate arbitration session participant, the evaluator examines the current state of the conflict vector T i . If T i is still false (“0”),
The i-th evaluator determines that the active cell at the i-th input port of the switching network 41 and the active cell at a certain input port above it compete for access to the same output port. In any switching cycle, up to k cells (but only k cells) can be switched to the same output port of switching network 41, so the i-th evaluator is in switching network 41. Discovering that it is conflicting with a port somewhere above that,
It simply increments the counter Cntr i . But if the counter
If the i-th evaluator receives a true (“1”) contention vector value T i before Cntr i overflows, the i-th evaluator sends the current count in the counter Cntr i + acknowledge signal to the input buffer. By returning, i of the switching network 41
Release the cell at the head of the input queue for the second input port and switch to the requested output port. On the other hand, if the counter Cntr i overflows before receiving the true (“1”) conflict vector value T i , the conflict flag bit FC i and the pending conflict flag F i are true (“1”) in the i-th evaluator. ) Set to the state, to allow all competitors access to the requested output ports of switching network 41 in a brute force top-down order when requested, for one or more additional switching cycles. Is extended.

【0033】D.代替仲裁処理 本発明は、k個のバンヤン経路指定ネットワーク43,
44(図2)の出力ポートへの「公正な」アクセスを行
うもう1つの短縮アレイ手法(k≧2)を提供するた
め、前述の Cisneros の原理から基本的にかなり逸脱し
ている。図10に、この手法を略図で示す。この実施に
おいて、各評価子78a〜78nは以下のように機能す
る。 Initialize for arbitration: counter:=0; Grant:=0; Arbitration step: lostLastTime-Out:=lostLastTime-In; resVec-Out:=resVec-In; lostThisTime-Out:=lostThisTime-In; IF couter = portRequested THEN { IF lostLastTime-In=0 OR ISetLostLastTime THEN { IF resVec-In=0 THEN { Grant:=1; ISetLostLastTime:=0 resVec-Out:=1; lostThisTime-Out:=0; }ELSE{ lostThisTime-Out :=1; ISetLostLastTime :=NOT lostThisTime-In; }; }; };
D. Alternative Arbitration Process The present invention provides k Banyan routing networks 43,
It is essentially a departure from the Cisneros principle described above in order to provide another shortened array approach (k ≧ 2) with “fair” access to the 44 (FIG. 2) output ports. FIG. 10 schematically shows this technique. In this implementation, each evaluator 78a-78n functions as follows. Initialize for arbitration: counter: = 0; Grant: = 0; Arbitration step: lostLastTime-Out: = lostLastTime-In; resVec-Out: = resVec-In; lostThisTime-Out: = lostThisTime-In; IF couter = portRequested THEN { IF lostLastTime-In = 0 OR ISetLostLastTime THEN {IF resVec-In = 0 THEN {Grant: = 1; ISetLostLastTime: = 0 resVec-Out: = 1; lostThisTime-Out: = 0;} ELSE {lostThisTime-Out: = 1 ISetLostLastTime: = NOT lostThisTime-In;};};};

【0034】予約リング46のこの具体化において、第
1評価子78a(図示せず)は、“0”に拘束された r
esVec 入力と、予約リングの最後の要素の lostThisTim
e 出力に拘束された lostLastTime 入力を有することに
注目されたい。 resVec 入力を通してシフトされるビッ
トのストリームはベクトルを表しており、その要素は対
応する出力ポートの予約である。もし決められた出力ポ
ートに対し1以上の要求者が存在すれば、アクセスする
のに失敗した第1要求者がその対応付けられた“ ISetL
ostLastTime ”ビットを設定するので、リングの動作は
総当たり戦(ラウンドロビンフェア)である。仲裁サイ
クルが終了したとき、設定された“ ISetLostLastTime
”ビットをもつ多くの予約リング要素が存在すること
があるが、それらの各ビットは異なる出力ポートを指示
する。
In this implementation of reservation ring 46, first evaluator 78a (not shown) has r bound to "0".
esVec input and lostThisTim on the last element of the reservation ring
Note that we have the lostLastTime input constrained to the e output. The stream of bits shifted through the resVec input represents a vector whose elements are the reservations of the corresponding output port. If there is more than one requester for a given output port, the first requestor who fails to access it has its associated "ISetL
Since the "ostLastTime" bit is set, the behavior of the ring is a round robin fair. When the arbitration cycle ends, the "ISetLostLastTime" set
There may be many reserved ring elements with "bits", but each of those bits points to a different output port.

【0035】理解されるように、図10のこの予約リン
グ機構は、1交換サイクルの間に複数の入力ポートに同
一出力ポートにアクセスすることを許すケースを扱える
ように拡張することができる。これは、予約ベクトル r
esVec をkビット幅にすることによって達成される。こ
こで、kは、1交換サイクル中に単一出力ポートへ送る
ことができる入力ポートの数である。そのとき、予約リ
ングは以下のように動作する。 Initialize for arbitration: counter:=0; Grant:=0; Arbitration step: lostLastTime-Out:=lostLastTime-In; resVec-Out:=resVec-In; lostThisTime-Out:=lostThisTime-In; IF couter = portRequested THEN { IF lostLastTime-In=0 OR ISetLostLastTime THEN { IF resVec-In NEQ“ all ones ”=0 THEN { Grant:=1; ISetLostLastTime:=0 resVec-Out[firstZero[resVec-In]]: =1; lostThisTime-Out:=0; }ELSE{ lostThisTime-Out :=1; ISetLostLastTime :=NOT lostThisTime-In; }; }; };
As will be appreciated, this reservation ring mechanism of FIG. 10 can be extended to handle the case of allowing multiple input ports to access the same output port during one exchange cycle. This is the reservation vector r
This is accomplished by making esVec k bits wide. Where k is the number of input ports that can be sent to a single output port during one exchange cycle. At that time, the reservation ring operates as follows. Initialize for arbitration: counter: = 0; Grant: = 0; Arbitration step: lostLastTime-Out: = lostLastTime-In; resVec-Out: = resVec-In; lostThisTime-Out: = lostThisTime-In; IF couter = portRequested THEN { IF lostLastTime-In = 0 OR ISetLostLastTime THEN {IF resVec-In NEQ “all ones” = 0 THEN {Grant: = 1; ISetLostLastTime: = 0 resVec-Out [firstZero [resVec-In]]: = 1; lostThisTime-Out : = 0;} ELSE {lostThisTime-Out: = 1; ISetLostLastTime: = NOT lostThisTime-In;};};};

【0036】図10に示した形式のより大きな予約リン
グを2つ(またはそれ以上)のセクションに分割するこ
とが望ましいことがある。2つのリングの予約ベクトル
もやはりkビット幅である。しかし、第1セクションに
ついてはkビットの一部が“1”に初期化され、他方の
第2セクションについては対応するビットが“0”に初
期化される。残りのビットはトップが“0”に、そして
ボトムが“1”に初期化される。ロードは入力にわたっ
て均一に分散していると仮定すると、交換機は、近似的
に、あたかも唯一の予約リングが存在しているかのよう
に機能するが、2つのリングはある単一リングのクロッ
ク周波数の1/2で実行することができる。
It may be desirable to divide a larger reservation ring of the type shown in FIG. 10 into two (or more) sections. The reservation vectors for the two rings are also k bits wide. However, for the first section some of the k bits are initialized to "1" and for the other second section the corresponding bits are initialized to "0". The remaining bits are initialized to "0" at the top and "1" at the bottom. Assuming that the load is evenly distributed across the inputs, the switch acts approximately as if there were only one reserved ring, but the two rings are of a single ring clock frequency. It can be run in half.

【0037】もしトラヒックが分割された2つの半リン
グにわたって一様に分布していなければ、予約ベクトル
に対するビットの初期設定を変更することにより、どれ
か決められた出力ポートに対する帯域幅を2つの半リン
グの間でやりとりすることができる。予約リングの各半
分のトラヒックを計算する方法は、以下の2つがある
が、それらに限定されない。 1) 予約リングの各半分の最も下すなわち最後の評価
子の出力で、“1”に設定された“lostThisTime”ビッ
トの数をカウントする。 2) 予約リング要素を通してシフトされるデータスト
リームにカウンタのベクトルを加えて、各紛失(losin
g) 評価子に目標の出力ポートに対応付けられたカウン
タを増分させる。次に、最後の評価子から出るときこれ
らのカウンタの合計を求め、もしこの合計が所定のしき
い値以上であれば、分割された予約リングの間で帯域幅
を移す。
If the traffic is not evenly distributed over the two split half-rings, the bandwidth for any given output port can be reduced to two half by changing the bit initialization for the reservation vector. You can interact between the rings. There are two methods for calculating the traffic of each half of the reservation ring, but not limited to the following two methods. 1) Count the number of "lostThisTime" bits set to "1" at the output of the bottom or last evaluator of each half of the reservation ring. 2) Adding a vector of counters to the data stream that is shifted through the reserved ring element, so that each lost
g) Have the evaluator increment the counter associated with the target output port. Then, upon exiting the last evaluator, the sum of these counters is determined, and if this sum is above a predetermined threshold, the bandwidth is transferred between the split reservation rings.

【0038】E.コピーネットワーク 図2のN×Nコピーネットワーク48は、1交換サイク
ルごとにj個までのATM入力セルIj (j≦N)を受
け取り、各セルの正確なコピーをCj 個作成する。各C
j 個のコピーはコピーグループと呼ばれる。理解される
ように、セルの複写は、「マルチキャスト操作」として
知られる操作における重要なステップである。
E. Copy Network The N × N copy network 48 of FIG. 2 receives up to j ATM input cells I j (j ≦ N) per exchange cycle and makes C j exact copies of each cell. Each C
The j copies are called a copy group. As will be appreciated, cell duplication is an important step in what is known as "multicast operation".

【0039】コピーネットワーク48に対する手法の根
底には、交換網41の使用に関する実行可能な3つの仮
定がある。第1は、各jごとに、Cj が非常にゆっくり
変わることである。第2は、すべてのコピーグループサ
イズの合計が≦Nであることである。第3は、Cj がj
のみの関数であることである。まとめると、これらの条
件は、各コピーグループによって作成されるコピーの数
が非常にゆっくり変わることを意味し、それはコピーグ
ループのメンバー数がセルの内容の関数でないことを意
味する。従って、静的ルーチング戦略によってどんなコ
ピーグループについてもjの特定値を選択することがで
きるので、コピーネットワーク48の1個の入力とCj
個の出力が各コピーグループに専用される。
Underlying the approach to the copy network 48 are three viable assumptions about the use of the switching network 41. The first is that for each j, C j changes very slowly. Second, the sum of all copy group sizes is ≤N. Thirdly , C j is j
It is only a function. Collectively, these conditions mean that the number of copies made by each copy group varies very slowly, which means that the number of members of the copy group is not a function of the cell contents. Therefore, a static routing strategy can select a particular value of j for any copy group, so that one input of copy network 48 and C j.
Outputs are dedicated to each copy group.

【0040】標準クロスバー交換機の場合には、N個の
各入力はN個の各出力へ扇形に広がっている。これは、
1個の入力と複数個の出力の部分集合とを接続している
クロスポイントを「ON」にすれば、その入力がこれら
すべての出力へコピーされることを意味する。概念的
に、コピーネットワーク48は、コピーグループに対す
る入力として使用されるj個の入力、使用されない(N
−j)入力、および使用されるΣCj 個の出力を有する
N×Nクロスバーで構成される。しかし、実際問題とし
て、通常は、全クロスバーは必要ない。このことは、大
きなクロスバーはチップが高価であるばかりでなく、難
しいシステム実装問題を引き起こすので、幸運である。
In the case of a standard crossbar switch, each of the N inputs fan out to each of the N outputs. this is,
Turning on a crosspoint connecting one input to a subset of multiple outputs means that the input is copied to all these outputs. Conceptually, the copy network 48 has j inputs that are used as inputs to the copy group, not used (N
-J) consists of an input and an NxN crossbar with ΣC j outputs used. However, as a practical matter, usually not all crossbars are needed. This is fortunate, as a large crossbar not only makes the chip expensive, but also causes difficult system implementation problems.

【0041】幸運なことに、図2に示すように、コピー
ネットワーク48の最も普通の使用が小コピーグループ
であるアプリケーションには、代りの案を用いることが
できる。すなわち、コピーグループとして必要な数のセ
ルコピーCj を作成するためにマルチノードスパントリ
ー(multi-node spanning tree) が必要なときは、交換
網41自身を使用して、コピーネットワーク48の複数
の「バーチャル回線層」を相互接続することが可能であ
る。コピーネットワーク48のこの好ましい実施例は、
2種類の基板(交換網41と、それぞれがp個の回線ご
とに完全な論理を有するN/p個の同一回線カード)を
使用して具体化することができるので、自然なシステム
実装を用いることと両立する。図2に示すように、回線
カードの論理は、(そのp個の回線ごとに)入力リンク
84と出力リンク85、VCIトランスレータ53、予
約リング評価子(図9および図10参照)、すべての入
力および出力バッファリング、およびp×pクロスバー
86を有する。このようなコピーネットワーク48を使
用するときは、pより大きなグループ(ここでは、p=
8)へのマルチキャスト(multicast)または同報通信(b
roadcast) は、前記グループへマルチキャストすること
によって処理されるので、セルは交換網41を通る3つ
の旅をする。
Fortunately, as shown in FIG. 2, an alternative scheme can be used for applications where the most common use of copy network 48 is small copy groups. That is, when a multi-node spanning tree is required to create the required number of cell copies C j as a copy group, the switching network 41 itself is used to create a plurality of copy networks 48. It is possible to interconnect "virtual circuit layers". This preferred embodiment of copy network 48 is
A natural system implementation is used because it can be embodied using two types of boards (switch network 41 and N / p identical line cards, each with complete logic for every p lines). Compatible with that. As shown in FIG. 2, the logic of the line card is (for each of its p lines) an input link 84 and an output link 85, a VCI translator 53, a reservation ring evaluator (see FIGS. 9 and 10), and all inputs. And output buffering, and a pxp crossbar 86. When using such a copy network 48, groups larger than p (here, p =
8) multicast or broadcast (b
roadcast) is handled by multicasting to the group, so that the cell makes three trips through the switching network 41.

【0042】F.入力および出力バッファリング−待ち
行列戦略− 交換網41は、共用待ち行列でなく、分散形待ち行列
(各入力回線および出力回線ごとの1つまたはそれ以上
の専用待ち行列)を使用する。知られているように、共
用待ち行列は、すべての回線にわたってバッファ空間を
動的再配置するのに役に立つ、すなわちバッファメモリ
をより効率的に使用するのに役に立つ手法である。しか
し、この場合はバッファの利用を最適にするよりも設計
の単純さのほうが重要であるので、交換機に公正なサー
ビス訓練を課すと同時に、入力回線と出力回線を互いに
分離するための手段が設けられている。従って、もし数
個の入力がトラヒックを運ぶ出力の能力をかなり越える
レートで伝送すれば、セルは入力回線のためのバッファ
またはその特定出力のためのバッファのどちらかにおい
て交換機によって失われるであろう。
F. Input and Output Buffering-Queuing Strategy-Switching network 41 uses distributed queues (one or more dedicated queues for each input and output line) rather than shared queues. As is known, shared queues are a useful technique for dynamically reallocating buffer space across all lines, ie, for more efficient use of buffer memory. However, in this case the simplicity of the design is more important than optimizing the utilization of the buffers, so that the exchanges should be given fair service training while at the same time providing a means to separate the input and output lines from each other. Has been. Thus, if several inputs transmit at a rate that far exceeds the output's ability to carry traffic, cells will be lost by the switch either in the buffer for the input line or in the buffer for that particular output. .

【0043】LAN21(図1)は、簡単なフロー制御
機構を適切に使用して、保証トラフィックロードを制限
する。詳しく述べると、LANのサービスを受けるソー
ス31,32などのワークステーション、その他のコン
ピュータのネットワークインタフェースのハードウェア
/ソフトウェア(図示せず)に依存して、保証トラヒッ
クのレートを制限する。慣例に従って、事前に資源予約
を行った保証トラヒックストリームを指示するために、
VCI参照用テーブル内の resTraf ビット(スイッチ
ヘッダーへコピーされる)が使用される。従って、交換
機22〜25のそれぞれの入力ポートごとに、少なくと
も2つの入力待ち行列(保証トラヒック用と非保証トラ
ヒック用)が存在する。もし非保証トラヒック用待ち行
列が一杯であれば、非保証セルは待ち行列に入れない。
The LAN 21 (FIG. 1) suitably uses simple flow control mechanisms to limit guaranteed traffic load. In particular, it limits the rate of guaranteed traffic depending on the network interface hardware / software (not shown) of the workstations, such as sources 31, 32, and other computers that are serviced by the LAN. By convention, to indicate a guaranteed traffic stream with pre-reserved resources,
The resTraf bit in the VCI lookup table (copied to the switch header) is used. Therefore, there is at least two input queues (one for guaranteed traffic and one for non-guaranteed traffic) for each input port of switches 22-25. If the non-guaranteed traffic queue is full, then non-guaranteed cells cannot be queued.

【0044】IV. システム操作 A.ユニキャスト(unicast) ユニキャスト(単数宛)伝送は、所定のバーチャル回線
アドレス(VCI)によって定義されるように、複数の
ソースから指定された単一宛先へのセルの通常の経路指
定である。任意の決められた交換機たとえば図2の交換
機22において、交換網41の1つの入力ポートのため
の入力リンク84にセルが到着すると、ユニキャスト操
作が始まる。入力リンク84内の論理(図示せず)はセ
ルヘッダーのVCIフィールドを検査し、非零値が入っ
ていること(すなわち、セルが空でないこと)を確かめ
る。もしセルがこの試験をパスすれば、決められた入力
ポートに対する入力バッファ51の状態を検査し、セル
を受け入れることができるか否かを決定する。この受入
れ/拒絶決定を行う場合は、セルのヘッダー内のセル紛
失優先権(cell loss priority; 略してCLP )ビット
の状態を考慮に入れることが好ましい。たとえば、
(1)バッファ51が一杯でなく、CLPビットがリセ
ットされた場合、あるいは(2)バッファ51が全体の
半分ほどふさがっている場合だけ、セルは入力バッファ
51へシフトされる。
IV. System Operation A. Unicast Unicast transmission is the normal routing of cells from multiple sources to a specified single destination, as defined by a given virtual circuit address (VCI). In any given switch, such as switch 22 of FIG. 2, a unicast operation begins when a cell arrives at input link 84 for one input port of switching network 41. Logic (not shown) in the input link 84 examines the VCI field of the cell header to make sure it contains a non-zero value (ie, the cell is not empty). If the cell passes this test, the state of the input buffer 51 for the determined input port is checked to determine if it can accept the cell. When making this acceptance / rejection decision, it is preferable to take into account the state of the cell loss priority (CLP) bit in the header of the cell. For example,
A cell is shifted into the input buffer 51 only if (1) the buffer 51 is not full and the CLP bit is reset, or (2) the buffer 51 is half full.

【0045】交換網41の各入力ポートにあるバーチャ
ル回線トランスレータ53は、入力バッファ51とクロ
スバーバッファ52の両方からセルを取り出す。優先権
はクロスバーバッファ52に与えられる。理解されるよ
うに、トランスレータ53は、出力競合のために予約リ
ング46にブロックされたセルが存在しない場合だけア
クティブである。上記のブロッキング状態が存在しない
場合は、各交換サイクルの始めに、2個の入力FIFO
バッファ51,52が検査され、クロスバーバッファ5
2(第1の選択)または入力バッファ51(第2の選
択)の一方からセルが取り出される。これらのFIFO
バッファ51,52が共に空であれば、NULLセルす
なわち全部がゼロの空セルが生成される。
The virtual line translator 53 at each input port of the switching network 41 takes out cells from both the input buffer 51 and the crossbar buffer 52. The priority is given to the crossbar buffer 52. As will be appreciated, the translator 53 is active only when there are no blocked cells on the reservation ring 46 due to output contention. If the above blocking condition does not exist, then at the beginning of each switching cycle, two input FIFOs
Buffers 51 and 52 are inspected, crossbar buffer 5
A cell is taken from either 2 (first selection) or the input buffer 51 (second selection). These FIFOs
If the buffers 51 and 52 are both empty, a NULL cell, that is, an empty cell having all zeros is generated.

【0046】バーチャル回線トランスレータ53では、
選択されたセルのヘッダーの始めの4バイトが「4バイ
ト+10ビット」遅延バッファ(図示せず)へシフトさ
れ、セルの残り(たとえば、標準ATMセルのケースで
は、49バイトの情報)がVCI変換FIFOバッファ
(図示せず)へシフトされる。このヘッダーに含まれて
いるVCI値は、そのあとVCI変換テーブル54にイ
ンデックスすることによって、スイッチヘッダー(swit
ch header: 図4参照)を生成する情報を得るために使
用される。このスイッチヘッダーは前記遅延バッファの
始めの10ビットに書き込まれる。VCI変換テーブル
53は、さらに、新しいVPI/VCI値をセルに提供
する。この新しいVPI/VCI値を使用して、古いV
PI/VCI値に上書きされ、そのあとATMセルのヘ
ッダーのチェックサムすなわち“HEC”フィールド
(図3参照)が更新される。
In the virtual line translator 53,
The first 4 bytes of the header of the selected cell are shifted into a "4 bytes + 10 bits" delay buffer (not shown) and the rest of the cell (eg 49 bytes of information in the case of a standard ATM cell) is VCI converted. Shifted to a FIFO buffer (not shown). The VCI value included in this header is then indexed into the VCI conversion table 54 to obtain the switch header (swit
ch header: See Figure 4) used to obtain information. This switch header is written in the first 10 bits of the delay buffer. The VCI conversion table 53 also provides the cell with a new VPI / VCI value. Use this new VPI / VCI value to
The PI / VCI value is overwritten, after which the checksum or "HEC" field (see FIG. 3) of the ATM cell header is updated.

【0047】スイッチヘッダーは、セルが空かどうかを
指示するアクティブフラグ(1ビット)、出力ポートア
ドレス(2個の並列32ポートバンヤンによって提供さ
れる64ポート用の6ビット)、およびストッパービッ
ト(デュアルバンヤン交換網41用の1ビット、その出
所と機能は後で詳しく説明する)を含むように適当に書
式化されている。さらに、スイッチヘッダーは、一般
に、出力ポートがセルをコピーネットワーク48へ送る
べきかどうかを指示するマルチキャストフラグ(1ビッ
ト)、コピーネットワーク上の予約トラフィックと未予
約トラフィックとを区別する予約トラヒック(RT)ビ
ット(1ビット)、オーバーロードの場合にそのセルが
脱落するのにふさわしい候補か否かを指示するセル紛失
優先権(CLP)フラグ(1ビット)(このビットは、
ATMヘッダー内のCLPビットのコピーである)、お
よびスイッチヘッダーの長さが2バイトになるようにス
イッチへッダーに詰めるための予約ビット(5ビット)
を含んでいる。
The switch header contains an active flag (1 bit) indicating whether the cell is empty, an output port address (6 bits for 64 ports provided by two parallel 32 port Banyans), and a stopper bit (dual). It is appropriately formatted to include one bit for the Banyan switching network 41, its source and function are described in detail below). In addition, the switch header typically has a multicast flag (1 bit) that indicates whether the output port should send cells to the copy network 48, a reserved traffic (RT) that distinguishes reserved traffic from unreserved traffic on the copy network. Bit (1 bit), Cell Loss Priority (CLP) flag (1 bit) indicating whether or not the cell is a suitable candidate to drop in case of overload (this bit is
Reserved bits (5 bits) to pad the switch header so that the length of the switch header is 2 bytes).
Is included.

【0048】実際には、バッチャー/バンヤン交換網4
1(図2)は、既知の技法に従って、その入力ポートと
出力ポートの間に1バイト幅(8ビット幅)のデータ経
路を与えるように構成することが好ましい。スイッチヘ
ッダーの始めのバイト(すなわち、アクティブビット、
出力ポートアドレス、およびストッパービット)は上記
のデータ経路上でビット並列モードで伝送されるが、ス
イッチヘッダーの残りのバイトとATMセルの全53バ
イトは、交換網41の並列データ経路構造を活用するた
めに、バイト並列モードで伝送することが好ましい。
In practice, the Batcher / Banyan exchange network 4
1 (FIG. 2) is preferably configured to provide a 1 byte wide (8 bit wide) data path between its input and output ports in accordance with known techniques. The first byte of the switch header (ie active bit,
The output port address, and the stopper bit) are transmitted in bit parallel mode on the above data path, while the remaining bytes of the switch header and all 53 bytes of the ATM cell utilize the parallel data path structure of switching network 41. Therefore, it is preferable to transmit in the byte parallel mode.

【0049】バーチャル回線トランスレータ53によっ
て処理されたセルは、予約リング46の仲裁制御を受け
る。その仲裁機能を実行するために、予約リング46は
交換網41への入力待ち行列の先頭にいるセルのヘッダ
ーのみを検査し、これらのセルの間に競合状態が存在す
るかどうかを判断し、もし存在すれば、それらの競合を
解決する。実際には、VCI変換バッファ(図示せず)
は制限付き深さ(bounded depth)のものである。
The cells processed by the virtual circuit translator 53 are subject to arbitration control of the reservation ring 46. To perform its arbitration function, the reservation ring 46 only examines the headers of cells at the head of the input queue to the switching network 41 to determine if there is a race condition between these cells, If so, resolve those conflicts. Actually, VCI conversion buffer (not shown)
Is of bounded depth.

【0050】交換網41(図2)の決められた入力ポー
トのための評価子(図9および図10参照)が仲裁ラウ
ンドに勝った時はすぐに、その入力ポートに待機中のセ
ルが交換ファブリック41を通して送られる。図示のよ
うに、交換機の基本構造は、2個のバンヤンネットワー
ク43,44(k=2)より成り、各ネットワーク4
3,44は最終的に選択された出力ポートのための出力
バッファ45に接続している。もしセルがアクティブで
なければ(すなわち、もしセルに事前に付けられたスイ
ッチヘッダーのアクティブビットが0であれば)、セル
は出力バッファ45によって待ち行列に入れられないて
あろう。他方、もしセルがアクティブであって、そのス
イッチヘッダー内の resTrafビットが“ON”であれ
ば、セルは保証トラフィックのために予約された出力バ
ッファ45のセクションで待ち行列に入れられるであろ
う。あるいは、もしセルがアクティブであって、その r
esTrafビットが“OFF”であれば、セルは非保証(未
予約)トラフィックのために予約された出力バッファ4
5のセクションに置かれる。
As soon as the evaluator (see FIGS. 9 and 10) for a given input port of the switching network 41 (FIG. 2) wins the arbitration round, the input port is switched to the waiting cell. It is sent through the fabric 41. As shown in the figure, the basic structure of the exchange consists of two Banyan networks 43, 44 (k = 2), each network 4
3, 44 are connected to the output buffer 45 for the finally selected output port. If the cell is not active (ie, if the active bit in the switch header pre-attached to the cell is 0), the cell will not be queued by the output buffer 45. On the other hand, if the cell is active and the resTraf bit in its switch header is "ON", the cell will be queued in the section of the output buffer 45 reserved for guaranteed traffic. Alternatively, if the cell is active and its r
If the esTraf bit is “OFF”, the cell is an output buffer 4 reserved for non-guaranteed (unreserved) traffic.
Placed in section 5.

【0051】任意の決められた出力バッファ45の保証
待ち行列内のセルは、常に非保証待ち行列内のセルのど
れかの前で待ち行列から出される。セルがユニキャスト
されているとき、スイッチヘッダー内のマルチキャスト
ビットは“OFF”(“0”)にされるので、ユニキャ
ストセルが待ち行列から出されるとき、対応付けられた
出力バッファ45へ送られるように、セルに標識が付け
られる。
A cell in the guaranteed queue of any given output buffer 45 is always dequeued before any of the cells in the non-guaranteed queue. When the cell is unicast, the multicast bit in the switch header is turned "OFF"("0") so that when the unicast cell is dequeued, it is sent to the associated output buffer 45. The cells are labeled accordingly.

【0052】想起されるように、スイッチヘッダーの最
初のバイトは全8ビットにわたって(すなわち、全部の
並列データ経路にわたって)複製され、他方の第2のバ
イトはバイト並列モードで伝送されるので、スイッチヘ
ッダーはセル長に9バイトを付加する。さらに、出力リ
ンクでは、53バイト長セルにフレーミング情報の2バ
イトが付加されるので(図示してない通常手段によっ
て)、出力バッファ45におけるバイトレートは、それ
が接続されている出力リンク85のバイトレートより少
なくとも(53+9)/(53+2)倍大きい。この不
釣合いを調整するために、一般に、各出力バッファ45
をその対応する出力リンク85に対し速度整合する短い
FIFOバッファ(図示せず)が設けられる。
As will be recalled, the first byte of the switch header is duplicated over all 8 bits (ie across the entire parallel data path) and the other second byte is transmitted in byte parallel mode so that the switch The header adds 9 bytes to the cell length. Furthermore, in the output link, 2 bytes of framing information is added to the 53-byte long cell (by normal means not shown), so the byte rate in the output buffer 45 is the byte of the output link 85 to which it is connected. It is at least (53 + 9) / (53 + 2) times greater than the rate. To adjust for this imbalance, typically each output buffer 45
A short FIFO buffer (not shown) is provided to rate match each to its corresponding output link 85.

【0053】B.マルチキャスト(multicast) 前に指摘したように、マルチキャスト(多数宛)グルー
プは、複数のネットワークの宛先をアドレッシングする
バーチャル回線である。従って、交換機の各ステージ
は、グループ内のすべての宛先へ入力セルのコピーを送
るためアクセスしなければならない交換機の出力ポート
を知っていなければならない。単一交換機たとえば交換
機22(図1)の見地から、マルチキャストグループ
は、既知の一組の宛先VCIへ経路指定すべきセルを指
定するVCI/VPIペアである。本発明の交換機の特
徴の1つは、マルチキャストセルの経路指定を2段階で
実行することである。すなわち、最初に正しい入力コピ
ーネットワーク48を通してマルチキャストセルを経路
指定することによって正しい数のコピーを作成し、次に
これらのマルチキャストセルのコピーを交換網41を通
して意図した宛先へ個別に再経路指定する。
B. Multicast As noted earlier, a multicast group is a virtual circuit that addresses multiple network destinations. Therefore, each stage of the switch must know which switch output port it must access to send a copy of the input cell to all destinations in the group. From the perspective of a single switch, eg switch 22 (FIG. 1), a multicast group is a VCI / VPI pair that specifies the cells to be routed to a set of known destination VCIs. One of the features of the exchange of the invention is that it performs routing of multicast cells in two stages. That is, the correct number of copies is made by first routing the multicast cells through the correct input copy network 48, and then the copies of these multicast cells are individually rerouted to the intended destination through the switching network 41.

【0054】マルチキャスト操作は、ユニキャスト操作
と同じステップで始まる。VCI変換プロセスのとき、
インデックス付きエントリVCI変換テーブル54(図
2)は、入力セルのヘッダー内のVCIがユニキャスト
アドレスを示すかマルチキャストグループアドレスを示
すかを指定するので、最初の違いが生じる。従って、マ
ルチキャストVCIを有するセルについて、スイッチヘ
ッダー内のマルチキャストビットが設定される。次に上
記セルは交換網41を通って、交換網41が名前付きマ
ルチキャストVCIを見て結び付けた出力バッファ45
の待ち行列へ行く。その待ち行列から出るとき、マルチ
キャストビットの状態は、対応付けられた出力リンク8
5へでなく、決められた出力バッファ45に接続された
コピーネットワーク48の入力を経由してコピーネット
ワーク48へセルを戻すように、ハードウェアに命令す
る。次にコピーネットワーク48は、セルの一定の数の
同一コピー、たとえばj個のコピーを作成する。次にこ
れらのコピーは決められたコピーグループに専用のコピ
ーネットワーク48のj個の出力へ個別に経路指定され
る。次にj個の各出力は受け取ったコピーを、交換網4
1の入力ポートのためのクロスバーすなわちコピーネッ
トFIFOバッファ52へ送り込む。各コピーのヘッダ
ー内のアクティブビットは空セルとアクティブセルを区
別するので、FIFOバッファ52はアクティブセルを
待ち行列に入れ、空セルを廃棄することができる。
Multicast operations begin with the same steps as unicast operations. During the VCI conversion process,
The first difference occurs because the indexed entry VCI translation table 54 (FIG. 2) specifies whether the VCI in the header of the input cell indicates a unicast address or a multicast group address. Therefore, for cells with a multicast VCI, the multicast bit in the switch header is set. Next, the cell goes through the switching network 41, and the switching network 41 sees the named multicast VCI and connects the output buffer 45.
Go to the queue. Upon exiting that queue, the status of the multicast bit will be the associated output link 8
The hardware is instructed to return the cell to the copy network 48 via the input of the copy network 48 connected to the determined output buffer 45 instead of to 5. The copy network 48 then makes a certain number of identical copies of the cell, for example j copies. These copies are then individually routed to the j outputs of the copy network 48 dedicated to the defined copy groups. Then, each of the j outputs outputs the received copy to the switching network 4
1 into the crossbar or copynet FIFO buffer 52 for the input port. The active bit in the header of each copy distinguishes between empty and active cells, so that FIFO buffer 52 can queue active cells and discard empty cells.

【0055】決められたコピーグループに対応付けられ
た一組のコピーネットFIFOバッファ52において待
ち行列に入れられた後、前に述べたように、セルはバー
チャル回線トランスレータ53によって正規の順序で取
り出される。各バーチャル回線トランスレータ53はそ
れぞれ別個のVCI変換テーブル54を有しているの
で、セルのj個のコピーはj個の異なるVCI変換を受
け取る。従って、j個の各セルについて、後続の処理ス
テップは、ユニキャストセルすなわち交換網41を通る
マルチキャストセルの最初のパスと同じである。
After being queued in a set of copynet FIFO buffers 52 associated with a determined copy group, the cells are retrieved by virtual circuit translator 53 in the proper order, as previously described. . Each virtual circuit translator 53 has a separate VCI translation table 54 so that j copies of the cell receive j different VCI translations. Therefore, for each of the j cells, the subsequent processing steps are the same as the first pass of the unicast cell, ie the multicast cell through the switched network 41.

【0056】理解されるように、交換機のどれかの交換
網41を通るマルチキャストセルの経路指定は、バーチ
ャル回線トランスレータ53中で起きるVCIの再書込
みによって決まる。たとえば、jをマルチキャストグル
ープのサイズとし、 vci、 vci′i 、および vci″i を
マルチキャスト操作のとき連続するマルチキャストセル
がとるVCI値であるとする(0<i<j)。セルが最
初に交換機22(図2)に入るとき、そのVCI値は v
ciである。従って、セルがバーチャル回線トランスレー
タ53の1つを最初に通る際に、前記値 vci に基づい
て、セルに対するスイッチヘッダーが生成され、それに
よりセルヘッダーのVCI値が vci′へ書き直される。
その結果、コピーネットワーク48を出るときには、セ
ルの正確なコピー(それぞれが vci′のVCI値を有す
る)がj個ある。そのあと、各コピーは、対応するトラ
ンスレータ53においてj個の異なるVCI変換テーブ
ル54(それぞれに、 vci′番目のエントリ用の異なる
変換が入っている)を使用して変換される。従って、コ
ピーネットワーク48から出てくるj個のセルのi番目
のコピーは、独自のスイッチヘッダーと vci″i の独自
のVCI値を受け取る。
As will be appreciated, the routing of multicast cells through any of the exchanges' switched networks 41 depends on the rewriting of the VCI occurring in the virtual circuit translator 53. For example, let j be the size of the multicast group, and vci, vci'i, and vci "i be the VCI values taken by consecutive multicast cells during a multicast operation (0 <i <j). When entering 22 (Fig. 2), the VCI value is v
It is ci. Therefore, when the cell first passes through one of the virtual circuit translators 53, a switch header for the cell is generated based on said value vci, thereby rewriting the VCI value of the cell header to vci '.
As a result, on exiting copy network 48, there are j exact copies of the cell, each having a VCI value of vci '. Each copy is then translated in the corresponding translator 53 using j different VCI translation tables 54, each containing a different translation for the vci'th entry. Thus, the i-th copy of the j cells emanating from the copy network 48 receives its own switch header and its own VCI value of vci ″ i.

【0057】幾つかの実例においては、交換機の複雑さ
を減らすために、コピーネットワーク48を単一基板ま
たはカード(図示せず)に実装することが望ましいこと
がある。たとえ回線カードのサイズより大きなコピーグ
ループが許されても、交換機自身を用いてコピーネット
ワーク48の連続するレイヤを相互に接続することがで
きるので、これは実行可能なオプションである。操作
上、これは、複数レベルのマルチキャストグループを許
すことによって行われる。言い換えると、トランスレー
タ53の所で、コピーネットワーク48から出てくるj
個のコピーのVCIを後続のマルチキャストグループの
ためのVCIに変換することができ、そしてこれらのコ
ピーのためのスイッチヘッダーのマルチキャストフラグ
ビットを設定することにより、交換機にコピーを再経路
指定させ、コピーネットワーク48を通して戻すことが
できる。もしこのオプションを使用すれば、上例からの
i番目のセルは、そのセルのスイッチヘッダーのマルチ
キャストビットが零に設定されたか否かに従って、ユニ
キャストセルとして残りの交換機によって処理される
か、またはマルチキャストセルとして再び処理されるで
あろう。もしコピーネットワーク48から出てくるコピ
ーが異なるマルチキャストセルであれば、交換網41を
別に通過するとき、そのセルのヘッダーの vci″、 vc
i′′′、および vci′′′′のVCI値が生成される
であろう。
In some instances, it may be desirable to implement the copy network 48 on a single board or card (not shown) to reduce switch complexity. This is a viable option, because the switch itself can be used to connect successive layers of the copy network 48 to each other, even if copy groups larger than the size of the line card are allowed. Operationally, this is done by allowing multiple levels of multicast groups. In other words, at the translator 53, j coming out of the copy network 48
Copy VCIs can be converted to VCIs for subsequent multicast groups, and by setting the multicast flag bit in the switch headers for these copies, the switch can reroute the copy and copy It can be returned through the network 48. If this option is used, the i-th cell from the above example will be treated by the remaining switches as a unicast cell, depending on whether the multicast bit in the switch header of that cell was set to zero, or Will be treated again as a multicast cell. If the copies coming out of the copy network 48 are different multicast cells, when passing through the switching network 41 separately, vci ″, vc in the header of the cell are passed.
VCI values for i ″ ″, and vci ″ ″ ″ will be generated.

【0058】手短に言うと、コピーネットワーク48の
注目すべき多くの特徴の1つは、いろいろなサイズのコ
ピーグループに適合するようにコピーネットワーク48
を簡単にプログラムできることである。このプログラミ
ングはVCI変換テーブル54に組み込まれているの
で、コピーグループのメンバー数に対する変更は、1つ
またはそれ以上の変換テーブル54を再構成する必要が
あるので、最小限にすべきである。
In short, one of the many notable features of copy network 48 is that copy network 48 can accommodate copy groups of various sizes.
Is easy to program. Since this programming is built into the VCI translation table 54, changes to the number of members in the copy group should be minimized as one or more translation tables 54 need to be reconfigured.

【0059】以上の説明から、本発明の予約リング機構
は、複数の経路指定ネットワークを有する非ブロッキン
グ自己経路指定交換機における出力競合を有効に解決す
ること、そして交換機の処理能力に及ぼす影響が最小限
度であることを理解されるであろう。
From the above description, the reservation ring mechanism of the present invention effectively solves the output conflict in a non-blocking self-routing exchange having a plurality of routing networks, and has a minimal effect on the throughput of the exchange. It will be understood that

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明に従って構成された階層型ATM LA
Nを示す略図である。
FIG. 1 is a hierarchical ATM LA constructed in accordance with the present invention.
3 is a schematic diagram showing N.

【図2】本発明に従って構成されたATM交換機を示す
略図である。
FIG. 2 is a schematic diagram showing an ATM switch constructed in accordance with the present invention.

【図3】ATMセルの通常の書式を示す図である。FIG. 3 is a diagram showing a normal format of an ATM cell.

【図4】ATMセルのための典型的なスイッチヘッダー
を示す図である。
FIG. 4 shows an exemplary switch header for ATM cells.

【図5】バッチャー分類要素を示す略図である。FIG. 5 is a schematic diagram showing batcher classification elements.

【図6】バッチャー分類要素の作用を示す有限状態マシ
ンの図である。
FIG. 6 is a diagram of a finite state machine showing the operation of the Batcher classification element.

【図7】図5に示した形式の分類要素の再帰的組合せよ
り成るバッチャー分類ネットワークを示す略図である。
7 is a schematic diagram of a batcher classification network consisting of recursive combinations of classification elements of the type shown in FIG.

【図8】バンヤン経路指定ネットワークを示す略図であ
る。
FIG. 8 is a schematic diagram showing a Banyan routing network.

【図9】予約リング機構を示す略図である。FIG. 9 is a schematic diagram showing a reservation ring mechanism.

【図10】本発明に従って構成された予約リング機構を
示す略図である。
FIG. 10 is a schematic diagram showing a reservation ring mechanism constructed in accordance with the present invention.

【符号の説明】[Explanation of symbols]

21 階層型LAN 22〜25 自己経路指定非ブロッキング式交換機 27 ATMセル 31,32 ソース 33 宛先 41 バッチャー/バンヤンネットワーク(交換網) 42 バッチャー分類ネットワーク 43,44 バンヤン経路指定ネットワーク 45 FIFOバッファ 46 予約リング 48 n×nコピーネットワーク 51,52 FIFOセルバッファ 53 VCIトランスレータ 54 VCI参照用テーブル(VCI変換テーブル) 62 分類要素 64 有限状態マシン 71 標準バンヤン経路指定ネットワーク 72 基本交換要素 75 線形短縮アレイ 76 有限状態マシン 84 入力リンク 85 出力リンク 86 p×pクロスバー 100 交換機 101 入力回線 102 出力回線 103 別の入力回線 104 別の出力回線 106 交換網 21 Hierarchical LAN 22-25 Self-routing Non-blocking Switch 27 ATM Cell 31, 32 Source 33 Destination 41 Batcher / Banyan Network (Switching Network) 42 Batcher Classification Network 43, 44 Banyan Routing Network 45 FIFO Buffer 46 Reservation Ring 48 n × n copy network 51,52 FIFO cell buffer 53 VCI translator 54 VCI lookup table (VCI conversion table) 62 Classification element 64 Finite state machine 71 Standard Banyan routing network 72 Basic switching element 75 Linear shortening array 76 Finite state machine 84 Input link 85 Output link 86 pxp crossbar 100 Switch 101 Input line 102 Output line 103 Another input line 104 Another output line 106 Switching network

フロントページの続き (51)Int.Cl.5 識別記号 庁内整理番号 FI 技術表示箇所 8529−5K H04L 11/20 102 Z Continuation of the front page (51) Int.Cl. 5 Identification code Office reference number FI technical display location 8529-5K H04L 11/20 102 Z

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 分類ネットワークと、前記分類ネットワ
ークの次に配置され、複数の入力から複数の出力へパケ
ットを経路指定する複数の経路指定ネットワークを有す
る交換機において、同一出力へのアクセスを競合してい
る入力間の対立を解決する予約リング機構であって、 少なくとも1仲裁サイクルの間にトップツウダウン順に
環状に予約ベクトルをシフトして、競合している入力に
同一出力へのアクセスをトップツウダウン順に許可する
手段を備えていて、少なくとも最大許容数の競合者が同
一出力に対し競合状態にある時はいつも、前記各仲裁サ
イクル中に前記数の競合者に上記出力へのアクセスを許
可することを特徴とする予約リング機構。
1. A switch having a classification network and a plurality of routing networks arranged next to the classification network for routing packets from a plurality of inputs to a plurality of outputs, competing for access to the same output. A reservation ring mechanism that resolves conflicts between existing inputs by shifting the reservation vector in a ring in top-to-down order for at least one arbitration cycle to top-down access to the same output for competing inputs. Permitting access to the outputs during each of the arbitration cycles whenever at least the maximum allowed number of competitors are competing for the same output. Reservation ring mechanism characterized by.
JP10817993A 1992-05-20 1993-05-10 Reserved ring mechanism of packet exchange Withdrawn JPH0637798A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US88716492A 1992-05-20 1992-05-20
US07/887164 1992-05-20

Publications (1)

Publication Number Publication Date
JPH0637798A true JPH0637798A (en) 1994-02-10

Family

ID=25390574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10817993A Withdrawn JPH0637798A (en) 1992-05-20 1993-05-10 Reserved ring mechanism of packet exchange

Country Status (1)

Country Link
JP (1) JPH0637798A (en)

Similar Documents

Publication Publication Date Title
JPH0637797A (en) Reserved ring mechanism of packet exchange network
US5305311A (en) Copy network providing multicast capabilities in a broadband ISDN fast packet switch suitable for use in a local area network
JP3447321B2 (en) Switch with trunk group input / output mode
US5327420A (en) Method for building multi-bit parallel Batcher/banyan networks
US5689508A (en) Reservation ring mechanism for providing fair queued access in a fast packet switch networks
US6667984B1 (en) Methods and apparatus for arbitrating output port contention in a switch having virtual output queuing
US6449283B1 (en) Methods and apparatus for providing a fast ring reservation arbitration
JP3577188B2 (en) Buffering of multicast cells in multistage networks
US5689500A (en) Multistage network having multicast routing congestion feedback
US5923656A (en) Scalable broad band input-queued ATM switch including weight driven cell scheduler
US5511070A (en) Reservation ring mechanism for controlling contention in a broadband ISDN fast packet switch suitable for use in a local area network
US6944170B2 (en) Switching arrangement and method
Duan et al. A high-performance OC-12/OC-48 queue design prototype for input-buffered ATM switches
Sarkies The bypass queue in fast packet switching
Wong et al. Design and analysis of a novel fast packet switch-pipeline banyan
Yun A terabit multiservice switch
WO1993006675A1 (en) Nonblocking multicast fast packet/circuit switching networks
Fahmy A survey of ATM switching techniques
Kim Multinet switch: Multistage ATM switch architecture with partially shared buffers
Wong et al. Pipeline banyan-a parallel fast packet switch architecture
JPH0637798A (en) Reserved ring mechanism of packet exchange
Kannan et al. MSXmin: a modular multicast ATM packet switch with low delay and hardware complexity
Engbersen Prizma switch technology
KR100368439B1 (en) Method and apparatus for ensuring transfer order in a packet-switch with a dual-switching plane000
Turner et al. Architectural Choices in Large Scale ATM Switches

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20000801