JP3995482B2 - Router that transmits flow control signals at high speed - Google Patents

Router that transmits flow control signals at high speed Download PDF

Info

Publication number
JP3995482B2
JP3995482B2 JP2002014136A JP2002014136A JP3995482B2 JP 3995482 B2 JP3995482 B2 JP 3995482B2 JP 2002014136 A JP2002014136 A JP 2002014136A JP 2002014136 A JP2002014136 A JP 2002014136A JP 3995482 B2 JP3995482 B2 JP 3995482B2
Authority
JP
Japan
Prior art keywords
packet
port
transmission
flow control
fcd
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.)
Expired - Fee Related
Application number
JP2002014136A
Other languages
Japanese (ja)
Other versions
JP2003218927A (en
Inventor
雅之 小川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002014136A priority Critical patent/JP3995482B2/en
Publication of JP2003218927A publication Critical patent/JP2003218927A/en
Application granted granted Critical
Publication of JP3995482B2 publication Critical patent/JP3995482B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は,ルータに関し,特に,ルータ内部で通信されるフロー制御信号の高速伝達を可能とするルータに関する。
【0002】
【従来の技術】
図4は,従来のルータ100の構成例を示すブロック図である。このルータ100は,たとえばエッジルータであり,ポート#0〜#7の8ポートを有する。ルータ100は,ポート#0〜#7にそれぞれ対応するポート部(LANポート部)1100〜1107と,ポート部1100〜1107間のIPパケット(またはフレーム)のスイッチングを行うコアスイッチ130とを有する。
【0003】
ポート部1100〜1107は,いずれも同じ構成を有するので,1つのポート部110i(iは0〜7のいずれかの整数)を例に,その説明をする。
【0004】
ポート部110iは,L1/L2処理部111(たとえばPHY/MAC),L3処理部112(L3 Logic),受信キュー管理部113(QMLR:Queue Management Logic on Receiver),バッファ制御部114(たとえばDBC:Double Buffer Controller),RAM115,FDC(Frame Divide Controller)116,FIFO117および119,トランシーバ118,ならびにL3制御部120(LC:L3-Logic Controller)を有する。
【0005】
図中,実線はパケット(フレーム)の流れを示し,破線はフロー制御信号(バックプレッシャ信号)の流れを示している。また,一点鎖線は制御信号の流れを示している。
【0006】
L1/L2処理部111には,通信ケーブル(たとえば10Base-T,100Base-T等のイーサネットケーブル)が取り付けられ,この通信ケーブルを介して,他のルータ,端末等が接続される。このL1/L2処理部111は,レイヤ1(物理層)およびレイヤ2(データリンク層)のプロトコル処理を行い,L3処理部112から与えられたパケットを通信ケーブルを介して他のルータ,端末等に送信するとともに,他のルータ,端末等から受信したパケットをL3処理部112に与える。
【0007】
L3処理部112は,レイヤ3(ネットワーク層)のプロトコル処理を行い,L3制御部120からのパケットをL1/L2処理部11に与えるとともに,L1/L2処理部111からのパケットをバッファ制御部114に与える。具体的には,L3処理部112は,パケットを解析し,ルーティングテーブルに基づいて,宛先(送信先)ポート番号を決定した後,後段のブロック200にパケットを与え,また,送信時のIP/MACのフィルタリング,VLAN(バーチャルLANのタグ操作等)を行う。
【0008】
バッファ制御部114は,受信キュー管理部113の制御の下,L3処理部112から与えられたパケットをRAM115に書き込む。パケットが書き込まれたRAM115のアドレスは,バッファ制御部114から受信キュー管理部113に与えられる。
【0009】
FDC116は,受信キュー管理部113から指示されたらRAM115のアドレスからパケットを読み出し,FIFO117を介してトランシーバ118にパケットを与える。
【0010】
トランシーバ118は,コアスイッチ130を介して,他のポート部110j(jは0〜7のいずれかの整数で,i=jの場合を含む。)のトランシーバ118と調停を行う。他のポート部110jは,パケットを受け入れることができる場合には,調停相手のポート部110iのトランシーバ118にACK信号を返す。
【0011】
ポート部110iのトランシーバ118は,ACK信号を返したポート部110jに,該ポート部110jを宛先ポートとするパケットを,コアスイッチ200を介して与える。
【0012】
ポート部110jのトランシーバ118に与えられたパケットは,ポート部110jのFIFO119,L3制御部120,L3処理部112,およびL1/L2処理部111を介して他のルータまたは端末に送信される。
【0013】
L1/L2処理部111,L3処理部112,バッファ制御部114,FDC116,トランシーバ118,およびL3制御部120は,内部に,図示しない送信側バッファおよび受信側バッファを有する。送信側バッファは,後段の装置に与えられるパケットを一時的に格納するバッファであり,受信側バッファは,前段の装置から与えられたパケットを一時的に格納するバッファである。
【0014】
これらのL1/L2処理部111,L3処理部112,バッファ制御部114,FDC116,トランシーバ118,およびL3制御部120は,それぞれの受信側バッファに記憶されるパケット量が所定の値(閾値)を超えると(すなわち受信側バッファがオーバフローするおそれがあると),フロー制御信号により,前段の隣接した装置にパケットの送信停止を指示する。
【0015】
同様にして,FIFO117および119も,自己のメモリに記憶されるデータ量が閾値を超えると,フロー制御信号により,前段の隣接した装置にデータの送信停止を指示する。
【0016】
たとえば,ポート部110jのL1/L2処理部111が,通信ケーブルを介して自己に接続された他のルータ,端末等にパケットを送信できない状態になると,L1/L2処理部111の受信側バッファ(L3処理部112からのパケットを一時的に格納するバッファ)に,L3処理部112からのパケットが蓄積され,やがて,蓄積された量が所定の閾値を超える。この時,L1/L2処理部111はL3処理部112に送信停止のフロー制御信号を与える。
【0017】
L3処理部112からL1/L2処理部111へのパケットの送信が停止されると,L3処理部112の受信側バッファ(L3制御部120からのデータを一時的に格納するバッファ)のデータ蓄積量が閾値を超え,L3処理部112は,L3制御部120に送信停止のフロー制御信号を送信する。
【0018】
このように,送信停止のフロー制御信号は,連鎖して,トランシーバ118に与えられる。
【0019】
トランシーバ118は,送信停止のフロー制御信号を受信すると,調停処理により,ポート部110iからのパケットの受入を停止する(すなわち他のポート部110iにACK信号を返されない)。
【0020】
ポート部110iにおいても,ポート部110jにパケットを送信できない場合には,やがて各構成要素の受信バッファがオーバフローするおそれが生じ,ポート部110iのトランシーバ118からL1/L2処理部11に向かって,送信停止のフロー制御信号が渡されて行く。
【0021】
このように,送信停止は,あるポート部でフロー制御信号により連鎖して送信され,トランシーバ118とコアスイッチ130との調停を介して他のポート部に伝達され,他のポート部において,再びフロー制御信号により連鎖される。
【0022】
ポート部110iから同じポート部110iへ与えられるパケットの送信を停止するためのフロー制御信号も,同様にしてコアスイッチ130を介して与えられる。
【0023】
【発明が解決しようとする課題】
このように,従来のルータは,送信停止のフロー制御信号がコアスイッチ130を介して送信されていた。
【0024】
このため,従来のルータでは,あるポート部110jの構成要素(L1/L2処理部111,L3処理部112等)の受信側バッファがオーバフローするおそれがある場合に,送信元となる他のポート部110iの送信を停止するまでに,多くの時間を要していた。
【0025】
また,従来のルータでは,フロー制御信号を各ポート部へ伝達する時間にばらつきを生じていた。
【0026】
本発明は,このような状況に鑑みなされたものであり,その目的は,フロー制御信号の他のポート部への伝達を高速に行うことにある。
【0027】
また,本発明の目的は,フロー制御信号の各ポート部への伝達の時間差(ばらつき)を小さくすることにある。
【0028】
【課題を解決するための手段】
前記目的を達成するために,本発明によるルータは,複数のポートを有するルータにおいて,前記複数のポートのそれぞれから入力されるパケットおよびそれぞれから出力されるパケットをポートごとに個別に処理する複数のポート処理手段と,前記複数のポート処理手段の間で前記パケットのスイッチングを行うスイッチ手段と,前記複数のポート処理手段の間を接続する通信回線と,を有し,前記複数のポート処理手段のそれぞれは,前記スイッチ手段を介して自己宛てに与えられるパケットの自己宛てへの送信許可または送信停止を示すフロー制御信号を,前記通信回線を介して前記複数のポート処理手段に送信する,ことを特徴とする。
【0029】
本発明によると,複数のポート処理手段の間を接続する通信回線が設けられ,該通信回線を介してフロー制御信号が送信される。したがって,スイッチ手段を介してフロー制御信号が間接的に伝達される従来のルータよりも,フロー制御信号の他のポート部へ高速に伝達することができる。
【0030】
好ましくは,前記通信回線は,前記複数のポート処理手段を個別に1対1に接続し,前記複数のポート処理手段のそれぞれは,前記複数のポート処理手段に前記フロー制御信号を同時に送信する。これにより,フロー制御信号の各ポート部への伝達の時間差(ばらつき)をなくす(または小さくする)ことができる。
【0031】
さらに好ましくは,前記複数のポート処理手段のそれぞれは,自己宛てに送信される前記フロー制御信号については,前記通信回線を介することなく自己の内部で処理する。これにより,自己のポート宛てのフロー制御信号は,自己の内部で折り返されることとなり,他のポート宛てと自宛てのフロー制御送受信装置を同じにすることができる。
【0032】
本発明の一実施の形態において,前記パケットは送信の優先順位を表す複数のクラスを有し,前記フロー制御信号は前記クラスごとに送信許可または送信停止を示す。
【0033】
また,他の実施の形態において,前記複数のポート処理手段のそれぞれは,前記ポートを介して入力されたパケットの宛先ポートを決定する決定手段と,前記スイッチ手段を介してパケットの宛先ポートのポート処理手段と調停し,調停結果に基づいて,宛先ポートへパケットを前記スイッチ手段を介して与える調停手段と,前記決定手段から与えられるパケットを受信し,該パケットのフォーマットを,前記調停手段の入力に適合したフォーマットに変換して,前記調停手段に与えるフォーマット変換手段とを有し,前記通信回線は,前記複数のポート処理手段の前記フォーマット変換手段の間を接続し,前記フロー制御信号は,前記フォーマット変換手段により送信される。
【0034】
【発明の実施の形態】
図1は,本発明の一実施の形態によるルータ1の構成を示すブロック図である。このルータ1は,8つのポート(LANポート)#0〜#7を有するルータである。各ポートには,他のルータ,端末等が接続される。
【0035】
ルータ1は,ライン終端モジュール(LTM:Line Termination Module)30〜37,スイッチブレード装置(SWB:Switch Blade)40〜47,CSIXブリッジ装置(CSB:CSIX Bridge)50〜57,トランシーバ60〜67,およびコアスイッチ8を備えている。
【0036】
LTM30〜37はいずれも同じ構成を有する。同様にして,SWB40〜47,CSB50〜57,およびトランシーバ60〜67も,それぞれ同じ構成を有する。
【0037】
図2は,CSB5i(iは0〜7のいずれかの整数,以下同様)の詳細な構成を示すブロック図である。
【0038】
CSB5iは,制御部50,パケット処理部60,およびFCD処理部70を有する。パケット処理部60は,フォーマット変換部61および62,SWB側パケット受信部63,SWB側パケット送信部65,トランシーバ側パケット送信部64,ならびにトランシーバ側パケット受信部66を有する。FCD処理部70は,SWB側FCD送信部71,SWB側FCD受信部72,トランシーバ側FCD受信部73,トランシーバ側FCD送信部74,CSB側FCD受信部75,ならびにCSB側FCD送信部76を有する。
【0039】
図中,実線は,IPパケットまたはこのIPパケットのフォーマットが変換されたデータが送受信される信号線を示し,破線は,フロー制御信号(フロー制御データ(FCD))が送受信される信号線を示している。また,一点鎖線は,制御部50との間の制御信号を送受信するための信号線を示している。
【0040】
ポート#iには,LTM3i,SWB4i,CSB5i,およびトランシーバ6iが対応し,これらは,ポート単位でのパケットの処理を実行するポート部を構成する。なお,ポート数8は一例であって,他のポート数(たとえば4,16,32ポート等)であってもよい。
【0041】
CSB50〜57,トランシーバ60〜67,およびコアスイッチ8からなるブロック2は,従来のブロック200に対応するものである。
【0042】
このような構成を有するルータ1において,まず,IPパケットの処理(ルーティング処理等)について説明する。
【0043】
LTM3iには,通信ケーブル(たとえば10Base-T,100Base-T等のイーサネットケーブル)が取り付けられる。LTM3iは,この通信ケーブルを介して,他のルータ,端末等と接続される。このLTM3iは,回線終端機能を有し,他のルータ等から送信されてきたIPパケットに対して,レイヤ1(物理層)およびレイヤ2(データリンク層)の所定のプロトコル処理を実行する。所定のプロトコル処理後,LTM3iは,IPパケットをSWB4iに与える。
【0044】
SWB4iは,LTM3iから与えられるIPパケットを一時的に格納するLTM側バッファを有し,このLTM側バッファにIPパケットを格納する。また,SWB4iは,ルーティングテーブルを保持し,LTM側バッファに格納されたIPパケットの宛先アドレス(IPアドレスまたはMAC(Media Access Control)アドレス)とルーティングテーブルとに基づいて,IPパケットをどのポート(宛先ポート,送信先ポート)に与えるかを決定する。
【0045】
宛先ポートの決定後,SWB4iは,IPパケットを所定の長さのデータ(以下,単に「パケット」という。)に分割し,このパケットをCBS5iの送信がわに設けられたバッファ(CBS側バッファ)に格納する。
【0046】
このCBS側バッファは,CSB5iへ与えるパケットを一時的に格納するものであり,宛先ポート#0〜#7にそれぞれ対応した8つのバッファに分割されている。自己のポート#iから自己のポート#iへ送信されるパケットを格納するCSB側送信バッファも設けられる。
【0047】
8つのCSB側送信バッファのそれぞれは,さらにパケットの優先順位(クラス)ごとに分割されている。たとえば優先順位にクラス0〜7の8クラスが設けられている場合に,各CSB側送信バッファは,8つのバッファ(以下「分割バッファ」という。)に分割されている。
【0048】
そして,パケットは,その宛先ポートおよびその優先順位に基づいて,宛先ポートおよび優先順位に対応するCSB側送信バッファの分割バッファに格納された後,送信される。
【0049】
SWB4iとCSB5iとの間のインタフェースには,本実施の形態では,CSIXインタフェースが使用されている。一方,CSB5iとトランシーバ6iとの間のインタフェースには,CSIXインタフェースとは異なるインタフェースが使用されている。したがって,CSB5iは,SWB4iから与えられたパケット(CSIXインタフェースで規定されたフォーマットを有するパケット)を,CSB5iとトランシーバ6iとの間のインタフェースで規定されたフォーマットのパケットにフォーマット変換し,フォーマット変換後のパケットをトランシーバ6iに与える。
【0050】
具体的には,図2を参照して,CSB5iのSWB側パケット受信部63は,SWB4iから送信されたパケット(IPパケットが分割されたもの)を受信する。SWB側パケット受信部53は,宛先ポート#0〜#7にそれぞれ対応した8つのバッファを有し,さらに,8つのバッファのそれぞれはパケットの優先順位であるクラス0〜7にそれぞれ対応した分割バッファに分割されている。
【0051】
そして,SWB側パケット受信部63は,SWB4iからのパケットを,宛先ポートおよび優先順位に対応する分割バッファに格納する。たとえば,SWB4iから送信されたパケットが,宛先ポートj(jは0〜7のいずれかの整数であり,i=jの場合を含む。以下同様),優先順位mである場合には,このパケットは,SWB側パケット受信部53における宛先ポートjおよび優先順位mに対応する分割バッファに格納される。
【0052】
フォーマット変換部61は,制御部50の制御の下,SWB側パケット受信部63に格納されたパケットを読み出し,このパケットのフォーマット(すなわちCSIXインタフェースのフォーマット)を,トランシーバ6iのインタフェースのフォーマットに変換し,変換後のパケットをトランシーバ側パケット送信部64に与える。
【0053】
トランシーバ側パケット送信部64は,フォーマット変換部61から与えられたパケットを内部バッファに格納し,制御部50の制御の下,トランシーバ6iに送信する。このトランシーバ側パケット送信部64の内部バッファはたとえばFIFOにより構成され,トランシーバ側パケット送信部64は,内部バッファに格納されたパケットを,書き込まれた順序で順次読み出し,トランシーバ6iに送信する。
【0054】
図1に戻って,トランシーバ6iは,コアスイッチ8を介して,全ポート#jのトランシーバ6j(自己のトランシーバ6iおよび他の全トランシーバ6)と調停処理を行う。調停処理の結果,トランシーバ6iがトランシーバ6jからACK信号を受信すると,宛先ポート#jを有するパケットは,コアスイッチ8によりスイッチングされて,トランシーバ6iからトランシーバ6jに与えられる。なお,コアスイッチ8は,たとえばクロスバースイッチにより構成され,トランシーバ(ポート)間のパケットのスイッチング処理を行う。
【0055】
トランシーバ6jは,コアスイッチ8を介して与えられたパケットをCSB5jに与える。
【0056】
図2に移って,CSB5jのトランシーバ側パケット受信部66は,たとえばFIFOにより構成された内部バッファを有する。そして,トランシーバ側パケット受信部66は,トランシーバ6jから送信されたパケットを,受信した順序で順次,この内部バッファに格納する。
【0057】
フォーマット変換部62は,フォーマット変換部61とは逆の処理を行う。すなわち,フォーマット変換部62は,制御部50の制御の下,トランシーバ側パケット受信部66に格納されたパケットのフォーマット(すなわちトランシーバ6jのフォーマット)を,CSIXインタフェースのフォーマットに変換し,変換後のパケットをSWB側パケット送信部65に与える。
【0058】
SWB側パケット送信部65は,内部バッファを有し,この内部バッファは,優先順位に対応した分割バッファに分割されている。フォーマット変換部62は,変換後のパケットを,該パケットの優先順位に対応する分割バッファに格納する。
【0059】
SWB側パケット送信部65に格納されたパケットは,制御部50の制御の下,SWB4jに送信される。
【0060】
図1に戻って,SWB4jは,CSB5jから送信されたパケットを格納する内部バッファ(CSB側受信バッファ)を有する。このCSB側受信バッファは,優先順位に対応した分割バッファに分割されている。
【0061】
SWB4jは,CSB5jから送信されたパケットを,CSB側受信バッファにおける優先順位に対応する分割バッファに格納し,格納されたパケットを1つのIPパケットに組み立てて,LTM3jに与える。
【0062】
LTM3jは,SWB4jから与えられるIPパケットを一時的に格納する内部バッファを有する。LTM3jは,内部バッファに格納されたIPパケットに対して所定のプロトコル処理を行い,該IPパケットを通信ケーブルを介して他のルータ等に送信する。
【0063】
なお,前述したように,ポート#iから該ポート#iに送信されるIPパケットも,LTM3iからSWB4i等を介してコアスイッチ8に与えられ,コアスイッチ8から再びトランシーバ6i等を介してLTM3iに与えられ,送信される。
【0064】
次に,ルータ1におけるパケットの送信許可または停止を制御するためのFCDの処理について説明する。
【0065】
LTM3iとSWB4iとの間では,IPパケットの送受信の許可または停止を制御するFCDが交換される。また,SWB4iとCSB5iとの間,および,CSB5iとトランシーバ6iとの間でも,FCDが交換される。さらに,本実施の形態では,CSB5iと他のCSB5k(kはiを除く0〜7の整数。以下同様)との間においても,FCDが交換される。
【0066】
LTM3iとSWB4iとの間で交換されるFCDはレベル信号であり,ローレベルは送信許可を意味し,ハイレベルは送信停止を意味する。
【0067】
前述したように,LTM3iはSWB4iからのIPパケットを格納する内部バッファを有する。この内部バッファに格納されるデータ量が所定の閾値を超える(すなわち内部バッファがオーバフローするおそれがある)と,LTM3iは,LTM3iからSWB4iへのFCDをハイレベル(送信停止)にし,データ量が所定の閾値以下である場合には,FCDをローレベル(送信許可)にする。
【0068】
SWB4iは,LTM3iからのFCDがローレベルであるときは,LTM3iへのIPパケットの送信を行い,このFCDがハイレベルであるときは,LTM3iへのIPパケットの送信を停止する。
【0069】
同様にして,SWB4iのLTM側バッファに格納されるデータ量が所定の閾値を超えると,SWB4iは,SWB4iからLTM3iへのFCDをハイレベルにし,データ量が所定の閾値以下である場合には,FCDをローレベルにする。このFCDのハイレベルまたはローレベルにそれぞれ対応して,SWB4iは,LTM3iへのIPパケットの送信または送信停止を行う。
【0070】
SWB4iとCSB5iとの間で交換されるFCDは,CSIXインタフェースに規定されたフォーマットを有するデータで行われる。このデータ内に送信許可または送信停止を表すデータが含まれる。
【0071】
SWB4iは,CSB側受信バッファの各分割バッファについて,格納されたパケット量を監視し,各分割バッファに対応する優先順位のパケットの送信許可または送信停止を示すFCDをCSB5iに送信する。
【0072】
図3は,SWB4iからCSB5iに送信されるFCDのフォーマットを示している。FCDは,各優先順位(クラス)0〜7(優先順位が8つ設けられる場合)に対応するフィールドおよびチェックビット(たとえばパリティビット)のフィールドを有する。
【0073】
優先順位の各クラス0〜7に対応する各フィールドには,各優先順位のパケットの送信許可または送信停止を示す値が格納される。たとえば,各フィールドは,4ビットを有し,4ビットのすべてが0の場合に,そのフィールドに対応する優先順位のパケットの送信許可を意味し,4ビットのすべてが1の場合に,そのフィールドに対応する優先順位のパケットの送信停止を意味する。このFCDは,間欠なく連続して送信されてもよいし,一定時間間隔で送信されてもよい。
【0074】
SWB4iは,CSB側受信バッファの各分割バッファのパケット量が所定の閾値を超える(すなわち分割バッファがオーバフローするおそれがある)と,この分割バッファに対応するクラスのフィールドを送信停止にし,パケットの量が所定の閾値以下である場合には,対応するクラスのフィールドを送信許可にする。
【0075】
このFCDは,CSB5iのSWB側FCD受信部72に与えられる。SWB側FCD受信部72は,SWB4iからFCDを受信すると,このFCDを,制御部50を介して(または制御部50を介することなく直接に)CSB側FCD送信部76に与える。
【0076】
CSB側FCD送信部76は,他のCSBの個数(本実施の形態では7つ)と同数の出力信号線を有し,各出力信号線は,他のCSBにそれぞれ個別に接続されている。たとえば,CSB50のCSB側FCD送信部76の左端の第1出力信号線はCSB51に,第2出力信号線はCSB52に,…,第7出力信号線はCSB57にそれぞれ接続されている。他のCSB51〜57のCSB側FCD送信部76についても同様である。
【0077】
CSB4iのCSB側FCD送信部76は,この7つの出力端子のすべてから,図3に示すフォーマットと同様のフォーマットを有するFCD(以下「CSB間FCD」という。)を間欠なく連続して,または,一定時間間隔で送信する。CSB間FCDの各フィールドの内容(送信許可または送信停止)は,SWB側FCD受信部72から与えられたFCDの各フィールドの内容と同一である。
【0078】
CSB間FCDの送信は,出力信号線ごとに時間差をおいて行うこともできるが,同時に行うことが好ましい。同時に送信することにより,CSB間FCDは他のCSBに同時に受信され,受信時間のバラツキをなくすことができる。
【0079】
このCSB間FCDは,他のすべてのCSBのCSB側FCD受信部75に入力される。
【0080】
CSB側FCD受信部75は,他のCSBの個数(本実施の形態では7つ)と同数の入力信号線を有する。
【0081】
各入力信号線は,他のCSBのCSB側FCD送信部76にそれぞれ個別に接続されている。たとえば,CSB51のCSB側FCD受信部75は7本の入力端子を有し,左端の第1入力信号線はCSB50に,第2入力信号線はCSB52に,…,第7入力信号線はCSB57にそれぞれ接続されている。他のCSB50,52〜57についても同様である。
【0082】
CSB側FCD受信部75は,CSB間FCDを受信した入力端子によって,そのCSB間FCDを送信したCSB(すなわちポート番号)を識別する。すなわち,前記例によると,第1入力信号線から入力されたCSB間FCDは,CSB50(すなわちポート#0)からのものであることが識別される。
【0083】
CSB側FCD受信部75は,受信したCSB間FCDに,送信停止を示すクラス(優先順位)が含まれている場合に,そのCSB間FCDを送信したポート(ポート#nとする。)およびそのクラス(クラスmとする。)のパケットの送信停止指令を,制御部50を介して(または制御部50を介することなく直接に)SWB側FCD送信部71,および,フォーマット変換部11(またはSWB側パケット受信部63,トランシーバ側パケット送信部64)に与える。
【0084】
SWB側FCD送信部71(CSB5kのSWB側FCD送信部71とする。)は,送信停止指令を受け取ると,宛先ポート#nの優先順位mのパケットの送信停止を示すFCDをSWB4kに送信する。これにより,SWB4kは,宛先ポートnで,かつ,優先順位mのパケットのCSB5kへの送信を停止する。
【0085】
また,フォーマット変換部11(またはSWB側パケット受信部63,トランシーバ側パケット送信部)は,SWB側パケット受信部63に格納されているパケットのうち,宛先ポートnおよび優先順位mのパケットのトランシーバ6kへの送信を停止する。
【0086】
なお,宛先ポートn以外のポートまたは優先順位m以外のパケットの送信は許可される。
【0087】
CSB5iのCSB側FCD送信部76は,同じCSB5iのCSB側FCD受信部75に対してもFCDを与える。このFCDは,CSB5iの内部において,CSB側FCD送信部76とCSB側受信部75とを直接接続する信号線(図示略)を設け,この信号線によって与えることもできるし,制御部50を介して与えることもできる。
【0088】
これにより,CSB5iのSWB側FCD送信部71からSWB4iへ,宛先ポート#nの優先順位mのパケットの送信停止を示すFCDが送信され,SWB4iは,同パケットの送信を停止する。また,CSB5iのフォーマット変換部61からトランシーバ6iへの同パケットの送信が停止される。
【0089】
このように,FCDは,トランシーバ6とコアスイッチ8との調停を介することなく,CSB間を1対に1に直接接続する通信回線(通信ネットワーク)を介してCSBに与えられるので,送信停止の指令を高速に伝達し,送信停止を素早く実行することができる。
【0090】
また,SWB5iとトランシーバ6iとの間でもFCDは交換される。このFCDはレベル信号であり,ローレベルは送信許可を意味し,ハイレベルは送信停止を意味する。
【0091】
制御部50は,トランシーバ側パケット受信部66に格納されるパケットの量を監視し,この量が所定の閾値を超える(すなわちバッファがオーバフローするおそれがある)と,トランシーバ側FCD送信部74から出力されるFCDを灰レベルにし,所定の閾値以下であると,ローレベルにする。
【0092】
トランシーバ6iは,CSB5iからのFCDがローレベルであると,パケットを送信し,ハイレベルであるとパケットの送信を停止する。
【0093】
同様にして,トランシーバ6iも,CSB5iから送信されるパケットを一時的に格納するバッファがオーバフローするおそれがある場合には,CSB5iへのFCDをハイレベルにし,オーバフローするおそれがない場合には,該FCDをローレベルにする。
【0094】
トランシーバ6iのトランシーバ側FCD受信部73は,トランシーバ6iからのFCDがハイレベルになると,制御部50を介して(または制御部50を介することなく直接に)フォーマット変換部61(またはSWB側パケット送信部63,トランシーバ側パケット送信部64)に,トランシーバ6iへのパケットの送信停止を指令する。これにより,トランシーバ6iへのパケットの送信が停止される。
【0095】
(付記1) 複数のポートを有するルータにおいて,
前記複数のポートのそれぞれから入力されるパケットおよびそれぞれから出力されるパケットをポートごとに個別に処理する複数のポート処理手段と,
前記複数のポート処理手段の間で前記パケットのスイッチングを行うスイッチ手段と,
前記複数のポート処理手段の間を接続する通信回線と,
を有し,
前記複数のポート処理手段のそれぞれは,前記スイッチ手段を介して自己宛てに与えられるパケットの自己宛てへの送信許可または送信停止を示すフロー制御信号を,前記通信回線を介して前記複数のポート処理手段に送信する,
ことを特徴とするルータ。
【0096】
(付記2) 付記1において,
前記通信回線は,前記複数のポート処理手段を個別に1対1に接続し,
前記複数のポート処理手段のそれぞれは,前記複数のポート処理手段に前記フロー制御信号を同時に送信する,
ことを特徴とするルータ。
【0097】
(付記3) 付記1または2において,
前記複数のポート処理手段のそれぞれは,自己宛てに送信される前記フロー制御信号については,前記通信回線を介することなく自己の内部で処理する,
ことを特徴とするルータ。
【0098】
(付記4) 付記1から3のいずれか1つにおいて,
前記パケットは送信の優先順位を表す複数のクラスを有し,
前記フロー制御信号は前記クラスごとに送信許可または送信停止を示す,
ことを特徴とするルータ。
【0099】
(付記5) 付記1から4のいずれか1つにおいて,
前記複数のポート処理手段のそれぞれは,
前記ポートを介して入力されたパケットの宛先ポートを決定する決定手段と,
前記スイッチ手段を介してパケットの宛先ポートのポート処理手段と調停し,調停結果に基づいて,宛先ポートへパケットを前記スイッチ手段を介して与える調停手段と,
前記決定手段から与えられるパケットを受信し,該パケットのフォーマットを,前記調停手段の入力に適合したフォーマットに変換して,前記調停手段に与えるフォーマット変換手段とを有し,
前記通信回線は,前記複数のポート処理手段の前記フォーマット変換手段の間を接続し,
前記フロー制御信号は,前記フォーマット変換手段により送信される,
ことを特徴とするルータ。
【0100】
(付記6) 付記5において,
前記調停手段は,調停相手の調停手段から,前記スイッチ手段を介してパケットを受信し,該受信したパケットを前記フォーマット変換手段に与え,
前記フォーマット変換手段は,前記調停手段から与えられたパケットのフォーマットを前記決定手段の入力に適合したフォーマットに変換して,前記決定手段に与え,
前記決定手段は,前記フォーマット変換手段から与えられるパケットを,前記ポートに向けて送信するとともに,前記フォーマット変換手段から与えられるパケットを一時的に格納する記憶手段を有し,該記憶手段がオーバフローするおそれがあると,前記フォーマット変換手段に,自己へのパケットの送信停止を指示し,
前記フォーマット変換手段は,前記決定手段からの送信停止の指示に基づいて,該決定手段および該フォーマット変換手段が属するポート処理手段宛てのパケットについては送信停止を示す前記フロー制御信号を送信する,
ことを特徴とするルータ。
【0101】
【発明の効果】
本発明によると,フロー制御信号の他のポート部への伝達を高速に行うことができる。また,本発明によると,フロー制御信号の各ポート部への伝達の時間差(ばらつき)を小さくする(またはなくす)ことができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態によるルータの構成を示すブロック図である。
【図2】CSBの詳細な構成を示すブロック図である。
【図3】CSB間で送受信されるフロー制御データのフォーマットを示す。
【図4】従来のルータ100の構成例を示すブロック図である。
【符号の説明】
1 ルータ
0〜37 回線終端モジュール(LTM)
0〜47 スイッチブレード装置(SWB)
0〜57 CSIXブリッジ装置(CSB)
0〜67 トランシーバ
8 コアスイッチ
71 SWB側FCD送信部
72 SWB側FCD受信部
75 CSB側FCD受信部
76 CSB側FCD送信部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a router, and more particularly to a router that enables high-speed transmission of a flow control signal communicated inside the router.
[0002]
[Prior art]
FIG. 4 is a block diagram illustrating a configuration example of the conventional router 100. This router 100 is an edge router, for example, and has 8 ports # 0 to # 7. The router 100 includes a port unit (LAN port unit) 110 corresponding to each of the ports # 0 to # 7. 0 ~ 110 7 Port part 110 0 ~ 110 7 And a core switch 130 that performs switching of IP packets (or frames) therebetween.
[0003]
Port part 110 0 ~ 110 7 Have the same configuration, one port unit 110 i The explanation will be given by taking (i is an integer of 0 to 7) as an example.
[0004]
Port part 110 i L1 / L2 processing unit 111 (for example, PHY / MAC), L3 processing unit 112 (L3 Logic), reception queue management unit 113 (QMLR: Queue Management Logic on Receiver), buffer control unit 114 (for example, DBC: Double Buffer Controller) ), RAM 115, FDC (Frame Divide Controller) 116, FIFOs 117 and 119, transceiver 118, and L3 control unit 120 (LC: L3-Logic Controller).
[0005]
In the figure, the solid line indicates the flow of the packet (frame), and the broken line indicates the flow of the flow control signal (back pressure signal). The alternate long and short dash line indicates the flow of the control signal.
[0006]
A communication cable (for example, an Ethernet cable such as 10Base-T or 100Base-T) is attached to the L1 / L2 processing unit 111, and other routers, terminals, and the like are connected via the communication cable. The L1 / L2 processing unit 111 performs protocol processing of layer 1 (physical layer) and layer 2 (data link layer), and sends packets given from the L3 processing unit 112 to other routers, terminals, etc. via communication cables. And the packet received from another router, terminal or the like is given to the L3 processing unit 112.
[0007]
The L3 processing unit 112 performs protocol processing of layer 3 (network layer), gives a packet from the L3 control unit 120 to the L1 / L2 processing unit 11, and sends a packet from the L1 / L2 processing unit 111 to the buffer control unit 114. To give. Specifically, the L3 processing unit 112 analyzes the packet, determines the destination (destination) port number based on the routing table, gives the packet to the subsequent block 200, and also transmits the IP / MAC filtering and VLAN (virtual LAN tag operation, etc.) are performed.
[0008]
The buffer control unit 114 writes the packet given from the L3 processing unit 112 to the RAM 115 under the control of the reception queue management unit 113. The address of the RAM 115 where the packet is written is given from the buffer control unit 114 to the reception queue management unit 113.
[0009]
When instructed by the reception queue management unit 113, the FDC 116 reads the packet from the address of the RAM 115 and gives the packet to the transceiver 118 via the FIFO 117.
[0010]
The transceiver 118 is connected to another port unit 110 via the core switch 130. j Arbitration is performed with the transceiver 118 (j is an integer from 0 to 7, including the case of i = j). Other port part 110 j If the packet can be accepted, the port unit 110 of the arbitration partner i ACK signal is returned to the transceiver 118.
[0011]
Port part 110 i The transceiver 118 of the port unit 110 that has returned the ACK signal. j In addition, the port section 110 j Is sent through the core switch 200 as a destination port.
[0012]
Port part 110 j The packet given to the transceiver 118 of the j Are transmitted to other routers or terminals via the FIFO 119, the L3 control unit 120, the L3 processing unit 112, and the L1 / L2 processing unit 111.
[0013]
The L1 / L2 processing unit 111, the L3 processing unit 112, the buffer control unit 114, the FDC 116, the transceiver 118, and the L3 control unit 120 have a transmission side buffer and a reception side buffer (not shown) inside. The transmission side buffer is a buffer that temporarily stores a packet given to a subsequent apparatus, and the reception side buffer is a buffer that temporarily stores a packet given from the preceding apparatus.
[0014]
The L1 / L2 processing unit 111, the L3 processing unit 112, the buffer control unit 114, the FDC 116, the transceiver 118, and the L3 control unit 120 have a predetermined amount (threshold value) of the amount of packets stored in each reception side buffer. If it exceeds (that is, if the receiving buffer may overflow), the flow control signal instructs the adjacent device in the previous stage to stop packet transmission.
[0015]
Similarly, when the amount of data stored in its own memory exceeds the threshold value, the FIFOs 117 and 119 also instruct the adjacent devices in the previous stage to stop transmitting data by a flow control signal.
[0016]
For example, the port part 110 j When the L1 / L2 processing unit 111 of the L1 / L2 processing unit 111 becomes unable to transmit a packet to another router, terminal, or the like connected to itself via a communication cable, the receiving side buffer (from the L3 processing unit 112) (A buffer for temporarily storing the packet) is accumulated in the packet from the L3 processing unit 112, and the accumulated amount eventually exceeds a predetermined threshold. At this time, the L1 / L2 processing unit 111 gives a flow control signal for stopping transmission to the L3 processing unit 112.
[0017]
When transmission of a packet from the L3 processing unit 112 to the L1 / L2 processing unit 111 is stopped, the amount of data stored in the reception side buffer (a buffer for temporarily storing data from the L3 control unit 120) of the L3 processing unit 112 Exceeds the threshold, and the L3 processing unit 112 transmits a flow control signal for stopping transmission to the L3 control unit 120.
[0018]
In this way, the flow control signal for stopping transmission is given to the transceiver 118 in a chain.
[0019]
When the transceiver 118 receives the flow control signal for stopping transmission, the transceiver unit 110 performs the arbitration process to perform the port unit 110. i Stop accepting packets from other ports (ie, other port units 110 i ACK signal is not returned to
[0020]
Port part 110 i Also in port 110 j When the packet cannot be transmitted to the port unit 110, the reception buffer of each component may eventually overflow, and the port unit 110 i A flow control signal for stopping transmission is passed from the transceiver 118 to the L1 / L2 processing unit 11.
[0021]
In this way, the transmission stop is transmitted in a chain by a flow control signal in a certain port unit, is transmitted to the other port unit through arbitration between the transceiver 118 and the core switch 130, and is again flowed in the other port unit. Chained by control signals.
[0022]
Port part 110 i Same port part 110 from i Similarly, a flow control signal for stopping the transmission of the packet given to is also given via the core switch 130.
[0023]
[Problems to be solved by the invention]
As described above, in the conventional router, the flow control signal for stopping transmission is transmitted via the core switch 130.
[0024]
Therefore, in a conventional router, a certain port unit 110 j When there is a possibility that the receiving side buffer of the constituent elements (L1 / L2 processing unit 111, L3 processing unit 112, etc.) may overflow, other port unit 110 serving as the transmission source i It took a lot of time to stop sending.
[0025]
In addition, in the conventional router, the time for transmitting the flow control signal to each port portion varies.
[0026]
The present invention has been made in view of such a situation, and an object of the present invention is to transmit a flow control signal to other port portions at high speed.
[0027]
Another object of the present invention is to reduce the time difference (variation) in the transmission of the flow control signal to each port.
[0028]
[Means for Solving the Problems]
In order to achieve the above object, a router according to the present invention is a router having a plurality of ports, wherein a plurality of packets are individually processed for each port for packets input from and output from each of the plurality of ports. A plurality of port processing means, a switch means for switching the packets between the plurality of port processing means, and a communication line connecting the plurality of port processing means. Each transmitting a flow control signal indicating permission or stop of transmission of a packet given to itself via the switch means to the plurality of port processing means via the communication line; Features.
[0029]
According to the present invention, a communication line for connecting a plurality of port processing means is provided, and a flow control signal is transmitted through the communication line. Therefore, the flow control signal can be transmitted to other port portions at a higher speed than the conventional router in which the flow control signal is transmitted indirectly through the switch means.
[0030]
Preferably, the communication line individually connects the plurality of port processing means on a one-to-one basis, and each of the plurality of port processing means transmits the flow control signal to the plurality of port processing means simultaneously. As a result, the time difference (variation) in the transmission of the flow control signal to each port can be eliminated (or reduced).
[0031]
More preferably, each of the plurality of port processing means processes the flow control signal transmitted to itself within itself without going through the communication line. As a result, the flow control signal addressed to its own port is returned inside itself, and the flow control transmission / reception device addressed to itself can be made the same as that of the other port.
[0032]
In an embodiment of the present invention, the packet has a plurality of classes indicating transmission priorities, and the flow control signal indicates transmission permission or transmission stop for each class.
[0033]
In another embodiment, each of the plurality of port processing means includes a determining means for determining a destination port of a packet input via the port, and a port of a destination port of the packet via the switch means. Arbitration means for arbitrating with the processing means, and based on the result of the arbitration, the arbitration means for giving a packet to the destination port via the switch means, and the packet given from the determination means are received, and the format of the packet is input to the arbitration means Format conversion means for converting to a format suitable for the mediation means and giving to the arbitration means, the communication line connecting the format conversion means of the plurality of port processing means, the flow control signal, It is transmitted by the format conversion means.
[0034]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a block diagram showing a configuration of a router 1 according to an embodiment of the present invention. The router 1 is a router having eight ports (LAN ports) # 0 to # 7. Other routers, terminals, etc. are connected to each port.
[0035]
The router 1 includes a line termination module (LTM) 3 0 ~ 3 7 Switch blade device (SWB) 4 0 ~ 4 7 , CSIX Bridge Device (CSB: CSIX Bridge) 5 0 ~ 5 7 , Transceiver 6 0 ~ 6 7 , And a core switch 8.
[0036]
LTM3 0 ~ 3 7 All have the same configuration. Similarly, SWB4 0 ~ 4 7 , CSB5 0 ~ 5 7 , And transceiver 6 0 ~ 6 7 Each have the same configuration.
[0037]
Figure 2 shows CSB5 i It is a block diagram which shows the detailed structure of (i is an integer in any one of 0-7, and so on).
[0038]
CSB5 i Includes a control unit 50, a packet processing unit 60, and an FCD processing unit 70. The packet processing unit 60 includes format conversion units 61 and 62, a SWB side packet receiving unit 63, a SWB side packet transmitting unit 65, a transceiver side packet transmitting unit 64, and a transceiver side packet receiving unit 66. The FCD processing unit 70 includes a SWB side FCD transmission unit 71, a SWB side FCD reception unit 72, a transceiver side FCD reception unit 73, a transceiver side FCD transmission unit 74, a CSB side FCD reception unit 75, and a CSB side FCD transmission unit 76. .
[0039]
In the figure, a solid line indicates a signal line through which an IP packet or data obtained by converting the format of the IP packet is transmitted and received, and a broken line indicates a signal line through which a flow control signal (flow control data (FCD)) is transmitted and received. ing. A one-dot chain line indicates a signal line for transmitting / receiving a control signal to / from the control unit 50.
[0040]
Port #i has LTM3 i , SWB4 i , CSB5 i , And transceiver 6 i These form a port unit that executes packet processing in units of ports. The number of ports 8 is an example, and other numbers of ports (for example, 4, 16, 32 ports, etc.) may be used.
[0041]
CSB5 0 ~ 5 7 , Transceiver 6 0 ~ 6 7 , And the block 2 composed of the core switch 8 corresponds to the conventional block 200.
[0042]
In the router 1 having such a configuration, IP packet processing (routing processing, etc.) will be described first.
[0043]
LTM3 i A communication cable (for example, an Ethernet cable such as 10Base-T or 100Base-T) is attached. LTM3 i Is connected to other routers, terminals, etc. via this communication cable. This LTM3 i Has a line termination function and executes predetermined protocol processing of layer 1 (physical layer) and layer 2 (data link layer) on IP packets transmitted from other routers or the like. After predetermined protocol processing, LTM3 i Sends the IP packet to SWB4 i To give.
[0044]
SWB4 i Is LTM3 i Has an LTM side buffer for temporarily storing the IP packet given from, and stores the IP packet in this LTM side buffer. SWB4 i Holds the routing table, and based on the destination address (IP address or MAC (Media Access Control) address) of the IP packet stored in the LTM side buffer and the routing table, which port (destination port, transmission) To give to the destination port).
[0045]
After determining the destination port, SWB4 i Divides an IP packet into data of a predetermined length (hereinafter, simply referred to as “packet”), and divides the packet into CBS5 i Is stored in a buffer (CBS side buffer) provided in the crocodile.
[0046]
This CBS side buffer is CSB5 i Is temporarily stored, and is divided into eight buffers respectively corresponding to destination ports # 0 to # 7. A CSB-side transmission buffer for storing packets transmitted from the own port #i to the own port #i is also provided.
[0047]
Each of the eight CSB side transmission buffers is further divided for each packet priority (class). For example, when eight classes of classes 0 to 7 are provided in the priority order, each CSB side transmission buffer is divided into eight buffers (hereinafter referred to as “divided buffers”).
[0048]
Then, based on the destination port and the priority order, the packet is stored in the divided buffer of the CSB side transmission buffer corresponding to the destination port and the priority order, and then transmitted.
[0049]
SWB4 i And CSB5 i In the present embodiment, a CSIX interface is used for the interface between and. Meanwhile, CSB5 i And transceiver 6 i An interface different from the CSIX interface is used. Therefore, CSB5 i SWB4 i A packet (a packet having a format defined by the CSIX interface) given by CSB5 i And transceiver 6 i The packet is converted into a packet having a format defined by the interface between the transceiver 6 and the packet after the format conversion is converted to the transceiver 6. i To give.
[0050]
Specifically, referring to FIG. i SWB side packet receiving unit 63 of SWB4 i The packet transmitted from (the IP packet is divided) is received. The SWB side packet receiving unit 53 has eight buffers respectively corresponding to the destination ports # 0 to # 7, and each of the eight buffers is a divided buffer corresponding to each of the classes 0 to 7 which are packet priorities. It is divided into
[0051]
Then, the SWB side packet receiver 63 receives the SWB4 i Are stored in the division buffer corresponding to the destination port and priority. For example, SWB4 i When the packet transmitted from the destination port j (j is an integer of 0 to 7, including the case of i = j; the same applies hereinafter) and the priority is m, this packet is SWB The packet is stored in the division buffer corresponding to the destination port j and priority m in the side packet receiving unit 53.
[0052]
The format conversion unit 61 reads the packet stored in the SWB side packet reception unit 63 under the control of the control unit 50, and converts the format of this packet (that is, the format of the CSIX interface) to the transceiver 6. i The converted packet is sent to the transceiver-side packet transmitter 64.
[0053]
The transceiver-side packet transmission unit 64 stores the packet given from the format conversion unit 61 in an internal buffer, and under the control of the control unit 50, the transceiver 6 i Send to. The internal buffer of the transceiver side packet transmission unit 64 is constituted by, for example, a FIFO. The transceiver side packet transmission unit 64 sequentially reads out the packets stored in the internal buffer in the order of writing, and the transceiver 6 i Send to.
[0054]
Returning to FIG. i Is sent through the core switch 8 to the transceivers 6 of all ports #j. j (Self transceiver 6 i And arbitration with all other transceivers 6). As a result of the arbitration process, transceiver 6 i Is transceiver 6 j When the ACK signal is received from the packet, the packet having the destination port #j is switched by the core switch 8 and the transceiver 6 i To transceiver 6 j Given to. The core switch 8 is constituted by a crossbar switch, for example, and performs packet switching processing between transceivers (ports).
[0055]
Transceiver 6 j Sends the packet given through the core switch 8 to the CSB 5 j To give.
[0056]
Turning to FIG. 2, CSB5 j The transceiver-side packet receiving unit 66 has an internal buffer configured by, for example, a FIFO. Then, the transceiver side packet receiving unit 66 is connected to the transceiver 6. j Are sequentially stored in this internal buffer in the order received.
[0057]
The format conversion unit 62 performs the reverse process of the format conversion unit 61. That is, the format conversion unit 62 controls the format of the packet stored in the transceiver side packet receiving unit 66 (that is, the transceiver 6) under the control of the control unit 50. j Is converted into the format of the CSIX interface, and the converted packet is given to the SWB side packet transmitter 65.
[0058]
The SWB side packet transmission unit 65 has an internal buffer, and this internal buffer is divided into divided buffers corresponding to the priority order. The format conversion unit 62 stores the converted packet in a division buffer corresponding to the priority order of the packet.
[0059]
The packet stored in the SWB side packet transmitter 65 is controlled by the control unit 50 under the control of the SWB 4 j Sent to.
[0060]
Returning to FIG. 1, SWB4 j Is CSB5 j Has an internal buffer (CSB side reception buffer) for storing packets transmitted from. The CSB side reception buffer is divided into divided buffers corresponding to the priority order.
[0061]
SWB4 j Is CSB5 j Is stored in the division buffer corresponding to the priority order in the CSB side reception buffer, and the stored packets are assembled into one IP packet, and the LTM3 j To give.
[0062]
LTM3 j SWB4 j An internal buffer for temporarily storing IP packets given by LTM3 j Performs predetermined protocol processing on the IP packet stored in the internal buffer, and transmits the IP packet to another router or the like via a communication cable.
[0063]
As described above, the IP packet transmitted from port #i to port #i is also LTM3. i To SWB4 i To the core switch 8 and the transceiver 6 again from the core switch 8 i Etc. via LTM3 i To be sent.
[0064]
Next, FCD processing for controlling packet transmission permission or stop in the router 1 will be described.
[0065]
LTM3 i And SWB4 i FCDs that control permission or stop of transmission / reception of IP packets are exchanged. SWB4 i And CSB5 i And CSB5 i And transceiver 6 i FCDs are exchanged between the two. Furthermore, in this embodiment, CSB5 i And other CSB5 k FCD is also exchanged between (k is an integer from 0 to 7 excluding i, and so on).
[0066]
LTM3 i And SWB4 i The FCD exchanged with each other is a level signal, a low level means transmission permission, and a high level means transmission stop.
[0067]
As mentioned above, LTM3 i Is SWB4 i Has an internal buffer for storing IP packets from. If the amount of data stored in the internal buffer exceeds a predetermined threshold (that is, the internal buffer may overflow), the LTM3 i Is LTM3 i To SWB4 i FCD is set to a high level (transmission stopped), and if the amount of data is below a predetermined threshold, the FCD is set to a low level (transmission permitted).
[0068]
SWB4 i Is LTM3 i When FCD from is low level, LTM3 i When the IP packet is transmitted to the FCD and the FCD is at the high level, the LTM3 i Stop sending IP packets to
[0069]
Similarly, SWB4 i When the amount of data stored in the LTM side buffer exceeds a predetermined threshold, SWB4 i SWB4 i To LTM3 i The FCD is set to the high level, and when the data amount is equal to or less than the predetermined threshold, the FCD is set to the low level. Corresponding to the high level or low level of this FCD, SWB4 i Is LTM3 i IP packet transmission to or stop transmission.
[0070]
SWB4 i And CSB5 i The FCD exchanged with is performed with data having a format defined in the CSIX interface. This data includes data indicating transmission permission or transmission stop.
[0071]
SWB4 i Monitors the amount of packets stored for each division buffer of the CSB side reception buffer, and sets FCD indicating transmission permission or transmission stop of packets of priority order corresponding to each division buffer to CSB5 i Send to.
[0072]
3 shows SWB4 i To CSB5 i Shows the format of the FCD to be transmitted. The FCD has a field corresponding to each priority (class) 0 to 7 (when eight priority levels are provided) and a field of check bits (for example, parity bits).
[0073]
In each field corresponding to each class 0 to 7 of the priority order, a value indicating permission or stop of transmission of the packet of each priority order is stored. For example, each field has 4 bits, and when all 4 bits are 0, it means transmission permission of a packet having a priority corresponding to that field. When all 4 bits are 1, the field This means that transmission of a packet having a priority order corresponding to is stopped. This FCD may be transmitted continuously without interruption, or may be transmitted at regular time intervals.
[0074]
SWB4 i When the packet amount of each division buffer of the CSB side reception buffer exceeds a predetermined threshold (that is, there is a possibility that the division buffer overflows), the field of the class corresponding to this division buffer is stopped, and the amount of packets is If the value is equal to or less than the predetermined threshold, the field of the corresponding class is permitted to be transmitted.
[0075]
This FCD is CSB5 i Is provided to the SWB side FCD receiver 72. The SWB side FCD receiving unit 72 is connected to the SWB4 i When the FCD is received, the FCD is given to the CSB side FCD transmission unit 76 via the control unit 50 (or directly without going through the control unit 50).
[0076]
The CSB side FCD transmission unit 76 has the same number of output signal lines as the number of other CSBs (seven in the present embodiment), and each output signal line is individually connected to another CSB. For example, CSB5 0 The first output signal line at the left end of the CSB side FCD transmitter 76 is CSB5. 1 The second output signal line is CSB5. 2 ..., the seventh output signal line is CSB5. 7 Are connected to each. Other CSB5 1 ~ 5 7 The same applies to the CSB-side FCD transmission unit 76.
[0077]
CSB4 i The CSB-side FCD transmitter 76 of the seven output terminals continuously or intermittently outputs an FCD having the same format as that shown in FIG. 3 (hereinafter referred to as “inter-CSB FCD”) from all seven output terminals. Send at time intervals. The contents (transmission permission or transmission stop) of each field of the inter-CSB FCD are the same as the contents of each field of the FCD given from the SWB side FCD receiving unit 72.
[0078]
The transmission of FCD between CSBs can be performed with a time difference for each output signal line, but it is preferable to perform the transmission simultaneously. By transmitting at the same time, the inter-CSB FCD is simultaneously received by other CSBs, and variations in reception time can be eliminated.
[0079]
The inter-CSB FCD is input to the CSB side FCD receiving unit 75 of all other CSBs.
[0080]
The CSB side FCD receiving unit 75 has the same number of input signal lines as the number of other CSBs (seven in the present embodiment).
[0081]
Each input signal line is individually connected to the CSB side FCD transmission unit 76 of another CSB. For example, CSB5 1 CSB side FCD receiver 75 has seven input terminals, and the leftmost first input signal line is CSB5. 0 The second input signal line is CSB5. 2 ..., the seventh input signal line is CSB5. 7 Are connected to each. Other CSB5 0 , 5 2 ~ 5 7 The same applies to.
[0082]
The CSB side FCD receiving unit 75 identifies the CSB (that is, the port number) that transmitted the inter-CSB FCD by the input terminal that has received the inter-CSB FCD. That is, according to the above example, the inter-CSB FCD input from the first input signal line is expressed as CSB5. 0 (I.e. from port # 0).
[0083]
When the received CSB FCD includes a class (priority order) indicating transmission stop, the CSB-side FCD receiving unit 75 transmits the CSB inter-CSB FCD (referred to as port #n) and the port. An instruction to stop transmission of a class (class m) packet is sent via the control unit 50 (or directly without going through the control unit 50) to the SWB side FCD transmission unit 71 and the format conversion unit 11 (or SWB). Side packet receiver 63 and transceiver side packet transmitter 64).
[0084]
SWB side FCD transmitter 71 (CSB5 k The SWB side FCD transmission unit 71 of FIG. ) Receives the transmission stop command, SWB4 sets the FCD indicating the transmission stop of the packet with the priority m of the destination port #n. k Send to. As a result, SWB4 k Is the destination port n and the CSB5 of the packet with the priority m k Stop sending to.
[0085]
Also, the format conversion unit 11 (or SWB side packet receiving unit 63, transceiver side packet transmitting unit), among the packets stored in the SWB side packet receiving unit 63, is a transceiver 6 for packets of destination port n and priority m. k Stop sending to.
[0086]
Transmission of a port other than the destination port n or a packet other than the priority order m is permitted.
[0087]
CSB5 i CSB side FCD transmission unit 76 of the same CSB5 i The FCD is also given to the CSB side FCD receiving unit 75. This FCD is CSB5 i Is provided with a signal line (not shown) for directly connecting the CSB side FCD transmission unit 76 and the CSB side reception unit 75, and can be given by this signal line or can be given via the control unit 50. .
[0088]
As a result, CSB5 i SWB side FCD transmitter 71 to SWB4 i FCD indicating transmission stop of the packet with the priority m of destination port #n is transmitted to SWB4 i Stops sending the packet. Also, CSB5 i Transmission of the same packet from the format converter 61 to the transceiver 6i is stopped.
[0089]
In this way, the FCD is given to the CSB via a communication line (communication network) that directly connects the CSBs to one pair without intermediation between the transceiver 6 and the core switch 8, so The command can be transmitted at high speed, and the transmission can be stopped quickly.
[0090]
SWB5 i And transceiver 6 i FCDs are also exchanged between This FCD is a level signal, a low level means transmission permission, and a high level means transmission stop.
[0091]
The control unit 50 monitors the amount of packets stored in the transceiver side packet receiving unit 66, and if this amount exceeds a predetermined threshold (that is, the buffer may overflow), the control unit 50 outputs from the transceiver side FCD transmission unit 74. The FCD to be performed is set to the ash level, and if it is equal to or lower than the predetermined threshold, it is set to the low level.
[0092]
Transceiver 6 i Is CSB5 i When the FCD is low, the packet is transmitted. When the FCD is high, the packet transmission is stopped.
[0093]
Similarly, transceiver 6 i Also, CSB5 i If there is a possibility that the buffer for temporarily storing packets transmitted from the network may overflow, CSB5 i If there is no possibility of overflow, the FCD is set to a low level.
[0094]
Transceiver 6 i Transceiver side FCD receiver 73 of transceiver 6 i When the FCD from the receiver goes to the high level, the format converter 61 (or SWB side packet transmitter 63, transceiver side packet transmitter 64) is connected to the transceiver via the controller 50 (or directly without the controller 50). 6 i Command to stop sending packets to As a result, the transceiver 6 i Transmission of packets to is stopped.
[0095]
(Appendix 1) In a router having multiple ports,
A plurality of port processing means for individually processing a packet input from each of the plurality of ports and a packet output from each of the ports;
Switch means for switching the packet between the plurality of port processing means;
A communication line connecting the plurality of port processing means;
Have
Each of the plurality of port processing means transmits a flow control signal indicating permission or stop of transmission of a packet given to itself via the switch means to the plurality of port processing via the communication line. Send to means,
A router characterized by that.
[0096]
(Appendix 2) In Appendix 1,
The communication line individually connects the plurality of port processing means on a one-to-one basis,
Each of the plurality of port processing means simultaneously transmits the flow control signal to the plurality of port processing means;
A router characterized by that.
[0097]
(Appendix 3) In Appendix 1 or 2,
Each of the plurality of port processing means processes the flow control signal transmitted to itself within itself without going through the communication line.
A router characterized by that.
[0098]
(Appendix 4) In any one of Appendices 1 to 3,
The packet has a plurality of classes representing transmission priorities,
The flow control signal indicates transmission permission or transmission stop for each class,
A router characterized by that.
[0099]
(Appendix 5) In any one of Appendices 1 to 4,
Each of the plurality of port processing means includes:
Determining means for determining a destination port of a packet input through the port;
Arbitrating with the port processing means of the destination port of the packet via the switch means, and arbitrating means for giving the packet to the destination port via the switch means based on the arbitration result;
Receiving the packet given from the determining means, converting the format of the packet into a format suitable for the input of the arbitrating means, and providing the format converting means to the arbitrating means,
The communication line connects between the format conversion means of the plurality of port processing means,
The flow control signal is transmitted by the format conversion means.
A router characterized by that.
[0100]
(Appendix 6) In Appendix 5,
The arbitration unit receives a packet from the arbitration partner arbitration unit via the switch unit, and gives the received packet to the format conversion unit.
The format conversion means converts the format of the packet given from the arbitration means into a format suitable for the input of the decision means, and gives the decision means,
The determination means includes a storage means for transmitting the packet given from the format conversion means toward the port and temporarily storing the packet given from the format conversion means, and the storage means overflows. If there is a fear, the format conversion means is instructed to stop sending packets to itself,
The format conversion means transmits the flow control signal indicating transmission stop for a packet addressed to the port processing means to which the determination means and the format conversion means belong, based on a transmission stop instruction from the determination means.
A router characterized by that.
[0101]
【The invention's effect】
According to the present invention, flow control signals can be transmitted to other port portions at high speed. Further, according to the present invention, it is possible to reduce (or eliminate) the time difference (variation) in transmission of the flow control signal to each port part.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a router according to an embodiment of the present invention.
FIG. 2 is a block diagram showing a detailed configuration of a CSB.
FIG. 3 shows a format of flow control data transmitted / received between CSBs.
FIG. 4 is a block diagram illustrating a configuration example of a conventional router 100.
[Explanation of symbols]
1 router
3 0 ~ 3 7 Line termination module (LTM)
4 0 ~ 4 7 Switch blade device (SWB)
5 0 ~ 5 7 CSIX bridge device (CSB)
6 0 ~ 6 7 Transceiver
8 core switches
71 SWB side FCD transmitter
72 SWB side FCD receiver
75 CSB side FCD receiver
76 CSB side FCD transmitter

Claims (5)

複数のポートを有するルータにおいて,
前記複数のポートのそれぞれから入力されるパケットおよびそれぞれから出力されるパケットをポートごとに個別に処理する複数のポート処理手段と,
前記複数のポート処理手段の間で前記パケットのスイッチングを行うスイッチ手段と,
前記複数のポート処理手段の間を接続する通信回線と,
を有し,
前記複数のポート処理手段のそれぞれは,前記スイッチ手段を介して自己宛てに与えられるパケットの自己宛てへの送信許可または送信停止を示すフロー制御信号を,前記通信回線を介して前記複数のポート処理手段に送信し,
前記複数のポート処理手段のそれぞれには,前記入力パケットの送信先の前記ポートを決定するスイッチブレードと,前記スイッチブレードから出力された前記入力パケットのフォーマットを変換するブリッジとを有し,前記スイッチブレートと前記ブリッジとの間でも前記フロー制御信号が送信される,
ことを特徴とするルータ。
In a router with multiple ports,
A plurality of port processing means for individually processing a packet input from each of the plurality of ports and a packet output from each of the ports;
Switch means for switching the packet between the plurality of port processing means;
A communication line connecting the plurality of port processing means;
Have
Each of the plurality of port processing means transmits a flow control signal indicating permission or suspension of transmission of a packet given to itself via the switch means to the plurality of port processing via the communication line. To the means,
Each of the plurality of port processing means includes a switch blade that determines the port to which the input packet is transmitted, and a bridge that converts the format of the input packet output from the switch blade. The flow control signal is also transmitted between the blade and the bridge,
A router characterized by that.
請求項1において,
前記通信回線は,前記複数のポート処理手段を個別に1対1に接続し,
前記複数のポート処理手段のそれぞれは,前記複数のポート処理手段に前記フロー制御信号を同時に送信する,
ことを特徴とするルータ。
In claim 1,
The communication line individually connects the plurality of port processing means on a one-to-one basis,
Each of the plurality of port processing means simultaneously transmits the flow control signal to the plurality of port processing means;
A router characterized by that.
請求項1または2において,
前記複数のポート処理手段のそれぞれは,自己宛てに送信される前記フロー制御信号については,前記通信回線を介することなく自己の内部で処理する,
ことを特徴とするルータ。
In claim 1 or 2,
Each of the plurality of port processing means processes the flow control signal transmitted to itself within itself without going through the communication line.
A router characterized by that.
請求項1から3のいずれか1項において,
前記パケットは送信の優先順位を表す複数のクラスを有し,
前記フロー制御信号は前記クラスごとに送信許可または送信停止を示す,
ことを特徴とするルータ。
In any one of Claims 1-3,
The packet has a plurality of classes representing transmission priorities,
The flow control signal indicates transmission permission or transmission stop for each class,
A router characterized by that.
請求項1から4のいずれか1項において,
前記複数のポート処理手段のそれぞれは,
前記ポートを介して入力されたパケットの宛先ポートを決定する前記スイッチブレードと,
前記スイッチ手段を介してパケットの宛先ポートのポート処理手段と調停し,
調停結果に基づいて,宛先ポートへパケットを前記スイッチ手段を介して与える調停手段と,
前記スイッチブレードから与えられるパケットを受信し,該パケットのフォーマットを,前記調停手段の入力に適合したフォーマットに変換して,前記調停手段に与える前記ブリッジとを有し,
前記通信回線は,前記複数のポート処理手段の前記ブリッジの間を接続し,
前記フロー制御信号は,前記ブリッジにより送信される,
ことを特徴とするルータ。
In any one of Claims 1-4,
Each of the plurality of port processing means includes:
The switch blade for determining a destination port of a packet input through the port;
Arbitrates with the port processing means of the destination port of the packet via the switch means,
Arbitration means for providing a packet to the destination port via the switch means based on the arbitration result;
Receiving the packet given from the switch blade , converting the format of the packet into a format suitable for the input of the arbitration means, and providing the bridge to the arbitration means,
The communication line connects between the bridges of the plurality of port processing means,
The flow control signal is transmitted by the bridge ;
A router characterized by that.
JP2002014136A 2002-01-23 2002-01-23 Router that transmits flow control signals at high speed Expired - Fee Related JP3995482B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002014136A JP3995482B2 (en) 2002-01-23 2002-01-23 Router that transmits flow control signals at high speed

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002014136A JP3995482B2 (en) 2002-01-23 2002-01-23 Router that transmits flow control signals at high speed

Publications (2)

Publication Number Publication Date
JP2003218927A JP2003218927A (en) 2003-07-31
JP3995482B2 true JP3995482B2 (en) 2007-10-24

Family

ID=27650903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002014136A Expired - Fee Related JP3995482B2 (en) 2002-01-23 2002-01-23 Router that transmits flow control signals at high speed

Country Status (1)

Country Link
JP (1) JP3995482B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4606984B2 (en) * 2005-09-29 2011-01-05 三菱電機株式会社 Flow control method and relay device
JP4421625B2 (en) 2007-03-20 2010-02-24 富士通株式会社 Flow control method and receiving apparatus

Also Published As

Publication number Publication date
JP2003218927A (en) 2003-07-31

Similar Documents

Publication Publication Date Title
CA2255418C (en) Ring interface and ring network bus flow control system
EP1882336B1 (en) Queue aware flow control
US6167029A (en) System and method for integrated data flow control
KR100735408B1 (en) Method and apparatus for controlling a traffic switching operation based on a service class in an ethernet-based network
EP1565828B1 (en) Apparatus and method for distributing buffer status information in a switching fabric
US6690668B1 (en) Modular interconnection of network switches
EP0996256B1 (en) Tag-based packet switching system
US8819265B2 (en) Managing flow control buffer
US7746778B2 (en) Resource based data rate control
JP3002726B1 (en) Variable speed digital switching system
US7573821B2 (en) Data packet rate control
US8018851B1 (en) Flow control for multiport PHY
US20030147347A1 (en) Method for congestion control and associated switch controller
WO2006039615A1 (en) Directional and priority based flow control between nodes
JP3322195B2 (en) LAN switch
US11768784B2 (en) Latency and jitter for traffic over PCIe
JP2008546298A (en) Electronic device and communication resource allocation method
JP2000269997A (en) Lan repeating exchange device
US7130271B1 (en) Relaying apparatus
US20060013135A1 (en) Flow control in a switch
JP3995482B2 (en) Router that transmits flow control signals at high speed
US20040017813A1 (en) Transmitting data from a plurality of virtual channels via a multiple processor device
KR100317126B1 (en) Gigabit Ethernet Architecture Including of Layer 3 Forwarding Engine with 2-Way Path
KR100363886B1 (en) Interface method of network processing module in multilayer packet switch system and multilayer packet switch system
JP2000224180A (en) Data priority transfer method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040825

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060524

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060711

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060911

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070116

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070319

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: 20070731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070731

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

Free format text: PAYMENT UNTIL: 20100810

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100810

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110810

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120810

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120810

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130810

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees