(57)【要約】【課題】SCSI、NFS、CIFS、またはHTTPタイプのリード/ライト要求に応答して、ストレージ媒体からのデータ読み出しあるいはストレージ媒体へのデータ書き込みを行う。【解決手段】ストレージシステムは、SCSI、NFS、CIFS、またはHTTPタイプのリード/ライト要求に応答して、ストレージ媒体からのデータ読み出しあるいはストレージ媒体へのデータ書き込みを行うために、ストレージコントローラとストレージ媒体を有する。ストレージコントローラは、SCSI、NFS、CIFS、及びHTTPインタフェースアダプタを有し、リード/ライト要求を受け取り、ストレージ媒体との間でデータの読み出し、またはデータの書き込みを実行する。【選択図】  図１
2008004120.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２種類の入／出力ポートと、データを書き込み、およびアクセスする記録媒体を有し、第1のホストインタフェースアダプタを有しており、
前記第1のホストインタフェースアダプタは、２種類の入出力ポートのうち１つと接続し、少なくともストレージ媒体の第1の部分と結合しており、
さらに前記第１のホストインタフェースアダプタは、１つの入出力ポートからブロック入出力読み出し要求を受信し、ストレージ媒体の第１の部分のデータにアクセスし、１つの入出力ポートから送信する動作をしており、
さらに前記第１のホストインタフェースアダプタは、ブロック入出力書き込み要求を１つの入出力ポートから受信し、ストレージ媒体の第1の部分にデータの書き込みを行っており、
第２のホストインタフェースアダプタを有し、該第２のホストインタフェースアダプタは、２種類の入出力ポートのうち前記とは別の１つと接続し、少なくともストレージ媒体の第２の部分と結合しており、
前記第２のホストインタフェースアダプタは、前記入出力ポートとは別の入出力ポートからファイルシステム入出力読み出し要求を受信し、ストレージ媒体の第２の部分のデータにアクセスし、１つの入出力ポートから送信する動作をしており、さらに前記第２のホストインタフェースアダプタは、ファイルシステム入出力書き込み要求を他の入出力ポートから受信し、ストレージ媒体の第２の部分にデータの書き込みを行うことを特徴とするストレージシステム。
【請求項２】
請求項１記載のストレージシステムにおいて、１つの入出力ポートは、プロセッサユニットのＳＣＳＩポートに接続しているストレージシステム。
【請求項３】
請求項２記載のストレージシステムにおいて、他の入出力ポートは、プロセッサユニットのネットワークファイルシステムポートに接続しているストレージシステム。
【請求項４】
請求項３記載のストレージシステムにおいて、ストレージ媒体がディスクであるストレージシステム。
【請求項５】
プロセッサ部のＳＣＳＩポートに接続している第１のポートと、他のプロセッサ部のネットワークファイルシステムポートに接続している第２のポートと、ストレージ媒体と、
前記第１のポートに接続されており、かつストレージ媒体に結合されていて、ブロック入出力要求をプロセッサ部から受信して、少なくともストレージ媒体の一部にデータを書き込み、または読み出しを行う、ＳＣＳＩインタフェースアダプタと、
第２のポート及びストレージ媒体に接続されており、ファイルシステム入出力要求を受信して、ストレージ媒体の他の１つの部分の読み出し、または書き込みを行うファイルインタフェースアダプタと、を有するストレージシステム。
【請求項６】
請求項５記載のストレージシステムにおいて、ファイルインタフェースアダプタが論理ボリュームのデータ構成を有しているストレージシステム。
【請求項７】
少なくとも１つのプロセッサ部をストレージ媒体にアクセス可能とするストレージシステムを構築する方法であって、
ストレージ媒体に結合し、１つのプロセッサ部からブロック入出力要求を受信して、少なくとも前記ストレージ媒体の一部にデータの読み出しまたは書き込みを行うＳＣＳＩインタフェースアダプタを備え、
次に、ストレージ媒体と結合し、ファイルシステム入出力要求を受信して、ストレージ媒体の他の部分にデータの読み出しまたは書き込みを行うファイルインタフェースアダプタを備える手順を有しているストレージシステムの構築方法。
【請求項８】
請求項７記載の方法において、ＳＣＳＩインタフェースを備える手順が、ＳＣＳＩインタフェースが１つまたは複数の論理ブロックボリュームを通してストレージ媒体の一部分へアクセス可能になるよう設定する手順と
ファイルインタフェースを備える手順が、１つまたは複数のファイルシステム論理ボリュームを通して、ストレージ媒体の他の１つの部分にアクセス可能にする手順を有しているストレージシステムの構築方法。
【請求項９】
請求項７記載の方法において、ファイルインタフェースアダプタを備える手順が、ファイルインタフェースアダプタが共通ファイルシステムプロトコル入出力要求を受信するよう設定する手順を有しているストレージシステムの構築方法。
【請求項１０】
請求項９記載の方法において、ファイルインタフェースを備える手順が、ファイルインタフェースアダプタがハイパテキスト転送プロトコル入出力要求を受信するよう設定する手順を有しているストレージシステムの構築方法。
【請求項１１】
ホストシステムと通信可能に結合しており、ＳＣＳＩ、ＮＦＳ及びＣＩＦＳタイプの読み出し／書き込み要求を受信するストレージシステムであり、
ストレージ媒体と、
ストレージ媒体と結合していて、ＳＣＳＩ読み出し／書き込み要求を受信して、少なくともストレージ媒体の一部分にデータの読み出しと書き込みを行うＳＣＳＩインタフェースアダプタと、
ストレージ媒体と結合していて、ＮＦＳ及びＣＩＦＳタイプの読み出し／書き込み要求を受信してストレージ媒体の他の１つの部分にデータの読み出しと書き込みを行うファイルインタフェースアダプタと、からなるストレージシステム。
【請求項１２】
請求項１１記載のストレージシステムにおいて、ＨＴＴＰ読み出し／書き込み要求を受信するようホストシステムと通信可能に結合しており、ファイルインタフェースアダプタがＨＴＴＰ読み出し／書き込み要求を受信してストレージ媒体の他の１つの部分にデータの書き込みと読み出しを行うことを特徴とするストレージシステム。
【請求項１３】
請求項１１記載のストレージシステムにおいて、ストレージ媒体と結合しており、ＮＦＳ及びＣＩＦＳタイプの読み出し／書き込み要求を受信して、ストレージ媒体の他の１つの部分にデータを書き込みまたは読み出しを行う、もう１つのファイルインタフェースアダプタを有しているストレージシステム。
【請求項１４】
請求項１２のストレージシステムにおいて、ストレージ媒体と結合しており、ＮＦＳ及びＣＩＦＳ、ＨＴＴＰ各タイプの読み出し／書き込み要求を受信して、ストレージ媒体の他の１つの部分のデータを読み出しまたは書き込みを行う、もう１つのファイルインタフェースアダプタを有しているストレージシステム。
【請求項１５】
請求項１１のストレージシステムにおいて、ＳＣＳＩインタフェースアダプタとストレージ媒体を結合して、ストレージ媒体のデータを読み出しまたは書き込みを行う、少なくとも第一のドライブインタフェースアダプタを有するストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にデータプロセッシングシステムに関連し、特に、ブロックインタフェースとファイルインタフェースアクセスを兼ね備えたダイレクトアクセス・ストレージシステムに関する。
【背景技術】
【０００２】
処理システム（たとえば、プロセッサユニットやダイレクトアクセス記憶デバイスのような周辺機器）の様々な要素を組み合わせると、システムの資源を分散させることができる。その結果、資源は、システムの全要素から利用可能になる。たとえば、複数のプロセッサからなるユニットは、記憶システムに接続されると、与えられた記憶スペースだけでなく、そこに記録されるファイルをも共有することができる。
【０００３】
一般に、相互接続には、１つあるいはもう１つのネットワークアーキテクチャが用いられる。このアーキテクチャは、システムの要素間インタフェース構造の特徴、例えばプロセッサとデータ記憶装置間のインタフェースを規定している。例えば、スタンドアロン型のプロセッサユニットを、ダイレクトアクセス型の記憶装置に、小型コンピュータ標準インタフェース（ＳＣＳＩ）で接続することが一般に行われている。ＳＣＳＩ接続では、ブロック転送方式が用いられ、論理ユニット番号（ＬＵＮ）でアクセスする論理ボリュームを規定している。
【０００４】
一方、ネットワークプロトコルはこれと異なる。ネットワーク化され分散された処理システムのプロトコルとして、ネットワークファイルシステム（“ＮＦＳ”、サンマイクロシステムズが開発したオープンオペレーティングシステム）、共通インタネットファイルシステムプロトコル（“ＣＩＦＳ”、遠隔ファイルアクセスプロトコル）、“ＨＴＴＰ”としてよく知られたハイパテキスト転送プロトコルがある。
【０００５】
これらのプロトコルは“ファイルシステムインタフェース”として知られるインタフェースを使用し、異なるファイルシステムインタフェースプロトコルを実現するのに、ファイルインタフェース構造が使われるが、これらは共通ファイルシステム構造を使用する。このようにして、２種類以上のファイルシステムインタフェースを使用してストレージシステムに保存されたデータはすべてのホストシステムから使用可能になる。
【０００６】
例えば、ＮＦＳとＣＩＦＳの両プロトコル、すなわちＮＦＳプロトコルインタフェースとＣＩＦＳプロトコルインタフェースの入出力要求を扱うことができるストレージシステムは、ＮＦＳインタフェースのどれかを有しているホストプロセッサからアクセス可能なデータファイルを記録することができる。
【０００７】
すなわち、ストレージシステムがＮＦＳとＣＩＦＳの両方のインタフェースを持っていれば、ＮＦＳインタフェースしか持たないホストシステムも、ＣＩＦＳインタフェースのホストシステムで保存されたファイルをアクセスして開くことができ、ＣＩＦＳインタフェースを有しているホストシステムも、ＮＦＳインタフェースで保存されたファイルにアクセスして開くことができる。
【０００８】
上に述べたタイプのファイルシステムインタフェースを１つ以上有するストレージシステムでは、ファイル名を含むＩＯ読み取り、または書き込み要求と、ＩＯ要求で指定されたファイルへのアクセス権を求めるロック要求によってアクセスを行う。ダイレクトアクセス・ストレージシステムでは、ブロックインタフェースかファイルインタフェースを有しており、ブロックインタフェースプロトコルを使用しているホストシステムは、ファイルインタフェースプロトコルを使っているストレージシステムにはアクセスできない。
【０００９】
さらに、ブロックインタフェースとファイルインタフェースの構造上の相違と、データを保存しアクセスする方法の違いからストレージシステムはブロックシステムかファイルシステムのどちらか用に構成されていて、両用にはなっていない。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、ブロックインタフェースとファイルインタフェースとの両方で使えるダイレクトアクセスストレージ装置を提供するものである。本発明により、ブロックインタフェースとファイルインタフェース共用で、高性能、高スケーラブルそして高可用性のシステムアーキテクチャが実現できる。
【課題を解決するための手段】
【００１１】
本発明により、複数の物理ディスクユニットと、複数のプロセッサユニットを有しうるホストプロセッサシステムと、ブロック型の読み出し書き込み要求の受信に適合したＳＣＳＩインタフェースと、ＩＯファイル読み書き要求の受信に適合した少なくとも１つのファイルシステムインタフェースを有するコントラー部とを有するストレージシステムが実現できる。
ファイルシステムインタフェースはネットワークファイルインタフェースプロトコル（ＮＦＳ）あるいは共通インターネットファイルシステムプロトコル（ＣＩＦＳ）、またはハイパテキスト転送プロトコル（ＨＴＴＰ）または任意のファイルシステムプロトコルの組み合わせでよい。
【００１２】
コントローラ部はホストプロセッサシステムのプロセッサユニットを複数の物理ディスクユニットに接続する。コントローラユニットの論理ボリューム管理機能により、異なるブロックシステムとファイルシステムのＩＯ要求とが、物理ディスクユニットのブロックシステムデータあるいはファイルシステムデータに割り当てられた部分にアクセス可能となる。
【００１３】
本発明の他の実施例では、物理ディスクユニット上に記録されたファイルシステムデータはボリュームバックアップを実行することにより、ブロックシステム要求に対しアクセス可能となる。それによりＳＣＳＩインタフェースとファイルシステムインタフェースとのデータ共用が可能となる。
【００１４】
本発明により多くのメリットが得られる。第一に、ダイレクトアクセスストレージ装置（“ＤＡＳＤ”）のリソースがブロックインタフェースだけしかもたないプロセッサ部と、１つあるいは複数のファイルシステムインタフェースを有するプロセッサ部で共有可能になる。
【発明を実施するための最良の形態】
【００１５】
図を用いて説明する。最初に図１では、ストレージゴントローラ１４とストレージコントローラ１４に制御される複数の物理ディスクユニット２０（２０１，２０２，・・・・，２０ｎ）からなるストレージシステムと結合しているホストシステム１２を有するプロセッシングシステム１０を示している。
【００１６】
特に示してはいないが、ホストシステム１２は、１つでも良いが大体は複数のプロセッサユニットと、複数のＩＯインタフェースと、少なくとも１つのファイルシステムインタフェースからなっている。本発明を実現したホストシステムは、少なくとも１つのＳＣＳＩプロトコルタイプインタフェース（ストレージコントローラ１４によりブロックシステムファイル転送を行うため）と、ＮＦＳ、ＣＩＦＳ及び／またはＨＴＴＰのプロトコルに従って動作する少なくとも１つのファイルシステムインタフェースを有していることを理解しておくことが必要である。
【００１７】
したがって、ホストシステムは、ＳＣＳＩインタフェースを有する１つと、他の１つはＮＦＳインタフェースをもち、さらにもう１つはＣＩＦＳインタフェースをもつなど複数のプロセッサユニットから構成されてもよい。替わりに４種類のインタフェース（ＳＣＳＩ、ＮＦＳ、ＣＩＦＳ及びＨＴＴＰ）を有するプロセッサ１つでホストシステムを実現することも可能である。
【００１８】
図１に示すように、本発明の特徴に従って、ホストシステムはバックアップユーティリティ１２ａ、及び共通ライブラリシステムのライブラリデータ構造１２ｂを有している。これらのプログラム動作部はホストシステム１２の一部で、ＳＣＳＩインタフェースを有しており、発明の特徴を実現するものである。以下に詳しく説明する。
【００１９】
ホストシステム１２は、ストレージコントローラ１４とバス構造１６により結合している。下で述べる理由により、バスシステム１６は、ホストシステムをストレージコントローラ１４の４種のインタフェースアダプタ２６−３２のうち対応するアダプタと結合するため、マルチバス構造をとってもよい。
【００２０】
図１に示すように、ストレージコントローラ１４は４種類のインタフェースアダプタ、すなわち、ＳＣＳＩインタフェースアダプタ２６、ＮＦＳインタフェースアダプタ２８、ＣＩＦＳインタフェースアダプタ３０ 及び ＨＴＴＰインタフェースアダプタ３２を有している。各々、特定のプロトコルを処理するよう設定されている。したがって、ＳＣＳＩインタフェースアダプタ２６は、ホストシステム１２からＳＣＳＩまたはブロックシステムプロトコル型の入出力命令を受け取る。
【００２１】
従来技術では、ブロックシステムプロトコル要求は、指定された論理ユニットの論理ユニット番号とブロックＩＤ（ＩＤ）と、データリンクを持っている。ファイルシステムプロトコル要求は、タイプに応じてＮＦＳ、ＣＩＦ、ＨＴＴＰのインタフェースアダプタ２８、３０、３２のどれか１つまたは複数のアダプタで受け取られる。ファイルシステムプロトコル要求は、一般には上位のレイヤーにあるプロトコルであるＴＣＰ／ＩＰを使用し、これは特定のファイル名を論理ユニット番号の替わりにＩＤとして有している。
【００２２】
ストレージシステム１４は、インタフェースアダプタ２８−３２のどの種類のものを何台でも有することができる。例えば、ストレージコントローラ１４を、２式のＳＣＳＩインタフェースアダプタ２６、１式のＮＦＳインタフェースアダプタ２８、３式のＣＩＦＳインタフェースアダプタ３０と２式のＨＴＴＰインタフェースアダプタ３２で構成することができる。他の構成では、ストレージコントローラ１４を各タイプ１式、合計４式のインタフェースアダプタで構成し、どのタイプのインタフェースアダプタでも増設できるようにしておくこともできる。
【００２３】
色々なストレージコントローラの構成が可能であることが分かる。ストレージコントローラ１４を上記のようなフレキシブルな構成にしておくことにより、スケーラビリティと性能、可用性の高さが実現できる。次に、ストレージコントローラ１４に拡張性を持たせることができる。 例えば、ホストシステム１２からストレージシステムへ要求される性能に基づいて、ＮＦＳインタフェースアダプタの数を増やすことができる。さらに、ストレージコントローラ１４に同じタイプのインタフェースアダプタ（例えば、ＮＦＳインタフェースアダプタ）を複数備えることにより、１つが故障しても、残りの同じ型のアダプタでホストシステムから要求された処理を実行できる。
【００２４】
図１について続けると、ストレージコントローラ１４の各種のアダプタ２６、…、３２は、システムバス３６Ａ、３６Ｂと接続装置４０を介して、各物理ディスクユニット２０に１式づつ用意されているドライブインタフェースアダプタ４６に接続する。この接続装置は基本的には、各種のインタフェースアダプタ２６、……、３２とドライブインタフェースアダプタ４６との間の通信アクセスを仲介をしている。これに加えるに、接続装置４０はインタフェースアダプタ２６、……、３２とキャッシュメモリ４２とのアクセスも仲介している。
【００２５】
図１では、各物理ドライブユニット２０に対して、ドライブインタフェースアダプタ４６を１式のみ備えた場合を示しているが、障害耐力のため、また性能向上のため、物理ディスクユニット２０やその他のディスク用に２式あるいはそれ以上のドライブインタフェースアダプタ４６を備えることも可能である。ストレージコントローラ１４は、また、ターミナルインタフェースアダプタ４３を有しており、システム管理者が設定を行うためにストレージコントローラを操作できるようになっている。これについて以下に詳述する。
【００２６】
図２に、ＳＣＳＩインタフェースアダプタ２６がブロック図で示されている。ＳＣＳＩインタフェースアダプタ２６の主な機能が図示されている。同様にファイルシステムアダプタ２８、ドライブインタフェースアダプタ４６が、各々の主な機能に関して図示されている（図３、図４）。この技術に習熟した人には明らかなように、アダプタ２６、２８、４６の機能は、例えばプログラム内蔵のマイクロプロセッサと周辺回路により、あるいは最新の装置やそれらの組み合わせ、さらにはそれらにさらに回路を追加するなどの各種の公知の手段により実現可能である。
【００２７】
図２に示すように、ＳＣＳＩインタフェースアダプタ２６はＳＣＳＩインタフェース機能と回路を有しており、対応するホストシステム１２のＳＣＳＩインタフェースに接続するよう設定されている。ＳＣＳＩインタフェースアダプタ２６は、ホストシステム１２から、ＩＯ読み出しや書き込み要求を受信して、ホストシステム１２に応答を返す。このためにＳＣＳＩインタフェースアダプタ２６は、ＳＣＳＩデータ通信に要するプロトコルを処理するＳＣＳＩインタフェース機能６０を有している。
【００２８】
ストレージコントローラ１４は、物理ディスクユニット２０のリソースをブロックシステムインタフェースとファイルシステムインタフェースとで共有するために、論理ボリューム管理機能を有していること。したがって、ＳＣＳＩインタフェースアダプタは論理ディスクアクセスブロック機能６４を有し、ＩＯ読み出しまたは書き込み要求の論理ユニット番号を論理ボリュームアクセスへの変換を行う。また、ＳＣＳＩインタフェースアダプタ２６は、ドライブインタフェースアダプタ（ＤＩＡ）インタフェース機能６６を有しており、論理ディスクアクセスブロック６４から送られた情報に基づいて、ドライブインタフェースアダプタ４６との通信を処理する。
【００２９】
従来技術によるキャッシュ管理機能６８は、ＳＣＳＩインタフェースアダプタ２６のキャッシュメモリ４２へのデータアクセスを管理している。ＮＦＳインタフェースアダプタ２８の機能を図３に示している。他のシステムインタフェースアダプタ、すなわちＣＩＦＳインタフェースアダプタとＨＴＴＰインタフェースアダプタも、機能は、プロセスブロック７２を別としてＮＦＳインタフェースアダプタと同等であり、ＮＦＳインタフェースアダプタ２８の説明を、特に断り書きのないかぎり、同等にＣＩＦＳインタフェースアダプタとＨＴＴＰインタフェースアダプタにあてはめることが可能である。
【００３０】
図３に示すように、ＮＦＳインタフェースアダプタは、ストレージコントローラ１４とホストシステム１２のＮＦＳインタフェースとの間のＩＯ要求と応答を、ＴＣＰ／ＩＰに規定される通信プロトコルに従って処理するために、ＴＣＰ／ＩＰインタフェース機能７０を有している。プロセスブロック７２は、ＩＯ読み出しまたは書き込み要求のＮＦＳ特性を読み取って、ホストシステム１２（図１）への応答をフォーマットに合わせる。ＣＩＦＳインタフェースアダプタまたはＨＴＴＰインタフェースアダプタでは、プロセスブロック機能７２は個々のプロトコルと適合したものになる。
【００３１】
共通ファイルシステム機能ブロック７３は、コマンド処理機能７４と論理ボリュームアドレス変換機能７６とロック管理機能７８を有している。共通ファイルシステム機能ブロック７３は、ＴＣＰ／ＩＰインタフェース機能７０からＩＯ読み出しまたは書き込み要求を受け、要求のファイルインタフェース情報をブロックインタフェース情報に変換し、ブロックインタフェース情報を論理ディスクアクセス機能８２（これは基本的にはＳＣＳＩインタフェースアダプタ２６と同じである）へ送る。次に、論理ディスクアクセス機能８２は、当該要求を、物理ディスクユニット２０の物理ストレージスペースの一部をマッピングしている論理ボリュームへ転送する。
【００３２】
ＳＣＳＩインタフェースアダプタ２６と同様にＮＦＳインタフェースアダプタ２８も、キャッシュメモリ４２（図１）へのアクセスを管理するキャッシュ管理機能８４を有し、またドライブインタフェースアダプタ４６とのデータ通信を処理するドライブインタフェースアダプタ（ＤＩＡ）機能８６を有している。
【００３３】
図４はドライブインタフェースアダプタ４６の機能を示している。図４に示すように、ドライブインタフェースアダプタ４６は、個々のインタフェースアダプタ２６、２８、３２との通信を処理するホストインタフェースアダプタ（ＨＩＡ）インタフェース機能１００を有している。論理アドレス／物理アドレス変換機能１０２は、インタフェースアダプタ（例えば、ＳＣＳＩインタフェースアダプタ２６の論理ボリュームアクセスブロック６４、またはＮＦＳかＣＩＦＳかＨＴＴＰのどれかのインタフェースアダプタ２８、３０、３２の論理ディスクアクセスブロック６４）の論理ボリュームアクセスブロック機能から受信した論理アドレスを変換する。低価格ディスクの冗長配列（ＲＡＩＤ）方式採用時は論理アドレス／物理アドレス変換機能１０２がＲＡＩＤシステムを管理し、例えばＲＡＩＤ１方式ではデータのミラーリングを処理し、ＲＡＩＤ５方式ではデータのストライピングを制御している。
【００３４】
ドライブインタフェースアダプタ４６のキャッシュ管理機能１０６は、キャッシュメモリ４２のデータへのアクセスを管理する。読み出し／書き込み制御機能１０４は、読み出し／書き込み要求に応じて、ドライブインタフェースアダプタ４６と当該する物理ディスクユニット２０の間での実際のデータの流れを処理する。
【００３５】
図１に示したシステムのブロックシステムＩＯ要求による動作は、一般に次のようである。ブロックシステムＩＯ読み出し／書き込み要求は、ＳＣＳＩバス１６ａ（図２）上のＳＣＳＩインタフェースアダプタ２６で受信される。この要求は、上記のように、また従来同様に、特定のＬＵＮのブロックＩＤとデータ長を有するＬＵＮを有している。要求はＳＣＳＩインタフェース機能６０で受信され論理ボリュームアクセスブロック機能６４へ転送される。要求がＩＯ読み出し要求の場合は、論理ボリュームアクセス機能が、最初に、キャッシュマネジャ６８により要求されたデータがキャッシュメモリ４２に存在するか確認する（例えば、当該データへの先行読み出し要求または物理ディスクユニット２０への先行書き込みから）。存在した場合は、論理ボリュームアクセスブロック機能６４は、キャッシュメモリ４２のＩＯ読み出し要求で指定されるブロックにアクセスし、ＳＣＳＩインタフェース機能６０に転送する。
【００３６】
次に、ＳＣＳＩインタフェース機能６０は要求されたデータをホストシステム１２に転送する。要求されたブロックがキャッシュメモリ４２に存在しない場合、論理ボリュームアクセスブロックは、ＤＩＡインタフェース６６を通して、要求されたデータブロックが存在する物理ストレージ２０に接続するドライブインタフェースアダプタ４６のＨＩＡインタフェース１００へ要求を転送する。ＳＣＳＩインタフェースアダプタは必要に応じて他の処理を実行しながら応答を待つ。
【００３７】
一方、ホストシステム１２から受信したＩＯ要求が書き込み要求であった場合は、論理ボリュームアクセス機能６４は要求とともに受信したデータブロックを、キャッシュメモリ４２に送信する。次に、論理ボリュームアクセス機能６４は、キャッシュメモリ４２のデータブロックを書き込むべき場所を決めて、ドライブインタフェースアダプタ４６を割り当て、ＤＩＡインタフェース機能６６を通して書き込み要求を送信する。次に、ドライブインタフェース４６はキャッシュメモリ４２のデータブロックにアクセスして、それを物理ストレージ２０に書き込む。
【００３８】
ファイルシステム要求は、発信元のホストシステム１２がＮＦＳ，ＣＩＦＳ，ＨＴＴＰインタフェースのどれであるか、またそれに従ってファイルシステムプロトコルがＮＦＳ，ＣＩＦＳ，ＨＴＴＰプロトコルのどれであるかに応じて、ＮＦＳ、ＣＩＦＳ、ＨＴＴＰの各ファイルシステムインタフェースのうちの１つで受信される。ファイルシステムＩＯ要求はロック／ロック解除要求がともなう場合がある。ロック要求は、特定ファイル中の特定データブロック、または当該ファイル自身へアクセスすることを求める。
【００３９】
ロック解除要求は以前に取得されたブロックまたはファイルへのアクセスを開放する。従来技術によれば、ロックあるいはロック解除要求は、アクセスされるファイルソートのファイル名あるいは特定ファイル内のブロック番号、及びブロック長を有している。あるいは、要求がファイル名及び追加情報としてファイルアクセス権限を示す情報を有することにより実現することも可能である。
【００４０】
ロックとロック解除処理の制御情報は、各ファイルシステムインタフェースアダプタ２８，３０，３２が使用するプロトコル毎にキャッシュメモリ４２に蓄えられる。尚、これは他の共有メモリが使用可能であれば、それを使っても良い。
【００４１】
ホストシステム１２から発行されるファイルシステムＩＯ要求は、当該要求が宛てられているファイルシステムインタフェースアダプタのＴＣＰ／ＩＰ機能で受信される。（すなわち、ＮＦＳホストインタフェースが要求を発行の場合、当該要求はＮＦＳインタフェースアダプタ２８で受信される。
【００４２】
同様に、ＣＩＦＳあるいはＨＴＴＰホストインタフェースの場合は、ＣＩＦＳあるいはＨＴＴＰインタフェースアダプタ３０または３２で要求が受信される。その後、以下に示すように、各要求は基本的には同様に処理される。）ＴＣＰ／ＩＰインタフェース機能７０は、当該要求を受信し、該当する処理機能ブロック７２へ転送し、さらに処理が行われる。
【００４３】
処理機能ブロック７２は、受信した要求を共通ファイルシステム用に変換し、変換された要求を共通ファイルシステム機能ブロック７３へ転送する。そこでは、当該要求は、コマンド処理機能７４で受信され、論理ボリュームアドレス変換機能７６へ転送される。
【００４４】
要求がロック要求だった場合、要求はロック管理機能７８へ送られ、要求されたファイルがアクセス可能かどうかチェックされる。アクセス可能であれば、ロック管理機能７８は、プロセス機能ブロック７２へ、返信（”アクセス承認”）を発信する。次に、プロセス機能ブロック７２は、ＴＣＰ／ＩＰインタフェース機能７０経由でホストシステム１２に”アクセス承認”を通知する。一般的にロックプロトコルは、ＮＦＳ、ＣＩＦＳ、またはＨＴＴＰのレベルで規定される。
【００４５】
一方、例えば他の要求によりロックされているなどで、アクセスが認められない場合、ロック管理機能７８はプロセス管理機能７２に通知し、プロセス管理機能７２はホストシステム１２にロック要求を保留にするよう要請を出す。その後、他の要求によるロックが解除され、ロック要求がアクセス可能になるとロック管理機能７８はホストシステム１２にアクセス承認を通知する。
【００４６】
ホストシステム１２のファイルシステムインタフェースからのＩＯ読み込みまたは書き込み要求はファイル名と、指定されたファイルのブロック数と、ブロックリンクを有している。読み出し要求及び書き込み要求はＴＣＰ／ＩＰインタフェース機能７０、プロセス機能ブロック７２、及びコマンド処理機能７４を通って論理ボリュームアドレス変換器７６へ送られる。
【００４７】
そこでは、要求に含まれる情報は、論理ボリュームユニット番号、論理ボリューム内のブロック番号、及び論理ブロック長に変換される。次に、論理アドレス変換器７６は、本情報を論理ボリュームアクセス機能ブロック６４に送付する。ここでは、ＳＣＳＩインタフェースアダプタ２６の論理ボリュームアクセス機能ブロック６４と同様に、データ転送を処理する。
【００４８】
すなわち、読み出し要求の場合には、論理ボリュームアクセス機能ブロック８２は、要求された情報がキャッシュメモリ４２に存在するかどうかを確認する。存在する場合は、当該の情報を再生してホストシステム１２へ要求への応答として返す。要求された情報がキャッシュメモリ４２に存在しない場合には、論理ボリュームアクセス機能ブロック８２は、適当なドライブインタフェースアダプタ４６に、物理ストレージ２０から当該情報を再生するように要求を送る。書き込み要求も、ＳＣＳＩインタフェースアダプタの論理ボリュームアクセスブロック６４について、上に記述したのと同様に処理される。
【００４９】
ドライブインタフェースアダプタ４６は、読み出し要求あるいは書き込み要求に対しては、どのインタフェースアダプタから要求が出たとしても同様に動作する。ドライブインタフェースアダプタ４６は、インタフェースアダプタ２６、・・・、３２からの要求に対応して、物理ストレージ２０に対し、読み出しあるいは書き込み処理を実行する。ドライブインタフェースアダプタ４６は、キャッシュメモリ４２からライトアフタ処理を実行する機能を有することが望ましい。（ライトアフタ処理は、例えばミラー化されたストレージでは普通に使われている。
【００５０】
書き込み要求は、要求されたデータを指定された物理ストレージユニット２０に書き込むことにより処理される。続いて、当該データはキャッシュメモリ４２に保存されている場合もあるが、（ミラーリングに使用する）１台または複数台のディスクストレージユニット２０に書き込むことができる。）
図４に示す通り、要求はＨＩＡ（ホストインタフェースアダプタ）インタフェース機能１００を通って、ドライブインタフェースアダプタ４６で受信される。要求は論理−物理アドレスを有しており、ドライブインタフェースアダプタ４６で処理され、物理ストレージ２０のアドレスをマップする。受信した論理−物理アドレスから物理ストレージ２０のアドレスへの変換は、論理／物理アドレス変換機能１０２で実行される。また本機能は、例えばミラリングを実現するＲＡＩＤアーキテクチャ、例えばＲＡＩＤ１が採用されている場合、ライトアフタ処理も実行するように設定することも可能である。
【００５１】
論理ボリュームの構成は、システム管理者により、ストレージコントローラ１４（図１）に接続されたワークステーション（図示せず）からターミナルインタフェース４３を通して設定される。システム管理者は、例えば、図５に示す表１２０の形で、データ構造を生成することができる。表１２０の各エントリィ１２２１、……、１２２Ｍは、システム管理者が設定する論理ボリュームに対応している。各入力１２２は、物理ストレージスペース２０のマッピングを含む論理ボリューム情報を有している。さらに、各エントリィ１２２は、ブロックシステムインタフェースまたはファイルシステムインタフェースのどちらに対応するかの標示を有しても良い。
【００５２】
必要に応じて、物理ストレージ２０は、論理ボリュームによりブロックシステムとファイルシステムに配分される。例えば、物理ストレージ２０の第一の部分、ストレージの三分の一としよう、をブロックシステムデータストレージに割り当てる。次に、残りの物理ストレージをファイルシステムプロトコルのデータを保存するのに割り当てることができる。後で、ブロックシステムストレージは実際にはそれほど必要ないので、例えば最初より少なく、物理ストレージ２０の四分の一としよう、割り当てを変更することも可能である。物理ストレージ２０の残りの部分、ファイルシステムストレージに当てられている部分、はそれにともなって増加する。
【００５３】
一般に、ファイルシステムインタフェース（例えば、ＮＦＳまたはＣＩＦＳインタフェースアダプタ２８、３０）用の論理ボリュームは共通ファイルシステム機能ブロック７３が要求するファイル管理情報を有している。本ファイル管理情報は、共通ファイルシステムブロック７３の論理ボリュームアドレス変換器７６が論理ボリュームアドレス変換を実行する際のベースとなるものである。
【００５４】
ブロックシステムインタフェース、すなわちＳＣＳＩインタフェースアダプタ２６用の論理ボリューム情報は、一般的にはその種の情報は有していないので、ファイルインタフェースからブロックインタフェースの論理ボリュームにアクセスするのは大変難しい。そこで、不必要なエラーを排除するため、各エントリィ１２２が論理ボリューム用にステータス情報を有し、ボリュームがファイルシステムまたはブロックシステムのどちらの論理ボリュームであるかを識別することができる。結局、図５に示すように論理ボリューム１のエントリィ１２２１は論理ボリューム１がブロックシステム論理ボリュームであることを識別する情報を有しており、また論理ボリューム２のエントリィ１２２２は論理ボリューム２がファイルシステム論理ボリュームであることを識別する情報を有している。
【００５５】
しかしながら、本発明を適用することにより、ファイルシステムの論理ボリュームにＳＣＳＩインタフェースアダプタ２６などのブロックシステムインタフェースからアクセスする手段が提供される。本発明では、ホストシステム１２のＳＣＳＩインタフェースアダプタ２６部がバックアップユーティリティ１２ａ（図１）を有しており、動作中はストレージコントローラ１４のＳＣＳＩインタフェースアダプタ２６にボリュームバックアップ要求を発行することができることを特徴としている。
【００５６】
この結果、物理ストレージ２０を読み出す要求から、全論理ボリュームが最初のアドレスから最後のアドレスまで、管理情報を考慮する必要なしに認識される。ホストシステム１２の前記の部分は、また共通ファイルシステムライブラリ１２ｂを備えており、共通ファイルシステム機能７３のファイル管理情報を認識することができる。
【００５７】
したがって、ホストシステム１２は、ブロックシステムのインタフェースから論理ボリューム上の任意のファイルにアクセスすることができる。（共通ファイルシステムライブラリを使うことにより、ホストシステム１２はブロックシステムインタフェースからファイルインタフェースの論理ボリューム上のファイルにアクセス可能となる。（例えば、ＳＣＳＩインタフェース、何故ならば共通ファイルシステムライブラリが共通ファイルシステム機能７３のファイル管理機能を認識できるからである。））
ファイルシステムのデータを、ブロックシステムインタフェースまたは同アダプタから、不注意あるいはその他の原因でアクセスされないように、少なくとも最小限の保護のために、特定の論理ボリュームがある種のアクセスを許すかどうかの情報を論理ボリューム表の情報にもたせておくことができる。例えば、ファイルシステム論理ボリュームにブロックシステムからのアクセスの可否情報を持たせておく。
【００５８】
図６に示すように、論理ボリューム１の論理ボリューム表エントリィ１３２１には、自体がファイルシステムボリュームであり、ブロックシステムアクセスは許容されないことを確認する情報が含まれている。逆に、エントリィ１３２２は、論理ボリューム２はファイルシステムボリュームであるが、ブロックシステムアクセスが許容されることを示している。一方、エントリィ１３２Jはブロックシステム論理ボリュームである。
【００５９】
図７では本発明の他の実施例を示す。図１のストレージコントローラ１４は３種類の別々のファイルシステムアダプタ２８、３０、３２を有しており、各々ＮＦＳ，ＣＩＦＳ、ＨＴＴＰのプロトコルに対応している。しかしながら、他の実現手段として図７に示すように、ストレージコントローラ１４が共通ファイルシステムアダプタ１４０を有して３種のファイルシステムプロトコル（すなわち、ＮＦＳ、ＣＩＦＳ、あるいはＨＴＴＰ）を１式のインタフェースアダプタ１４０で処理することも可能である。
【００６０】
ホストシステム１２からのＩＯおよび他の要求は、ＮＦＳであっても、ＣＩＦＳでも、ＨＴＴＰでも、ＴＣＰ／ＩＰインタフェース機能１４２で受信される。ＴＣＰ／ＩＰインタフェースは通信プロトコルを特定して、当該要求を、プロセスブロック１４４、１４６、１４６のうち適当なものへ転送する。そこからの処理は上述のように進む。さらに、信頼性の向上と物理ディスクユニット２０へのアクセスの高速化のため、ストレージシステム１４は、インタフェースアダプタ１４０を複数有することも可能である。
【００６１】
図８では、発明のさらに他の実施例を示している。本実施例では、ＳＣＳＩインタフェースアダプタは参照番号２６'で示されており、論理／物理アドレス変換器かつＲＡＩＤコントローラ１０２'を有している。本機能は図１の実施例ではドライブインタフェースアダプタ４６（図４）に搭載されている。同様に、ＮＦＳ、ＣＩＦＳ、ＨＴＴＰ各インタフェースアダプタ２８、３０、３２が論理／物理アドレス変換器１０２'を有しており、その結果、当該機能はドライブインタフェースアダプタ４６には有していない。他の手段として図７に示すファイルシステムインタフェースアダプタ１４０を使用する場合、該アダプタが論理／物理アドレス変換器１０２'を有することも可能である。
【図面の簡単な説明】
【００６２】
【図１】本発明に従って構成されたストレージシステムを有するプロセッシングシステムのブロック図である。
【図２】図１に示したＳＣＳＩインタフェースアダプタの概略を示すブロック図である。
【図３】図１に示したファイルシステムインタフェースアダプタの概略を示すブロック図である。
【図４】図１に示したドライブインタフェースアダプタの概略を示すブロック図である。
【図５】本発明との関係を説明するための２種類の論理ボリューム状態表である。
【図６】本発明との関係を説明するための２種類の論理ボリューム状態表である。
【図７】本発明によるファイルインタフェースアダプタの他の実施例である。
【図８】図１のストレージコントローラで使われるＳＣＳＩインタフェースアダプタの他の実施例である。
【符号の説明】
【００６３】
12・・・ホストシステム、12a・・・バックアップユーティリティ、12b・・・共通ファイルシステム、14・・・ストレージコントローラ、26・・・SCSIインタフェースアダプタ、28・・・NFSインタフェースアダプタ、30・・・CIFSインタフェースアダプタ、32・・・HTTPインタフェースアダプタ、40・・・接続機器（connecting facility）、42・・・キャッシュメモリ、43・・・端末インタフェース（アドミニストレータ）、26・・・SCSIインタフェースアダプタ、60・・・SCSIインタフェース、64・・・論理ボリュームアクセスブロック、66・・・DIAインタフェース、68・・・キャッシュマネージャ、28・・・NFSインタフェースアダプタ、70・・・TCP/IPインタフェース、72・・・NFS（CIFS/HTTP）プロセスブロック、73・・・共通ファイルシステムブロック、74・・・コマンドプロセス、76・・・論理ボリュームアドレス変換器、78・・・ロックマネージャ、82・・・論理ボリュームアクセスブロック、84・・・キャッシュマネージャ、86・・・DIAインタフェース
【図１】
2008004120.tif 000003
【図２】
2008004120.tif 000004
【図３】
2008004120.tif 000005
【図４】
2008004120.tif 000006
【図５】
2008004120.tif 000007
【図６】
2008004120.tif 000008
【図７】
2008004120.tif 000009
【図８】
2008004120.tif 000010
【手続補正書】
【提出日】平成19年8月22日(2007.8.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ホストコンピュータと接続されたストレージシステムであって、
前記ストレージシステムは、
前記ホストコンピュータからのアクセスを受信する複数のインタフェースアダプタと、複数のディスクユニットと、メモリとを備え、
前記複数のインタフェースアダプタに含まれる第１のインタフェースアダプタは、ブロックアクセスを受信する機能を備え、
前記複数のインタフェースアダプタに含まれる第２のインタフェースアダプタは、ファイルアクセスを受信する機能を備え、
前記複数のディスクユニットは、複数の論理ボリュームとして割り当てられ、
前記論理ボリューム毎に、ブロックアクセスで用いる論理ボリューム又はファイルアクセスで用いる論理ボリュームとして割り当てられ、
前記メモリは、前記ブロックアクセスで用いる論理ボリュームと前記ファイルアクセスで用いる論理ボリュームとを識別する情報である論理ボリューム表を有し、
前記論理ボリューム表に基づき、前記ホストコンピュータからのアクセスを前記複数の論理ボリュームのいずれかへ送信する機能を有する
ことを特徴とするストレージシステム。
【請求項２】
請求項１に記載のストレージシステムであって、
前記ブロックアクセスで用いる論理ボリュームは、ブロックアクセスによるアクセスのみを許可する
ことを特徴とするストレージシステム。
【請求項３】
請求項１に記載のストレージシステムであって、
前記ファイルアクセスで用いる論理ボリュームは、ファイルアクセスによるアクセスとファイルアクセスおよびブロックアクセスを許可する
ことを特徴とするストレージシステム。
【請求項４】
請求項１に記載のストレージシステムであって、
前記ホストコンピュータは、ファイルアクセスをブロックアクセスへと変換する機能を有し、前記ストレージシステムに対してブロックアクセスを送信し、
前記ストレージシステムは、前記ホストコンピュータから送信されたブロックアクセスを前記第１のインタフェースアダプタで受信する
ことを特徴とするストレージシステム。
【請求項５】
ホストコンピュータと接続されたストレージシステムにおけるアクセス制御方法であって、
前記ストレージシステムは、
前記ストレージシステムが有する第１のインタフェースアダプタによって、ブロックアクセスを受信し、
前記ストレージシステムが有する第２のインタフェースアダプタによって、ファイルアクセスを受信し、
前記ストレージ装置が有する複数のディスクユニットを、複数の論理ボリュームとして割り当て、前記論理ボリューム毎に、ブロックアクセスで用いる論理ボリューム又はファイルアクセスで用いる論理ボリュームとして割り当て、
前記ストレージシステムが有するメモリに、前記ブロックアクセスで用いる論理ボリュームと前記ファイルアクセスで用いる論理ボリュームとを識別する情報である論理ボリューム表を備え、前記論理ボリューム表に基づき、前記ホストコンピュータからのアクセスを前記複数の論理ボリュームのいずれかへ送信する
ことを特徴とするストレージシステムにおけるアクセス制御方法。
【請求項６】
請求項５に記載のストレージシステムにおけるアクセス制御方法であって、
前記ブロックアクセスで用いる論理ボリュームは、ブロックアクセスによるアクセスのみを許可する
ことを特徴とするストレージシステムにおけるアクセス制御方法。
【請求項７】
請求項５に記載のストレージシステムにおけるアクセス制御方法であって、
前記ファイルアクセスで用いる論理ボリュームは、ファイルアクセスによるアクセスとファイルアクセスおよびブロックアクセスを許可する
ことを特徴とするストレージシステムにおけるアクセス制御方法。
【請求項８】
請求項５に記載のストレージシステムにおけるアクセス制御方法であって、
前記ホストコンピュータは、ファイルアクセスをブロックアクセスへと変換する機能を有し、前記ストレージシステムに対してブロックアクセスを送信し、
前記ストレージシステムは、前記ホストコンピュータから送信されたブロックアクセスを前記第１のインタフェースアダプタで受信する
ことを特徴とするストレージシステムにおけるアクセス制御方法。
【外国語明細書】
2008004120000001.pdf