(57)【特許請求の範囲】
【請求項１】
（ａ）各々、ノードポートと相互作用する回路系を備えた少なくとも一つのハブポートとノードポートと相互作用するための回路系を備えない内部ハブ拡張ポートを有する複数の内部ハブであって、各内部ハブに含まれているハブポートと内部ハブ拡張ポートが各々、かような内部ハブ内に含まれている一方向性内部ループ内で相互に接続されている、複数の内部ハブ；および
（ｂ）一方向性ハブ間ループで複数の内部ハブの内部ハブ拡張ポートを相互に接続する複数のハブ間ループチャネルであって、各一方向性内部ハブ拡張ポートが、該内部ハブ拡張ポートを含むその対応づけられた一方向性内部ループを、対応づけられたハブ間バイパスフラグに応答して、前記一方向性ハブ間ループに対して接続または切断を行う、複数のハブ間ループチャネル；
を含んでなるスケーラブルハブ。
【請求項２】
その対応づけられた一方向性内部ループを前記一方向性ハブ間ループに接続した内部ハブ拡張ポートが各々、その対応づけられた一方向性内部ループを、前記ハブ間ループに接続されている他の一方向性ループが故障したときに、前記一方向性ハブ間ループから自動的には切断しない請求項１に記載のスケーラブルハブ。
【請求項３】
内部ハブ拡張ポートが各々、その対応づけられた一方向性内部ループを、同一方向性内部ループが故障したときに、前記一方向性ハブ間ループから自動的に切断する請求項１に記載のスケーラブルハブ。
【請求項４】
（ａ）複数の内部ハブ；
（ｂ）各内部ハブがノードポートと相互作用する回路系を備えた少なくとも一つのハブポートを含むように、内部ハブ間に配分されている複数のハブポート；
（ｃ）各々、ノードポートと相互作用するための回路系を備えない内部ハブ拡張ポートであって、一つの内部ハブに含まれかつハブ間バイパスフラグを有している複数の内部ハブ拡張ポート；
（ｄ）独立した一方向性内部ループが各内部ハブ内に形成されるように、各内部ハブ内に含まれているハブポートと内部ハブ拡張ポートを接続する複数の内部ループライン；
（ｅ）一方向性ハブ間ループ内で内部ハブ拡張ポートを接続する複数のハブ間ループチャネルであって、各内部ハブ拡張ポートが、該内部ハブ拡張ポートを含むその対応づけられた一方向性内部ループを、該内部ハブ拡張ポートのハブ間バイパスフラグに応答して、一方向性ハブ間ループに対し接続または切断を行う、複数のハブ間ループチャネル；
を含んでなるスケーラブルハブ。
【請求項５】
少なくとも一つの内部ハブが少なくとも二つのハブポートを含む請求項４に記載のスケーラブルハブ。
【請求項６】
（ａ）各々一方向性ループと、ノードポートと相互作用するための回路系を備えない内部ハブ拡張ポートと、を含む複数の内部ハブ；および
（ｂ）一方向性ハブ間ループ内で複数の内部ハブの内部ハブ拡張ポートを相互に接続する複数のハブ間ループチャネルであって、各内部ハブ拡張ポートが、該内部ハブ拡張ポートを含む内部ハブのその対応づけられた一方向性内部ループを、対応づけられたハブ間バイパスフラグに応答して、一方向性ハブ間ループに対して接続または切断を行う、複数のハブ間ループチャネル；
を含んでなるスケーラブルハブ。
【請求項７】
（ａ）一方向性内部ループとして各々設定可能な複数の内部ハブ；
（ｂ）各々、一つの内部ハブに含まれ、且つ、ノードポートと相互作用するための回路系を備えない複数の内部ハブ拡張ポート；
（ｃ）各々、一つの内部ハブ拡張ポートに対応づけられた複数のハブ間バイパスフラグ；
（ｄ）一方向性ハブ間ループ内で前記内部ハブ拡張ポートを相互に接続する複数のハブ間ループチャネルであって、各内部ハブ拡張ポートが、該内部ハブ拡張ポートを含むその対応づけられた内部ハブを、該内部ハブ拡張ポートに対応づけられた前記ハブ間バイパスフラグに応答して、一方向性ハブ間ループに対して接続または切断を行う、複数のハブ間ループチャネル；
を含んでなるスケーラブルハブ。
【請求項８】
スケーラブルハブにおいて、一方向性内部ループとして各々設定可能な複数の内部ハブを、一方向性ハブ間ループに対して接続および切断を行う方法であって；
（ａ）内部ハブに対応づけられたハブ間バイパスフラグがセットされているとき、ノードポートと相互作用するための回路系を備えない内部ハブ拡張ポートを用いて、各内部ハブを、一方向性ハブ間ループから切断し；および
（ｂ）内部ハブに対応づけられたハブ間バイパスフラグがセットされていないとき、前記内部ハブ拡張ポートを用いて、各内部ハブを、一方向性ハブ間ループに接続する；
ことを含んでなる方法。
【請求項９】
一方向性ハブ間ループに接続されている各内部ハブが、該一方向性ハブ間ループに接続されている他の内部ハブが故障したとき、一方向性ハブ間ループから自動的には切断しない請求項８に記載の方法。
【請求項１０】
内部ハブが故障したとき、各内部ハブが、一方向性ハブ間ループから自動的に切断する請求項８に記載の方法。
【請求項１１】
一方向性ループ経路ネットワーク内の複数のノードを接続および切断する方法であって；
（ａ）複数のノードを内部ハブを用いて相互接続した少なくとも二つの一方向性ループに分割し；
（ｂ）ループバイパスフラグを、ノードの一方向性ループの各々に対応づけ；
（ｃ）ノードの一方向性ループに対応づけられたループバイパスフラグがセットされているとき、ノードポートと相互作用するための回路系を備えない内部ハブ拡張ポートを用いて、ノードの一方向性ループの各々を、一方向性ループ経路ネットワークから切断し；および
（ｄ）ノードの一方向性ループに対応づけられたループバイパスフラグがセットされていないとき、前記内部ハブ拡張ポートを用いて、ノードの一方向性グループ各々を、一方向性ループ経路ネットワークに接続する；
ことを含んでなる方法。
【請求項１２】
ループバイパスフラグがノードの一方向性ループと対応づけられているとき、そのノードの一方向性ループは一方向性ループ経路ネットワークから切断され、ノードの残りの一方向性ループは、一方向性ループ経路ネットワークに対して接続または切断している現在の状態を維持する請求項１１に記載の方法。
【請求項１３】
スケーラブルハブの複数の内部ハブを、一方向性ハブ間ループに対し接続および切断を行うシステムであって；各内部ハブが一方向作動を行うように配置構成され；
（ａ）内部ハブに対応づけられたハブ間バイパスフラグがセットされているとき、ノードポートと相互作用するための回路系を備えない内部ハブ拡張ポートを用いて各内部ハブを一方向性ハブ間ループから切断する手段；および
（ｂ）内部ハブに対応づけられたハブ間バイパスフラグがセットされていないとき、前記内部ハブ拡張ポートを用いて各内部ハブを一方向性ハブ間ループに接続する手段；
を備えてなるシステム。
【請求項１４】
一方向性ハブ間ループに接続されている各内部ハブが、一方向性ハブ間ループに接続されている他の内部ハブが故障したとき、前記一方向性ハブ間ループから自動的には切断しない請求項１３に記載のシステム。
【請求項１５】
内部ハブが故障したとき、各内部ハブが前記一方向性ハブ間ループから自動的に切断する請求項１３に記載のシステム。
【発明の詳細な説明】
【０００１】
【発明の分野】
本発明は、電子ネットワーク切換えデバイスに関し、特に、ネットワークループアーキテクチャで用いられるハブデバイスであって、共同して作動して、利用可能な相互接続の単一化した（unified）ループまたはサブセットを形成する相互接続された複数の内部ハブを含む、ハブデバイスに関する。
【０００２】
【発明の背景】
電子データシステムはネットワーク通信システムを使用して相互に接続されることが多い。広域のネットワークとチャネルは、コンピュータネットワークのアーキテクチャのために開発された二つの方法である。伝統的なネットワーク（例えば、ＬＡＮやＷＡＮなど）は、大きなフレキシビリティと比較的長い距離の通信能力を提供する。The Enterprise System Connection（ＥＳＣＯＮ）およびThe Small Computer System Interface（ＳＣＳＩ）などのチャネルが、高性能と高い信頼性を求めて開発されている。チャネルは一般に、コンピュータ間またはコンピュータと周辺装置の間に専用の短距離の接続を使用している。
【０００３】
チャネルとネットワークの両者の特徴が、“ファイバーチャネル”（“Fiber Channel”）として知られている新しいネットワークの標準中に組み込まれている。ファイバーチャネルシステムは、チャネルの速度と信頼性およびネットワークのフレキシビリティと接続性を兼ね備えている。ファイバーチャネルの製品は、現在、非常に高いデータ速度、例えば２６６Ｍｂｐｓまたは１０６２Ｍｂｐｓで作動可能である。このような速度は非圧縮、フルモーション、高品質のビデオ（uncompressed、full motion、high-quality Video）などの全デマンディングアプリケーション（quite demanding application）を扱うのに十分な速度である。ＡＮＳＩの仕様（規格）、例えば、X3.230-1994は、ファイバーチャネルのネットワークを定義（規定）している。この仕様は、ファイバーチャネルの機能を、五つの層に分配している。ファイバーチャネルのこの五つの機能層は、ＦＣ−０層：物理的媒体層；ＦＣ−１層：コーディングとエンコーディングを行う層；ＦＣ−２層：実転送機構（フレーミングプロトコルとノード間のフロー制御を含む）；ＦＣ−３層：共通サービスの層；およびＦＣ−４層：上層のプロトコルである。
【０００４】
ファイバーチャネルのネットワークを配備する方法は一般に三つある。すなわち、単純なポイントツーポイント接続；アービトレーテッドループ（arbitrated loop）；および交換ファブリック（switched fabric）である。最も単純なトポロジーはポイントツーポイント配置構成であり、この場合、任意の二つのファイバーチャネルシステムが、単純に、直接、接続されている。アービトレーテッドループは、アービトレーションによって帯域幅に対する共用アクセスを提供するファイバーチャネルリングの接続である。交換ファイバーチャネルのネットワーク（“ファブリック”と呼称されている）は、クロスポイント交換（cross-point switching）の形態である。
【０００５】
従来のファイバーチャネルアービトレーテッドループ（“ＦＣ−ＡＬ”）のプロトコルは、装置またはループセグメントを、ノードポートを通じて相互に接続する際のループの機能に関するプロトコルである。しかし、ノードポートを、直接、相互接続することは、一つのループ内の一つのノードポートが故障すると、一般に、ループ全体が故障するという点が問題である。この難点は、従来のファイバーチャネルのテクノロジーにおいては、ハブを使用することによって克服される。ハブは、ループトポロジィで相互に接続されたいくつものハブポートを備えている。ノードポートは、ハブポートに接続され、中央のハブとスタートポロジィを形成している。ノードポートに接続されていないか、または故障したノードポートに接続されているハブポートはバイパスされる。このように、前記ループは、ノードポートが外されているかまた故障しているかにかかわらず維持される。
【０００６】
図１Ａは、取り付けられたノードポートを持つ２つの従来のハブを示しており、そのノードポートは単一の作動デバイスへの接続を表わすか、または、直接に相互接続された一連のデバイスのループセグメントを表す。各ノードポートは普通には，２つのデータチャネルを有し、ひとつのデータチャネルは、ハブポートからノードポートへデータを運びひとつのデータチャネルはノードポートからハブポートへデータを運ぶ。
【０００７】
図１Ａでは、ハブ１００は、４つのハブポート１０２，１０４，１０６，１０８を有する。（本明細書中のハブの図に示すハブポートの数は、例示だけを目的とするものであり、本発明の適用範囲内の実施態様によるハブの動作や構造を限定しない）。ハブ１００のハブポート１０２〜１０８は、一連の内部ハブリンク１１０，１１２，１１４，１１６により相互接続されている。このようにして、ハブポート１０２〜１０８は、内部ハブリンク１１０〜１１６によりループトポロジーで接続されている。ループのデータ経路は：ハブポート１０２から内部ハブリンク１１０を介してハブポート１０４へ；外に出てノードポート１２４へ行きハブポート１０４へ戻り；内部ハブリンク１１２を介してハブポート１０６へ；内部ハブリンク１１４を介してハブポート１０８へ；内部ハブリンク１１６を介してハブポート１０２へ；外に出てノードポート１１８へ行きハブポート１０２へ戻る流れで、ループを完了する。
【０００８】
ノードポートは、物理的スタートポロジーでハブ１００へ取り付けられている。しかしハブポート１０２〜１０８の相互接続により提供されるハブ１００の内部ループトポロジーは、ハブ１００へ取り付けられているノードポートに対して効率的なループトポロジーを提供する。ノードポート１１８は、ハブポート１０２でハブ１００へ取り付けられている。データチャネル１２０は、データをノードポート１１８からハブポート１０２へ運ぶ。データチャネル１２２は、データをハブポート１０２からノードポート１１８へ運ぶ。これらのデータチャネル１２０，１２２は、ノードポート１１８とハブ１００内のループ間の接続を生成する。第二ノードポート１２４はまた、同様に、データチャネルを持つハブポート１０４でハブ１００に取り付けられている。
【０００９】
また、図１Ａは、第二ハブ１５０も示す。ハブ１００と類似のハブ１５０は、ループトポロジーで内部ハブリンク１６０，１６２，１６４，１６６により相互接続されている４つのハブポート１５２，１５４，１５６，１５８を含む。２つのノードポート１６８，１７０はそれぞれ、一対のデータチャネルによってハブポート１５２と１５６にてハブ１５０へ取り付けられている。図１Ａに示すように、ハブ１００とハブ１５０は、２つの独立ループを形成している。従って、ノードポート１１８とノードポート１２４は通信でき、ノードポート１６８とポート１７０は通信できるが、ノードポート１１８はノードポート１６８または１７０と接続していない。
【００１０】
ハブ１００とハブ１５０内に含まれるループを接合する従来の技法を、図１Ｂに示す。上記で説明したように、ハブの各ハブポートは、ハブポートをノードポートへ接続することに利用できる２つのデータチャネルを有する（図１Ａにおいて、データチャネル１２０は、データをノードポート１１８からハブポート１０２へ運び、データチャネル１２２はデータをハブポート１０２からノードポート１１８へ運ぶことを想起のこと）。図１Ｂでは、ハブ１００のハブ１５０との接続は、２つのハブポート（各ハブからの一つずつのハブポート）のデータチャネルをリンクすることにより完成する。図１Ｂでは、２つのデータチャネル１７２，１７４が、ハブポート１００のハブポート１０６をハブ１５０のハブポート１５４へ接続する。データチャネル１７２は、データをハブポート１０６からハブポート１５４へ運ぶ。データチャネル１７４は、データをハブポート１５４からハブポート１０６へ運ぶ。データチャネル１７２，１７４は、データをひとつのハブポートからループ内の次のハブポートへ運ぶ内部ハブリンク１１０〜１１６，１６０〜１６６と類似の機能を果たす。このハブポート１０６と１５４間の相互接続は、ハブ１００と１５０内に含まれるループを接続する。
【００１１】
リンクされたループトポロジーを通したデータ経路は、ハブポートとノードポート：１０２，１０４，１２４，１０４，１０６，１５４，１５６，１７０，１５６，１５８，１５２，１６８，１５２，１５４，１０６，１０８，１０２，１１８，１０２の循環パターンに従う。このように、ハブポート１０６と１５４は、ハブ１００と１５０によって形成される２つのループ間の共通の連結部分として作用する。図１Ａの構成とは対称的に、図１Ｂでは、ノードポート１１８は、拡張されたループ中の他のノードポート１２４，ノードポート１６８およびノードポート１７０のいずれとも通信することができる。
【００１２】
図１Ｂに示す方法に伴う問題は、各ハブが、ハブ間の連係作動と接続を行うために、少なくとも一つのハブポートを専用に使用しなければならないことである。この場合では、ノードポートまたはループセグメントと相互作用するよう設計された、ハブポート内の論理と回路は、使用されず無駄になる。
【００１３】
加えて、図１Ｂで示すように接続されたハブの接続と切断は、時には、ケーブルやデバイスの実際の移動を含む論理的に複雑な物理プロセスである。図１Ｂで示したハブポートとハブポートの接続の他の問題点は、そのような接続プロセスが分かれたハブを接合するのに役立つのみであるということである。ループ要素の粒度を増すために、ハブをより小さなピースに分割することが望ましい。図１Ｂで示されたハブポートとハブポートの相互接続の解決策は、この問題に対して何の役にも立たない。
【００１４】
本発明の発明者らは、１グループの内部ハブを接合したりまたは隔離して単一のスケーラブルハブ（scalable hub）にする際に、プログラマブルスケーラビリティ（scalability）を提供するスケーラブルハブポートを有するのが望ましいことを確認したのである。加えて、本発明の発明者らは、ハブポートとそれらに関連するハブポート論理を用いることなく、この拡張とスケーラビリティを可能にするスケーラブルハブを提供することが望ましいことを確認した。
【００１５】
【発明の概要】
本発明は、スケーラブルハブを提供する。好ましい実施態様のスケーラブルハブは、複数の内部ハブを含む。この各内部ハブは、従来のハブと同様に、ループトポロジーで相互接続されている一つ以上のハブポートを含む。スケーラブルハブの各内部ハブはまた、内部ハブ拡張ポート（internal hub expansion port）を含む。内部ハブの内部ハブ拡張ポートは、ハブ間ループチャネル（interhub loop channel）によりハブ間ループ（interhub loop）内で相互接続されている。
【００１６】
内部ハブ拡張ポートは、内部ハブのループの各部分である。従って、内部ハブ拡張ポートは、内部ハブのループ、およびハブ間ループへ接続されている。ハブ間バイパスフラグは、各内部ハブ拡張ポートへ提供される。内部ハブ拡張ポートに対するハブ間バイパスフラグがセットされると、内部ハブの内部ハブループを流れるデータは該拡張ポートを通過し、ハブ間ループへ流入しない。ハブ間バイパスフラグがセットされていない場合、その内部ハブ拡張ポートを含む内部ハブはハブ間ループへ接続される。データは、その内部ハブから次の内部ハブの内部ハブ拡張ポートへ、ハブ間ループに沿って通過する。ハブ間ループは、スケーラブルハブに含まれる内部ハブの内部ハブ拡張ポートをリンクする一方向性ループトポロジーを形成する。このアーキテクチャは、ハブ間バイパスフラグを用いてスケーラブルハブのハブ間ループに、内部ハブを入れたり取り出したりすることを可能にしている。
【００１７】
好ましい実施態様のスケーラブルハブの内部ハブ拡張ポートは一般に、より単純なので、ハブポートを備える回路や論理よりも高価ではない。結果として、図１Ｂで示すようなハブポートとハブポートの接続によって起こるハブポート回路系の無駄は、内部ハブ拡張ポートを使用することによる内部ハブの相互接続により避けられる。
【００１８】
加えて、内部ハブ拡張ポートの接続は、スケーラブルハブの構造へ結線接続されているのが好ましい。内部ハブの接続あるいは切断は、構成に対し物理的交換を要求しないが、その代わりに、関連するハブ間バイパスフラグのセットとリセットにより制御される。フラグの使用によって、内部ハブを、スケーラブルハブのハブ間ループに対して簡単に接続しあるいは取り外すことができる。
【００１９】
好ましい実施態様はまた、内部ハブの故障の場合に、スケーラブルハブのグレースフルデグラデーション（graceful degradation）（適切な劣化）を行う。スケーラブルハブの内部ハブのすべてがハブ間ループへ接続されている（すなわち、全ての内部ハブがひとつのハブとして作動する）状態では、内部ハブの一つが故障した場合、内部ハブのグループ全体が、隔離された単一のハブに分解するのではなくて、好ましい実施態様は、故障したハブのみがハブ間ループから取り外される点でグレースフルデグラデーションである。ハブ間ループへ予め接続された内部ハブの残りは、ハブ間ループに接続したままで、故障したハブのみが隔離される。
【００２０】
【発明の実施の形態】
本発明を、好ましい実施態様の例示としてファイバーチャネルアービトレーテッドループ（“ＦＣ−ＡＬ”）を用いて以下に説明する。しかし、本発明は、ＦＣ−ＡＬネットワークと類似の特徴を持つネットワークに適用できる。
【００２１】
好ましい実施態様は、プログラマブルでグレースフルデグラデーションを示すスケーラブルハブを提供する。好ましい実施態様のスケーラブルな性質は、スケーラブルハブ内のハブ間ループに沿った複数の内部ハブの相互接続から生じる。内部ハブをハブ間ループから抜き差しすると、ハブポートが、ハブ間ループの変化によって生成されるループに含まれる。
【００２２】
好ましい実施態様のスケーラブルハブ２００の構成と作動を、図２を参照して、説明する。スケーラブルハブ２００は、少なくとも２つの内部ハブを含み；４つの内部ハブ２０２，２０４，２０６，２０８が示されている。各内部ハブは、ひとつ以上のハブポートとひとつの内部ハブ拡張ポートを含む。図２に示すように、内部ハブ２０２は、４つのハブポート２１０，２１２，２１４，２１６とひとつの内部ハブ拡張ポート２１８を含む。ハブポート２１０〜２１６と、内部ハブ拡張ポート２１８は、内部ハブリンク２２０，２２２，２２４，２２６，２２８によって接続されているループトポロジーで配置されている。内部ハブに含まれるハブポートの数は、４つに限定されず、好ましい実施態様の、スケーラブルハブの各内部ハブ内のハブポートの数は必ずしも同じでない。ノードポートは、各ハブポートへ接続され得る。図２に示すように、ノードポート２３０は、ハブポート２１０へ接続されている。データチャネル２３２は、データをノードポート２３０からハブポート２１０へ運ぶ。データチャネル２３４は、データをハブポート２１０からノードポート２３０へ運ぶ。
【００２３】
残りの内部ハブ２０４，２０６，２０８は各々、内部ハブ２０２と同様に、ひとつ以上のハブポートとひとつの内部ハブ拡張ポートを含む。図２に示すように、各内部ハブ２０２〜２０８は、４つのハブポートを含む（内部ハブ２０２はハブポート２１０〜２１６を含み、内部ハブ２０４はハブポート２３８，２４０，２４２，２４４を含み、内部ハブ２０６はハブポート２４８，２５０，２５２，２５４を含み、内部ハブ２０８はハブポート２５８，２６０，２６２，２６４を含む）。また、内部ハブ２０２〜２０８は各々、内部ハブ拡張ポートも含む（内部ハブ２０２は内部ハブ拡張ポート２１８を含み、内部ハブ２０４は内部ハブ拡張ポート２３６を含み、内部ハブ２０６は内部ハブ拡張ポート２４６を含み、内部ハブ２０８は内部ハブ拡張ポート２５６を含む）。内部ハブ拡張ポート２１８，２３６，２４６，２５６は、ハブ間ループチャネル２６６，２６８，２７０，２７２によってハブ間ループトポロジーで接続されている。このようにして、データは、内部ハブ２０２から内部ハブ拡張ポート２１８を介し、そしてハブ間ループチャネル２６６へ流れる。データは次いで、内部ハブ拡張ポート２３６において内部ハブ２０４へ入る。データは内部ハブ拡張ポート２３６からハブ間ループチャネル２６８に沿って、内部ハブ２０４を出る。データは、内部ハブ拡張ポート２４６を介して内部ハブ２０６へ入り、ハブ間ループチャネル２７０上に出る。データは、内部ハブ拡張ポート２５６を介して内部ハブ２０８へ入り、ハブ間ループチャネル２７２上に内部ハブ２０８を出る。データは次いで、内部ハブ拡張ポート２１８を介して内部ハブ２０２へ入る。このようにして、スケーラブルハブ２００の内部ハブは相互接続されており、単一ループすなわち４つまでの個々のループの組み合わせとして作動できる。
【００２４】
好ましい実施態様では、内部ハブ内のループのデータ経路が、内部ハブの各内部ハブ拡張ポートに対するハブ間バイパスフラグのセットとリセットにより、スケーラブルハブのハブ間ループに接続され、または同ループから取り外される。例えば、図２のスケーラブルハブ２００に示される各内部ハブ拡張ポート２１８，２３６，２４６，２５６に対するハブ間バイパスフラグがセットされていない場合（内部ハブ２０２〜２０８が、スケーラブルハブ２００のハブ間ループに含まれるべきであることを示す）、ループのデータ経路は各内部ハブ２０２〜２０８を通って進む。
【００２５】
好ましい実施態様では、スケーラブルハブはフレキシブルな構造を提供する複数の集積回路（“ＩＣ”）で構成されている。別の実施態様では、スケーラブルハブはひとつのＩＣである。このように、内部ハブは物理的に隔離可能でなく、むしろ、接続と切断はデータ経路とビットフラグの操作の相関関係となっている。
【００２６】
好ましい実施態様でのスケーラブルハブの内部ハブの内部ハブ拡張ポートは、完全なハブポートの機能をハブポートへ提供するのに必要な回路を含まない簡易化された受信／伝送回路として実施されることが好ましい。ハブの各ハブポート（スケーラブルあるいはそうでないか、内部あるいはそうでないかにかかわらず）は、取り付けられたノードポート、ループセグメント、あるいは他の準拠デバイスと相互作用するよう設計される。従って、ハブポートは、この相互作用を可能にするのに必要な量の回路系を有する。例えば、ハブの内部ループに沿ったデータ経路は、パラレルデータバスであることができるが、ノードポートへの出力はシリアル（直列）である。それゆえ、ハブポートは普通には、ＦＣ−ＡＬネットワークのようなネットワークのプロトコルに準拠してノードポートによって期待されるシリアルデータを生成し受信するシリアル入力／出力「Ｉ／Ｏ」回路を含む。加えて、ハブポートの構成に応じて、エンコーディング、検出、クロック回復等のための追加の回路系がハブポートに設けられる。
【００２７】
好ましくは、スケーラブルハブの内部ハブ拡張ポートは、完全にスケーラブルハブの内部にあり、そしてノードポートと相互作用するためのハブポートの回路系を必要としない。内部ハブ拡張ポートは、好ましくは、スケーラブルハブに関連するノードポートや他の外部デバイスと直接通信せず、そのため内部ハブ拡張ポートを含む内部ハブを、スケーラブルハブのハブ間ループ内での次の内部ハブの内部ハブ拡張ポートへ接続するのに必要な回路系のみ有している。この構成は、ハブポートからハブポートへデータチャネルを通すことによりハブを接続する従来のアプローチを超えるコストの低減と効率性をもたらす。
【００２８】
内部ハブ拡張ポートの選択的な相互接続の機能は、設定可能なループサイズを提供する様々な方法で実施できる。単純な並列／直列の接続が好ましい。多重化回路、またはクロスポイントスイッチが効果的である。あるいは、ダイレクトゲート論理を使用し、ハブ間バイパスフラグに応答して接続と切断を行うことができる。
【００２９】
好ましい実施態様のスケーラブルハブのハブ間ループはビット幅が２１ビットであり、そのうち２０ビットはデータ、１ビットはクロック用である。ハブ間ループはパラレルであり、一つの内部ハブから次の内部ハブへの迅速なデータ伝送を与える。ハブ間ループのビット幅が内部ハブでのループのそれと異なる場合、内部ハブ拡張ポートは好ましくはループを同期化させる回路系を含む。
【００３０】
図３Ａから図３Ｅは、図２に示したスケーラブルハブ２００においてセットされるハブ間バイパスフラグの様々な組み合わせから生じるデータ経路の組み合わせを示す。図３Ａは、スケーラブルハブ２００の４つの内部ハブ拡張ポート２１８，２３６，２４６，２５６のすべてに対するハブ間バイパスフラグがセットされていない状態を示す。結果として、スケーラブルハブ２００の４つの内部ハブ２０２〜２０８のすべてが、ハブ間ループへ接続されている。４つのハブ間バイパスフラグのすべてをセットしないことから生じるデータ経路は、データ経路３００によって示されている。ループ周りのデータ流れは、４つの内部ハブ２０２〜２０８全体のすべてのハブポートを通過する。
【００３１】
図３Ｂは、三つの内部ハブ拡張ポート２３６，２４６，２５６に対するハブ間バイパスフラグがセットされていない場合に得られるデータ経路を示す。内部ハブ２０４〜２０８は、ハブ間ループへ接続されている。内部ハブ拡張ポート２１８のハブ間バイパスフラグは、セットされている。結果として、内部ハブ２０２は、ハブ間ループへ接続されてないので、データ経路３０２によって示されるデータ経路をもっている。残りの内部ハブ２０４，２０６，２０８は、ハブ間ループへ接続されているので、ループに沿ったデータ経路は、データ経路３０４で示される。この場合、データは内部ハブ２０２の内部ハブ拡張ポート２１８へ流れるが、内部ハブ２０２の内部ハブループへデータは全く入らない。結果として、内部ハブ２０４，２０６，２０８へ取り付けられたノードポートは、互いに相互作用するが、これらのノードポートは内部ハブ２０２に取り付けられたノードポートと相互作用しない。
【００３２】
図３Ｃは、２つの内部ハブ拡張ポート２４６、２５６のハブ間バイパスフラグがセットされていない状態を示す。内部ハブ２０６と２０８は、ハブ間ループへ接続されている。内部ハブ拡張ポート２１８と２３６に対するハブ間バイパスフラグがセットされているので、内部ハブ２０２と２０４は隔離され、ハブ間ループへ接続されない。この構成は、３つの独立ループをもたらす。ひとつのループは、内部ハブ２０２の内部ハブループであるデータ経路３０６によって表される。第２のループは、内部ハブ２０４の内部ハブループであるデータ経路３０８によって表される。第３のループは、内部ハブ２０６、２０８の内部ハブループとハブ間ループとの組み合わせであるデータ経路３１０によって表される。図３Ｂに示す状況と同様に、データ経路３１０は、内部ハブ２０２と２０４の内部ハブ拡張ポート２１８と２３６へ流入する。しかし、内部ハブ拡張ポート２１８と２３６のハブ間バイパスフラグがセットされているので、内部ハブ拡張ポート２１８、２３６は、内部ハブ２０２と２０４の内部ハブループをハブ間ループへ接続させない。
【００３３】
図３Ｄは、ひとつの内部ハブ拡張ポート２５６のハブ間バイパスフラグがセットされておらず、そのため内部ハブ２０８の内部ハブループがハブ間ループへ接続されている状態を示す。しかし、内部ハブ２０２、２０４、２０６は、それぞれに対応する内部ハブ拡張ポート２１８、２３６、２４６のハブ間バイパスフラグをセットしているので、内部ハブループはハブ間ループへ接続されない。この構成は、４つの独立したループをもたらす。内部ハブ２０２、２０４、２０６はそれぞれ、データ経路３１２、３１４、３１６で表される独立して隔離されたループを有する。４番目のループは、内部ハブ２０８の内部ハブループが内部ハブ拡張ポート２５６を介してハブ間ループへ接続されているデータ経路３１８によって表される。データ経路３１８は、各内部ハブ２０２〜２０８の内部ハブ拡張ポート２１８、２３６、２４６、２５６を通る。しかしながら、セットされていない（すなわち、クリアされている）唯一のハブ間バイパスフラグは、内部ハブ拡張ポート２５６のフラグであるので、内部ハブ２０８の内部ハブループのみがハブ間ループへ接続されている。
【００３４】
図３Ｅの状態は、図３Ｄで示された状態と類似しているが、内部ハブ２０２〜２０８の４つの内部ハブ拡張ポート２１８、２３６、２４６、２５６すべてのハブ間バイパスフラグがセットされている。各内部ハブ２０２〜２０８は、ハブ間ループ（内部ハブの内部ハブループ）へ接続されていない。この構成は、５つの独立したループをもたらす。第１のループは、内部ハブ２０２の内部ハブループであるデータ経路３２０によって表される。第２のループは、内部ハブ２０４の内部ハブループであるデータ経路３２２によって表される。第３のループは、内部ハブ２０６の内部ハブループであるデータ経路３２４によって表される。第４のループは、内部ハブ２０８の内部ハブループであるデータ経路３２６によって表される。さらに、ハブ間ループは、内部ハブ拡張ポート２１８、２３６、２４６、２５６を接続してデータ経路３２８を形成する。ハブ間バイパスフラグは、内部ハブ拡張ポート２１８、２３６、２４６、２５６に対してセットされているので、内部ハブ２０２〜２０８の内部ハブループは、ハブ間ループによって形成されたループへは接続されない。従って、好ましくは、データ経路３２８上にデータは何ら存在しない。
【００３５】
図３Ａ〜３Ｅで示すように、ハブ間ループは、それ自体変わらず、好ましい実施態様のスケーラブルハブ内に含まれる内部ハブの全ての内部ハブ拡張ポートを常に接続している。ハブ間ループと内部ハブの内部ハブループとの間の接続は、内部ハブ拡張ポートの内部にあり、内部ハブ拡張ポートのハブ間バイパスフラグの状況により決定される。
【００３６】
図２に戻って、複数のノードポートがスケーラブルハブ２００へ接続され、ここでこれらのノードポートは異なる内部ハブ２０２〜２０８へ接続されている。図示の通り、ノードポート２３０は、内部ハブ２０２のハブポート２１０へ接続され、ノードポート２７６、２７８、２８０は、内部ハブ２０４へ取り付けられ、ノードポート２８２、２８４、２８６、２８８は、内部ハブ２０６へ取り付けられ、そしてノードポート２９０、２９２は、内部ハブ２０８へ取り付けられている。内部ハブ拡張ポート２１８、２３６、２４６、２５６の全てのハブ間バイパスフラグがクリアされて、内部ハブ２０２〜２０８がハブ間ループに接続されると（図３Ａで示すデータ経路３００を想起のこと）、スケーラブルハブ２００へ取付けられた全ノードポートは互いに相互作用することができ、あたかも単一の通常のハブへ接続されているように、相互に透過的に利用できる。
【００３７】
内部ハブ２０２〜２０８によって形成された区分にそってスケーラブルハブ２００内に含まれるハブポートを分割するためには、内部ハブ２０２〜２０８をハブ間ループから取り外す。一度に、二つ以上のハブを除いてもよい。しかし、生成されるサブループは、ただひとつの内部ハブ、または、スケーラブルハブ内の隔離された内部ハブを減じた全ての内部ハブから構成されている。例えば、図３Ａから図３Ｅに示す構成は、好ましい実施態様の下で、可能であって適切なすべての構成である。しかし、２つの内部ハブがひとつのループを形成し、残りの内部ハブが第２のループを形成する構成は、好ましい実施態様の下で形成されないことが好ましい。この制限は、好ましい実施態様でのハブ間ループの接続の一方向性から生じる。内部ハブ拡張ポートを横切る一層複雑な相互接続を持つ別の実施態様では、サイズを変えるサブループが適切である。しかし、好ましい実施態様では、スピード、単純さ、コスト低減のために、ハブ間ループは、内部ハブ拡張ポート間で単方向接続である。結果として、個々の内部ハブがハブ間ループから除かれると、その内部ハブは隔離され、スケーラブルハブ内の他のいずれの内部ハブとも、もはや接続されていない。２つの内部ハブが同時にハブ間ループから除かれると、除かれた各内部ハブは、その内部ハブループによって画成された隔離ループへ隔離される（図３Ｃ、図３Ｄ、図３Ｅを想起のこと）。
【００３８】
上記のように、図３Ｂに示す構成では、内部ハブ拡張ポート２１８のハブ間バイパスフラグがセットされ、一方、残りの内部ハブ拡張ポート２３６、２４６、２５６のハブ間バイパスフラグはセットされず、データ経路３０２と３０４が得られる。ノードポート２３０は、隔離され、そして図２に示すようにスケーラブルハブ２００へ取り付けられた他のノードポートと通信しない。残りのノードポートは、それらの内部ハブループとハブ間ループを介して接続されているので、従来のＦＣ−ＡＬプロトコルに従って互いに通信する。図３Ｃに示す構成を考えると、データ経路３０６、３０８、３１０がもたらされ、ノードポート２３０はスケーラブルハブ２００へ接続された他のループから再び隔離される。ノードポート２７６、２７８、２８０は、ノードポート２３０を含め、スケーラブルハブ２００の他のノードポートから隔離される。しかしながら、ノードポート２７６、２７８、および２８０は、内部ハブ２０４の内部ハブループに沿って互いに通信できる。残りのノードポート２８２、２８４、２８６、２８８、２９０、２９２は、それらの内部ハブループとハブ間ループを介して接続されているので、内部ハブ２０２と２０４へ取り付けられたノードポートから隔離されるが、互いに自由に通信する。
【００３９】
内部ハブ拡張ポートのハブ間バイパスフラグのセットとリセットは、スケーラブルハブの外部から手動で制御でき、あるいは、スケーラブルハブへ導入されるデータシーケンスを経由して制御できる。さらに、内部ハブ拡張ポートは、内部ハブ拡張ポートが接続されている内部ハブ内のノードポートまたはデータチャネルの故障を検出する検出回路を備えていてもよい。このようにして、内部ハブ拡張ポートは、内部ハブをスケーラブルハブのハブ間ループから自動的に切断してもよい。
【００４０】
グレースフルデグラデーションも、好ましい実施態様のスケーラブルハブによって提供される。グレースフルデグラデーションは、スケーラブルハブのハブ間ループからの除去を必要とする内部ハブの故障時、ハブ間ループが持続し、ハブ間ループに接続された残りの内部ハブループが順に隔離されない。例えば、図２に示すスケーラブルハブ２００が、ハブ間ループへ接続された４つの内部ハブ２０２〜２０８すべてを有する場合、データ経路は図３Ａに示すデータ経路３００である。例えば、内部ハブ２０２の故障時、残りの内部ハブ２０４、２０６、２０８は、ハブ間ループへ取り付けられたままになる。好ましい実施態様のグレースフルデグラデーションの機能の下では、内部ハブ２０２の故障時、内部ハブ２０２はハブ間ループへ取り付けられた内部ハブ２０４、２０６、２０８から隔離される。ハブ間ループへ取り付けられた内部ハブ２０４、２０６、２０８は、内部ハブ拡張ポート２３６、２４６、２５６を介してそれらのハブ間ループ接続を維持する。内部ハブ２０４、２０６、２０８へ取り付けられたノードポートは、依然として自由に相互作用する。別の実施態様では、スケーラブルハブはグレースフルデグラデーションを提供しない。しかしながら、グレースフルデグラデーションなしでは、内部ハブの故障が不確定状態をもたらすことがある。起こりそうな結果は、全ての内部ハブの相互隔離である。この隔離は一般に、望ましい結果ではなく、スケーラブルハブのハブ間ループ接続によって提供される利点が損なわれる。しかしながら、そのような実施態様では、省コストが達成できる。
【００４１】
内部ハブは、セキュリティーや最適化など様々な理由で意図的に隔離することができる。スケーラブルハブが作動しながら要求によって内部ハブを隔離できることは、各内部ハブのパラレルネットワーク試験を可能とする。スケーラブルハブの好ましい実施態様でのビットをセットすることは、ポートへのケーブルの物理的な接続や切断と比べ、より簡単で効率的な手段である。内部ハブをハブ間ループから効率的に隔離し再び挿入することができるので、エラー検出、エラーソースの決定、および性能評価目的の統計的観測に関する診断目的のループ分析が改善される。
【００４２】
別の実施態様では、ハブ間バイパスフラグのセットは、診断プログラムあるいは診断回路によって自動的に制御することができる。その場合、診断プログラムは、エラー異常のソースをより効率的に隔離するため必要に応じて、スケーラブルハブ内の内部ハブを隔離することができる。
【００４３】
内部ハブの挿入と除去によって、個々のハブポートのみをバイパスするのではなくて、スケーラブルハブ内のハブポートのグループの挿入および除去を行える。さらに、ハブ間ループから除去されたハブポートは、まだ内部ハブの内部ループに接続されているので、内部ループのハブポートに限定されるループ通信を継続できる。
【００４４】
この好ましい実施態様は、より大きなスケーラブルハブ内の内部ハブのフレキシブルな配列を可能とするので、対応付けられたノードのフレキシブルなセットが、従来のＦＣ−ＡＬプロトコルの下で互いに相互作用できる。
【００４５】
本発明の様々な実施態様を説明してきた。しかし、本発明の範囲は、上記実施態様に限定されるものではなく、本願の請求の範囲によってのみ限定される。
【図面の簡単な説明】
【図１Ａ】  ハブを含む２つのループの従来技術の構成を示す図である。
【図１Ｂ】  接続されたハブを含む２つのループの従来技術の構成を示す図である。
【図２】  好ましい実施態様のスケーラブルハブを示す図である。
【図３Ａ】  好ましい実施態様のスケーラブルハブでの、ハブ間バイパスフラグのセッティングの組み合わせを変えることによってもたらされる、データ経路を示す図である。
【図３Ｂ】  好ましい実施態様のスケーラブルハブでの、ハブ間バイパスフラグのセッティングの組み合わせを変えることによってもたらされる、データ経路を示す図である。
【図３Ｃ】  好ましい実施態様のスケーラブルハブでの、ハブ間バイパスフラグのセッティングの組み合わせを変えることによってもたらされる、データ経路を示す図である。
【図３Ｄ】  好ましい実施態様のスケーラブルハブでの、ハブ間バイパスフラグのセッティングの組み合わせを変えることによってもたらされる、データ経路を示す図である。
【図３Ｅ】  好ましい実施態様のスケーラブルハブでの、ハブ間バイパスフラグのセッティングの組み合わせを変えることによってもたらされる、データ経路を示す図である。
【図１Ａ】
0003734245.tif 000002
【図１Ｂ】
0003734245.tif 000003
【図２】
0003734245.tif 000004
【図３Ａ】
0003734245.tif 000005
【図３Ｂ】
0003734245.tif 000006
【図３Ｃ】
0003734245.tif 000007
【図３Ｄ】
0003734245.tif 000008
【図３Ｅ】
0003734245.tif 000009