JP2000358066A - 並列スイッチングエンジン中で、パケット順序の完全性を維持する方法および装置 - Google Patents

並列スイッチングエンジン中で、パケット順序の完全性を維持する方法および装置

Info

Publication number
JP2000358066A
JP2000358066A JP2000142912A JP2000142912A JP2000358066A JP 2000358066 A JP2000358066 A JP 2000358066A JP 2000142912 A JP2000142912 A JP 2000142912A JP 2000142912 A JP2000142912 A JP 2000142912A JP 2000358066 A JP2000358066 A JP 2000358066A
Authority
JP
Japan
Prior art keywords
packet
processing element
source
packets
arriving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000142912A
Other languages
English (en)
Other versions
JP3394504B2 (ja
Inventor
Geoffrey C Stone
ジエフリイ・シー・ストーン
Scot A Reader
スコツト・エイ・リーダー
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.)
Nokia of America Corp
Original Assignee
Alcatel Internetworking Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel Internetworking Inc filed Critical Alcatel Internetworking Inc
Publication of JP2000358066A publication Critical patent/JP2000358066A/ja
Application granted granted Critical
Publication of JP3394504B2 publication Critical patent/JP3394504B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1515Non-blocking multistage, e.g. Clos
    • H04L49/153ATM switching fabrics having parallel switch planes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/565Sequence integrity
    • 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/102Packet switching elements characterised by the switching fabric construction using shared medium, e.g. bus or ring
    • 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

Abstract

