(57)【要約】      （修正有）【課題】ディスクアレイシステム内において使用されるＨＤＤ及びＨＤＤがディスクアレイシステムから取り去られた後にＨＤＤへの許可されないアクセスを防止する。【解決手段】一つの実施例において、ディスクアレイシステム１００は各ＨＤＤ上へパスワードを設定する。ＨＤＤは、正しいパスワードが入力されるまで、ディスクアレイシステム１００またはコンピュータシステムからのアクセスを拒否する。代わりの実施例において、ＨＤＤ１１４はディスクアレイシステム１００の一つ以上のワールドワイドネーム（ＷＷＮ）を記憶する。ＷＷＮを記憶した後に、ＨＤＤは、ＨＤＤが記憶したものと同じＷＷＮを有するディスクアレイシステム１００からのアクセスだけを許可する。【選択図】図１
2007102761.tif 000002
【特許請求の範囲】
【請求項１】
ディスクコントローラと前記のディスクコントローラとコミュニケーションを行う複数のハードディスクドライブを有するディスクアレイシステム内の前記のハードディスクドライブ内に保存されたデータへのアクセスを制御する方法において、
前記のディスクコントローラによって、前記のディスクアレイシステム内の前記の各ハードディスクドライブに対してパスワードを生成するステップと；
前記のディスクコントローラによって、それぞれの前記のハードディスクドライブに対して生成されたそれぞれのパスワードを含むコマンドを前記の各ハードディスクドライブに送るステップと；
前記のコマンドを受信するそれぞれの前記の各ハードディスクドライブによって、パスワードがそれぞれの前記のハードディスクドライブによって既に保存されているかをチェックし、もしもパスワードが保存されていないならば、それぞれの前記のハードディスクドライブによって、そのそれぞれのハードディスクドライブに対して生成されたそれぞれの前記のパスワードを保存するステップと；
から成ることを特徴とする方法。
【請求項２】
もしも前記のハードディスクドライブの内の任意の特定のものに対して生成された対応する前記のパスワードが前記のコマンドによって前記のハードディスクドライブに送信されないならば、該特定のハードディスクドライブへのアクセスを防止するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
パスワード管理テーブル内に前記の各ハードディスクドライブのワールドワイドネーム（ＷＷＮ）、および前記の各ハードディスクドライブに対して生成されたそれぞれの前記のパスワードを保存するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項４】
ＣＰＵ、および前記の各ハードディスクドライブ内の不揮発性メモリ内に保存され、パスワードがそのハードディスクドライブによって既に保存されているかを前記のＣＰＵにチェックさせる、前記のＣＰＵによる実行のためのソフトウエアを前記の各ハードディスクドライブに提供するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
インクワイアリコマンドを送る前に、それぞれの各ハードディスクドライブに対するそれぞれのパスワードを含むパスワードコマンドを、前記のディスクコントローラによって、各ハードディスクドライブに送信するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記のハードディスクドライブに前記のコマンドを送った前記のコントローラのソース識別を、前記のハードディスクドライブによって保存するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】
不揮発性メモリ、ＣＰＵ、およびローカルディスクを有し、少なくとも最初はディスクアレイシステム内に配置されているハードディスクドライブへのアクセスを制御する方法において、
前記のハードディスクドライブによって、前記のディスクアレイのディスクコントローラのワールドワイドネーム（ＷＷＮ）を記憶するステップを含み、
それによって、前記の記憶されたＷＷＮとは異なるＷＷＮを有する装置によって前記のハードディスクドライブをアクセスする試みが前記のハードディスクドライブによって拒否されることを特徴とする方法。
【請求項８】
それ自身のＷＷＮを有し、前記のハードディスクドライブとコミュニケーションを行う複数のディスクコントローラを備えるステップをさらに含み、
前記のハードディスクドライブが前記の各コントローラの前記のＷＷＮを予め決められた数まで保存し、その後に、前記のハードディスクドライブによって保存された前記のＷＷＮと一致するＷＷＮを有する装置による初期化だけを許可することを特徴とする請求項７に記載の方法。
【請求項９】
複数の前記のハードディスクドライブを備えるステップをさらに含み、各ハードディスクドライブは前記のディスクコントローラの前記のＷＷＮを記憶することを特徴とする請求項７に記載の方法。
【請求項１０】
複数の前記のハードディスクドライブを備えるステップをさらに含み、各ハードディスクドライブは前記のディスクコントローラのそれぞれの前記のＷＷＮを予め決められた数まで記憶することを特徴とする請求項７に記載の方法。
【請求項１１】
ＣＰＵおよび、前記のＣＰＵによって実行される時に、前記のディスクコントローラから受信されたコマンドから前記のＷＷＮを前記のハードディスクドライブに取得させるソフトウエアを保存する不揮発性メモリを前記のハードディスクドライブに提供するステップをさらに含むことを特徴とする請求項７に記載の方法。
【請求項１２】
前記のディスクコントローラによって送られたログインコマンドフレームから前記のＷＷＮを取得するステップをさらに含むことを特徴とする請求項７に記載の方法。
【請求項１３】
ワールドワイドネーム（ＷＷＮ）記憶モジュール、およびハードディスクドライブへのアクセスを制御するためのＣＰＵを含む少なくとも一つのハードディスクドライブと；
前記のハードディスクドライブとコミュニケーションを行い、ＷＷＮを有する少なくとも一つのアクセス装置と
を備え、
前記のハードディスクドライブは前記のアクセス装置の前記のＷＷＮを記憶し、その後に、記憶された前記のＷＷＮに一致するＷＷＮを有するアクセス装置によるアクセスだけを許可することを特徴とするストレージシステム。
【請求項１４】
それぞれが異なるＷＷＮを有する複数のアクセス装置が存在し、前記のハードディスクドライブが前記の複数のアクセス装置の前記のＷＷＮを予め決められた数まで記憶し、その後に、記憶された前記のＷＷＮの内の一つに一致するＷＷＮを有する装置によるアクセスだけを許可することを特徴とする請求項１３に記載のシステム。
【請求項１５】
前記のアクセス装置がディスクアレイシステム内のディスクコントローラであることを特徴とする請求項１３に記載のシステム。
【請求項１６】
前記のハードディスクドライブが、ＣＰＵおよび、前記のＣＰＵによって実行される時に、前記のアクセス装置から受信されたコマンドから前記のＷＷＮを前記のハードディスクドライブに取得させるソフトウエアを保存する不揮発性メモリを含むことを特徴とする請求項１３に記載のシステム。
【請求項１７】
前記のＷＷＮが前記のアクセス装置によって送られたログインコマンドフレームから取得されることを特徴とする請求項１６に記載のシステム。
【請求項１８】
それぞれが異なるＷＷＮを有する複数のアクセス装置が存在し、前記のハードディスクドライブが前記の複数のアクセス装置の前記のＷＷＮを予め決められた数まで記憶し、その後に、記憶された前記のＷＷＮの内の一つに一致するＷＷＮを有する装置によるアクセスだけを許可することを特徴とする請求項１６に記載のシステム。
【請求項１９】
前記のアクセス装置が、前記のハードディスクドライブへのアクセスを試みるために、前記のハードディスクドライブに前記のアクセス装置の前記のＷＷＮを含むＰＬＯＧＩフレームを送り、
もしも前記のハードディスクドライブがＷＷＮを既に記憶していると、前記のハードディスクドライブは前記のアクセス装置によるアクセスを許可するかを決めるために前記のフレーム内の前記のＷＷＮを前記の記憶されたＷＷＮと比較し、および
もしも前記のハードディスクドライブがＷＷＮを記憶していないと、前記のハードディスクドライブは前記のフレーム内に含まれた前記のＷＷＮを保存する
ことを特徴とする請求項１３に記載のシステム。
【請求項２０】
前記のハードディスクドライブは予め決められた数のＷＷＮを記憶可能であり、前記のフレームを受信すると、前記のフレームに含まれる前記のＷＷＮが既に記憶されているかを決定し、
もしも前記のＷＷＮが既に記憶されていると、前記のハードディスクドライブは前記のアクセス装置によるアクセスを許可し、
もしも前記のＷＷＮが記憶されていなく、および前記の予め決められた数がまだ達成されていないと、前記のハードディスクドライブは前記のＷＷＮを記憶し、および
もしも前記の予め決められた数が達成されていて、前記のＷＷＮが前記のハードディスクドライブが記憶したＷＷＮに一致しないと、前記のアクセス装置によるアクセスは前記のハードディスクドライブによって拒否される、
ことを特徴とする請求項１９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
０００１    本発明は一般的にはディスクアレイシステム、およびディスクアレイシステム内にインストールされ、管理されるハードディスクドライブに関係し、より詳細には、ハードディスクドライブへの許可されていないアクセスを防止するためのシステム、方法、および装置に関係する。
【背景技術】
【０００２】
０００２    近年、ディスクアレイシステム内のストレージ容量の増加により、ディスクアレイシステム内にインストールされ、管理されるハードディスクドライブ（ＨＤＤ）の数は着実に増加してきた。ハイエンドのディスクアレイシステムにおいて、数百のＨＤＤがインストールされ、管理される場合がある。さらに、企業データのリークの発生、企業のスパイ活動、ＩＤ情報の盗難、およびデータストレージと保護に関する政府の規制の強化のために、ストレージ安全性の重要性は増加してきた。しかし、従来のディスクアレイシステムにおいて、もしもＨＤＤがひとつのディスクアレイシステムから取り去られ、もしもそのＨＤＤが他のディスクアレイシステム、またはそのＨＤＤ上に保存されたデータをアクセス可能なアクセス装置を有する他のコンピュータシステムにインストールされると、そのＨＤＤ上に保存されたデータは、アクセスが許可されているかどうかに関係なく、通常、アクセス可能である。
【特許文献１】米国特許５，３７５，２４３号
【発明の開示】
【発明が解決しようとする課題】
【０００３】
０００３    従来技術において知られているように、ＨＤＤ内のデータへの許可されていないアクセスを防止するために、データは、ＨＤＤ上に書き込まれる前に、暗号化される場合がある。暗号化は実際のデータコードを秘密のコードに変換することを必要とし、これは、データが使用されることができる前に、ＨＤＤから取り出される時にキーを使用して復号されなければならない。従って、たとえ許可されていないユーザが他のディスクアレイシステム内へ暗号化されたＨＤＤをインストールしてＨＤＤ上のデータへのアクセスを取得することを試みても、もしも適切に復号されないなら、データは意味のないものになる。しかしながら、暗号化の使用に対しては、暗号化／復号機能を実行するための追加のハードウエアおよび／またはソフトウエアが必要であることを含む、いくつかの本質的な欠点がある。さらに、暗号化は、暗号化メカニズムがデータを暗号化および復号するために必要な遅延のために、ディスクアレイシステムの性能を低下させる。
【０００４】
０００４    Ｐａｒｚｙｃｈ等の米国特許５，３７５，２４３号に開示されている従来技術の方法において、この開示は完全な形でここに参照によって付け加えられるが、ＨＤＤへの許可されていないアクセスはＨＤＤ自身上にアクセスパスワードを置くことによって防止される。正しいアクセスパスワードがＨＤＤに入力されるまで、ＨＤＤへのアクセスは拒否される。しかし、この従来の方法は個人的なポータブルコンピュータシステムで使用されることを意図されており、従って、パスワードは最初に使用する時点でユーザによって、または製造時点で製造者によって手動で入力されなければならない。従って、もしもこの従来のシステムがディスクアレイシステムで使用されると、ディスクアレイシステムのユーザまたは管理者はディスクアレイシステム内にインストールされた数百のＨＤＤのそれぞれに対してパスワードを手動で入力するか、または製造者からそれぞれのＨＤＤに対するパスワードを取得して、ＨＤＤのそれぞれに関係するパスワードを手動で設定して管理する必要がある。さらに、特にもしもＨＤＤを置き換えたり、新しいＨＤＤをインストールしたりする必要がある場合には、ディスクアレイシステム内での従来技術の方法の使用は、パスワードの維持、および数多くのＨＤＤに対してパスワードを更新および保護することを記録しておくことの安全性に関する課題を引き起こすであろう。
【課題を解決するための手段】
【０００５】
０００５    本発明の目的はディスクアレイシステム内において使用されるＨＤＤへの許可されないアクセスを防止することである。本発明のさらなる目的はＨＤＤがディスクアレイシステムから取り去られた後にＨＤＤへの許可されないアクセスを防止することである。
【０００６】
０００６    第一の実施例において、ディスクアレイシステムはコントローラのようなアクセス装置および複数のＨＤＤを含むことができる。コントローラはランダムなパスワードを生成し、それらをＨＤＤに設定し、およびパスワードとＨＤＤの相互関係を管理する。コントローラが正しいパスワードをＨＤＤに送信するまで、ＨＤＤは試みられたログインアクセスを拒否することによってコントローラからのアクセスを拒否し、コマンドの限定されたセットだけに応答する。
【０００７】
０００７    第二の実施例において、ＨＤＤはコントローラのＷＷＮを検出し、このＷＷＮを記憶する。その後に、ＨＤＤは、ＨＤＤが記憶したものと同じＷＷＮを有するコントローラのようなアクセス装置からのアクセスのみを許可する。ＨＤＤは、他のコントローラからのログイン要求を拒否することによって、ＨＤＤが記憶したものと異なるＷＷＮを有するコントローラからのアクセスを拒否する。  
０００８    第三の実施例において、ＨＤＤは、ＨＤＤとのコミュニケーションにおいて複数のコントローラのＷＷＮを検出し、これらのＷＷＮを記憶する。その後に、ＨＤＤは、ＨＤＤが記憶したＷＷＮの一つと同じＷＷＮを有するコントローラからのアクセスのみを許可する。ＨＤＤは、異なるＷＷＮを有するコントローラからのログイン要求を拒否すること、およびＨＤＤ上に保存されたデータへのアクセスを防止することによってＨＤＤが記憶したＷＷＮと異なるＷＷＮを有するコントローラからのアクセスを拒否する。
【０００８】
０００９    本発明のこれらおよび他の特徴と利点は、好適な実施例の次の詳細な説明に照らせば、関連技術に通常程度に精通する人達には明らかになる。
【発明を実施するための最良の形態】
【０００９】
００３２    本発明の次の詳細な記述において、開示内容の一部分を形成する添付の図面が参照され、および本発明が実施される特定の実施例が限定としてでなく図示によって示される。図面において、同じ参照番号はいくつかの図を通して実質的に同様な構成部分を示す。
第一の実施例―システム構成
００３３    図１は本発明の方法が適用されるディスクアレイシステムの構成例を示す。図１に示されるように、一つ以上のＳＡＮクライアント１０２はＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１０１を通してディスクアレイシステム１００に接続される。ＳＡＮクライアント１０２とディスクアレイシステム１００の間においてＦＣ＿ＳＷ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ  Ｓｗｉｔｃｈｅｄ  Ｆａｂｒｉｃ）標準に従うコミュニケーションを確立可能とするために、ＳＡＮ１０１はスイッチとケーブルから成る。ＳＡＮクライアント１０２は、例えば、パーソナルコンピュータ、ワークステーション、メインフレームコンピュータ等である。
【００１０】
００３４    ディスクアレイシステム１００はコントローラ１０３のようなアクセス装置、ディスクハウジング１０４を含む。コントローラ１０３はＣＰＵ１０５、メモリ１０６、キャッシュメモリ１０９、チャネル制御部１０８、データコントローラ１１０、ディスク制御部１１１、および不揮発性メモリ１０７を含むことができる。
【００１１】
００３５    ディスクハウジング１０４は複数のハードディスクドライブ（ＨＤＤ）１１４、およびスイッチ１１２を含む。コントローラ１０３がＨＤＤ１１４とコミュニケーションを行い、アクセス可能にするためにコントローラ１０３のディスク制御部１１１とのコミュニケーションを確立可能にするために、ディスクハウジング内のＨＤＤ１１４は、ケーブル１１３とスイッチ１１２を通してディスク制御部１１１に接続される。
【００１２】
００３６    ディスク制御部１１１はＣＰＵ１０５からの命令に従ってＨＤＤ１１４とデータを交換するためのインタフェースである。ディスク制御部１１１は、ＨＤＤ１１４を制御するために、プロトコル記述コマンドに従ってＨＤＤ１１４にデータ入力／出力要求を送信する機能を有する。
【００１３】
００３７    ＣＰＵ１０５は全体としてディスクアレイシステム１００の制御を支配する。チャネル制御部１０８、ディスク制御部１１１、データコントローラ１１０等を制御するために、ＣＰＵ１０５はメモリ１０６内に保存されたマイクロプログラムを実行する。
【００１４】
００３８    キャッシュメモリ１０９は各チャネル制御部１０８とディスク制御部１１１の間において交換されるデータを一時的に保存する働きをする。データコントローラ１１０はＣＰＵ１０５の制御の下に、各チャネル制御部１０８とキャッシュメモリ１０９の間、またはキャッシュメモリ１０９とディスク制御部１１１の間のデータ転送を実行する。
【００１５】
００３９    不揮発性メモリ１０７はいろいろな管理情報と管理テーブルを保持する働きをする。第一の実施例において、ＣＰＵ１０５は不揮発性メモリ１０７内にパスワード管理テーブル１０００を保存し、これは図１０を参照して以下にさらに説明される。
【００１６】
００４０    好適な実施例のコントローラ１０３は、いわゆるＲＡＩＤ（Ｒｅｄｕｎｔａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ（ｏｒ  Ｉｎｄｅｐｅｎｄｅｎｔ）  Ｄｉｓｋｓ）システムに従って、ＲＡＩＤレベル（例えば、０、１、または５）の下にＨＤＤ１１４を制御する機能を有する。ＲＡＩＤシステムにおいて、複数のＨＤＤ１１４は一つのグループ（ここより以降はＲＡＩＤグループと呼ばれる）として管理される。ＳＡＮクライアント１０２からのアクセスユニットとして動作する論理ボリュームは各ＲＡＩＤグループ上に形成される。ＬＵＮ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）と呼ばれる識別子は各論理ボリュームに割り当てられる。ＲＡＩＤ構成情報はメモリ１０６内に保存され、ＣＰＵ１０５がデータＲＥＡＤ処理またはデータＷＲＩＴＥ処理を実行する時にＣＰＵ１０５から参照される。
【００１７】
００４１    ディスク制御部１１１はＦＣ＿ＳＷ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ  Ｓｗｉｔｃｈｅｄ  Ｆａｂｒｉｃ）標準に従うスイッチ１１２を通して複数のＨＤＤ１１４に接続される。ＨＤＤ１１４は一つ以上のケーブル１１３でスイッチ１１２に接続される。
【００１８】
００４２    図２に示されるように、各ＨＤＤ１１４はＦＣ＿ＳＷ標準に従うコミュニケーション機能を提供するためのＦＣアダプタ２０３を有するハードディスクドライブであることができる。また、各ＨＤＤ１１４はディスク制御部１１１からのデータ入力／出力要求を処理するためにＣＰＵ２０１とメモリ２０４を有する。各ＨＤＤ１１４はまたいろいろな管理情報と管理テーブルを維持するための不揮発性メモリ２０５、および物理ディスク２０２を含む。内部バス２０６はコミュニケーションを可能にするためにＨＤＤ１１４の構成部分を接続する。第一の実施例において、コントローラ１０３によって設定されたパスワードは不揮発性メモリ２０５内、またはディスク２０２上、または両方に保存される。
機能図
００４３    図３は図1内のディスクアレイシステム１００の機能図を示す。コントローラ１０３内に、パスワードマネジャ３０１がある。パスワードマネジャ３０１はランダムなパスワードを生成し、それらをＨＤＤ１１４に設定する。また、パスワードマネジャ３０１はパスワードとＨＤＤ１１４の間の対応を管理する。パスワードと個々のＨＤＤ１１４の間の相互関係を管理するために、パスワードマネジャ３０１は不揮発性メモリ１０７内にパスワード管理テーブル１０００（図１０においてさらに説明される）を保存する。パスワードマネジャ３０１は不揮発性メモリ１０７、または他のコンピュータで読み取り可能な媒体内に保存され、およびコントローラＣＰＵ１０５によって実行されるソフトウエアモジュールとして実現されることができる。
【００１９】
００４４    ＨＤＤ１１４のそれぞれに、パスワード記憶モジュール３０２がある。ＨＤＤパスワード記憶モジュール３０２はコントローラ１０３内のパスワードマネジャ３０１によって設定されたパスワードを記憶し、パスワードを記憶した後で、正しいパスワードがパスワードマネジャ３０１によって送られるまで、ログインとＨＤＤへの他のアクセスの試みを拒否する。ＨＤＤパスワード記憶モジュール３０２は不揮発性メモリ２０５、物理ディスク２０２、または他のコンピュータで読み取り可能な媒体上に保存されたソフトウエアモジュールとして実現されることができ、ＨＤＤＣＰＵ２０１によって実行される。
標準ファイバチャネルおよびＳＣＳＩコマンド
００４５    本発明の次の詳細な説明は、ディスク制御部１１１とＨＤＤ１１４の間で使用されるインタフェースプロトコルの例としてファイバチャネルプロトコル（ＦＣＰ）を、インタフェースプロトコル上で動作するコマンドセットの例としてＳＣＳＩコマンドセットを利用する。しかし、本発明はファイバチャネルプロトコルとＳＣＳＩコマンドセットの組み合わせに限定されることなく、以下に説明されるように、ログイン、インクワイアリ、ログアウト、等々の機能とメカニズムを提供することが可能な限り、プロトコルとインタフェースの任意の組み合わせに適用可能である。
【００２０】
００４６    ＦＣインタフェースを有する装置は“ノード”と呼ばれ、実際のインタフェースに対応する物理ターミナルは“ポート”と呼ばれる。ノードは一つ以上のポートを有することができる。ファイバチャネルプロトコルのシステム全体内に同時に存在可能なポートの数は２４ビットの最大値のアドレス数、すなわち、２の２４乗（１６，７７７，２１６）ポートである。これらの接続を調停するハードウエアは“ファブリック（ｆａｂｒｉｃ）”と呼ばれる。実際に、送信ポートと行き先ポートは相互のポートに関係する情報を考慮し、ファブリックを考慮する必要はなく、動作することだけが必要である。
【００２１】
００４７    ノードとポートのそれぞれは世界的にユニークであるワールドワイドネーム（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ（ＷＷＮ））識別子を保存し、これは予め決められた手順に従ってＩＥＥＥ（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）によって割り当てられる。ＷＷＮはファイバチャネルファブリック内の各要素にユニークなＩＤを割り当てるためのファイバチャネル仕様内で使用され、ＩＥＥＥからベンダに与えられる６４ビットアドレスである。フォーマットは以下のようである。
【００２２】
ノード（ＮＯＤＥ）に対する世界的にユニークな識別子
ノードに関連する各Ｎ＿ＰＯＲＴに対する世界的にユニークな識別子、および
ファブリックに付けられた各Ｎ＿ＰＯＲＴに対する、２４ビットのファブリックにユニークなアドレス
ファブリックアドレスはフレームが送られるアドレスである。
【００２３】
００４８    従って、ＷＷＮはＴＣＰ／ＩＰのような他のプロトコル内で使用されるＭＡＣアドレスと同様であり、ハードウエア固定のアドレスである。ＷＷＮアドレスは二種類を含み、すなわち、Ｎ＿ＰＯＲＴ＿Ｎａｍｅは各ポートにユニークな値（ハードウエアアドレス）であり、Ｎｏｄｅ＿Ｎａｍｅは各ノードにユニークな値（ハードウエアアドレス）である。これらの値は世界的にユニークであるので、それらはポートとノードを本質的に識別可能である。本発明において述べられる例において、用語“ＷＷＮ”は典型的にはＮ＿ＰＯＲＴ＿Ｎａｍｅを表すが、他のＷＷＮ値もまた使用されることができる。
【００２４】
００４９    ファイバチャネルプロトコルの下で、コミュニケーションは“オーダードセット（Ｏｒｄｅｒｅｄ  Ｓｅｔ）”と呼ばれる信号レベルの情報、および“フレーム（ｆｒａｍｅ）”と呼ばれる固定フォーマットを有する論理情報によって実行される。図４はＦＣフレームの典型的な構造を示す。フレーム４０１はフレームの開始（ＳＯＦ）を表す４バイトの識別データ４０２、リンクオペレーションの制御とフレームを特徴付ける２４バイトのフレームヘッダ４０３、実際に転送される目的のデータ部分であるデータフィールド４０４、４バイトの巡回冗長符号（ｃｙｃｌｉｃ  ｒｅｄｕｎｄａｎｃｙ  ｃｏｄｅ（ＣＲＣ））４０５、およびフレームの終了を知らせる、フレームの終了（ＥＯＦ）と呼ばれる４バイトの識別データ４０６を有する。データフィールド４０４は０から２１１２バイトの間で可変である。
【００２５】
００５０    次に、フレームヘッダ４０３の内容が説明される。図４はフレームヘッダ４０３の詳細な構造を含む。ここで、Ｄ＿ＩＤ４０８とＳ＿ＩＤ４０９はフレームヘッダ４０３の詳細な構造の内の第一と第二のワードのビット領域０から２３に対応することが示されている。Ｄ＿ＩＤ（Ｄｅｓｔｉｎａｔｉｏｎ  ＩＤ）４０８とＳ＿ＩＤ（Ｓｏｕｒｃｅ  ＩＤ）４０９はフレームを受信するポートとフレームを送信するポート、それぞれ、を識別するための３バイトのアドレス識別データであり、送信および受信される全てのフレームに有効な値を有する。ファイバチャネル標準ＦＣ−ＰＨはファブリックが初期化手順の間にＤ＿ＩＤとＳ＿ＩＤを割り当てることを規定している。割り当てられた値は各ポートのＮ＿Ｐｏｒｔ＿ＮａｍｅまたはＮｏｄｅ＿Ｎａｍｅに依存する。
【００２６】
００５１    次に、ファイバチャネルプロトコルを使用する典型的なログイン手順が説明される。最初に、ファブリック可能なファイバチャネル装置がファブリックスイッチに接続された後に、それはファブリックログイン（ＦＬＯＧＩ）を実行する。ポートログイン（以下に説明されるＰＬＯＧＩ）と同様に、ＦＬＯＧＩは二つの関連部分の間の動作を設定する拡張されたリンクサービスコマンドである。ＦＬＯＧＩによって、動作はＮ＿ＰｏｒｔまたはＮＬ＿Ｐｏｒｔおよびスイッチの間で生成される。Ｎ＿ＰｏｒｔはそのＮｏｄｅ  Ｎａｍｅ、そのＮ＿Ｐｏｒｔ  Ｎａｍｅ、およびサービスパラメータを含むＦＬＯＧＩフレームを送る。図５は、送信パーティ５０１（本発明におけるコントローラ１０３に、および具体的にはコントローラ１０３のディスク制御部分１１１に関連付けられることのできるログイン要求パーティ）、およびネームサーバ５０２（これは本発明におけるスイッチ１１２に関連付けられることのできる）の間におけるＦＣＰポートログイン（ＰＬＯＧＩ）に対する情報の交換を示す。
【００２７】
００５２    数種類のログイン手順がファイバチャネルプロトコル（ＦＣＰ）において可能であるが、説明はクラス３ログインとして行われる。最初に、ステップ５０３に示されるように、送信パーティ５０１は固定Ｄ＿ＩＤ（０ｘＦＦＦＦＦＥ）、固定Ｓ＿ＩＤ（０ｘ００００００）、および送信パーティのＮ＿Ｐｏｒｔ＿ＮａｍｅとＮｏｄｅ＿Ｎａｍｅを含むヘッダを有するＰＬＯＧＩフレームを送信する。次に、ステップ５０４において、ネームサーバ５０２はＦＣ＿ＰＨをベースに送信パーティ５０１に対するＤ＿ＩＤを決定し、ステップ５０５において、送信パーティ５０１に決定されたＤ＿ＩＤを送り戻す。Ｄ＿ＩＤを受信した後で、送信パーティ５０１はそれ自身のＤ＿ＩＤとしてＤ＿ＩＤを取り扱い、それ自身のＤ＿ＩＤ、Ｎ＿Ｐｏｒｔ＿Ｎａｍｅ、およびＮｏｄｅ＿ＮａｍｅでＰＬＯＧＩフレームをネームサーバ５０２に送信する。それに応答して、ネームサーバ５０２は全てのアクセス可能な行き先パーティ（本発明に適用されるＨＤＤ１１４に対応する）のＤ＿ＩＤ、Ｎ＿Ｐｏｒｔ＿Ｎａｍｅ、およびＮｏｄｅ＿Ｎａｍｅのリストを送り戻す。従って、送信パーティ５０１は各行き先パーティに対するＤ＿ＩＤおよびＮ＿Ｐｏｒｔ＿Ｎａｍｅ（ＷＷＮ）の対応を示すリストを常に維持する。
【００２８】
００５３    次に、ファイバチャネルプロトコルをベースに相互に情報を交換するための送信パーティと行き先パーティの装置のログイン手順が説明される。図６は送信パーティ６０１（ログイン要求パーティ、これは、本発明に適用されているように、コントローラ１０３に、より具体的にはコントローラ１０３のディスク制御部１１１に相互に関係することができる）および行き先パーティ６０２（ログイン受信パーティ、これは、本発明に適用されているように、ＨＤＤ１１４に相互に関係することができる）の間における情報の交換を示す。
【００２９】
００５４    ログイン要求パーティはログイン受信パーティにＰＬＯＧＩフレーム６０３を送信する。このフレームはＮ＿Ｐｏｒｔ＿Ｎａｍｅ、Ｎｏｄｅ＿Ｎａｍｅ、Ｓ＿ＩＤ、およびログイン要求パーティの他の情報を含む。行き先の装置、例えば、ＨＤＤ１１４内のＣＰＵ２０１はこのフレーム内に含まれる情報をベースにしており、ログインの試みを認めるか拒否するかを決める。ログインを認める時には、ＨＤＤ１１４のＣＰＵ２０１はログイン要求パーティに“ＡＣＣ”６０４と呼ばれるフレームを送信する。これに対して、ログインを拒否するためには、ＣＰＵ２０１はログイン要求パーティに“ＬＳ＿ＲＪＴ”と呼ばれるフレームを送信する。
【００３０】
００５５    送信パーティ（コントローラ１０３）がＰＬＯＧＩフレームに応答したＡＣＣフレームの応答を受信する時に、コントローラ１０３はログインが成功であったことを知り、それはデータ転送のようなＩ／Ｏ処理を今開始可能であることを知る。これに対して、ＬＳ＿ＲＪＴフレーム６０５を受信する時に、コントローラ１０３は、ＨＤＤ１１４でのログインは確立されなかったこと、および対応するログイン受信パーティへのＩ／Ｏ処理が実行可能でないことを知る。さらに、説明はクラス３のログインオペレーションに対して提供されたが、ログイン要求パーティからログイン受信パーティに送信可能な他のログイン処理内の情報は同様にＮ＿Ｐｏｒｔ＿Ｎａｍｅ、Ｎｏｄｅ＿Ｎａｍｅ、およびＳ＿ＩＤ、またはこれらと同等なものを含む。
【００３１】
００５６    次に、標準のＦＣＰコマンドであり、ＳＣＳＩコマンドセット内で常にサポートされるインクワイアリコマンドが説明される。インクワイアリコマンドは、論理ユニットにＩ／Ｏ処理の目的としてそのパッケージ状態とその準備状況を質問する。図７は、ファイバチャネル標準のフレームがＳＣＳＩ標準によって定義されたインクワイアリコマンドを送信する時のデータフィールドの詳細構造を示す。フレームとフレームヘッダの基本構造は図4に示されるものに類似している。故に、構造はＳ＿ＩＤ４０９を含む。
【００３２】
００５７    データフィールド４０４はＦＣＰ＿ＣＭＮＤフォーマット７０１によって表されるようなＦＣＰ＿ＬＵＮ７０２、ＦＣＰ＿ＣＮＴＬ７０３、ＦＣＰ＿ＣＤＢ７０４およびＦＣＰ＿ＤＬ７０５と呼ばれる領域を含む。ＦＣＰ＿ＬＵＮ７０２は、フレーム送信パーティが質問するフレーム送信の行き先のポートに関連する論理ボリュームの識別データを保存する。ところで、“論理ボリューム”または“論理ユニット”の用語は可視的な実体としてストレージ装置（物理装置）に対して便宜的に仮想的に分割され番号付けされたストレージ領域を表す。識別データは”ＬＵＮ“（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）と呼ばれる。ＨＤＤは通常ただひとつの論理ユニットを有し、従ってＦＣＰ＿ＬＵＮ７０２内のデータは常に同じである。ＦＣＰ＿ＣＤＢ７０４は、ＳＣＳＩコマンドセットが使用される時のＳＣＳＩプロトコルの”コマンド記述ブロック（ｃｏｍｍａｎｄ  ｄｅｓｃｒｉｐｔｉｏｎ  ｂｌｏｃｋ）“（ＣＤＢ）と呼ばれるコマンド情報を保存する。このＦＣＰ＿ＣＤＢ７０４はＳＣＳＩのインクワイアリコマンド情報を保存し、情報はフレーム受信パーティにＦＣＰ＿ＬＵＮ７０２で転送される。書き込みコマンドと読み出しコマンドのようなＳＣＳＩコマンドセットによってサポートされる他のコマンドにおいても、フレームはインクワイアリコマンドと同じ方法で４０１と７０１の構造を有する。従って、これらのコマンドも第一の実施例を実行するために使用されることができるＳ＿ＩＤを含む。
【００３３】
００５８    図８はインクワイアリコマンドを使用することによる論理ユニットのインクワイアリシーケンスを示す。論理ユニットへのアクセスを得るコントローラ８０１はアクセスされる論理ユニットを有するＨＤＤ８０２にインクワイアリコマンドを保存するフレーム８０３を送信する。このフレームはコントローラのＳ＿ＩＤ、および質問される論理ユニットの識別データとしてのＬＵＮを含む。ここで、ＬＵＮは、ＦＣＰ＿ＬＵＮ領域のほかにＦＣＰ＿ＣＤＢ内のインクワイアリコマンド情報のフォーマット内に設定可能である。得られる効果はたとえこれらの値のどちらが使用されても同じである。
【００３４】
００５９    インクワイアリコマンドを含むフレームを受信すると、ＨＤＤ８０２はインクワイアリ処理に対して必要なインクワイアリデータを準備し、生成されたインクワイアリデータを含むフレーム８０４をコントローラに送信する。この場合、インクワイアリデータを保存するフレームは“ＦＣＰ＿ＤＡＴＡ”と呼ばれる。ＨＤＤが８０４のようにインクワイア（質問）された論理ユニットに対してクオリファイア０００ｂ（２進数）または装置タイプ００ｈから０９ｈ（１６進数）のどちらかを設定する時には、このインクワイアリデータを受信するコントローラはこの論理ユニットに対してＩ／Ｏを続いて生成可能である。８０５によって示されているように、一方で、ＨＤＤがクオリファイア００１ｂ（２進数）または０１１ｂ（２進数）または装置タイプ１Ｆｈ（１６進数）を設定する時には、このインクワイアリデータ８０５を受信するコントローラはＩ／Ｏの続いての生成が可能でないことを認識する。従って、ＨＤＤがインクワイアリデータ内に保存されたクオリファイアと装置タイプのコードを制御する時に、コントローラからＨＤＤの論理ユニットへのアクセスの承認／拒否が制御可能であることを理解されることができる。
【００３５】
００６０    上記に説明されたように、フレームを生成する方法は書き込みコマンドと読み出しコマンドにおいてもインクワイアリコマンドにおけるのと基本的に同じである。従って、送信の行き先の側のコントローラが送信コントローラによって指定されたＳ＿ＩＤを違反であると検出する時に、アクセスの拒否は実現可能である。
【００３６】
００６１    従って、図１２Ａに示されるように、ファイバチャネルプロトコルの下で、コントローラによってＨＤＤをアクセスするシーケンスは一般的に以下のステップを含む。
【００３７】
００６２    ステップ１２２１：各ハードディスクドライブ１１４（行き先パーティ）はスイッチ１１２（名前サーバ）でＦＬＯＧＩとＰＬＯＧＩの処理を実行する。
【００３８】
００６３    ステップ１２２２：ディスク制御部１１１（送信パーティ）はスイッチ１１２（名前サーバ）でＦＬＯＧＩとＰＬＯＧＩの処理を実行する。
【００３９】
００６４    ステップ１２２３：ディスク制御部１１１（送信パーティ）はハードディスクドライブ１１４（行き先パーティ）でＰＬＯＧＩを実行し、および
００６５    ステップ１２２５：ディスク制御部１１１（送信パーティ）はハードディスクドライブ１１４（行き先パーティ）でインクワイアリコマンドを実行する。
【００４０】
００６６    以下により詳細に説明されるように、本発明の第一の実施例の下で、上記のステップ１２２５の前に、パスワードコマンドがＨＤＤ１１４に送られることが可能な場合に、追加のステップ１２２４は実行されることができ、もしもパスワードコマンドが送られないと、ＨＤＤはインクワイアリコマンドを拒否するように制御可能である。このステップは以下に図１２Ｂにおいて詳細に述べられる。
パスワード管理
００６７    上記に説明されたように、コントローラ１０３内のパスワードマネジャ３０１は不揮発性メモリ１０７内において図１０に示されているパスワード管理テーブル１０００を保存し管理する。パスワード管理テーブル１０００を使用して、コントローラ１０３は各ＨＤＤ１１４と各パスワードの間の対応を管理する。より詳細には、コントローラ１０３はテーブル１０００内にＨＤＤ１１４に対する各ＨＤＤのＷＷＮ１００１とパスワード１００２を保存する。例えば、行１００３はＷＷＮが“１０：００：００：００：００：００：００：０１”であるＨＤＤに対してパスワードが“Ａ３ＧＨ４ＴＩＳ”であることを示し、行１００４はＷＷＮが“１０：００：００：００：００：００：００：０２”であるＨＤＤに対してパスワードが“４Ｔ５ＫＬＫＡ”であることを示す。
【００４１】
００６８    ログイン手順が完了された（ステップ１２２１−１２２３）後に、コントローラ１０３がＨＤＤ１１４にインクワイアリコマンドを送信する（ステップ１２２５）前に、パスワードマネジャ３０１はＨＤＤ１１４にパスワードコマンドを送信する。図９はパスワードコマンドのＦＣＰ＿ＣＤＢの構造の例９０１を示す。オペレーションコード９０２は各コマンドに対して割り当てられる特定の番号である。この例において、１３ｈ（１６進数）はパスワードコマンドを示すために使用される。パスワードフィールド９０３は特定のＨＤＤ１１４に対してパスワードを設定するために、またはアクセスを得るために特定のＨＤＤ１１４にパスワードを送信するための使用のためにパスワードを含む。コントロールフィールド９０４は全てのＳＣＳＩコマンドに対して共通の制御フィールドである。
【００４２】
００６９    パスワードコマンドに応答して、このコマンドを受信するＨＤＤ１１４はＳＣＳＩ標準に従う図１１内に説明されるステータスバイトコードを戻す。もしもパスワードが、ＨＤＤ１１４が記憶した（すなわち、不揮発性メモリ２０５内に、または物理ディスク２０２上に保存した）パスワードに一致すると、行き先パーティはステータスバイトコード”０ｈ”（ステータス良好（ｓｔａｔｕｓＧＯＯＤ））を戻す。これは本発明において“パスワードは受け入れられる”を意味する。また、もしもパスワードがまだ設定されていないと、およびもしもＨＤＤ１１４が首尾よくコントローラ１０３から送られたパスワードを記憶すると、行き先パーティはまたステータスバイトコード”０ｈ”を戻す。しかし、もしも特定のパスワードコードが特定のＨＤＤ１１４が記憶したパスワードに一致しないと、またはもしもＨＤＤ１１４が送信パーティから送られたパスワードを記憶することに失敗すると、ＨＤＤ１１４はステータスバイトコード”２ｈ”（ステータスチェック状態（ｓｔａｔｕｓＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ））を戻し、これは本発明において“パスワードコードは拒否される”を意味する。
【００４３】
００７０    図１２Ｂはパスワードマネジャ３０１における図１２Ａからのステップ１２２４のパスワード管理処理の流れ図を示す。この流れは、コントローラ１０３がＰＬＯＧＩでＨＤＤ１１４に首尾よくログインした後に（ステップ１２２１−１２２３）、およびコントローラ１０３がＨＤＤ１１４にインクワイアリコマンドを送信する前に（ステップ１２２５）、実行される。
【００４４】
００７１    ステップ１２０１において、パスワードマネジャ３０１は、キーとしてＨＤＤ１１４のＮ＿Ｐｏｒｔ＿Ｎａｍｅ（ＷＷＮ）を使用してパスワード管理テーブル１０００を検索することによって、ＨＤＤ１１４に対するパスワードを取り出すことを試みる。ステップ１２０２において、もしもパスワードマネジャ３０１がＨＤＤ１１４に対するパスワードを識別すると、ステップ１２０５において、パスワードマネジャ３０１はＨＤＤ１１４にパスワードと共にパスワードコマンドを送信する。もしもＨＤＤ１１４から戻されたステータスバイトコードが“０ｈ”であると、これは、パスワードがＨＤＤ１１４によって受け入れられ、処理は首尾よく行われることを意味する。コントローラ１０３は次にＨＤＤ１１４にインクワイアリコマンドを送信する。しかし、もしもＨＤＤ１１４から戻されたステータスバイトコードが“０ｈ”でないと（これは“２ｈ”を意味する）、これはＨＤＤ１１４がパスワードを拒否したことを意味する。このケースで、ステップ１２０８において、パスワードマネジャ３０１は、ＨＤＤ１１４がアクセス可能でないことをディスクアレイシステム１００の管理者に知らせる。ステップ１２０２において、もしもパスワードマネジャ３０１がＨＤＤ１１４に対するパスワードを見つけることができないと、ステップ１２０３において、パスワードマネジャ３０１はランダムなパスワードを生成する。次に、ステップ１２０４において、パスワードマネジャ３０１はＨＤＤ１１４に生成されたパスワードと共にパスワードコマンドを送信する。もしもＨＤＤ１１４から戻されたステータスバイトコードが“０ｈ”であると、これはパスワードがＨＤＤ１１４によって記憶されることを意味する。次にステップ１２０９において、コントローラ１０３はＨＤＤ１１４のＷＷＮと生成されたパスワードのペアをパスワード管理テーブル１０００に加え、コントローラ１０３は次にＨＤＤ１１４にインクワイアリコマンドを送信する。しかし、もしもＨＤＤ１１４から戻された応答が“０ｈ”でないと（これは“２ｈ”を意味する）、これは、ＨＤＤ１１４がパスワードを記憶することに失敗したか、またはＨＤＤ１１４が異なるパスワードを既に記憶しているのでパスワードを拒否したことを意味する。その場合に、ステップ１２０８において、パスワードマネジャ３０１は、“２ｈ”のステータスコードの応答を戻した特定のＨＤＤ１１４がアクセス可能でないことをディスクアレイシステム１００の管理者に知らせる。
パスワードコマンドへの応答
００７２    図１３はＨＤＤ１１４内のＨＤＤパスワード記憶モジュール３０２においてパスワードコマンドを処理する流れ図を示す。ＨＤＤ１１４がパスワードコマンドを受信する時に、ステップ１３００（図１２Ｂのステップ１２０４または１２０５に対応する）において、パスワード記憶モジュール３０２はパスワードが不揮発性メモリ２０５内に既に記憶（保存）されているかをチェックする。もしもパスワードがまだ記憶されていないと、次にステップ１３０１において、ＨＤＤパスワード記憶モジュール３０２はコントローラ１０３から送信されたパスワードコマンド内のパスワードを記憶する。次にステップ１３０５において、ＨＤＤパスワード記憶モジュール３０２はＦＣＰ＿ＣＭＮＤフレームヘッダからパスワードコマンドの送信パーティのＳ＿ＩＤを取得し、ステップ１３０６において、図１４内の“パスワード受領リスト”１４００内にＳ＿ＩＤを保存する。次にステップ１３０２において、ＨＤＤパスワード記憶モジュール３０２はコントローラ１０３にステータスバイトコード“０ｈ”（パスワードが受け付けられる）を戻す（図１２Ｂのステップ１２０６に対応する）。もしもＨＤＤパスワード記憶モジュール３０２が不揮発性メモリ２０５内にパスワードを既に保存していると、次にステップ１３０３において、ＨＤＤパスワード記憶モジュール３０２はコントローラ１０３から送信されたパスワードコマンド内のパスワードが記憶されたものに一致するかをチェックする。もしも二つのパスワードが一致すると、次にステップ１３０５において、ＨＤＤパスワード記憶モジュール３０２はＦＣＰ＿ＣＭＤＮフレームヘッダからパスワードコマンドの送信パーティのＳ＿ＩＤを取得し、ステップ１３０６において、図１４の“パスワード受領リスト”１４００内にＳ＿ＩＤを保存する。次にステップ１３０２において、ＨＤＤパスワード記憶モジュール３０２はコントローラ１０３にステータスバイトコード“０ｈ”（パスワードが受け付けられる）を戻す（図１２Ｂのステップ１２０７に対応する）。もしもパスワードが一致しないと、次にステップ１３０４において、ＨＤＤパスワード記憶モジュール３０２はコントローラ１０３にステータスバイトコード“２ｈ”（パスワードが拒否される）を戻す（これも図１２Ｂのステップ１２０７に対応する）。
インクワイアリコマンド応答：
００７３    図１５はＨＤＤ１１４内におけるインクワイアリコマンドの処理動作の流れ図を示す。ステップ１５０１において、ＨＤＤ１１４がコントローラ１０３からＦＣＰ＿ＣＭＤＮを受信する時に、ＣＰＵ２０１はステップ１５０２においてＦＣＰ＿ＣＭＤＮの内容を評価する。ステップ１５０３において、もしもＦＣＰ＿ＣＭＤＮ内に含まれるコマンドがインクワイアリコマンドでなければ、次にステップ１５０４において、ＨＤＤ１１４はコマンド処理を実行する。もしもコマンドがインクワイアリコマンドであると、次にステップ１５０５において、ＨＤＤ１１４はＦＣＰ＿ＣＭＤＮフレームヘッダからインクワイアリコマンドの送信パーティのＳ＿ＩＤを取得する。次にステップ１５０６において、ＨＤＤ１１４はＳ＿ＩＤが“パスワード受領リスト”１４００内に存在するかをチェックする。もしもＳ＿ＩＤが存在すると、次にステップ１５０８において、ＨＤＤ１１４はインクワイアリデータ内においてクオリファイアの値に対して０００ｂを、および装置タイプの値に対して００ｈを設定する。もしもＳ＿ＩＤが存在しないと、次にステップ１５０７において、ＨＤＤ１１４はインクワイアリデータ内においてクオリファイアの値に対して００１ｂまたは０１１ｂを、および装置タイプの値に対して１Ｆｈを設定する。次にステップ１５０９において、インクワイアリデータはＦＣＰ＿ＤＡＴＡフレーム内に保存され、コントローラ１０３に送信される。従って、コントローラ１０３がインクワイアリデータを受信する後に、もしもＱＵＡＬＩＦＩＥＲ＝０００ｂおよびＤＥＶＩＣＥ  ＴＹＰＥ＝００ｈがインクワイアリデータ内に設定されていると、コントローラ１０３はハードドライブ内のＬＵがコントローラからアクセス可能であることを認識する。しかし、もしもＱＵＡＬＩＦＩＥＲ＝００１ｂまたは０１１ｂ、およびＤＥＶＩＣＥ  ＴＹＰＥ＝１Ｆｈが設定されていると、コントローラはハードドライブ内のＬＵがアクセス可能でないと考える。ＨＤＤはコントローラ１０３が、Ｓ＿ＩＤがパスワード受領リスト１４００内に存在するかをチェックすることによってパスワードを既に送ったかをチェックして決定することが可能であるので、パスワードがＨＤＤ１１４によって受け取られた後に、コントローラ１０３からの各アクセス要求でパスワードが再送される必要がどのようにしてなくなるかを前述の内容は明確にする。
第二の実施例
００７４    第二の実施例に対するシステム構成は、第一の実施例を考慮して、図１に示されたものと同じであることができる。図１６は第二の実施例におけるディスクアレイシステム１００の機能図を示す。コントローラ１０３において、追加のモジュール（パスワードマネジャのような）は必要とされない。しかし、ＨＤＤ１１４のそれぞれにおいて、ＷＷＮ記憶モジュール１６０１がある。ＷＷＮ記憶モジュール１６０１はＨＤＤ１１４内の不揮発性メモリ２０５内にＷＷＮを保存することによってコントローラ１０３のＷＷＮを記憶する。ＷＷＮを記憶した後に、ＷＷＮ記憶モジュール１６０１は、ＷＷＮ記憶モジュール１６０１が記憶したＷＷＮと同じＷＷＮを有するコントローラからだけのアクセスを許可する。
ＨＤＤ内のログイン要求を処理する流れ図：
００７５    図１７Ａに示されるように、第二の実施例の下で、コントローラによってＨＤＤをアクセスするためのシーケンスは、コントローラのＷＷＮがＰＬＯＧＩ手順の間にＨＤＤによって記憶されること以外は、第一の実施例に対するそれと同様である。シーケンスは一般的に次のステップを含む：
００７６    ステップ１７２１：各ハ−ドディスクドライブ１１４（行き先パーティ）はスイッチ１１２（名前サーバ）でＦＬＯＧＩとＰＬＯＧＩ手順を実行する：
００７７    ステップ１７２２：ディスク制御部１１１（送信パーティ）はスイッチ１１２（名前サーバ）でＦＬＯＧＩとＰＬＯＧＩ手順を実行する：
００７８    ステップ１７２３：ディスク制御部１１１（送信パーティ）はハ−ドディスクドライブ１１４（行き先パーティ）にＰＬＯＧＩフレームを送る；および
００７９    ステップ１７２４：ＨＤＤはディスク制御部１１１のＷＷＮを記憶し、または既に記憶されたものとしてＷＷＮを受け入れ、または拒否を送り戻す。このステップは以下に図１７Ｂにおいて詳細に述べられる。
【００４５】
００８０    ステップ１７２５：ディスクコントローラ１０３はＰＬＯＧＩの実行を完了させる。
【００４６】
００８１    ステップ１７２６：ディスク制御部１１１（送信パーティ）はハ−ドディスクドライブ１１４（行き先パーティ）でインクワイアリコマンドを実行する。
【００４７】
００８２    図１７Ｂは、ＨＤＤ１１４がログイン（ＰＬＯＧＩ）要求を受信する時のＷＷＮ記憶モジュール１６０１内にＷＷＮを記憶するための処理の流れ図を示す。ステップ１７０１において、ＨＤＤ１１４がコントローラ１０３からＰＬＯＧＩフレームを受信する時に、次にステップ１７０２において、それはＰＬＯＧＩデータフィールドからＷＷＮ（Ｎ＿Ｐｏｒｔ＿Ｎａｍｅ）を取得する。次にステップ１７０３において、ＨＤＤ１１４はそれが不揮発性メモリ２０５内にまたは物理ディスク２０２内にＷＷＮを既に記憶しているかをチェックする。もしもＨＤＤ１１４がまだ何のＷＷＮも記憶していないと、次にステップ１７０５において、ＷＷＮ記憶モジュールは不揮発性メモリ２０５内に、または物理ディスク２０２内に、または両方にＰＬＯＧＩデータフィールドから取得されたＷＷＮを保存する。次にステップ１７０６において、ＨＤＤ１１４はログインを承認するためにコントローラ１０３にＡＣＣフレームを送信する。もしもＨＤＤ１１４が以前に既にＷＷＮを記憶していると、次にステップ１７０４において、ＰＬＯＧＩデータフィールドから取得されたＷＷＮが記憶されたＷＷＮと一致するかを決定するためにチェックが行われる。もしも二つのＷＷＮが一致すると、次にステップ１７０６において、ＨＤＤ１１４はログインを承認するためにコントローラ１０３にＡＣＣフレームを送信する。もしも二つのＷＷＮが一致しないと、次にステップ１７０７において、ＨＤＤ１１４はログインを拒否するためにコントローラ１０３にＬＳ＿ＲＪＴフレームを送信する。もしもコントローラ１０３がＬＳ＿ＲＪＴフレームを受信すると、通知またはエラーのメッセージが、ＬＳ＿ＲＪＴフレームを送ったＨＤＤは使用可能でないことを示すために、システム管理者に送られる場合がある。
第三の実施例
００８３    図１８は本発明の第三の実施例が適用されるディスクアレイシステムを示す。図１８に示されているように、第三の実施例においてディスクアレイシステム１８００を構成する構成要素は第一の実施例のものとほとんど同じである。しかし、例えコントローラ１８０１の一つが障害を起こしても、ＳＡＮクライアント１０２がＨＤＤ１８０４内のデータをアクセス可能なように、ディスクアレイシステム１８００は二つのコントローラ１８０１を有する。また、例えディスク制御部１１１またはスイッチ１１２の一つが障害を起こしても、各コントローラのＣＰＵ１０５がＨＤＤ１８０４内のデータをアクセス可能なように、コントローラ１８０１のそれぞれは二つのディスク制御部１１１と二つのスイッチ１１２を有する。複数のスイッチに接続するために、図１９に示されているように、各ＨＤＤ１８０４は二つのＦＣアダプタ１９０１を有する。
【００４８】
００８４    図２０は図１８におけるディスクアレイシステム１８００の機能図を示す。コントローラ１８０１に、必要な追加のモジュールはない。ＨＤＤ１８０４のそれぞれ内に、ＷＷＮ記憶モジュール２００１がある。ＷＷＮ記憶モジュール２００１はＨＤＤ１８０４内の不揮発性メモリ２０５内に予め決められた数のＷＷＮを記憶する。数は、例えば、ＨＤＤ１８０４に接続されたディスク制御部１８０１の数をベースに決定可能である。予め決められた数のＷＷＮを記憶した後に、ＷＷＮ記憶モジュール２００１は、ＷＷＮ記憶モジュール２００１が記憶したＷＷＮの一つと同じＷＷＮを有するディスク制御部からのアクセスのみを許可する。
【００４９】
００８５    第三の実施例に対する最初のアクセス手順は、図１７Ａにおいて述べられたように、第二の実施例に対するのと同じである。しかし、処理は各ＨＤＤ１８０４にログインしたい各コントローラに対して実行される。さらに、ステップ１７２４に対して図１７Ｂにおいて述べられた処理フローを実行するのではなく、図２１の処理フローが実行される。図２１は、ＨＤＤ１８０４がログイン（ＰＬＯＧＩ）要求を受信する時にＷＷＮ記憶モジュール２００１内においてＷＷＮを記憶する流れ図を示す。ステップ２１０１において、ＨＤＤ１８０４がコントローラ１８０１からＰＬＯＧＩフレームを受信する時に、次にステップ２１０２において、それはＰＬＯＧＩデータフィールドからＷＷＮ（Ｎ＿Ｐｏｒｔ＿Ｎａｍｅ）を取得する。次にステップ２１０３において、ＰＬＯＧＩデータフィールドから取得されたＷＷＮが記憶されたＷＷＮのどれかに一致するかを決定するためにチェックが行われる。もしもそれが一致すると、ステップ２１０７において、ＨＤＤ１８０４はログインを承認するためにコントローラ１８０１にＡＣＣフレームを送信する。もしもそれが一致しないと、次にステップ２１０４において、ＨＤＤ１８０４は、それが不揮発性メモリ２０５内に予め決められた数のＷＷＮを既に記憶したかをチェックする。もしもＨＤＤ１８０４が予め決められた数のＷＷＮをまだ記憶していないと、次にステップ２１０６において、ＷＷＮ記憶モジュール２００１はＰＬＯＧＩデータフィールドから取得されたＷＷＮを記憶する。次に、ステップ２１０７において、ＨＤＤ１８０４はログインを承認するためにコントローラ１８０１にＡＣＣフレームを送信する。もしもＨＤＤ１８０４が以前に既に予め決められた数のＷＷＮを記憶していると、次にステップ２１０５において、ＨＤＤ１８０４はログインを拒否するためにコントローラ１８０１にＬＳ＿ＲＪＴフレームを送信する。
【００５０】
００８６    従って、前述のシステム、方法、および装置によって、本発明が、ディスクアレイシステムから取り除かれ、および他のディスクコントローラ、コンピュータ等のような他のアクセス装置によってアクセスされることを試みられるハードディスクへの許可されていないアクセスを防止するための方法を提供することはこの技術に精通した人達に明らかである。
【００５１】
００８７    前述の内容から、本発明が、ディスクアレイシステム内において使用されるＨＤＤ上に保存されたデータを保護するためのシステム、方法、および装置を提供し、もしもこれらのＨＤＤがディスクアレイシステムから取り除かれると、データへのアクセスは防止されることは本発明の領域に精通した人達に明らかである。さらに、特定の実施例がこの明細書において示され、説明されたが、この技術に通常程度に精通した人達は、同じ目的を達成するために計画された任意の調整も開示された特定の実施例と置き換えられることができることを理解する。この開示内容は本発明の任意のおよび全ての適応または変化を包括することを意図しており、上記の記述内容は説明的な形でなされたが限定的なものではないことが理解される。従って、本発明の範囲は、添付の特許請求項の権利が及ぶ同等内容の全範囲と共に、添付の特許請求項に関して適切に決定されるべきである。
【図面の簡単な説明】
【００５２】
【図１】００１１    図１は本発明が適用されるディスクアレイシステムの構成例を示す。
【図２】００１２    図２は本発明で使用するためのＨＤＤの構成例を示す。
【図３】００１３    図３は図１に示されるディスクアレイシステムの機能図を示す。
【図４】００１４    図４は本発明で使用するためのフレームの典型的な構造を示す。
【図５】００１５    図５は送信パーティと名前サーバの間の情報の交換を示す。
【図６】００１６    図６は送信パーティと行き先パーティの間の情報の交換を示す。
【図７】００１７    図７はファイバチャネル標準のフレームがＳＣＳＩ標準によって定義されたインクワイアリコマンドを送信する時のデータフィールドの構造を示す。
【図８】００１８    図８はインクワイアリコマンドを使用することによる論理ユニットのインクワイアリシーケンスを示す。
【図９】００１９    図９はパスワードコマンドのＦＣＰ＿ＣＤＢの構造例を示す。
【図１０】００２０    図１０は本発明で使用するためのパスワード管理テーブルを示す。
【図１１】００２１    図１１はパスワードコマンドに応答して行き先パーティによって戻されるステータスバイトコードを示す。
【図１２Ａ】００２２    図１２Ａはパスワードで保護されたＨＤＤをアクセスするための処理、および本発明のＨＤＤパスワードマネジャ内のパスワード管理処理の流れ図を示す。
【図１２Ｂ】図１２Ｂはパスワードで保護されたＨＤＤをアクセスするための処理、および本発明のＨＤＤパスワードマネジャ内のパスワード管理処理の流れ図を示す。
【図１３】００２３    図１３は本発明のＨＤＤ内のＨＤＤパスワード記憶動作モジュール内においてパスワードコマンドを処理する流れ図を示す。
【図１４】００２４    図１４はパスワード受領リストを示す。
【図１５】００２５    図１５は本発明のＨＤＤ内におけるインクワイアリコマンドの処理動作の流れ図を示す。
【図１６】００２６    図１６は本発明の第二の実施例のディスクアレイシステムの機能図を示す。
【図１７Ａ】００２７    図１７Ａは第二の実施例のＨＤＤをアクセスする動作、およびＨＤＤがログイン要求を受信する時にＷＷＮ記憶モジュール内においてＷＷＮを記憶する動作の流れ図を示す。
【図１７Ｂ】図１７Ｂは第二の実施例のＨＤＤをアクセスする動作、およびＨＤＤがログイン要求を受信する時にＷＷＮ記憶モジュール内においてＷＷＮを記憶する動作の流れ図を示す。
【図１８】００２８    図１８は本発明の第三の実施例で使用するためのディスクアレイシステムの例を示す。
【図１９】００２９    図１９は本発明の第三の実施例で使用するためのＨＤＤの構成例を示す。
【図２０】００３０    図２０は図１８に示されたディスクアレイシステムの機能図を示す。
【図２１】００３１    図２１はＨＤＤがログイン要求を受信する時にＷＷＮ記憶モジュール内においてＷＷＮを記憶する動作の流れ図を示す。
【図１】
2007102761.tif 000003
【図２】
2007102761.tif 000004
【図３】
2007102761.tif 000005
【図４】
2007102761.tif 000006
【図５】
2007102761.tif 000007
【図６】
2007102761.tif 000008
【図７】
2007102761.tif 000009
【図８】
2007102761.tif 000010
【図９】
2007102761.tif 000011
【図１０】
2007102761.tif 000012
【図１１】
2007102761.tif 000013
【図１２Ａ】
2007102761.tif 000014
【図１２Ｂ】
2007102761.tif 000015
【図１３】
2007102761.tif 000016
【図１４】
2007102761.tif 000017
【図１５】
2007102761.tif 000018
【図１６】
2007102761.tif 000019
【図１７Ａ】
2007102761.tif 000020
【図１７Ｂ】
2007102761.tif 000021
【図１８】
2007102761.tif 000022
【図１９】
2007102761.tif 000023
【図２０】
2007102761.tif 000024
【図２１】
2007102761.tif 000025
【外国語明細書】
2007102761000001.pdf