(57)【要約】【課題】自身のルーティング属性をプログラミングする、シリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダのための方法および構造を提供すること。【解決手段】本構造は、関連するトランシーバとの複数の物理リンク（ＰＨＹ）であって、ＰＨＹがエキスパンダでポート（１２２）内に設定される複数の物理リンクと、ポートごとにルーティング属性を定義するメモリ（１２８）とを備えるＳＡＳエキスパンダ（１２０）を含む。ＳＡＳエキスパンダは、エキスパンダのポートで受信された発見シリアル管理プロトコル（ＳＭＰ）要求を検出するよう動作可能な、およびＳＭＰ要求の検出に応答して、ポートについてのルーティング属性をサブトラクティブ・ルーティングに設定するようさらに動作可能な制御ユニット（１２６）も備える。【選択図】図１
2014093073.tif 000002
【特許請求の範囲】
【請求項１】
関連するトランシーバとの複数の物理リンク（ＰＨＹ）であって、前記ＰＨＹがエキスパンダでポート（１２２）内に設定される物理リンクと、
前記ポートごとにルーティング属性を定義するメモリ（１２８）と、
前記エキスパンダのポートで受信された発見シリアル管理プロトコル（ＳＭＰ）要求を検出するよう動作可能な、および前記ＳＭＰ要求の検出に応答して、前記ポートについての前記ルーティング属性をサブトラクティブ・ルーティングに設定するようさらに動作可能な制御ユニット（１２６）とを備えることを特徴とする、シリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダ（１２０）。
【請求項２】
前記ＳＭＰ要求がＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンドを備える、請求項１に記載のＳＡＳエキスパンダ。
【請求項３】
前記制御ユニットが、ＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳメッセージを直接結合されたエキスパンダに送信するようさらに動作可能である、請求項２に記載のＳＡＳエキスパンダ。
【請求項４】
前記制御ユニットが、前記ＳＡＳエキスパンダの他のポートを介して、ＳＭＰ  ＩＤＥＮＴＩＦＹアドレス・フレームを伝搬するようさらに動作可能であり、前記伝搬されたＳＭＰ  ＩＤＥＮＴＩＦＹアドレス・フレームに応答して受信したＩＤＥＮＴＩＦＹアドレス・フレームに基づいて、前記他のポートについての前記ルーティング属性をテーブル・ルーティングに設定するべきか、またはダイレクト・ルーティングに設定するべきかを決定するようさらに動作可能である、請求項１に記載のＳＡＳエキスパンダ。
【請求項５】
前記制御ユニットが、前記受信したＩＤＥＮＴＩＦＹアドレス・フレームに基づいて、前記他のポートに結合されたＳＡＳデバイスがＳＡＳエキスパンダか、または端末装置かを決定するようさらに動作可能であり、前記ＳＡＳデバイスがエキスパンダである場合は前記他のポートについての前記ルーティング属性をテーブル・ルーティングに設定するよう動作可能であり、前記ＳＡＳデバイスが端末装置である場合は前記他のポートについての前記ルーティング属性をダイレクト・ルーティングに設定するよう動作可能である、請求項４に記載のＳＡＳエキスパンダ。
【請求項６】
前記制御ユニットが、１つまたは複数のＩＤＥＮＴＩＦＹアドレス・フレームにおいて受信した情報に基づいて、ルーティング・テーブルをポピュレートして、前記ルーティング・テーブルを調べることによってテーブル・ルーティングに設定されたポートとの接続を確立するようさらに動作可能である、請求項４に記載のＳＡＳエキスパンダ。
【請求項７】
前記制御ユニットが、前記ＳＡＳエキスパンダの電源投入時、および前記ＳＭＰ要求の受信前に、前記ＳＡＳエキスパンダの全てのポートをテーブル・ルーティングに設定するようさらに動作可能である、請求項１に記載のＳＡＳエキスパンダ。
【請求項８】
前記エキスパンダの制御ユニット（１２６）を介して、前記エキスパンダのポートで受信された発見シリアル管理プロトコル（ＳＭＰ）要求を検出することと、
前記制御ユニットを介して、前記ＳＭＰ要求の検出に応答して、前記ポートについてのメモリ（１２８）内のルーティング属性をサブトラクティブ・ルーティングに設定することとを備えることを特徴とする、関連するトランシーバとの複数の物理リンク（ＰＨＹ）を備えるシリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダであって、前記ＰＨＹがポート（１２２）内に設定されるシリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダ（１２０）を操作するための方法。
【請求項９】
前記ＳＭＰ要求がＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳメッセージを備える、請求項８に記載の方法。
【請求項１０】
前記エキスパンダに直接結合されたエキスパンダにＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳメッセージを送信することをさらに備える、請求項８に記載の方法。
【請求項１１】
前記エキスパンダで、前記ＳＡＳエキスパンダの他のポートを介して、ＳＭＰ  ＩＤＥＮＴＩＦＹアドレス・フレームを伝搬することと、
前記制御ユニットで、前記伝搬されたＳＭＰ  ＩＤＥＮＴＩＦＹアドレス・フレームに応答して受信したＩＤＥＮＴＩＦＹアドレス・フレームに基づいて、前記他のポートについての前記ルーティング属性をテーブル・ルーティングに設定するべきか、またはダイレクト・ルーティングに設定するべきかを決定することとをさらに備える、請求項８に記載の方法。
【請求項１２】
前記制御ユニットで、前記受信したＩＤＥＮＴＩＦＹアドレス・フレームに基づいて、前記他のポートに結合されたＳＡＳデバイスがＳＡＳエキスパンダか、または端末装置かを決定することと、
前記ＳＡＳデバイスがエキスパンダである場合は、前記制御ユニットを介して、前記他のポートについての前記ルーティング属性をテーブル・ルーティングに設定することと、
前記ＳＡＳデバイスが端末装置である場合は、前記制御ユニットを介して、前記他のポートについての前記ルーティング属性をダイレクト・ルーティングに設定することとをさらに備える、請求項１１に記載の方法。
【請求項１３】
前記制御ユニットを介して、１つまたは複数のＩＤＥＮＴＩＦＹアドレス・フレームにおいて受信した情報に基づいて、ルーティング・テーブルをポピュレートすることと、
前記ルーティング・テーブルを調べることによってテーブル・ルーティングに設定されたポートとの接続を確立することとをさらに備える、請求項１１に記載の方法。
【請求項１４】
前記制御ユニットが、前記ＳＡＳエキスパンダの電源投入時、および前記ＳＭＰ要求の受信前に、前記ＳＡＳエキスパンダの全てのポートをテーブル・ルーティングに設定するようさらに動作可能である、請求項８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にシリアル接続ＳＣＳＩ（ＳＡＳ）システムに関し、より具体的には、ＳＡＳエキスパンダに関する。
【背景技術】
【０００２】
ＳＡＳドメイン（すなわち、切替えＳＡＳファブリックを実装する電子システム）では、ＳＡＳイニシエータが、多数のＳＡＳまたはシリアル・アドバンスト・テクノロジー・アタッチメント（ＳＡＴＡ）端末装置と通信することは一般的である。端末装置は、たとえば、１つまたは複数のデータの論理ボリュームを供給するＳＡＳ／ＳＡＴＡ記憶装置を備えうる。ＳＡＳドメインでは、端末装置は、１つまたは複数のＳＡＳエキスパンダを介してイニシエータと通信するために結合されうる。ＳＡＳエキスパンダは、イニシエータと様々な記憶装置との間に、切替え一時的通信チャネルを確立するために役立つ。
【０００３】
それぞれのＳＡＳエキスパンダは、関連するトランシーバとの複数の物理リンク（ＰＨＹ）を含む。ＰＨＹは、ＳＡＳポートを定義するために使用される。たとえば、単一のＰＨＹで構成されるＳＡＳポートはナロー・ポートと呼ばれ、複数のＰＨＹを備えるＳＡＳポートはワイド・ポートと呼ばれる。
【０００４】
最初にＳＡＳエキスパンダが初期化される際（たとえば、発見する間に）、エキスパンダのそれぞれのポートは、外部ソースによって設定されるルーティング属性（すなわち、そのＰＨＹのそれぞれのルーティング属性）を有している。ルーティング属性は、ＳＡＳエキスパンダが、ＳＡＳデバイス間の通信を確立するために、入ってくる要求のルーティングを決定する方法を定義する。このような要求の一例は、オープン・アドレス・フレーム（ＯＡＦ）である。ルーティング属性は、「サブトラクティブ（ｓｕｂｔｒａｃｔｉｖｅ）」、「テーブル（ｔａｂｌｅ）」、または「ダイレクト（ｄｉｒｅｃｔ）」と定義されうる。
【０００５】
ダイレクト・ルーティングは、ＰＨＹが端末装置（たとえば、記憶装置）に直接結合される場合に使用される。ＳＡＳエキスパンダは、発見する間に端末装置を認識する。したがって、入ってくる要求が端末装置のＳＡＳアドレスを示す場合、ＳＡＳエキスパンダは、その装置と直接結合されたポートを使用して、すぐに端末装置との接続を確立することができる。
【０００６】
テーブル・ルーティングは、ポートがＳＡＳアドレスの知られているセットに結合されている（たとえば、１つまたは複数のエキスパンダを介して複数のデバイスに結合されている）場合に、ＳＡＳエキスパンダによって使用される。ルーティング・テーブルは、メモリ内に保持されて、テーブル・ルーティングに設定されたポートに関連付けられる。ルーティング・テーブルは、様々なテーブル・ルーティング・ポートを介して利用可能なＳＡＳアドレスを示す。それらのＳＡＳアドレスのうちの１つを要求する、入ってくる要求が受信されると、その要求を転送するために適切なポートが使用される。
【０００７】
サブトラクティブ・ルーティングは、「最後の手段のポート」を定義するために使用される。サブトラクティブ・ルーティング属性を備えたポートは、要求されたＳＡＳアドレスがエキスパンダでルーティング・テーブルにおいて識別されず、ＳＡＳエキスパンダに直接接続されていない場合はいつでも使用される。エキスパンダごとに、サブトラクティブ・ルーティング・ポートが１つだけあることが理想的である。
【０００８】
通常実装されるように、ルーティング属性は、通常はエキスパンダに結合された管理システム上の設定ツールを使用して、システム・エンジニアによって手動で設定される。これは時間のかかる作業であり、ＳＡＳドメインが正しく設定されないと（すなわち、人的エラーによって）問題を引き起こす場合がある。たとえば、相互に結合された２つのポートが、それぞれサブトラクティブ・ルーティングを使用すると、入ってくる要求がそれらの２つのポート間で無限ループに跳ね返ってしまう可能性がある。これはシステムの不安定性を引き起こす場合があり、ＳＡＳドメインの完全な発見を妨げてしまう場合がある。
【０００９】
さらなるシステムでは、ＳＡＳイニシエータは、それぞれのＳＡＳエキスパンダを発見して、それぞれのエキスパンダのそれぞれの個々のポートのルーティング属性をプログラミングすることによって、ＳＡＳエキスパンダのルーティング属性の設定を統合および管理することができる。しかし、イニシエータはドメインのそれぞれの端末装置およびエキスパンダと通信しなければならないので、これもＳＡＳドメインで多大な処理能力および帯域幅を占めるイニシエータにとって時間のかかる作業である。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
したがって、ＳＡＳエキスパンダのポートのルーティング属性を効率的な方法で設定することが、進行中の問題である。
【課題を解決するための手段】
【００１１】
本発明は、上記および他の問題に取り組み、それによってＳＡＳエキスパンダがそれら自身のポートのルーティング属性を自動的に設定するための方法および構造を提供することによって、有用な最新技術（ｓｔａｔｅ  ｏｆ  ｔｈｅ  ｕｓｅｆｕｌ  ａｒｔｓ）を発展させる。これは、処理負荷をＳＡＳドメイン内の多くのデバイスに分散するために役立ち、その結果、ドメインの様々なエキスパンダのルーティング属性がプログラミングされうる速度を上げる。
【００１２】
本発明の一態様では、関連するトランシーバとの複数の物理リンク（ＰＨＹ）を備えるシリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダであって、ＰＨＹがポート内に設定されるシリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダを操作するための方法が提供される。本方法は、エキスパンダの制御ユニットを介して、エキスパンダのポートで受信された発見シリアル管理プロトコル（ＳＭＰ）要求を検出することを備える。本方法は、制御ユニットを介して、ＳＭＰ要求の検出に応答して、ポートについてのメモリ内のルーティング属性をサブトラクティブ・ルーティングに設定することをさらに備える。
【００１３】
本発明の他の態様は、関連するトランシーバとの複数の物理リンク（ＰＨＹ）であって、ＰＨＹがエキスパンダでポート内に設定される物理リンクと、ポートごとにルーティング属性を定義するメモリとを備えるシリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダを提供する。ＳＡＳエキスパンダは、エキスパンダのポートで受信された発見シリアル管理プロトコル（ＳＭＰ）要求を検出するよう動作可能な、およびＳＭＰ要求の検出に応答して、ポートについてのルーティング属性をサブトラクティブ・ルーティングに設定するようさらに動作可能な制御ユニットも備える。
【００１４】
本発明の他の態様は、プロセッサによって実行されると、関連するトランシーバとの複数の物理リンク（ＰＨＹ）を備えるシリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダであって、ＰＨＹがポート内に設定されるシリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダを操作するための方法を実行するために動作可能なプログラム命令を組み入れる、持続性コンピュータ可読メディアを提供する。本方法は、エキスパンダの制御ユニットを介して、エキスパンダのポートで受信された発見シリアル管理プロトコル（ＳＭＰ）要求を検出することを備える。本方法は、制御ユニットを介して、ＳＭＰ要求の検出に応答して、ポートについてのメモリ内のルーティング属性をサブトラクティブ・ルーティングに設定することをさらに備える。
【００１５】
他の例示的実施形態（たとえば、上述の実施形態に関する方法およびコンピュータ可読メディア）は、以下で説明する。
【図面の簡単な説明】
【００１６】
【図１】本発明の特徴および態様による、例示的ＳＡＳドメインのブロック図である。
【図２】本発明の特徴および態様による、ＳＡＳエキスパンダを操作する例示的方法を説明する流れ図である。
【図３】本発明の特徴および態様によって設定されたポートを備えた例示的ＳＡＳドメインを示すブロック図である。
【図４】例示的実施形態において所望の機能を実行するためのプログラム命令を組み入れるコンピュータ可読メディアを実行するよう動作可能な処理システムを示す図である。
【発明を実施するための形態】
【００１７】
図１は、本発明の特徴および態様による、例示的シリアル接続ＳＣＳＩ（ＳＡＳ）ドメイン１００のブロック図である。ＳＡＳドメイン１００は、ＳＡＳイニシエータ１１０を、いくつかの端末装置１３０（たとえば、ＳＡＳまたはシリアル・アドバンスト・テクノロジー・アタッチメント（ＳＡＴＡ）ターゲット）と結合する。ＳＡＳイニシエータ１１０は、拡張ＳＡＳエキスパンダ１２０を介してこれらのターゲット・デバイスに結合される。したがって、ある動作環境では、ＳＡＳイニシエータ１１０によってコマンドが生成されて、端末装置１３０に向けられると、ＳＡＳエキスパンダ１２０はＳＡＳイニシエータ１１０と端末装置１３０との間に接続を確立することができる。
【００１８】
ＳＡＳイニシエータ１１０は、端末装置１３０に向けられるコマンドを生成するよう動作可能な任意の適切なＳＡＳイニシエータ・デバイスを備える。たとえば、ＳＡＳイニシエータ１１０は、ホストからの入力に基づいて、端末装置１３０でデータの読出しまたは書込みをすることができる。イニシエータ１１０は、独立したＳＡＳデバイス、ホストのホスト・バス・アダプタ（ＨＢＡ）、ホストの統合コンポーネント等を備えうる。発見する間に（すなわち、システムの通常の動作の前に）、ＳＡＳイニシエータ１１０は、ＳＡＳドメイン１００上のデバイスを識別するためにＳＡＳドメイン１００中に広められる発見コマンドを生成する。
【００１９】
端末装置１３０は、ＳＡＳ／ＳＡＴＡ仕様に従って、任意の適切なＳＡＳまたはＳＡＴＡターゲット・デバイスを備えうる。たとえば、端末装置１３０は、ＳＡＳイニシエータ１１０にアクセスすることができるデータの論理ボリュームを供給する記憶装置を備えうる。
【００２０】
拡張ＳＡＳエキスパンダ１２０は、イニシエータ１１０と端末装置１３０との間にコマンドをルーティングすることができる。たとえば、エキスパンダ１２０は、イニシエータ１１０と１つまたは複数の端末装置１３０との間に接続を確立することができる。この実施形態では、それぞれのエキスパンダ１２０は、スイッチング・ハードウェア１２４を介して切替え可能に接続される複数のＳＡＳポート１２２を含む。それぞれのエキスパンダ内の制御ユニット１２６は、エキスパンダの一般的操作を管理する。
【００２１】
それぞれのＳＡＳポート１２２は、関連するトランシーバとの１つまたは複数の物理リンク（ＰＨＹ）を備える。スイッチング・ハードウェア１２４は、様々なＰＨＹ間で通信することができるようにするために、それらの間の接続を確立するよう動作可能である。スイッチング・ハードウェア１２４（たとえば、「クロスバー」スイッチ）の操作は、エキスパンダ１２０で、この実施形態では制御ユニット１２６のコンポーネントである、制御ロジックおよびハードウェアによって管理される。制御ユニット１２６は、たとえば、カスタム回路として、関連するプログラム・メモリに格納されたプログラム命令を実行する専用または汎用プロセッサとして、またはそれらの組合せとして実装されうる。
【００２２】
それぞれの拡張ＳＡＳエキスパンダ１２０は、ＳＡＳドメイン１００上の発見処理の間、またはその後に、自身のポートのルーティング属性を自己設定するよう改良されている。特に、拡張ＳＡＳエキスパンダ１２０は、それぞれのポートがテーブル・ルーティングに設定されるべきか、ダイレクト・ルーティングに設定されるべきか、またはサブトラクティブ・ルーティングに設定されるべきかを決定することができる。これは、以下で説明する制御ユニット１２６で実装された論理によって達成される。
【００２３】
発見処理の間、それぞれの制御ユニット１２６は、エキスパンダ１２０のポート１２２で、シリアル管理プロトコル（ＳＭＰ）ＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンドの受信を待つ（たとえば、任意の発見処理を開始する前に）。これらの要求は、発見する間にＳＡＳイニシエータ１１０によって生成されて、ＳＡＳドメインを通じてＳＡＳエキスパンダに伝搬される。ＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンドがエキスパンダで受信されると、制御ユニット１２６は、コマンドを受信したポート１２２を識別する。コマンドを受信したポートは、（たとえば、１つまたは複数のエキスパンダを介して）ＳＡＳイニシエータに結合される、したがって、そのポートについてのルーティング属性はサブトラクティブ・ルーティングに設定される。コマンドを受信したポートがＳＡＳイニシエータに直接結合されている場合、そのポートはサブトラクティブ・ルーティングではなく、代わりにダイレクト・ルーティングに設定されうる。
【００２４】
次いで、制御ユニット１２６が、上述のＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンドを受信しなかったそれぞれのポートを識別して、このようなポートに直接結合されたそれぞれのデバイスとのＳＡＳハンドシェイクを開始する。ＳＡＳハンドシェイクは、エキスパンダのポートに直接結合されたそれぞれのデバイスに、ＳＭＰ  ＩＤＥＮＴＩＦＹアドレス・フレーム（ＩＡＦ）を送信することを含みうる。ハンドシェイク処理は、それぞれの直接結合されたデバイスからＩＤＥＮＴＩＦＹアドレス・フレームを受信して、直接結合されたデバイスが他のＳＡＳエキスパンダか、端末装置かを示すことをさらに含みうる。デバイスが端末装置である場合、制御ユニット１２６は、そのポートについてのルーティング属性をダイレクト・ルーティングに設定する。あるいは、デバイスが他のエキスパンダである場合、制御ユニット１２６はルーティング属性をテーブル・ルーティングに設定して、ＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンドを結合されたエキスパンダに転送／伝搬し、次いでコマンドの受信に応答してＰＨＹのルーティング属性を設定するために自身の処理を実行する。
【００２５】
ポートについてのルーティング属性が設定された後、ＳＡＳエキスパンダ１２０のメモリ１２８（たとえば、レジスタのセット、ソリッド・ステート・メモリ、ＲＡＭ等）は、テーブル・ルーティング用に設定されたポートを使用することができるようにするために、ルーティング情報をポピュレートされうる。これは、当業者には良く知られているＳＡＳ標準に従って生じうる。たとえば、ＳＡＳエキスパンダは、ＳＡＳ標準（たとえば、参照により本明細書に組み込む、２００８年１１月１９日にＴ１０委員会によって発行された、ＳＡＳバージョン２、改訂版１５）に従って定義された自己設定エキスパンダ・デバイスを備えうる。このコンテキストでは、「自己設定」は、ＳＡＳエキスパンダがそれ自身のルーティング・テーブルをＳＡＳアドレスにポピュレートしうることを示す。ＳＡＳ標準において定義されるように、「自己設定」は、それら自身のポートのルーティング属性を設定しうるエキスパンダを指さない。
【００２６】
上述の拡張ＳＡＳエキスパンダ１２０によって、ＳＡＳイニシエータ１１０の「下」のＳＡＳエキスパンダ１２０が、要求をＳＡＳイニシエータ１１０に向かって「上」にサブトラクティブにルーティングすることが確実になる。本明細書で使用される場合、ルート・コンプレックスから離れているエキスパンダ（すなわち、ＳＡＳイニシエータから離れているエキスパンダ）は、ダウンストリーム・エキスパンダと呼ばれる。本明細書に記載のルーティング属性を適用することによって、普通なら、ＳＡＳエキスパンダの不適切に設定されたルーティング属性が、機能しない、または不安定なＳＡＳドメインをもたらす状況を回避することができる。さらに、（ＳＡＳイニシエータ１１０を介して遠隔に行うのではなく）ＳＡＳエキスパンダでルーティング属性をプログラミングすることによって、ＳＡＳイニシエータ１１０の処理リソースを節約でき、発見処理の速度を上げることができる。
【００２７】
本明細書に記載のコンポーネントの特定の配列は、例示的なものを意図するにすぎない点に留意されたい。当業者は、ＳＡＳドメイン・デバイスの特定の配列および設定は、設計選択の問題にすぎないことが理解できよう。
【００２８】
図２は、本発明の特徴および態様による、ＳＡＳエキスパンダを操作する例示的方法２００を説明する流れ図である。図２の方法は、図１に関して上述したようなＳＡＳドメインにおいて操作可能でよい。本明細書に記載の流れ図のステップは包括的なものではなく、図示しない他のステップを含みうる。本明細書に記載のステップは、他の順序でも実行されうる。
【００２９】
ステップ２０２で、ＳＡＳドメイン内でＳＡＳ発見処理が開始される。ＳＡＳ発見処理は一般的に１日の始まりに実行され、ＳＡＳドメインを最初に設定するために使用されうる（たとえば、発見は、ドメイン内のＳＡＳエキスパンダの様々なポートのルーティング属性や、リモート・デバイス間の接続を確立するために使用されるルーティング・テーブル等をプログラムするために使用されうる）。たとえば、発見はＳＡＳドメインのパワー・オン・リセット後に生じうる。発見の間／後の最初の設定セットアップによって、ドメインの様々な要素間のＳＡＳ通信を確実に確立することができる。発見処理はＳＡＳイニシエータによって開始でき、ＳＡＳエキスパンダの切替えファブリック（たとえば、ＳＡＳドメインのサービス・デリバリ・サブシステム（ＳＤＳ））によってリモート・デバイスに伝搬されうる。
【００３０】
たとえば、ＳＡＳイニシエータは、直接結合された１つまたは複数のデバイスとのＳＡＳハンドシェイクを開始することができる。これは、ＩＤＥＮＴＩＦＹアドレス・フレームを直接結合されたデバイスに送信すること、および、それに応答して直接結合されたデバイスからＩＤＥＮＴＩＦＹアドレス・フレームを受信することを含みうる。次いで、ＳＡＳイニシエータは、受信したＩＤＥＮＴＩＦＹフレームに基づいて、そのデバイスがＳＡＳエキスパンダであることを決定することができる。次いで、ＳＡＳイニシエータは、ＳＭＰ  ＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンド／要求をエキスパンダに送信することができる。
【００３１】
ステップ２０４で、ＳＡＳエキスパンダの制御ユニットが、そのポートのうちの１つでＳＭＰ要求の受信を検出する。たとえば、ＳＭＰ要求はＳＡＳエキスパンダに直接向けられているので、エキスパンダはその要求を受信することができる。この要求は、ＳＭＰ  ＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンドを備える。
【００３２】
ステップ２０６で、エキスパンダの制御ユニットが、ＳＭＰ要求を受信したポートについてのルーティング属性をサブトラクティブ・ルーティングに設定する。したがって、このシステムでは、エキスパンダからエキスパンダへと順に続く場合、サブトラクティブ・ルーティング・ポートは全てＳＡＳイニシエータに向かってアップストリームに導かれる。
【００３３】
次いで、エキスパンダは、残りのポートと直接結合されているデバイスとのＳＡＳハンドシェイクを開始することができる。所与のポートについてのＳＡＳハンドシェイクの間、エキスパンダはＩＤＥＮＴＩＦＹアドレス・フレームを直接結合されたデバイス（すなわち、未設定ポートに直接結合されたデバイス）に送信して、直接結合されたデバイスからＩＤＥＮＴＩＦＹアドレス・フレームを受信する。ＩＤＥＮＴＩＦＹアドレス・フレームが、直接結合されたデバイスが端末装置（ＳＡＳ／ＳＡＴＡターゲットなど）であることを示す場合、そのポートはダイレクト・ルーティングに設定される。
【００３４】
しかし、直接結合されたポートが他のＳＡＳエキスパンダである場合、第１のＳＡＳエキスパンダがＳＭＰ  ＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンドを送信しうる。ＳＭＰ  ＲＥＰＯＲＴ  ＳＥＬＦ−ＣＯＮＦＩＧＵＲＡＴＩＯＮ  ＳＴＡＴＵＳコマンドの受信により、他のエキスパンダで方法２００がトリガされうる。したがって、ＳＭＰコマンド／要求によって、ダウンストリームＳＡＳエキスパンダが、再帰的処理において方法２００などによって、それら自身のルーティング属性を適切に設定することが可能になる。
【００３５】
上述の処理の性質のために、上述のルーティング属性設定処理が単一のイニシエータ環境で実行されることが望ましい場合がある。
【００３６】
図３は、本発明の特徴および態様によって設定されたポートを備えた例示的ＳＡＳドメイン３００を示すブロック図である。図３によれば、ＳＡＳイニシエータ３１０（この場合は、ＳＡＳドメイン上の複数の記憶装置のコントローラ）は、複数のＳＡＳポートを含む。それぞれのポートは、コントローラによって最初にテーブル・ルーティングに設定されている。さらに図３によれば、それぞれのＳＡＳエキスパンダ３２０は、自身のポートのルーティング属性を設定している。端末装置３３０に直接結合されたポートはダイレクト・ルーティングに設定され、アップストリームＳＡＳエキスパンダに直接結合されたポートはサブトラクティブ・ルーティングに設定されている。ダウンストリーム・エキスパンダに直接結合されたポートはテーブル・ルーティングに設定されている。
【００３７】
本明細書に開示した実施形態は、ソフトウェア、ハードウェア、ファームウェア、またはそれらの様々な組合せの形式をとることができる。特定の一実施形態では、ソフトウェアは、エキスパンダ１２０の処理システムに、本明細書に開示した様々な動作を実行するよう指示するために使用される。図４は、たとえば図１の拡張エキスパンダ１２０における、例示的実施形態において所望の機能を実行するためのプログラム命令を組み入れるコンピュータ可読メディアを実行するよう動作可能な処理システム４００を示している。処理システム４００は、コンピュータ可読記憶メディア４１２に明確に組み入れられたプログラム命令を実行することによって、上述の動作を実行するよう動作可能である。この点で、本発明の実施形態は、コンピュータ、または他の任意の命令実行システムによって使用するためのプログラム・コードを提供する、コンピュータ可読記憶メディア４１２を介してアクセスすることができるコンピュータ・プログラムの形式をとることができる。この説明のために、コンピュータ可読記憶メディア４１２は、コンピュータによって使用するためのプログラムを含むか、格納することができる、どのようなものでもよい。
【００３８】
コンピュータ可読記憶メディア４１２は、電子、磁気、光、電磁、赤外線、または半導体デバイスでよい。コンピュータ可読記憶メディア４１２の例には、ソリッド・ステート・メモリ、磁気テープ、リムーバブル・コンピュータ・ディスケット、ランダム・アクセス・メモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、固定磁気ディスク、および光ディスクがある。現在の光ディスクの例には、コンパクト・ディスク−読出し専用メモリ（ＣＤ−ＲＯＭ）、コンパクト・ディスク−読出し／書込み（ＣＤＲ／Ｗ）、およびＤＶＤがある。
【００３９】
プログラム・コードの格納および／または実行に適している処理システム４００は、システム・バス４５０を通じてプログラムおよびデータ・メモリ４０４に結合された少なくとも１つのプロセッサ４０２を含む。プログラムおよびデータ・メモリ４０４は、プログラム・コードの実際の実行の間に使用されるローカル・メモリ、大容量記憶装置、および実行の間に大容量記憶装置からコードおよび／またはデータが検索される回数を減らすために少なくともいくつかのプログラム・コードおよび／またはデータの一時的記憶装置を提供するキャッシュ・メモリを含むことができる。
【００４０】
入力／出力、すなわちＩ／Ｏデバイス４０６（たとえば、ＰＨＹ）は、直接、または介在するＩ／Ｏコントローラを通じて結合されうる。処理システム４００が、介在するプライベートまたはパブリック・ネットワークを通じて他のデータ処理システムまたは記憶装置と結合することができるようにするために、ネットワーク・アダプタ・インターフェース４０８もシステムに統合されうる。モデム、ケーブル・モデム、ＩＢＭチャネル・アタッチメント、ＳＣＳＩ、ファイバー・チャネル、およびイーサネット・カードは、現在利用可能なタイプのネットワークまたはホスト・インターフェース・アダプタのうちのほんの一部である。
【００４１】
図面および上記の説明において本発明を図示および説明してきたが、このような図示および説明は、例示的なものであって、特徴を限定するものと見なされるべきではない。本発明の一実施形態、および本発明のわずかな変形が図示および説明されている。特に、例示的ソフトウェアまたはファームウェア実施形態として図示および説明された特徴は、カスタマイズされた論理回路として同等に実装でき、逆もまた同様である。本発明の趣旨の範囲内である全ての変更および修正のために、保護が望まれる。当業者は、本発明の範囲内の、上述の実施形態の変形形態が理解できるであろう。その結果、本発明は、上述の特定の例および説明に限定されず、以下の特許請求の範囲およびそれらの同等物によってのみ限定される。
【図１】
2014093073.tif 000003
【図２】
2014093073.tif 000004
【図３】
2014093073.tif 000005
【図４】
2014093073.tif 000006