(57)【要約】 【課題】 到着パケットがスイッチング用並列処理エレ
メントの種々の処理エレメントに転送される、スイッチ
ングエンジン中でパケット順序の完全性を維持する方法
および装置を提供すること。 【解決手段】 各到着パケットごとに、同じソースから
の前のパケットが処理エレメントに係属中であるかどう
かをチェックし、チェックにより、そのようなパケット
が係属中であることが明らかになった場合に、この到着
パケットを前のパケットと同じ処理エレメントに転送す
ることにより、同じ会話に関するパケットの順序の保持
が保証される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データスイッチン
グに関し、より詳細には、データ通信ネットワーク中で
複数のソースから複数の宛先にデータをスイッチするた
めにプロセッサアレイが使用される種類のデータスイッ
チングエンジンに関する。
【0002】
【従来の技術】近年、高速データ通信スイッチングが、
主として特定用途向け集積回路(ASIC)において達
成されている。プログラム可能論理デバイスは、一般
に、主要なスイッチングエンジンとして利用するのには
遅すぎると考えられている。しかし、プログラム可能論
理技術の最近の改善に伴い、並列の多数のプログラム可
能論理デバイス、または並列プロセッサアレイを、主要
なデータスイッチングエンジンとして実現する傾向が、
今起こりつつあるように見える。
【0003】プロセッサアレイスイッチングエンジン
は、ASICスイッチングエンジンに対して、商品化ま
での時間、柔軟性および拡張性の点において一定の利点
を提供する。しかし、プロセッサアレイスイッチングエ
ンジンの「並列」の側面が、技術的な課題を作り出す。
これらの課題の中で筆頭は、アレイの資源をどのように
最適に割り振るかである。考えられる1つ目は、アレイ
内の各プロセッサを厳密に特定のグループのソース専用
にすることである。しかし、そのような専用プロセッサ
アレイは、該プロセッサが専用であるソースがパケット
を伝送していないとき、たとえ他のプロセッサが過負荷
状態であっても、プロセッサが利用されないので効率的
ではない。考えられる2つ目は、アレイ内の各プロセッ
サが、全てのソースによって共用されるようにすること
である。そのような共用プロセッサアレイならば、特に
到着パケットが現在充分に利用されていないプロセッサ
に伝送されることを保証する効率的な負荷バランシング
アルゴリズムと共に実現されるとき、全体のスイッチン
グ効率を非常に増加させるであろう。しかし、共用プロ
セッサアレイは、パケット順序の完全性をいかに保持す
るかなどの他の問題を引き起こす。
【0004】パケット順序の完全性を保持する問題は、
共用プロセッサアレイにおいて、そのようなアレイの動
作サイクル内の所与のいずれかの時点で、パケットを処
理するのに必要な時間が、プロセッサごとに変動するた
めに生じる。したがって、パケットは、スイッチングの
ためにアレイに伝送された順序とは異なる順序でアレイ
からスイッチされる可能性がある。厳密な「先入れ先出
し:FIFO」手順からの逸脱は、異なる会話に適用さ
れるパケットに対しては問題ではないが、同じ会話に適
用されるパケットに対しては問題になる可能性がある。
【0005】
【発明が解決しようとする課題】したがって、処理エレ
メントが全てのソース中で共用されているプロセッサア
レイにおいて、同じソースからのパケットが、そのパケ
ットが到着した順序でアレイから出ることを保証する方
法の必要がある。そして、スイッチング性能に高すぎる
犠牲を課すことなく、共通のソースからのパケットに対
するパケット順序を保持する必要がある。
【0006】
【課題を解決するための手段】本発明は、共用プロセッ
サアレイ内でパケット順序の完全性を保持する方法およ
び装置を提供する。同じ会話に関するパケットの順序
は、各到着パケットごとに、同じソースからの前のパケ
ットが処理エレメントに係属中であるかどうかを、到着
パケットをプロセッサアレイに転送する前にチェックす
ることによって維持される。チェックにより、そのよう
なパケットが係属中であることが明らかになった場合、
この到着パケットは、前のパケットと同じ処理エレメン
トに転送される。チェックにより、同じソースからのど
のパケットもいずれかの処理エレメントに係属中でない
ことが明らかになった場合、この到着パケットは、負荷
バランシングアルゴリズムに従って処理エレメントに転
送される。
【0007】本発明は、以下の詳細な説明を参照して、
以下に簡単に述べる添付の図面と共に考慮することによ
り、よりよく理解されよう。もちろん、本発明の実際の
範囲は、特許請求の範囲により定義される。
【0008】
【発明の実施の形態】図1に、データスイッチングアー
キテクチャ用の入力ユニット110および出力ユニット
120を示す。完全なアーキテクチャ(示されていな
い)では、1つまたは複数の入力ユニットおよび1つま
たは複数の出力ユニットが、スイッチ機構130を介し
て結合され、その結果、全ての物理的入力(およびその
関連入力ユニット)が全ての物理的出力(およびその関
連出力ユニット)にデータを転送することができる。所
与の任意の瞬間において、入力ユニットのサブセット
(または全て)が、出力ユニットのサブセット(または
全て)向けのデータを受け取る。したがって、データ
は、左から右に、例えば入力ユニット110から出力ユ
ニット120に流れると考えることができる。各入力ユ
ニットは、複数の物理的入力を有し、各出力ユニット
は、1つまたは複数の物理的出力を有する。このアーキ
テクチャを介して、可変長のパケット、固定長のセル、
またはこの両者で、データを伝送することができるが、
明確性と統一性のために、本明細書では、このような離
散的な単位のデータをすべて「パケット」と呼ぶ。入力
ユニット110と出力ユニット120の間の好ましいス
イッチング動作では、物理的入力の1つで受取り物理的
出力に向けられたパケットは、プロセッサアレイモジュ
ール112に到着し、入力バッファ114にスイッチさ
れ転送される。このパケットは最終的に、スイッチング
機構130への機構データバス142上に解放され、出
力バッファ122に到着し、出力バッファ122で、こ
のパケットは、物理的出力での最終的な配信まで格納さ
れ続ける。
【0009】図2に、プロセッサアレイモジュール11
2をより詳細に示す。プロセッサアレイモジュール11
2は、パケットを物理的入力から物理的出力にスイッチ
する責任を担う。その最も基本的特徴において、モジュ
ール112内で実行されるスイッチング動作は、パケッ
トヘッダ内に符号化されたアドレスなどのパケット制御
フィールドを解釈し変更して、適切な物理的出力上にパ
ケットを配信するよう保証することを含む。プロセッサ
アレイモジュール112は、物理的入力に接続されたM
個の入力制御装置210を有する。入力制御装置210
は、L個のモジュールデータバス220を介して、L個
の処理エレメントを含むプロセッサアレイ230に結合
される。モジュールデータバス220は、各処理エレメ
ントが特定のバス上のデータを受取り、各入力制御装置
が各バス上のデータを伝送することができるように構成
される。処理エレメント230は、パケットスイッチン
グ動作が完了した後にパケットを入力バッファ114に
転送するために、外部データバス142を共用する。
【0010】本発明の重要な目的は、同じ会話に適用さ
れるパケットのシーケンスを保持する共用プロセッサア
レイを実現することである。このパケット順序の完全性
の保持は、好ましい実施形態において「委託と解放(c
ommit−and−release)」プロトコルを
実現することによって達成される。入力制御装置210
は、異なるソースからプロセッサアレイ230にパケッ
トを配信する。委託されていないソースは、このソース
から処理エレメントへの到着パケットを転送する際に、
アレイ230内の特定の処理エレメントに対して委託さ
れる。この委託が有効である間、このソースからのその
後の到着パケットは、全てこの処理エレメントに転送さ
れる。この委託は、このソースからの全てのパケット
が、このアレイからスイッチされ出て行った後に終了す
る。この「委託と解放」プロトコルは、同じ会話に適用
されるパケットが、スイッチング性能を過度に妨害する
ことなく、共用アレイプロセッサアレイからその到着順
にスイッチされることを保証する。この基本的な発明的
特徴に加えて、アレイ230内の入力制御装置210お
よび処理エレメントは、制御ラインによって結合され
る。図3を参照すると、代表の入力制御装置310およ
び処理エレメント320が、マスクリセット(mask
reset)ライン322およびバックログ更新(b
acklog update)ライン324によって結
合される。処理エレメント320は、入力制御装置31
0に、処理エレメント320の現在の状態についてのフ
ィードバックを提供するために、ライン322、324
を呼び出す。入力制御装置310は、到着パケットを転
送するときにアレイ230内のどの処理エレメントを選
択すべきかを正しく決定するために、この状態を知らな
ければならない。特にマスクリセットライン322は、
処理エレメント320がこのソースからの係属中のパケ
ットをもう有していないことを入力制御装置310に指
示するために呼び出される。この指示が、実際に、処理
エレメント320に対する過去の委託からソースを解放
し、その結果、このソースからの次の到着パケットに対
する処理エレメントを、パケット順序を保持するために
関係する処理エレメント320を選択するのではなく、
効率性に基づいて選択することができる。バックログ更
新ライン324は、全ての入力制御装置210に関連付
けられたソースからの、処理エレメント320内に係属
中のパケットの現在のバックログについて、入力制御装
置310に伝えるために呼び出される。入力制御装置3
10に関連付けられたソースが、委託されていない状態
にあるとき、入力制御装置310は、アレイ230内の
全ての処理エレメントによって提供されるバックログ情
報を比較し、このソースから処理エレメント320に、
到着パケットを転送する相対的な効率性を評価する。
【0011】次に、プロセッサアレイモジュール210
の動作を、図4〜図10を参照してさらに詳細に述べ
る。最初に図4を参照して、代表の入力制御装置400
を示す。到着パケットが、物理的入力IP_IN上の制
御装置400に到着し、入力待ち行列404に書き込ま
れ、書き込みアドレスカウンタ406が、増分される。
PE決定論理回路412が、書き込みアドレスカウンタ
406および読み取りアドレスカウンタ410を監視す
る。到着パケットが、待ち行列404内に係属中である
とき、PE決定論理回路412が、処理エレメントを選
択し、パケット解放要求を、選択された処理エレメント
が傍受しているモジュールデータバスPE_X_BUS
に対する制御論理回路エレメントのPE_X_BUS制
御論理回路424に伝送する。最後に、論理回路424
がこの要求を認める。ANDゲート414が、イネーブ
ルにされ、到着パケットが、待ち行列404から読み取
られ、選択された処理エレメントに対するバスPE_X
_BUS上のソースポートIDレジスタ402から取り
出されたソース識別子とともに伝送される。例示した実
施形態の制御装置400には、物理的入力が1つしかな
いが、他の実施形態の制御装置は、1つまたは複数の物
理的入力を有することができることに留意されたい。さ
らに例示した実施形態では、この物理的入力上の制御装
置400に到着した全ての到着パケットは、同じソース
に帰属するが、共通の物理的入力上ではあるが異なるソ
ースアドレスを有する制御装置に到着する他の実施形態
の到着パケットは、異なるソースに帰属することができ
る。
【0012】到着パケットに対する正しい処理エレメン
トを選択するために、PE決定論理回路412は、最初
に、この到着パケットに対するソースが、委託されてい
る状態か委託されていない状態かを判定する。この判定
は、PEマスクレジスタ408内に保持されるビットマ
スクによって補助される。PEマスクレジスタ408内
に保持されるマスクのフォーマット500を、図5に示
す。プロセッサアレイ230内でアクティブ状態のL個
の処理エレメントのそれぞれに、このマスク内のビット
位置が割り当てられる。このマスクは、マスク読み取り
ライン418上で、PE決定論理回路412によって読
み取られる。ビットマスク内のビットがセットされてい
る場合、このソースは、現在、そのビットがセットされ
ている処理エレメントに委託され、PE決定論理回路4
12は、その処理エレメントを選択する。しかし、マス
ク内のビットがセットされていない場合、このソース
は、現在、委託されておらず、PE決定論理回路412
は、効率性に基づいて処理エレメントを選択することが
できる。このイベントにおいて、PE決定論理回路41
2は、バックログ更新ライン424上で、全ての処理エ
レメントから受取ったバックログ情報を比較し、現時点
でバックログが最小の処理エレメントを選択する。もち
ろん、委託されていないソースからの到着パケットに対
する処理エレメントを選択する際に、現在のバックログ
以外の要素が決定的である他の負荷バランシングアルゴ
リズムも可能である。
【0013】ソースは、PEマスクレジスタ408内の
マスクをセットおよびリセットすることによって、委託
されている状態と委託されていない状態の間で、切り換
えられる。このマスクは、委託されていないソースに対
する処理エレメントが効率性に基づいて選択されるとき
にセットされる。特に、処理エレメント用にマスク内に
確保されたビットは、マスクセットライン416を介し
てセットされる。このソースからの最後の係属中のパケ
ットがこのエレメントからスイッチされ出ていった後
に、以前に選択された処理エレメントがリセット指示を
制御装置400に伝送するとき、このマスクがリセット
される。特に、リセット指示は、この処理エレメントに
よって駆動されるマスクリセットライン422のうちの
1ライン上で伝送され、マスクがリセットされる。
【0014】次に、図6を参照すると、代表の処理エレ
メント600をより詳細に示す。パケット(ソース識別
子を含む)は、モジュールバス(例えば、PE_X_B
US)からエレメント600に到着し、パケット解析ユ
ニット610に書き込まれる。パケット解析ユニット6
10は、パケットヘッダ(ソース識別子を含む)を取り
除き、到着ヘッダをヘッダバッファ630に預ける。こ
のパケットのペイロードは、データバッファ640に流
れる。プロセッサ論理回路620は、この到着ヘッダを
調査し、この到着ヘッダを、適切な物理的出力上にパケ
ットを配信することを保証するのに充分な出発ヘッダに
変換する。この出発ヘッダおよびこのパケットに対する
ペイロードは、最後にパケット再組立ユニット650に
解放され、ここで、この出発ヘッダは、ペイロードと共
に再組立され、再組立されたパケットは、外部データバ
ス142上に解放される。
【0015】処理エレメント600は、エレメント60
0に係属中の各ソースからのパケットのバックログを、
バックログレジスタ700の手段を介して監視する。バ
ックログレジスタ700の形態を、図7に示す。バック
ログレジスタは、プロセッサアレイモジュール210内
でアクティブ状態のM個のソースのそれぞれに割り当て
られる。各レジスタは、エレメント600に係属中の特
定のソースからのパケットの現在の数を反映したバック
ログ数を保持する。エレメント600に到着する特定の
ソースからのパケット全てに対して、プロセッサ論理回
路620は、このソース用に確保されたレジスタ内のバ
ックログ数を増分する。エレメント600から解放され
た特定のソースからのパケット全てに対して、プロセッ
サ論理回路620は、このソース用に確保されたレジス
タ内のバックログ数を減分する。レジスタ内のバックロ
グ数が1から0に減分される場合、エレメント600
は、マスクリセットライン622のうち適切な1ライン
上で、そのバックログ値が0に戻るソースに関連付けら
れた入力制御装置に、リセット指示を伝送し、エレメン
ト600に対する委託からソースを解放する。エレメン
ト600はまた、到着パケットに対するエレメントを効
率性に基づいて選択する際に、委託されていないソース
に、相対的なバックログの更新状況を提供するために、
定期的にバックログ更新ライン624も呼び出し、全て
の入力制御装置に、エレメント600の現在の全体(す
なわち全てのソース)のバックログ数を伝える。
【0016】次に、図8を参照すると、到着パケットを
処理エレメントに転送する前に、図2の入力制御装置で
実行されるチェックを流れ図で示す。パケットが物理的
入力上の入力制御装置で受信され(810)、ビットマ
スクが読み取られる(820)。マスク内のビットがセ
ットされているかどうかの判定がなされる(830)。
マスク内のビットがセットされている場合、このソース
は、現在、委託されており、このパケットが、パケット
順序の全ての問題を取り除くために、そのビットがセッ
トされている処理エレメントに転送される(840)。
しかし、マスク内のビットがセットされていない場合、
このソースは、現在、委託されていない。したがって、
処理エレメントに対するバックログ情報が参照され、パ
ケットは、最小のバックログを有する処理エレメントに
転送される(834)。しかし、そのような転送に先立
ち、その選択された処理エレメント用に確保されたマス
ク内のビットが、ソースをこの処理エレメントに委託す
るためにセットされる(832)。
【0017】図9を参照すると、図2の処理エレメント
で実行されるパケットバックログ更新機能を流れ図で示
す。パケットがモジュールデータバスから処理エレメン
トで受信される(910)。ソースが識別され(92
0)、識別されたソースに対するバックログ数が増分さ
れる(930)。
【0018】最後に、図10を参照すると、図2の処理
エレメントで実行されるパケットバックログ更新機能お
よびビットマスクリセット機能を流れ図で示す。パケッ
トがバッファから取り出され(1010)、ソースが識
別される(1020)。識別されたソースに対するバッ
クログ数が減分される(1030)。新たなバックログ
数が0かどうかの判定がなされる(1040)。新たな
バックログ数が0の場合、識別されたソース用のビット
マスクがリセットされる(1050)。
【0019】本発明が、その精神または本質的特徴から
逸脱することなく、他の特定の形態で実施可能であるこ
とが、当業者には理解されよう。したがって、ここに述
べた実施形態は、全ての点で例示的であり、限定的では
ない。本発明の範囲は、特許請求の範囲で定義され、そ
の等価な範囲内に当たる全ての変更は、ここに含まれる
と意図する。
【図面の簡単な説明】
【図1】データ通信スイッチングアーキテクチャの一部
を示す図である。
【図2】図1のプロセッサアレイモジュールをより詳細
に示す図である。
【図3】図2の入力制御装置と処理エレメントの間の制
御フロー用の制御ラインを示す図である。
【図4】図2の入力制御装置をより詳細に示す図であ
る。
【図5】図4のPEマスクレジスタ内に格納されたビッ
トマスクのフォーマットを示す図である。
【図6】図2の処理エレメントをより詳細に示す図であ
る。
【図7】図6のバックログレジスタのフォーマットをよ
り詳細に示す図である。
【図8】パケットを処理エレメントに転送する前に、図
2の入力制御装置で実行されるチェックを示す流れ図で
ある。
【図9】図2の処理エレメントで実行されるパケットバ
ックログ更新機能を示す流れ図である。
【図10】図2の処理エレメントで実行されるパケット
バックログ更新機能およびビットマスクリセット機能を
示す流れ図である。
【符号の説明】
110 入力ユニット 112 プロセッサアレイモジュール 114 入力バッファ 120 出力ユニット 122 出力バッファ 130 スイッチング機構 142 データバス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 スコツト・エイ・リーダー アメリカ合衆国、カリフオルニア・91403、 シエルマン・オークス、ウツドクリフ・ロ ード・3424

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 パケットがスイッチング用プロセッサア
    レイ内の複数の処理エレメントの中の種々の処理エレメ
    ントに転送されるスイッチングエンジン中でパケット順
    序の完全性を保持する方法であって、 各到着パケットごとに、同じソースからの別のパケット
    が、前記プロセッサアレイ内に係属中であるかどうか
    を、前記到着パケットを前記プロセッサアレイに転送す
    る前に、チェックするステップを含む方法。
  2. 【請求項2】 パケットが複数のスイッチング用並列処
    理エレメントの種々の処理エレメントに転送されるスイ
    ッチングエンジン中でパケット順序の完全性を保持する
    方法であって、 到着パケットごとに、同じソースからの別のパケット
    が、いずれかの処理エレメントに係属中であるかどうか
    をチェックするステップと、 同じソースからの別のパケットが、いずれかの処理エレ
    メントに係属中である場合に、前記到着パケットを、同
    じソースからの別のパケットが係属中である処理エレメ
    ントに転送するステップとを含む方法。
  3. 【請求項3】 いずれかの処理エレメントに係属中であ
    る同じソースからのパケットが他にない場合に、前記到
    着パケットを、所定のアルゴリズムに従って選択された
    処理エレメントに転送するステップをさらに含む請求項
    2に記載の方法。
  4. 【請求項4】 いずれかの処理エレメントに係属中であ
    る同じソースからのパケットが他にない場合に、前記到
    着パケットを、所定の負荷バランシングアルゴリズムに
    従って選択された処理エレメントに転送するステップを
    さらに含む請求項2に記載の方法。
  5. 【請求項5】 いずれかの処理エレメントに係属中であ
    る同じソースからのパケットが他にない場合に、前記到
    着パケットを、パケットのバックログが最小である処理
    エレメントに転送するステップをさらに含む請求項2に
    記載の方法。
  6. 【請求項6】 パケットがスイッチング用プロセッサア
    レイ内の複数の処理エレメントの種々の処理エレメント
    に転送されるスイッチングエンジン中でパケット順序の
    完全性を保持する方法であって、 各到着パケットごとに、前記パケットのソースが、前記
    プロセッサアレイ内の処理エレメントに委託されている
    かどうかを、前記到着パケットを前記プロセッサアレイ
    に転送する前に、チェックするステップを含む方法。
  7. 【請求項7】 パケットがスイッチング用プロセッサア
    レイ内の複数の処理エレメントの種々の処理エレメント
    に転送されるスイッチングエンジン中でパケット順序の
    完全性を保持する方法であって、 到着パケットのソースが、いずれかの処理エレメントに
    委託されているかどうかを判定するステップと、 前記到着パケットのソースが、いずれかの処理エレメン
    トに委託されている場合に、前記到着パケットを、前記
    ソースが委託されている処理エレメントに転送するステ
    ップとを含む方法。
  8. 【請求項8】 前記到着パケットのソースが、どの処理
    エレメントにも委託されていない場合に、前記到着パケ
    ットを、所定のアルゴリズムに従って選択された処理エ
    レメントに転送するステップをさらに含む請求項7に記
    載の方法。
  9. 【請求項9】 前記到着パケットのソースが、どの処理
    エレメントにも委託されていない場合に、前記到着パケ
    ットを、所定の負荷バランシングアルゴリズムに従って
    選択された処理エレメントに転送するステップをさらに
    含む請求項7に記載の方法。
  10. 【請求項10】 前記到着パケットのソースが、どの処
    理エレメントにも委託されていない場合に、前記到着パ
    ケットを、パケットのバックログが小である処理エレメ
    ントに転送するステップをさらに含む請求項7に記載の
    方法。
  11. 【請求項11】 異なるソースからのパケットが複数の
    スイッチング用並列処理エレメントの種々の処理エレメ
    ントに転送されるスイッチングエンジン中で、パケット
    順序の完全性を保持する方法であって、 ソースを、処理エレメントに委託するステップと、 前記委託が解放されるまで、前記ソースからの到着パケ
    ットを、前記処理エレメントに転送し、他の処理エレメ
    ントには転送しないステップとを含む方法。
  12. 【請求項12】 前記ソースからの全ての到着パケット
    が、前記処理エレメントからスイッチされ出ていったと
    きに、前記委託が解放される請求項11に記載の方法。
