(57)【要約】【課題】単一のＳＡＳエクスパンダとして動作する複数のＳＡＳエクスパンダのためにパスフェールオーバーを提供するための方法【解決手段】第１のＳＡＳエクスパンダとデバイスとの間の障害リンクが検出される。障害リンクを通じてデバイスに接続される第１のＳＡＳエクスパンダによるデータ転送が、有効リンクを通じてデバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングされる。第１のＳＡＳエクスパンダは、エクスパンダ間通信のための第１のＳＡＳエクスパンダの物理ポート及び第２のＳＡＳエクスパンダの物理ポートを通じて第２のＳＡＳエクスパンダに接続される。【選択図】図１
2010061664.tif 000002
【特許請求の範囲】
【請求項１】
複数のシリアル接続小型コンピュータシステムインターフェース（ＳＡＳ）エクスパンダを組み合わせて単一の一体的ＳＡＳエクスパンダとして機能させつつパスフェールオーバーを提供するための方法であって、
第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出することと、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングすることであって、前記第１のＳＡＳエクスパンダは、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続される、ことと、
を備える方法。
【請求項２】
請求項１に記載の方法であって、
第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出することは、更に、
物理的問題又は論理的問題の少なくとも１つに起因する第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出することを含む、方法。
【請求項３】
請求項１に記載の方法であって、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングすることであって、前記第１のＳＡＳエクスパンダは、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続される、ことは、更に、
前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダに、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及びエクスパンダ間通信のための前記第２のＳＡＳエクスパンダの物理ポートを通じて再ルーティングすることを含む、方法。
【請求項４】
請求項１に記載の方法であって、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングすることであって、前記第１のＳＡＳエクスパンダは、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続されることは、更に、
前記データ転送を、前記障害内部リンクから、エクスパンダ間通信のための前記第１のエクスパンダの物理ポートとエクスパンダ間通信のための前記第２のＳＡＳエクスパンダの物理ポートとの間のリンクへ再ルーティングするために、前記第１のＳＡＳエクスパンダのルーティングテーブルを再設定することを含む、方法。
【請求項５】
請求項４に記載の方法であって、
前記データ転送を、前記障害内部リンクから、エクスパンダ間通信のための前記第１のエクスパンダの物理ポートとエクスパンダ間通信のための前記第２のＳＡＳエクスパンダの物理ポートとの間のリンクへ再ルーティングするために、前記第１のＳＡＳエクスパンダのルーティングテーブルを再設定することは、更に、
前記データ転送を、前記障害内部リンクから、エクスパンダ間通信のための前記第１のエクスパンダの物理ポートとエクスパンダ間通信のための前記第２のＳＡＳエクスパンダの物理ポートとの間のリンクへ再ルーティングするために、前記第１のＳＡＳエクスパンダ上のファームウェアを通じて前記第１のＳＡＳエクスパンダのルーティングテーブルを再設定することを含む、方法。
【請求項６】
請求項１に記載の方法であって、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングすることであって、前記第１のＳＡＳエクスパンダは、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続されることは、このような再ルーティングが生じていることを、前記単一の一体的ＳＡＳエクスパンダに接続されるＳＡＳイニシエータ及びＳＡＳターゲットに示さない、方法。
【請求項７】
請求項１に記載の方法であって、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングすることであって、前記第１のＳＡＳエクスパンダは、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続されることは、更に、
有効内部リンクを通じて前記デバイスに接続される前記第２のＳＡＳエクスパンダが既に前記デバイスへのアクティブリンクを有している場合に、前記障害内部リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダからアービトレーションインプログレスによって応答することを含む、方法。
【請求項８】
請求項７に記載の方法であって、
有効内部リンクを通じて前記デバイスに接続される前記第２のＳＡＳエクスパンダが既に前記デバイスへのアクティブリンクを有している場合に、前記障害内部リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダからアービトレーションインプログレスによって応答することは、更に、
前記再ルーティングされたデータ転送を、前記再ルーティングされたデータ転送を要求し尚且つ前記アービトレーションインプログレス応答を受信するＳＡＳイニシエータによって、しばらく経ってから再試行することを含む、方法。
【請求項９】
請求項１に記載の方法であって、更に、
前記単一の一体的ＳＡＳエクスパンダに接続されるＳＡＳイニシエータにおいて、前記障害リンクが存在する旨の通知をＣＨＡＮＧＥプリミティブの受信を通じて受けることを備える方法。
【請求項１０】
請求項９に記載の方法であって、
前記単一の一体的ＳＡＳエクスパンダに接続されるＳＡＳイニシエータは、前記ＣＨＡＮＧＥプリミティブの受信を受けて、ＳＡＳディスカバリを実施する、方法。
【請求項１１】
システムであって、
複数のＳＡＳエクスパンダを組み合わせて単一の一体的ＳＡＳエクスパンダとして機能させるための手段と、
第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出するための手段と、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される前記第２のＳＡＳエクスパンダへ再ルーティングするための手段であって、前記第１のＳＡＳエクスパンダが、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続される手段と、
を備えるシステム。
【請求項１２】
請求項１１に記載のシステムであって、
第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出するための手段は、更に、
物理的問題又は論理的問題の少なくとも１つに起因する第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出するための手段を含む、システム。
【請求項１３】
請求項１１に記載のシステムであって、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングするための手段であって、前記第１のＳＡＳエクスパンダが、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続される手段は、更に、
前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダに、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及びエクスパンダ間通信のための前記第２のＳＡＳエクスパンダの物理ポートを通じて再ルーティングするための手段を含む、システム。
【請求項１４】
請求項１１に記載のシステムであって、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングするための手段であって、前記第１のＳＡＳエクスパンダが、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続される手段は、更に、
前記データ転送を、前記障害内部リンクから、エクスパンダ間通信のための前記第１のエクスパンダの物理ポートとエクスパンダ間通信のための前記第２のＳＡＳエクスパンダの物理ポートとの間のリンクへ再ルーティングするために、前記第１のＳＡＳエクスパンダのルーティングテーブルを再設定するための手段を含む、システム。
【請求項１５】
請求項１１に記載のシステムであって、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングするための手段であって、前記第１のＳＡＳエクスパンダが、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続される手段は、このような再ルーティングが生じていることを、前記単一の一体的ＳＡＳエクスパンダに接続されるＳＡＳイニシエータ及びＳＡＳターゲットに示さない、システム。
【請求項１６】
請求項１１に記載のシステムであって、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングするための手段であって、前記第１のＳＡＳエクスパンダが、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続される手段は、更に、
有効内部リンクを通じて前記デバイスに接続される前記第２のＳＡＳエクスパンダが既に前記デバイスへのアクティブリンクを有している場合に、前記障害内部リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダからアービトレーションインプログレスによって応答するための手段を含む、システム。
【請求項１７】
請求項１６に記載のシステムであって、
有効内部リンクを通じて前記デバイスに接続される前記第２のＳＡＳエクスパンダが既に前記デバイスへのアクティブリンクを有している場合に、前記障害内部リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダからアービトレーションインプログレスによって応答するための手段は、更に、
前記再ルーティングされたデータ転送を、前記再ルーティングされたデータ転送を要求し尚且つ前記アービトレーションインプログレス応答を受信するＳＡＳイニシエータによって、後に再試行するための手段を含む、システム。
【請求項１８】
請求項１１に記載のシステムであって、更に、
前記単一の一体的ＳＡＳエクスパンダに接続されるＳＡＳイニシエータにおいて、前記障害リンクが存在する旨の通知をＣＨＡＮＧＥプリミティブの受信を通じて受けるための手段を備えるシステム。
【請求項１９】
請求項１８に記載のシステムであって、更に、
前記単一の一体的ＳＡＳエクスパンダに接続されるＳＡＳイニシエータにおける前記ＣＨＡＮＧＥプリミティブの受信を受けてＳＡＳディスカバリを実施するための手段を備えるシステム。
【請求項２０】
複数のシリアル接続小型コンピュータシステムインターフェース（ＳＡＳ）エクスパンダを組み合わせて単一の一体的ＳＡＳエクスパンダとして機能させつつパスフェールオーバーを提供するための方法を実施するためのコンピュータ実行可能命令を有するコンピュータ可読媒体であって、前記方法は、
第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出することと、
前記障害リンクを通じて前記デバイスに接続される前記第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じて前記デバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングすることであって、前記第１のＳＡＳエクスパンダは、エクスパンダ間通信のための前記第１のＳＡＳエクスパンダの物理ポート及び前記第２のＳＡＳエクスパンダの物理ポートを通じて前記第２のＳＡＳエクスパンダに接続される、ことと、
を含む、コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、米国特許法第１１９条（ｅ）に基づいて、参照により本明細書に組み込まれる２００８年９月５日出願の米国仮出願第６１／１９１，０３７号の利益を主張する。本出願は、本出願と同日に出願された同時係属出願：Stephen B. Johnson、Timothy E. Hoglund、及びLouis H. Odenwald, Jr.による「COMBINING MULTIPLE SAS EXPANDERS TO PROVIDE SINGLE SAS EXPANDER FUNCTIONALITY（単一ＳＡＳエクスパンダの機能性を提供するために複数のＳＡＳエクスパンダを組み合わせること）」（代理人整理番号08-1075、速達便番号EM 260723514 US）、Stephen B. Johnson及びChristopher McCartyによる「SPECIFYING LANES FOR SAS WIDE PORT CONNECTIONS（ＳＡＳワイドポート接続のためのレーンを指定する）」（代理人整理番号08-1461、速達便番号EM 260723505 US）、並びにStephen B. Johnson、William Petty、及びOwen Parryによる「SAS PAIRED SUBTRACTIVE ROUTING（ＳＡＳペアサブトラクティブルーティング）」（代理人整理番号08-1513、速達便番号EM 260723528 US）に関連している。これらの出願は、全て、参照により本明細書に組み込まれる。
【０００２】
本開示は、概して、シリアル接続ＳＣＳＩの分野に関するものであり、より具体的には、複数のＳＡＳエクスパンダが単一の非閉鎖的ＳＡＳエクスパンダとして動作するときにパスフェールオーバーを提供することに関するものである。
【背景技術】
【０００３】
シリアル接続ＳＣＳＩ（ＳＡＳ）は、コンピュータデバイス間のデータ転送を実現するように設計された様々な技術を指す用語である。ＳＡＳプロトコルは、パラレル型の小型コンピュータシステムインターフェースに取って代わるシリアル型のものである。ＳＡＳプロトコルでは、全てのＳＡＳデバイスは、イニシエータデバイス、ターゲットデバイス、またはエクスパンダデバイスのいずれかである。イニシエータデバイスが、ＳＡＳデータ転送を開始するデバイスである一方で、ターゲットデバイスは、イニシエータデバイスによるデータ転送先のデバイスである。イニシエータデバイスとターゲットデバイスは、ともに、エンドデバイスとして知られる。
【０００４】
ＳＡＳエクスパンダは、複数のイニシエータデバイスと複数のターゲットデバイスとの間のデータ転送を促進するデバイスである。ＳＡＳプロトコルは、ポントツーポイントバス型トポロジを利用する。したがって、もしイニシエータデバイスが、複数のターゲットデバイスへの接続を必要とする場合は、イニシエータデバイスと個々のターゲットデバイスとの間の個々のデータ転送を促進するために、イニシエータデバイスと個々のターゲットデバイスとを直接接続しなければならない。複数のイニシエータデバイスと複数のターゲットデバイスとの間の接続およびデータ転送は、ＳＡＳエクスパンダによって扱われる。ＳＡＳエクスパンダは、ＳＡＳデバイスを内包してよい。
【発明の概要】
【０００５】
複数のシリアル接続小型コンピュータシステムインターフェース（ＳＡＳ）エクスパンダを組み合わせて単一の一体的ＳＡＳエクスパンダとして機能させつつパスフェールオーバーを提供するための方法は、第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出することと、障害リンクを通じてデバイスに接続される第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じてデバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングすることであって、第１のＳＡＳエクスパンダは、エクスパンダ間通信のための第１のＳＡＳエクスパンダの物理ポート及び第２のＳＡＳエクスパンダの物理ポートを通じて第２のＳＡＳエクスパンダに接続される、ことと、を非限定的に含んでよい。
【０００６】
システムは、複数のＳＡＳエクスパンダを組み合わせて単一の一体的ＳＡＳエクスパンダとして機能させるための手段と、第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出するための手段と、障害リンクを通じてデバイスに接続される第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じてデバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングするための手段であって、第１のＳＡＳエクスパンダは、エクスパンダ間通信のための第１のＳＡＳエクスパンダの物理ポート及び第２のＳＡＳエクスパンダの物理ポートを通じて第２のＳＡＳエクスパンダに接続される、手段と、を非限定的に含む。
【０００７】
コンピュータ可読媒体は、複数のシリアル接続小型コンピュータシステムインターフェース（ＳＡＳ）エクスパンダを組み合わせて単一の一体的ＳＡＳエクスパンダとして機能させつつパスフェールオーバーを提供するための方法を実施するためのコンピュータ実行可能命令を有し、上記方法は、第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出することと、障害リンクを通じてデバイスに接続される第１のＳＡＳエクスパンダによるデータ転送を、有効リンクを通じてデバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングすることであって、第１のＳＡＳエクスパンダは、エクスパンダ間通信のための第１のＳＡＳエクスパンダの物理ポート及び第２のＳＡＳエクスパンダの物理ポートを通じて第２のＳＡＳエクスパンダに接続される、ことと、を非限定的に含む。
【０００８】
以上の概要及び以下の詳細な説明は、いずれも例示及び説明を意図したものであり、必ずしも本開示を限定するものではないことがわかる。本明細書に組み込まれるとともに本明細書の一部を構成する添付の図面は、開示の内容を図示したものである。説明及び図面は、あわせて開示の原理を説明する働きをする。
【図面の簡単な説明】
【０００９】
当業者ならば、添付の図面を参照することによって、開示の数々の利点をより良く理解できるであろう。
【図１】ＳＡＳトポロジを図示したブロック図であり、単一の一体的ＳＡＳエクスパンダが示す図である。
【図２Ａ】単一の一体的ＳＡＳエクスパンダの各種の構成を図示したブロック図である。
【図２Ｂ】単一の一体的ＳＡＳエクスパンダの各種の構成を図示したブロック図である。
【図２Ｃ】単一の一体的ＳＡＳエクスパンダの各種の構成を図示したブロック図である。
【図２Ｄ】単一の一体的ＳＡＳエクスパンダの各種の構成を図示したブロック図である。
【図２Ｅ】単一の一体的ＳＡＳエクスパンダの各種の構成を図示したブロック図である。
【図３】単一の一体的ＳＡＳエクスパンダのブレードセンタスイッチ構成を図示したブロック図である。
【図４】単一の一体的ＳＡＳエクスパンダのエクスパンダ間リンクを図示したブロック図である。
【図５】単一の一体的ＳＡＳエクスパンダ内の障害内部リンクを図示したブロック図である。
【図６】複数のＳＡＳエクスパンダを組み合わせて単一の一体的ＳＡＳエクスパンダとして動作させるための方法を示した流れ図である。
【図７】単一の一体的ＳＡＳエクスパンダ内でリンク障害が生じたときにパスフェールオーバーを提供するための方法を示した流れ図である。
【図８】単一の一体的ＳＡＳエクスパンダとのデータ接続のためのＳＡＳワイドポートのレーンを選択することを図示したブロック図である。
【図９】単一の一体的ＳＡＳエクスパンダとのデータ接続のためのＳＡＳワイドポートのレーンを指定するための方法を示した流れ図である。
【図１０】ペア・サブトラクティブルーティングを実施するように構成されるカスケード接続ＳＡＳトポロジを図示したブロック図である。
【図１１Ａ】ペア・サブトラクティブポートのベンダ固有機能、コマンド、及び記述子を示した表を示す図である。
【図１１Ｂ】ペア・サブトラクティブポートのベンダ固有機能、コマンド、及び記述子を示した表を示す図である。
【図１１Ｃ】ペア・サブトラクティブポートのベンダ固有機能、コマンド、及び記述子を示した表を示す図である。
【図１１Ｄ】ペア・サブトラクティブポートのベンダ固有機能、コマンド、及び記述子を示した表を示す図である。
【図１２】カスケード接続ＳＡＳトポロジ内でペアサブトラクティブルーティングを実施する方法を示した流れ図である。
【発明を実施するための形態】
【００１０】
次に、添付の図面に図示された開示の内容に詳細に言及する。いくつかの要素の参照符号として、参照数字の末尾に英文字が付加されたものが使用されているが、その要素を総称するときには付加的な英文字が省略した参照数字が使用される場合がある。
【００１１】
単一の一体的ＳＡＳエクスパンダを特徴として備える本開示の代表的一実施形態にしたがったＳＡＳトポロジが示される。トポロジ１００は、ナローポート１１５ａ...ｄを通じてエクスパンダ１２０に接続されるイニシエータ１１０を含んでよい。エクスパンダ１２０は、ナローポート１２５ａ...ｄを通じて単一の一体的ＳＡＳエクスパンダ２００に接続されてよい。単一の一体的ＳＡＳエクスパンダ２００は、物理的に別個の複数のＳＡＳエクスパンダ２０２ａ...ｄを内包してよい。ＳＡＳエクスパンダ２０２ａ...ｄは、ナローポート１２５ａ...ｄを組み合わせて共通の単一ワイドポート１５０として挙動させるために、同一ＳＡＳアドレスを共有するように構成されてよい。ＳＡＳトポロジ１００に示されるように、ナローポート１２５ａ...ｄは、組み合わさってｘ４ワイドポート１５０を構成してよい。ＳＡＳエクスパンダ２０２ａ...ｄは、ナローポート１３５ａ...ｄを通じてエクスパンダ１３０に接続されてよい。エクスパンダ１３０は、ナローポート１４５ａ...ｄを通じてターゲット１４０に接続されてよい。ＳＡＳ規格は、全ての接続がポイントツーポイントであることを要求する。しかしながら、ＳＡＳトポロジ１００は、ワイドポート１５０が真にＳＡＳワイドポートであるゆえに、ＳＡＳ規格対応である。
【００１２】
図２Ａ〜２Ｅを参照すると、一体的ＳＡＳエクスパンダ２００は、物理的に別個の複数のＳＡＳエクスパンダ２０２を内包してよい。ＳＡＳエクスパンダ２０２は、リンク２５５〜２９４を通じて出力ポート２０５〜２４４に接続されてよい。本開示では、ＳＡＳエクスパンダ２０２の数、ＳＡＳエクスパンダ２０２のポートの数、出力ポート２０５〜２４４の数、出力ポート２０５〜２４４の幅、及びリンク２５５〜２９４に使用されるＳＡＳエクスパンダポートの数に依存して、多種多様な構成の単一の一体的ＳＡＳエクスパンダ２００が考えられる。
【００１３】
出力ポート２０５〜２４４は、ワイドポートであってよい。出力ポート２０５〜２４４は、同一ＳＡＳアドレスを共有するように構成されてよい。ＳＡＳ規格下では、これは、出力ポート２０５〜２４４を、同じエクスパンダの単一のワイドポートとして定めるものである。各出力ポート２０５〜２４４は、全てのＳＡＳエクスパンダ２０２ａ...ｈに接続されてよい（不図示）。出力ポート２０５〜２４４の幅は、各出力ポート２０５〜２４４に接続するためにリンク２５５ａ...ｈ〜２９４ａ...ｈにどれだけ多くのＳＡＳエクスパンダポートが使用されているかに依存してよい。各ＳＡＳエクスパンダ２０２ａ...ｈは、各出力ポート２０５〜２４４に接続される複数のＳＡＳエクスパンダポートを有してよい。例えば、もし単一の一体的ＳＡＳエクスパンダ２００が、１つのＳＡＳエクスパンダポートを使用してリンク２５５ａ...ｂ〜２９４ａ...ｂを通じて各出力ポート２０５〜２４４に接続される２つのＳＡＳエクスパンダ２０２ａ...ｂを有する場合は、出力ポート２０５〜２４４は、ｘ２ワイドポートになる。更に、もし単一の一体的ＳＡＳエクスパンダ２００が、２つのＳＡＳエクスパンダポートを使用してリンクを通じて各出力ポート２０５〜２４４に接続される２つのＳＡＳエクスパンダ２０２ａ...ｂを有する場合は、出力ポート２０５〜２４４は、ｘ４ワイドポートになる。これらの構成は、単一の一体的ＳＡＳエクスパンダ２００の任意のポートから任意の他のポートへの同時アクセスを全ポート帯域幅で可能にすることができる。
【００１４】
単一の一体的ＳＡＳエクスパンダ３００のブレードセンタスイッチ構成３０１が提供される。図３を参照すると、複数のＣＰＵブレード３０２が、入力ポート３０５〜３２０に接続されてよい。入力ポート３０５〜３２０は、ワイドポートであってよい。入力ポート３０５〜３２０は、同一ＳＡＳアドレスを共有するように構成されてよい。ＳＡＳ規格下では、これは、入力ポート３０５〜３２０を、同じエクスパンダの単一ワイドポートとして定めるものである。各入力ポート３０５〜３２０は、リンク３５５ａ...ｂ〜３７５ａ...ｂを通じて各ＳＡＳエクスパンダ２０２ａ...ｂに接続されてよい。ブレードセンタスイッチ構成３０１に示されるように、入力ポート３０５〜３２０は、１つのＳＡＳエクスパンダポートを使用してリンク３５５ａ...ｂ〜３７５ａ...ｂを通じて２つのＳＡＳエクスパンダ２０２ａ...ｂに接続されるｘ２ワイドポートであるが、これらの開示では、その他の構成も十分に考えられる。各ＳＡＳエクスパンダ２０２ａ...ｂは、リンク２５５ａ１，ａ２...ｂ１，ｂ２〜２６８ａ１，ａ２...ｂ１，ｂ２を通じて各出力ポート２０５〜２１８に接続されてよい。ブレードセンタスイッチ構成３０１に示されるように、出力ポート２０５〜２１８は、２つのＳＡＳエクスパンダポートを使用してリンク２５５ａ１，ａ２...ｂ１，ｂ２〜２６８ａ１，ａ２...ｂ１，ｂ２を通じて２つのＳＡＳエクスパンダ２０２ａ...ｂに接続されるｘ４ワイドポートであるが、現在のこの開示では、その他の構成も十分に考えられる。出力ポート２０５〜２１８は、複数のデータストレージデバイス３０３に接続されてよい。
【００１５】
複数のＳＡＳエクスパンダ２０２は、同一ＳＡＳアドレスを共有するように構成されてよい。ＳＡＳ規格下では、これは、複数のＳＡＳエクスパンダ２０２を単一エクスパンダとして定めるものである。各ＳＡＳエクスパンダ２０２では、複数のＳＡＳエクスパンダ２０２を単一エクスパンダとして挙動及び応答させるようにファームウェアが実行されてよい。図４に示されるように、各ＳＡＳエクスパンダ２０２ａ...ｄは、エクスパンダ間リンク（ＩＥＬ）４３０〜４３５を通じて２０２ａ...ｄの各自に接続されてよい。ＩＥＬ４３０〜４３５は、ＳＡＳエクスパンダ２０２ａ...ｄが通信及び協調によって単一のエクスパンダとして挙動及び応答することを可能にしてよい。ＩＥＬ４３０〜４３５は、ＳＡＳマネージメントプロトコル（ＳＭＰ）、又は集積回路間バスプロトコル（Ｉ２Ｃ）、拡張パラレルポート（ＥＰＰ）、イーサネット（登録商標）、共有メモリ等のその他の通信方法を通じて通信してよい。ＩＥＬ４３０〜４３５は、ＩＥＬドメイン４２０をプライマリスイッチドメイン４１０からゾーン分けすることを可能にしてよい。ＳＡＳ規格非対応のあらゆるループ事象を排除するために、ＩＥＬ４３０〜４３５では、ブロードキャストが無効にされてよい。ＩＥＬ４３０〜４３５は、複数のＳＡＳエクスパンダポートを使用してよい。ＩＥＬ４３０〜４３５に使用される物理ポートは、プライマリスイッチドメインから完全に隠されてよい。ＳＡＳエクスパンダ２０２ａ...ｄのプライマリスイッチドメインで使用される物理ポートの番号は、単一の論理的番号に再マッピングされてよい。ＩＥＬ４３０〜４３５は、任意の有効に動作しているＳＡＳエクスパンダ２０２ａ...ｄ間で接続性を維持しつつ、任意の組み合わせのＳＡＳエクスパンダ２０２ａ...ｄで障害が生じることを許容してよい。更に、全部のＳＡＳエクスパンダ２０２ａ...ｄに障害が生じているのでなければ、いずれの入力ポート３０５〜３２０及び出力ポート２０５〜２４４も、低下した帯域幅で接続性を維持することができる。ＳＭＰターゲット処理は、単一の一体的ＳＡＳエクスパンダ２００の単一のマスタＳＡＳエクスパンダによって扱われてよい。単一の一体的ＳＡＳエクスパンダ２００への接続要求は、ＩＥＬ４３０〜４３５を通じて単一のマスタＳＡＳエクスパンダにルーティングされてよい。ＳＡＳエクスパンダ２０２ａ...ｄは、ＳＭＰターゲット処理を共有してよい。
【００１６】
概して図６を参照すると、複数のＳＡＳエクスパンダを組み合わせるための方法が示されている。例えば、方法は、後述のように（尚且つ図１、図２Ａ〜２Ｅ、図３、及び図４に示されるように）ＳＡＳエクスパンダを接続及び組み合わせるための技術を実現してよい。方法６００は、第１のＳＡＳエクスパンダの少なくとも１つの第１番の物理ポートを、第１のＳＡＳエクスパンダと物理的に別個である第２のＳＡＳエクスパンダの少なくとも１つの第２番の物理ポートとともに、少なくとも１つの共通ＳＡＳワイドポートにとりまとめるステップ６０２を含んでよい。例えば、少なくとも１つの共通ＳＡＳワイドポート（２０５〜２４４）へのとりまとめは、少なくとも１つの共通ワイドポート（２０５〜２４４）に同一ＳＡＳアドレスを割り当てることを含んでよい。
【００１７】
方法６００は、更に、第１のＳＡＳエクスパンダ及び第２のＳＡＳエクスパンダに同一ＳＡＳアドレスを割り当てるステップ６０４を含んでよい。第１のＳＡＳエクスパンダ及び第２のＳＡＳエクスパンダへの同一ＳＡＳアドレスの割り当ては、第１のＳＡＳエクスパンダと第２のＳＡＳエクスパンダとを単一の一体的ＳＡＳエクスパンダ２００として挙動及び応答させることを可能にしてよい。割り当ては、第１のＳＡＳエクスパンダ及び第２のＳＡＳエクスパンダで実行されるファームウェアを通じて実施されてよい。更に、第１のＳＡＳエクスパンダ及び第２のＳＡＳエクスパンダの物理ポートの番号は、単一の一体的ＳＡＳエクスパンダの単一の論理的順番の物理ポート番号として再マッピングされてよい。例えば、第１のＳＡＳエクスパンダの第１番の物理ポートは、単一の論理的順番の番号の第１の範囲に入るように再マッピングされてよく、第１のＳＡＳエクスパンダの第２番の物理ポートは、単一の論理的順番の番号の第２の範囲に入るように再マッピングされてよい。
【００１８】
方法６００は、更に、エクスパンダ間通信のために、第１のＳＡＳエクスパンダを第２のＳＡＳエクスパンダに直接接続するステップ６０６を含んでよい。エクスパンダ間通信は、ＳＭＰ通信、又は集積回路間バスプロトコル（Ｉ２Ｃ）、拡張パラレルポート（ＥＰＰ）、イーサネット（登録商標）、共有メモリ等のその他の通信方法を利用してよい。更なる実施形態では、エクスパンダ間通信のための第１のＳＡＳエクスパンダと第２のＳＡＳエクスパンダとの間の接続（４３０〜４３５）は、第１のＳＡＳエクスパンダの物理ポート及び第２のＳＡＳエクスパンダの物理ポートを通じて実施されてよい。更に、エクスパンダ間通信のための第１のＳＡＳエクスパンダの物理ポート及びエクスパンダ間通信のための第２のＳＡＳエクスパンダの物理ポートは、単一の一体的ＳＡＳエクスパンダのプライマリスイッチドメイン（４１０）から隠されてよい。第１のＳＡＳエクスパンダと第２のＳＡＳエクスパンダとの間のエクスパンダ間通信には、第１のＳＡＳエクスパンダの少なくとも２つの物理ポート及び第２のＳＡＳエクスパンダの少なくとも２つの物理ポートが使用されてよい。更に、もし単一の一体的ＳＡＳエクスパンダ内で少なくとも１つのＳＡＳエクスパンダが（例えば、あるＳＡＳエクスパンダに障害が発生している最中等に）動作可能にとどまっていれば、どの共通ＳＡＳワイドポートも、低下した小さい帯域幅で動作可能に維持される。
【００１９】
単一の一体的ＳＡＳエクスパンダ５００は、単一の一体的ＳＡＳエクスパンダ内で内部リンクに障害生じたときにパスフェールオーバーを提供するように構成されてよい。図５を参照すると、上述のように、入力ポート５０２〜５０８は、リンク５５２ａ...ｄ〜５５８ａ...ｄを通じて各エクスパンダ２０２ａ...ｄに接続されてよい。更に、入力ポート５０２〜５０８は、ＳＡＳワイドポートであってよい。出力ポート５１０〜５１６は、リンク５６０ａ...ｄ〜５６６ａ...ｄを通じて各エクスパンダ２０２ａ...ｄに接続されてよい。更に、出力ポート５１０〜５１６は、ＳＡＳワイドポートであってよい。各エクスパンダ２０２ａ...ｄは、エクスパンダ間通信のために、ＳＡＳエクスパンダポートを通じて互いに接続されてよい。単一の一体的ＳＡＳエクスパンダ５００に示されるように、ＳＡＳエクスパンダ２０２ｃと出力ポート５１６との間のリンク５６６ｂは、障害を生じている可能性がある。リンク５６６ｂは、例えば物理的欠陥によって障害を生じているかもしれない。更なる例では、リンク５６６ｂは、論理的問題ゆえに障害を生じているかもしれない。
【００２０】
障害リンク５６６ｂを通じて伝送される予定のデータ転送は、出力ポート５１６に接続された別のＳＡＳエクスパンダへ再ルーティングされてよい。このデータ転送は、ＳＡＳエクスパンダ間のエクスパンダ間通信に使用される物理ポートを通じて別のＳＡＳエクスパンダへ再ルーティングされてよい。単一の一体的ＳＡＳエクスパンダ５００に示されるように、障害リンク５６６ｂを通じたＳＡＳエクスパンダ２０２ｃと出力ポート５１６との間のデータ転送は、エクスパンダ間通信リンク４３４を通じてＳＡＳエクスパンダ２０２ｄを通るように再ルーティングされてよい。データ転送は、ＳＡＳエクスパンダ２０２ｄからリンク５６６ｃを通じて出力ポート５１６に到るように再ルーティングされてよい。このため、出力ポート５１６は、当初の意図通りに、しかしながら異なる物理リンク伝いに、データ転送を受信するであろう。更に、もしＳＡＳエクスパンダ２０２ｄが、出力ポート５１６へのアクティブリンクを有している場合は、ＳＡＳエクスパンダ２０２ｃは、ＳＭＰを通じて提供されるアービトレーション進行通知（ＡＩＰ, Arbitration In Progress）によってＳＡＳイニシエータに応答してよい。ＳＡＳイニシエータは、ＳＡＳエクスパンダ２０２ｃからＡＩＰまたはＯＰＥＮ拒絶（再試行）ＳＭＰ応答を受信した後、しばらく経ってからデータ転送を試みてよい。
【００２１】
本開示の更なる一態様では、障害リンクではなくエクスパンダ間通信リンク（４３０〜４３５）を通るように接続を再ルーティングするために、ＳＡＳエクスパンダ上で実行されるファームウェアによって、ＳＡＳエクスパンダルーティングテーブルを再設定することができる。更に、単一の一体的ＳＡＳエクスパンダに接続されるＳＡＳイニシエータは、ＣＨＡＮＧＥプリミティブを受信することによって、リンク５６６ｂに障害が生じたことを学習してよい。例えば、ＣＨＡＮＧＥプリミティブは、ＳＭＰによって提供される。すると、ＳＡＳイニシエータは、例えばＳＭＰを通じて提供されるＳＡＳディスカバリを実施してよい。更に、ＳＡＳイニシエータは、ターゲットへのアクティブ接続の残りの数に留意し、ターゲットへのアクティブ接続の残りの数に等しい数だけの同時データ転送を開始させてよい。
【００２２】
概して図７を参照すると、複数のＳＡＳエクスパンダを組み合わせて単一の一体的ＳＡＳエクスパンダとして機能させつつパスフェイルオーバーを提供するための方法が示されている。例えば、方法は、図５に示されるような技術を実現してよい。本発明の本実施形態では、方法７００は、第１のＳＡＳエクスパンダとデバイスとの間の障害リンクを検出するステップ７０２を含む。例えば、検出された障害リンクは、物理的問題ゆえに障害を生じているかもしれない。検出された障害リンクは、論理的問題ゆえに障害を生じているかもしれない。
【００２３】
方法７００は、更に、障害リンクを通じてデバイスに接続される第１のＳＡＳエクスパンダによるデータ転送を、有効リンク（有効に動作しているリンク）を通じてデバイスに接続される第２のＳＡＳエクスパンダへ再ルーティングするステップ７０４を含んでよい。例えば、単一の一体的ＳＡＳエクスパンダの障害リンクは、障害リンク内の物理的問題ゆえに障害を生じているかもしれない。別の一例では、障害リンクは、論理的問題ゆえに障害を生じているかもしれない。第１のＳＡＳエクスパンダは、エクスパンダ間通信のための第１のエクスパンダの物理ポート及び第２のＳＡＳエクスパンダの物理ポートを通じて第２のＳＡＳエクスパンダに接続されてよい。更なる実施形態では、障害リンクを通じてデバイスに接続される第１のＳＡＳエクスパンダによるデータ転送の、有効リンクを通じてデバイスに接続される第２のＳＡＳエクスパンダへの再ルーティングは、エクスパンダ間通信のための第１のエクスパンダの物理ポート及びエクスパンダ間通信のための第２のＳＡＳエクスパンダの物理ポートを通じて生じてよい。代表的な実施形態では、データ転送の再ルーティングは、データ転送を、障害内部リンクから、エクスパンダ間通信のための第１のエクスパンダの物理ポートとエクスパンダ間通信のための第２のＳＡＳエクスパンダの物理ポートとの間のリンクへ再ルーティングするために、第１のＳＡＳエクスパンダのルーティングテーブルを再設定することを含んでよい。例えば、第１のＳＡＳエクスパンダのルーティングテーブルの再設定は、第１のＳＡＳエクスパンダ上で実行されるファームウェアを通じて実施されてよい。
【００２４】
データ転送を、単一の一体的ＳＡＳエクスパンダ内の障害リンクから、エクスパンダ間通信のためのリンクを通じて第２のＳＡＳエクスパンダへ再ルーティングするステップは、このような再ルーティングが生じていることを、単一の一体的ＳＡＳエクスパンダに接続されたＳＡＳイニシエータ及びＳＡＳターゲットに示さなくてよい（通知しなくてよい）。しかしながら、もし第２のＳＡＳエクスパンダが現時点でデバイスへのアクティブリンクを有しており、尚且つデータが障害リンクから第２のＳＡＳエクスパンダへ再ルーティングされている場合は、障害リンクを通じてデバイスに接続される第１のＳＡＳエクスパンダは、ＡＩＰ応答によって応答してよい。このような場合、ＡＩＰ応答を受信したＳＡＳイニシエータは、しばらく経ってからデータ転送を再試行してよい。単一の一体的ＳＡＳエクスパンダに接続されるＳＡＳイニシエータは、ＣＨＡＮＧＥプリミティブの受信を通じて障害リンクについて通知されてよい。ＣＨＡＮＧＥプリミティブの受信を受けて、ＳＡＳイニシエータは、ＳＡＳディスカバリを実施してよい。例えば、ＳＭＰは、ＳＡＳディスカバリ及びＳＡＳディスカバリ応答を含むＳＡＳディスカバリを提供する。
【００２５】
ＳＡＳイニシエータ指定のデータ接続構成８００が提供される。図８を参照すると、ＳＡＳイニシエータ８１０は、ＳＡＳワイドポート８８０を通じてＳＡＳエクスパンダ８２０に接続されてよい。ＳＡＳエクスパンダ８３０の少なくとも１つの物理ポートと、ＳＡＳエクスパンダ８４０の少なくとも１つの物理ポートとが、共通ＳＡＳワイドポート８９０にまとめられてよい。ＳＡＳエクスパンダ８３０及びＳＡＳエクスパンダ８４０を単一の一体的ＳＡＳエクスパンダとして動作させるために、ＳＡＳエクスパンダ８３０は、ＳＡＳエクスパンダ８４０と同一ＳＡＳアドレスを共有してよい。ＳＡＳエクスパンダ８２０は、共通ＳＡＳワイドポート８９０を通じてＳＡＳエクスパンダ８３０及びＳＡＳエクスパンダ８４０に接続されてよい。ＳＡＳエクスパンダ８３０は、また、ＳＡＳエクスパンダ８３０の物理ポート及びＳＡＳエクスパンダ８４０の物理ポートを介したエクスパンダ間通信リンクを通じてＳＡＳエクスパンダ８４０に直接接続されてもよい。ＳＡＳエクスパンダ８３０とＳＡＳエクスパンダ８４０とは、単一の一体的ＳＡＳエクスパンダとして動作するのではなく、カスケード接続構成をとってもよい。ＳＡＳエクスパンダ８３０及びＳＡＳエクスパンダ８４０には、ＳＡＳナローポートを通じて複数のＳＡＳターゲット８５０〜８７５が接続されてよい。ＳＡＳターゲット８５０〜８７５の数は、ＳＡＳエクスパンダ８３０又はＳＡＳエクスパンダ８４０の物理ポートの数より多くてよい。例えば、ＳＡＳターゲット８５０〜８７５は、単純ディスク束（ＪＢＯＤ，Just a Bunch Of Disks）ＳＡＳアレイなどのハードディスクアレイであってよい。
【００２６】
ＳＡＳイニシエータ８１０は、ＳＡＳイニシエータ８１０からＳＡＳターゲット８５０〜８７５の１つへのデータ接続を形成するために使用されるワイドポート８８０，８９０のレーンを指定してよい。ワイドポート８８０，８９０のレーンの指定は、フェアネス制御のために使用されてよく、このような制御では、ワイドポート８８０，８９０の一部のレーンがＳＡＳターゲット８５０〜８７５にアクセスするために使用されるのに対し、ワイドポート８８０，８９０のその他のレーンはＳＡＳ構成のその他の部分への引き渡しのために使用されてよい。ＳＡＳイニシエータ８１０は、更に、接続要求のＯＰＥＮフレーム内でレーンを指定してよい。このようなＯＰＥＮフレームは、ＳＭＰ接続要求を通じて提供されてよい。ＳＡＳイニシエータ８１０は、ＳＡＳイニシエータ８１０からＳＡＳターゲット８５０〜８７５の１つへのデータ接続のための最適レーンを、標準的ＳＡＳディスカバリプロセスの実施を通じて学習していてよい。ＳＡＳエクスパンダ８３０及びＳＡＳエクスパンダ８４０は、ＳＡＳターゲット８５０〜８７５とともに、ＳＡＳイニシエータ８１０からＳＡＳターゲット８５０〜８７５の１つへのデータ接続のための最適レーンをともなうＳＭＰディスカバリ応答を通じて応答するように構成されてよい。ＳＡＳイニシエータ８１０とＳＡＳターゲット８５０〜８７５の１つとの間のデータ接続における各ＳＡＳエクスパンダは、ＳＡＳイニシエータ８１０からの接続要求のＯＰＥＮフレームを、データ接続のための許容レーンについてチェックし、指定されたそれらのレーン伝いにのみデータ接続を行ってよい。
【００２７】
概して図９を参照すると、本開示の代表的一実施形態にしたがった、ＳＡＳドメイン内でＳＡＳイニシエータとＳＡＳターゲットとの間のデータ接続のためのＳＡＳワイドポートの許容レーンを指定するための方法が示されている。本開示の本実施形態では、方法９００は、データ接続のための少なくとも１つのＳＡＳワイドポートの最適レーンを発見するステップ９０２を含む。例えば、ＳＡＳイニシエータ８１０は、標準的ＳＡＳディスカバリプロセスの実施を通じてデータ接続のための最適レーンを発見してよい。更に、ＳＭＰディスカバリ応答は、データ接続のための最適レーンをＳＡＳイニシエータ８１０に伝えるために使用されてよい。
【００２８】
方法９００は、更に、ＳＡＳドメインの各レベルのＳＡＳワイドポート内でデータ接続のための許容レーンを指定するステップ９０４を含んでよい。例えば、データ接続のための許容レーンは、ＳＡＳイニシエータ接続要求を通じて指定されてよい。データ接続のための許容レーンは、更に、ＳＡＳイニシエータ接続要求のＯＰＥＮフレーム内で指定されてよい。
【００２９】
方法９００は、更に、データ接続のための指定された許容レーンについてチェックするステップ９０６を含んでよい。例えば、ＳＡＳイニシエータ接続要求のＯＰＥＮフレームの受信を受けて、ＳＡＳエクスパンダ（８２０〜８４０）は、ＯＰＥＮフレームを、データ接続のための指定された許容レーンについてチェックしてよい。
【００３０】
方法９００は、更に、指定された許容レーン伝いにデータ接続を形成するステップ９０８を含んでよい。例えば、ＳＡＳエクスパンダは、指定された許容レーン伝いにデータ接続を形成してよい。更に、ＳＡＳエクスパンダは、ＳＡＳイニシエータ接続要求のＯＰＥＮフレームを、指定された許容レーンについてチェックした後に、データ接続を形成してよい。
【００３１】
ペア・サブトラクティブルーティング（paired subtractive routing）を用いるＳＡＳカスケード接続トポロジが提供される。ペア・サブトラクティブルーティングを用いるために、ＳＡＳトポロジ１０００内のＳＡＳデバイスは、ベンダ固有ＳＭＰ機能を参照してよい。ＳＡＳイニシエータ１００２〜１００４は、ベンダ固有ＳＭＰ機能がサポートされているかどうかを調べるために、ＳＭＰを通じて提供されるＳＭＰメーカ情報報告応答（SMP REPORT MANUFACTURER INFORMATION response）をチェックしてよい。もしサポートされている場合は、ＳＡＳイニシエータ１００２〜１００４は、そのベンダ固有ＳＭＰ機能を、ペア・サブトラクティブルーティングを用いるためにルーティング属性を変更されたＳＡＳエクスパンダ１０１０〜１０２４の物理ポートのリストを要求するために使用してよい。例えば、ＳＡＳイニシエータ１００２〜１００４は、ＳＡＳトポロジ１０００の各ＳＡＳエクスパンダ１０１０〜１０２４に対し、ＳＭＰルーティング属性変更物理ポートリスト報告要求（SMP REPORT MODIFIED PHY ROUTING ATTRIBUTE LIST Request）１１００を発行してよい。ＳＭＰルーティング属性変更物理ポートリスト報告要求１１００を受信すると、各ＳＡＳエクスパンダ１０１０〜１０２４は、ルーティング属性を変更された物理ポートのリストを、ＳＭＰルーティング属性変更物理ポートリスト報告応答１１２０を通じて応答してよい。動作時に、ＳＭＰルーティング属性変更物理ポートリスト報告応答１１２０は、変更された幾つかのルーティング記述子１１４０を内包してよい。各変更ルーティング記述子１１４０は、ＳＡＳエクスパンダ１０１０〜１０２４の１つの物理ポートと、その１つの物理ポートの変更ルーティング属性１１６０とを示してよい。例えば、変更ルーティング属性１１６０は、物理ポートを、自己設定（ＳＣ，Self Configured）、テーブルイニシエータ専用ＩＮ（ＴＩＯＩ，Table Initiator Only In）、又はテーブルイニシエータ専用ＯＵＴ（ＴＩＯＯ，Table Initiator Only Out）のいずれかに特定してよい。ＴＩＯＩは、入力物理ポートを、そのポートのためのルーティングテーブル内に挙げられたＳＡＳイニシエータにのみ結びつけてよく、ＴＩＯＯは、出力物理ポートを、そのポートのためのルーティングテーブル内に挙げられたＳＡＳイニシエータにのみ結び付けてよい。
【００３２】
もしＳＭＰルーティング属性変更物理リポートリスト報告応答１１２０が、とある物理ポートの変更ルーティング属性１１６０を特定している場合は、ＳＡＳイニシエータ１００２〜１００４は、ＳＭＰディスカバリ応答によって提供されるその物理ポートのルーティング属性を無視してよい。本開示の一実施形態では、ベンダ固有ＳＭＰ機能は、変更後のルーティング属性即ちＴＩＯＩ、ＴＩＯＯ、及びＳＣのみを報告してよい。ＳＡＳエクスパンダ１０１０〜１０２４は、幾つかの処理標準ルーティング属性（Ｄ，Ｓ，Ｔ）及び幾つかの処理変更ルーティング属性（ＴＩＯＩ，ＴＩＯＯ，ＳＣ）をともなう複数のポートを有してよい。
【００３３】
ＳＡＳエクスパンダ１０１０〜１０２４は、ＩＮとＯＵＴとのペアとして定められるプライマリ・サブトラクティブポートを有するように構成されてよい。サブトラクティブポートの入力ポート及び出力ポートは、ともに、そのポートためののルーティングテーブル内にＳＡＳイニシエータ１００２〜１００４のアドレスを必要とするであろう。更に、ＳＡＳエクスパンダは、直接接続デバイスのためのセカンダリ・サブトラクティブポートを追加されてよい。例えば、入力ポートにおいて受信されたＯＰＥＮは、もしＳＭＰを通じて提供されたＯＰＥＮの宛先が直接接続デバイス（例えばルーティング属性がＤのポートに結合されたデバイス）でない場合又はＯＰＥＮの宛先が入力ポートのためのルーティングテーブル内にない場合は、そのサブトラクティブポートの出力ポートから送出されてよい。例えば、出力ポートにおいて受信されたＯＰＥＮは、もしＯＰＥＮの宛先が直接接続デバイス（例えばルーティング属性がＤのポートに結合されたデバイス）でない場合またはＯＰＥＮの宛先が出力ポートのためのルーティングテーブル内にない場合は、そのサブトラクティブポートの入力ポートから送出されてよい。変更ルーティング属性ＴＩＯＩは、サブトラクティブポートの入力ポートを示してよい。変更ルーティング属性ＴＩＯＯは、サブトラクティブポートの出力ポートを示してよい。ＯＰＥＮは、常に、デフォルトでプライマリ・サブトラクティブポートに設定されてよい。
【００３４】
ＳＡＳイニシエータ１００２〜１００４は、カスケード接続ＳＡＳトポロジ１０００の頂部又は底部に位置してよい。ＳＡＳイニシエータ１００２〜１００４は、自身のＳＡＳアドレスのみをカスケード接続ＳＡＳトポロジ１０００のＳＡＳエクスパンダ１０１０〜１０２４のＴＩＯＩポート１０６０のルーティングテーブル及びＴＩＯＯポート１０５０のルーティングテーブルに入れる設定をしてよい。更に、ＳＡＳイニシエータ１００２〜１００４は、カスケード接続ＳＡＳトポロジ１０００内でのＳＡＳイニシエータ１００２〜１００４の位置に応じて、自身のＳＡＳアドレスのみをカスケード接続ＳＡＳトポロジ１０００のＳＡＳエクスパンダ１０１０〜１０２４のＴＩＯＩポート１０６０のルーティングテーブル又はＴＩＯＯポート１０５０のルーティングテーブルのみに入れる設定をしてよい。ＳＡＳエクスパンダ１０１０〜１０２４は、ＳＡＳエクスパンダルーティングテーブルにアドレスを入れる設定をする際にＳＡＳイニシエータ１００２〜１００４が互いの領域を侵害することのないように、ファームウェアを実行してよい（例えば、位置非依存性のルーティングテーブル設定）。
【００３５】
ＳＡＳターゲット１０７０は、ＳＡＳエクスパンダ１０１０〜１０２４の１つに対してＯＰＥＮを発行してよい。ＳＡＳエクスパンダ１０１０〜１０２４の１つは、ＯＰＥＮの宛先アドレスを、ＳＡＳエクスパンダ１０１０〜１０２４のうちのその１つのエクスパンダのためのルーティングテーブル内で発見するかもしれない。すると、ＯＰＥＮは、宛先アドレスによって示されるＳＡＳイニシエータに送信されてよい。別の一実施形態では、ＳＡＳイニシエータ１００２〜１００４の１つが、ＳＡＳエクスパンダ１０１０〜１０２４の１つに対してＯＰＥＮを発行してよい。ＳＡＳエクスパンダ１０１０〜１０２４の１つは、先ず、あらゆる直接接続デバイスにおいてＯＰＥＮの宛先アドレスを検索する。もし見つかった場合は、ＯＰＥＮは、適切な直接接続デバイスに送信される。もしどの直接接続デバイスでもＯＰＥＮの宛先アドレスが見つからなかった場合は、ＳＡＳエクスパンダ１０１０〜１０２４の１つは、ＳＡＳエクスパンダルーティングテーブルにおいてＯＰＥＮの宛先アドレスを検索してよい。もし見つかった場合は、ＯＰＥＮは、適切なＳＡＳイニシエータにルーティングされる。もしＳＡＳエクスパンダルーティングテーブルでＯＰＥＮの宛先アドレスが見つからなかった場合は、ＳＡＳエクスパンダ１０１０〜１０２４の１つは、そのペア・サブトラクティブポートからＯＰＥＮを送出してよい。
【００３６】
更に、ＳＡＳカスケード接続トポロジ１０００内でＳＡＳのゾーン分けを実施するには、トポロジ内の端部のエクスパンダのみでチェックが必要になるであろう。端部のエクスパンダは、直接接続デバイスのための物理ポートの宛先を、ＯＰＥＮコマンド内のソースゾーングループと比較してよい。比較は、ゾーンの端部のデバイスエクスパンダに達するまでサブトラクティブに挙動する。
【００３７】
概して図１２を参照すると、ＳＡＳカスケード接続トポロジ内でペア・サブトラクティブルーティングを実施するための方法が示されている。方法１２００は、ＳＡＳエクスパンダデバイスに入力ポートを割り当てるステップ１２１０を含む。方法１２００は、更に、ＳＡＳエクスパンダデバイスに出力ポートを割り当てるステップ１２２０を含んでよい。代表的な実施形態では、方法１２００は、更に、出力ポート及び入力ポートをペア・サブトラクティブポートとして動作させるように互いに組み合わせてペアに定めるステップ１２３０を含んでよい。また、方法１２００は、ＳＡＳエクスパンダデバイスに第２の入力ポート及び第２の出力ポートを追加することを含んでよい。第２の入力ポート及び第２の出力ポートは、セカンダリ・サブトラクティブポートとして互いに組み合わされてペアにされてよい。
【００３８】
代表的な実施形態では、方法１２００は、入力ポートでＯＰＥＮコマンドが受信されたときに、もしＯＰＥＮコマンドの宛先がＳＡＳエクスパンダデバイスの直接接続デバイスではなく、尚且つ宛先がＳＡＳエクスパンダデバイスのルーティングテーブル内にない場合に、ＯＰＥＮコマンドを出力ポートから送出するステップ１２５０を、更に含んでよい。方法１２００は、出力ポートでＯＰＥＮコマンドが受信されたときに、もしＯＰＥＮコマンドの宛先がＳＡＳエクスパンダデバイスの直接接続デバイスではなく、尚且つ宛先がＳＡＳエクスパンダデバイスのルーティングテーブル内にない場合に、ＯＰＥＮコマンドを入力ポートから送出するステップ１２６０を、更に含んでよい。方法１２００は、第２の入力ポートでＯＰＥＮコマンドが受信されたときに、もしＯＰＥＮコマンドの宛先がＳＡＳエクスパンダデバイスの直接接続デバイスではなく、尚且つ宛先がＳＡＳエクスパンダデバイスのルーティングテーブル内にない場合に、ＯＰＥＮコマンドを第２の出力ポートから送出するステップを、更に含んでよい。方法１２００は、第２の出力ポートでＯＰＥＮコマンドが受信されたときに、もしＯＰＥＮコマンドの宛先がＳＡＳエクスパンダデバイスの直接接続デバイスではなく尚且つ宛先がＳＡＳエクスパンダデバイスのルーティングテーブル内にない場合に、ＯＰＥＮコマンドを第２の入力ポートから送出するステップを、更に含んでよい。更に、セカンダリサブトラクティブポートは、ＳＡＳエクスパンダデバイスの直接接続デバイスとの通信のために動作してよい。また、ＯＰＥＮコマンドは、デフォルトでプライマリサブトラクティブポートに設定されてよい。
【００３９】
代表的な実施形態では、方法１２００は、ベンダ固有ＳＭＰ機能の変更ルーティング属性を通じてＳＡＳエクスパンダのサブトラクティブポートを指定するステップを、更に含んでよい。更に、サブトラクティブポートの変更ルーティング属性が存在する場合は、ＳＡＳイニシエータは、そのサブトラクティブポートのＳＭＰディスカバリ応答属性を無視し、ベンダ固有ＳＭＰの変更ルーティング属性を使用してよい。
【００４０】
代表的実施形態では、方法１２００は、ＳＡＳイニシエータアドレスのみをＳＡＳエクスパンダのルーティングテーブルに入れる設定をするステップ１２４０を、更に含んでよい。例えば、ＳＡＳイニシエータアドレスのみをＳＡＳエクスパンダのルーティングテーブルに入れる設定をするステップ１２４０は、ＳＡＳエクスパンダによって実施されてよい。更に、ＳＡＳエクスパンダによって設定されるＳＡＳエクスパンダのルーティングテーブルは、自己設定指定のポートのためのルーティングテーブルであってよい。ＳＡＳイニシエータアドレスのみをＳＡＳエクスパンダのルーティングテーブルに入れる設定をするステップ１２４０は、ＳＡＳルーティングトポロジ内の各ＳＡＳイニシエータによって実施されてよく、どのＳＡＳイニシエータも、そのＳＡＳイニシエータのＳＡＳアドレスのみをＳＡＳエクスパンダのルーティングテーブルに入れる設定をする。更に、各ＳＡＳイニシエータは、そのＳＡＳイニシエータのＳＡＳアドレスをＳＡＳエクスパンダの一タイプの変更ルーティング属性ポートのルーティングテーブルのみに入れる設定を行ってよい。ＳＡＳエクスパンダの変更ルーティング属性ポートのタイプは、ＳＡＳルーティングトポロジ内でのＳＡＳイニシエータの位置によって決定されてよい。ＳＡＳイニシエータは、ＳＡＳルーティングトポロジの頂部又は底部に位置してよい。
【００４１】
本開示では、開示された方法は、デバイスによって読み取り可能な命令セット即ちソフトウェアとして実現されてよい。このようなソフトウェアは、開示された本発明の機能及びプロセスをコンピュータに実施させるために使用される格納コンピュータコードを含むコンピュータ可読ストレージ媒体を用いるコンピュータプログラム製品であってよい。コンピュータ可読媒体は、フロッピィディスク、光ディスク、ＣＤ−ＲＯＭ、磁気ディスク、ハードディスクドライブ、光磁気ディスク、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード若しくは光カード、又は電子命令を格納するのに適した任意のその他の媒体を非限定的に含む、任意の従来のタイプのものを含んでよい。更に、開示された方法のステップの具体的順序又は階層構造は、代表的アプローチの例であると理解される。方法のステップの具体的順序又は階層構造は、開示された内容の範囲内にとどまりつつ、設計の優先順位に基づいて再構成できると理解される。添付の方法クレームの範囲は、各種のステップ要素を例示的順序で提示しており、必ずしも提示された具体的順序又は階層構造に限定することを意味しない。
【００４２】
本開示及びそれらに付随する多くの利点は、以上の説明によって理解されると考えられ、開示内容から逸脱することなく又はそれらの要素の利点のいずれも犠牲にすることなく構成要素の形態、構成、及び配置に各種の変更を加えられることが明らかである。記載される形態は、説明的なものに過ぎず、以下のクレームは、このような変更を網羅及び内包することを意図している。
【図１】
2010061664.tif 000003
【図２Ａ】
2010061664.tif 000004
【図２Ｂ】
2010061664.tif 000005
【図２Ｃ】
2010061664.tif 000006
【図２Ｄ】
2010061664.tif 000007
【図２Ｅ】
2010061664.tif 000008
【図３】
2010061664.tif 000009
【図４】
2010061664.tif 000010
【図５】
2010061664.tif 000011
【図６】
2010061664.tif 000012
【図７】
2010061664.tif 000013
【図８】
2010061664.tif 000014
【図９】
2010061664.tif 000015
【図１０】
2010061664.tif 000016
【図１１Ａ】
2010061664.tif 000017
【図１１Ｂ】
2010061664.tif 000018
【図１１Ｃ】
2010061664.tif 000019
【図１１Ｄ】
2010061664.tif 000020
【図１２】
2010061664.tif 000021