(57)【特許請求の範囲】
【請求項１】
ノードポートをループネットワーク内に挿入するためのハブポートであって：
ａ．ループネットワークに接続され同ループネットワークからノードポートへデータを供給する内部ハブリンク；
ｂ．ループ初期設定データを生成する、ループ初期設定データジェネレータ；
ｃ．前記ノードポートおよび前記ループ初期設定データジェネレータに接続されたループ初期設定挿入機構；を含んでなり、
前記ループ初期設定挿入機構は、ノードポートが最初に取り付けられたとき、前記内部ハブリンクを通じて同ノードポートが受信した同ノードポートからのループ初期設定シーケンスを検出するまで、同ノードポートから受信されるデータを、前記ループ初期設定データで置換えて前記ループネットワークに対し出力する；ハブポート。
【請求項２】
ハブ内のハブポートであって；
ａ．第一入力、第二入力、第三入力および制御入力を有し、同制御入力に入力される制御信号に応じて第一入力、第二入力及び第三入力に入力される信号の一つを選択してループネットワークに出力する切換え装置；
ｂ．前記切換え装置の第一入力とノードポートとの間に接続され同ノードポートからのデータを供給するライン、
ｃ．前記切換え装置の第二入力に接続されるとともに前記ノードポートにデータを供給する内部ハブリンク；
ｄ．前記切換え装置の第三入力に接続されたループ初期設定データジェネレータ；
ｅ．前記ノードポート及び前記切換え装置の制御入力に接続され、同ノードポートからの信号に応じて同切換え装置の制御入力に供給する制御信号を変更するループ初期設定データ検出回路；
を備えてなるハブポート。
【請求項３】
ループ初期設定データジェネレータが、ＬＩＰ（Ｆ７，Ｆ７）順序付けセットを生成する請求項２に記載のハブポ−ト
【請求項４】
ループ初期設定データ検出回路が、ＬＩＰ順序付けセットとＬＩＰプリミティブシーケンスを検出するＬＩＰ検出回路である請求項２に記載のハブポート。
【請求項５】
ノードポートをハブに接続するハブポートであって:
ａ．第一入力、第二入力、第三入力および制御入力を含む切換え装置；
ｂ．ハブポート伝送回路；
ｃ．前記切換え装置の第二入力および前記ハブポート伝送回路に接続されている、入ってくる内部ハブリンク；
ｄ．前記ハブポート伝送回路と前記ノードポ−トに接続されている第一データチャネル；
ｅ．ループ初期設定データ検出回路とハブポート出力制御回路を備えているハブポート受信回路；
ｆ．前記ノードポートと前記ハブポート受信回路に接続されている第二データチャネル；
ｇ．前記ハブポート出力制御回路を、前記切替え装置の制御入力に接続するハブポート出力制御ライン；
ｈ．前記ハブポート受信回路を、前記切換え装置の第一入力に接続するハブ出力ライン；
ｉ．ループ初期設定データジェネレータ；
ｊ．前記ループ初期設定データジェネレータを、前記切換え装置の第三入力に接続するループ初期設定データライン；及び
ｋ．前記切換え装置に接続された外へでる内部ハブリンク；
を備えてなるハブポート。
【請求項６】
順序付けたループの配置構成で相互に接続された複数のハブポートを備えたハブに、ノードポートを接続するためのハブポートであって：
ａ．前記ノードポートを前記ハブポートに接続するデータチャネル；
ｂ．前記ハブポートを、先行するハブポートに接続する、入ってくる内部ハブリンク；
ｃ．前記ハブポートを後続のハブポートに接続する、外にでる内部ハブリンク；
ｄ．前記データチャネルに連結されたループ初期設定データ検出回路；
ｅ．ループ初期設定データジェネレータ；および
ｆ．前記ループ初期設定データ検出回路に連結され、かつ前記外へでる内部ハブリンクを、前記データチャネル、前記入ってくる内部ハブリンクまたは前記ループ初期設定プリミティブジェネレータのうちの一つに接続するハブポート出力制御回路；
を備えてなるハブポ−ト。
【請求項７】
ノードをループネットワーク内に挿入する方法であって：
ａ．前記ノードを前記ループネットワークに接続し；
ｂ．前記ノードが生成したデータを検出し；
ｃ．前記ノードが生成したデータを、ループ初期設定データで置換え；次いで
ｄ．前記ノードから受信したループ初期設定シーケンスを検出し；
ｅ．前記ループ初期設定シーケンスの検出に応答して前記ノードを前記ループネットワーク内に挿入する；
ことを含んでなる方法。
【請求項８】
ノードポートをファイバーチャネルアービトレーテッドループネットワーク内に挿入する方法であって：
ａ．前記ノードポートを前記ファイバーチャネルアービトレーテッドループネットワークに接続し；
ｂ．前記ノードポートが生成するデータを検出し；
ｃ．前記ノードポートが生成するデータを、ＬＩＰ（Ｆ７,Ｆ７）順序付けセットで置換え；
ｄ．前記ノードポートから受信されるＬＩＰプリミティブシーケンスを検出し；
ｅ．前記ＬＩＰプリミティブシーケンスの検出に応答して前記ノードポートを前記ファイバーチャネルアービトレーテッドループネットワーク内に挿入する；
ことを含んでなる方法。
【請求項９】
ノードをループネットワークに挿入するシステムであって：
ａ.前記ノードを前記ループネットワークに接続する手段；
ｂ.前記ノードが生成するデータを検出する手段；
ｃ.前記ノードが生成するデータを、ループ初期設定データで置換える手段；
ｄ.前記ノードから受信されるループ初期設定シーケンスを検出する手段；
ｅ.前記ループ初期設定シーケンスの検出に応答して、前記ノードを前記ループネットワーク内に挿入する手段；
を備えてなるシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子ネットワークシステムに関し、さらに具体的に述べると、本発明は、新しいノードポートをループに挿入するとき、ループの初期設定（初期化）を強制することによって、ループアドレスの重複（conflict)を減らすように設計されたループネットワークのハブに関する
【０００２】
【従来の技術】
電子データシステムは、ネットワーク通信システムを用いて相互に接続されることが多い。広域のネットワークとチャネルは、コンピュータネットワークアーキテクチャのために開発された二つの方法である。従来のネットワーク（例えばＬＡＮやＷＡＮ）は、大きなフレキシビリティと比較的長い距離の通信能力を提供する。The Enterptise System Connection（ＥＳＣＯＮ）およびThe Small Computer System Interface（ＳＣＳＩ）などのチャネルは、高性能と高い信頼性を得るために開発されたものである。チャネルは一般に、コンピュータ間またはコンピュータと周辺装置間の専用の短距離接続を使用する。
【０００３】
チャネルとネットワーク両者の特徴が、“ファイバーチャネル(Fibre Channel)”として知られている新しいネットワーク標準に組み込まれて来た。ファイバーチャネルシステムは、チャネルの速度と信頼性およびネットワークのフレキシビリティと接続性を兼ね備えている。ファイバーチャネルの製品は、現在、非常に高いデータ速度、例えば２６６Ｍｂｐｓまたは１０６２Ｍｂｐｓで作動可能である。このような速度は、非圧縮、フルモーション、高品質のビデオ(uncompressed full motion high-quality video)などの全デマンディングアプリケーション(quite demanding application)を扱うのに十分な速度である。ＡＮＳＩ仕様の例えばX3.230-1994には、ファイバーチャネルネットワークが定義されている。この仕様によれば、ファイバーチャネルの機能は五つの層に配分されている。そのファイバーチャネルの五つの機能層は、ＦＣ−０層：物理的媒体層；ＦＣ−１層:コーディングおよびエンコーディングを行う層；ＦＣ−２層：実転送機構（フレーミングプロトコルおよびノード間のフロー制御を含む）；ＦＣ−３層：共通サービスの層；およびＦＣ−４層：上層のプロトコルである。
【０００４】
ファイバーチャネルネットワークを配備するのに一般に３種の方法がある。すなわち単純なポイントツーポイント接続；アービトレーテッドループ(arbitrated loop)、および交換ファブリック(switched fabric)である。最も簡単なトポロジィは、ポイントツーポイントの配置構成であり、この場合、二つのファイバーチャネルシステムが、単純に、直接、接続されている。アービトレーテッドループは、アービトレーションによって、帯域幅に対する共用アクセスを提供するファイバーチャネルリングの接続である。交換ファイバーチャネルネットワーク（“ファブリック”と呼称されている）はクロスポイント交換(cross-point switching)の形態である。
【０００５】
通常のファイバーチャネルアービトレーテッドループ（“ＦＣ−ＡＬ“）のプロトコルは、装置またはループセグメントをノードポートによって相互接続する際のループ機能に関するプロトコルである。しかしノードポートを直接、相互接続することは、一つのループ内の一つのノードポートが故障すると、一般に全ループが故障するという点が問題である。この難点は、従来のファイバーチャネルのテクニックにおいては、ハブを使用することによって克服される。ハブは、ループトポロジーで相互に接続されたいくつものハブポートを有している。ノードポートは、ハブポートに接続され、中央のハブとスタートポロジーを形成している。ノードポートに接続されていないかまたは故障したノードポートに接続されているハブポートはバイパスされる。このように、前記ループは、ノードポートが取り外されているかまたは故障されるかにかかわらず維持されるようになっている。
【０００６】
さらに詳しく述べると、図１Ａは通常のループの配置構成１００を示す。ノードポートとノードポートとが接続された四つのノードポート１０１、１０２、１０４、１０６が示されている。各ノードポートは、装置または別のループへの接続部を表している。データがノードポート１０１からノードポート１０２へ伝送されるように、ノードポート１０１がノードポート１０２に接続されている。ノードポート１０２は順にノードポート１０４に接続され、そしてノードポート１０４は順にノードポート１０６に接続されている。ノードポート１０６は、最初のノードポートすなわちノードポート１０１に接続されている。このようにして、ループのデータ経路、すなわちノードポート１０１からノードポート１０２、ノードポート１０４、ノードポート１０６へ次いでノードポート１０１へ戻るループのデータ経路が樹立されている。
【０００７】
図１Ｂは、ノードポート１０８、１１０、１１２、１１４が、中央のハブ１１６によって、物理的スタートポロジーに編成されているループ１０７を示す。ノードポート１０８はハブ１１６内のハブポート１１８に接続され、同様にノードポート１１０、１１２および１１４は、それら自体それぞれのハブポート１２０、１２２および１２４に接続されている。ハブ１１６内はループになっており、ハブ１１６のハブポート１１８〜１２４が、図１Ａに示す通常のループ配置構成に類似のループのデータ経路を形成している。
【０００８】
ループネットワークの中心要素としてハブを使用すると、一つ以上のハブポートがノードポートに接続されていないとき、または一つ以上のハブポートが故障したノードポートに接続されているときでも、このようなハブポートをバイパスすることによって作動(operation)可能となる。各ハブポートは一般に、ハブポートにバイパスモードを提供する回路系を備えている。ハブポートがバイパスモードの場合、そのハブポートが、ループの前のハブポートから受信したデータは、同ループの次のハブポートに直接送られる。
【０００９】
ハブを使用することの追加の利点は、ノードポートを熱間挿入できる(hot insertable)ことである。熱間挿入できるという機能によって、全ループまたはハブをパワーダウンし次いで再びリスタートすることなしに、ノードポートをループに挿入し、及びループから取り出すことができる。しかし、この熱間挿入が可能なため、ループに取り付けられるノードポートのアドレスは、必ずしも適正に維持されない。
【００１０】
ＦＣ−ＡＬプロトコル下で、ループの初期設定プロセスを利用して、ループに接続されている各ノードポートに、固有のアドレス(アービトレーテッドループ物理アドレス(Arbitrated Loop Physical Address)（“ＡＬ＿ＰＡ “）と呼称される)を付与する。ループの初期設定は、ＦＣ−ＡＬプロトコル下、ループ初期設定プリミティブ（“ＬＩＰ“）順序付けセット（Loop Initialization Primitive（”ＬＩＰ）ordered set）のシーケンスを生成する事によって、呼び出される。熱間挿入することができないループの場合、ノードポートの挿入または取り出しを行った後、ループ全体がリスタートされ、再び初期設定がなされる。熱間挿入可能なループの場合、ループは、必ずしもリスタートされないので、（ノードポートの）各挿入または取外しごとに、必ずしも再初期設定は行われない。その結果、新しいノードポートがループに挿入されるとき、固有のアドレスは、そのループが再び初期設定されないならば、必ずしも生成されない。
【００１１】
さらに、ハブポートは、他のハブのハブポートに接続できる。ハブが、一つのハブから別のハブに、ハブポートを通じてリンクされると、ハブは、特に休止ハブの場合（すなわち、挿入時にループトラヒックが全くない場合）、挿入時に、初期設定ルーティンを適正に開始しないことがしばしばある。この時点で、第一ハブのノードポートと第二ハブのノードポートとの間にアドレス重複が起こる可能性がある。
【００１２】
このようなアドレス重複の問題を図２Ａと２Ｂに例示する。図２Ａに示すように、四つのノードポートＡ１、Ｂ１、Ｃ１、Ｄ１がハブ２００にリンクされている。三つのノードポートＡ２，Ｂ２，Ｃ２がハブ２０２に接続されている。番号１と２は、例示しているだけであり、事実、各ノードポートのアドレスはやはり文字のＡ、Ｂ、ＣまたはＤで表されている。この時点で、各ノードポートは、それ自身のループ内に、固有のアドレスをもっている。しかし、ハブ２００と２０２が、図２Ｂに示すように連結されると、これらノードポートのアドレスは、もはや必ずしも固有のものではない。図２Ｂに示す単一ループでは、二つのノードポートがアドレスＡを有し、二つのノードポートがアドレスＢを有し、そして二つのノードポートがアドレスＣを有している。アドレス重複が検出されると、初期設定のシーケンスを開始するエラーが発生し、結局、各ノードポートに固有のアドレスがもたらされる。しかし、その重複（矛盾）が検出される前は、不適当なノードポートによって受信されるメッセージは通過し続け、その結果、データの破壊 (data corruption)をもたらす可能性がある。
【００１３】
例えば図２Ａに示す状態の場合、ノードポートＢ１がデータをノードポートＡ１に送ると、ハブポートが隣接しているので、ノードポートＡ１は恐らく、エラーなしで、ノードポートＢ１からのデータを受信する。図２Ｂに示すように、ノードポートＢ１からノードポートＡ１への接続は、アドレス重複を生じることなく開始することができる。というのは、Ｂ１からのメッセージは、ノードポートＢ２がアービトレーテイング(arbitrating)しなかった限り、該ループにそってノードポートＡ１すなわち目的とする行き先にうまく達するからである。
【００１４】
しかし、ノードポートＡ１が、ノードポートＢ１にデータを送ろうとすると、データ破壊が起こることがある。図２Ａに示す状態の場合、上記データは、ノードポートＡ１から、ノードポートＣ１を通り、ノードポートＤ１を通り次いでノードポートＢ１すなわち目的とする行き先に送られる。しかし、図２Ｂに示す状況の場合、データは、ノードポートＡ１からノードポートＣ１を通り、ノードポートＤ１を通り、ハブ２００とハブ２０２を接続するハブポートを通り、ノードポートＣ２を通り次いでノードポートＢ２に受信される。上記のように、数字は、ハブ２００からのノードポートとハブ２０２からノードポートの違いだけを示している。ノードポートＡ１からみて、ノードポートＢ２は、ノードポートＢ１と区別できない。ノードポートＡ１は、ノードポートＢにアドレス指定されたデータを送る。同様に、ノードポートＢ２は、ノードポートＢにアドレス指定されているデータを受け入れる。したがって、ノードポートＡ１は、前記データがノードポートＢ１によって受信されることを意図しているにもかかわらず、ノードポートＢ２が、ノードポートＢにアドレス指定されたデータを受信する。したがって“Ｂ”は固有のアドレスではない。ノードポートＡ１またはノードポートＢ２は、ノードポートＢ２またはノードポートＡ１が存在していることに気付いていない。その結果、入ってくるトランザクションの性質によっては、データコラプションが起こることがある。ある時点で、固有のエラーが生じて、初期設定シーケンスになることがある。しかし、それは遅すぎて、不要のデータコラプションを防止したりまたは該コラプションから回復できないことがある。
【００１５】
本発明の発明者らは、データコラプションが起こる前に、ループを強制的に初期設定させることによって、新しいノードポートまたは新しいハブをループの中に挿入したときに、固有のアドレスを提供できるループネットワークハブを提供することが望ましいと決定した。
【００１６】
【発明の概要】
好ましい実施態様のループネットワークハブは、ループ初期設定挿入機構を有するハブポートを備えている。そのループ初期設定挿入機構は、新しい接続を検出するハブポートに、ループ初期設定データの生成を自動的に開始させる。ハブポートは、そのハブポートがループ初期設定シーケンスを受信するまで、ループ初期設定データを生成し続ける。該ループ初期設定データは、ハブのループに伝播して、通常の処理を停止する。このように、ループ全体がクリアされる。ループ初期設定シーケンスを受信すると、ループ初期設定データを生成するハブポートは、そのループ初期設定データを送ることを停止して、新しいノードポートをループに挿入する。この時点で、ループの初期設定が始まり、そしてループネットワーク内の各ノードポートが、固有のループネットワークアドレスを得る。
【００１７】
ＦＣ−ＡＬの実施態様では、好ましい実施態様のハブは、ＬＩＰ挿入機構を有するハブポートを備えている。前記ループ初期設定挿入機構は、新しい接続を検出するハブポートに、ＬＩＰ（Ｆ７,Ｆ７）順序付けセット(ordered set)の生成を自動的に開始させる。前記ハブポートは、そのハブポートがＬＩＰプリミティブシーケンスを受信するまで、ＬＩＰ（Ｆ７,Ｆ７）順序付けセットを生成し続ける。そのＬＩＰプリミティブシーケンス(LIP primitive sequence)は、三つの連続した同一のＬＩＰ順序付けセットを含んでいる。そのＬＩＰ（Ｆ７，Ｆ７）順序付けセットはハブのループに伝播し、通常の処理を停止する。このようにしてループ全体がクリアされる。ＬＩＰプリミティブシーケンスを受信すると、ＬＩＰ（Ｆ７，Ｆ７）順序付けセットを生成するハブポートは、ＬＩＰ（Ｆ７，Ｆ７）順序付けセットの挿入を停止し、次に新しいノードポートをループに挿入する。この時点で、ループの初期設定が始まり、次いで各ノードポートは、公知のＦＣ−ＡＬプロトコルにしたがって、固有の物理アドレス（アービトレーテッドループ物理アドレス“ＡＬ＿ＰＡ“）を得る。
【００１８】
【発明の実施の形態】
好ましい実施態様は、ノードポートをループネットワークに挿入したとき、ループの初期設定を強制する機構を提供する。本発明を、その好ましい実施態様の例示として、ファイバーチャネルアービトレーテッドループ(Fibre Channel Arbitrated Loop)（“ＦＣ−ＡＬ”）との関連において以下に説明する。しかし、本発明は、ＦＣ−ＡＬネットワークと類似の特性を有するネットワークに適用する事ができる。
【００１９】
ループネットワークのループ作動の概要を、図３に示す配置構成を参照して以下に述べる。図３は六つのハブポート３０２、３０４、３０６、３０８、３１０および３１２を有するハブ３００を示す。各ハブポートは、内部ハブループを形成する単方向内部ハブリンクによって、他のハブポートに接続されている。図３において、データは、ハブポート３０２からハブポート３０４へ、したがって左回りで流れる。あるいは、これらハブポートは、ループのトポロジーが維持される限り、データが右回りで流れるように接続することができる。
【００２０】
三つのハブポート３０２、３１０、３１２に対し、三つのノードポート３１４、３１６、３１８が取り付けられている。ノードポート３１４がハブポート３０２に取り付けられ、ノードポート３１６がハブポート３１２に取り付けられ、そしてノードポート３１８がハブポート３１０に取り付けられている。各ノードポートは、ハブポートに、以下の二つのデータチャネルによって取り付けられることが好ましい。一方のデータチャネルはデータをハブポートからノードポートへ送り、もう一方のデータチャネルはデータをノードポートからハブポートへ送る。したがってデータチャネルは、データを、ハブポート３０２からノードポート３１４に運び、もう一つのデータチャネルがデータをノードポート３１４からハブポート３０２に運ぶ。ノードポート３１４から出てノードポート３１６によって受信されるデータは、ノードポート３１４からデータチャネルを通ってハブポート３０２に至り、次にハブポート３０２からハブポート３０４に、次にハブポート３０６に、ハブポート３０８に、ハブポート３１０に到達する。ノードポート３１８が、当該ループ内で作動している場合、そのデータはデータチャネルを通ってノードポート３１８に至り、次いでデータチャネルを通ってハブポート３１０に戻り、次いでハブポート３１２に至る。そのデータは、ハブポート３１２からのデータチャネルを通過して、ノードポート３１６で受信される。
【００２１】
好ましい実施態様で、ループ内の前のハブポートからハブポートに入ってくるデータは、そのハブポートに接続されているノードポートがあるならば、そのノードポートに送られる。そのハブポートがバイパスモードの場合、前記入ってくるデータは、入ってくるデータに応答してノードポートからのデータを含まずに、前記ハブポートから、ループ内の次のハブポートに直接送られる。好ましい実施態様は、図４を参照して以下に説明するように、マルチプレクサなどのような切換え装置を使用して、上記バイパスを達成する。その上に、取り付けられたノードポートは、ハブポートから受信したデータが、そのノードポートにアドレスされているか否かを認識し、次いで適切に応答する。上記バイパスは該ハブポート内で達成されるが、該ノードポート内では達成されない。したがって、該ループはノードポートの故障から保護される。ノードポートが取り付けられていないハブポート、例えば図３に示すハブポート３０４、３０６または３０８は、常にバイパスモードであり、データを次のハブポートに直接送る。このように、ハブポート３０４が受信するハブポート３０２からの信号は、ハブポート３０６に直接送られる。ノードポートが取り付けられているハブポート、例えば図３に示すハブポート３１０、３１２または３０２が、ループの前のハブポートからデータを受信すると、そのハブポートはそのデータを、取り付けられているノードポートに送る。そのノードポートは、適切に応答し、次いで、そのデータを該ハブポートに戻す。
【００２２】
例えば、ノードポート３１８からノードポート３１４にアドレスされているデータは、ノードポート３１８からハブポ−ト３１０に流れ、次にハブポート３１２に流れる。ハブポート３１２は、ノードポート３１６がバイパスされていないならば、データをノードポート３１６に送る。ノードポート３１６は、データがノードポート３１６にアドレスされていないことを認識してそのデータをハブポート３１２に戻す。ハブポート３１２はそのデータをハブポート３０２に送る。ハブポート３０２は、ノードポート３１４がバイパスされていないならば、該データをノードポート３１４に送る。ノードポート３１４は、該データがノードポート３１４にアドレスされていることを認識して、適切に応答する。
【００２３】
図４は、好ましい実施態様によるハブポートの内部要素を示す。図４に示すハブポート４００は、図３に示すハブポート３０２、３０４、３０６、３０８、３１０および３１２と等価のハブポートである。入ってくる内部ハブリンク４０２が、ループ内の前のハブポート（図示せず）からハブポート４００に入っている。入ってくる内部ハブリンク４０２はハブポート伝送回路４０４に接続されている。したがって、前のハブポートからのデータは、内部ハブリンク４０２にそってハブポート４００に入り、次にハブポート伝送回路４０４内に入る。ハブポート伝送回路４０４は、受信された前記データを、ノードポート４０８によって利用可能な形態に変換した後、データチャネル４０６を介して、ノードポート４０８に送り出す。あるいは、データチャネル４０６は、異なるハブの中のハブポートに接続され、ハブとハブを相互に接続することができる。
【００２４】
ノードポート４０８は、データを、データチャネル４１０を介してハブポート４００に出力する。データチャネル４１０はハブポート受信回路４１２に接続されている。ハブポート受信回路４１２は、ノードポート４０８から受信したデータを、ハブ内で利用可能な形態に変換する。一実施態様で、ハブポート受信回路４１２は、データをシリアルからパラレルに変換し、次いでそのデータをデコードする。また、ハブポート受信回路４１２は、ループ初期設定データ検出回路４１４とハブポート出力制御回路４１６も備えている。ＦＣ−ＡＬの実施態様において、ループ初期設定データ検出回路４１４はＬＩＰ検出回路である。ハブポート受信回路４１２は、データを、ハブポート出力ライン４１８を介して出力する。ハブポート出力制御回路４１６は、制御信号を、ハブポート出力制御ライン４２０を介して出力する。ハブポート出力ライン４１８は、切換え装置４２２、例えばマルチプレクサの第一入力Ａに接続されている。入ってくる内部ハブリンク４０２は切換え装置４２２の第二入力Ｂに接続されている。ループ初期設定データジェネレータ４２４は、ループ初期設定データを生成し、これらデータの順序付けセットを、ループ初期設定データライン４２６に出力する。ＦＣ−ＡＬの実施態様で、ループ初期設定データジェネレータ４２４はＬＩＰジェネレータであり、ＬＩＰ（Ｆ７，Ｆ７）順序付けセットを生成する。ループ初期設定データライン４２６は、切換え装置４２２の第三入力Ｃに接続されている。ハブポート出力制御ライン４２０は切換え装置４２２の制御入力に接続されている。このように、切換え装置４２２は、ハブポート出力制御回路４１６が生成する制御信号に応じて出力すべき単一の入力Ａ、ＢまたはＣを選択する。切換え装置４２２の出力は出ていく内部ハブリンク４２８へ送られる。出ていく内部ハブリンク４２８は、内部ハブリンク４０２がハブポート４００内に入って、図３に示すようなループを生成するのと同じ方式で、ハブ内の次のハブポートにデータを送る。
【００２５】
装置がハブ４００に取り付けられていない場合、ハブポート出力制御回路４１６は、ハブポート４００を、バイパスモードに保持する。切換え装置４２２の入力Ｂを選択することによって、前のハブポートから受信された入ってくる内部ハブリンク４０２上のデータが、出ていく内部ハブリンク４２８に出力される。バイパスモードでは、入ってくる内部ハブリンク４０２上のデータは、切換え装置４２２の入力Ｂに入り、そして変更されずに、出ていく内部ハブリンク４２８に出力されて、ループ内の次のハブポート（図示せず）に送られる。
【００２６】
しかし、ノードポート４０８で表される、例えばＦＣ−ＡＬ  ＮＬ＿ポートまたはループセグメントなどの操作装置がハブポート４００に取り付けられると、ハブポート受信回路４１２が受信したノードポート４０８からの信号は、出ていく内部ハブリンク４２８を介して次のハブポートに送られる。データを、ハブポート受信回路４１２から出ていく内部ハブリンク４２８に送るため、ハブポート出力制御回路４１６は、切換え装置４２２の入力Ａを、ハブポート出力制御ライン４２０を通じて選択する。
【００２７】
従来のＦＣ−ＡＬハブポートの場合、一般に、操作装置を、ノードポート４０８に最初に取り付けたとき、ハブポート受信回路４１２が、ノードポート４０８からのデータの受信を検出して、バイパスモード（切換え装置４２２の入力Ｂが選択される）を終了する。ノードポート４０８から受信されたデータは、切換え装置４２２の入力Ａを選択することによって、ループに挿入される。ハブポート受信回路４１２が受信したノードポート４０８からのデータは、出ていく内部ハブリンク４２８を通じて、次のハブポートへ直ちに送られる。しかし、先に考察したように、新しい装置またはハブのループ内へのこのような直ちの挿入は、アドレス重複を起こして望ましくないデータ破壊をもたらすことがある。
【００２８】
この難点を克服するために、好ましい実施態様は、ループ初期設定挿入機構を提供する。操作装置またはハブがハブポート４００に取り付けられると、ハブポート受信回路４１２は、以前はデータが全くなかったデータチャネル４１０を通じて定様式データの受信を検出することによって、前記新しい装置またはハブを検出する。ノードポート４０８からのデータは、ハブポート出力ライン４１８を通じて、出ていく内部ハブリンク４２８に、直ちに送られずに、ハブポート出力制御回路４１６は、切換え装置４２２の入力Ｃを選択する。ループ初期設定データジェネレータ４２４は、新しい装置またはハブが取り付けられたことを、ループ内の他のハブポートに示すループ初期設定のデータの一定の流れを生成する。ループ内の他のハブポートは、ループ初期設定シーケンスを受信すると、そのシーケンスを送り出す。ループ初期設定シーケンスはループ初期設定データの指定された組合せである。ＦＣ−ＡＬの実施態様において、ＬＩＰプリミティブシーケンスは、同じタイプの連続の同一ＬＩＰ順序付けセット三つで構成されている。このように、ループのトランザクションの処理が停止し、次いで、各ハブポートが、ループ初期設定データの送り出しすなわち生成を開始する。ループ初期設定データジェネレータ４２４は、好ましくはループネットワークに対して適切なフレームシーケンスと協調して、ループ初期設定データを繰り返し生成する。
【００２９】
ハブポート出力制御回路４１６は、ループ初期設定データ検出回路４１４が、ノードポート４０８から受信したループ初期設定シーケンスを検出するまで、ハブポート切換え装置４２２の入力Ｃを選択し続ける。ノードポート４０８は、先に述べたように、入ってくる内部ハブリンク４０２からの信号を、ハブポート伝送回路４０４を通じて受信する。切換え装置４２２の入力の選択は、ノードポート４０８によるデータの受信に影響しない。というのは、切換え装置４２２は、ハブポート４００のループへの出力を制御し、ループからの入力を制御しないからである。
【００３０】
ＦＣ−ＡＬの実施態様で、ループ初期設定データはＬＩＰ（Ｆ７，Ｆ７）順序付けセットである。これらのＬＩＰ（Ｆ７，Ｆ７）順序付けセットは、好ましくは、ＦＣ−ＡＬプロトコルに準拠した形態（K28.5 D21.0 D23.7 D23.7）である。
【００３１】
このように、ループの前のポート（この同じポートということもあり得る）から生成したループ初期設定シーケンスは、入ってくる内部ハブリンク４０２上のハブポート４００に入り、次いで、ハブポート伝送回路４０４を通じて、ノードポート４０８に送られる。ノードポート４０８は、上記ループ初期設定シーケンスをハブポート受信回路４１２に送る。ループ初期設定データ検出回路４１４が上記ループ初期設定シーケンスを検出する。かようなループ初期設定シーケンスが検出されると、ハブポート出力制御回路４１６は、切換え装置４２２の入力Ｃの選択から、切換え装置４２２の入力Ａの選択への切換えを行う。この時点で、ループ初期設定手続きが、適当なネットワークプロトコルにしたがって始まる。
【００３２】
ＬＩＰ検出回路４１４は、ＬＩＰプリミティブシーケンス（必ずしも同じＬＩＰ（Ｆ７，Ｆ７）プリミティブシーケンスではない）を検出すると、肯定検出信号（affirmative detection signal）を生成する。検出されるＬＩＰプリミティブシーケンスは、新しい装置またはハブを検出してＬＩＰ（Ｆ７，Ｆ７）順序付けセットの生成を最初に開始したハブポートと同じハブポートからのシーケンスである必要はない。
【００３３】
ループ初期設定データを生成するハブポート以外のハブポートにあっては、ノードポートがループ初期設定データをハブポートから受信したとき、そのノードポートは上記ループ初期設定データのいくらかを上記ハブポートに戻す。好ましい実施態様で、該ハブポートはノードポートからのデータを（図４に示す切換え装置の入力Ａを選択することによって）送り出す。
【００３４】
したがって、既存のハブに新しい操作装置または新しいハブが取り付けられると、ループ初期設定が強制される。好ましい実施態様で、ループ初期設定シーケンスが生成し伝播すると、通常のループ作動が停止して、ループの初期設定が始まる。上記のように、ループの初期設定は、新しい装置を接続する際または第二ループを第一ループに接続する際に行われることが望ましい。というのは、ループ初期設定のプロセスは、ＦＣ−ＡＬプロトコルなどのネットワークプロトコルのもとで、新しく確立されたループ上の各装置に固有の物理アドレスを割り当てるのに確実な方法だからである。
【００３５】
図５Ａと５Ｂは、好ましい実施態様にしたがって、ループ内に操作装置を挿入する実施例を示す。図５Ａは、新しい装置を挿入する前のループと要素を示す。ハブ５００は四つのハブポート５０２、５０４、５０６、５０８を有している。図５Ａに示すように、ハブ５００は四つしかハブポートをもっていないが、ハブは四つを超えるかまたは四つ未満のハブポートを有していてもよい。図５Ａに示すハブポートの数は、例示だけを目的とする数である。ハブポート５０２、５０４、５０６、５０８は、内部ハブリンクによって互いに接続されてループを形成している。二つのノードポート５１０、５１２がそれぞれ、ハブポート５０２、５０８に取り付けられている。ノードポート５１０からノードポート５１２に向かうデータは、データチャネルを通じてハブポート５０２に流入する。ハブポート５０２は、上記データを、内部ハブリンクにそって、ハブポート５０４に出力する。ハブポート５０４には操作装置が取り付けられていないので、バイパスモードになっている。したがって、ハブポート５０４はハブポート５０２からのデータを、内部ハブリングにそってハブポート５０６に送る。ハブポート５０６もバイパスモードになっているので、上記データを内部ハブリンクを通じてハブポート５０８に送る。ハブポート５０８は、ノードポート５１２に操作装置が取り付けられているのでバイパスモードではない。同様に、ノードポート５１２からノードポート５１０に送られるデータはデータチャンネルを通じてハブポート５０８に至り、次いで内部ハブリンクにそってハブポート５０２に至る。ハブポート５０２は、前記データを、データチャネルにそってノードポート５１０に送る。このように、ハブポート５０２〜５０８とハブ５００は、ループトポロジィを維持するように作動する。
【００３６】
ノードポート５１４に取り付けられる新しい装置を挿入すると、図４について先に述べたプロセスが進行する。ノードポート５１４はハブポート５０４に取り付けられている。ハブポート５０４は、特定のデータ構成でハブポート５０４に入ってくるデータが存在していることから新しいノードポート５１４を検出する。ハブポート５０４は、ノードポート５１４を検出すると、ノードポート５１４からのデータをすぐには送らない。ハブポート５０４は、タイミングとフレームを、ノードポート５１４からのデータと同期化させて、ノードポート５１４の適正な作動を確認する。上記のように、ハブポート５０４は、ループ初期設定データジェネレータに対応するハブポート５０４の中の切換え装置の入力を選択することによって、ループ初期設定データ（例えば、ＬＩＰ（Ｆ７，Ｆ７）順序付けセット）を、内部ハブリンクにそって送り始める。上記ループ初期設定データが内部ハブリンクにそってハブポート５０６に至る。
【００３７】
ハブポート５０６は、ノードポートがハブポート５０６に取り付けられていないので、バイパスモードである。したがって、前記ループ初期設定データは、内部ハブリンクにそって、ハブポート５０８に至る。
【００３８】
ハブポート５０８は、ノードポート５１２がすでにバイパスされていない場合、ループ初期設定データをノードポート５１２に送る。ノードポート５１２に取り付けられた操作装置は、好ましくは、前記ループ初期設定データに応答し、次いでノードポート５１２は、該ループ初期設定データをハブポート５０８に戻す。ノードポート５１２に取り付けられた操作装置は、前記ループ初期設定データに対して適正な応答を生成するので、好ましい実施態様においては、ハブポート５０８は、ノードポート５１２から受信した信号を選択して、ハブ５００の内部ハブリンクにそって送る。ハブポート５０８などのハブポートは、ノードポートを通じて操作装置に取り付けられているが、図４に示すようなハブポート切換え装置の入力Ａを選択することによって、そのノードポートから受信されるループ初期設定データを送る。したがって、上記ループ初期設定データは、好ましくは、内部ハブリンクにそって、次のハブポートに送られる。
【００３９】
図５Ｂに示すように、ハブポート５０８は、ループ初期設定データを、ハブポート５０２に送る。ハブポート５０２にもノードポート５１０で表される操作装置が取り付けられているので、ハブポート５０２はハブポート５０８と類似のプロセスを踏襲する。したがって、ループ初期設定データはハブポート５０２からハブポート５０４に至る。
【００４０】
ハブポート５０４は、上記ループ初期設定データを受信して、ノードポート５１４がまだバイパスされていない場合、そのループ初期設定データをノードポート５１４に伝送する。ノードポート５１４は、ノードポート５１２や５１０と同様に、上記ループ初期設定データをハブポート５０４に戻す。ハブポート５０４のハブポート受信回路内のループ初期設定データ検出回路（図４に示す４１４）は、上記ループ初期設定データを検出する。ハブポート５０４は、ループ初期設定シーケンスが受信されたとき、ループ初期設定データの出力を停止する。この場合、ハブポート５０４は、ハブポート５０４で生成したループ初期設定シーケンスを受信していたかもしれない。しかし上記のように、ハブポート５０４は、任意のソース（起源）からのループ初期設定シーケンスを検出すると、ループ初期設定データの出力を停止する。ＦＣ−ＡＬの実施態様では、ハブポートは、任意のタイプのＬＩＰプリミティブシーケンスを検出すると、ＬＩＰ（Ｆ７，Ｆ７）順序付けセットの出力を停止する。別の実施態様では、ハブポート伝送論理回路（hub port transmit logic）は、内部ハブリンクにそって受信されるループ初期設定シーケンスを検出して、接続されているノードポートからの応答を必ずしも待たない。何れの場合でも、ハブポート５０４は、（図４に示すように切換え装置の入力Ｃを選択することにより）ループ初期設定データを出力することから、適当なネットワークプロトコルによって規定（定義）されるループ初期設定手続きへ切換える。
【００４１】
図６Ａと６Ｂは、一つのハブループの第二のハブループへの接続を示す。一般に、このプロセスは、新しい操作装置を、単一のハブループに挿入する図５Ａと５Ｂに示すプロセスと類似している。
【００４２】
図６Ａは、六つのハブポート６０２、６０４、６０６、６０８、６１０、６１２を有する第一ハブ６００を示す。三つのノードポート６１４、６１６および６１８がそれぞれ、ハブポート６０２、６０４および６０６に接続されている。また第二ハブ６２０も六つのハブポート６２２、６２４、６２６、６２８、６３０、６３２をもっている。三つのノードポート６３４、６３６および６３８がそれぞれ、三つのハブポート６２２、６２４および６２６に接続されている。各ハブのハブポートは、一つのループ内で接続されている。
【００４３】
図６Ｂは、ハブ６００のハブ６２０への接続を示す。一対のデータチャネルが、ハブポート６０８をハブポート６３２に接続している。一方のデータチャネルが、データをハブポート６０８からハブポート６３２に運ぶ。もう一つのデータチャネルが、データをハブポート６３２からハブポート６０８に運ぶ。このように、二つの別個のハブに含まれている二つのループが連結されて単一のループを形成する。ハブポート間の新しい循環のデータ経路は以下のパターンをもっている。すなわちハブポート６０８→６１０→６１２→６０２→６０４→６０６→６０８に戻る、次に→ハブポート６３２→６２２→６２４→６２６→６２８→６３０→６３２に戻り、次いで→ハブポート６０８に戻ってサークルを完了するパターンである。データがハブポート６０６からハブポート６０８に入ると、データはハブポート６０８の伝送回路を通過し（図４参照）、次いで、データチャネルを通じてハブポート６３２に至る。データは、ハブポート６０８の受信回路にまだ入っておらず、また、データがハブポート６３２から戻るまでハブポート６０８の受信回路に入らない。このように、データは二つのハブを通じて循環パターンで流れ、そして、以前は物理的に別個であった二つのループが事実上一つのループとして作動する。
【００４４】
しかし、一方のハブを別のハブに接続すると、図２Ａと２Ｂについて先に述べたように、アドレス重複と望ましくないデータ破壊が起こる可能性がある。好ましい実施態様によって提供されるループ初期設定挿入機構は、この問題を克服して、ループの初期設定を強制する。ハブポート６０８は、適正にフォーマットされたデータを新たに受信することによって、ハブ６２０のハブポート６３２への接続を検出する。ハブポート６３２が検出されると、ハブポート６０８は、新しい装置を検出するための上記ように定められた手続きを踏襲する。ハブポート６０８は、ハブポート６０８の内部のループ初期設定データジェネレータを選択し、次いでハブループにそってループ初期設定データを出力する。したがって、ループ初期設定データは、ハブポート６０８からハブポート６１０に至る。ハブポート６１０にはノードポートが取り付けられていないので、バイパスモードである。ハブポート６１０は、ループ初期設定データを次のハブポートに送り、そしてそのプロセスは、図５Ｂについて先に述べたように続く。同様にハブポート６３２は、ハブ６００のハブポート６０８への接続を検出する。したがって、ハブポート６３２は、ハブポート６３２の内部のループ初期設定データジェネレータを選択して、ループ初期設定データを、ハブ６２０のハブループに出力する。
【００４５】
したがって、ハブポート６０８と６３２は各々、ループにそって送られているループ初期設定データを生成している。ハブポート６０８からのループ初期設定データは、ハブポート６０８から→６１０→６１２→６０２→ノードポート６１４（ノードポート６１４がバイパスされていない場合）→ハブポート６０２→６０４→ノードポート６１６（ノードポート６１６がバイパスされていない場合）→ハブポート６０４→６０６→ノードポート６１８（ノードポート６１８がバイパスされていない場合）→ハブポート６０６次いで６０８に戻る。しかし好ましい実施態様においては、この時点で、ハブポート６０８はループ初期設定データを検出しない。なぜならば、ハブポート６０８のループ初期設定データ検出回路は、ハブポート６０８のハブポート受信回路内にあるからである。ハブポート６０６から内部ハブリンクにそって受信されるループ初期設定データは、ハブポート６０８のハブポート伝送回路内にある。したがって、ループ初期設定データはハブポート６３２に至る。ハブポート６３２は、そのハブポート受信回路で、そのループ初期設定データを受信し、次いで、そのループ初期設定データを、そのループ初期設定データ検出回路を使用して検出する。ハブポート６３２が、この場合、ハブポート６０８が生成したループ初期設定データから、ループ初期設定シーケンスを検出したとき、ハブポート６３２は、ループ初期設定が進行するように、ハブポート６３２の内部の切換え装置の入力の選択を変更する。ループ初期設定データジェネレータを選択することによってハブポート６３２の内部に達成されたバイパスが終了して、ループ初期設定が始まる。
【００４６】
同様に、ハブポート６０８は、ハブポート６３２が生成するループ初期設定データを受信する。このデータは、ハブ６２０内部ハブリンクにそって結局ハブポート６３２からハブポート６０８に至る。ハブポート６０８のハブポート受信回路内のループ初期設定データ検出回路が、ループ初期設定シーケンスを検出し、バイパスを終了し、次いで標準のＦＣ−ＡＬプロトコルにしたがってループ初期設定処理を開始する。したがって、ハブポート６０８と６３２の両者が、ループ初期設定処理を開始する。ループ初期設定の処理は、ＦＣ−ＡＬプロトコルなどのネットワークのプロトコルにしたがって、従来どおりに理解され、また定められる。その上、この技法は、相互に連結されているハブのうち一つが通常のハブであっても、ループ内の少なくとも一つのハブが本発明にしたがって作動する限り、やはり有効である。
【００４７】
本発明の各種実施態様を図面を参照して説明してきたが、本発明の範囲はここに提供された説明によって限定すべきではなく、本願の特許請求の範囲によってのみ限定される。また、特許請求の範囲の範囲内に入る別の実施態様は、当業技術者にとって明らかであろう。
【図面の簡単な説明】
【図１Ａ】  ノードポートからノードポートへとつながる従来技術のループを示す。
【図１Ｂ】  ハブを含む従来技術のループを示す。
【図２Ａ】  二つの別個の従来技術のループを示す。
【図２Ｂ】  単一のループを生成させるために接続された従来技術の二つのループを示す。
【図３】  ハブを含むループを示す。
【図４】  好ましい実施態様によるハブポートのブロック図である。
【図５Ａ】  二つのノードポートを有するハブを示す。
【図５Ｂ】  三つのノードポートを有するハブを示す。
【図６Ａ】  ハブを含む二つの別個のループを示す。
【図６Ｂ】  ハブポートで接続されたハブを含む二つのループを示す。
【図１Ａ】
0003779544.tif 000002
【図１Ｂ】
0003779544.tif 000003
【図２Ａ】
0003779544.tif 000004
【図２Ｂ】
0003779544.tif 000005
【図３】
0003779544.tif 000006
【図４】
0003779544.tif 000007
【図５Ａ】
0003779544.tif 000008
【図５Ｂ】
0003779544.tif 000009
【図６Ａ】
0003779544.tif 000010
【図６Ｂ】
0003779544.tif 000011