JPH0851439A - パケット処理装置 - Google Patents

パケット処理装置

Info

Publication number
JPH0851439A
JPH0851439A JP10269195A JP10269195A JPH0851439A JP H0851439 A JPH0851439 A JP H0851439A JP 10269195 A JP10269195 A JP 10269195A JP 10269195 A JP10269195 A JP 10269195A JP H0851439 A JPH0851439 A JP H0851439A
Authority
JP
Japan
Prior art keywords
vcn
packet
port
cell
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10269195A
Other languages
English (en)
Inventor
Costas Calamvokis
コスタス・カラムボキス
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH0851439A publication Critical patent/JPH0851439A/ja
Pending 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
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • H04L49/309Header conversion, routing tables or routing tags
    • 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/25Routing or path finding in a switch fabric
    • H04L49/256Routing or path finding in ATM switching fabrics
    • 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/3009Header conversion, routing tables or routing tags
    • 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/10Packet switching elements characterised by the switching fabric construction
    • H04L49/103Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
    • 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/30Peripheral units, e.g. input or output ports

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)【要約】 【目的】 入力ポートを通して受け取られたパケットに
ついて、短いインデックスを用いてチャネル識別子("
マスタVCN")を得る。 【構成】 パケット(ATMセル)に含まれる仮想チャ
ネルを識別するチャネル・ラベル、および、このパケッ
トを受け取った入力ポートを識別するポート・ラベルを
結合して長いチャネル識別子を生成する。これを分割し
てK個のキーを生成し、このキーをより短いインデック
スに変換する。このインデックスを用いてマスタVCN
テーブルを探索してマスタVCNを得る。こうして、A
TM装置内で短いインデックスを用いてマスタVCNを
アクセスすることができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、パケットに基づくシス
テム(固定長パケットまたは"セル"を扱うシステムを含
む)のチャネル識別子の生成に関し、具体的には、複数
の入力ポートを持つATMスイッチでセルが受け取られ
る仮想チャネルの識別に関する。
【0002】
【従来の技術】ATM(Asynchronous Transfer Mode非
同期伝送モードの略称で、以下ATMと呼称する)は、
厳密に一定間隔で物理媒体上に出現するという意味にお
いて同期的である固定サイズ・セルを使用して、ある1
つのネットワークにわたってデータを転送するためのマ
ルチプレクシング(多重化)およびスイッチングの技術
である。各セルは、ペイロード部分とヘッダからなり、
後者のヘッダには、ネットワーク終端の送信システムと
受信システムとの間における通信インスタンスにセルを
関連づけるラベルが含まれる。この通信インスタンスに
は、1つの送信終端システムからおそらく複数の受信終
端システムへ多数のセルを転送することが含まれる場合
がある。同一の通信インスタンスに属する複数セルが必
ずしも一定間隔で出現しないという意味において、AT
Mは非同期的である。
【0003】ATMにおいては、セルに付けられるラベ
ルは、固定サイズの文脈依存ラベルである。すなわち、
それらラベルは、解読ネットワーク・ノードにおいて予
め定められた文脈情報に照らしてのみ解釈可能であり、
ラベルは、一般的に、あるノードにおいて次のノードに
必要とされるラベルによって置き換えられる。言い換え
ると、ATMは、通信の各インスタンスが各ノードにお
ける適切なラベル情報を確立するための設定フェーズを
必要とする仮想回線技術である。
【0004】ATM技術は、普及の増加を見せている
が、その理由は、ATM技術によって、(回線交換技術
に通常関連する)適時特性と(パケット交換技術に関連
する)統計的利点を結合する上で許容可能な妥協を図れ
る点にある。ATMは、音声、エンターテイメント(娯
楽)サービスまたはコンピュータ・トラフィックを含む
すべてのタイプのトラフィックを搬送するための単一の
伝送モードを提供する。
【0005】本発明は、セル・サイズのような特定の実
施上の詳細事項にとらわれることなく一般的にATMシ
ステム(および他のシステム)に適用できるものであ
る。しかし、以下の説明において、CCITTおよびA
TMフォーラム(前者は主としてパブリック・ネットワ
ークに関するもので、後者はコンピュータ関連ユーザ・
ネットワークに関するものである)によって推進されて
いる現在進展中のB−ISDN ATM規格を特に参照
する。
【0006】事実、これら現在進展しつつある規格の範
囲においてさえ、各セルのヘッダ部分に含まれる情報の
意味論は、ネットワーク上でセルが(その末端か内部か
に)出現する場所とネットワーク終端システムにおいて
ATMセルを処理するために配置されるATM適合層の
特性に依存して変わる。特記しない限り本発明の以下の
説明において記述するセルの形式は、AAL5サービス
のためのB−ISDNUNI(ユーザ・ネットワーク・
サービスUser Network Interface)である(ここで"A
AL"は、ATM適合層(ATM Adaption Layer)を指
し、"AAL5"は、コンピュータ通信に適した接続指向
の可変ビット伝送速度非同期通信サービスを意味す
る)。
【0007】図1は、上記のようなセルの形式をバイト
幅形式で示している。図に見られる通り、セルは、5バ
イト長のヘッダとユーザ・データの48バイト長ペイロ
ードで構成されている。ヘッダ・フィールドは、次の通
りである。 −GFC 4ビット 一般フロー制御(General Flow C
ontrol)フィールド −VPI 8ビット 仮想経路識別子(Virtual Path I
ndicator)フィールド −VCI 16ビット 仮想チャネル識別子(Virtual Ch
annel Indicator)フィールド −PT 3ビット ペイロード・タイプ(Payload Ty
pe)フィールド −EOP 1ビット パケット終了(End of Packet)フ
ィールド −HEC 8ビット ヘッダ・エラー・チェック(Head
er Error Check)フィールド VPIとVCIはともに、特定リンク上のセルのための
仮想回線ラベルを形成し、このラベルは、セルが遭遇す
る次のネットワーク・ノードでセルの行先経路が定めら
れる基礎情報となる。一般的に、ATM用語において、
仮想回線は、"仮想チャネル"と呼ばれ、VPIは、ある
リンク上の1つの仮想チャネル・グループを識別するも
のとみなされ、一方、VCIは該グループ内の特定の仮
想チャネルを識別するものである。
【0008】EOPビットは、当該セルが、上位レベル
の適用業務データ・ユニット(パケット)を構成する一
連のセルの最後のセルであることを識別するために使わ
れる。このようにパケットの最後を明示する情報をセル
・ヘッダに保有することの利点は、1つの構成セルが消
失した場合、パケットを構成しているすべてのセルを破
棄することを可能にすることである。
【0009】ある特定の入力ポートを経由してあるネッ
トワーク・ノードに到着するATMセルは、セル・ヘッ
ダに記憶されるVPIとVCI情報および設定時に設定
される文脈情報に従って、経路を再指定(すなわちスイ
ッチ)される。VPIとVCI情報は、変更され、セル
は出力される。そのようなノードは、一般に、ATMス
イッチと呼ばれ、図2に示すように、概念的にスイッチ
・コア200を含む。このスイッチ・コア200は、取
り扱うセルに関し以下の動作を実行する役目を有する。 −各セルに記憶されたVPIとVCI情報が、与えられ
たリンクに唯一の特異な情報であることを考慮して、ど
のセルがどのチャネルに属するかを決定すること、 −セルの行先チャネルを決定しそこへ配送すること、お
よび、 −適切な出力ポートに対する複数のアクセス要求を仲裁
すること。 スイッチは、また、チャネル設定と管理機能を分担する
ある種のプロセッサ装置201と、該スイッチのそれぞ
れの外部ポートに接続されるリンク203にスイッチ・
コアをインターフェースさせるためのインターフェース
回路202とを含むこともあろう。
【0010】スイッチ・コアは一般に高帯域を持つよう
に設計され、そのため、該スイッチは、本来的かまたは
統計的かいずれにしても低域幅である複数のリンクをサ
ービスすることが可能である。この場合、複数のリンク
は、スイッチ・コアに供給される前にマルチプレクスさ
れ、反対に、スイッチ・コアの出力は、適切なリンクに
渡すためデマルチプレクスされる。
【0011】セル・ヘッダのVPIとVCIフィールド
を合計した大きさは24ビットで、これにリンク識別子
を加えて、全リンクにわたって特異なチャネル・ラベル
を作成すると、その結果できるラベルは長すぎて、AT
Mスイッチ内で処理する(たとえば、スケジューリング
を実行する)ために実際使うタグとしては使用できなく
なる。したがって、従来のATMスイッチの具体化で
は、VPI+VCI全フィールドの使用を避けることが
多かった。全フィールドが必要とされることはめったに
ないので、これは正当化できた。
【0012】
【発明が解決しようとする課題】本発明の目的は、パケ
ットに関連する仮想チャネルを特異に識別するチャネル
・ラベル(VPI+VCI)を利用し、ATMスイッチ
(または、受け取られたセルまたはパケットに関して予
定の機能を実行するその他の装置)内で使用できる扱い
易い大きさのチャネル識別タグを提供することである。
【0013】
【課題を解決するための手段】本発明の1つの側面とし
て、少なくとも1つの入力ポートを通して受け取られた
パケットに関してあらかじめ定められた機能を実行する
ための装置を提供する。各パケットは、パケットを受け
取った該装置の入力ポートに対して、該パケットに関連
する仮想チャネルを特異に識別するチャネル・ラベルを
持ち、上記装置は、該装置によって受け取られた各パケ
ットに、該パケットに関連する仮想チャネルと入力ポー
トとを結合したものを特異に識別する識別子(ここでは
マスタVCN(Virtual Channel Number 仮想チャネル
番号))を提供するVCN提供手段と、上記VCN提供
手段によって提供されたマスタVCNに基づいて各パケ
ットに関して上記のあらかじめ定められた機能を実行す
る処理手段と、を含み、上記VCN提供手段は、 −各パケットに対し、パケットを受け取った入力ポート
を識別するそれぞれのポート・ラベルを生成するポート
識別手段と、 −パケットに関連するチャネル・ラベルとポート・ラベ
ルを結合し、出力される長いチャネル識別子を作成する
結合手段と、 −上記結合手段の出力をあらかじめ定められた方法で分
割し、Kが2以上の整数であるK個のキーを提供するキ
ー提供手段と、 −K個のキーが適用されるテーブル探索手段と、を有
し、さらに、上記テーブル探索手段が、 −パケットに関連するK個のキーの各々を、それぞれ対
応するより短いインデックスに変換する変換手段と、 −それぞれのマスタVCNを保持する位置を持つK次元
のマスタ・テーブルであって、対象とするパケットのマ
スタVCNを提供するために、同一パケットから得られ
たK個のインデックスが、対応するマスタ・テーブルの
位置をアクセスする役割をするようにした、K次元マス
タ・テーブルと、を有する。この形のVCN提供手段に
より、マスタVCNが得られた長いチャネル識別子より
も、実質的に短いマスタVCNの提供が可能になる。
【0014】ATMスイッチに関する本発明の1つの実
施例では、パラメータKは2の値を持つ。
【0015】上記結合手段は、長いチャネル識別子が出
力される前に、それをスクランブルするように動作する
ことが望ましい。
【0016】一般的に、キー提供手段は、結合手段の出
力をK個の等しいセグメントに分割することによって、
K個のキーを提供する。しかし、出力を他の方法で分割
し、出力の要素(たとえばディジット)をK個の群に分
け、1つの群内の要素を混ぜることも可能である。
【0017】VCN提供手段がさらに、テーブル探索手
段によって提供されたマスタVCNの正確さを確認する
確認手段を持つことにより、さらに利点が増す。上記確
認手段は、 −マスタVCNを提供するときに使われた長いチャネル
識別子の少なくともあらかじめ定められた部分に各マス
タVCNを関連させ、マスタVCNが供給されたときに
上記の少なくともあらかじめ定められた部分を出力す
る、チェック・テーブル手段と、 −チェック・テーブル手段の出力と、チェック・テーブ
ル手段に供給されたマスタVCNを提供する際に実際に
使われた長いチャネル識別子の対応する部分とを比較
し、比較の結果の標示を出力するように動作する比較手
段と、を有する。
【0018】望ましい形として、装置はVCN提供手段
を含むコアと、複数の入力ポートを提供し、入力ポート
で受け取られたパケットをマルチプレクス(多重化)
し、あらかじめ定められたタイミングに従ってパケット
をコアに渡すマルチプレクサ手段を含む外部インタフェ
ース手段と、を有することが望ましい。この場合、ポー
ト識別手段は、パケットがコアに到着する時間に依存し
て、パケットに対してポート・ラベルを生成するように
構成することができる。
【0019】各変換手段は、関連するキーを対応するイ
ンデックスに関連させるリスト手段を含むことが有利で
ある。この文脈において、用語"リスト手段"は、リスト
のように働き、それにより、対応するインデックスを探
索するためにキーが使えるいかなる構造も広くカバーす
るものと理解されたい。
【0020】もちろん、一般的に、装置は、新しい仮想
チャネルのパケットにマスタVCNを提供するためにテ
ーブル探索手段を設定する新エントリ手段を備えること
が必要であって、これらのパケットに関連するチャネル
・ラベルとポート・ラベルは、K個の特性キー(以下新
キー)をテーブル探索手段に適用させることができるも
のである。新エントリ手段は、 −新しい仮想チャネルのマスタVCNをマスタ・テーブ
ルの指定された位置に挿入するための挿入手段と、 −K個の新キーがリスト手段の既存のインデックスを参
照しているかを判断する判断手段と、 −上記の判断手段が上記インデックスがないと判断する
と上記の適切なインデックスを対応するリスト手段に挿
入し、新キーによって参照される1対のインデックス
が、マスタ・テーブルの、既存の塞がったテーブル位置
に関してよく分配された空きの位置を識別できるよう
に、上記の適切なインデックスを選択し、さらに、イン
デックスによって指示された空きのテーブル位置を挿入
手段に知らせ、該挿入手段に空きのテーブル位置にマス
タVCNを挿入させるようにする、リスト設定手段と、
を有することが望ましい。
【0021】さらに、新エントリ手段が、 −判断手段が全てのキーに対してインデックスが既に存
在すると判断したときに、インデックスによって指され
たテーブル位置を検査し、テーブル位置が空いているこ
とがわかると、挿入手段に、その空いているテーブル位
置に新しい仮想チャネルのマスタVCNを挿入させる検
査手段と、 −上記検査手段により、インデックスによって指された
テーブル位置に、エントリが存在して塞いでいることが
判明したことに反応し、塞いでいるエントリに関連する
上記インデックスを調整することによってテーブル位置
を空けることができるかを判断し、空けられれば、この
調整を行い、挿入手段に、新しい仮想チャネルのマスタ
VCNを空いた位置に挿入させる、調整手段と、を有す
ると利点が多い。
【0022】新エントリ手段が、上記の調整手段がテー
ブル位置を空けることができないときに動作する付加的
調整手段をさらに持ち、塞いでいるエントリを外して新
しい仮想回線のマスタVCNで置き換え、その後、マス
タVCNに関連する上記インデックスを調整することに
よりテーブル位置を空けることができるかを判断し、空
けられるならば、この調整を行って、塞いでいるエント
リを置き換えることが望ましい。
【0023】本発明のもう1つの側面として、装置の少
なくとも1つの入力ポートを通して受け取られたパケッ
トに対し、パケットに関してあらかじめ定められた機能
を実行する意図でパケット・ストリーム識別子(ここで
は"マスタVCN")を生成する方法を提供する。この場
合、各パケットは、そのパケットが受け取られた入力ポ
ートに対し、そのパケットに関連する仮想チャネルを特
異に識別するチャネル・ラベルを含む。この方法は、 −Kが2以上の整数の、マスタVCNを記憶するK次元
の探索テーブルを提供するステップと、 −特定の上記のパケットに関連するマスタVCNを提供
するために、(i)上記パケットに対して、そのパケット
を受け取った入力ポートを識別するポート・ラベルを生
成し、(ii)長いチャネル識別子を作成するために、上記
のパケットに関連するチャネル・ラベルおよびポート・
ラベルを結合し、(iii)K個のキーを提供するために、
あらかじめ定められた方法で長いチャネル識別子を分割
し、(iv)各キーを、対応する、それぞれの、より短いイ
ンデックスに変換し、(v)K次元探索テーブルに、K個
のインデックスを使って、対象としているパケットのマ
スタVCNを探索する、ことからなるサブステップを実
行するステップと、を有することが望ましい。望ましく
は、上記方法は長いチャネル識別子をスクランブルする
サブステップをさらに含み、この場合、上記サブステッ
プ(iii)は、スクランブルされた長いチャネル識別子に
対してはたらく。
【0024】本発明のさらにもう1つの側面として、少
なくとも1つの入力ポートを通して受け取られたパケッ
トに関して、あらかじめ定められた機能を実行する装置
を提供する。各パケットは、パケットが受け取られた入
力ポートに対して、各パケットが関連する仮想チャネル
を識別するチャネル・ラベルを持ち、上記装置は、受け
取られた各パケットに、パケットに関連する仮想チャネ
ルと入力ポートとを結合したものを識別する識別子(こ
こでは"マスタVCN")を提供するVCN提供手段と、
上記VCN提供手段によってパケットに提供されたマス
タVCNに依存して、各パケットに対し上記のあらかじ
め定められた機能を実行する処理手段と、を備える。V
CN提供手段は、 −各パケットに対して、パケットが受け取られた入力ポ
ートを識別するポート・ラベルを生成するポート識別手
段と、 −パケットに関連するチャネル・ラベルとポート・ラベ
ルを結合する結合手段であって、該結合手段によってス
クランブルされる長いチャネル識別子を作成する結合手
段と、 −パケットのスクランブルされた長いチャネル識別子
を、あらかじめ定められた方法で分割して少くとも2個
のキーを提供するキー提供手段と、 −マスタVCNを保持するマスタ・テーブルを含むテー
ブル探索手段であって、特定のパケットに関連する上記
少なくとも2個のキーが該テーブル探索手段に適用され
るのに応答して、そのパケットに対するマスタVCNを
出力する、テーブル探索手段と、を有する。
【0025】
【実施例】
アーキテクチャの概要 以下に記述するATMスイッチは、高帯域、Nポートの
スイッチ・コアを備え、このNポートのスイッチ・コア
は、スイッチ・コア・ポートそれぞれに関連付けられる
マルチプレクサ/デマルチプレクサ機構を介して低速リ
ンクとインターフェースされる。スイッチ・コアは、1
度に1つのポートを処理するため周期的にポートをサー
ビスして新しいセルを持ち込む。従って当アーキテクチ
ャで実施されるマルチプレクサ/デマルチプレクサに2
つのレベル(当然N=1の場合を除いて)が存在する。
【0026】更に具体的に図3を参照して述べれば、本
発明を実現するスイッチは、大きく見て3タイプの主要
ブロックから構成されている。中央には、Nポートのス
イッチ・コア20があり、各スイッチ・コア・ポート2
1は、例えば622Mビット/秒という予め定められた
速度で動作する。アダプタ・カード22が、各ポート2
1に接続している。アダプタ・カード22の各々は、多
数の比較的低速の外部スイッチ・ポート23をスイッチ
・コア・ポートへインターフェースする(図でI/Fと
表示)。最後に、プロセッサ装置24があって、これ
は、信号生成と仮想チャネル設定機能を実行する。
【0027】本発明のスイッチの説明の目的のため、ス
イッチ・コア・ポートは、622Mビット/秒で動作す
るものとするが、上記特定のポート速度は本発明にとっ
て必須のものではなく、それより低いまたは高い速度も
可能である点は認識されるべきであろう。
【0028】本スイッチのアーキテクチャは、「すべて
共有」のアーキテクチャである。これは、いかなる資源
も特定ポートやバッファに占有されず、論理部分は中心
に集められていることを意味する。従って、アダプタ・
カードは、殆どバッファ機能と知能を備えていない。
【0029】共通のマスタ・クロック25がすべての3
つの主要ブロック(スイッチ・コア20、アダプタ・カ
ード22、プロセッサ24)へクロック信号を送り、局
所スレーブ・クロック26が適切な局所クロック信号を
生成する。この配置は、クロック速度が予め定められた
一定の関係を有することを保証する。ライン27は、プ
ロセッサからのグロ―バル同期化信号をプロセッサ・ブ
ロック24からスイッチ・コア20とアダプタ・カード
22へ送り、動作開始時点における各ブロックの動作を
同期化させる。
【0030】以下の3つの節において、3つの主要ブロ
ックについて詳細な説明を行う。
【0031】Nポート・コア20 図4には、Nポートのスイッチ・コア20のブロック図
が示されていて、図に見られるように、スイッチ・コア
は、一般に対となってスイッチ・コア・ポートを構成す
る入力/出力ポート37、38、セル本体共有メモリ3
1、空きアドレス・リスト・メモリ32、コントローラ
33、および、コントローラとの間で送受信されるセル
のATM適合層およびその他高位通信層処理を実行する
ための通信ブロック34(これにより当該スイッチが一
部をなすネットワーク上でコントローラがセルを通信す
ることが可能となる)を含む。
【0032】スイッチ・コアの動作は、非常に単純であ
る。N入力ポート37は厳密な順序で一度に1つのセル
をサービスされる。1つのセルが入力ポートの1つに到
着すると、ファブリック(fabric、送受信機構、以下フ
ァブリックという)30が、空きアドレス・リスト・メ
モリ32から取り出したアドレスを用いて、セル本体を
セル本体共有メモリ31に書き込む。このアドレスは、
また、当該セルのヘッダとともに、コントローラ33に
渡される。入力ポート37が固定的順序でサービスされ
るため、コントローラ33は、ヘッダの到着時間からセ
ルの発信ソース(入力ポート)を特定することができ
る。
【0033】コントローラ33は、到着セルのヘッダと
セル本体アドレスとを記憶し処理する。コントローラは
また、(後述する)待ち行列モデルとスケジュール規則
を基に各出力ポート38上にどのセルを次に送信すべき
かを決定する。セルを送信するため、コントローラは、
当該セルの本体が記憶されているアドレスと当該セルの
ヘッダとを出力する。ファブリック30は、セル本体共
有メモリ31からセル本体を読み取り、それをヘッダと
組み合わせてセルを作成し、このセルを出力ポートに送
出する。出力ポートもまた固定順序でサービスされるの
で、コントローラがヘッダとアドレスを送出する時間に
よって、セルの宛先は決定される。アダプタ・カード2
2が接続するスイッチ・コアの主ポート(入力/出力ポ
ート対37,38)の他に、ファブリック30は、2つ
の低速ポートをサポートする。その1つは、セルを送受
信するためプロセッサ24によって使用されるプロセッ
サ・ポートであり、もう1つは、通信ブロック34を通
してフロー制御セルを送受信するためにコントローラに
よって使用されるコントローラ・ポートである。
【0034】セル本体共有メモリ31とコントローラ3
3の帯域幅は、ポートの最大速度ですべての入力ポート
37からセルを受け取り、すべての出力ポート38にセ
ルを送り出すことを実施するのに十分なものである。ス
イッチ・コア20の構成エレメントのクロック動作は、
局所クロック機構26によって制御される。
【0035】スイッチ・コア動作のタイミングをより詳
細に考察すると、所与のスイッチ・コアの主ポートの速
度(622Mビット/秒)での連続的セル到着の間隔を
Tとすれば、Nポートのスイッチ・コアに関して、ファ
ブリック30は、時間T毎に、N個のセルを、すなわ
ち、スイッチ・コア入力ポート37の各々から1つのセ
ルを受け取る能力を持たなければならない。同様に、該
ファブリックは、時間T内にN個のセルを、すなわち、
出力ポート38の各々毎に1つのセルを送信する能力を
持たなければならない。ファブリック30はまた、プロ
セッサ・ポートとコントローラ・ポートを経由するセル
の伝送を処理する能力を有していなければならない。
【0036】ファブリックは、複数のシフト・レジスタ
を基本的に含み、このシフト・レジスタでのシフトによ
って、セルの転送が、主スイッチ・ポートを経由して、
すべてのポートに対して同時に実行される。ファブリッ
ク30のシフト・レジスタと共有メモリ31との間のセ
ル本体データの転送とコントローラ33とのセル・ヘッ
ダの転送は、各ポートを順番に取り扱う所定周期の転送
に従ってシフト・レジスタとの並列転送によって実行さ
れる。
【0037】スイッチ・コア・ポートを通して各セルを
転送するために必要となる一般的プロセスは、先ず、セ
ル・ヘッダがファブリックにシフトされ、セル本体が続
くというものである。セル本体がシフトされている間、
セル・ヘッダは、コントローラへ送出され、引き続くセ
ル本体のメモリ31への転送の間に、当該ポートに関す
る次のセルのヘッダが、ファブリックにシフトされる。
セルの出力に関して、同様であるが反対のプロセスが行
われる。
【0038】セル本体メモリ31への転送に関する限り
は、転送サイクルは、単純に各主スイッチ・ポートを順
番に進む(例えば入力ポート37が4個、出力ポート3
9が4個ある場合、転送サイクルは、先ず各入力ポート
をサービスしてセル本体データをメモリ31へ転送し、
次に各出力ポートをサービスしてデータをメモリ31か
らファブリックへ転送する)。メモリ31とコントロー
ラ/プロセッサ・ポートに関連付けられたシフト・レジ
スタとの間のセル本体データの転送は、スイッチ・コア
の主ポートに関するセル転送サイクルのうちの予め定め
られた冗長部分においてファブリックによって取り扱わ
れる。
【0039】ファブリック30とコントローラ33との
間のセル・ヘッダの転送は、コントローラ33が逐次ヘ
ッダを受け取り出力することができる(コントローラが
その処理を逐次遂行する)ことを前提に、セル本体の転
送と同様の転送サイクルをとることができる。したがっ
て、コントローラ/プロセッサ・ポートは、コントロー
ラによって実行される全般ポート・サービス・サイクル
において、それ自身のスロット(時間間隔)を割り当て
られなければならない。もちろん、コントローラ/プロ
セッサ・ポートは、スイッチ・コアの主ポートのように
頻繁にサービスされることはなく、一般に、プロセッサ
/コントローラ・ポートが主ポートの1/nの速度で動
作するとすれば、プロセッサ/コントローラ・ポート
は、主ポートのn回のサービス毎に一度だけサービスさ
れる。結果として、全般ポート・サービス・サイクル
は、P1からP4の4つの主ポートを持つスイッチ・コ
アに関して図5で示されるようになり、コントローラ3
3へのヘッダの入力とコントローラからのヘッダの出力
との両方に適合する(実際には、サイクルは、入出力に
関して同じである必要はないが、一般的にはそのように
なる)。
【0040】コントローラ33に渡されるセル・ヘッダ
は、セル本体をメモリ31に記憶するために使われるア
ドレスによって、その対応するセル本体と関連づけら
れ、これらのアドレスは、ヘッダ・データとともにコン
トローラ33に記憶される。セル本体が記憶されるアド
レスは、正しいヘッダとともに記憶されることを保証す
るため適切なタイミングでコントローラ33に供給され
なければならないことが認識される必要がある。
【0041】以下に説明されるように、スイッチ・コア
の主ポートを通して供給される特定のセルが空のセル
(さらに正確にいえば無視されるべきセル)である可能
性があり、この条件は、セル・ヘッダのVPIとVCI
の値がゼロにセットされることによって標示される。こ
のようなセルの存在は、セル本体のメモリ31への転送
またはセル・ヘッダのコントローラ33への転送の処理
を変えることはなく、コントローラ33は、セル・ヘッ
ダのVPIとVCIがゼロであることを発見次第、セル
本体が記憶される関連アドレスを空きアドレス・リスト
・メモリ32へ単に戻すだけであり、メモリ31それ自
体においてなにかの措置を講ずる必要はない。
【0042】アダプタ・カード22 各アダプタ・カードは、対となっている多数の外部入力
/出力ポートをスイッチ・コアの1つのポートに結合す
る。1つのアダプタ・カード上の外部入力/出力ポート
(複数)は、複数リンクの帯域幅の総和がスイッチ・コ
アのポートの速度より小さいことを前提に、それらリン
クの任意の組合せで構成することができる。例えば、ス
イッチ・コアのポートの速度が622Mビット/秒であ
れば、アダプタ・カードは、12個の51Mビット/秒
ポート、または4個の155Mビット/秒ポート、また
は、3個の155Mビット/秒ポートと1個の100M
ビット/秒ポートと1個の5lMビット/秒ポートの混
合のいずれかを含むことができる。
【0043】アダプタ・カードの動作は、非常に単純で
ある。ほとんどの場合、アダプタ・カードはそれが扱う
セルの内容を見ることはない。その1つの例外は、各セ
ルのヘッダ・エラー・チェック(HEC)フィールドで
あり、それは、送信されるセルに関してはアダプタ・カ
ードによって生成され、受信されるセルに関してはアダ
プタ・カードによってチェックされる。もしもHECが
到来するセルに関しエラーを示していれば、アダプタ・
カードは該セルのVPIとVCIフィールドをゼロにセ
ットすることによって該セルを空セルに変える。
【0044】図6に示されているアダプタ・カード32
の例では、5つの外部低速ポートAからEがスイッチ・
コアの1つのポートにインターフェースするように設計
されている。明示の目的のため、ポートAのコンポネン
トのみが図示されている。アダプタ・カード22は以下
のエレメントを含む。 −ポートAからEの各々に対するそれぞれの物理層/フ
レーム機構(PHYS)40。機構40は、上述のヘッ
ダ・エラー・チェック機能を実行する。 −ポートAからEの各々の入力側に対する小規模の(セ
ル2つ分の)入力先入先出機構(FIFO)41。この
FIFOは、入力ポートの転送速度をスイッチ・コアの
ポートに合致させる。 −対応する入力FIFO41の内容が1個のセルに等し
い分量以下であることを検出するための入力検出機構4
2。 −ポートAからEの各々の出力側に対する小規模の出力
先入先出機構(FIFO)43。このFIFOは、スイ
ッチ・コアのポートの転送速度を出力ポートのそれに合
致させる。 −対応する出力FIFO43の内容が1つのセルに相当
する分量を越えることを検出するための出力検出機構4
4。 −入力ポートの各々からのセルをスイッチ・コアの入力
ポート37へマルチプレクスする時分割マルチプレクサ
45。セルは、入力ポート・ロータ機構46に保持され
る所定のポート順で周期的に送られる。ポート・ロータ
周期の開始は、グロ―バル同期化信号によって指示され
る。 −対応するスイッチ・コアの出力ポート38からセルを
取り出し、それらを適切な出力ポートAからEへ送るデ
マルチプレクサ47。セルは、グロ―バル同期化信号に
同期化されるプログラム可能出力ポート・ロータ機構4
8に保持される所定の順序で到着する。 −局所クロック26。
【0045】一方でのマルチプレクサ45とデマルチプ
レクサ47との間の、他方ではそれらとスイッチ・コア
のポートとの密接な機能的関連性のために、マルチプレ
クサ45とデマルチプレクサ47は、スイッチ・コアの
ファブリック30との間のセルの転送を同期化させるた
め、スイッチ・コアのポートから供給されるクロック信
号を使用する。
【0046】スイッチ・コアのポートは、それに関連付
けられる外部ポートの累積速度より若干速い速度で転送
動作を行う(上記外部ポートの外側はそのようにセット
されたクロック信号を局所クロック26から受け取
る)。このようにすることの1つの理由は、外部ポート
に接続するリンクの実際の速度をその公称値から変動す
ることができるようにするためである。スイッチ・コア
のポートのこのような速度超過は、入力FIFOが、満
たされるより速く空にされることを意味する。具体的に
は、あるFIFO41の内容量が、1つのセルに相当す
る量以下の場合、入力検出機構42はマルチプレクサ4
5に信号を送り、空セル挿入機構49をして空セルを生
成し適当な時間にコントローラへ送るようにさせ、入力
FIFOは再び収納を始める。反対に、出力FIFO4
3は空にされるより速く満たされる。これは、関連出力
検出機構44が関連するFIFO43の内容量が1つの
セルより多くなることを検出し、コントローラ33へ相
応の標識を送信することによって取り扱われる。この標
識を対応する外部ポートへセルを送信する準備をしてい
るコントローラ33が検知すると、コントローラは、外
部ポートへ空セルを送る。デマルチプレクサ47の機構
50はこの空セルを検出し削除するため配置され、FI
FO43は空にされる。
【0047】機構46と48に記憶されるポート・ロー
タによって確立される外部ポートのサービス順序を次に
考察すると、明らかに、より高速のポートは、より低速
のポートよりも一層頻繁にサービスを必要とする。一般
的意味において、最低速度のセル間隔が、ポート・ロー
タの全般的サイクル・タイムをセットするため用いら
れ、この最低速度のポートは、上記サイクル中一度だけ
サービスされることを必要とし、一方、より高速のポー
トは、2回以上のサービスを必要とする。図7は、図6
のアダプタ・カードに関する可能なポート・ロータを図
示している。関連するスイッチ・コアのポートの各セル
期間T毎に、ポート・ロータに従って、1つのセルが、
外部ポート(AからD)からスイッチ・コアのポート
へ、また、スイッチ・コアのポートから外部ポート(A
からD)へ、転送される。
【0048】プロセッサ プロセッサ装置24は、接続要求を受け取り、コントロ
ーラ33中のデータ構造を処理することによって、仮想
チャネル接続設定と管理を実行する。プロセッサはま
た、電源投入時にコントローラ・データ構造を初期化す
る。
【0049】これらの機能を達成するため、プロセッサ
装置24は、スイッチ・コアに対するインターフェース
を2つ有する。第1は、スイッチ・ファブリックのプロ
セッサ入力/出力ポートを通してのセル・インターフェ
ースであり、これにより、プロセッサがあたかもアダプ
タ・カード上の入力/出力ポートの1つに接続している
かのように、セルを送受信することが可能となる。
【0050】第2のインターフェースは、コントローラ
自体に直接かかわるもので(図4参照)、プロセッサが
コントローラの内部データ構造にアクセスすることを可
能とし、そのため、仮想チャネル・データを設定し修正
することができる。空のセルを受け取ったためコントロ
ーラがアイドル状態の間、プロセッサはコントローラに
アクセスする。十分な空セル(複数)が受け取られるこ
とを保証するため、スイッチ・コアは、入力/出力ポー
トに対処するため必要となる速度より若干(約10%)
速く動作し、この結果、アダプタ・カードFIFO41
は周期的にそのしきい値(1つのセル相当量)以下に内
容を減らし、空セル挿入機構49を動作させる。
【0051】プロセッサはコントローラのすべてのデー
タ構造に対し全面的なアクセスを行うが、セル本体共有
メモリへのアクセスは行わない。
【0052】初期化と接続を実行する際のプロセッサ装
置24の一般的動作は従来技術の既知の方法に従うもの
であるから、これ以上の説明は行わない。
【0053】コントローラの概念と概要外部ポート・ロータ どの外部(アダプタ・カード)ポートからセル・ヘッダ
が受け取られたかを知ることは、各ヘッダ中の(VPI
+VCI)情報がリンク単位でのみ特異であるため、コ
ントローラ33にとって不可欠である。従って、外部ポ
ート識別は、当該スイッチを経由の特定の通信に適切な
ものとしてセルを特異に識別するために必要である。コ
ントローラに適切な外部ポート識別を通知する1つの方
法は、アダプタ・カードが各セル・ヘッダにタグを付け
ることである。しかし、各アダプタ・カードがその関連
する外部ポートをサービスする順番とこれらのアダプタ
・カードが対応するスイッチ・コアのポートを通してサ
ービスされる順番の両方が、あらかじめ定められている
ので、本発明のコントローラでは別の方法を使うことが
可能である。従って、本コントローラにおいては、セル
・ヘッダに関連付けられる外部ポート識別は、ヘッダが
受け取られる時間を基にコントローラによって決定され
る。更に云えば、セル・ヘッダがスイッチ・コアに接続
するすべてのアダプタ・カードの外部ポートから受け取
られる順番を標示する外部ポート・ロータが取り出さ
れ、その後、コントローラ33とマルチプレクサ45
は、前述のグロ―バル初期化信号によって初期的に同期
化されているので、コントローラ33が、アダプタ・カ
ード・マルチプレクサ45の動作との調整を図りながら
このロータにアクセスする。外部ポート・ロータそれ自
体は、図5で示される(セル・ヘッダがスイッチ・コア
・ポートからコントローラに渡される順番を示す)スイ
ッチ・コア・ポート・サイクルと各アダプタ・カードに
関する外部ポート・サービス(図7参照)との組合せで
ある。この組合せは、対応するスイッチ・コア・ポート
がスイッチ・コア・ポート・サイクルに出現する度毎
に、アダプタ・カードに関し次のエントリを外部ポート
・サービス・サイクル上にとることによって実効を生じ
る。かくして、アダプタ・カードに接続するスイッチ・
コア・ポートP1を持つ図5のポート・サイクルを有す
るスイッチ・コアに関して、図5のサイクルでのポート
P1の連続的サービスは、図7のサイクルに従った外部
ポートAからEの連続的サービスと関連づけられる。
【0054】外部ポート・ロータは、当然、スイッチ・
コアに接続しているアダプタ・カードのポート構成に依
存する。このため、外部ポート・ロータは、スイッチの
動作開始時にプロセッサが各アダプタ・カードを調べて
その外部ポート・サービス・サイクルを見い出すことに
よって決定される。次いでプロセッサ装置24は、コン
トローラ33の適切なデータ構造60Aに上記ロータを
記憶し、コントローラが必要に応じてロータにアクセス
することができるようにする。
【0055】外部ポート・ロータは、それが受け取る新
しいセル・ヘッダ各々のソースをコントローラが判定す
るために必要とされるのみならず、外部ポートがスイッ
チ・コア出力を行うことができる所定の順序でヘッダの
出力を調整する(これは、ファブリック30およびアダ
プタ・カード上のデマルチプレクサ47の結合動作によ
って決定される)ためにも必要とされる。既に注記のと
おり、ポートが入力と出力に関しサービスされる順番は
必ずしも同じである必要はないが一般的には同じであ
る。本発明の場合においては、外部ポート・ロータの同
じ一般的形式が、入力と出力とに使用される。図8にお
いて外部ポート・ロータは60Aおよび60Bとして示
されている。
【0056】マスタVCNと出力VCN 本発明のスイッチにおける関連セルのフローを特異に識
別するため、仮想チャネル番号(VCN)がコントロー
ラによって使われる。どの入力仮想チャネルも"マスタ
VCN"と呼ばれるそれ自身のVCNを持ち、どの出力
仮想チャネルも、それ自身の"出力VCN"を持つ。従っ
て、本スイッチによる各ユニキャスト(単一キャスト)
接続に関しては、1つのマスタVCNと1つの出力VC
Nが存在し、一方、各マルチキャスト接続グループ毎
に、1つのマスタVCNと複数の出力VCNが存在す
る。ユニキャストについては、マスタVCNを出力VC
Nとしても使用する便法があり、マルチキャストの場合
でも、便法として、マスタVCNを出力VCNの最初の
1つとして使用することができる。
【0057】以下に詳しく述べるように、マスタVCN
は、セルを送り込む外部ポートの識別と組み合わせてセ
ル・ヘッダの(VPI+VCI)から取り出される。最
初に、コントローラ33に渡される各セル・ヘッダがそ
のマスタVCNを決定し(図8のブロック61参照)、
次に、このマスタVCNが、コントローラにおけるヘッ
ダの待ち行列を制御するために使われる。出力VCN
は、接続を設定する際にプロセッサ装置によって割り当
てられ、出力の待ち行列化とスケジュールを実行するた
めに使用される。出力VCNは、コントローラの適切な
データ構造においてその対応するマスタVCNと関連づ
けられ、そのため、両方向、すなわち、マスタVCNか
ら対応する出力VCNへと出力VCNを対応するマスタ
VCNへと、変換することが可能となる。
【0058】2つのコントローラ経路 図8に示されようにコントローラ33に2つの経路があ
る。1つは、セルの詳細(すなわち、各セルに関し、一
定のセル・ヘッダ・データと対応するセル本体アドレ
ス)を待ち行列に入れるための経路であり、他方は、コ
ントローラからのセル・ヘッダの出力を制御するため出
力VCNを待ち行列に入れ、スケジュールするための経
路である。
【0059】セル詳細経路−この経路は、セル・ヘッダ
のマスタVCNの探索の後、当該セルのセル詳細を記憶
できるかあるいは破棄すべきかをチェックするための監
視ブロック62と、セル詳細待ち行列ブロック63と、
出力されるべき次のヘッダに関するセル詳細をブロック
63から受け取り、(新しいVPI+VCIを探索する
ことを含み)新しいヘッダを生成し、その新しいヘッダ
と対応するセル本体のアドレスとを出力する出力ヘッダ
生成ブロック64とを含む。同じマスタVCNを持つセ
ル(すなわち同じVCソースからのセル)のセル詳細
は、ブロック63において記憶される同じリスト65の
待ち行列にすべて入れられる(各セルのセル詳細はそれ
ぞれのリスト・エントリとしてリスト65に記憶され
る)。リスト65は接続の設定の際プロセッサ装置によ
って空のリストとして作成される。各リスト毎に、セル
詳細入力制御66は、リストの最後部(エントリが追加
される場所)をポイントする作成者ポインタ67と、リ
スト65が空であるか否かを示す空きフラグとを維持す
る。
【0060】各リスト65の先頭には、当該マスタVC
Nに関する到来セル・ストリームに関してなお送出され
るべき最古のセル詳細についてのセル詳細エントリがあ
る。ユニキャストVCの場合は、先頭リスト・エントリ
は、唯一の出力VCのため出力されるべき次のセルを識
別する。この先頭エントリは、セル詳細出力制御69に
よって当該出力VCNのため記憶される使用者ポインタ
68によってポイントされる。マルチキャストの場合
は、当然各入力ストリーム毎に複数の出力VCがあり、
セルを出力する際に対応するリスト65に応じて、各出
力VC毎にその進行を追跡することが必要である。これ
は、各出力VCNに関連付けられるそれぞれの使用者ポ
インタ68を供給することによって達成される。実際
に、それぞれのセル詳細待ち行列70が、各出力VCN
に対して保持され、この待ち行列70は、対応する使用
者ポインタ68によってポイントされている待ち行列の
先頭と、当該マスタVCNに関する作成者ポインタによ
ってポイントされている待ち行列の最後部とを持つリス
ト65へマップされる。各マスタVCNに関連付けられ
るそれぞれのセル詳細リスト65と、出力VCNに関し
リスト65上へマップされるそれぞれの待ち行列70を
持つというこの概念は、セル詳細待ち行列ブロック63
の動作において重要なものである。
【0061】待ち行列70の先頭エントリが出力制御6
9によって出力され、その結果対応する出力VCNのセ
ルが出力されると、待ち行列70に関する使用者ポイン
タ68は、待ち行列からそのエントリを除外するように
更新される。リスト65の先頭エントリが、リストにマ
ップされるすべての待ち行列70から除外されると、こ
のエントリは解放され、対応するセル本体アドレスが出
力制御69によって空きアドレス・リスト32上に戻さ
れる。
【0062】出力VCN送出制御経路−適切な外部スイ
ッチ・ポートを通して本発明のスイッチからセルを出力
する順序は、出力仮想チャネルに関して設定された出力
VCNを基に動作する送出制御経路によって決定され
る。以下にさらに詳細に説明するが、リスト65が空き
から空きでない状態へ変化するときにかならず待ち行列
ブロック63の入力制御66によってそれ自身始動され
る出力VCN送出始動ブロック82によって、出力VC
Nはこの経路へ導入される。ブロック82を始動するこ
とには、当該リストのマスタVCNを当ブロックに渡す
ことが含まれる。始動ブロック82は、このマスタVC
Nを該マスタVCNに関連する出力VCNに変換する。
これらの出力VCNは、直前に空でなくなったリスト6
5にマップされる待ち行列70を有するVCNである。
従って、これら出力VCNは、セルが送出可能な状態と
なった仮想チャネルを表す。始動ブロック82は、送出
制御経路へ(特に資格制御ブロック77へ)これら出力
VCNを導入する。一旦出力VCNがこの経路に導入さ
れたならば、その出力VCNは、対応するセル詳細待ち
行列70が当該出力VCNに関して送出すべきセルがな
くなったことを示すまで、周期的にセルの送信を促進し
ながら経路の中を循環する。
【0063】送出制御経路の主要部分は、資格制御ブロ
ック77とスケジュール・ブロック75である。セル出
力の実際のスケジュール決めは、各外部ポートに関する
それぞれの待ち行列構造(ブロック76参照)を維持す
るケジュール・ブロック75によって実行される。これ
ら待ち行列構造の各々は、対応する外部ポートに関連づ
けられ、少くとも1つのセルが送出できる状態にあるす
べての出力仮想チャネルの出力VCNを待ち行列に入れ
るために使用される。仮想チャネルは、(後述の"停止
ビット"により一時的に送出が禁止されていない限り)
対応する待ち行列70中に少なくとも1つのエントリが
あり、また、該仮想チャネルが(下記に説明されるよう
に)送出のためのクレジットを、そのようなクレジット
が必要な場合、有しているならば、送出資格のある1つ
または複数のセルを持つ。
【0064】出力仮想回路が1つ以上の送出有資格セル
を持つ時点を判定し、そのように判定したとき、該当す
る待ち行列構造に入れるためスケジュール・ブロック7
5へ対応する出力VCNを渡すのは、資格制御ブロック
77の仕事である。従って、これら待ち行列構造は、"
有資格の"出力VCNを待ち行列に入れる構造とみなす
ことができる。有資格の出力VCNを適切な待ち行列構
造上に入れることは、各出力VCNに関し適切な待ち行
列構造の識別情報をブロック77のテーブル81に記憶
することによって行われ、この情報は、各出力VCNと
ともにブロック75へ渡される。
【0065】資格制御ブロック77と関連ブロック8
0、82の動作は、更に後述されるが、ここで、スケジ
ュール・ブロック75の待ち行列構造に有資格出力VC
Nが格納されたと仮定する。
【0066】スケジュール・ブロック75には、外部ポ
ート・ロータ60への同期アクセスを通してファブリッ
ク30およびアダプタ・カードのデマルチプレクサの動
作でその動作が調整されるスケジュール機構78が含ま
れる。スケジュール機構78は、ロータ60の適切なス
ロットにおける各外部ポートに関する出力VCN構造を
検査し、該構造に関しもっとも高い優先度を持つ(もし
あれば)VCNを、セル詳細待ち行列ブロックの出力制
御69へ出力する。次いで出力制御69は、当該VCN
に関する使用者ポインタ68を使用して、対応するセル
詳細待ち行列70の先頭にあるセル詳細エントリにアク
セスし、それら詳細を新しいヘッダが生成される出力ヘ
ッダ生成ブロック64へ渡す。同時に、出力制御69
は、当該VCNに関する使用者ポインタ68を対応する
リスト65における次のエントリをポイントするように
更新する。
【0067】ある1つの出力VCNは、対応するVCに
関し出力有資格セルがいくつあるかにかかわらず、当該
外部ポートにとって適切な待ち行列構造76においてた
だ一度だけ出現する。スケジュール機構78がVCNを
出力する度毎に、それは、対応する待ち行列構造から取
り除かれる。出力制御69は、セル詳細を出力VCNに
出力すると、この出力VCNを資格制御ブロック77に
渡す。これにより、この資格制御ブロック77は、その
出力VCNに関するクレジット(credit)を減分するこ
とができ、同時に、出力制御69は、対応するセル詳細
待ち行列に送出する準備のできているセルが更に1つま
たは複数あると判断すれば、"送信セルあり"標識の送信
によって資格制御ブロック77にそれを通知する。資格
制御ブロック77が、更新(減分)後なおこの出力VC
Nに関し記録された送出クレジットを有する場合(また
はクレジットが不要の場合)、出力VCNは、スケジュ
ール・ブロック75へ戻され、そこで、対応する待ち行
列に再度入れられる。しかし、もし送信クレジットが
(必要ではあるが)直ちに使用可能でない場合、資格制
御77ブロックは、スケジュール・ブロック75へ出力
VCNを渡す前に、クレジット付与ブロック80からそ
のようなクレジットが渡されるのを待つ。各出力VCN
のクレジット状態は、資格制御ブロック77によって維
持されるテーブル81に保持される。
【0068】もしも出力制御69が、特定の出力VCN
に関するセル詳細を出力した後に、対応する待ち行列7
0が空であると判断すれば、資格制御ブロック77へ"
送信セルあり"標識を渡さない。しかし、もしも、同時
に、対応するリスト65に残存エントリがない(該リス
トに関係するすべの待ち行列70が空にされた)と出力
制御69が判断するならば、該リストに関し空きフラッ
グがセットされるように、信号を入力制御66に送る。
【0069】新しいセルが特定の出力VCNの待ち行列
70に到着したことを始動ブロック82によって資格制
御ブロック77が通知されると、これらの出力VCNの
各々は、出力制御69が該出力VCNに関しいかなる有
資格セルも存在しないと判断するまで、ブロック77と
スケジュール・ブロック75と出力制御69を巡回する
という点がこれまでの説明から明らかである(出力VC
N(複数)が各エントリに関するスケジュール決めを待
っている間に新しいエントリ(複数)が関連待ち行列7
0に追加される点が認められるであろう)。使用可能な
送出クレジットが存在しないことによってこのプロセス
は一時的に停止されるかもしれないが、新しいクレジッ
トが使用可能になり次第、プロセスは再開される。
【0070】出力VCNが(使用可能エントリがその待
ち行列70にないため)巡回を停止すると、送出のため
の再スケジュールが行われるまで、該出力VCNは、始
動ブロック82による送出制御経路への再導入を待たな
ければならない。
【0071】サービス特性 本発明のスイッチは、以下の3つの異なるサービス特性
の接続を提供する。 −最大待ち時間が小さい保証された帯域幅(GB0) −最大待ち時間がより大きい保証された帯域幅(GB
1) −最善努力(BE) スケジュール・ブロック75における各外部ポート待ち
行列構造(76ブロック)は、実際に(各サービス品質
について1つの)3つの待ち行列を含み、各有資格出力
VCNが、該当する待ち行列に加えられる(この待ち行
列の識別情報は資格制御ブロックのテーブル81に保持
され、出力VCNとともにブロック75に渡される)。
この結果、各サービス・クラスの範囲内で公平な待ち行
列方法が使用されることとなる。図9は、スケジュール
・ブロックによって維持される外部ポートの出力VCN
待ち行列を図示し、ポート0と記号が付けられた外部ポ
ートの場合外部ポート毎に3つの待ち行列が付与されて
いることを示している。ロータ60の対応するスロット
における外部ポート待ち行列を検査する度毎に、スケジ
ュール機能78は、もっとも高い優先度の空でない待ち
行列の先頭の出力VCNを取り出す。ここで、待ち行列
の優先順序は、GBO、GB1、BEである。
【0072】保証された帯域幅サービスに関しては、適
切な量の共有メモリ31が、そのサービスに応じて各入
力VCのために予約され、さらに、クレジット制御方式
がトークン・バケット(複数)に基づいて操作される。
保証された帯域幅ソースがその保証を越えると(すなわ
ち、スイッチが処理を保証した以上に単位時間あたりの
セルを帯域幅ソースが作成すると)、資格制御ブロック
は、一時的にそのVCNに関するセルの送出(定形出
力)を停止させるか、または、最善努力接続(非定形出
力)として一時的に接続を処理する。
【0073】最善努力型トラフィックは、フロー制御が
行われることも行われないこともある。フローが制御さ
れるトラフィックの場合、メモリの固定量が各入力VC
に割り当てられ、このメモリの空き量に基づいて、クレ
ジットが上流ノードに発行される。各出力VCNに関し
て、下流ノードが発行したクレジットの計数が維持され
る。この上流/下流クレジット制御は、フロー制御ブロ
ック85によって管理され、フローが制御された出力V
CNに関するクレジット計数が、資格制御ブロック77
によって現行ノードに保持される。このクレジット計数
がゼロになると、資格制御ブロックはVCNが対応する
スケジューラ待ち行列に渡されるのを止め、それによっ
て伝送を停止させる。
【0074】フローが制御されない最善努力型接続は、
それら接続に任意の量のメモリを割り当てるとができ
る。もしも出力に関し競合があってこのメモリが費消し
てしまう場合、セルは破棄される。
【0075】マルチキャスト、空きフラグおよび停止ビ
ット 上述の通り、マルチキャスト(1つの入力VCに対する
複数の出力VC)の場合、対応するセル詳細リスト65
は、そこへマップされるいくつかの(各々が特定の出力
VCNに対応する)待ち行列70を有する。やはり上述
の通り、待ち行列ブロック63に対する出力制御69
は、リスト65に関連するすべての待ち行列70が空に
なるまで、リスト65の空きフラグをセットさせない。
この理由は、そのセル詳細がリスト65上で待ち行列に
入れられるべき新しいヘッダの到着に応じて空きフラッ
グをセットから非セット状態へ変化させることにより、
入力制御66が送出始動ブロック82を始動させ、その
結果、リストに関連したすべての出力VCNが送出制御
経路に導入されることとなるためである。もしもあるリ
ストの空きフラグがただ1つ空きとなる関連待ち行列に
セットされたとすれば、いくつかの出力VCNがまだ経
路にある時点で、送出始動ブロック82が始動され、出
力VCNを送出制御経路に導入することとなり、この結
果、不公平な出力スケジュールが行われる。
【0076】スイッチ動作の間に、新しいリスト・エン
トリが以下の時間の間に追加されることが起こり得る。 (i)リスト65の先頭エントリが関連する出力VCに関
するセル・ヘッダを出力するため使用された後、この先
頭エントリを待ち行列70から取り除くための使用者ポ
インタ調整に続いて待ち行列の1つが空となる時、およ
び、(ii)エントリがその待ち行列に関連した出力VCに
関するヘッダを出力するために使われた後、使用者ポイ
ンタ調整によって取り除かれたものと同じリスト・エン
トリを別の待ち行列が持つ時。このような状況におい
て、上記の待ち行列の2番目は、第1の待ち行列を空に
させたエントリを取り除くとき空ではなく、すべての他
の待ち行列が空であっても、空きフラグは、出力制御6
9によってセットされない。このような状況では、空に
なった待ち行列がスケジュール決めプロセスに再び入る
機会を持つことができないことは明白である。なぜな
ら、上記の空でないリストを常に空でないままにしなが
ら、新しいセル詳細エントリを該リストに追加し続ける
ことができるからである。ある特定の入力VCへ割り当
てられるメモリの量には限りがあるので、当然セルは失
われるであろう。
【0077】この問題を回避するため、リスト65の各
セル詳細エントリは関連する"停止ビット"を持つ。マル
チキャストの場合において、もし、待ち行列70が空に
なると、出力制御69は、先頭エントリ(すなわち空き
待ち行列から直前に取り除かれたエントリ)の停止ビッ
トをセットする。このエントリを取り除く同じリスト上
の他の待ち行列に関して(そのエントリに基づくセル・
ヘッダが関連出力VCNに関し送出されたため)、対応
する出力VCNは、資格制御ブロック77へ戻されな
い。すなわち、待ち行列は、効果的に"停止"される。し
かし、すべての待ち行列が、停止ビットのセットされて
いるエントリを使用したとき、そのエントリは取り除か
れ、VCN送出始動ブロックが、出力制御69によって
始動され(図8の「停止解除」始動参照)、対応するマ
スタVCNがすべての関連するVCNを送出制御経路に
再導入する。
【0078】出力VCN送出始動ブロック 始動ブロック82の一般的機能性は既に記述したが、こ
の時点でいくつかの点を追加することは意味があろう。
ブロック82は、マルチキャスト拡張機構83と出力回
路84を含む。マルチキャスト拡張機構83は、特定の
マスタVCNについて始動される時該特定マスタVCN
に対応するすべての出力VCNを使用可能にするように
設計される。マルチキャスト拡張機構83は、ある接続
が設定または終了される度毎にプロセッサ装置からの適
切なデータを用いてプログラムし直され、そのため、そ
れは継続的に最新に更新され、すべての現時点マスタV
CNを対応する出力VCNに関連付けることができる。
拡張機構83によって使用可能とされる出力VCNは、
出力回路84によって資格制御ブロック77へ1つずつ
渡される。
【0079】始動ブロック82は、他のものを受け取る
前に処理を完了する必要はないが、受け取るすべての始
動要求を受容できるような方法で実施される。これは、
例えば、始動信号のための入力FIFOを含めることに
よって、または、おそらく出力VCN FIFOを備え
持つことによって実施できる。一般的には、必要とされ
ることは、資格制御ブロックへの転送のような出力VC
N動作にブロック82が影響を与える必要がある場所の
上流地点にFIFOバッファ機能を具備することであ
る。
【0080】ブロック83が始動されるこのような構成
および環境の重要性は、マルチキャスチング固有の拡張
機能が、コントローラにかかわる処理ひずみの発生を最
小にとどめるような方法で取り扱われることである。か
くして、各マスタVCNと出力VCNはブロック83に
おいてただ一度だけ出現し、これにより、とくに効率的
なメモリの活用が可能となる。さらに、いかなる特定の
始動に関連した出力VCN毎の処理も、次の始動を受け
取る前に完了する必要はない。
【0081】マスタVCN探索ブロック 本発明は、扱いやすいマスタVCNの生成に関し、した
がって、マスタVCN探索(ルックアップ)ブロックに
ついて、以下に詳しく述べる。
【0082】既に説明のとおり、セルがスイッチ・コア
に到着すると、そのヘッダは、コントローラ33に渡さ
れ、そこで、先ずマスタVCN探索ブロック61によっ
て取り扱われる。ブロック61における受領時点で、ヘ
ッダは、以下のフィールドから構成される。 −一般フロー制御(GFC)、4ビット −仮想経路識別子(VPI)、8ビット −仮想チャネル識別子(VCI)、16ビット −ペイロード・タイプ(PT)、3ビット −AAL5接続がパケットの終了(EOP)を形成する
ためのビット、1ビット。 注:ヘッダの5番目のバイトのヘッダ・エラー・チェッ
ク(HEC)が該当するアダプタ・カードにおいて既に
検査されたので除去されている。HECがエラーのと
き、当該セルは、空(VPI=VCI=0)としてマー
ク付けされることとなる。
【0083】セル本体アドレスは、また、対応するセル
・ヘッダとともに、VCN探索ブロック61に渡され
る。以下の動作が、ヘッダに関してブロック61によっ
て実行される: −セルのVPIとVCIがゼロにセットされているなら
ば、そのセルは破棄される。この破棄は、セル本体アド
レスを空きアドレス・リスト32に戻すことによって実
行される。 −GFCが破棄される。 −PTとEOPが、セル本体アドレスとともに記憶され
るために取り出され、出力ヘッダが正しく生成される。
これらの項目を以下"セル詳細"と呼ぶ。 −VPIおよびVCIをセルが受け取られた外部ポート
を識別する番号(ポート番号)と連結し、セルが関連す
る接続のための特異な識別子(本明細書では長いチャネ
ル識別子と呼ぶ)を作成する。次に、この長いチャネル
識別子を用いて、セルに関連するマスタVCNを探索す
る。
【0084】上記4番目の機能はブロック61の主要な
機能であり、以下で更に詳細に説明する。あるセルに関
し長いチャネル識別子を取り出すために使われるVPI
とVCI情報は、セル・ヘッダから直接用いられる。セ
ルが受け取られた外部入力ポートを識別するポート番号
は、本実施例においては、外部入力ポート・ロータ60
Aから取り出される(各外部ポートは、関連する特異な
番号を持って上記ロータに記録されている)。
【0085】一旦入力ポート番号が得られたならば、そ
の入力ポート番号は、VPIとVCIに連結され、約3
0ビットの長さの長いチャネル識別子となる(その正確
な長さは、スイッチが持つことができるポートの数に依
存する)。次いで、この番号は、セルが関連する接続の
マスタVCNを見出すために使われる。
【0086】この長さの識別子を用いて単純な探索を行
うことは非実用的であるので、多段式探索プロセスが使
われる。探索プロセスは、以下のステップを含む: 1.長いチャネル識別子(VPI+VCI+ポート番
号)は、スクランブラ90においてスクランブルされる
(図10参照)。スクランブラは、線形フィードバック
・シフト・レジスタに基づくもののような標準形式のも
のでよく、そこでは、スクランブル結果の出力ワードを
与えるためワード長だけシフトされる線形フィードバッ
ク・シフト・レジスタに関するシード(種)ワードとし
てチャネル識別子が使われる。 2.スクランブルされた長いチャネル識別子が、スプリ
ッタ91によって2つの部分に分割される。一つの部分
(上方部分)は、"高位テーブル"92において"行イン
デックス"を探索するために使われ、他方の部分(下方
部分)は、"低位テーブル"93において"列インデック
ス"を探索するために使われる。 3.次に、"行インデックス"と"列インデックス"は、マ
スタVCN(複数)を含む2次元テーブル94にアクセ
スするために使われる。 4.最後に、チェック・テーブル95において長いチャ
ネル識別子を探索するためにマスタVCNが使われ、こ
の識別子は、すべてが順当に動作するならば、ステップ
1で使われたであろうものに相当する。探索された識別
子は、比較器95において実際のオリジナルの長いチャ
ネル識別子と比較され、ステップ1から3のプロセスが
間違った結果を与えなかったかがチェックされる(もし
も誤りがあれば、セル本体アドレスを空きアドレス・リ
ストに加えることによってセルは破棄される)。
【0087】上記探索プロセスのステップの各々を実行
する理由は、次に述べる通りである。 ステップ1. 同一のリンクからのセルに関する最も長い
チャネル識別子(複数)が同等の上位部分(たぶんゼ
ロ)を有することがあり得るため、長いチャネル識別子
をスクランブルする必要が起きる。従って、長いチャネ
ル識別子がスクランブルされなければ、それらはすべ
て、高位テーブル92における同一のインデックスにイ
ンデックス付けし、これにより、マスタVCNテーブル
94のただ1行だけが使われることとなる。スクランブ
ルによってすべての識別子間で差がつけられ、そのた
め、行および列のテーブルの利用度が向上し、マスタV
CNテーブルがいっそう効率的に使用されることとな
る。
【0088】ステップ2. 30ビット長の番号を調べる
ことは非実用的であるが、15ビット長い番号を調べる
ことは実用的であるので(32Kビット長のエントリ・
テーブルが必要とされる)、スクランブルされた長いチ
ャネル識別子は、半分に分割される。番号をさらに小さ
く分割すると、3つの1Kビット長のテーブルになり、
これは一見魅力的ではあるが、作成されるテーブルが多
数のVCをサポートするには小さすぎるので、この選択
は、特殊な状況の場合にのみ適切である。
【0089】ステップ3. 高位と低位テーブルの2つの
探索結果は、接続を特異に識別するけれども、テーブル
上に散在しているので、それらテーブルはマスタVCN
テーブルにインデックスを付けるために使われる。これ
は、マスタVCNテーブルが約4分の1以上使われる
と、プロセスが充分に動作しないことによる。従って、
高位と低位テーブルの結果を使用することは、VCN空
間をそうあるべきよりも4倍広くするものであり、コン
トローラの残りのVCN当たりデータ構造のすべてのメ
モリ要求を増加させることを可能ならしめる。
【0090】ステップ4. 設定されなかったVC(複
数)にもセルが到着することがあり得るので、長いチャ
ネル識別子チェックが実行される。チェックが実行され
ず、そのようなVCが偶然有効なマスタVCNにインデ
ックス付けした場合、それらセルは、あたかもそれらが
そのマスタVCNに対応するVC上に到着したかのよう
に取り扱われるであろう。
【0091】前述の探索プロセスは、大量のVCNの迅
速な探索を低コストのハードウェアで実行することを可
能にする。例えば、最高64個の外部ポートに関連付け
られる8000個のマスタVCNは、32Kx8の高位
テーブル、32Kx8の低位テーブル、64Kxl3の
マスタVCNテーブルおよび8Kx30のチェック・テ
ーブルを必要とする。
【0092】あるVC接続が設定されると、プロセッサ
装置24は、マスタVCN探索ブロック61の各種テー
ブルに収納するエントリの数を計算する。以下の例から
分かるように、プロセッサ装置24は、高位テーブルと
低位テーブル92、93に入れるエントリを選ぶ自由度
は一般的に限られている。一方、テーブル94に挿入さ
れたマスタVCNの値は、既存の値と衝突しない限り、
プロセッサ装置によって自由に選ぶことができる。テー
ブル92および93を設定する際、プロセッサ装置は、
特定のVCが、以前に設定されたVCと衝突せずに、最
初に、既存のテーブルに入ることができないことを見い
出す場合がある(特に、新しいVCのスクランブルされ
た長いチャネル識別子と前のVCが両方とも同じマスタ
VCNテーブル・エントリにマップされる場合)。この
場合、プロセッサ装置は、衝突をなくすために、マスタ
VCNテーブル94を変更することを試みる(以下に詳
しく述べる)。これができない場合は、衝突がこれ以上
ないように新しいテーブルを生成するために、スクラン
ブラ90によって使用されるスクランブル機能を変更す
るようにプロセッサ装置24が準備される。この動作を
支持するために、高位テーブル、低位テーブル、および
マスタVCNテーブルは二重バッファになっていて、プ
ロセッサ装置が1つのテーブルを書きかえている間、別
のテーブルで探索が続けられる。
【0093】図11ないし図20を参照して、新しいV
Cを加えるために、テーブル92ないし94を設定する
ためにプロセッサ装置24が用いる一般的処理について
述べる。この処理は、スクランブルされた長いチャネル
識別子が2つのヘキサデシマル・ディジットとして表さ
れた8ビット長の単純な例を用いて述べる。これらのデ
ィジットは、それぞれが16のエントリを持つ高位テー
ブル92および低位テーブル93をアクセスするために
使われる(図11を参照)。マスタVCNテーブルの大
きさは、それぞれ1から4まで番号をつけた4行4列に
なるように選択されている。理解を容易にするために、
マスタVCNテーブル94の塞がったエントリに挿入さ
れたマスタVCNは、高位及び低位両テーブルをアクセ
スするのに使われるスクランブルされた長いチャネル識
別子と同じものとしてある。これから説明する例は相対
的に単純なものであるが、この例が示す動作は、より大
きな高位、低位、およびマスタVCNテーブルによって
サポートされるより大きなマスタVCNに使うことがで
きる。
【0094】記述を簡潔にするために、以下の例では、
高位テーブル、低位テーブルをアクセスするために分割
された、スクランブルされた長いチャネル識別子は"V
CID"と呼ぶ。さらに、マスタVCNおよびマスタV
CNテーブル94を参照する際は、あたまの"マスタ"は
省略する。
【0095】図11に示した例は、1つのVCID、B
6のために構成されたテーブルを示す。VCIDが与え
られると、VCIDは半分に分割され、Bは行の2を与
えて高位テーブルをインデックスするのに使われ、6は
列3を与えて低位テーブルをインデックスするのに使わ
れる。高位テーブルから行の値2、および低位テーブル
から列の値3(エントリ位置の値が2、3になる)を使
ってVCNテーブル94においてVCNが探索(ルック
アップ)され、このVCNについてB6という値が見つ
かる。
【0096】新しいVCIDを加えるとき、可能性とし
て以下の4つのケースがる。 1. VCIDによって参照される高位テーブルおよび
低位テーブル両方のエントリが空である場合。 2. 高位テーブルのエントリは塞がっていて、低位テ
ーブルのエントリに空がある場合。 3. 高位テーブルのエントリに空があり、低位テーブ
ルのエントリが塞がっている場合。 4. 高位テーブルも低位テーブルもエントリがいっぱ
いである場合。 これらのケースの各々について順番に説明する。
【0097】1. VCIDによって参照される高位テ
ーブルおよび低位テーブル両方のエントリが空である場
合。この場合、プロセッサ装置24は、VCIDのそれ
ぞれの半分によってアクセスされた高位テーブルおよび
低位テーブルのエントリに挿入した行の値および列の値
を選ぶことができる。この選択をする際に、プロセッサ
装置は、先ず、VCNテーブルの中の最も満ちていない
行を見つけ、この行番号を高位テーブルに挿入する。こ
の行の中で、行に空きのエントリを持つ最も満ちていな
い列が選ばれ、その列番号が低位テーブルに挿入され
る。ケース1の状況の例は、図12に示すように、8D
というVCIDが図11の例に加えられる。この結果、
位置(1、1)が選ばれる。このケースでは、VCNテ
ーブルがいっぱいでない限り、この処理はしくじること
はない。
【0098】2。高位テーブルのエントリが塞がってい
て、低位テーブルのエントリに空がある場合。この場
合、使える行は、高位テーブルに既にあるエントリによ
って固定されている。プロセッサ装置は、低位テーブル
に入れるべき列の値を、テーブル94の行に空きのエン
トリがあり使われ方が最も少ない列を探すことによっ
て、選択する。このケース2は、図12の例に8Cとい
うVCIDが加えられたときに起こる。この結果、図1
3に示すように、位置(1、2)が選択される。この処
理は、行がいっぱいのときには実行できない。しかし、
実際には、常にエントリは最も満ちていない行に加えら
れるので、行がいっぱいになることはなく、通常、この
ようなことは起こらない。それにもかかわらず、そのよ
うなことが起こる場合は、対象としている行のエントリ
を空けるためにテーブルを再整理することによって対処
できる。
【0099】3。高位テーブルのエントリに空があり、
低位テーブルのエントリが塞がっている場合。このケー
スはケース2と同じように処理されるが、相違点は、列
が固定され行が選択される。このケースは、VCID
D6が図13の例に加えられるときに起こる。この結
果、図14に示すように、位置(3、3)が選択され
る。
【0100】4。高位テーブルも低位テーブルもエント
リがいっぱいである場合。このケースは、図14の例に
VCID BDが加えられたときに起こる。行および列
が、高位及び低位両テーブルに既にあるエントリによっ
て固定されている。これは、図15に示すように、位置
(1、2)を使わなければならないことを意味する。
【0101】しかし、この動作は、位置(1、2)が空
いていたので可能であった。これは、図16の新しい例
にVCID 2Aを加えようとする例からわかるよう
に、必ずしも可能というわけではない。このエントリ
は、高位テーブルと低位テーブルのエントリが位置
(1、3)を指すが、この位置は既に塞がっているの
で、加えることができない。このケースの解決方法は、
エントリ24(占領エントリと呼ぶ)を動かすことであ
る。しかし、占領エントリの行を変えることではこの問
題は解決できない。というのは、占領エントリのVCI
Dの上位半分は、挿入しようとするVCIDの上位半分
と同じであるからである。したがって、低位テーブルの
エントリ4に記憶されている値を変えることによって、
占領エントリの列を変えなければならない。この値は、
全てのVCNのためのスペースを持つ、このエントリ
(この場合24と84)が指す最も満ちていない列を指
すように変えられる。再整理して2Aを加えた後の結果
を図17に示す。
【0102】行だけを動かすことができる場合にも同様
の状況が起きる。また、占領エレメントのある行または
列のどちらかを変える状況を得ることも可能である。そ
のようなケースが図18に示されており、VCID 2
Aを加えるとき、テーブル94の既存のエントリVCI
D 34と衝突が起こる。この場合、衝突するVCID
の高位テーブルあるいは低位テーブルの部分が同じでな
いことに留意されたい。
【0103】これらの4つのケースのいずれにおいて
も、占領エレメントを動かす先に空いた正しい位置を持
つ行あるいは列がないために、再整理をしてもうまくい
かない可能性がある。そのような例を、VCID 2A
を加えようとするケースとして、図19に示す。この例
では、位置(1、3)で、新しいVCIDが既存のVC
ID 24と衝突を起こす。衝突しあうVCIDが高位
テーブルの同じ参照(2)を持つので、占領エントリ2
4の低位テーブルのエントリ(すなわち低位テーブルの
エントリ4の値)を変更しなければならない。しかし、
この例では、行1および4(これらの行は、低位テーブ
ルのエントリ4を通して参照しなければならない列の、
既存の塞がった行である)に空きの列がないので、低位
テーブルのエントリ4のポインタを変更できない。この
状況は、占領エレメント(24)を外し、加えるべきエ
レメント(2A)で置き換え、占領エレメントがもとに
戻れるようにテーブルを再整理することによって処理で
きる。この動作の結果として、その列の別のエレメント
を動かすので、うまくいく可能性がある。この例では、
エントリ24を外し2Aを加えた後、低位テーブルのA
にあるエントリを(3)から(2)に変更する。これが
できるのは、テーブル94の列2の第1および第2の行
が空で、低位テーブルのエントリAの値を変更すること
によって動かされたエントリ2Aおよび4Aを受け取る
ことができるからである。この変更が行われた後、図2
0に示すように、エレメント24は、もとの場所に再び
挿入される。
【0104】図21に、新しいVCIDのためにテーブ
ル92ないし94を更新しようとするときに、プロセッ
サ装置24によって実行される上述の処理を流れ図で示
す。流れ図で、"H−T"、"L−T"、および"VCN−
T"は、それぞれ、高位テーブル、低位テーブルおよび
マスタVCNテーブルを表す。
【0105】図21の流れ図で、最初のステップ100
で、高位テーブルおよび低位テーブルをチェックして、
新しいVCIDによって参照されるこれらのテーブルの
位置が既に塞がっているかどうかを調べる。ステップ1
01、102、および103は、上述したケース1、
2、および3の処理に対応するものである。残りのステ
ップ104ないし110は、上述のケース4の処理に対
応するものである。とくに、ステップ104でVCNテ
ーブルに衝突があるかが調べられ、衝突がある場合には
ステップ105が実行され、新しい占領VCIDが、同
じ高位テーブル参照あるいは低位テーブル参照を持って
いるかが判断される。ステップ106、107、および
108は、占領エントリの行/列を再整理しようとする
ための処理である。この手法が実行できない場合(ステ
ップ109)、ステップ110が実行され、占領エント
リは除かれ、新しいエントリが挿入され、再整理が行わ
れ、除かれた占領エントリはもとに戻される。
【0106】プロセッサ装置24は、ソフトウェア制御
の下に、図21の処理を遂行することが出来るが、速い
実行を確実にするためには、これらの処理の全部あるい
は部分を、適切なハードウェア手段を用いて具体化する
こともできることを理解されたい。
【0107】また、上記の説明では、ただ2個の探索キ
ーがスクランブルされた長いチャネル識別子から得られ
たが、そのようなキーをK個(Kは2以上)提供できる
ことも理解されたい。この場合、マスタVCNテーブル
はK次元のテーブルになり、K個のキーを使ってK個の
インデックスを求め、これらのK個のインデックスを使
ってテーブルがアクセスされる。
【0108】さらに、上述したコントローラの概念の多
くは、セル(固定長パケット)を扱うシステムはもちろ
んのこと、可変長パケットを持つ、パケットに基づくシ
ステムにも適用できることを理解されたい。
【0109】本発明には、例として次のような実施態様
が含まれる。 (1)少なくとも1つの入力ポートを通して受け取られ
たパケットに関して予定の機能を実行するパケット処理
装置であって、各パケットは、パケットを受け取った該
装置の入力ポートに対して、該パケットに関連する仮想
チャネルを特異に識別するチャネル・ラベルを持ち、前
記装置は、受け取った各パケットについて、該パケット
に関連する仮想チャネルおよび入力ポートの組合せを特
異に識別するマスタVCNと称する識別子を提供するV
CN提供手段と、前記VCN提供手段によって提供され
たマスタVCNに依存して各パケットに関して前記の予
定の機能を実行する処理手段と、を備え、前記VCN提
供手段は、各パケットに対し、パケットを受け取った入
力ポートを識別するそれぞれのポート・ラベルを生成す
るポート識別手段と、パケットに関連するチャネル・ラ
ベルおよびポート・ラベルを結合して出力される長いチ
ャネル識別子を生成する結合手段と、前記結合手段の出
力を予定の方法で分割し、Kが2以上の整数であるK個
のキーを提供するキー提供手段と、前記のK個のキーが
適用されるテーブル探索手段と、を有し、前記テーブル
探索手段は、パケットに関連するK個のキーの各々を、
それぞれ対応するより短いインデックスに変換するそれ
ぞれの変換手段と、それぞれのマスタVCNを保持する
位置を持つK次元のマスタ・テーブルであって、対象と
するパケットのマスタVCNを提供するために、同一パ
ケットから得られたK個のインデックスが、対応するマ
スタ・テーブルの位置をアクセスする役割をするように
した、K次元マスタ・テーブルと、を有する、パケット
処理装置。
【0110】(2)前記結合手段が、前記長いチャネル
識別子が出力される前に、該長いチャネル識別子をスク
ランブルするように動作する、上記(1)に記載の装
置。 (3)前記パケットの各々がATMセルで、該ATMセ
ルに含まれた前記チャネル・ラベルが仮想経路標示およ
び仮想チャネル標示を有する、上記(1)に記載の装
置。
【0111】(4)VCN提供手段がさらに、前記テー
ブル探索手段によって提供されたマスタVCNの正確さ
を確認する確認手段を有し、前記確認手段が、各マスタ
VCNを、前記マスタVCNを提供するときに使われる
はずであった前記長いチャネル識別子の少なくともあら
かじめ定められた部分に関連させ、マスタVCNが供給
されたときに前記の少なくともあらかじめ定められた部
分を出力する、チェック・テーブル手段と、前記チェッ
ク・テーブル手段の出力を、チェック・テーブル手段に
供給されたマスタVCNを提供する際に実際に使われた
長いチャネル識別子の対応する部分と比較し、比較の結
果の標示を出力するように動作する比較手段と、を有す
る、上記(1)に記載の装置。
【0112】(5)前記装置が、前記VCN提供手段を
含むコアと、複数の前記入力ポートを提供し、前記入力
ポートで受け取られたパケットをマルチプレクスし、あ
らかじめ定められたタイミングに従ってパケットを前記
コアに渡すマルチプレクサ手段を含む外部インタフェー
ス手段と、を備え、前記ポート識別手段が、パケットが
前記コアに到着する時間に依存して、パケットに対し前
記ポート・ラベルを生成する、上記(1)に記載の装
置。
【0113】(6)前記変換手段の各々が、関連する前
記のキーを対応する前記のインデックスに関連させるリ
スト手段を有する、上記(1)に記載の装置。
【0114】(7)前記装置がさらに、新しい仮想チャ
ネルのパケットにマスタVCNを提供するために前記テ
ーブル探索手段を設定する新エントリ手段を有し、これ
らのパケットに関連するチャネル・ラベルおよびポート
・ラベルが、新キーと称するK個の特性キーをテーブル
探索手段に適用させることができ、前記新エントリ手段
が、新しい仮想チャネルのマスタVCNを前記マスタ・
テーブルの指定された位置に挿入する挿入手段と、前記
のK個の新キーが前記リスト手段に既にあるインデック
スを参照しているかを判断する判断手段と、前記判断手
段が前記インデックスがないと判断すると、適切な前記
のインデックスを対応するリスト手段に挿入し、前記の
新キーによって参照されるK個のインデックスが前記マ
スタ・テーブルの既存の塞がったテーブル位置に関して
よく分配された空きの位置を識別できるように、前記の
適切なインデックスを選択し、前記インデックスによっ
て指示された空きのテーブル位置を挿入手段に知らせ該
挿入手段に空きのテーブル位置に前記マスタVCNを挿
入させるようにする、リスト設定手段と、を有する、上
記(6)に記載の装置。
【0115】(8)前記新エントリ手段がさらに、前記
判断手段が前記全ての新キーに対してインデックスが既
に存在すると判断したときに、前記インデックスによっ
て指されたテーブル位置を検査し、前記テーブル位置が
空いていることがわかると、前記挿入手段に、その空い
ているテーブル位置に新しい仮想チャネルのマスタVC
Nを挿入させる検査手段と、前記検査手段により、前記
インデックスによって指されたテーブル位置にエントリ
が存在して塞いでいることが判明したことに反応し、塞
いでいるエントリに関連する前記インデックスを調整す
ることによって前記テーブル位置を空けることができる
かを判断し、空けられれば、この調整を行い、前記挿入
手段に新しい仮想チャネルのマスタVCNを前記の空い
た位置に挿入させる、調整手段と、を有する、上記
(7)に記載の装置。
【0116】(9)前記新エントリ手段がさらに、前記
の調整手段が前記テーブル位置を空けることができない
ときに動作する付加的調整手段を持ち、前記の塞いでい
るエントリを外して新しい仮想回線の前記マスタVCN
で置き換え、その後、前記マスタVCNに関連する前記
インデックスを調整することにより前記テーブル位置を
空けることができるかを判断し、空けられるならば、こ
の調整を行って、前記の塞いでいるエントリを置き換え
る、上記(8)に記載の装置。
【0117】(10)装置の少なくとも1つの入力ポー
トを通して受け取られたパケットに対し、前記パケット
に関して予定の機能を実行する意図でマスタVCNと称
するパケット・ストリーム識別子を生成する方法であっ
て、各パケットは、パケットを受け取った入力ポートに
対して、そのパケットに関連する仮想チャネルを特異に
識別するチャネル・ラベルを持ち、前記方法が、Kが2
以上の整数の、マスタVCNを記憶するK次元の探索テ
ーブルを提供するステップと、特定の前記パケットに関
連するマスタVCNを提供するために、(i)前記パケッ
トに対し、そのパケットを受け取った入力ポートを識別
するポート・ラベルを生成し、(ii)長いチャネル識別子
を作成するために、前記パケットに関連するチャネル・
ラベルおよびポート・ラベルを結合し、(iii)K個のキ
ーを提供するために、あらかじめ定められた方法で前記
長いチャネル識別子を分割し、(iv)前記各キーを、対応
する、それぞれの、より短いインデックスに変換し、
(v)前記K次元探索テーブルに、前記インデックスを使
って、対象としているパケットのマスタVCNを探索す
る、ことからなるサブステップを実行するステップと、
を有する、前記方法。
【0118】(11)前記方法が長いチャネル識別子を
スクランブルするサブステップをさらに含み、前記サブ
ステップ(iii)は、前記スクランブルされた長いチャネ
ル識別子に対してはたらく、上記(10)に記載の方
法。
【0119】(12)少なくとも1つの入力ポートを通
して受け取られたパケットに関して予定の機能を実行す
るパケット処理装置であって、各パケットは、パケット
を受け取った入力ポートに対して、該パケットに関連す
る仮想チャネルを識別するチャネル・ラベルを持ち、前
記装置は、受け取った各パケットについて、該パケット
に関連する仮想チャネルおよび入力ポートの組合せを識
別するマスタVCNと称する識別子を提供するVCN提
供手段と、前記VCN提供手段によって提供されたマス
タVCNに依存して各パケットに関して前記の予定の機
能を実行する処理手段と、を備え、前記VCN提供手段
は、各パケットに対し、パケットを受け取った入力ポー
トを識別するそれぞれのポート・ラベルを生成するポー
ト識別手段と、パケットに関連するチャネル・ラベルお
よびポート・ラベルを結合する結合手段であって、該結
合手段によってスクランブルされる長いチャネル識別子
を作成する結合手段と、少なくとも2個のキーを提供す
るために、パケットのスクランブルされた長いチャネル
識別子をあらかじめ定められた方法で分割するキー提供
手段と、マスタVCNを保持するマスタ・テーブルを含
むテーブル探索手段であって、特定のパケットに関連す
る前記少なくとも2個のキーが該テーブル探索手段に適
用されるのに応答して、そのパケットに対するマスタV
CNを出力する、テーブル探索手段と、を有する、前記
装置。
【0120】
【発明の効果】パケットに含まれる、パケットに関連す
る仮想チャネルを特異に識別するチャネル・ラベルを利
用して、ATMスイッチ内で使用することのできる扱い
易い大きさのチャネル識別タグが得られる。
【図面の簡単な説明】
【図1】AAL5結合のための標準ATM UNIセル
の形式を示すブロック図。
【図2】一般的なATMスイッチのアーキテクチャを示
すブロック図。
【図3】本発明を実施するATMスイッチの概略を示す
ブロック図。
【図4】図3のスイッチのスイッチ・コア・ブロックを
示すブロック図。
【図5】スイッチ・コア・ポートに関するサービス・ロ
ータのテーブルを示すブロック図。
【図6】図3のスイッチのアダプタ・カードのブロック
図。
【図7】図6のアダプタ・カードの外部スイッチ・ポー
トに関するサービス・ロータのテーブルを示すブロック
図。
【図8】図4のスイッチ・コア・ブロックのコントロー
ラの機能ブロック図。
【図9】図8のコントローラのスケジュール機構によっ
て保持されるポート待ち行列を示すブロック図。
【図10】図8のコントローラのマスタVCN探索ブロ
ックのブロック図。
【図11】図11ないし20で全体を構成し、新しい仮
想チャネルを設定するときに、図10のVCN探索ブロ
ックによって維持される高位テーブル、低位テーブル、
マスタVCNテーブルの更新を示すブロック図。
【図12】高位及び低位テーブルのエントリが空である
場合の更新を示すブロック図。
【図13】高位テーブルのエントリが塞がっていて、低
位テーブルのエントリに空きがある場合の更新を示すブ
ロック図。
【図14】高位のエントリに空きがあり、低位テーブル
のエントリが塞がっている場合の更新を示すブロック
図。
【図15】高位/低位テーブルともエントリが塞がって
いる場合の更新を示すブロック図。
【図16】図15の例に新しいVCIDを加えることが
できない例を示すブロック図。
【図17】テーブルを再整理した後の結果を示すブロッ
ク図。
【図18】占領エレメントがある行または列のどちらか
を変える例を示すブロック図。
【図19】占領エレメントを外す必要がある状況を示す
ブロック図。
【図20】外された占領エレメントがもとに戻った状況
を示すブロック図。
【図21】図11ないし20に示したテーブル更新処理
を示す流れ図。
【符号の説明】
200 スイッチ・コア 201 プロセッサ装置 202 インターフェース回路 203 リンク 20 Nポートのスイッチ・コア 21 スイッチ・コア・ポート 22 アダプタ・カード 23 外部スイッチ・ポート 24 プロセッサ装置 25 マスタ・クロック 26 局所スレーブ・クロック 30 ファブリック 31 セル本体共有メモリ 32 空きアドレス・リスト・メモリ 33 コントローラ 34 通信ブロック 37 入力ポート 38 出力ポート 40 物理層/フレーム機構(PHYS) 41 入力先入先出機構(FIFO) 42 入力検出機構 43 出力先入先出機構(FIFO) 44 出力検出機構 45 時分割マルチプレクサ 46 入力ポート・ロータ機構 48 出力ポート・ロータ機構 49 空セル挿入機構 50 空セル検出・破棄機構 92 高位テーブル 93 低位テーブル 94 マスタVCNテーブル(2次元テーブル)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 少なくとも1つの入力ポートを通して受
    け取られたパケットに関して予定の機能を実行するパケ
    ット処理装置であって、各パケットは、パケットを受け
    取った該装置の入力ポートに対して、該パケットに関連
    する仮想チャネルを特異に識別するチャネル・ラベルを
    持ち、前記装置は、受け取った各パケットについて、該
    パケットに関連する仮想チャネルおよび入力ポートの組
    合せを特異に識別するマスタVCNと称する識別子を提
    供するVCN提供手段と、前記VCN提供手段によって
    提供されたマスタVCNに依存して各パケットに関して
    前記の予定の機能を実行する処理手段と、を備え、前記
    VCN提供手段は、 各パケットに対し、パケットを受け取った入力ポートを
    識別するそれぞれのポート・ラベルを生成するポート識
    別手段と、 パケットに関連するチャネル・ラベルおよびポート・ラ
    ベルを結合して出力される長いチャネル識別子を生成す
    る結合手段と、 前記結合手段の出力を予定の方法で分割し、Kが2以上
    の整数であるK個のキーを提供するキー提供手段と、 前記のK個のキーが適用されるテーブル探索手段と、 を有し、前記テーブル探索手段は、 パケットに関連するK個のキーの各々を、それぞれ対応
    するより短いインデックスに変換するそれぞれの変換手
    段と、 それぞれのマスタVCNを保持する位置を持つK次元の
    マスタ・テーブルであって、対象とするパケットのマス
    タVCNを提供するために、同一パケットから得られた
    K個のインデックスが、対応するマスタ・テーブルの位
    置をアクセスする役割をするようにした、K次元マスタ
    ・テーブルと、 を有する、パケット処理装置。
JP10269195A 1994-04-28 1995-04-26 パケット処理装置 Pending JPH0851439A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP94303119A EP0680235B1 (en) 1994-04-28 1994-04-28 Channel identifier generation
GB94303119.5 1994-04-28

Publications (1)

Publication Number Publication Date
JPH0851439A true JPH0851439A (ja) 1996-02-20

Family

ID=8217677

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10269195A Pending JPH0851439A (ja) 1994-04-28 1995-04-26 パケット処理装置

Country Status (4)

Country Link
US (1) US5555256A (ja)
EP (1) EP0680235B1 (ja)
JP (1) JPH0851439A (ja)
DE (1) DE69428267D1 (ja)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5668798A (en) * 1995-04-05 1997-09-16 International Business Machines Corporation Multiplexed TC sublayer for ATM switch
US5666361A (en) * 1995-04-05 1997-09-09 International Business Machines Corporation ATM cell forwarding and label swapping method and apparatus
US5787086A (en) * 1995-07-19 1998-07-28 Fujitsu Network Communications, Inc. Method and apparatus for emulating a circuit connection in a cell based communications network
DE69628798T2 (de) * 1995-10-16 2004-04-29 Hitachi, Ltd. Verfahren zur Übertragung von Multimediadaten
US6264560B1 (en) 1996-01-19 2001-07-24 Sheldon F. Goldberg Method and system for playing games on a network
US9530150B2 (en) 1996-01-19 2016-12-27 Adcension, Llc Compensation model for network services
US5823879A (en) 1996-01-19 1998-10-20 Sheldon F. Goldberg Network gaming system
US5706348A (en) * 1996-01-29 1998-01-06 International Business Machines Corporation Use of marker packets for synchronization of encryption/decryption keys in a data communication network
US5917820A (en) * 1996-06-10 1999-06-29 Cisco Technology, Inc. Efficient packet forwarding arrangement for routing packets in an internetwork
US5872783A (en) * 1996-07-24 1999-02-16 Cisco Systems, Inc. Arrangement for rendering forwarding decisions for packets transferred among network switches
US6049546A (en) * 1996-10-15 2000-04-11 At&T Corporation System and method for performing switching in multipoint-to-multipoint multicasting
JPH10262064A (ja) * 1997-03-19 1998-09-29 Fujitsu Ltd 複数回線終端装置及び複数回線終端装置のoam処理方法
US6757286B1 (en) 1997-03-24 2004-06-29 Alcatel Self-configuring communication network
FR2764757B1 (fr) * 1997-06-13 1999-08-27 Thomson Csf Procede de traduction d'un en-tete de cellule pour commutateur atm
US6034958A (en) * 1997-07-11 2000-03-07 Telefonaktiebolaget Lm Ericsson VP/VC lookup function
US6185209B1 (en) 1997-07-11 2001-02-06 Telefonaktiebolaget Lm Ericsson VC merging for ATM switch
US6088359A (en) * 1997-07-11 2000-07-11 Telefonaktiebolaget Lm Ericsson ABR server
US6154459A (en) * 1997-07-11 2000-11-28 Telefonaktiebolaget Lm Ericsson Data shaper for ATM traffic
US5963553A (en) * 1997-07-11 1999-10-05 Telefonaktiebolaget Lm Ericsson Handling ATM multicast cells
FR2767242B1 (fr) * 1997-08-07 1999-10-15 Alsthom Cge Alcatel Dispositif et procede de commutation de cellules atm a groupes de connexions, et fonctions terminales d'entree et de sortie correspondantes
US6810040B1 (en) 1997-12-22 2004-10-26 Cisco Technology, Inc. Method and apparatus for configuring network devices
US6700890B1 (en) * 1997-12-22 2004-03-02 Cisco Technology, Inc. Method and apparatus for configuring permanent virtual connection (PVC) information stored on network devices in an ATM network logically configured with subnetworks
US7369556B1 (en) 1997-12-23 2008-05-06 Cisco Technology, Inc. Router for virtual private network employing tag switching
US6339595B1 (en) 1997-12-23 2002-01-15 Cisco Technology, Inc. Peer-model support for virtual private networks with potentially overlapping addresses
US6836483B1 (en) * 1998-06-24 2004-12-28 Research Investment Network, Inc. Message system for asynchronous transfer
US6728249B2 (en) 1998-06-27 2004-04-27 Intel Corporation System and method for performing cut-through forwarding in an ATM network supporting LAN emulation
US6625650B2 (en) * 1998-06-27 2003-09-23 Intel Corporation System for multi-layer broadband provisioning in computer networks
US6604136B1 (en) 1998-06-27 2003-08-05 Intel Corporation Application programming interfaces and methods enabling a host to interface with a network processor
US6657959B1 (en) * 1998-06-27 2003-12-02 Intel Corporation Systems and methods for implementing ABR with guaranteed MCR
US6735773B1 (en) 1998-06-27 2004-05-11 Intel Corporation Method and apparatus for issuing commands to a network processor configured to provide a plurality of APIs
US6724767B1 (en) * 1998-06-27 2004-04-20 Intel Corporation Two-dimensional queuing/de-queuing methods and systems for implementing the same
US6603768B1 (en) 1998-06-27 2003-08-05 Intel Corporation Multi-protocol conversion assistance method and system for a network accelerator
US5991300A (en) * 1998-09-08 1999-11-23 Cisco Technology, Inc. Technique for efficiently performing optional TTL propagation during label imposition
US6295296B1 (en) 1998-09-08 2001-09-25 Cisco Technology, Inc. Use of a single data structure for label forwarding and imposition
US7307990B2 (en) * 1999-01-19 2007-12-11 Cisco Technology, Inc. Shared communications network employing virtual-private-network identifiers
US6337861B1 (en) 1999-02-02 2002-01-08 Cisco Technology, Inc. Method and apparatus to properly route ICMP messages in a tag-switching network
US6512768B1 (en) 1999-02-26 2003-01-28 Cisco Technology, Inc. Discovery and tag space identifiers in a tag distribution protocol (TDP)
FR2790893B1 (fr) * 1999-03-12 2001-06-15 St Microelectronics Sa Dispositif d'association d'index a des adresses choisies parmi un nombre de valeurs plus grand que le nombre d'index disponibles
US6473421B1 (en) 1999-03-29 2002-10-29 Cisco Technology, Inc. Hierarchical label switching across multiple OSPF areas
US6665301B1 (en) 1999-06-03 2003-12-16 Fujitsu Network Communications, Inc. Transmission slot allocation method and map for virtual tunnels in a transmission line
WO2000076152A1 (en) 1999-06-03 2000-12-14 Fujitsu Network Communications, Inc. Method and system for transmitting traffic in a virtual tunnel of a transmission line
US6785285B1 (en) 1999-06-03 2004-08-31 Fujitsu Network Communications, Inc. Method and system for providing broadcast channels over an emulated subnetwork
US6658006B1 (en) 1999-06-03 2003-12-02 Fujitsu Network Communications, Inc. System and method for communicating data using modified header bits to identify a port
US6501758B1 (en) 1999-06-03 2002-12-31 Fujitsu Network Communications, Inc. Hybrid ATM/TDM transport over a common fiber ring
US6760332B1 (en) 1999-06-03 2004-07-06 Fujitsu Network Communications, Inc. ATM multicasting system and method
US6977930B1 (en) * 2000-02-14 2005-12-20 Cisco Technology, Inc. Pipelined packet switching and queuing architecture
JP2001292164A (ja) * 2000-04-06 2001-10-19 Nec Corp パケット・スイッチおよびその切替方法
US6385209B1 (en) * 2000-06-14 2002-05-07 Pluris, Inc. Method and apparatus for mapping data packets between lines of differing capacity at a router interface
DE60032888T2 (de) * 2000-06-28 2007-11-29 Alcatel Lucent Teilsystem eines Telekommunikationsträger-Prozessors mit Inband-Steuerung und Adressierung via Zelle-Kopffelder
US6816489B1 (en) 2000-10-05 2004-11-09 Cisco Technology, Inc. Efficient method for packet switching on asynchronous transfer mode switch based platforms
US6618388B2 (en) 2001-01-05 2003-09-09 Extreme Networks Method and system for VMAN protocol
US7729267B2 (en) * 2003-11-26 2010-06-01 Cisco Technology, Inc. Method and apparatus for analyzing a media path in a packet switched network
JP4608936B2 (ja) * 2004-04-28 2011-01-12 パナソニック株式会社 通信方法および通信装置
US8429661B1 (en) * 2005-12-14 2013-04-23 Nvidia Corporation Managing multi-threaded FIFO memory by determining whether issued credit count for dedicated class of threads is less than limit
US8201172B1 (en) 2005-12-14 2012-06-12 Nvidia Corporation Multi-threaded FIFO memory with speculative read and write capability
WO2008040393A1 (en) * 2006-10-05 2008-04-10 Freescale Semiconductor, Inc. Error correction apparatus, method of correcting an error and method of generating error location data
US7738383B2 (en) * 2006-12-21 2010-06-15 Cisco Technology, Inc. Traceroute using address request messages
US7706278B2 (en) * 2007-01-24 2010-04-27 Cisco Technology, Inc. Triggering flow analysis at intermediary devices
US8774010B2 (en) 2010-11-02 2014-07-08 Cisco Technology, Inc. System and method for providing proactive fault monitoring in a network environment
US8559341B2 (en) 2010-11-08 2013-10-15 Cisco Technology, Inc. System and method for providing a loop free topology in a network environment
US8982733B2 (en) 2011-03-04 2015-03-17 Cisco Technology, Inc. System and method for managing topology changes in a network environment
US8670326B1 (en) 2011-03-31 2014-03-11 Cisco Technology, Inc. System and method for probing multiple paths in a network environment
US8724517B1 (en) 2011-06-02 2014-05-13 Cisco Technology, Inc. System and method for managing network traffic disruption
US8830875B1 (en) 2011-06-15 2014-09-09 Cisco Technology, Inc. System and method for providing a loop free topology in a network environment
US9450846B1 (en) 2012-10-17 2016-09-20 Cisco Technology, Inc. System and method for tracking packets in a network environment

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2892689B2 (ja) * 1989-07-05 1999-05-17 株式会社日立製作所 パケット通信網およびパケット交換機
JPH04196847A (ja) * 1990-11-28 1992-07-16 Oki Electric Ind Co Ltd ヘッダ変換方式
GB2253118B (en) * 1991-02-20 1995-04-12 Roke Manor Research Improvements in or relating to asynchronous transfer mode switching system
DE69132536T2 (de) * 1991-08-21 2001-10-04 International Business Machines Corp., Armonk Verbindungslose ATM-Datendienste
US5323389A (en) * 1992-08-14 1994-06-21 Fore Systems, Inc. ATM cell interface and method for dispatching an ATM cell
JPH06318951A (ja) * 1993-01-07 1994-11-15 Toshiba Corp セル転送方法およびセル転送システム
JP2546505B2 (ja) * 1993-06-23 1996-10-23 日本電気株式会社 Cladにおけるアドレス学習装置
US5408469A (en) * 1993-07-22 1995-04-18 Synoptics Communications, Inc. Routing device utilizing an ATM switch as a multi-channel backplane in a communication network

Also Published As

Publication number Publication date
EP0680235B1 (en) 2001-09-12
US5555256A (en) 1996-09-10
EP0680235A1 (en) 1995-11-02
DE69428267D1 (de) 2001-10-18

Similar Documents

Publication Publication Date Title
JPH0851439A (ja) パケット処理装置
EP0680179B1 (en) Multicasting apparatus
EP0680173B1 (en) Multicasting apparatus
US5745489A (en) Buffered crosspoint matrix for an asynchronous transfer mode switch and method of operation
US5390184A (en) Flexible scheduling mechanism for ATM switches
US4926416A (en) Method and facilities for hybrid packet switching
US5991295A (en) Digital switch
JP3476194B2 (ja) アクセス制御atmスイッチ
EP0471344B1 (en) Traffic shaping method and circuit
EP0502873B1 (en) Basic element for the connection network of a fast packet switching node
US7342942B1 (en) Multi-service segmentation and reassembly device that maintains only one reassembly context per active output port
US6606300B1 (en) Flow control process for a switching system and system for performing the same
KR20000023290A (ko) 유연한 통신 스위칭 네트워크
CA2296921A1 (en) A large combined broadband and narrowband switch
EP1013132A2 (en) Switch arrangement
JPH1127291A (ja) オンチップfifoのローカルメモリへの拡張のための方法及び装置
JPH07321824A (ja) セル・スイッチ・ファブリック用チップ
US4969149A (en) Switching network for a switching system
EP0870415B1 (en) Switching apparatus
JP4504606B2 (ja) ネットワークスイッチにおいてトラフィックを成形する装置及び方法
WO1993011621A1 (en) Method and unit for the reconstruction of the correct sequence of atm cells