JP2000142912A 1999-05-18 2000-05-16 並列スイッチングエンジン中で、パケット順序の完全性を維持する方法および装置 Expired - Fee Related JP3394504B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/314,261 US6721309B1 (en) 1999-05-18 1999-05-18 Method and apparatus for maintaining packet order integrity in parallel switching engine
US314261 1999-05-18

Publications (2)

Publication Number Publication Date
JP2000358066A true JP2000358066A (ja) 2000-12-26
JP3394504B2 JP3394504B2 (ja) 2003-04-07

Family

ID=23219247

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000142912A Expired - Fee Related JP3394504B2 (ja) 1999-05-18 2000-05-16 並列スイッチングエンジン中で、パケット順序の完全性を維持する方法および装置

Country Status (4)

Country Link
US (1) US6721309B1 (ja)
EP (1) EP1061695B1 (ja)
JP (1) JP3394504B2 (ja)
AT (1) ATE542335T1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009081897A (ja) * 2001-12-21 2009-04-16 Agere Systems Inc パケットフロー識別子に基づいてパケット処理の順序を維持するプロセッサ
EP2670099A1 (en) 2012-05-31 2013-12-04 Hitachi Ltd. Communication apparatus and communication method

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10011667C2 (de) * 2000-03-10 2002-11-21 Infineon Technologies Ag Hochgeschwindigkeits-Router
AU2002257444A1 (en) * 2001-05-17 2002-11-25 Solidum Systems Corporation Distributed packet processing system with internal load distribution
FR2858895B1 (fr) 2003-08-13 2006-05-05 Arteris Procede et dispositif de gestion de priorite lors de la transmission d'un message
FR2862457B1 (fr) * 2003-11-13 2006-02-24 Arteris Systeme et procede de transmission d'une sequence de messages dans un reseau d'interconnexions.
FR2867338B1 (fr) 2004-03-02 2007-08-10 Arteris Procede et dispositif de commutation entre des agents
FR2890766B1 (fr) * 2005-09-12 2007-11-30 Arteris Sa Systeme et procede de communication asynchrone sur circuit, entre des sous-circuits synchrones
FR2899413B1 (fr) * 2006-03-31 2008-08-08 Arteris Sa Systeme de commutation de message
FR2900017B1 (fr) * 2006-04-12 2008-10-31 Arteris Sa Systeme d'interconnexions de blocs fonctionnels externes sur puce muni d'un unique protocole parametrable de communication
FR2901437B1 (fr) * 2006-05-16 2008-08-08 Arteris Sa Procede de realisation d'un circuit de synchronisation de donnees echangees de maniere asynchrone entre deux blocs synchrones, et circuit de synchronisation elabore a partir d'un tel procede
FR2902957B1 (fr) * 2006-06-23 2008-09-12 Arteris Sa Systeme et procede de gestions de messages transmis dans un reseau d'interconnexions
FR2904445B1 (fr) * 2006-07-26 2008-10-10 Arteris Sa Systeme de gestion de messages transmis dans un reseau d'interconnexions sur puce
US9104478B2 (en) 2012-06-15 2015-08-11 Freescale Semiconductor, Inc. System and method for improved job processing of a number of jobs belonging to communication streams within a data processor
US9286118B2 (en) * 2012-06-15 2016-03-15 Freescale Semiconductor, Inc. System and method for improved job processing to reduce contention for shared resources
US8842675B2 (en) 2012-08-23 2014-09-23 L-3 Communications Corporation Systems and methods for multicore processing of data with in-sequence delivery
US9632977B2 (en) 2013-03-13 2017-04-25 Nxp Usa, Inc. System and method for ordering packet transfers in a data processor
US9372723B2 (en) 2014-04-01 2016-06-21 Freescale Semiconductor, Inc. System and method for conditional task switching during ordering scope transitions
US9372724B2 (en) 2014-04-01 2016-06-21 Freescale Semiconductor, Inc. System and method for conditional task switching during ordering scope transitions
US9733981B2 (en) 2014-06-10 2017-08-15 Nxp Usa, Inc. System and method for conditional task switching during ordering scope transitions
US11169845B2 (en) * 2017-12-21 2021-11-09 Ciena Corporation Flow and application based processor scheduling for network functions virtualization applications using flow identification based on logical calculations on frame based fields

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4598400A (en) * 1983-05-31 1986-07-01 Thinking Machines Corporation Method and apparatus for routing message packets
BE905982A (fr) 1986-12-19 1987-06-19 Electronique Et Telecomm Bell Reseau de commutation de paquets.
US4899335A (en) * 1988-12-21 1990-02-06 American Telephone And Telegraph Company, At&T Bell Laboratories Self routing packet switching network architecture
US5127001A (en) * 1990-06-22 1992-06-30 Unisys Corporation Conference call arrangement for distributed network
US5889764A (en) * 1995-08-31 1999-03-30 Intel Corporation Low-latency multi-party audio chat
US5793747A (en) * 1996-03-14 1998-08-11 Motorola, Inc. Event-driven cell scheduler and method for supporting multiple service categories in a communication network
US6452933B1 (en) * 1997-02-07 2002-09-17 Lucent Technologies Inc. Fair queuing system with adaptive bandwidth redistribution
US6092115A (en) * 1997-02-07 2000-07-18 Lucent Technologies Inc. Method for supporting per-connection queuing for feedback-controlled traffic
US5864540A (en) * 1997-04-04 1999-01-26 At&T Corp/Csi Zeinet(A Cabletron Co.) Method for integrated traffic shaping in a packet-switched network
KR100233091B1 (ko) * 1997-10-23 1999-12-01 윤종용 에이티엠 트래픽 제어장치 및 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009081897A (ja) * 2001-12-21 2009-04-16 Agere Systems Inc パケットフロー識別子に基づいてパケット処理の順序を維持するプロセッサ
EP2670099A1 (en) 2012-05-31 2013-12-04 Hitachi Ltd. Communication apparatus and communication method
US9137158B2 (en) 2012-05-31 2015-09-15 Hitachi, Ltd. Communication apparatus and communication method

