(57)【特許請求の範囲】
【請求項１】
互いに複数の経路を介して接続され、データを転送する複数のスイッチであって、
複数の通常ポート部と、複数のスイッチ間ポート部と、共有バッファと、優先判定・選択回路とを備え、
前記複数の通常ポート部は、複数のノードと各々接続され、対応する前記ノードから送信されるデータに含まれている転送先情報に基づいて当該データの転送先の他の前記通常ポート部又は前記スイッチ間ポート部に転送要求を送信するとともに受信した前記データを前記共有バッファに記憶させ、他の前記通常ポート部又は前記スイッチ間ポート部から送信される複数の前記転送要求を受信して、他の前記通常ポート部又は前記スイッチ間ポート部に対応して設けられ、かつ、複数のポート対応キューが統合された、内部のキューにキューイングした後、前記内部のキューに記憶されている複数の前記転送要求をその記憶順に読み出し、読み出した複数の前記転送要求を、当該転送要求に対応する前記データの自己に対する転送要求として前記優先判定・選択回路に順次供給し、前記優先判定・選択回路から順次供給される複数の前記転送要求に基づいて対応する前記データの読み出しを前記共有バッファに指示し、
前記優先判定・選択回路は、供給される前記転送要求が前記通常ポート部のものである場合には、当該転送要求を対応する前記通常ポート部に供給し、前記転送要求が前記スイッチ間ポート部のものである場合には、対応する前記スイッチ間ポート部を含めた複数の前記スイッチ間ポート部のうち、他のデータを転送中でないものから１個の前記スイッチ間ポート部を選択し、選択した前記スイッチ間ポート部に当該転送要求を供給することを特徴とするスイッチ。
【請求項２】
互いに複数の経路を介して接続され、データを転送する複数のスイッチであって、
複数の通常ポート部と、複数のスイッチ間ポート部と、共有バッファと、優先判定・選択回路とを備え、
前記複数のスイッチ間ポート部は、相手方と複数の経路を介して各々接続され、前記相手方の対応する前記スイッチ間ポート部から送信されるデータに含まれている転送先情報に基づいて当該データの転送先の他の前記スイッチ間ポート部又は前記通常ポート部に転送要求を送信するとともに受信した前記データを前記共有バッファに記憶させ、他の前記スイッチ間ポート部又は前記通常ポート部から送信される複数の前記転送要求を受信して、他の前記通常ポート部又は前記スイッチ間ポート部に対応して設けられ、かつ、複数のポート対応キューが統合された、内部のキューにキューイングした後、前記内部のキューに記憶されている複数の前記転送要求をその記憶順に読み出し、読み出した複数の前記転送要求を、当該転送要求に対応する前記データの自己に対する転送要求として前記優先判定・選択回路に供給し、前記優先判定・選択回路から供給される前記転送要求に基づいて対応する前記データの読み出しを前記共有バッファに指示し、
前記優先判定・選択回路は、供給される前記転送要求が前記通常ポート部のものである場合には、当該転送要求を対応する前記通常ポート部に供給し、前記転送要求が前記スイッチ間ポート部のものである場合には、対応する前記スイッチ間ポート部を含めた複数の前記スイッチ間ポート部のうち、他のデータを転送中でないものから１個の前記スイッチ間ポート部を選択し、選択した前記スイッチ間ポート部に当該転送要求を供給することを特徴とするスイッチ。
【請求項３】
前記優先判定・選択回路は、前記キューから順次供給される複数の前記転送要求に含まれている、複数の前記通常ポート部及び複数の前記スイッチ間ポート部を識別するために複数の前記通常ポート部及び複数の前記スイッチ間ポート部ごとに付与されているポート番号を各複数の前記通常ポート部及び複数の前記スイッチ間ポート部が前記転送要求を送信する際にそれに含ませて送信する送信元ポート番号をデコードし、デコードした前記送信元ポート番号が前記通常ポート部のものである場合には、当該転送要求を対応する前記通常ポート部に供給し、デコードした前記送信元ポート番号が前記スイッチ間ポート部のものである場合には、対応する前記スイッチ間ポート部を含めた複数の前記スイッチ間ポート部のうち、他のデータを転送中でないものから予め設定された優先順位に従って１個の前記スイッチ間ポート部を選択し、選択した前記スイッチ間ポート部に当該転送要求を供給することを特徴とする請求項１又は２記載のスイッチ。
【請求項４】
前記優先判定・選択回路は、複数の前記スイッチ間ポート部における前記データの転送状況を監視し、前記スイッチ間ポート部の優先順位自体を変更可能に構成されていることを特徴とする請求項３記載のスイッチ。
【請求項５】
前記キューは、複数の前記ポート対応キューが、稼働中に内部で認識した構成に基づいて統合設定されることを特徴とする請求項１乃至４のいずれか１に記載のスイッチ。
【請求項６】
前記キューは、複数の前記ポート対応キューが、前記優先判定・選択回路による前記データの転送状況の監視結果に基づいて統合設定されることを特徴とする請求項４又は５記載のスイッチ。
【請求項７】
前記データは、可変長データのフレーム単位、固定長データのセル単位、あるいは可変長データのパケット単位で転送されることを特徴とする請求項１乃至６のいずれか１に記載のスイッチ。
【請求項８】
請求項１乃至７のいずれか１に記載のスイッチを備えたことを特徴とするデータ転送システム。
【請求項９】
互いに複数の経路を介して接続されて、データを転送する第１のスイッチと第２のスイッチとを備え、前記第１及び第２のスイッチは、それぞれ、複数のノードと各々接続される複数の通常ポート部と、前記複数の経路と各々接続される複数のスイッチ間ポート部を有し、かつ、前記各種ポート部は、複数のポート対応キューを有してなるデータ転送システムであって、
前記第１又は第２のスイッチから、前記複数の経路を用いることで、データ及び当該データの送信要求を分散させて、前記第２又は第１のスイッチへ転送する一方、前記第２又は第１のスイッチでは、複数の前記ポート対応キューが統合されて、当該統合された複数の前記ポート対応キューには、前記複数の経路を介して分散受信された前記送信要求が受信の順に記憶される一方、記憶の順に読み出される構成になされていることを特徴とするデータ転送システム。
【請求項１０】
前記ポート対応キューは、前記データの転送状況の監視結果に基づいて統合設定されることを特徴とする請求項９記載のデータ転送システム。
【請求項１１】
請求項９又は１０記載の第１又は第２のスイッチのスイッチとしてのみ用いられることを特徴とするスイッチ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、スイッチ及びデータ転送システムに関し、詳しくは、互いに複数の経路を介して接続され、データをセル単位、パケット単位、あるいはフレーム単位で転送するスイッチ及びこのスイッチを備えたデータ転送システムに関する。
【０００２】
【従来の技術】
近年、データ転送システムの大規模化、集団（クラスタ）化が進んでおり、コンピュータ、端末など多数のノード間でデータを転送したり、多数のノード間で記憶装置等の各種周辺装置を共有したりすることへのニーズが高まってきている。このようなニーズの下では、多数のノードを一対一で対等に（ポイント・ツー・ポイントで）接続した場合、接続ポートの増大とノード間を接続する経路の複雑化が避けられない。
そこで、多数のノードを相互に接続する場合、スイッチが有効であるが、さらなるノード数の増大に対処するためには、スイッチ自体の拡張性（スケーラビリティ）が要求される。この要求に応えるため、最近では、複数のスイッチを相互に接続することにより、スイッチ全体のスケーラビリティを得ることが提案されている。この場合、経路の性能がボトルネックとならないように、スイッチ間を複数の経路からなる経路群で接続することにより、スイッチ間のデータ転送能力を高めるのが一般的である。
【０００３】
図８は、上記提案による従来のデータ転送システムの構成例を示すブロック図である。
この例のデータ転送システムは、サーバ１１〜１５と、記憶装置２１〜２５と、スイッチ３１及び３２と、経路群４とから構成されている。
サーバ１１〜１５は、各々、制御部と、記憶部と、表示部と、操作部とを有するコンピュータ等の情報処理装置によって構成されている。制御部は、ＣＰＵ（中央処理装置）等からなり、記憶部に記憶されているプログラムに基づいて、各種の処理を実行する。記憶部は、ＲＯＭやＲＡＭ等の半導体メモリ、ＦＤ（フロッピー・ディスク）が装着されるＦＤドライバ、ＨＤ（ハード・ディスク）が装着されるＨＤドライバ、ＭＯ（光磁気）ディスクが装着されるＭＯディスクドライバ、あるいはＣＤ（コンパクト・ディスク）−ＲＯＭ、ＣＤ−Ｒ（Recordable）、ＣＤ−ＲＷ（ReWritable）やＤＶＤ（デジタル・ビデオ・ディスク）−ＲＯＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ等が装着されるＣＤ／ＤＶＤドライバ等からなる。記憶部には、制御部が実行する各種プログラムの他、各種のデータが記憶される。表示部は、ＣＲＴディスプレイ、液晶ディスプレイ、あるいはプラズマディスプレイなどからなる。操作部は、キーボードやマウス等からなる。
【０００４】
記憶装置２１〜２５は、各々、ＨＤが装着されるＨＤドライバ、ＭＯディスクが装着されるＭＯディスクドライバ、あるいはＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷやＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ等が装着されるＣＤ／ＤＶＤドライバ等からなる。記憶装置２１〜２５には、各種のプログラムやデータが記憶される。スイッチ３１とスイッチ３２とは、経路群４を介して接続されており、サーバ１１〜１５及び記憶装置２１〜２５からフレームＦＬ単位で供給されるデータを選択して経路群４を介して互いに転送する。なお、スイッチ３１及び３２は、各構成要素の添え字が異なるとともに、入出力されるデータが異なる以外は同一構成であるので、スイッチ３１及び３２を総称する場合にはスイッチ３と呼ぶことにする。経路群４は、複数の経路から構成されている。経路としては、例えば、光ファイバ・ケーブル、同軸ケーブル、クロス・ケーブル、フラット・ケーブル、ＲＳ−２３２Ｃケーブルなどがある。
【０００５】
次に、スイッチ３の構成について図９を参照して説明する。
この例のスイッチ３は、ポート部１１１、１１２、・・・、１１ｋ、１１ｋ＋１、・・・、１１ｎ（ｋ及びｎは自然数であり、ｋ＜ｎ）と、共有バッファ１２と、クロスバ１３とから構成されている。ポート部１１１〜１１ｎは、各構成要素の添え字が異なるとともに、入出力されるデータが異なる以外は同一構成であるので、ポート部１１１〜１１ｎを総称する場合にはポート部１１と呼ぶことにする。ポート部１１は、受信したフレームＦＬのヘッダ部に書き込まれている転送先情報を解析して当該フレームＦＬの転送先のポート部１１に転送要求ＲＥＱを送信するとともに、他のポート部１１から順次送信される複数の転送要求ＲＥＱを受信して内部のキューに先入れ先出し（ＦＩＦＯ）で順次処理（キューイング）する。また、ポート部１１は、内部のキューに記憶されている複数の転送要求ＲＥＱをその記憶順に読み出し、読み出した複数の転送要求ＲＥＱを、当該転送要求ＲＥＱに対応するフレームＦＬの自己に対する転送要求ＦＲＥＱとする。さらに、ポート部１１は、受信したフレームＦＬを共有バッファ１２に供給して記憶させるとともに、転送要求ＦＲＥＱに基づいて接続インターフェイスの制御を行って対応するフレームＦＬを送信可能な状態にした後、共有バッファ１２に対して当該フレームＦＬの読み出しを指示する。ここで、フレームＦＬを送信可能な状態とは、ポート部１１がフレームＦＬを送信する相手方のポート部１１との接続（リンク）が確立しており、相手方のポート部１１にフレームＦＬを送信可能な状態をいう。例えば、経路が光ファイバ・ケーブルであり、接続インターフェイスがファイバチャネルのループ（ＦＣ−ＡＬ）である場合、接続インターフェイス上のプロトコルにおいて、相手方のポート部１１に対して使用権を要求して使用権を獲得した後、相手方のポート部１１から送信されたクレジットを受信することにより、相手方のポート部１１に対してフレームＦＬが送信可能な状態になる。
共有バッファ１２は、ＲＡＭ等の記憶部を有し、ポート部１１から供給されるフレームＦＬが記憶されるとともに、ポート部１１から指示されたフレームＦＬを読み出して出力する。クロスバ１３は、あるポート部１１から供給された転送要求ＲＥＱを他のポート部１１に伝達する。
【０００６】
次に、ポート部１１１の構成について説明する。なお、上記したように、ポート部１１２〜１１ｎの構成については、ポート部１１１の構成と同一であるので、その説明を省略する。
ポート部１１１は、デコーダ２１１と、キュー２２１と、ポート制御部２３１とから構成されている。デコーダ２１１は、受信したフレームＦＬのヘッダ部に書き込まれている転送先情報を解析して当該フレームＦＬの転送先のポート部１１に転送要求ＲＥＱを送信する。キュー２２１は、ＲＡＭ等からなる記憶部を有し、他のポート部１１から順次送信される複数の転送要求ＲＥＱを受信してＦＩＦＯで順次キューイングするとともに、内部に記憶されている複数の転送要求ＲＥＱをその記憶順に読み出し、読み出した複数の転送要求ＲＥＱを、当該転送要求ＲＥＱに対応するフレームＦＬの自己に対する転送要求ＦＲＥＱとしてポート制御部２３１に供給する。ポート制御部２３１は、受信したフレームＦＬを共有バッファ１２に供給して記憶させるとともに、キュー２２１から供給された転送要求ＦＲＥＱに基づいて接続インターフェイスの制御を行って対応するフレームＦＬを送信可能な状態にした後、共有バッファ１２に対して当該フレームＦＬの読み出しを指示する。
【０００７】
次に、キュー２２の構成について図１０を参照して説明する。ここで、上記したように、ポート部１１１〜１１ｎの構成が同一であるので、キュー２２１〜２２ｎについても、各構成要素の添え字が異なるとともに、入出力されるデータが異なる以外は同一構成である。そこで、キュー２２１〜２２ｎを総称する場合にはキュー２２と呼ぶことにする。
キュー２２は、受信ポートデコーダ３１と、ポート対応キュー３２１〜３２ｎ−１と、優先判定回路３３とから構成されている。受信ポートデコーダ３１は、他のポート部１１から順次送信される複数の転送要求ＲＥＱに含まれている送信元ポート番号をデコードし、デコードした送信元ポート番号に対応したポート対応キュー３２１〜３２ｎ−１へ当該転送要求ＲＥＱを記憶する。ここで、送信元ポート番号とは、ポート部１１１〜１１ｎを識別するために、ポート部１１１〜１１ｎごとに付与されているポート番号を各ポート部１１が転送要求ＲＥＱを送信する際にそれに含ませて送信するものである。ポート対応キュー３２１〜３２ｎ−１は、ＲＡＭ等からなる記憶部からなり、自己を除いた（ｎ−１）個のポート部１１に対応して設けられ、対応するポート部１１から順次送信される複数の転送要求ＲＥＱがＦＩＦＯで順次記憶される。優先判定回路３３は、例えば、一般的なラウンドロビン等の平等なアルゴリズムに基づいて、ポート対応キュー３２１〜３２ｎ−１に記憶されている複数の転送要求ＲＥＱの中からいずれかを優先判定して選択し、自己のポート部１１の転送すべきフレームＦＬの転送要求ＦＲＥＱとして出力する。
【０００８】
次に、上記構成のデータ転送システムにおいて、図１１に示すように、スイッチ３１とスイッチ３２との間を４本の経路４ａ〜４ｄからなる経路群４により接続した場合の動作について、図１２に示すタイミング・チャートを参照して説明する。なお、図１１は、説明をわかりやすくするための概念図であり、図９の構成とは整合していない。
図１１の例では、スイッチ３１は、９個のポート部１１１〜１１９を有している。スイッチ３１において、ポート部１１１〜１１４は対応する経路４ａ〜４ｄを介してスイッチ３２のポート部１１６〜１１９に接続され、ポート部１１５〜１１９は図８に示すサーバ１１〜１５に各々接続されている。また、スイッチ３１において、ポート対応キュー３２１及び３２２は、ポート部１１５及び１１６に対応してポート部１１１を構成するキュー２２１の内部に設けられたものであることを示している。一方、スイッチ３２は、９個のポート部１１１〜１１９を有している。スイッチ３２において、ポート部１１１〜１１５は図８に示す記憶装置２１〜２５に各々接続され、ポート部１１６〜１１９は対応する経路４ａ〜４ｄを介してスイッチ３１のポート部１１１〜１１４に接続されている。また、スイッチ３２において、ポート対応キュー３２１〜３２４は、ポート部１１６〜１１９に対応してポート部１１１を構成するキュー２２１の内部に設けられたものであることを示している。
【０００９】
そして、スイッチ３１のポート部１１５は、図１２（１）に示すように、サーバ１１からフレームＦＬ１１〜ＦＬ１３が各々時間Ｔ１、時間Ｔ３、時間Ｔ６に供給され、順次受信するものとする。一方、スイッチ３１のポート部１１６は、図１２（２）に示すように、サーバ１２からフレームＦＬ２１〜ＦＬ２３が各々時間Ｔ３、時間Ｔ４、時間Ｔ５に供給され、順次受信するものとする。また、各フレームＦＬ１１〜ＦＬ１３の転送先は、スイッチ３１ではポート部１１１であり、スイッチ３２ではポート部１１１であり、各フレームＦＬ１１〜ＦＬ１３のヘッダ部にそのことを示す転送先情報が各々書き込まれているものとする。一方、各フレームＦＬ２１〜ＦＬ２３の転送先は、スイッチ３１ではポート部１１１であり、スイッチ３２ではポート部１１１であり、各フレームＦＬ２１〜ＦＬ２３のヘッダ部にそのことを示す転送先情報が各々書き込まれているものとする。また、経路４ａ〜４ｄに接続されたスイッチ３１のポート部１１１〜１１４及びスイッチ３２のポート部１１６〜１１９は、現在すべて空いているものとする。
【００１０】
まず、スイッチ３１のポート部１１５は、時間Ｔ１に受信した図１２（１）に示すフレームＦＬ１１のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１１の転送先がスイッチ３１のポート部１１１であると認識し、図１２（３）に示すように、時間Ｔ２にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ１１を送信する。また、ポート部１１５は、受信したフレームＦＬ１１を共有バッファ１２に供給して記憶させる。同様に、ポート部１１５は、時間Ｔ３に受信した図１２（１）に示すフレームＦＬ１２のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１２の転送先がスイッチ３１のポート部１１１であると認識し、図１２（３）に示すように、時間Ｔ４にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ１２を送信する。また、ポート部１１５は、受信したフレームＦＬ１２を共有バッファ１２に供給して記憶させる。ポート部１１５は、時間Ｔ６に受信した図１２（１）に示すフレームＦＬ１３のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１３の転送先がスイッチ３１のポート部１１１であると認識し、図１２（３）に示すように、時間Ｔ７にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ１３を送信する。また、ポート部１１５は、受信したフレームＦＬ１３を共有バッファ１２に供給して記憶させる。
【００１１】
一方、ポート部１１６は、時間Ｔ３に受信した図１２（２）に示すフレームＦＬ２１のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２１の転送先がスイッチ３１のポート部１１１であると認識し、図１２（４）に示すように、時間Ｔ４にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ２１を送信する。また、ポート部１１６は、受信したフレームＦＬ２１を共有バッファ１２に供給して記憶させる。同様に、ポート部１１６は、時間Ｔ４に受信した図１２（２）に示すフレームＦＬ２２のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２２の転送先がスイッチ３１のポート部１１１であると認識し、図１２（４）に示すように、時間Ｔ５にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ２２を送信する。また、ポート部１１６は、受信したフレームＦＬ２２を共有バッファ１２に供給して記憶させる。ポート部１１６は、時間Ｔ５に受信した図１２（２）に示すフレームＦＬ２３のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２３の転送先がスイッチ３１のポート部１１１であると認識し、図１２（４）に示すように、時間Ｔ６にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ２３を送信する。また、ポート部１１６は、受信したフレームＦＬ２３を共有バッファ１２に供給して記憶させる。
【００１２】
これにより、スイッチ３１のポート部１１１は、ポート部１１５から順次送信される転送要求ＲＥＱ１１〜ＲＥＱ１３をポート部１１５に対応したポート対応キュー３２１にＦＩＦＯでキューイングするとともに、ポート部１１６から順次送信される転送要求ＲＥＱ２１〜ＲＥＱ２３をポート部１１６に対応したポート対応キュー３２２にＦＩＦＯでキューイングする。次に、ポート部１１１は、ポート対応キュー３２１及び３２２に各々記憶されている転送要求ＲＥＱ１１〜ＲＥＱ１３及びＲＥＱ２１〜ＲＥＱ２３を各記憶順に読み出し、読み出した転送要求ＲＥＱ１１〜ＲＥＱ１３及びＲＥＱ２１〜ＲＥＱ２３を、当該転送要求ＲＥＱ１１〜ＲＥＱ１３及びＲＥＱ２１〜ＲＥＱ２３に対応するフレームＦＬ１１〜ＦＬ１３及びＦＬ２１〜ＦＬ２３の自己に対する転送要求ＦＲＥＱ１１〜ＦＲＥＱ１３及びＦＲＥＱ２１〜ＦＲＥＱ２３とする。次に、ポート部１１１は、転送要求ＦＲＥＱ１１〜ＦＲＥＱ１３及びＦＲＥＱ２１〜ＦＲＥＱ２３に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ１１〜ＦＬ１３及びＦＬ２１〜ＦＬ２３を送信可能な状態にした後、共有バッファ１２に対して当該フレームＦＬ１１〜ＦＬ１３及びＦＬ２１〜ＦＬ２３の読み出しを指示する。
【００１３】
これにより、共有バッファ１２は、図１２（５）に示すように、時間Ｔ３、時間Ｔ５、時間Ｔ６、時間Ｔ７、時間Ｔ８、時間Ｔ９に、ポート部１１１から指示されたフレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３を順次読み出して出力する。したがって、フレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３は、スイッチ３１のポート部１１１、経路４ａ及びスイッチ３２のポート部１１６を介してスイッチ３２に送信される。この場合、図１２（３）及び（４）に示すように、時間Ｔ４においては転送要求ＲＥＱ１２及びＲＥＱ２１が同時にポート部１１１に供給されているために、ポート部１１１は、共有バッファ１２に対し、図１２（５）に示すように、時間Ｔ５において転送要求ＲＥＱ１２及びＲＥＱ２１に対応するフレームＦＬ１２及びＦＬ２１を同時に読み出すように指示することができない。そこで、ポート部１１１は、共有バッファ１２に対し、時間Ｔ５での転送要求ＲＥＱ１２に対応するフレームＦＬ１２の読み出しを指示するとともに、時間Ｔ６でのフレームＦＬ２１の読み出しを指示している。以下、ポート部１１１は、時間Ｔ６にフレームＦＬ２１を読み出すことに伴って、本来時間Ｔ６に読み出すべきフレームＦＬ２２を時間Ｔ７に読み出し、本来時間Ｔ７に読み出すべきフレームＦＬ２３を時間Ｔ８に読み出し、本来時間Ｔ８に読み出すべきフレームＦＬ１３を時間Ｔ９に読み出すように指示している。
【００１４】
スイッチ３２のポート部１１６は、時間Ｔ３に受信した図１２（５）に示すフレームＦＬ１１のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１１の転送先がスイッチ３２のポート部１１１であると認識し、図１２（６）に示すように、時間Ｔ４にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ１１を送信する。また、ポート部１１６は、受信したフレームＦＬ１１を共有バッファ１２に供給して記憶させる。同様に、ポート部１１６は、時間Ｔ５に受信した図１２（５）に示すフレームＦＬ１２のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１２の転送先がスイッチ３２のポート部１１１であると認識し、図１２（６）に示すように、時間Ｔ６にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ１２を送信する。また、ポート部１１６は、受信したフレームＦＬ１２を共有バッファ１２に供給して記憶させる。ポート部１１６は、時間Ｔ６に受信した図１２（５）に示すフレームＦＬ２１のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２１の転送先がスイッチ３２のポート部１１１であると認識し、図１２（６）に示すように、時間Ｔ７にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ２１を送信する。また、ポート部１１６は、受信したフレームＦＬ２１を共有バッファ１２に供給して記憶させる。
【００１５】
ポート部１１６は、時間Ｔ７に受信した図１２（５）に示すフレームＦＬ２２のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２２の転送先がスイッチ３２のポート部１１１であると認識し、図１２（６）に示すように、時間Ｔ８にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ２２を送信する。また、ポート部１１６は、受信したフレームＦＬ２２を共有バッファ１２に供給して記憶させる。同様に、ポート部１１６は、時間Ｔ８に受信した図１２（５）に示すフレームＦＬ２３のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２３の転送先がスイッチ３２のポート部１１１であると認識し、図１２（６）に示すように、時間Ｔ９にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ２３を送信する。また、ポート部１１６は、受信したフレームＦＬ２３を共有バッファ１２に供給して記憶させる。ポート部１１６は、時間Ｔ９に受信した図１２（５）に示すフレームＦＬ１３のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１３の転送先がスイッチ３２のポート部１１１であると認識し、図１２（６）に示すように、時間Ｔ１０にクロスバ１３を介してポート部１１１に転送要求ＲＥＱ１３を送信する。また、ポート部１１６は、受信したフレームＦＬ１３を共有バッファ１２に供給して記憶させる。
【００１６】
これにより、スイッチ３２のポート部１１１は、ポート部１１６から順次送信される転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３をポート部１１６に対応したポート対応キュー３２１にＦＩＦＯでキューイングする。次に、ポート部１１１は、ポート対応キュー３２１に記憶されている転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３を各記憶順に読み出し、読み出した転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３を、当該転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３に対応するフレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３の自己に対する転送要求ＦＲＥＱ１１、ＦＲＥＱ１２、ＦＲＥＱ２１、ＦＲＥＱ２２、ＦＲＥＱ２３及びＦＲＥＱ１３とする。次に、ポート部１１１は、転送要求ＦＲＥＱ１１、ＦＲＥＱ１２、ＦＲＥＱ２１、ＦＲＥＱ２２、ＦＲＥＱ２３及びＦＲＥＱ１３に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３を送信可能な状態にした後、共有バッファ１２に対して当該フレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３の読み出しを指示する。これにより、共有バッファ１２は、図１２（７）に示すように、時間Ｔ５、時間Ｔ７、時間Ｔ８、時間Ｔ９、時間Ｔ１０、時間Ｔ１１に、ポート部１１１から指示されたフレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３を順次読み出して出力する。したがって、フレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３は、この順序で記憶装置２１に送信される。
【００１７】
【発明が解決しようとする課題】
上記したように、従来のスイッチ間のデータ転送方法においては、複数の経路によって多重的にスイッチ間が接続されている場合でも、フレームＦＬが転送される経路は予め決定され、当該経路に接続されたポート部に関する転送先情報が当該フレームＦＬのヘッダ部に書き込まれている。このため、ある１個の経路を指定する複数のフレームＦＬが複数のノードから集中的に送信された場合には、他の経路がフレームＦＬを転送中でないにもかかわらず、これらを使用することができず、転送効率が悪いという欠点があった。これにより、スイッチ間のデータ転送能力を高めるために、スイッチ間を複数の経路からなる経路群で接続したことが活かされなくなってしまう。
この点、フレームＦＬを受信したスイッチ内において、空いている経路を任意に選択してフレームＦＬを分散して他方のスイッチに送信することが考えられる。しかし、この場合には、フレームＦＬの順序については保証されないため、順序が確保されなければ受信側で正確に復元できない性質の一連のフレームＦＬをスイッチ間で転送することができないという問題があった。
【００１８】
この問題は、図１１の例でいえば、スイッチ３２のポート部１１１が記憶装置２１から送信されるフレームＦＬを受信中である場合に発生する。すなわち、スイッチ３２のポート部１１１が記憶装置２１から送信されるフレームＦＬを受信中であり、スイッチ３１から前の時間に供給されたフレームＦＬを記憶装置２１へ送信できないでいる間に、後の時間に供給されたフレームＦＬを受信してしまう場合に上記問題が発生する。ここで、負荷分散の結果、例えば、スイッチ３２のポート部１１１は、図１３（１）に示すように、ポート部１１６に対応したポート対応キュー３２１に転送要求ＲＥＱ１１及びＲＥＱ１２が、図１３（２）に示すように、ポート部１１７に対応したポート対応キュー３２２に転送要求ＲＥＱ２１及びＲＥＱ２２が、図１３（３）に示すように、ポート部１１８に対応したポート対応キュー３２３に転送要求ＲＥＱ２３及びＲＥＱ１３が各々ＦＩＦＯで順次キューイングしたとする。また、スイッチ３２のポート部１１１がポート対応キュー３２１〜３２３から転送要求ＲＥＱを読み出す順序は、対応するポート部１１６〜１１８のポート番号の若い順に予め設定されているとする。
【００１９】
したがって、スイッチ３２のポート部１１１は、ポート対応キュー３２１〜３２３に記憶されている転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３を各記憶順に読み出し、読み出した転送要求ＲＥＱ１１、ＲＥＱ２１、ＲＥＱ２３、ＲＥＱ１２、ＲＥＱ２２及びＲＥＱ１３を、当該転送要求ＲＥＱ１１、ＲＥＱ２１、ＲＥＱ２３、ＲＥＱ１２、ＲＥＱ２２及びＲＥＱ１３に対応するフレームＦＬ１１、ＦＬ２１、ＦＬ２３、ＦＬ１２、ＦＬ２２及びＦＬ１３の自己に対する転送要求ＦＲＥＱ１１、ＦＲＥＱ２１、ＦＲＥＱ２３、ＦＲＥＱ１２、ＦＲＥＱ２３及びＦＲＥＱ１３とする。次に、ポート部１１１は、転送要求ＦＲＥＱ１１、ＦＲＥＱ２１、ＦＲＥＱ２３、ＦＲＥＱ１２、ＦＲＥＱ２３及びＦＲＥＱ１３に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ１１、ＦＬ２１、ＦＬ２３、ＦＬ１２、ＦＬ２２及びＦＬ１３を送信可能な状態にした後、共有バッファ１２に対して当該フレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３の読み出しを指示する。
これにより、共有バッファ１２は、図１４に示すように、記憶装置２１へのフレームＦＬの供給が開始された最初の時間（時間Ｔ１１とする）から時間Ｔ１６までの間に、ポート部１１１から指示されたフレームＦＬ１１、ＦＬ２１、ＦＬ２３、ＦＬ１２、ＦＬ２２及びＦＬ１３を順次読み出して出力する。したがって、フレームＦＬ１１、ＦＬ２１、ＦＬ２３、ＦＬ１２、ＦＬ２２及びＦＬ１３は、この順序で記憶装置２１に送信される。つまり、図１４の例では、フレームＦＬ２３がフレームＦＬ２２より前の時間に記憶装置２１に送信されてしまい、順番が逆転してしまっている。
【００２０】
この問題については、例えば、特開平５−２１９１１１号公報に記載されているように、フレームＦＬごとにタイムスタンプを付与することで解決することができる。しかし、この場合には、タイムスタンプを付与するための回路が必要となり、データ転送システムの構成が複雑になるとともに、システムが高価になってしまう。
以上説明した不都合は、転送されるデータの単位が固定長データのセル単位、可変長データのパケット単位である場合にも同様に発生する。
【００２１】
この発明は、上述の事情に鑑みてなされたもので、簡単かつ安価な構成により、高い転送効率でデータを転送でき、しかも負荷を分散できるとともに、データの順序も替えないで転送することができるスイッチ及びこのスイッチを備えたデータ転送システムを提供することを目的としている。
【００２２】
【課題を解決するための手段】
上記課題を解決するために、請求項１記載の発明は、互いに複数の経路を介して接続され、データを転送する複数のスイッチに係り、複数の通常ポート部と、複数のスイッチ間ポート部と、共有バッファと、優先判定・選択回路とを備え、前記複数の通常ポート部は、複数のノードと各々接続され、対応する前記ノードから送信されるデータに含まれている転送先情報に基づいて当該データの転送先の他の前記通常ポート部又は前記スイッチ間ポート部に転送要求を送信するとともに受信した前記データを前記共有バッファに記憶させ、他の前記通常ポート部又は前記スイッチ間ポート部から送信される複数の前記転送要求を受信して、他の前記通常ポート部又は前記スイッチ間ポート部に対応して設けられ、かつ、複数のポート対応キューが統合された、内部のキューにキューイングした後、前記内部のキューに記憶されている複数の前記転送要求をその記憶順に読み出し、読み出した複数の前記転送要求を、当該転送要求に対応する前記データの自己に対する転送要求として前記優先判定・選択回路に順次供給し、前記優先判定・選択回路から順次供給される複数の前記転送要求に基づいて対応する前記データの読み出しを前記共有バッファに指示し、前記優先判定・選択回路は、供給される前記転送要求が前記通常ポート部のものである場合には、当該転送要求を対応する前記通常ポート部に供給し、前記転送要求が前記スイッチ間ポート部のものである場合には、対応する前記スイッチ間ポート部を含めた複数の前記スイッチ間ポート部のうち、他のデータを転送中でないものから１個の前記スイッチ間ポート部を選択し、選択した前記スイッチ間ポート部に当該転送要求を供給することを特徴としている。
また、請求項２記載の発明は、互いに複数の経路を介して接続され、データを転送する複数のスイッチに係り、複数の通常ポート部と、複数のスイッチ間ポート部と、共有バッファと、優先判定・選択回路とを備え、前記複数のスイッチ間ポート部は、相手方と複数の経路を介して各々接続され、前記相手方の対応する前記スイッチ間ポート部から送信されるデータに含まれている転送先情報に基づいて当該データの転送先の他の前記スイッチ間ポート部又は前記通常ポート部に転送要求を送信するとともに受信した前記データを前記共有バッファに記憶させ、他の前記スイッチ間ポート部又は前記通常ポート部から送信される複数の前記転送要求を受信して、他の前記通常ポート部又は前記スイッチ間ポート部に対応して設けられ、かつ、複数のポート対応キューが統合された、内部のキューにキューイングした後、前記内部のキューに記憶されている複数の前記転送要求をその記憶順に読み出し、読み出した複数の前記転送要求を、当該転送要求に対応する前記データの自己に対する転送要求として前記優先判定・選択回路に供給し、前記優先判定・選択回路から供給される前記転送要求に基づいて対応する前記データの読み出しを前記共有バッファに指示し、前記優先判定・選択回路は、供給される前記転送要求が前記通常ポート部のものである場合には、当該転送要求を対応する前記通常ポート部に供給し、前記転送要求が前記スイッチ間ポート部のものである場合には、対応する前記スイッチ間ポート部を含めた複数の前記スイッチ間ポート部のうち、他のデータを転送中でないものから１個の前記スイッチ間ポート部を選択し、選択した前記スイッチ間ポート部に当該転送要求を供給することを特徴としている。
【００２３】
また、請求項２記載の発明は、請求項１又は２記載のスイッチに係り、上記優先判定・選択回路は、上記キューから順次供給される複数の上記転送要求に含まれている、複数の上記通常ポート部及び複数の上記スイッチ間ポート部を識別するために複数の上記通常ポート部及び複数の上記スイッチ間ポート部ごとに付与されているポート番号を各複数の上記通常ポート部及び複数の上記スイッチ間ポート部が上記転送要求を送信する際にそれに含ませて送信する送信元ポート番号をデコードし、デコードした上記送信元ポート番号が上記通常ポート部のものである場合には、当該転送要求を対応する上記通常ポート部に供給し、デコードした上記送信元ポート番号が上記スイッチ間ポート部のものである場合には、対応する上記スイッチ間ポート部を含めた複数の上記スイッチ間ポート部のうち、他のデータを転送中でないものから予め設定された優先順位に従って１個の上記スイッチ間ポート部を選択し、選択した上記スイッチ間ポート部に当該転送要求を供給することを特徴としている。
【００２４】
また、請求項４記載の発明は、請求項３記載のスイッチに係り、上記優先判定・選択回路は、複数の上記スイッチ間ポート部における上記データの転送状況を監視し、上記スイッチ間ポート部の優先順位自体を変更可能に構成されていることを特徴としている。
【００２５】
また、請求項５記載の発明は、請求項１乃至４のいずれか１に記載のスイッチに係り、上記キューは、稼働中に内部で認識した構成に基づいて統合設定されることを特徴としている。
【００２６】
また、請求項６記載の発明は、請求項４又は５記載のスイッチに係り、上記キューは、上記優先判定・選択回路による上記データの転送状況の監視結果に基づいて統合設定されることを特徴としている。
【００２７】
また、請求項７記載の発明は、請求項１乃至６のいずれか１に記載のスイッチに係り、上記データは、可変長データのフレーム単位、固定長データのセル単位、あるいは可変長データのパケット単位で転送されることを特徴としている。
また、請求項８記載の発明に係るデータ転送システムは、請求項１乃至７のいずれか１に記載のスイッチを備えたことを特徴としている。
【００２８】
また、請求項９記載の発明は、互いに複数の経路を介して接続されて、データを転送する第１のスイッチと第２のスイッチとを備え、前記第１及び第２のスイッチは、それぞれ、複数のノードと各々接続される複数の通常ポート部と、前記複数の経路と各々接続される複数のスイッチ間ポート部を有し、かつ、前記各種ポート部は、複数のポート対応キューを有してなるデータ転送システムに係り、前記第１又は第２のスイッチから、前記複数の経路を用いることで、データ及び当該データの送信要求を分散させて、前記第２又は第１のスイッチへ転送する一方、前記第２又は第１のスイッチでは、複数の前記ポート対応キューが統合されて、当該統合された複数の前記ポート対応キューには、前記複数の経路を介して分散受信された前記送信要求が受信の順に記憶される一方、記憶の順に読み出される構成になされていることを特徴としている。
また、請求項１０記載の発明は、請求項９記載のデータ転送システムに係り、前記ポート対応キューが、前記データの転送状況の監視結果に基づいて統合設定されることを特徴としている。
また、請求項１１記載の発明は、スイッチに係り、請求項９又は１０記載の第１又は第２のスイッチのスイッチとしてのみ用いられることを特徴としている。
【００２９】
【発明の実施の形態】
以下、図面を参照して、この発明の実施の形態について説明する。説明は、実施例を用いて具体的に行う。
図２は、この発明の一実施例であるスイッチを適用したデータ転送システムの構成を示すブロック図である。この図において、図８の各部に対応する部分には同一の符号を付け、その説明を省略する。この図に示すデータ転送システムにおいては、図８に示すスイッチ３１及び３２に換えて、スイッチ４１１及び４１２が新たに設けられている。スイッチ４１１とスイッチ４１２とは、経路群４を介して接続されており、サーバ１１〜１５及び記憶装置２１〜２５からフレームＦＬ単位で供給されるデータを選択して経路群４を介して互いに転送する。なお、スイッチ４１１及び４１２は、各構成要素の添え字が異なるとともに、入出力されるデータが異なり、また各構成要素の個数が異なる以外は同一構成であるので、スイッチ４１１及び４１２を総称する場合にはスイッチ４１と呼ぶことにする。
【００３０】
次に、スイッチ４１の構成について図１を参照して説明する。
この例のスイッチ４１は、ポート部４２１、４２２、・・・、４２ｋ、４２ｋ＋１、・・・、４２ｎ（ｋ及びｎは自然数であり、ｋ＜ｎ）と、共有バッファ４３と、クロスバ４４と、優先判定・選択回路４５とから構成されている。ポート部４２１〜４２ｎには、図２に示すサーバ１１〜１５や記憶装置２１〜２５と接続される通常ポート部４２ａと、経路群４を介して対向するスイッチ４１の対応するポート部４２と接続されるスイッチ間ポート部４２ｂとがあるが、ポート部４２を総称する場合にはポート部４２と呼ぶことにする。
【００３１】
ポート部４２は、受信したフレームＦＬのヘッダ部に書き込まれている転送先情報を解析して当該フレームＦＬの転送先のポート部４２に転送要求ＲＥＱを送信するとともに、他のポート部４２から順次送信される複数の転送要求ＲＥＱを受信して内部のキューに先入れ先出し（ＦＩＦＯ）で順次処理（キューイング）する。また、ポート部４２は、内部のキューに記憶されている複数の転送要求ＲＥＱをその記憶順に読み出し、読み出した複数の転送要求ＲＥＱを、当該転送要求ＲＥＱに対応するフレームＦＬの自己に対する転送要求ＦＲＥＱとして出力する。さらに、ポート部４２は、受信したフレームＦＬを共有バッファ４３に供給して記憶させるとともに、転送要求ＦＲＥＱに基づいて接続インターフェイスの制御を行って対応するフレームＦＬを送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬの読み出しを指示する。ここで、フレームＦＬを送信可能な状態とは、ポート部４２がフレームＦＬを送信する相手方のポート部４２との接続（リンク）が確立しており、相手方のポート部４２にフレームＦＬを送信可能な状態をいう。例えば、経路が光ファイバ・ケーブルであり、接続インターフェイスがファイバチャネルのループ（ＦＣ−ＡＬ）である場合、接続インターフェイス上のプロトコルにおいて、相手方のポート部４２に対して使用権を要求して使用権を獲得した後、相手方のポート部４２から送信されたクレジットを受信することにより、相手方のポート部４２に対してフレームＦＬが送信可能な状態になる。
【００３２】
共有バッファ４３は、ＲＡＭ等の記憶部を有し、ポート部４２から供給されるフレームＦＬが記憶されるとともに、ポート部４２から指示されたフレームＦＬを読み出して出力する。クロスバ４４は、あるポート部４２から供給された転送要求ＲＥＱを他のポート部４２に伝達する。優先判定・選択回路４５は、各ポート部４２を構成するキュー５２１〜５２ｎとポート制御部５３１〜５３ｎとの間に介挿されている。
【００３３】
優先判定・選択回路４５は、各キュー５２１〜５２ｎから順次供給される複数の転送要求ＦＲＥＱに含まれている送信元ポート番号をデコードし、デコードした送信元ポート番号が通常ポート部４２ａのものである場合には、当該転送要求ＦＲＥＱを対応するポート制御部５３に供給する。一方、デコードした送信元ポート番号がスイッチ間ポート部４２ｂのものである場合には、優先判定・選択回路４５は、対応するスイッチ間ポート部４２ｂを含めた複数のスイッチ間ポート部４２ｂのうち、フレームＦＬを転送中でないものから予め設定された優先順位に従って１個のスイッチ間ポート部４２ｂを選択し、選択したスイッチ間ポート部４２ｂのポート制御部５３に当該転送要求ＦＲＥＱを供給する。
【００３４】
ここで、送信元ポート番号とは、ポート部４２１〜４２ｎを識別するために、ポート部４２１〜４２ｎごとに付与されているポート番号を各ポート部４２が転送要求ＲＥＱを送信する際にそれに含ませて送信するものである。また、フレームＦＬを転送する優先順位は、例えば、ポート部４２１〜４２ｎごとに付与されているポート番号の若い順とする、すなわち、ポート番号１のポート部４１が優先順位が最も高く、ポート番号が大きくなるに従って対応するポート部４１の優先順位が低くなり、ポート番号が最大のポート部４１の優先順位が最も低いものとして予め設定されているものとする。
【００３５】
次に、ポート部４２１の構成について説明する。なお、ポート部４２２〜４２ｎの構成については、ポート部４２１の構成と同一であるので、その説明を省略する。
ポート部４２１は、デコーダ５１１と、キュー５２１と、ポート制御部５３１とから構成されている。デコーダ５１１は、受信したフレームＦＬのヘッダ部に書き込まれている転送先情報を解析して当該フレームＦＬの転送先のポート部４２に転送要求ＲＥＱを送信する。キュー５２１は、ＲＡＭ等からなる記憶部を有し、他のポート部４２から順次送信される複数の転送要求ＲＥＱを受信してＦＩＦＯで順次キューイングするとともに、内部に記憶されている複数の転送要求ＲＥＱをその記憶順に読み出し、読み出した複数の転送要求ＲＥＱを、当該転送要求ＲＥＱに対応するフレームＦＬの自己に対する転送要求ＦＲＥＱとして出力する。ポート制御部５３１は、受信したフレームＦＬを共有バッファ４３に供給して記憶させるとともに、優先判定・選択回路４５から供給された転送要求ＦＲＥＱに基づいて接続インターフェイスの制御を行って対応するフレームＦＬを送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬの読み出しを指示する。
【００３６】
次に、キュー５２の構成について図３を参照して説明する。ここで、上記したように、ポート部４２１〜４２ｎの構成が同一であるので、キュー５２１〜５２ｎについても、各構成要素の添え字が異なるとともに、入出力されるデータが異なる以外は同一構成である。そこで、キュー５２１〜５２ｎを総称する場合にはキュー５２と呼ぶことにする。
キュー５２は、受信ポートデコーダ６１と、ポート対応キュー６２１〜６２ｎ−１と、優先判定回路６３とから構成されている。受信ポートデコーダ６１は、他のポート部４２から順次送信される複数の転送要求ＲＥＱに含まれている送信元ポート番号をデコードし、デコードした送信元ポート番号に対応したポート対応キュー６２１〜６２ｎ−１へ当該転送要求ＲＥＱを記憶する。ポート対応キュー６２１〜６２ｎ−１は、ＲＡＭ等からなる記憶部からなり、自己を除いた（ｎ−１）個のポート部４２に対応して設けられ、対応するポート部４２から順次送信される複数の転送要求ＲＥＱがＦＩＦＯで順次記憶される。また、ポート対応キュー６２１〜６２ｎ−１は、この例のデータ転送システムにおけるスイッチ４１１及び４１２との間の接続構成及びその必要性を考慮してこのデータ転送システムの管理者によっていくつかを統合することができるように構成されている。ここで、図３はポート対応キュー６２１〜６２4の非統合例を示し、図４はポート対応キュー６２１〜６２4の統合例（後述）を示している。また、図５は、スイッチ４１1が、互いに統合されていないポート対応キュー６２１〜６２2を有している構成例を、一方、スイッチ４１２が、互いに統合されている４個のポート対応キュー６２１〜６２4を有している構成例を示している。このように構成することにより、管理者が任意にデータ転送の負荷を分散することができる。優先判定回路６３は、例えば、一般的なラウンドロビン等の平等なアルゴリズムに基づいて、ポート対応キュー６２１〜６２ｎ−１に記憶されている複数の転送要求ＲＥＱの中からいずれかを優先判定して選択し、自己のポート部４２の転送すべきフレームＦＬの転送要求ＦＲＥＱとして出力する。
【００３７】
次に、上記構成のデータ転送システムにおいて、図５に示すように、スイッチ４１１とスイッチ４１２との間を４本の経路４ａ〜４ｄからなる経路群４により接続した場合の動作について、図６及び図７に示すタイミング・チャートを参照して説明する。なお、図５は、説明をわかりやすくするための概念図であり、図１の構成とは整合していない。
図５の例では、スイッチ４１１は、９個のポート部４２１〜４２９を有している。スイッチ４１１において、ポート部４２１〜４２４は、スイッチ間ポート部４２ｂであり、対応する経路４ａ〜４ｄを介してスイッチ４１２のポート部４２６〜４２９に接続されている。一方、ポート部４２５〜４２９は、通常ポート部４２ａであり、図２に示すサーバ１１〜１５に各々接続されている。また、スイッチ４１１において、ポート対応キュー６２２１及び６２２は、ポート部４２５及び４２６に対応してポート部４２１を構成するキュー５２１の内部に設けられたものであることを示している。さらに、スイッチ４１１において、９個のポート部４２１〜４２９に各々付与された送信元ポート番号は、番号０１〜番号０９であるとする。
【００３８】
一方、スイッチ４１２は、９個のポート部４２１〜４２９を有している。スイッチ４１２において、ポート部４２１〜４２５は、通常ポート部４２ａであり、図２に示す記憶装置２１〜２５に各々接続されている。また、ポート部４２６〜４２９は、スイッチ間ポート部４２ｂであり、対応する経路４ａ〜４ｄを介してスイッチ４１１のポート部４２１〜４２４に接続されている。また、スイッチ４１２において、ポート対応キュー６２１〜６２４は、ポート部４２６〜４２９に対応してポート部４２１を構成するキュー５２１の内部に設けられたものであることを示している。さらに、スイッチ４１２において、９個のポート部４２１〜４２９に各々付与された送信元ポート番号は、番号１１〜番号１９であるとする。なお、この例では、キュー５２１内のポート対応キュー６２１〜６２４は、このデータ転送システムの管理者によって、図４のキュー５２及び図５のスイッチ４１２に示すように統合されており、この結果、４個のポート対応キュー６２１〜６２４からなる統合ポート対応キューの記憶容量は、個々のポート対応キュー６２の４倍となる上、ポート部４２１から出力すべき転送要求ＲＥＱは、統合ポート対応キュー（６２１〜６２４）に供給された順序で記憶され、読み出されることになる。
【００３９】
そして、スイッチ４１１のポート部４２５は、図６（１）に示すように、サーバ１１からフレームＦＬ１１〜ＦＬ１３が各々時間Ｔ１、時間Ｔ３、時間Ｔ６に供給され、順次受信するものとする。一方、スイッチ４１１のポート部４２６は、図６（２）に示すように、サーバ１２からフレームＦＬ２１〜ＦＬ２３が各々時間Ｔ３、時間Ｔ４、時間Ｔ５に供給され、順次受信するものとする。また、各フレームＦＬ１１〜ＦＬ１３の転送先は、スイッチ４１１ではポート部４２１であり、スイッチ４１２ではポート部４２１であり、各フレームＦＬ１１〜ＦＬ１３のヘッダ部にそのことを示す転送先情報が各々書き込まれているものとする。一方、各フレームＦＬ２１〜ＦＬ２３の転送先は、スイッチ４１１ではポート部４２１であり、スイッチ４１２ではポート部４２１であり、各フレームＦＬ２１〜ＦＬ２３のヘッダ部にそのことを示す転送先情報が各々書き込まれているものとする。
また、経路４ａ〜４ｄに接続されたスイッチ４１１のポート部４２１〜４２４及びスイッチ４１２のポート部４２６〜４２９は、現在すべて空いているものとする。さらに、フレームＦＬをスイッチ４１２に転送する優先順位は、送信元ポート番号０１が付与されたポート部４２１が最も高く、送信元ポート番号０２が付与されたポート部４２２、送信元ポート番号０３が付与されたポート部４２３の順で低くなり、送信元ポート番号０４が付与されたポート部４２４が最も低いものとして上記管理者によって予め設定されているものとする。
【００４０】
まず、スイッチ４１１のポート部４２５は、時間Ｔ１に受信した図６（１）に示すフレームＦＬ１１のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１１の転送先がスイッチ４１１のポート部４２１であると認識し、図６（３）に示すように、時間Ｔ２にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ１１を送信する。また、ポート部４２５は、受信したフレームＦＬ１１を共有バッファ４３に供給して記憶させる。同様に、ポート部４２５は、時間Ｔ３に受信した図６（１）に示すフレームＦＬ１２のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１２の転送先がスイッチ４１１のポート部４２１であると認識し、図６（３）に示すように、時間Ｔ４にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ１２を送信する。また、ポート部４２５は、受信したフレームＦＬ１２を共有バッファ４３に供給して記憶させる。ポート部４２５は、時間Ｔ６に受信した図６（１）に示すフレームＦＬ１３のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１３の転送先がスイッチ４１１のポート部４２１であると認識し、図６（３）に示すように、時間Ｔ７にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ１３を送信する。また、ポート部４２５は、受信したフレームＦＬ１３を共有バッファ４３に供給して記憶させる。
【００４１】
一方、ポート部４２６は、時間Ｔ３に受信した図６（２）に示すフレームＦＬ２１のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２１の転送先がスイッチ４１１のポート部４２１であると認識し、図６（４）に示すように、時間Ｔ４にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ２１を送信する。また、ポート部４２６は、受信したフレームＦＬ２１を共有バッファ４３に供給して記憶させる。同様に、ポート部４２６は、時間Ｔ４に受信した図６（２）に示すフレームＦＬ２２のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２２の転送先がスイッチ４１１のポート部４２１であると認識し、図６（４）に示すように、時間Ｔ５にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ２２を送信する。また、ポート部４２６は、受信したフレームＦＬ２２を共有バッファ４３に供給して記憶させる。ポート部４２６は、時間Ｔ５に受信した図６（２）に示すフレームＦＬ２３のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２３の転送先がスイッチ４１１のポート部４２１であると認識し、図６（４）に示すように、時間Ｔ６にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ２３を送信する。また、ポート部４２６は、受信したフレームＦＬ２３を共有バッファ４３に供給して記憶させる。
【００４２】
これにより、スイッチ４１１のポート部４２１は、時間Ｔ２、時間Ｔ４、時間Ｔ７に、ポート部４２５から順次送信される転送要求ＲＥＱ１１〜ＲＥＱ１３をポート部４２５に対応したポート対応キュー６２１にＦＩＦＯでキューイングするとともに、時間Ｔ４、時間Ｔ５、時間Ｔ６に、ポート部４２６から順次送信される転送要求ＲＥＱ２１〜ＲＥＱ２３をポート部４２６に対応したポート対応キュー６２２にＦＩＦＯでキューイングする。次に、ポート部４２１は、図６（５）に示すように、時間Ｔ３、時間Ｔ５、時間Ｔ８に、ポート対応キュー６２１に記憶されている転送要求ＲＥＱ１１〜ＲＥＱ１３を各記憶順に読み出し、読み出した転送要求ＲＥＱ１１〜ＲＥＱ１３を、当該転送要求ＲＥＱ１１〜ＲＥＱ１３に対応するフレームＦＬ１１〜ＦＬ１３の自己に対する転送要求ＦＲＥＱ１１〜ＦＲＥＱ１３として出力する。また、ポート部４２１は、図６（６）に示すように、時間Ｔ５、時間Ｔ６、時間Ｔ７に、ポート対応キュー６２２に記憶されている転送要求ＲＥＱ２１〜ＲＥＱ２３を各記憶順に読み出し、読み出した転送要求ＲＥＱ２１〜ＲＥＱ２３を、当該転送要求ＲＥＱ２１〜ＲＥＱ２３に対応するフレームＦＬ２１〜ＦＬ２３の自己に対する転送要求ＦＲＥＱ２１〜ＦＲＥＱ２３として出力する。
【００４３】
したがって、優先判定・選択回路４５は、キュー５２１を構成するポート対応キュー６２１及び６２２に順次供給される転送要求ＦＲＥＱ１１〜ＦＲＥＱ１３及びＦＲＥＱ２１〜ＦＲＥＱ２３に含まれている送信元ポート番号をデコードし、デコードしたすべての送信元ポート番号が番号０１であるため、送信元がスイッチ間ポート部４２ｂの１つであるポート部４２１と認識する。そこで、優先判定・選択回路４５は、対応するスイッチ間ポート部４２ｂを含めた複数のスイッチ間ポート部４２ｂのうち、フレームＦＬを転送中でないものから予め設定された優先順位に従って１個のスイッチ間ポート部４２ｂを選択し、選択したスイッチ間ポート部４２ｂのポート制御部５３に当該転送要求ＦＲＥＱを供給する。今の場合、フレームＦＬをスイッチ４１２に転送する優先順位は、送信元ポート番号０１が付与されたポート部４２１が最も高く、送信元ポート番号０２が付与されたポート部４２２、送信元ポート番号０３が付与されたポート部４２３の順で低くなり、送信元ポート番号０４が付与されたポート部４２４が最も低いものとして予め設定されている。また、経路４ａ〜４ｄに接続されたスイッチ４１１のポート部４２１〜４２４及びスイッチ４１２のポート部４２６〜４２９は、現在すべて空いている。
【００４４】
したがって、優先判定・選択回路４５は、時間Ｔ３においては、最も優先順位の高いポート部４２１が空いているので、ポート部４２１を選択し、選択したポート部４２１のポート制御部５３１に転送要求ＦＲＥＱ１１を供給する。これにより、ポート部４２１は、転送要求ＦＲＥＱ１１に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ１１を送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬ１１の読み出しを指示する。
これにより、共有バッファ４３は、図７（１）に示すように、時間Ｔ３に、ポート部４２１から指示されたフレームＦＬ１１を読み出して出力する。したがって、フレームＦＬ１１は、スイッチ４１１のポート部４２１、経路４ａ及びスイッチ４１２のポート部４２６を介してスイッチ４１２に送信される。
【００４５】
次に、優先判定・選択回路４５は、時間Ｔ５においては、最も優先順位の高いポート部４２１及び次に優先順位の高いポート部４２２が空いているので、ポート部４２１及び４２２を選択し、選択したポート部４２１及び４２２のポート制御部５３１及び５３２に転送要求ＦＲＥＱ１２及びＦＲＥＱ２１を供給する。これにより、ポート部４２１は、転送要求ＦＲＥＱ１１に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ１１を送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬ１１の読み出しを指示する。一方、ポート部４２２は、転送要求ＦＲＥＱ２１に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ２１を送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬ２１の読み出しを指示する。
これにより、共有バッファ４３は、図７（１）及び（２）に示すように、時間Ｔ５に、ポート部４２１及び４２２から指示されたフレームＦＬ１２及びＦＬ２１を読み出して出力する。したがって、フレームＦＬ１２は、スイッチ４１１のポート部４２１、経路４ａ及びスイッチ４１２のポート部４２６を介してスイッチ４１２に送信され、フレームＦＬ２１は、スイッチ４１１のポート部４２２、経路４ｂ及びスイッチ４１２のポート部４２７を介してスイッチ４１２に送信される。
【００４６】
次に、優先判定・選択回路４５は、時間Ｔ６においては、最も優先順位の高いポート部４２１が空いているので、ポート部４２１を選択し、選択したポート部４２１のポート制御部５３１に転送要求ＦＲＥＱ２２を供給する。これにより、ポート部４２１は、転送要求ＦＲＥＱ２２に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ２２を送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬ２２の読み出しを指示する。
これにより、共有バッファ４３は、図７（１）に示すように、時間Ｔ６に、ポート部４２１から指示されたフレームＦＬ２２を読み出して出力する。したがって、フレームＦＬ２２は、スイッチ４１１のポート部４２１、経路４ａ及びスイッチ４１２のポート部４２６を介してスイッチ４１２に送信される。
【００４７】
次に、優先判定・選択回路４５は、時間Ｔ７においては、最も優先順位の高いポート部４２１が空いているので、ポート部４２１を選択し、選択したポート部４２１のポート制御部５３１に転送要求ＦＲＥＱ２３を供給する。これにより、ポート部４２１は、転送要求ＦＲＥＱ２３に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ２３を送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬ２３の読み出しを指示する。
これにより、共有バッファ４３は、図７（１）に示すように、時間Ｔ７に、ポート部４２１から指示されたフレームＦＬ２３を読み出して出力する。したがって、フレームＦＬ２３は、スイッチ４１１のポート部４２１、経路４ａ及びスイッチ４１２のポート部４２６を介してスイッチ４１２に送信される。
【００４８】
次に、優先判定・選択回路４５は、時間Ｔ８においては、最も優先順位の高いポート部４２１が空いているので、ポート部４２１を選択し、選択したポート部４２１のポート制御部５３１に転送要求ＦＲＥＱ１３を供給する。これにより、ポート部４２１は、転送要求ＦＲＥＱ１３に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ１３を送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬ１３の読み出しを指示する。
これにより、共有バッファ４３は、図７（１）に示すように、時間Ｔ８に、ポート部４２１から指示されたフレームＦＬ１３を読み出して出力する。したがって、フレームＦＬ１３は、スイッチ４１１のポート部４２１、経路４ａ及びスイッチ４１２のポート部４２６を介してスイッチ４１２に送信される。
【００４９】
スイッチ４１２のポート部４２６は、時間Ｔ３に受信した図７（１）に示すフレームＦＬ１１のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１１の転送先がスイッチ４１２のポート部４２１であると認識し、図７（３）に示すように、時間Ｔ４にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ１１を送信する。また、ポート部４２６は、受信したフレームＦＬ１１を共有バッファ４３に供給して記憶させる。同様に、ポート部４２６は、時間Ｔ５に受信した図７（１）に示すフレームＦＬ１２のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１２の転送先がスイッチ４１２のポート部４２１であると認識し、図７（３）に示すように、時間Ｔ６にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ１２を送信する。また、ポート部４２６は、受信したフレームＦＬ１２を共有バッファ４３に供給して記憶させる。一方、ポート部４２７は、時間Ｔ５に受信した図７（２）に示すフレームＦＬ２１のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２１の転送先がスイッチ４１２のポート部４２１であると認識し、図７（４）に示すように、時間Ｔ６にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ２１を送信する。また、ポート部４２７は、受信したフレームＦＬ２１を共有バッファ４３に供給して記憶させる。
【００５０】
ポート部４２６は、時間Ｔ６に受信した図７（１）に示すフレームＦＬ２２のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２２の転送先がスイッチ４１２のポート部４２１であると認識し、図７（３）に示すように、時間Ｔ７にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ２２を送信する。また、ポート部４２６は、受信したフレームＦＬ２２を共有バッファ４３に供給して記憶させる。同様に、ポート部４２６は、時間Ｔ７に受信した図７（１）に示すフレームＦＬ２３のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ２３の転送先がスイッチ４１２のポート部４２１であると認識し、図７（３）に示すように、時間Ｔ８にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ２３を送信する。また、ポート部４２６は、受信したフレームＦＬ２３を共有バッファ４３に供給して記憶させる。ポート部４２６は、時間Ｔ８に受信した図７（１）に示すフレームＦＬ１３のヘッダ部に書き込まれている転送先情報を解析することにより、フレームＦＬ１３の転送先がスイッチ４１２のポート部４２１であると認識し、図７（３）に示すように、時間Ｔ９にクロスバ４４を介してポート部４２１に転送要求ＲＥＱ１３を送信する。また、ポート部４２６は、受信したフレームＦＬ１３を共有バッファ４３に供給して記憶させる。
【００５１】
これにより、スイッチ４１２のポート部４２１は、ポート部４２６から順次送信される転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３と、ポート部４２７から送信される転送要求ＲＥＱ２１とを、統合されたポート対応キュー６２１〜６２４にＦＩＦＯでキューイングする（図４及び図５）。この場合、図７（３）及び（４）に示すように、時間Ｔ６においては転送要求ＲＥＱ１２及びＲＥＱ２１が同時にポート部１１１に供給されているために、ポート部１１１は、周知の調停方法を用いて調停して、転送要求ＲＥＱが、ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３、ＲＥＱ１３の順となるように、統合されたポート対応キュー６２１〜６２４にＦＩＦＯでキューイングする。統合されたポート対応キュー６２１〜６２４への転送要求ＲＥＱのキューイングは、フレームＦＬごとに１回で済むので、一定のフレーム長が保証されていれば書き込み時間は十分に確保され、周知の調停方法を採用することができる。
【００５２】
次に、ポート部４２１は、統合されたポート対応キュー６２１〜６２４に記憶されている転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３を各記憶順に読み出し、読み出した転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３を、当該転送要求ＲＥＱ１１、ＲＥＱ１２、ＲＥＱ２１、ＲＥＱ２２、ＲＥＱ２３及びＲＥＱ１３に対応するフレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３の自己に対する転送要求ＦＲＥＱ１１、ＦＲＥＱ１２、ＦＲＥＱ２１、ＦＲＥＱ２２、ＦＲＥＱ２３及びＦＲＥＱ１３として出力する。
【００５３】
したがって、優先判定・選択回路４５は、キュー５２１を構成する、統合されたポート対応キュー６２１〜６２４に順次供給される転送要求ＦＲＥＱ１１、ＦＲＥＱ１２、ＦＲＥＱ２１、ＦＲＥＱ２２、ＦＲＥＱ２３及びＦＲＥＱ１３に含まれている送信元ポート番号をデコードし、デコードしたすべての送信元ポート番号が番号１１であるため、送信元が通常ポート部４２ａの１つであるポート部４２１と認識する。そこで、優先判定・選択回路４５は、当該転送要求ＦＲＥＱ１１、ＦＲＥＱ１２、ＦＲＥＱ２１、ＦＲＥＱ２２、ＦＲＥＱ２３及びＦＲＥＱ１３を順次対応するポート制御部５３、今の場合、ポート制御部５３１に供給する。
【００５４】
これにより、ポート部４２１は、転送要求ＦＲＥＱ１１、ＦＲＥＱ１２、ＦＲＥＱ２１、ＦＲＥＱ２２、ＦＲＥＱ２３及びＦＲＥＱ１３に基づいて、接続インターフェイスの制御を行って対応するフレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３を順次送信可能な状態にした後、共有バッファ４３に対して当該フレームＦＬ１１の読み出しを指示する。
これにより、共有バッファ４３は、図７（５）に示すように、時間Ｔ５、時間Ｔ７、時間Ｔ８、時間Ｔ９、時間Ｔ１０、時間Ｔ１１に、ポート部４２１から指示されたフレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３を順次読み出して出力する。したがって、フレームＦＬ１１、ＦＬ１２、ＦＬ２１、ＦＬ２２、ＦＬ２３及びＦＬ１３は、この順序で記憶装置２１に送信される。
【００５５】
このように、この例の構成によれば、優先判定・選択回路４５は、各キュー５２１〜５２ｎから順次供給される複数の転送要求ＦＲＥＱに含まれている送信元ポート番号をデコードし、デコードした送信元ポート番号がスイッチ間ポート部４２ｂのものである場合には、対応するスイッチ間ポート部４２ｂを含めた複数のスイッチ間ポート部４２ｂのうち、フレームＦＬを転送中でないものから予め設定された優先順位に従って１個のスイッチ間ポート部４２ｂを選択し、選択したスイッチ間ポート部４２ｂのポート制御部５３に当該転送要求ＦＲＥＱを供給している。
【００５６】
これにより、ある１個の経路を指定する複数のフレームＦＬが複数のノード（図２の例では、サーバ１１〜１５）から集中的に送信された場合であっても、他の経路の中にフレームＦＬを転送中でないものがあれば、これらを使用することができ、転送効率が向上する。ここで、転送効率が向上する具体例について説明する。転送効率は、理論的には、経路の本数に比例する。すなわち、経路が２本であれば経路が１本の場合に比べて転送効率が２倍となり、経路が３本であれば経路が１本の場合に比べて転送効率が３倍となる。例えば、図１１の例では、４本の経路４ａ〜４ｄがあるにもかかわらず、転送先が転送先情報により予め設定されているため、１本の経路４ａだけが使用されるに過ぎなかった。これに対し、図５の例では、同じく４本の経路４ａ〜４ｄがあり、転送先が転送先情報により予め設定されていても、優先判定回路４５が空いているポート部４２を選択してそのポート部４２に接続されている経路を使用してフレームＦＬを送信する。したがって、図５の例では、図１１の例に比べて、転送効率が２倍に向上する。
【００５７】
また、この例の構成によれば、スイッチ４１２のポート部４２１を構成するポート対応キュー６２１〜６２４を統合しており、ポート部４２１から出力すべき転送要求ＲＥＱは、この統合されたポート対応キュー６２１〜６２４にすべて供給された順序で記憶される。したがって、順序が確保されなければ受信側で正確に復元できない性質の一連のフレームＦＬをスイッチ間で転送することができる。図５の例でいえば、スイッチ４１２のポート部４２１が記憶装置２１から送信されるフレームＦＬを受信中である場合であっても、ポート部４２１から出力すべき転送要求ＲＥＱが統合されたポート対応キュー６２１〜６２４にすべて供給された順序で記憶されるので、従来のように送信すべきフレームＦＬの順番が逆転することはない。また、この例の構成によれば、上記した特開平５−２１９１１１号公報に記載されているようなタイムスタンプ付与回路が不要であるので、データ転送システムを簡単かつ安価に構成することができる。
この結果、この例の構成によれば、簡単かつ安価な構成により、高い転送効率でデータを転送でき、しかも負荷を分散できるとともに、データの順序も替えないで転送することができる。
【００５８】
以上、この発明の実施例を図面を参照して詳述してきたが、具体的な構成はこの実施例に限られるものではなく、この発明の要旨を逸脱しない範囲の設計の変更等があってもこの発明に含まれる。
例えば、上述の実施例においては、優先判定・選択回路４５は、各キュー５２１〜５２ｎから順次供給される複数の転送要求ＦＲＥＱに含まれている送信元ポート番号をデコードし、デコードした送信元ポート番号がスイッチ間ポート部４２ｂのものである場合には、対応するスイッチ間ポート部４２ｂを含めた複数のスイッチ間ポート部４２ｂのうち、フレームＦＬを転送中でないものから予め設定された優先順位に従って１個のスイッチ間ポート部４２ｂを選択し、選択したスイッチ間ポート部４２ｂのポート制御部５３に当該転送要求ＦＲＥＱを供給している。しかし、これに限定されず、例えば、優先判定・選択回路４５は、複数のスイッチ間ポート部４２ｂのフレームＦＬの転送状況を常に監視し、スイッチ間ポート部４２ｂの優先順位自体を変更可能に構成しても良い。
【００５９】
また、上述の実施例においては、スイッチ４１２のポート部４２１を構成するポート対応キュー６２１〜６２４は、データ転送システムの管理者によって統合される例を示したが、これに限定されない。例えば、所定の規則に基づいて、スイッチ４１２が自動的に構成を認識して自動的に統合設定するように構成しても良い。さらに、優先判定・選択回路４５におけるフレームＦＬの転送状況の監視結果に基づいて、スイッチ４１２がポート対応キュー６２１〜６２４を自動的に統合設定するように構成しても良い。
また、上述の実施例においては、フレームＦＬは、スイッチ４１１からスイッチ４１２へ送信される例を示したが、これに限定されず、この発明は、フレームＦＬがスイッチ４１２からスイッチ４１１へ送信される場合や、フレームＦＬがスイッチ４１１とスイッチ４１２との間で交互に送受信される場合にも適用することができる。さらに、この発明は、フレームＦＬが同一のスイッチ４１に接続されたノード同士の間や、同一のスイッチ４１に設けられたスイッチ間ポート部４２同士の間で、交互に送受信される場合にも適用することができる。
また、上述の実施例においては、スイッチ４１１及び４１２が一対一に４本の経路４ａ〜４ｂを介して接続される例を示したが、これに限定されず、複数のスイッチが複数の経路を介して接続されるように構成しても良い。
また、上述の実施例においては、転送されるデータの単位は、可変長データのフレームＦＬ単位である例を示したが、これに限定されず、固定長データのセル単位、可変長データのパケット単位のいずれでも良い。
【００６０】
【発明の効果】
以上説明したように、この発明の構成によれば、互いに複数の経路を介して接続され、データを転送する複数のスイッチは、複数の通常ポート部と、複数のスイッチ間ポート部と、共有バッファと、優先判定・選択回路とを備えている。複数の通常ポート部は、複数のノードと各々接続され、対応するノードから送信されるデータに含まれている転送先情報に基づいて当該データの転送先の他の通常ポート部又はスイッチ間ポート部に転送要求を送信するとともに受信したデータを共有バッファに記憶させ、他の通常ポート部又はスイッチ間ポート部から送信される複数の転送要求を受信して、他の通常ポート部又はスイッチ間ポート部に対応して設けられ、かつ、統合可能に構成された、内部のキューにキューイングした後、内部のキューに記憶されている複数の転送要求をその記憶順に読み出し、読み出した複数の転送要求を、当該転送要求に対応するデータの自己に対する転送要求として優先判定・選択回路に順次供給し、優先判定・選択回路から順次供給される複数の転送要求に基づいて対応するデータの読み出しを共有バッファに指示する。複数のスイッチ間ポート部は、相手方と複数の経路を介して各々接続され、相手方の対応するスイッチ間ポート部から送信されるデータに含まれている転送先情報に基づいて当該データの転送先の他のスイッチ間ポート部又は通常ポート部に転送要求を送信するとともに受信したデータを共有バッファに記憶させ、他のスイッチ間ポート部又は通常ポート部から送信される複数の転送要求を受信して、他の通常ポート部又はスイッチ間ポート部に対応して設けられ、かつ、統合可能に構成された、内部のキューにキューイングした後、内部のキューに記憶されている複数の転送要求をその記憶順に読み出し、読み出した複数の転送要求を、当該転送要求に対応するデータの自己に対する転送要求として優先判定・選択回路に供給し、優先判定・選択回路から供給される転送要求に基づいて対応するデータの読み出しを共有バッファに指示する。優先判定・選択回路は、供給される転送要求が通常ポート部のものである場合には、当該転送要求を対応する通常ポート部に供給し、転送要求がスイッチ間ポート部のものである場合には、対応するスイッチ間ポート部を含めた複数のスイッチ間ポート部のうち、他のデータを転送中でないものから１個のスイッチ間ポート部を選択し、選択したスイッチ間ポート部に当該転送要求を供給する。
この構成により、簡単かつ安価な構成により、負荷を分散できるとともに、データの順序も替えず、高い転送効率でデータを転送することができる。
【図面の簡単な説明】
【図１】この発明の一実施例であるスイッチ４１の構成を示すブロック図である。
【図２】同スイッチ４１を適用したデータ転送システムの構成を示すブロック図である。
【図３】同スイッチ４１を構成するポート部４２の一部であるキュー５２の構成を示すブロック図である。
【図４】キュー５２においてポート対応キュー６１１〜６１４が統合されていることを示すブロック図である。
【図５】同システムの動作を説明するための概念図である。
【図６】同システムの動作を説明するためのタイミング・チャートである。
【図７】同システムの動作を説明するためのタイミング・チャートである。
【図８】従来のデータ転送システムの構成例を示すブロック図である。
【図９】同システムを構成するスイッチ３の構成例を示すブロック図である。
【図１０】スイッチ３を構成するポート部１１の一部であるキュー２２の構成例を示すブロック図である。
【図１１】同システムの動作を説明するための概念図である。
【図１２】同システムの動作を説明するためのタイミング・チャートである。
【図１３】従来技術の不都合点を説明するための図である。
【図１４】従来技術の不都合点を説明するためのタイミング・チャートである。
【符号の説明】
４ａ〜４ｄ    経路
４１１，４１２  スイッチ
４２１〜４２ｎ  ポート部
４３          共有バッファ
４５          優先判定・選択回路
５２１〜５２ｎ  キュー
５３１〜５３ｎ  ポート制御部
６２１〜６２ｎ  ポート対応キュー
【図１】
0003687595.tif 000002
【図２】
0003687595.tif 000003
【図３】
0003687595.tif 000004
【図４】
0003687595.tif 000005
【図５】
0003687595.tif 000006
【図６】
0003687595.tif 000007
【図７】
0003687595.tif 000008
【図８】
0003687595.tif 000009
【図９】
0003687595.tif 000010
【図１０】
0003687595.tif 000011
【図１１】
0003687595.tif 000012
【図１２】
0003687595.tif 000013
【図１３】
0003687595.tif 000014
【図１４】
0003687595.tif 000015