(57)【特許請求の範囲】
【請求項１】
異なるインタフェース間のスイッチング機能を有する通信装置において、
固定長のデータをスイッチングするメインスイッチ部と、該メインスイッチ部の入力及び出力にそれぞれ設けられた第１及び第２のバッファを具備するインタフェース部とを設けたスイッチ部と、
前記スイッチ部に接続され、所定のプロトコルに従った処理を行う処理部を有し、
該処理部は前記第１及び第２のバッファに接続する第３及び第４のバッファを有し、
前記第１のバッファが所定の状態になった時に前記第３のバッファに対しバックプレッシャ制御を行い、前記第４のバッファが所定の状態になった時に前記第１のバッファに対しバックプレッシャ制御を行い、前記第２のバッファが所定の状態になった時に前記第１のバッファに対しバックプレッシャ制御を行い、、前記処理部に接続された装置からのバックプレッシャ制御の要求を受けると前記第４のバッファに対しバックプレッシャ制御を行うことを特徴とする通信装置。
【請求項２】
前記バックプレッシャ制御の要求は、所定のフロー制御セルで形成されることを特徴とする請求項１記載の通信装置。
【請求項３】
前記バックプレッシャ制御は、回線単位に行なわれることを特徴とする請求項１または２記載の通信装置。
【請求項４】
前記スイッチ部は二重化構成であり、非運用系からのバックプレッシャ制御の要求を受けた運用系は、バックプレッシャ制御の要求を破棄することを特徴とする請求項１ないし３のいずれか一項記載の通信装置。
【請求項５】
前記インタフェース部は、前記第１及び第２のバッファを回線毎に複数個具備し、前記スイッチ部を複数有することを特徴とする請求項１ないし４のいずれか一項記載の通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はネットワークに接続される通信装置に関し、特に、複数の異なる回線を収容してスイッチングする機能を持ったルータなどの通信装置に関する。より詳細には、本発明はルータ内のキューイングに関する技術、及びトラヒック制御の一態様であるバックプレッシャ制御及びこれに関連する技術に関する。
【０００２】
従来より、複数のネットワークを接続してデータをルーチングして中継するために、ルータと呼ばれる中継装置が用いられている。ルータは、ネットワークのプロトコルの変換やアドレスの変換を行なって、データの中継経路を設定する。
【０００３】
【従来の技術】
図１に、ネットワーク構成の一例を示す。ルータ１０〜１３は異なるネットワークを接続する。例えば、ルータ１０は、Ｓｏｎｅｔ／ＳＤＨ  ＡＤＭ（Ｓｏｎｅｔ／Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｉｇｉｔａｌ  Ｈｉｅｒａｒｃｈｙ  Ａｄｄ−Ｄｒｏｐ  Ｍｕｌｔｉｐｌｅｘｅｒ）１４、ＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ）専用線サービスネットワーク１５、ＯＣ−４８ＤＷＤＭ（Ｄｅｎｓｅ  Ｗａｖｅｌｅｎｇｔｈ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅｘｉｎｇ）ネットワーク１６、及びＯＣ４８ｃＤＷＤＭネットワーク１７を相互に接続する。換言すれば、ルータ１０は異なる伝送速度（換言すれば、異なるインタフェース）の回線を収容している。同様に、他のルータ１１〜１３も異なるネットワークを相互に接続してデータを中継する。
【０００４】
このようなルータは、異なるサイズ（長さ）のパケットを中継処理する。つまり、扱うパケットは可変長である。また、ある回線が輻輳した時に、その回線へのパケットの流入を防いでパケットの損失を防止するためのバックプレッシャ制御を、イーサネットのポート単位（換言すれば回線単位）に行なう。例えば、あるポートが輻輳した場合には、このポートに接続される回線に対してバックプレッシャ制御を行なう。例えば、ルータがポート毎にバッファを具備している場合には、輻輳したバッファへのパケットの流入を規制する。
【０００５】
【発明が解決しようとする課題】
しかしながら、従来のルータは、異なるネットワークを効率よく収容して効率的な中継処理を行えないという問題点を具備する。具体的には次の通りである。
【０００６】
第１に、従来のルータは可変長パケットを中継処理するため、様々なネットワークを中継しようとすると、内部制御が極めて複雑になり、異なる伝送速度毎にＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）制御を行なうことは極めて困難である。その際、バックプレッシャ制御はイーサネットのポート単位に行うため、ＡＴＭやＰＯＳ（Ｐａｃｋｅｔ  Ｏｖｅｒ  Ｓｗｉｔｃｈ）などの異なる伝送速度のパケット処理に対しては、必ずしも効率的なバックプレッシャ制御とはならない。従って、異なる伝送速度毎のＱｏＳ制御を効果的にかつ効率的に行なうことはできない。
【０００７】
第２に、出力ポート毎にバッファを持つので、バッファを効率的に利用できない。例えば、ある出力ポートが輻輳している時に他の出力ポートのトラフィックが低い場合には、ルータ全体のバッファの使用効率は低い状態にある。この問題点を解決するために、出力回線（ポート）をアグリゲート（束ねて）して、共通のバッファを設けることが考えられる。しかしながら、ある出力回線のバックプレッシャ制御の要求を受けると、出力回線が輻輳していないデータまでバックプレッシャの影響を受けてしまい、データを出力できないブロッキング状態が発生してしまう。
【０００８】
第３に、通常ルータは二重化されている。これは、信頼性や保守運用の観点に基づく。二重化構成のルータにおいて、運用系と非運用系のいずれからのバックプレッシャでも制御動作を開始するように構成すると、レイテンシーやルータの状態によって運用系、非運用系で状態が不整合となってしまう可能性がある。このため、運用系から非運用系に切り替えを行なった場合に、バックプレッシャで制御された状態やバッファリングの状態によって、データの重複や追い越しが発生してしまう可能性がある。また、非運用系で障害が発生してバックプレッシャを発生したままとなった時に、非運用系の障害であるにもかかわらず、運用系に影響を与えてしまうことになる。
【０００９】
第４に、ＡＴＭの回線はデータのゆらぎや遅延に対して規格がある。ＡＴＭの規格を遵守するためには、バックプレッシャ制御を行なわないことが理想であるが、バッファの有効利用の観点からはバックプレッシャ制御を行なうことが望まれる。しかしながら、バックプレッシャ制御を頻繁に行なわなければならない状況では、データのゆらぎや遅延の規格を満足することはできない。
【００１０】
従って、本発明は上記従来技術の問題点を解決し、異なるネットワークを効率よく収容して効率的に中継処理を行える通信装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
本発明は、異なるインタフェース間のスイッチング機能を有する通信装置において、固定長のデータをスイッチングするメインスイッチ部と、該メインスイッチ部の入力及び出力にそれぞれ設けられた第１及び第２のバッファを具備するインタフェース部と、前記スイッチ部に接続され、所定のプロトコルに従った処理を行う処理部を有し、該処理部は前記第１及び第２のバッファに接続する第３及び第４のバッファを有し、前記第１のバッファが所定の状態になった時に前記第３のバッファに対しバックプレッシャ制御を行い、前記第４のバッファが所定の状態になった時に前記第１のバッファに対しバックプレッシャ制御を行い、前記第２のバッファが所定の状態になった時に前記第１のバッファに対しバックプレッシャ制御を行い、前記処理部に接続された装置からのバックプレッシャ制御の要求を受けると前記第４のバッファに対しバックプレッシャ制御を行うことを特徴とする通信装置である。
【００１２】
固定長のデータをスイッチングするメインスイッチ部の入力及び出力にそれぞれ、第１及び第２のバッファを設けたことで、メインスイッチ部をバッファレスな構成とすることができる。従って、ネットワークのプロトコルに依存した伝送速度差を吸収することができ、スイッチングによるゆらぎを低減することができる。そして、伝送速度毎のＱｏＳ制御やバックプレッシャ制御を効果的かつ効率的に行なうことができる。
【００１３】
【発明の実施の形態】
図２は、本発明の第１の実施の形態によるルータの構成を示すブロック図である。図示するルータ２０は、図１のルータ１０〜１３に置き換わるものである。図示するルータ２０は二重化されている。
【００１４】
ルータ２０は、回線終端部２１ｗ、２１ｐ、Ｌ３（レイヤ３：ネットワーク層）処理部２２ｗ、２２ｐ、スイッチ部２３ｗ、２３ｐ、Ｌ３処理部２４ｗ、２４ｐ及び回線終端部２５ｗ、２５ｐを有する。添え字の“ｗ”は二重化構成の運用系を示し、“ｐ”は非運用系を示す。スイッチ部２３ｗ、２３ｐに接続される二重化構成のＬ３処理部や回線終端部は、必ずしも二重化にする必要はない。
【００１５】
ルータ２０が扱う回線の種類は例えば、Ｅｔｈｅｒ１０／１００Ｂａｓｅ−Ｔ、Ｅｔｈｅｒ１０００Ｂａｓｅ−Ｔ、ＰＯＳ  ＯＣ３Ｃ、ＯＣ１２Ｃ、ＯＣ４８Ｃ、ＡＴＭ  ＯＣ３Ｃ、ＯＣ１２Ｃ、ＳＴＭ  Ｔ１／Ｅ１、ＳＴＳ３、ＳＴＳ１２などである。
図２の各部の内部構成例
図３は、図２の各部の内部構成例を示すブロック図である。図３に示す構成は、二重化構成の運用系及び非運用系のいずれにも当てはまるものである。よって、図３では、運用系と非運用系を区別する参照番号の添え字“ｗ”や“ｐ”を省略してある。また、図３に示す構成は実線の矢印で示すデータの流れに沿って図示したものである。従って、回線終端部２１及びＬ３処理部２２は、入力側と出力側とで２分割されたように図示してある。
【００１６】
入力側の回線終端部２１は、物理層処理部２１１及びＬ３インタフェース部２１２を有する。Ｌ３処理部２２は、回線インタフェース部２２１、ローカルスイッチ部２２２及びスイッチインタフェース部２２３を有する。Ｌ３処理部２２は、複数のネットワークに接続されている通信装置間のデータ転送やデータの中継処理などの通信プロトコルに従った処理を行なう。スイッチ部２３は、入力側のスイッチインタフェース部２３１、メインスイッチ部２３２及び出力側のスイッチインタフェース部２３３を有する。出力側のＬ３処理部２２は、スイッチインタフェース部２２４、ローカルスイッチ部２２５及び回線インタフェース部２２６を有する。出力側の回線終端部２５は、Ｌ３インタフェース部２１３及び物理層処理部２１４を有する。
【００１７】
回線終端部２１の物理層処理部２１１は、ポートを介して接続されるネットワーク上の回線を収容してアグリゲートする。Ｌ３インタフェース部２１２は、物理層処理部２１１でアグリゲートした回線上のデータに対し、レイヤ２の処理を行なう（レイヤ２終端処理）。Ｌ３処理部２２の回線インタフェース部２２１は、可変長パケットを一旦バッファに蓄積した後、所定長の固定長パケット（以下セルと言う）に変換する。この処理をフラグメント化という。ローカルスイッチ部２２２は、回線インタフェース部２２１からのセルをスイッチングする。スイッチインタフェース部２２３は、ローカルスイッチ部２２２が出力するセルを一旦蓄積した後、スイッチ部２３に出力する。スイッチ部２３は、Ｌ３処理部２２からのセルを一旦蓄積した後、メインスイッチ部２３２にセルを出力する。メインスイッチ部２３２は、レイヤ３のＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）に基づきルーティングを行なう。メインスイッチ部２３２はバッファを持たない。
【００１８】
図４に、レイヤ２の終端処理とレイヤ３のルーティング処理を示す。例えば、ＡＴＭの回線では、ＡＴＭレイヤは回線終端部２１で終端しておき、レイヤ３のＩＰ情報を元にスイッチ部２３がＡＴＭセルをルーティングする。
【００１９】
スイッチインタフェース部２３３は、メインスイッチ部２３２でルーティングされたセルを一旦格納する。
【００２０】
出力側のＬ３処理部２２のスイッチインタフェース部２２４は、スイッチ部２３からのセルを一旦格納する。ローカルスイッチ部２２５は、回線インタフェース部２２４からのセルをスイッチングする。回線インタフェース部２２６は、ローカルスイッチ部２２５からのセルを一旦格納する。回線終端部２１のＬ３インタフェース部２１３は、Ｌ３処理部２２からのルーティングされたセルを一旦格納してレイヤ２に関する情報を付加し、更にセルを対応する可変長パケットに変換する。物理層処理部２１４は、可変長パケットを対応する回線（ポート）に出力する。
【００２１】
図３中の記号“×”は、後述するバックプレッシャ信号の廃棄（終端）ポイントを示す。本発明の第１の実施の形態では、Ｌ３処理部２２のスイッチインタフェース部２２３でバックプレッシャ信号を終端し、データを廃棄する。また、後述する本発明の第２の実施の形態では、Ｌ３処理部２２のローカルスイッチ部２２５でバックプレッシャ信号を終端し、データを廃棄する。
Ｌ３処理部２２及びスイッチ部２３の基本構成及び基本動作
図５は、Ｌ３処理部２２及びスイッチ部２３の基本構成を示すブロック図である。Ｌ３処理部２２は回線対応処理部２２０〜２２７及び内部処理部２２８を有する。回線対応処理部２２０は、インタフェース部２２００及びネットワークプロセッサ２２７０を有する。インタフェース部２２００はルータ２０の１つのポート（回線）に対応し、図３のスイッチインタフェース部２２３及び２２４の内部回路に相当する。ネットワークプロセッサ２２７０は、図３のローカルスイッチ部２２２に接続されるもので、図面を簡単にするために、図３での図示を省略してある。ネットワークプロセッサ２２７０は、入力２系統ＩＮ０、ＩＮ１と出力２系統ＯＵＴ０、ＯＵＴ１を処理する。インタフェース部２２００は、ＦＩＦＯ形式の共通バッファ３１及び３２、入力バッファサ３５、並びに出力バッファ３６を具備する。他の回線対応処理部２２２〜２２７も同様の構成である。すなわち、回線対応処理部２２２〜２２７はそれぞれ、インタフェース部２２０１〜２２０７及びネットワークプロセッサ２２７１〜２２７７を有する。
【００２２】
内部処理部２２８は、インタフェース部２２０８とメインプロセッサ２２７８とを有する。メインプロセッサ２２７８は、ルータ２０を統合的に制御するプロセッサであり、インタフェース部２２０８を介してスイッチ部２３との間でセルをやり取りする。
【００２３】
スイッチ部２３は、図３に示すメインスイッチ２３２と回線対応処理部２３００〜２３０７とを有する。インタフェース部２３００〜２３０７は、図３のスイッチインタフェース２３１、２３３の内部回路に相当する。インタフェース部２３００〜２３０７はそれぞれ、Ｌ３処理部のインタフェース部２２００〜２２０７に対応している。また、インタフェース部２２０８はインタフェース部２３０７に接続されている。インタフェース部２３００は、ＦＩＦＯ形式の共通バッファ３３及び３４、出力バッファ３７並びに入力バッファ３８を有する。
【００２４】
他のインタフェース部２３０１〜２３０７も同様に構成されている。
【００２５】
なお、便宜上、共通バッファ３３と出力バッファ３７とをまとめて第１のバッファと言う。また、共通バッファ３４と入力バッファ３８とをまとめて第２のバッファと言う。更に、共通バッファ３５と入力バッファ３１とをまとめて第３のバッファと言う。更に、共通バッファ３２と出力バッファ３６とをまとめて第４のバッファと言う。
【００２６】
次に、図５に示す回路の基本動作を説明する。
【００２７】
ネットワークプロセッサ２２７０は、ローカルスイッチ２２２からセルを受け取り、入力バッファ３５に出力する。セルの入力は、入力ＩＮ０とＩＮ１の２系統ある。入力バッファ３５は受取ったセルを共通バッファ３１に出力する。これにより、共通バッファ３１にはセルのキューが形成される。共通バッファ３１内のセルは、後述するスケジューリング処理に従い読み出され、スイッチ部２３に送られる。
【００２８】
スイッチ部２３の共通バッファ３３は、インタフェース部２２００から送られたセルを格納する。共通バッファ３３に格納されたセルは、後述するスケジューリング処理に従い読み出され、出力バッファ３７に一旦格納された後、メインスイッチ部２３２に送られる。メインスイッチ部２３２は、受取ったセルをスイッチングする。
【００２９】
メインスイッチ部２３２からのセルは、入力バッファ３８に一旦格納された後、共通バッファ３４に格納される。共通バッファ３４に格納されたセルは、後述するスケジューリング処理に従い読み出され、インタフェース部２２００に送られる。インタフェース部２２００の共通バッファ３２は、受取ったセルを格納する。そして、後述するスケジューリング処理に従いセルが共通バッファ３２から読み出され、一旦出力バッファ３６に格納される。そして、出力バッファ３６から読み出されたセルは、ネットワークプロセッサ２２７０に出力される。ネットワークプロセッサ２２７０は、出力系ＯＵＴ０又はＯＵＴ１を介して、受取ったセルをローカルスイッチ部２２２に出力する。
【００３０】
後述するように、入力バッファ３５、３８及び出力バッファ３６、３７の各々は、ＱｏＳクラス毎にバッファ(キュー)を有している。ＱｏＳクラスは例えば、固定ビットレートのサービス、可変ビットレートのサービス、無制限ビットレートのサービス、アベイラブル（ａｖａｉｌａｂｌｅ）ビットレートのサービスや、マルチキャストのサービスなどがある。ＱｏＳサービス単位はインタフェース毎に任意に設定可能である。
バックプレッシャ制御の概要
図５には、本発明の第１の実施の形態で用いられるバックプレッシャ信号ＢＰ１、ＢＰ２、ＢＰ３、ＢＰ４及びＢＰ５を示している。バックプレッシャ信号ＢＰ１は、スイッチ部２３のインタフェース部２３００内の共通バッファ３３又は出力バッファ３７が所定の状態になると生成される。所定の状態とは例えば、輻輳した状態又は輻輳が予期される状態である。輻輳が予期される状態を含めて、輻輳と定義しても良い。
【００３１】
バックプレッシャ信号ＢＰ１は、Ｌ３処理部２２のインタフェース部２２００の内部に設けられた共通バッファ３１からのセル読み出し動作を停止させる。図５に示すバックプレッシャ信号ＢＰ１の矢印は論理的な流れを示し、好ましくは、バックプレッシャ信号ＢＰ１をセルで構成する。このセルをフロー制御セルと言う。つまり、インバンドフロー制御でバックプレッシャ信号ＢＰ１を伝送する。具体的には、共通バッファ３３又は出力バッファ３７が所定の状態になると、スケジューリング処理が共通バッファ３４を介してフロー制御セルをインタフェース部２２００の共通バッファ３２に送る。共通バッファ３２からフロー制御セルが読み出されると、スケジューリング処理は共通バッファ３１のセル読み出し動作を停止させる。
【００３２】
バックプレッシャ信号ＢＰ２は、Ｌ３処理部２２のインタフェース部２２００内部の共通バッファ３２又は出力バッファ３６が所定の状態になると生成される。バックプレッシャ信号ＢＰ２は、スイッチ部２３のインタフェース部２３００内部に設けられた共通バッファ３３からのセル読み出し動作を停止させる。図５に示すバックプレッシャ信号ＢＰ２の矢印は論理的な流れを示し、好ましくは、バックプレッシャ信号ＢＰ２をフロー制御セルで構成する。フロー制御セルの物理的な流れは次の通りである。共通バッファ３２又は出力バッファ３６が所定の状態になると、スケジューリング処理が共通バッファ３１を介してフロー制御セルをインタフェース部２３００の共通バッファ３３に送る。共通バッファ３３からフロー制御セルが読み出されると、スケジューリング処理は共通バッファ３３のセル読み出し動作を停止させる。
【００３３】
なお、後述するように、バックプレッシャ信号ＢＰ２はリンクレベルのフロー制御、つまりインタフェース部２３００〜２３０７に設けられた全ての共通バッファ３３の読み出しを停止させることもできる。この制御は、後述するバックプレッシャ信号ＢＰ５と協働して行なわれる。
【００３４】
バックプレッシャ信号ＢＰ３は、スイッチ部２３のインタフェース部２３００内部の共通バッファ３４又は入力バッファ３８が所定の状態になると生成される。バックプレッシャ信号ＢＰ３は、スイッチ部２３のインタフェース部２３００内部に設けられた共通バッファ３３からのセル読み出し動作を停止させる。図５に示すバックプレッシャ信号ＢＰ３の矢印は論理的な流れを示し、好ましくは、バックプレッシャ信号ＢＰ２をフロー制御セルで構成する。具体的には、共通バッファ３４又は入力バッファ３８が所定の状態になると、スケジューリング処理が共通バッファ３１を介してフロー制御セルをインタフェース部２３００の共通バッファ３３に送る。共通バッファ３３からフロー制御セルが読み出されると、スケジューリング処理は共通バッファ３３のセル読み出し動作を停止させる。
【００３５】
バックプレッシャ信号ＢＰ４は、出力ＯＵＴ０、ＯＵＴ１単位に共通バッファ３２のセル読み出しを制御する。出力ＯＵＴ０又はＯＵＴ１の先にあるローカルスイッチ２２５（図３参照）などに設けられている内部バッファが所定の状態になったとき、ネットワークプロセッサ２２７０は専用線を介して共通バッファ３２にバックプレッシャ信号ＢＰ４を送出する。
【００３６】
バックプレッシャ信号ＢＰ５は、後述するバックプレッシャ・バスを介してシリアルに伝送される信号である。バックプレッシャ・バスは、インタフェース部２３００〜２３０７を相互に接続する。バックプレッシャ信号ＢＰ５は、インタフェース部２３００〜２３０７内部の共通バッファ３３のセル読み出しを同時に停止させる。バックプレッシャ信号ＢＰ５による読み出しは、後述するように、ＱｏＳクラス単位(サービスクラスとも言う)及びバッファ単位に停止させることができる。
インタフェース部２２００〜２２０７内に設けられた共通バッファ３１のスケジューリング処理
インタフェース部２２００〜２２０７の共通バッファ３１のスケジューリング処理について、図６を参照して説明する。
【００３７】
図６は、このスケジューリング処理を行うスケジューラの一構成例を示す図である。図６のスケジューラ（以下、第１のスケジューラと言う）は、インタフェース部２２００〜２２０７の共通バッファ３１に対応したアドレスキュー部４１０〜４１７、マルチキャストすべきセルのアドレスを格納するアドレスキュー部４５、アドレスキュー部４１０〜４１７の出力を選択するセレクタ４４、及びセレクタ４４の出力及びアドレスキュー部４５の出力を選択するセレクタ４５とを具備する。前述した図１から図５までの図には、便宜上第１のスケジューラの図示を省略してある。上記第１のスケジューラは、図５の▲１▼の部分の読み出しを制御する。
【００３８】
アドレスキュー部４１０〜４１７の各々は、クラスに対応した数のキュー４３０〜４３７を有する。この例では、クラス０からクラス７までの８つのクラスがある場合を想定している。これらのキュー４３０〜４３７に、対応する共通バッファ３１に格納されたセルのアドレスポインタ値が格納される。例えば、クラス０のセルが共通バッファ３１に格納された場合には、このセルのアドレスポインタ値がアドレスキュー部４１０のキュー４３０に格納される。各キュー４３０〜４３７はＦＩＦＯ形式のメモリで構成される。アドレスキュー部４５には、マルチキャストすべきキューが格納された共通バッファ３１のアドレスポインタ値が格納される。
【００３９】
セレクタ４２は、クラス間のスケジューリングに従い、読み出すべきキューを選択する（調停する）。このスケジューリングの選択論理は、重み付けラウンド・ロビン方式（Ｗｅｉｇｈｔｅｄ  Ｒｏｕｎｄ  Ｒｏｂｉｎ：以下、ＷＲＲ方式と言う）とする。通常のラウンド・ロビン方式（ＲＲ方式）が単純な巡回選択であるのに対し、ＷＲＲ方式は巡回するキューに重み付けを設定することが可能である。この重み付けは、そのキューから連続で読み出しを行なうことができる最高回数を規定するもので、全てのキューの重み付けを１とした場合には、ＷＲＲ方式はＲＲ方式と同一になる。初期化後、キュー４３０から選択を行ない、キューがエンプティ又は連続読み出しを行なったという条件で、次のパケット時間において次のクラスの読み出しへと移行する。重み付けは、各クラス毎に設定できる。例えば、インタフェース部２２００〜２２０７に共通としても良い。
【００４０】
このようにして、アドレスキュー部４１０〜４１７の各々でクラス間のスケジューリングが行なわれる。
【００４１】
セレクタ４４は、アドレスキュー部４１０〜４１７の中から、セルを読み出すべきアドレスキュー部を選択するスケジューリング処理を行う。選択論理は、例えばＲＲ方式である。
【００４２】
セレクタ４６は、セレクタ４４の出力とマルチキャストのアドレスキュー部４５の出力とのいずれか一方を選択する。この選択論理は、セレクタ４４からの出力が無い時、換言すれば、アドレスキュー部４１０〜４１７の各共通バッファ３１から読み出すべきユニキャストのセルが無い場合に限り、マルチキャストの読み出しを行なう。この場合には、共通バッファ３１内のマルチキャストキュー（バッファ）が読み出し対象となる。マルチキャストキューにも読み出すべきセルが存在しない場合には、そのセル時間はセルを読み出さない。
【００４３】
このようにして、第１のスケジューラはインタフェース部２２００〜２２０７から読み出すべきセルのアドレスを決定する。
【００４４】
なお、第１のスケジューラは後述するバックプレッシャ信号ＢＰ２を形成するフロー制御セルを送出するために、強制的に１セルだけ無効セルを挿入し、バッファからのセル読み出しを行なわない時間を作ることができる。
バックプレッシャ信号ＢＰ１によるバックプレッシャ制御
以上のようにして、３通りのスケジューリングにより任意のパケット時間の読み出しキューを決定する。その際、バックプレッシャ信号ＢＰ１が上記スケジューラに通知されると、第１のスケジューラはバックプレッシャ信号ＢＰ１に従いセル読み出し処理を停止させる。以下に説明するように、バックプレッシャ信号ＢＰ１には２通りある。
【００４５】
バックプレッシャ信号ＢＰ１がリンクレベルの場合、つまりスイッチインタフェース部２３がスイッチインタフェース部２２に対し全てのセルの読み出しの停止を要求する場合には、第１のスケジューラは図５に示すバックプレッシャ信号ＢＰ１を受け取り、図６に示すセレクタ４６をディスエーブル状態とする。従って、セル読み出しのアドレスが共通バッファ３１に供給されず、インタフェース部２２００〜２２０７からのセルの読み出しは停止する。
【００４６】
これに対し、バックプレッシャ信号ＢＰ１がポート単位（回線単位）の場合、例えばスイッチインタフェース部２３のインタフェース部２３００内部の共通バッファ３３が輻輳してしまう可能性がある。よって、共通バッファ３１からのセル読み出しの停止を要求する場合には、第１のスケジューラは図５に示すバックプレッシャ信号ＢＰ１を受け取り、図６に示すセレクタ４２をディスエーブル状態とする。従って、インタフェース部２２００の共通バッファ３１からのセル読み出しは停止する。
インタフェース部２２００〜２２０７の内部に設けられた共通バッファ３２のスケジューリング処理
インタフェース部２２００〜２２０７の共通バッファ３２のスケジューリング処理は、第２のスケジューラが行なう。第２のスケジューラは、図５の▲２▼の部分のセル読み出しを制御する。
【００４７】
図７は、第２のスケジューラの一構成例を示す図である。第２のスケジューラは、出力ＯＵＴ０とＯＵＴ１にそれぞれ対応したアドレスキュー部４７０、４７１と、アドレスキュー部４７０、４７１の出力を選択するセレクタ５１とを具備する。各アドレスキュー部４７０、４７１は、８つのクラスに対応するキュー４８０〜４８７、マルチキャストに対応するキュー４８８、これらのキューの１つを選択するセレクタ４９、及びセレクタ４９とキュー４８８のいずれかを選択するセレクタ５０とを有する。
【００４８】
第２のスケジューラは、各パケット時間毎に、どのＱｏＳクラスに対応するキューを読み出すかを決定する。このための選択処理には、以下の２つがある。第１の論理は出力ＯＵＴ０、ＯＵＴ１間の調停であり、第２の論理はＱｏＳクラス間の調停である。
【００４９】
第１の論理は、各パケット時間毎にＯＵＴ０とＯＵＴ１のどちら宛のパケットを読み出すかを決定する。この選択は、パケット時間毎に固定的に交互にＯＵＴ０とＯＵＴ１を読出すものである。このために、２パケット時間毎のマルチフレームを生成し、この前半でＯＵＴ０、後半でＯＵＴ１の読み出しを行う。
【００５０】
第２の論理は、各出力ＯＵＴ０、ＯＵＴ１毎に、８つのクラス対応のキュー４８０〜４８７、及び１つのマルチキャスト用キュー４８８の中から読み出すキューを決定する。選択論理の一例として、まずフレームの連続性を保証する論理を最優先とし、次にユニキャストの８つのＱｏＳについてのＷＲＲ方式を用い、最後にユニキャストとマルチキャストとの間の固定優先度に従った選択とする。レームの連続性を保証する論理では、選択中のキューから連続してセルを読み出すことができるように、アドレスポインタ値を対応するキューから読み出す。いずれのキューもフレーム読み出し状態にない場合に、次のＷＲＲ方式に移る。このＷＲＲ方式を用いた論理選択は、前述した共通バッファ３１のスケジューリング処理で説明した選択と同様である。ただし、フレームの連続性を保証する必要があるため、重み付けはセルの連続読み出し回数ではなく、フレームの連続読み出しの最高回数となる。固定優先度に従った処理では、全てのクラスのキュー４８０〜４８７がエンプティの場合には、マルチキャストに対応するキュー４８８からアドレスポインタ値を読み出す。つまり、マルチキャストのフレームはユニキャストのフレームが存在する限り読み出されることはない。なお、全てのキュー４８０〜４８８がエンプティ状態の場合には、読み出しは無効である。
バックプレッシャ信号ＢＰ４によるバックプレッシャ制御
前述したように、バックプレッシャ信号ＢＰ４は、出力ＯＵＴ０、ＯＵＴ１単位に共通バッファ３２のセル読み出しを制御する。出力ＯＵＴ０又はＯＵＴ１の先にあるローカルスイッチ２２５（図３参照）などに設けられている内部バッファが所定の状態になったとき、ネットワークプロセッサ２２７０は専用線を介して共通バッファ３２にバックプレッシャ信号ＢＰ４を送出する。バックプレッシャ信号ＢＰ４を受けた図７に示す第２のスケジューラは、バックプレッシャ信号ＢＰ４で指定された出力に対応するアドレスキュー部４７０、４７１の出力をマスクする。マルクすることで、読み出すべきパケットが存在しないものとする。つまり、アドレスキュー部４７０、４７１の出力を無効にする。
インタフェース部２３００〜２３０７の内部に設けられた共通バッファ３３のスケジューリング処理
インタフェース部２３００〜２３０７の共通バッファ３３のスケジューリング処理について、図８及び図９を参照して説明する。
【００５１】
図８は、インタフェース部２３００の共通バッファ３３及び出力バッファ３７の一構成例を示す図である。共通バッファ３３は、前処理部５３、共通バッファ３３、アドレス制御部５５、及びスケジューラ７０を有する。スケジューラ（以下、第３のスケジューラと言う）は、キュー振り分け部５６、アドレスキュー部５７０、５７１、及びセレクタ５９を有する。出力バッファ３７は、セル分配部６６、ＦＩＦＯ形式のバッファ６１、６２、セレクタ６３０、６３１、及びＦＩＦＯ形式のバッファ６４０、６４１を有する。第３のスケジューラは、図５の▲３▼の部分のセル読み出しを制御する。
【００５２】
前処理部５３は、Ｌ３処理部２２の回線対応処理部２２０から受取ったセルを内部クロックに乗せ換えた後、固定長正規化処理を行う。セルは、アドレス制御部５５が発行する格納アドレスに従い、共通バッファ３３に格納される。この格納アドレスは例えば、アドレス制御部５５の書き込みアドレス発行機能がシーケンシャルに発行する。各セルの宛先情報、発信元情報及びＱｏＳなどの各情報は、アドレス制御部５５を経由してキュー振り分け部５６に出力される。
【００５３】
キュー振り分け部５６は、各セルに付与されている宛先情報、発信元情報及びＱｏＳと上記格納アドレスをアドレス制御部５５から受け取り、書き込みアドレス、つまりアドレスポインタ値をアドレスキュー部５７０又は５７１の内部キューに書き込む。
【００５４】
アドレスキュー部５７０は入力ＩＮ０に対応し、内部に、インタフェース部２３００〜２３０７に対応するキュー５８０〜５８７、図５のインタフェース部２２８８に対応するキュー５８８、及びマルチキャストに対応するキュー５８８を具備している。同様に、アドレスキュー部５７１は入力ＩＮ１に対応し、内部に、インタフェース部２３００〜２３０７に対応するキュー５８０〜５８７、図５のインタフェース部２２８８に対応するキュー５８８、及びマルチキャストに対応するキュー５８８を具備している。セレクタ５９は、アドレスキュー部５７０と５７１の出力を選択する。
【００５５】
図９は、第３のスケジューラ７０の一構成例を示す図である。スケジューラ７０は、入力ＩＮ０、ＩＮ１内部のスケジューリング動作及び入力ＩＮ０、ＩＮ１間のスケジューリング動作を行う。第３のスケジューラ７０は、入力ＩＮ０に対応してセレクタ６５、６６及び６７を有する。図示を省略してあるが、第３のスケジューラ７０は、入力ＩＮ１に対応して同様のセレクタを有する。
【００５６】
セレクタ６５は、アドレスキュー５８７と５８８との間のスケジューリングを行なう。つまり、このスケジューリングは、アドレスキュー５８０〜５８６間のスケジューリングの前段で行なわれる。このスケジューリングは例えば、ＲＲ方式で行なわれる。セレクタ６５で選択されたアドレスポインタ値は、アドレスキュー５８０〜５８６とともにセレクタ６６でスケジューリング処理される。このスケジューリングは例えば、ＲＲ方式で行なわれる。セレクタ６５で選択されたアドレスポインタ値は、セレクタ６７に送出される。セレクタ６７は、セレクタ６５の出力、つまりユニキャストのセルと、アドレスキュー５８９に格納されているアドレスポインタで指定されるマルチキャストのセルとの間のスケジューリングを行なう。このスケジューリングは、ユニキャストキューが存在しない場合にのみ、マルチキャストキューからの読み出しを可能とする。
【００５７】
最後に、アドレスキューブ５７０と５７１のセレクタ６７の出力をセレクタ５９内部の図示を省略するセレクタで選択し（例えば交互に選択する）、選択したアドレスポインタ値をアドレス制御部５５に出力する。アドレス制御部５５の読み出しアドレス発行機能は、スケジューラ７０から受取ったアドレス値に基づき、読み出しアドレスを発行して共通バッファ３３に出力する。
【００５８】
共通バッファ３３から読み出されたセルは、出力バッファ３７のキュー振り分け部６０で、入力ＩＮ０に対応するバッファ６１又は入力ＩＮ１に対応するバッファ６２に振り分ける。セレクタ６３０と６３１はそれぞれ、バッファ６１と６２から読み出されたセルを選択して、図５に示すメインスイッチ部２３２に出力する。
バックプレッシャ信号ＢＰ５によるバックプレッシャ制御
図１０は、バックプレッシャ信号ＢＰ５によるバックプレッシャ制御を説明するための図である。前述した図に記載の構成要素と同一のものには、同一の参照番号を付してある。また、図１０は、図８を参照して説明したインタフェース部２３００の内部構成を概略的に示している。同様に、インタフェース部２３０７の内部構成も示している。
【００５９】
前述したように、バックプレッシャ信号ＢＰ５は、バックプレッシャ・バスを介してシリアルに伝送される信号である。このバックプレッシャ・バスを、図１０において参照番号７１で示す。バックプレッシャ・バス７１は、インタフェース部２３００〜２３０７を相互に接続する。
【００６０】
図１０に示す“ＲＤＹ”は、フロー制御セルによりインタフェース部２２００から通知されたバックプレッシャ信号ＢＰ２を意味する。このバックプレッシャ信号ＢＰ２は前述したポート単位の要求の他、リンクレベルのバックプレッシャを要求も含む。バックプレッシャＢＰ２が所定の値の時、バックプレッシャＢＰ２はクラス単位でかつ全てのインタフェース部２３００〜２３０７の対応するバッファからの読み出しの停止（リンクレベルのバックプレッシャ）を要求する。例えば、図１０に示す例では、クラスｊ（ｊはクラス０から７のいずれか）とマルチキャストに関してセル読み出しの停止が求められている。
【００６１】
このようなバックプレッシャ信号ＢＰ２を受けた第３のスケジューラは、自インタフェース２３００のキュー５８ｊと、マルチキャストに対応するキュー５８９を制御して、これらのバッファからのセル読み出しを停止させる。具体的には、図９に示すセレクタ６６と６７の選択論理において、キュー５８ｊと５８９を選択しないようにする。同時に、第３のスケジューラは、バックプレッシャ・バス７１を介してバックプレッシャ信号ＢＰ５を他のインタフェース部２３０１〜２３０７に出力する。このバックプレッシャ信号ＢＰ５は、キュー５８ｊと５８９を指定する情報を含む。図１０には、バックプレッシャ信号ＢＰ５がインタフェース部２３０７のキュー５８ｊと５８９のセル読み出し停止を指示している様子を示している。
【００６２】
上記バックプレッシャの制御により、全てのインタフェース部２３００〜２３０７からのインタフェース部２２００宛セルの送出を停止させることができる。
バックプレッシャ信号ＢＰ３によるバックプレッシャ制御
前述したように、バックプレッシャ信号ＢＰ３は、スイッチ部２３のインタフェース部２３００内部の共通バッファ３４又は入力バッファ３８が所定の状態になると生成される。
【００６３】
図１１は、インタフェース部２３００の入力バッファ３８と共通バッファ３４を模式的に図示してある。図１１の構成は、出力ＯＵＴ０とＯＵＴ１に対応するバッファ６９０、６９１とセレクタ７２とを有する。バッファ６９０又は６９１の使用量が所定のしきい値を超えた場合には、メインスイッチ部２３２へバックプレッシャ信号ＢＰ３を出力する。前述したように、バックプレッシャ信号ＢＰ３は、フロー制御セルで構成される。バッファ６９０又は６９１にセルが滞留するのは、風呂ー制御セルが集中した場合のみであり、通常ではメインスイッチ部２３２からの受信レートよりもバッファ６９０、６９１からの送信レートの方が高い。よって、バッファ６９０、６９１にはセルが溜まり難く、フロー制御セルのトラヒックが集中しない限り、バックプレッシャ信号ＢＰ３がイネーブルになることはない。
【００６４】
バックプレッシャ信号ＢＰ３を受けたメインスイッチ部２３２は、図１２に示すように、デマルチプレクサ３７の対応する入力（図１２の例では、入力ＩＮ０）のバッファ６４０に出力する。この結果、バッファ６４０のセル読み出しは停止される。
バックプレッシャ信号ＢＰ１の生成
図１３に、バックプレッシャ信号ＢＰ１の生成の一例を示す。図示する例は、インタフェース部２３００における入力ＩＮ０の出力バッファ３７を構成するバッファ６１内部のクラスｊに対応するキュー５８ｊが輻輳した場合又は輻輳する可能性がある場合に、バックプレッシャ信号ＢＰ１が生成される。前述したように、バックプレッシャＢＰ１は、フロー制御セルで形成される。
【００６５】
インタフェース部２３００は、セル滞留カウンタ７５を具備している。セル滞留カウンタ７５は、共通バッファ３３に格納される各クラスのセル、図５に示すメインプロセッサ２２７８宛のセル、及びマルチキャストされるセルをそれぞれカウントする。図１３に示すセル滞留カウンタ７５内部のキューを示す参照番号５８０〜５８９は、それぞれのカウンタを示す。カウント値は例えば、流入したセルの総数、又は所定時間内で流入したセルの数（セルの流量）を示す。流入したセルの総数又は流量に対するしきい値が設定されている。セル滞留カウンタ７５内部に設けられた比較器は、カウント値と所定のしきい値とを比較する。比較結果がしきい値超え又は流量超過を示している場合には、バックプレッシャ信号ＢＰ１を形成するフロー制御セルが出力ＯＵＴ１に送られる。このフロー制御セルは、キュー５８ｊを識別する情報やユニキャスト・マルチキャストを識別する情報を含む。
バックプレッシャ信号ＢＰ５の生成
図１４に、バックプレッシャ信号ＢＰ５の生成の一例を示す。図示する例は、インタフェース部２３００における入力ＩＮ０の共通バッファ３３に流入するセルのしきい値超え又は流量超過が発生した場合には、バックプレッシャ信号ＢＰ２に相当する前述のＲＤＹ信号をフロー制御セルでインタフェース部２２００に送出する。
バックプレッシャ信号ＢＰ５によるバックプレッシャ制御の他の例
図１０を参照して説明したバックプレッシャ信号ＢＰ５によるバックプレッシャ制御は、全てのインタフェース部２３００〜２３０７からのインタフェース部２２００宛セルの送出を停止させるものであった（リンクレベルの制御）。これに対し、図１５を参照して以下に説明するバックプレッシャ制御は、クラス単位の制御である。
【００６６】
図１５は、Ｌ３処理部２２の回線対応処理部２２７内部のインタフェース部２２０７に設けられた出力バッファ３６内のあるクラスに対応するキュー内のセル数又は流量が所定のしきい値を超えた場合を示す。この場合、バックプレッシャ信号ＢＰ２を形成するフロー制御セルＦＣがインタフェース部２２０７から対応するインタフェース部２３０７に送出される（図１５のステップ［１］）。フロー制御セルＦＣを受信すると、インタフェース部２３０７はバックプレッシャ・バス７１を介して、フロー制御セルＦＣと同一情報を具備するバックプレッシャ信号ＢＰ５を自装置のほか、他の全てのインタフェース部２３００〜２３０６に出力する（ステップ［２］）。インタフェース部２３０７は、受取ったフロー制御セルＦＣをインタフェース部２２０７に送出する（ステップ［３］）。ステップ［２］でバックプレッシャ信号ＢＰ５を受取った各インタフェース部２３００〜２３０６は、対応するＦＣパケットをインタフェース部２２００〜２２０６に送出する（ステップ［４］）。
固定長セル化に伴うフラグメント効率の悪化対策
可変長パケットを固定長セルに変換（フラグメント化）する際、固定長セルのペイロード部を構成するバイト数に満たないデータはパディングされる。このパディングによって実効スループットが低下し、帯域の無駄使いが発生する。この帯域悪化を防ぐためには、メインスイッチ部２３２を可変長セルも扱える構成とすることが好ましい。メインスイッチ部２３２の同一出力ポートを目指すセルが蓄積される出力バッファのセル滞留量に応じて、複数個のセルを結合した形でメインスイッチ部２３２に送出する（マルチアクセル方式：Ｍｕｌｔｉ  Ａｄｊｏｉｎｉｎｇ  Ｃｏｍｂｉｎｅｄ  Ｃｅｌｌ）。
【００６７】
今、各入力ポートの物理帯域をＢｗｐとし、セル転送時間をｍ、セルとセルの間隔をｎとすると、実効帯域ＢｗａはＢｗａ＝Ｂｗｐ×ｍ／（ｍ＋ｎ）となる。マルチアクセルとしてｎ＝３としたトリプルアクセルの場合、Ｂｗａ＝Ｂｗｐ×３ｍ／（３ｍ＋ｎ）となり、効率の向上が可能となる。
第１の実施の形態の効果
以下、本発明の第１の実施の形態の主な効果について説明する。
【００６８】
第１に、可変長セルを変換して得られた固定長セルをスイッチングするので、各種インタフェースの速度差を効果的に吸収でき、スイッチングによるゆらぎを低減することができる。よって、ＡＴＭやＥｔｈｅｒｎｅｔなどの各種インタフェースに対するＱｏＳ制御及びバックプレッシャ制御を効果的かつ効率的に行なうことができる。
【００６９】
第２に、Ｌ３処理部２２のインタフェース部２２００〜２２０７の出力側からスイッチ部２３のインタフェース部２３００〜２３０７の入力側へのバックプレッシャ信号ＢＰ２を、メインスイッチ部２３２をバイパスするようにしたので、バックプレッシャレイテンシーを低減し、バッファを有効に利用することができ、メインスイッチ部の入出力ポートの帯域を効率的に使用することができる。
【００７０】
第３に、スイッチ部２３のインタフェース部２３００〜２３０７が輻輳又は輻輳が予期される状態になった時には、インタフェース部２２００〜２２０７の出力側の共通バッファ３２でセルを廃棄するのではなく、入力側の共通バッファ３３でセルを廃棄することとしたため、輻輳発生時のサービス低下を局所化することができる。
【００７１】
第４に、フロー制御セルを用いたフローレベル、及びバックプレッシャ・バス７１を利用したリンクレベルの２段階のバックプレッシャ制御を設けたので、バックプレッシャ制御を効率的かつ効果的に行なうことができる。
第２の実施の形態
本発明の第２の実施の形態は、前述した従来技術の問題点、つまり異なるネットワークを効率よく収容して効率的な中継処理を行えない問題点を解決するもので、特に先に示した従来技術の第２の問題点を解決するものである。
【００７２】
図１６は、前述した第２の問題点を示す図、図１７はこの問題点を解決する本発明の第２の実施の形態を示す図である。
【００７３】
図１６（Ａ）は、従来のＬ３処理部と回線終端部を示す。Ｌ３処理部は、スイッチインタフェース部３２４、ローカルスイッチ部３２５及び回線インタフェース部３２６を有する。回線終端部は、Ｌ３インタフェース部３１３及び物理層処理部３１４を有する。Ｌ３処理部は、出力回線単位でバッファを具備しており、出力回線単位にバックプレッシャ制御を行なう。出力回線単位のバックプレッシャ制御なので、前述したように、ルータ全体のバッファを効率的に利用することができない。
【００７４】
図１６（Ｂ）は別の従来例を示す。Ｌ３処理部は、スイッチインタフェース部４２４、ローカルスイッチ部４２５及び回線インタフェース部を有する。ローカルスイッチ部４２５は共通バッファで構成されている。共通バッファ４２５は、出力回線（ポート）をアグリゲートする。前述したように、ある出力回線のバックプレッシャ制御の要求を受けると、出力回線が輻輳していないデータまでバックプレッシャの影響を受けてしまい、データを出力できないブロッキング状態が発生してしまう。
【００７５】
図１７（Ａ）及び（Ｂ）は、上記問題点を解決する構成である。図中、前述した構成要素と同一のものには同一の参照番号を付してある。図１７（Ａ）は物理的なバックプレッシャ信号の流れを示し、図１７（Ｂ）は論理的なバックプレッシャ信号の流れを示す。ローカルスイッチ部２２５は、大容量のバッファ２２７を有している。バッファ２２７は、出力回線単位に内部バッファを具備している。ローカルスイッチ部２２５は、スイッチインタフェース部２２４からのセルを出力回線単位に振り分けて、対応する内部バッファにセルを格納する。図１７（Ｂ）に示すように、出力回線毎のバックプレッシャ信号は、論理的に内部バッファに１対１に対応している。ローカルスイッチ部２２５は、バックプレッシャ信号を終端し、出力回線毎にセルを廃棄する。従って、図１６（Ｂ）に示すようなブロッキングの発生を回避することができる。
第３の実施の形態
本発明の第３の実施の形態は、前述した従来技術の問題点、つまり異なるネットワークを効率よく収容して効率的な中継処理を行えない問題点を解決するもので、特に先に示した従来技術の第３の問題点を解決するものである。
【００７６】
図１８は、本発明の第３の実施の形態を示す図である。図中、前述した構成要件と同一のものには同一の参照番号を付してある。二重化構成においては、運用系のバックプレッシャか非運用系のバックプレッシャを判別することが好ましい。非運用系からのバックプレッシャ制御の要求を受けた運用系は、セル送信を停止することをしないで、この要求を破棄する。運用系か非運用系かの判断は、例えば装置状態を示す信号を参照する。つまり、バックプレッシャ信号の中に運用系／非運用系を示すフラグを設けておけば良い。
【００７７】
図１８に示すように、非運用系からのバックプレッシャ信号は運用系で破棄されている。これに対し、運用系から非運用系へのバックプレッシャ信号は非運用系で破棄されず、各ポイントで受付けられる。
第４の実施の形態
本発明の第４の実施の形態は、前述した従来技術の問題点、つまり異なるネットワークを効率よく収容して効率的な中継処理を行えない問題点を解決するもので、特に先に示した従来技術の第４の問題点を解決するものである。
【００７８】
図１９は、本発明の第４の形態を示す図である。図１９において、前述した構成要素と同一のものには同一の参照番号を付してある。回線終端部２１は、バッファ容量監視部２１５を有する。バッファ容量監視部２１５は、物理層処理部２１４内部の回線対応（ポート対応）の内部バッファの容量を監視しており、監視結果を直接ローカルスイッチ部２２７に知らせる。また、回線インタフェース部２２６及びＬ３インタフェース部２１３をバッファレスの構成とする。これにより、ローカルスイッチ部２２５と物理層処理部２１４との間でセルをバッファリングしないので、バックプレッシャ制御が要求された場合でもバッファリングされることがない。バックプレッシャ制御の解除後もセルはバッファリングされないので、バーストで出力回線へデータが送出されることがない。
【００７９】
このようにして、セルのゆらぎや遅延を最小限に抑えることができる。
【００８０】
以上、本発明の実施の形態を説明した。本発明は、上述した第１ないし第４の実施の形態に限定されるものではなく、他の様々の実施の形態を含むものである。
【００８１】
以下、本発明の特徴の一部を列挙する。
【００８２】
（付記１）  異なるインタフェース間のスイッチング機能を有する通信装置において、
固定長のデータをスイッチングするメインスイッチ部と、該メインスイッチ部の入力及び出力にそれぞれ設けられた第１及び第２のバッファを具備するインタフェース部とを設けたスイッチ部を有することを特徴とする通信装置。
【００８３】
（付記２）  前記通信装置は更に、前記スイッチ部に接続され、所定のプロトコルに従った処理を行う処理部を有し、
該処理部は前記第１及び第２のバッファに接続する第３及び第４のバッファを有し、
前記第１のバッファが所定の状態になった時に、前記第３のバッファに対しバックプレッシャ制御を行うことを特徴とする付記１記載の通信装置。
【００８４】
（付記３）  前記通信装置は更に、前記スイッチ部に接続され、所定のプロトコルに従った処理を行う処理部を有し、
該処理部は前記第１及び第２のバッファに接続する第３及び第４のバッファを有し、
前記第４のバッファが所定の状態になった時に、前記第１のバッファに対しバックプレッシャ制御を行なうことを特徴とする付記１記載の通信装置。
【００８５】
（付記４）  前記第２のバッファが所定の状態になった時に、前記第１のバッファに対しバックプレッシャ制御を行うことを特徴とする付記１記載の通信装置。
【００８６】
（付記５）  前記通信装置は更に、前記スイッチ部に接続され、所定のプロトコルに従った処理を行う処理部を有し、
該処理部は前記第１及び第２のバッファに接続する第３及び第４のバッファを有し、
前記処理部に接続された装置からのバックプレッシャ制御の要求を受けると、前記第４のバッファに対しバックプレッシャ制御を行うことを特徴とする付記１記載の通信装置。
【００８７】
（付記６）  前記バックプレッシャ制御の要求は、所定のフロー制御セルで形成されることを特徴とする付記２ないし４のいずれか一項記載の通信装置。
【００８８】
（付記７）  前記バックプレッシャ制御は、所定のＱｏＳクラス単位に行なわれることを特徴とする付記２ないし５のいずれか一項記載の通信装置。
【００８９】
（付記８）  前記バックプレッシャ制御は、回線単位に行なわれることを特徴とする付記２ないし５のいずれか一項記載の通信装置。
【００９０】
（付記９）  前記所定の状態は、所定のＱｏＳクラス単位に判断することを特徴とする付記２ないし４のいずれか一項記載の通信装置。
【００９１】
（付記１０）  前記所定の状態は、回線単位に判断することを特徴とする付記２ないし４のいずれか一項記載の通信装置。
【００９２】
（付記１１）  前記処理部は、前記スイッチ部から受取ったデータを回線対応の内部バッファに供給するローカルスイッチを有することを特徴とする付記２記載の通信装置。
【００９３】
（付記１２）  前記処理部は、前記スイッチ部から受取ったデータを一旦格納するバッファを具備したローカルスイッチを有し、該ローカルスイッチは該バッファからデータを読み出して回線対応の内部バッファに供給するローカルスイッチを有することを特徴とする付記２記載の通信装置。
【００９４】
（付記１３）  前記通信装置は前記処理部と回線との間に設けられた終端部を有し、
該終端装置は回線毎に設けられたバッファと、該バッファの容量を監視して前記スイッチ部から受取ったデータを一旦格納するバッファを制御する監視部とを有することを特徴とする付記１２記載の通信装置。
【００９５】
（付記１４）  前記スイッチ部は二重化構成であり、非運用系からのバックプレッシャ制御の要求を受けた運用系は、バックプレッシャ制御の要求を破棄することを特徴とする付記１ないし１２のいずれか一項記載の通信装置。
【００９６】
（付記１５）  異なるインタフェース間のスイッチング機能を有する通信装置において、
固定長のデータをスイッチングするメインスイッチ部と、該メインスイッチ部の入力及び出力にそれぞれ設けられた第１及び第２のバッファを回線毎に複数個具備するインタフェース部とを有するスイッチ部を複数有することを特徴とする通信装置。
【００９７】
（付記１６）  前記通信装置は更に、前記スイッチ部に接続され、所定のプロトコルに従った処理を行う複数の処理部と、該複数の処理部に対し所定のバックプレッシャ信号を伝送するバスとを有することを特徴とする付記１５記載の通信装置。
【００９８】
（付記１７）  前記複数のスイッチ部の各々は、前記バスを介してバックプレッシャ信号を受け取り、前記第１のバッファの読み出しを制御することを特徴とする付記１６記載の通信装置。
【００９９】
（付記１８）  異なるインタフェース間のスイッチングを行なう通信制御方法において、
前記異なるインタフェースで扱われるデータに関連する固定長のデータを一旦バッファリングしてからスイッチングする段階と、
スイッチングされたデータを一旦バッファリングしてから、回線に向けて送出する段階と
を有する通信制御方法。
【０１００】
（付記１９）  スイッチングする前のバッファリングが所定の状態になった時は、バックプレッシャ制御の要求をスイッチングをバイパスして、他の装置に送出することを特徴とする付記１８記載の通信制御方法。
【０１０１】
【発明の効果】
以上説明したように、本発明によれば、異なるネットワークを効率よく収容して効率的に中継処理を行える通信装置を提供することができる。
【図面の簡単な説明】
【図１】ネットワーク構成の一例を示す図である。
【図２】本発明の第１の実施の形態によるルータの構成を示すブロック図である。
【図３】図２の各部の内部構成例を示すブロック図である。
【図４】レイヤ２の終端処理とレイヤ３のルーティング処理を示す図である。
【図５】Ｌ３処理部２２及びスイッチ部２３の基本構成を示すブロック図である。
【図６】第１のスケジューラの一構成例を示す図である。
【図７】第２のスケジューラの一構成例を示す図である。
【図８】インタフェース部の共通バッファ及び出力バッファの一構成例を示す図である。
【図９】第３のスケジューラの一構成例を示す図である。
【図１０】バックプレッシャ信号によるバックプレッシャ制御を説明するための図である。
【図１１】インタフェース部の入力バッファと共通バッファを模式的に図示してある。
【図１２】バックプレッシャ信号によるバックプレッシャ制御を説明するための図である。
【図１３】バックプレッシャ信号の生成の一例を示す図である。
【図１４】別のバックプレッシャ信号の生成の一例を示す。
【図１５】Ｌ３処理部の回線対応処理部内部のインタフェース部に設けられた出力バッファ内のあるクラスに対応するキュー内のセル数又は流量が所定のしきい値を超えた場合を示す。
【図１６】第２の問題点を示す図である。
【図１７】本発明の第２の実施の形態を示す図である。
【図１８】本発明の第３の実施の形態を示す図である。
【図１９】本発明の第４の実施の形態を示す図である。
【符号の説明】
２２    Ｌ３処理部
２２０〜２２８    回線対応処理部
２３    スイッチ部
３１〜３４    共通バッファ
３５、３８    入力バッファ
３６、３７    出力バッファ
２２００〜２２０８    インタフェース部
２３００〜２３０７    インタフェース部
２３２    メインスイッチ部
【図１】
0003908483.tif 000002
【図２】
0003908483.tif 000003
【図３】
0003908483.tif 000004
【図４】
0003908483.tif 000005
【図５】
0003908483.tif 000006
【図６】
0003908483.tif 000007
【図７】
0003908483.tif 000008
【図８】
0003908483.tif 000009
【図９】
0003908483.tif 000010
【図１０】
0003908483.tif 000011
【図１１】
0003908483.tif 000012
【図１２】
0003908483.tif 000013
【図１３】
0003908483.tif 000014
【図１４】
0003908483.tif 000015
【図１５】
0003908483.tif 000016
【図１６】
0003908483.tif 000017
【図１７】
0003908483.tif 000018
【図１８】
0003908483.tif 000019
【図１９】
0003908483.tif 000020