Also Published As

Publication number Publication date
EP1061695B1 (en) 2012-01-18
US6721309B1 (en) 2004-04-13
JP3394504B2 (ja) 2003-04-07
ATE542335T1 (de) 2012-02-15
EP1061695A2 (en) 2000-12-20
EP1061695A3 (en) 2004-05-19

Similar Documents

Publication Publication Date Title
JP3394504B2 (ja) 並列スイッチングエンジン中で、パケット順序の完全性を維持する方法および装置
US20240121182A1 (en) System and method for facilitating efficient address translation in a network interface controller (nic)
US10778596B2 (en) Method and system for storing packets for a bonded communication links
US7039058B2 (en) Switched interconnection network with increased bandwidth and port count
EP1055350B1 (en) Arbitration method and apparatus for a non-blocking switch
US7319669B1 (en) Method and system for controlling packet flow in networks
US7046633B2 (en) Router implemented with a gamma graph interconnection network
US6947433B2 (en) System and method for implementing source based and egress based virtual networks in an interconnection network
JP4873834B2 (ja) ファイバーチャンネルフレーム配送のための方法及び装置
US7145914B2 (en) System and method for controlling data paths of a network processor subsystem
US7814283B1 (en) Low latency request dispatcher
TWI527409B (zh) 網路處理器單元及其相關方法
JP3606565B2 (ja) スイッチング装置とその方法
US20020167950A1 (en) Fast data path protocol for network switching
US20040042456A1 (en) Method and system for processing data packets
JP3946145B2 (ja) 高速イーサネット(登録商標)スイッチおよび高速イーサネット(登録商標)データフレームを分配するための方法
WO2009150412A1 (en) Method of data delivery across a network
US8189578B2 (en) Simple fairness protocols for daisy chain interconnects
US7760647B2 (en) Out of band flow control
US20040054811A1 (en) Processing a network packet using queues
US7174394B1 (en) Multi processor enqueue packet circuit
US20140185629A1 (en) Queue processing method
US20050243825A1 (en) Methods and systems for efficient multicast across a mesh backplane
US11349771B2 (en) Method and system for enhanced queue management in a switch
KR100429907B1 (ko) 유니캐스트 패킷과 멀티캐스트 패킷 서비스를 위한 라우터및 라우팅 방법

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030114

LAPS Cancellation because of no payment of annual fees