JP2010219800A - スイッチ装置におけるReordering処理方法 - Google Patents

スイッチ装置におけるReordering処理方法 Download PDF

Info

Publication number
JP2010219800A
JP2010219800A JP2009063364A JP2009063364A JP2010219800A JP 2010219800 A JP2010219800 A JP 2010219800A JP 2009063364 A JP2009063364 A JP 2009063364A JP 2009063364 A JP2009063364 A JP 2009063364A JP 2010219800 A JP2010219800 A JP 2010219800A
Authority
JP
Japan
Prior art keywords
cell
valid
time
invalid
unit
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
JP2009063364A
Other languages
English (en)
Other versions
JP5338404B2 (ja
Inventor
Hideki Nishizaki
秀樹 西崎
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2009063364A priority Critical patent/JP5338404B2/ja
Publication of JP2010219800A publication Critical patent/JP2010219800A/ja
Application granted granted Critical
Publication of JP5338404B2 publication Critical patent/JP5338404B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】スイッチ装置内でセル落ちがあった場合でも処理遅延の増大または処理停止することがないReordering処理方法を提供する。
【解決手段】入力部(1-1-1)〜(1-1-L)から各スイッチパスに送出される有効セル及び無効セルに対して、夫々のセルを送出した時間(セル時間)を付加して送出し、中間段Buffer(1-3-1)〜(1-3-k)は、前記各入力部から送出された前記有効セルと最新の前記無効セルを格納し、該格納した有効セルを、宛先毎に順次指定して古いセル時間が付加された有効セルから読み出して送出するとともに当該宛先の有効セルが無い時には前記格納された最新の無効セルを読み出して送出し、出力部(1-5-1)〜(1-5-N)は、前記各中間段Buffer部から受信した前記セルに付加されているセル時間と前記最新の無効セル情報を基にセルの順序を元に戻して出力する。
【選択図】図1

Description

本発明は、スイッチ装置におけるReordering処理方法に関する。
入力部から出力部に至るスイッチパスがあり、スイッチパスにバッファが存在するなどしてスイッチパスの遅延が異なる場合、入力部から出力したセル順序が逆転して出力部に到達することがある。これをもとのセル順序に戻すために、Reordering処理が行われる。
スイッチ装置ではないが、送信端末と受信端末間の複数パスに一連のデータを送信し、受信端末にて順序逆転があった場合にその順序の補正(以降Reordering処理と記載)を行う手法としては以下のようなものがあった。
例えば特許文献1では、送信端末と受信端末の間の通信で用いられる1つの通信フローのデータを複数のフローに分岐させ、元のフローを復元する通信方法として、送信端末が属する第1のLAN(Local Area Network)と受信端末が属する第2のLANに、それぞれゲートウェイを設置し、送信端末から送出されたTCP(Transmission Control Protocol)コネクションのデータを、第1のLANのゲートウェイにおいてパケット単位でそれぞれの通信経路に振り分け、第2のLANのゲートウェイでは複数の通信経路から受信したパケットの順序逆転をTCPのシーケンス番号に従ってReordering処理を行っている。
この方法では、一連のシーケンス番号を持ったパケットを複数のフロー(スイッチ装置で言うとスイッチパス)に分散し、複数経路から受信したパケットのReordering処理を前記一連のシーケンス番号をもとに実施しているために、受信装置に到着する前にパケット落ちが生じるとReordering処理にて落ちたパケットの到着待ち状態となり処理遅延が増大または処理自体が停止してしまう欠点がある。
また、特許文献2では、送信端末と受信端末間の複数パスに一連のデータを送信し、シーケンス番号を用いてその順序の補正(Reordering処理)を行うことにより、複数の通信回線を効率的に利用し、回線利用率を向上させる方法として、端末のTCPに機能を追加して、従来1本のTCPコネクションを用いていた通信を複数のTCPコネクションを利用するように変更している。
この方法では、送信端末と受信端末間の通信で1つの通信フローで行われていた通信を、複数の通信フローに分割して並列的に送る。即ち、送信端末から受信端末へとデータを送信する場合、送信端末の通信プロトコルは、1つの通信フローのデータを分割して複数の通信フローに振り分け、分割した複数の通信フローを元の1つの通信フローに復元するための復元情報として新たなヘッダをTCP/IP(Transmission Control Protocol/Internet Protocol)パケットに付加して(つまり2系統のシーケンス番号を用いて)、複数の通信フローでデータを送信する。受信端末の通信プロトコルは、複数の通信フローから受信したデータの復元情報を参照し、1つの通信フローを復元する。
このように、2系統のシーケンス番号を用いればフロー毎のパケット落ち監視も可能であるが、特許文献2記載の方法も特許文献1記載の方法と同様に、受信装置に到着する前にパケット落ちが生じるとReordering処理にて落ちたパケットの到着待ち状態となり、処理遅延が増大または処理自体が停止してしまう欠点がある。
特開2002−261478号公報 特開2003−110604号公報 特開2008−017387号公報
Isaac Keslassy, "The Load-Balanced Router," Ph.D. Dissertation, Stanford University, June 2004
上記、送信端末と受信端末間の複数パスに一連のデータを送信し、受信端末にて順序逆転があった場合にその順序の補正(Reordering処理)を行う手法として、送出するデータに一連のシーケンス番号を割り振り、データの受信ポイント(スイッチ装置の場合の出力部に相当)にて、シーケンス番号を基にセル順序を元に戻すReordering処理を行う方法を、ネットワークのコアルータ等として使用されるスイッチ装置に適用した場合、例えばスイッチパスにてビットエラーなどによってセル落ちが生じると、落ちてしまったセルの待ち状態になってしまい、処理が停止してしまうという問題がある。
本発明の目的は、装置内にスイッチパスが複数存在するようなスイッチ装置において、スイッチ装置内でセル落ちがあった場合でも処理遅延の増大または処理停止することがないReordering処理方法を提供することにある。
本発明のスイッチ装置におけるReordering処理方法は、L(Lは2以上の整数)個の入力部と、N(Nは2以上の整数)個の出力部と、一つの前記入力部から一つの前記出力部に対してK(Kは2以上の整数)個のスイッチパスを有するとともに前記スイッチパスごとに設けられた中間段Buffer部を有するスイッチ部とからなるスイッチ装置におけるReordering処理方法であって、前記各入力部から前記各スイッチパスに送出される有効セル及び有効セルがない場合に挿入して送出される無効セルに対して、夫々のセルを送出した時間(セル時間)を付加するセル送出時間情報付加ステップと、前記各入力部から送出された前記有効セルと最新の前記無効セルを前記中間段Buffer部に格納し、該格納された有効セルを、宛先毎に順次指定して古いセル時間が付加された有効セルから読み出して送出するとともに当該宛先の有効セルが無い時には前記格納された最新の無効セルを読み出して送出する中間段Buffer処理ステップと、前記各中間段Buffer部から受信した前記有効セルに付加されているセル時間および前記最新の無効セルに付加されているセル時間を基に有効セルの順序を元に戻して前記出力部から出力するReordering処理ステップ、とからなることを特徴とする。
本発明のスイッチ装置は、L(Lは2以上の整数)個の入力部と、N(Nは2以上の整数)個の出力部と、一つの前記入力部から一つの前記出力部に対してK(Kは2以上の整数)個のスイッチパスを有するとともに前記スイッチパスごとに設けられた中間段Buffer部を有するスイッチ部とからなるスイッチ装置において、前記各入力部に、前記各スイッチパスに送出される有効セル及び有効セルがない場合に挿入して送出される無効セルに対して、夫々のセルを送出した時間(セル時間)を付加するセル送出時間情報付加手段を設け、前記各中間段Buffer部に、前記各入力部から送出された前記有効セルと最新の前記無効セルを格納し、宛先毎に順次指定して古いセル時間が付加された有効セルから読み出して送出するとともに当該宛先の有効セルが無い時には前記最新の無効セルを読み出して送出する中間段Buffer処理手段を設け、前記各出力部に、受信した前記有効セルに付加されているセル時間および前記最新の無効セルに付加されているセル時間を基に前記有効セルの順序を元に戻して出力するReordering処理手段を設けたことを特徴とする。
本発明によれば、入力部から出力部に至る経路にてビットエラーなどでセルが落ちてしまった場合でも、処理を停止することなく送出時間の古い順にセル送出するReordering処理が可能となる。
本発明が適用されるスイッチ装置の一例を示すブロック図である。 図1に示すスイッチ装置におけるスイッチパスの経路説明図である。 本発明のReordering処理方法を適用した入力部の実施形態示すブロック図である。 本発明のReordering処理方法を適用した各中間段Bufferの実施形態を示すブロック図である。 本発明のReordering処理方法を適用した各出力部の実施形態を示すブロック図である。 本発明のスイッチ装置における中間段Buffer部のセル格納動作を説明するための図である。 本発明のスイッチ装置における中間段Buffer部のセル送出動作を説明するための図である。 本発明のスイッチ装置における出力部のセル送出動作を説明するための図である。
図1は、本発明を適用するスイッチ構成の一例を示すブロック図であり、L個の入力部、k個の中間段Buffer、N個の出力部で構成されるロードバランス型スイッチの構成例である。なお、ロードバランス型スイッチの動作に関しては、例えば特許文献3あるいは非特許文献1等に記載されている。
本例では、入力部と中間段Buffer間、中間段Bufferと出力部間はそれぞれクロスバ(XBAR)スイッチで接続されている構成を示しているが、前段XBAR Switch(1-2)と後段XBAR Switch(1-4)を、光ケーブルなどを用いて物理的にメッシュ接続とする形態に置き換えることも可能である。
入力部(1-1-1)〜(1-1-L)は、それぞれ前段XBAR Switch(1-2)の入力ポートに接続されており、前段XBAR Switch(1-2)の出力ポートは、中間段Buffer(1-3-1)〜(1-3-k)に接続されている。つまり、入力部(1-1-1)〜(1-1-L)から出力されたセルは、前段XBAR Switch(1-2)を介して中間段Buffer(1-3-1)〜(1-3-k)に到達することになる。
中間段Buffer(1-3-1)〜(1-3-k)は、前段XBAR Switch(1-2)を介して入力部(1-1-1)〜(1-1-L)から受信したセルを、宛先となる出力部単位に格納するVOQ(Virtual Output Queue)を内蔵している。中間段Buffer(1-3-1)〜(1-3-k)の出力は、後段XBAR Switch(1-4)の入力ポートに接続されており、後段XBAR Switch(1-4)の出力ポートは、出力部(1-5-1)〜(1-5-N)に接続されている。
つまり、中間段Buffer(1-3-1)〜(1-3-k)から出力されたセルは、後段XBAR Switch(1-4)を介して出力部(1-5-1)〜(1-5-N)に到達することになる。出力部(1-5-1)〜(1-5-N)は、後段XBAR Switch(1-4)からセルを受け取り、入力部(1-1-1)〜(1-1-L)毎にセル順序を確認して、セルの順序逆転があった場合には、正しいセル順にする処理を行う。
図1に示すロードバランス型スイッチでは、ある入力部からある出力部へセルを送出する場合、中間段Buffer(1-3-1)〜(1-3-k)の何れかを経由することになる。このため、図2に示すように例えば入力部1から出力部1にセルを出力する場合、k個のスイッチパスが存在する。
この場合、同一スイッチパス内ではセル順序が入れ替わることはないが、スイッチパスには途中にバッファ(中間段Buffer)が存在するために中間段Buffer(1-3-1)〜(1-3-k)間のセル蓄積状態の差分により入力部から出力部までの到達時間がスイッチパス毎に異なる場合があり、異なるスイッチパスを使用してセルを送出した場合、出力部にはセル順序が逆転して到着する場合がある。このため、出力部においてセル順序を元に戻すためのReordering処理が必要となる。
図3は、本発明のReordering処理方法を適用した入力部の実施形態(入力部を(4-1-1)〜(4-1-4)までの4ブロック構成とした場合)を示すブロック図である。本実施形態の入力部では、各スイッチパスに送出するセルに対して、送出した時間情報が付加される。
入力部(4-1-1)〜(4-1-4)は、それぞれ時間情報付加部(4-2-1)〜(4-2-4)を内蔵している。時間情報付加部(4-2-1)〜(4-2-4)は、時間情報生成部(4-4)から受信したセル時間情報を、受信したセルに付加して前段XBAR Switch(4-3)へ出力する。時間情報付加部(4-2-1)〜(4-2-4)に入力されるセルは、有効なデータを搭載した有効セルと有効セルがない場合に挿入される無効セルの2種類ある。
時間情報生成部(4-4)は、1セル送出するのにかかる時間毎にカウントアップするカウンタを内蔵しており、セル時間(カウント値)を入力部(4-1-1)〜(4-1-4)内の時間情報付加部(4-2-1)〜(4-2-4)に送出する。
図4は、本発明のReordering処理方法を適用した各中間段Bufferの実施形態(出力部を4ブロック構成とした場合)を示すブロック図である。本実施形態の中間段Bufferでは、受信セルはVOQ(Virtual Output Queue)で管理され、宛先のQueueに有効出力セルがない場合には、内部保持している最新の無効セルが送出される。
そのため、中間段Buffer(5-1)は、有効/無効判定部(5-2)、レジスタ(5-3)、VOQ(5-4)、選択部(5-5)から成る。有効/無効判定部(5-2)は、受信セルを有効セルと無効セルに分け、有効セルはVOQ(5-4)に、無効セルはレジスタ(5-3)に送出する。レジスタ(5-3)は、受信した無効セルを保持するブロックで、無効セルを受信する毎に上書きしていき、常に最新の1セル情報だけを保持している。
VOQ(5-4)は、宛先単位にQueueを配備しているVOQ(Virtual Output Queue)構成のメモリであり、受信した有効セルを、その宛先毎に格納していく。選択部(5-5)は、VOQ(5-4)の各Queueに格納されている有効セルまたはレジスタ(5-3)に格納されている無効セルを宛先毎に順次読み出し、後段XBAR Switchへ出力する。
図5は、本発明のReordering処理方法を適用した各出力部の実施形態(中間段Bufferを4ブロック構成とした場合)を示すブロック図である。本実施形態の出力部では、受信した有効セルに付加されているセル時間および受信した最新の無効セルに付加されているセル時間を基にして、出力する有効セルの順序を元に戻すReordering処理が行われる。
出力部(6-1)は、Reordering処理部(6-5)を内蔵している。Reordering処理部(6-5)は、書込制御部(6-2)、MEM部(6-3)、読出制御部(6-4)から成り、MEM部(6-3)は、入力された有効セルをセルが経由した中間段Buffer毎に格納するように複数のQueueで構成されたメモリである。
入力された有効セルは、書込制御部(6-2)からMEM部(6-3)に、経由した中間段Buffer毎に書き込まれる。無効セルが入力された場合は、無効セルの情報(搭載しているセル時間、経由した中間段Buffer)を読出制御部(6-4)に送出する。読出制御部(6-4)は、書込制御部(6-2)から受信した無効セルの情報とMEM部(6-3)の各Queueの先頭に格納されている有効セルのセル時間情報を考慮してMEM部(6-3)から読み出す有効セルの読み出し制御を行う。
次に、本実施形態の動作について説明する。
図3における各入力部は、図1における入力部(1-1-1)〜(1-1-L)を、入力部(4-1-1)〜(4-1-4)までの4ブロック構成の場合の例を示している。時間情報生成部(4-4)は、セル時間(1セル送出するのにかかる時間)毎にカウントアップするカウンタを内蔵しており、セル時間(カウント値)を入力部(4-1-1)〜(4-1-4)内の時間情報付加部(4-2-1)〜(4-2-4)に送出する。
入力部(4-1-1)〜(4-1-4)内に配備されている時間情報付加部(4-2-1)〜(4-2-4)は、時間情報生成部(4-4)から受信したセル時間情報を、受信したセルに付加して前段XBAR Switch(4-3)に出力する。時間情報付加部(4-2-1)〜(4-2-4)に入力されるセルは、有効なデータを搭載した有効セルと有効セルがない場合に挿入される無効セルの2種類あるが、時間情報付加部(4-2-1)〜(4-2-4)は、有効セルと無効セルの何れのセルに対しても、前記セル時間情報を付加して前段XBAR Switch(4-3)に出力する。
図4における中間段Buffer(5-1)は、図1における中間段Buffer(1-3-1)〜(1-3-k)に相当し、図1における出力部を4個備えている場合の例を示している。有効/無効判定部(5-2)は、受信セルを有効セルと無効セルに分け、有効セルはVOQ(5-4)に、無効セルはレジスタ(5-3)に送出する。レジスタ(5-3)は、受信した無効セルを保持するブロックであり、無効セルを受信する毎に上書きしていき、常に最新の1セル情報だけ保持している。
VOQ(5-4)は、宛先単位にQueueを配備しているVOQ(Virtual Output Queue)構成のメモリであり、受信した有効セルの宛先毎に格納していく。選択部(5-5)は、VOQの各Queueから1セルずつ順番に有効セルを読み出して送出するが、Queueに有効セルが格納されていない場合にはレジスタ(5-3)に格納されている無効セルを読み出して送出する。
図6は、図4の中間段Buffer(5-1)におけるセル入力からレジスタ(5-3)またはVOQ(5-4)に格納されるまでの動作をセル時間順に示したものである。以下、中間段Bufferにおけるセル格納動作をセル入力時間順に説明する。なお、以下の説明では、図3の入力部(4-1-1)〜(4-1-4)において時間情報付加部(4-2-1)〜(4-2-4)によってセルに付加された時間情報を「」で囲んだ数字で示す。
■セル時間T1
出力部1行きのセル「1」受信、VOQ(5-4)の出力部1行きのセルを格納するQueueにセル「1」を格納、
■セル時間T2
無効セル「2」受信、レジスタ(5-3)に無効セル「2」を書き込み、
■セル時間T3
出力部2行きのセル「3」受信、VOQ(5-4)の出力部2行きのセルを格納するQueueにセル「3」を格納、
■セル時間T4
出力部3行きのセル「4」受信、VOQ(5-4)の出力部3行きのセルを格納するQueueにセル「4」を格納、
■セル時間T5
出力部4行きのセル「5」受信、VOQ(5-4)の出力部4行きのセルを格納するQueueにセル「5」を格納、
■セル時間T6
出力部1行きのセル「6」受信、VOQ(5-4)の出力部1行きのセルを格納するQueueにセル「6」を格納、
■セル時間T7
無効セル「7」受信、レジスタ(5-3)に無効セル「7」を書き込み(セル時間T2で書き込んだ内容に上書き)、
■セル時間T8
出力部4行きのセル「8」受信、VOQ(5-4)の出力部4行きのセルを格納するQueueにセル「8」を格納。
図7は、図4の中間段Buffer(5-1)におけるレジスタ(5-3)またはVOQ(5-4)からセルを読み出す過程をセル時間順に示したものである。以下、中間段Bufferにおけるセル送出動作をセル送出時間順に説明する。
なお図7に示すセル送出時間T1〜T8と図6に示すセル入力時間T1〜T8は無関係であり時間的に一致していることを示すものではない。また本来は、レジスタ(5-3)に格納される無効セル情報は無効セル受信の度に上書きされるが、本例では説明を簡単にするために、常にセル時間7の情報を持った無効セル「7」が格納されている場合を示す。
■セル時間T1
VOQ(5-4)から出力部1行きのセル「1」を読み出して送出、
■セル時間T2
VOQ(5-4)から出力部2行きのセル「3」を読み出して送出、
■セル時間T3
VOQ(5-4)から出力部3行きのセル「4」を読み出して送出、
■セル時間T4
VOQ(5-4)から出力部4行きのセル「5」を読み出して送出、
■セル時間T5
VOQ(5-4)から出力部1行きのセル「6」を読み出して送出、
■セル時間T6
VOQ(5-4)に出力部2行きのセルが格納されていないため、レジスタ(5-3)から無効セル「7」を読み出して送出、
■セル時間T7
VOQ(5-4)に出力部3行きのセルが格納されていないため、レジスタ(5-3)から無効セル「7」を読み出して送出、
■セル時間T8
VOQ(5-4)から出力部4行きのセル「8」を読み出して送出。
図5における出力部(6-1)は、図1における各出力部(1-5-1)〜(1-5-k)に相当し、図1における中間段Bufferを4個備えている場合の例を示している。入力された有効セルは、書込制御部(6-2)からMEM部(6-3)に、経由した中間段Buffer毎に書き込まれる。無効セルが入力された場合は、無効セルの情報(搭載しているセル時間、および経由した中間段Buffer)を読出制御部(6-4)に送出する。読出制御部(6-4)は、書込制御部(6-2)から受信した無効セルの情報により、経由した中間段Buffer毎に最新の無効セルのセル時間情報(最新無効セル情報)を保持している。
また、読出制御部(6-4)は、MEM部(6-3)の各Queueの先頭に格納されている有効セルのセル時間情報を参照し、最も古い時間情報が付加されているセルを読み出していく。MEM部(6-3)の各Queueのうち、有効セルが格納されていないQueueがあった場合は、そのQueueに関連付けられている中間段Bufferを経由した最新無効セル情報と比較する。
図8は、図5の出力部におけるMEM部(6-3)からセルを読み出す過程をセル時間順に示したものである。以下、MEM部(6-3)からのセルを読み出し動作をセル送出時間順に説明する。
なお、図8中の最新無効セル情報は図5における読出制御部(6-4)内に配備されており、経由した中間段Buffer毎に保持している最新の無効セルのセル時間情報(最新無効セル情報)に相当し、中間段Buffer毎に入力された最新の無効セルによって上書きされる。また本例においては、最新無効セル情報は簡単のため、中間段Buffer1〜4からの最新の無効セルの時間情報は、読み出し動作中全てセル時間13のまま変わらない場合を示す。
■セル時間T1
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較し、最も古い時間情報(セル時間1)を持っている中間段Buffer1経由のセル「1」を読み出す、
■セル時間T2
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較し、最も古い時間情報(セル時間2)を持っている中間段Buffer1経由のセル「2」を読み出す、
■セル時間T3
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較し、最も古い時間情報(セル時間4)を持っている中間段Buffer1経由のセル「4」を読み出す、
■セル時間T4
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較し、最も古い時間情報(セル時間5)を持っている中間段Buffer2経由のセル「5」を読み出す、
■セル時間T5
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較し、最も古い時間情報(セル時間6)を持っている中間段Buffer2経由のセル「6」を読み出す、
■セル時間T6
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較し、最も古い時間情報(セル時間7)を持っている中間段Buffer1経由のセル「7」を読み出す。
■セル時間T7
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較すると、この時、中間段Buffer1経由のセルを格納するQueueは空であるので、中間段Buffer1経由のセルの最新無効セル情報(セル時間13)を比較セルとして使用する。比較の結果、最も古い時間情報(セル時間8)を持っている中間段Buffer2経由のセル「8」を読み出す。
もし中間段Buffer1経由のセルの最新無効セルの時間情報が、他の中間段Buffer経由で格納されている有効セルの時間情報よりも古い場合(例えば、中間段Buffer2〜4経由のセルを格納するQueueの先頭セルがいずれも中間段Buffer1経由のセルの最新無効セル情報(セル時間13)よりも新しいセル時間の有効セルである場合)には、出力部からの読み出しは行わない。これは、その後に中間段Buffer1経由で前記無効セルの時間情報よりは新しいが、他の中間段Buffer経由で格納されている有効セルの時間情報よりも古い有効セルが到着する可能性があるので、Queueが空となった中間段Buffer1経由のセル情報を除いて比較読み出しを行うと、読み出し順序が逆転する虞がある。
そこで、Queueが空となった場合には、当該Queueに対応する中間段Buffer経由の最新無効セル情報を比較セルとして使用することにより、無効セルのセル時間よりも古いセル時間が付加された有効セルの中で最も古いセル時間が付加された有効セルを読み出すことにより、読み出し順序の逆転を防ぐようにしている。
■セル時間T8
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較すると、この時、中間段Buffer1、2経由のセルを格納するQueueは空であるので、中間段Buffer1、2経由のセルの最新無効セル情報(セル時間13)を比較セルとして使用する。比較の結果、最も古い時間情報(セル時間9)を持っている中間段Buffer3経由のセル「9」を読み出す。
■セル時間T9
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較すると、この時、中間段Buffer1、2経由のセルを格納するQueueは空なので、中間段Buffer1、2経由のセルの最新無効セル情報(セル時間13)を使用する。比較の結果、最も古い時間情報(セル時間10)を持っている中間段Buffer3経由のセル「10」を読み出す。
■セル時間T10
MEM部(6-3)を構成する各Queueの先頭セルのセル時間を比較すると、この時、中間段Buffer1、2、3経由のセルを格納するQueueは空なので、中間段Buffer1、2、3経由のセルの最新無効セル情報(セル時間13)を比較セルとして使用する。比較の結果、最も古い時間情報(セル時間12)を持っている中間段Buffer4経由のセル「12」を読み出す。
以上の動作の結果、出力部1のMEM部(6-3)から出力されるセル順序は、入力部で付加された時刻情報の古い順(1,2,4,5,6,7,8,9,10,12)に読み出されて出力される。この場合、セル時間「3」と「11」には有効セルが出力されなかった(無効セルが出力された)ということになり、セル時間「3」あるいは「11」が付加されたセルの到着を待つことなく、MEM部(6-3)に格納されたセルを、その時刻情報が古い順に読み出して出力する。
なお、図5では、時刻「10」に、入力部1から中間段Buffer3に出力部1行きのセル「10」が送出され、入力部2から中間段Buffer4に出力部1行きのセル「10」が送出され、出力部1には時刻「10」を持ったセル「10」が2つ入力され、MEM部(6-3)の中間段Buffer3経由のセルを格納するQueueと中間段Buffer4経由のセルを格納するQueueにそれぞれ格納された場合を示している。
この場合、出力部1のMEM部(6-3)から出力されるセル順序は、入力部で付加された時刻情報の古い順(1,2,4,5,6,7,8,9,10,10,12)に読み出されるが、同じ時間情報(この場合時間情報「10」)を持ったセルであればどちらを先に読み出しても問題はない。図5に示す例では、若番の中間段Buffer3を経由したセルの方を先に出力している。
このように本実施形態では、出力部1から出力されるセル順序は、経由した中間段Buffer毎にセルを格納するMEM(メモリ)部の各Queueの全てに有効セルが格納されている場合には、各Queueの先頭に格納されている有効セルのセル時間比較をセル送出タイミング毎に行って最も古いセル時間が付加された有効セルから順に読み出されるので、入力部から出力部に至る経路にてビットエラーなどでセルが落ちてしまった場合でもReordering処理を停止することなく実行可能となる。
また、セル送出のためのセル時間比較の際に、経由した中間段Buffer毎にセルを格納するMEM(メモリ)部の一部のQueueが空となった場合には、該空となったQueueに対応する中間段Bufferから受信した最新の無効セルのセル時間をセル時間比較対象に加え、該無効セルのセル時間よりも古いセル時間が付加された有効セルの中で最も古いセル時間が付加された有効セルを読み出すので、セル読み出し順序の逆転を防ぐことができる。
またその場合、空となったQueueに対応する中間段Bufferから受信した最新の無効セルのセル時間が、他のQueueの先頭有効セルのセル時間よりも古い場合には、出力部からの読み出しは行われないが、空となったQueueに対応する中間段Bufferから有効セルが入力されて当該Queueに格納されて、全てのQueueに有効セルが格納された状態となれば、各Queueの先頭に格納されている有効セルのセル時間比較によるセル送出動作に戻ることができるので、これによりReordering処理が停止してしまうこともない。
例えばセルの送出順序を、セル出力毎にシーケンス番号を振り分け、シーケンス番号で管理する方式を用いた場合、シーケンス番号3のセルが装置内でビットエラーやバッファ溢れなど何らかの理由で廃棄されると、出力部でシーケンス番号3のセルを待ち続けることになってしまい、シーケンス番号4のセルが出力部から出力されない状態、即ちReordering処理停止状態に陥ってしまうことになるが、本実施形態では、Reordering処理を、セル送出時間と最新無効セル情報とにより管理する構成としたので、セル落ちによるReordering処理動作不可能状態を回避することができ、また、セル読み出し順序の逆転を防ぐことができる。
以上のとおり、本発明においては、セルに付加される時刻情報は、有効セルがない場合には無効セルに時刻情報が付加されて送出されるので、Reordering処理では、経由してきた中間段Buffer部毎にどの時刻のセルまで届いているかということを認識することができる。すなわち、Reordering処理部にて、経由してきた中間段Buffer毎に有効セルを蓄積するMEM(メモリ)を構成するQueueの先頭の有効セルのセル時刻を参照することにより、中間段Buffer毎にどの時刻のセルまで出力部に送出されたかが分かる。
また、Queueが空となった場合には、当該Queueに対応する中間段Buffer経由で受信した最新無効セルの時刻情報を参照することによって、読み出し順序の逆転を防ぐ。その場合、空となったQueueに対応する中間段Bufferから受信した最新の無効セルのセル時間が、他のQueueの先頭有効セルのセル時間よりも古い場合には、出力部からの読み出しは行われないが、空となったQueueに有効セルが格納された時点で、各Queueの先頭に格納されている有効セルのセル時間比較によるセル送出動作に戻る。
さらに、中間段Bufferに格納される無効セル情報は、入力部から新たな無効セルが送出される毎に上書きされ、また、中間段Buffer毎に格納される出力部無効セルの時刻情報も最新無効セルが入力される毎に上書きされるので、出力部のMEMに格納された有効セルの読み出しが停止して動作不可能な状態となることはない。
したがって、入力部からのセルの送出順序をシーケンス番号で送出した場合のように、スイッチパスの途中でビットエラーなどによるセル落ちの発生によってReordering処理が停止して動作不可能な状態に陥ることはない。
このように本発明では、入力部−出力部間におけるセル順序管理に使用する情報として、入力部から送出する有効セルおよび無効セル(空セル)に時間情報(セル時間)を付加し、出力部において、有効セルの時間情報と最新の無効セル情報を基にしてReordering処理しているので、入力部から出力部に至る経路にてビットエラーなどでセルが落ちてしまった場合でも、処理を停止することなく送出時間の古い順にセル送出するReordering処理が可能となる。
1-1-1〜1-1-L、4-1-1〜4-1-4 入力部
1-2、4-3 前段XBAR Switch
1-3-1〜1-3-k、5-1 中間段Buffer
1-4 後段XBAR Switch
1-5-1〜1-5-N、6-1 出力部
4-2-1〜4-2-4 時間情報付加部
4-4 時間情報生成部
5-2 有効/無効判定部
5-3 レジスタ
5-4 VOQ(Virtual Output Queue)
5-5 選択部
6-2 書込み制御部
6-3 MEM(メモリ)部
6-4 読出し制御部
6-5 Reordering処理

Claims (9)

  1. L(Lは2以上の整数)個の入力部と、N(Nは2以上の整数)個の出力部と、一つの前記入力部から一つの前記出力部に対してK(Kは2以上の整数)個のスイッチパスを有するとともに前記スイッチパスごとに設けられた中間段Buffer部を有するスイッチ部とからなるスイッチ装置におけるReordering処理方法であって、
    前記入力部から前記各スイッチパスに送出される有効セル及び有効セルがない場合に挿入して送出される無効セルに対して、夫々のセルを送出した時間(セル時間)を付加するセル送出時間情報付加ステップ、
    前記各入力部から送出された前記有効セルと最新の前記無効セルを前記中間段Buffer部に格納し、該格納された有効セルを、宛先毎に順次指定して古いセル時間が付加された有効セルから読み出して送出するとともに当該宛先の有効セルが無い時には前記格納された最新の無効セルを読み出して送出する中間段Buffer処理ステップ、
    前記各中間段Buffer部から受信した前記有効セルに付加されているセル時間および前記最新の無効セルに付加されているセル時間を基に、有効セルの順序を元に戻して前記出力部から出力するReordering処理ステップ、
    からなることを特徴とするスイッチ装置におけるReordering処理方法。
  2. 前記セル送出時間情報付加ステップは、1セル送出する毎にセル時間をカウントするステップ、前記送出される有効セル及び無効セルに前記カウントしたセル時間を順次付加するステップ、とからなることを特徴とする請求項1に記載のスイッチ装置におけるReordering処理方法。
  3. 前記中間段Buffer処理ステップは、前記各入力部から送出された前記有効セルと前記無効セルとを分ける有効/無効判定ステップ、該有効/無効判定ステップで分けられた無効セルを受信して上書きすることにより常に最新の無効セルを1セルだけ保持するステップ、前記有効/無効判定ステップで分けられた有効セルを受信して宛先毎にQueueに格納するステップ、前記宛先毎のQueueを順次指定してその先頭に格納されている有効セルを読み出して出力するステップ、指定したQueueに前記有効セルが格納されていないとき前記保持中の無効セルを読み出して出力するステップ、とからなることを特徴とする請求項1または2に記載のスイッチ装置におけるReordering処理方法。
  4. 前記Reordering処理ステップは、入力された前記有効セルを、該セルが経由した前記中間段Buffer毎に格納するK個のQueueで構成されたMEM(メモリ)部へ格納するステップ、入力された前記無効セルのセル時間を、該無効セルが経由した前記中間段Buffer毎に上書きして格納するステップ、前記MEM(メモリ)部の各Queueの先頭に格納されている有効セルのセル時間比較をセル送出タイミング毎に行って最も古いセル時間が付加された有効セルから順に読み出すステップ、有効セルがないQueueが発生したとき当該Queueに対応して格納されている前記無効セルのセル時間を比較対象に加えて前記セル時間比較を行い、該無効セルのセル時間よりも古いセル時間が付加された有効セルの中で最も古いセル時間が付加された有効セルを読み出すステップ、前記読み出した有効セルを出力するステップ、とからなることを特徴とする請求項1〜3の何れか1項に記載のスイッチ装置におけるReordering処理方法。
  5. L(Lは2以上の整数)個の入力部と、N(Nは2以上の整数)個の出力部と、一つの前記入力部から一つの前記出力部に対してK(Kは2以上の整数)個のスイッチパスを有するとともに前記スイッチパスごとに設けられた中間段Buffer部を有するスイッチ部とからなるスイッチ装置であって、
    前記各入力部に、前記各スイッチパスに送出される有効セル及び有効セルがない場合に挿入して送出される無効セルに対して、夫々のセルを送出した時間(セル時間)を付加するセル送出時間情報付加手段を設け、
    前記各中間段Buffer部に、前記各入力部から送出された前記有効セルと最新の前記無効セルを格納し、宛先毎に順次指定して古いセル時間が付加された有効セルから読み出して送出するとともに当該宛先の有効セルが無い時には前記最新の無効セルを読み出して送出する中間段Buffer処理手段を設け、
    前記各出力部に、受信した前記有効セルに付加されているセル時間および前記最新の無効セルに付加されているセル時間を基に前記有効セルの順序を元に戻して出力するReordering処理手段を設けたことを特徴とするスイッチ装置。
  6. 前記セル送出時間情報付加手段は、1セル送出する毎にセル時間をカウントアップするカウンタによりカウントしたセル時間(カウント値)を出力する時間情報生成部と、該時間情報生成部から受信したセル時間情報を、当該入力部に入力された前記有効セル及び無効セルに順次付加して送出する時間情報付加部と、を備えていることを特徴とする請求項5に記載のスイッチ装置。
  7. 前記中間段Buffer処理手段は、入力された前記有効セルと前記無効セルとを分ける有効/無効判定部と、該有効/無効判定部で分けられた無効セルを受信して上書きすることにより最新の無効セルを1セルだけ保持するレジスタと、宛先単位にQueueを配備し、前記有効/無効判定部で分けられた有効セルを受信して宛先毎に前記Queueに格納するVOQ(Virtual Output Queue)と、前記VOQの各Queueを順次指定してその先頭に格納されている有効セル読み出すとともに、指定したQueueに前記有効セルが格納されていないとき前記レジスタに格納されている無効セルを読み出し、該読み出した有効セルまたは無効セルを送出する選択部と、を備えていることを特徴とする請求項5または6に記載のスイッチ装置。
  8. 前記Reordering処理手段は、前記有効セルが入力されたとき、該有効セルをMEM(メモリ)部へ送出する機能、および前記無効セルが入力されたとき、該無効セルに付加されているセル時間と該無効セルが経由した前記中間段Bufferの情報を読出制御部へ送出する機能を有する書込み制御部と、前記書込み制御部から入力された前記有効セルを該セルが経由した前記中間段Buffer毎に格納するK個のQueueで構成された前記MEM(メモリ)部と、前記書込み制御部から入力された前記無効セルのセル時間を、該無効セルが経由した前記中間段Buffer毎に上書きして格納する機能、前記MEM(メモリ)部の各Queueの先頭に格納されている有効セルのセル時間比較をセル送出タイミング毎に行って最も古いセル時間が付加された有効セルから順に読み出す機能、有効セルがないQueueが発生したとき当該Queueに対応して格納されている前記無効セルのセル時間を比較対象に加えて前記セル時間比較を行い、該無効セルのセル時間よりも古いセル時間が付加された有効セルの中で最も古いセル時間が付加された有効セルを読み出す機能、および前記読み出した有効セルを出力する機能を有する前記読出し制御部と、を備えていることを特徴とする請求項5〜7の何れか1項に記載のスイッチ装置。
  9. 前記スイッチ装置は、L個の入力部、K個の中間段Buffer、N個の出力部で構成されるロードバランス型スイッチであることを特徴とする請求項5〜8の何れか1項に記載のスイッチ装置。
JP2009063364A 2009-03-16 2009-03-16 スイッチ装置におけるReordering処理方法 Expired - Fee Related JP5338404B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009063364A JP5338404B2 (ja) 2009-03-16 2009-03-16 スイッチ装置におけるReordering処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009063364A JP5338404B2 (ja) 2009-03-16 2009-03-16 スイッチ装置におけるReordering処理方法

Publications (2)

Publication Number Publication Date
JP2010219800A true JP2010219800A (ja) 2010-09-30
JP5338404B2 JP5338404B2 (ja) 2013-11-13

Family

ID=42978163

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009063364A Expired - Fee Related JP5338404B2 (ja) 2009-03-16 2009-03-16 スイッチ装置におけるReordering処理方法

Country Status (1)

Country Link
JP (1) JP5338404B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05207062A (ja) * 1992-01-27 1993-08-13 Nec Corp パケット交換方式
JP2000165412A (ja) * 1998-08-21 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> Atmスイッチ

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05207062A (ja) * 1992-01-27 1993-08-13 Nec Corp パケット交換方式
JP2000165412A (ja) * 1998-08-21 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> Atmスイッチ

Also Published As

Publication number Publication date
JP5338404B2 (ja) 2013-11-13

Similar Documents

Publication Publication Date Title
US9426083B2 (en) Consistency checking for credit-based control of data communications
US9313115B2 (en) Traffic generator with priority flow control
JP5028431B2 (ja) ネットワーク中継装置およびパケット振り分け方法
US6907041B1 (en) Communications interconnection network with distributed resequencing
US8687483B2 (en) Parallel traffic generator with priority flow control
US9319310B2 (en) Distributed switchless interconnect
US9172660B2 (en) Switch fabric with collector-based cell reordering
US20110261705A1 (en) Mapping Traffic Classes to Flow Control Groups
US8189578B2 (en) Simple fairness protocols for daisy chain interconnects
US9001841B2 (en) Communication control device, parallel computer system, and communication control method
JP4588259B2 (ja) 通信システム
JP2008042504A (ja) スイッチ装置、スイッチ方法、及びプログラム
US9210093B2 (en) Alignment circuit and receiving apparatus
JP5338404B2 (ja) スイッチ装置におけるReordering処理方法
KR20150112932A (ko) 수동 연결성 광학 모듈
US10609188B2 (en) Information processing apparatus, information processing system and method of controlling information processing system
US9503396B2 (en) Cell forwarding order selection for sending packets
JP2009177256A (ja) パケットスイッチ装置およびパケットスイッチ方法
JP2009188623A (ja) ネットワーク中継装置およびネットワーク中継方法
JP2009188501A (ja) スイッチ装置およびセル落ち検出方法
JP2015525984A (ja) 通信システム、制御装置、通信方法及びプログラム
US20230171201A1 (en) Method for sending data packet and network device
JP2016116056A (ja) 伝送装置及び伝送方法
US9148377B2 (en) Method and system for transmitting data packets in a network
KR100429907B1 (ko) 유니캐스트 패킷과 멀티캐스트 패킷 서비스를 위한 라우터및 라우팅 방법

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20110706

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130219

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130722

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees