JP4598248B2 - 記憶サブシステムのセキュリティシステム - Google Patents

記憶サブシステムのセキュリティシステム Download PDF

Info

Publication number
JP4598248B2
JP4598248B2 JP2000244020A JP2000244020A JP4598248B2 JP 4598248 B2 JP4598248 B2 JP 4598248B2 JP 2000244020 A JP2000244020 A JP 2000244020A JP 2000244020 A JP2000244020 A JP 2000244020A JP 4598248 B2 JP4598248 B2 JP 4598248B2
Authority
JP
Japan
Prior art keywords
logical unit
storage system
host
access
lun
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000244020A
Other languages
English (en)
Other versions
JP2001265655A5 (ja
JP2001265655A (ja
Inventor
隆介 伊東
吉規 岡見
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000244020A priority Critical patent/JP4598248B2/ja
Publication of JP2001265655A publication Critical patent/JP2001265655A/ja
Publication of JP2001265655A5 publication Critical patent/JP2001265655A5/ja
Application granted granted Critical
Publication of JP4598248B2 publication Critical patent/JP4598248B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
ホストコンピュータからアクセスされる記憶サブシステムに関係し、特にホストコンピュータから該記憶サブシステム内の論理ユニットがアクセスされる記憶サブシステムに関する。
【0002】
【従来の技術】
これまで、ホストコンピュータから記憶サブシステムへの不正アクセスを防ぐセキュリティ手段として、ホストコンピュータ側のOS(operatingsystem)の機能やミドルウェアもしくはアプリケーション・ソフトウェアを使用する例がよく知られている。
【0003】
一方、近年、ファイバチャネル・プロトコルが規格化されたことによって、記憶サブシステムとホストコンピュータとのインタフェースにSCSIや、ESCON、TCP/IPなど様々な既存プロトコルの同時使用が可能となり、記憶サブシステム内の記憶資源が一層有効利用可能となってきた。
【0004】
しかし、このような背景においては、複数のホストが1つの記憶サブシステムに対してアクセスしてくるため、従来通りのホスト側のOSやミドルウェア、アプリケーション・ソフトウェアだけでは、記憶サブシステム資源に対するセキュリティ機能として十分ではない、という危惧が発生してきた。このような現状に鑑み、記憶サブシステム資源(論理ユニット)に対するセキュリティ機能の実現手段として、特開平10−333839号公報に開示がある。
【0005】
上記公報による方法では、ホストコンピュータが起動する前に、予め記憶サブシステムにアクセスしてくる可能性があるホストコンピュータを一意に識別するN_Port_Nameと、アクセスを許可する記憶サブシステム内の論理ユニットの組み合わせを管理したテーブルを記憶サブシステム内に保持する。ホストコンピュータは、起動されると記憶サブシステムに対して、フレームと呼ばれるファイバチャネルプロトコルで規定されたある情報単位によってSCSIコマンドを送信する。記憶サブシステムは、このSCSIコマンドを逐一判定して、その中からアクセス元であるホストコンピュータを規定するN_Port_Nameを抽出する。
【0006】
抽出されたN_Port_Nameは、上述のN_Port_Nameとアクセスを許可した記憶サブシステム内の論理ユニットの組み合わせテーブル上で検索され、そのエントリが存在する場合、当該のホストコンピュータは、当該の論理ユニットへのアクセスを許可され、エントリが存在しない場合、当該ホストコンピュータは、当該の論理ユニットへのアクセスを拒絶される。
【0007】
【発明が解決しようとする課題】
記憶サブシステム内の記憶資源(論理ユニット)に対するセキュリティを実現する従来技術は、記憶サブシステムにフレームを送信してくるホストコンピュータに対して、逐一、そのアクセス可否を判定するため、データ転送にしめるアクセス可否判定のオーバーヘッドが大きく、高い性能を実現しにくいという課題があった。
【0008】
また、従来技術は、記憶サブシステムにフレームを送信してくるホストコンピュータが、そのフレーム内に送信元ホストコンピュータを一意に識別するための情報をもたせる点で、ホストコンピュータ側に新たな機能が必要となっていた。
【0009】
更に、従来技術では、アクセスしてくるホストコンピュータに対して、記憶サブシステム内の論理ユニット番号をそのまま開示するため、記憶サブシステムのポート配下にユーザの運用希望にそった論理ユニットの再配列を行えない。更にまた、多くのホストコンピュータでは、起動時に接続されている記憶サブシステムのLU0にアクセスできない場合、そのLU0以降の同系列のLU(SCSI−2の規格では、この1系列は8つのLUで構成されるため、LU0〜LU7までが同系列となる。)には全く存在の問い合わせをしない、とするものが多い。
【0010】
この場合、サブシステム内の論理ユニット番号をそのまま開示する方法では、アクセスが許可されているにもかかわらず、当該LUNを参照できないという事態が生じる。
【0011】
本発明の第1の目的は、ホストコンピュータの既存処理を変更せずに、ホストコンピュータ毎にアクセス可能な論理ユニットを制限し、不正アクセスを防止するセキュリティ機能を、記憶資源の高効率利用と高速なアクセス判定ロジックと共に提供することである。
【0012】
本発明の第2の目的は、ホストコンピュータの既存処理を変更せずに、同一ベンダ毎にアクセス可能な論理ユニットを制限し、不正アクセスを防止するセキュリティ機能を、記憶資源の高効率利用と高速なアクセス判定ロジックと共に提供することである。
【0013】
また、本発明の第3の目的は、このセキュリティ機能に基づいてアクセスが許可されたベンダのホストコンピュータ群に対して、当該ベンダ向けの記憶資源フォーマットやサービスを提供することである。
【0014】
【課題を解決するための手段】
上記課題を解決するために、本発明は以下の記憶サブシステムを提供する。
【0015】
ホストコンピュータを一意に識別する情報(WWN)、このホストコンピュータからのアクセスを許可した記憶サブシステム内の論理ユニット番号(LUN)、および該論理ユニット番号に対してユーザが任意のリナンバリング方法で任意数再配列して割り当てた仮想的な論理ユニット番号(仮想LUN)の対応を記述した管理テーブルと、これを格納する不揮発のメモリと、動的に割り当てられる管理番号(S_ID)(注・「ホスト→ストレージのログイン時に動的に割り当てられる」から変更、以下同じ)、およびホストコンピュータを一意に識別する情報(WWN)の対応を記述した管理テーブルと、これを格納する不揮発のメモリと、1つ以上の記憶装置と、これらの記憶装置に対してデータの読み書きを制御する記憶制御装置と、ホストコンピュータと接続を行うための1つ以上のポートと、前記記憶装置の記憶領域に対応した論理ユニットを有する記憶サブシステム。
【0016】
この記憶サブシステムにおいては、ホスト識別情報WWNのかわりに、動的に割り当てられるS_IDを識別情報として用いるため、I/O処理ごとに、各LUNにアクセス可否を問い合わせる必要がなくなりアクセス時のオーバヘッドを削減することが可能となる。
【0017】
また、仮想LUNを用いることにより、ユーザが任意の方法でLUNの再配列を行なうことが可能となる。
さらに、本発明は、複数のホストコンピュータとの結合に適応される記憶システムであって、前記複数のホストコンピュータからのデータを記憶する複数のディスクドライブと、前記複数のディスクドライブからのデータの読み取り又は前記複数のディスクドライブへのデータの書き込みを前記複数のホストコンピュータからのアクセスに応じてマップを用いて制御するコントローラとを有し、前記複数のディスクドライブは複数の論理ユニットを形成し、前記論理ユニットは論理ユニット番号を有し、前記マップは、前記複数のホストコンピュータの一部のホストグループの識別子と複数の仮想論理ユニット番号を含み、1以上の前記仮想論理ユニット番号は、前記ホストグループの前記識別子と前記論理ユニット番号のうちの1つの識別番号でリナンバーされる前記仮想論理ユニット番号でマップされることを特徴とする記憶システムである。
さらに、本発明は、複数のホストコンピュータとの結合に適応される記憶システムであって、前記複数のホストコンピュータからのデータを記憶する複数のディスクドライブと、アクセス管理マップを有するコントローラとを有し、前記複数のディスクドライブは複数の論理ユニットを形成し、前記論理ユニットは論理ユニット番号を有し、前記アクセスマネジメントマップは、前記複数のホストコンピュータの一部のホストグループの識別子と複数の仮想論理ユニット番号とを含み、1以上の前記仮想論理ユニット番号は、前記ホストグループの前記識別子と前記論理ユニット番号のうちの1つの識別番号でリナンバーされる前記仮想論理ユニット番号でマップされ、前記アクセスマネジメントマップは、前記ホストグループから前記論理ユニットへのアクセスを制御するのに使用されることを特徴とする記憶システムである。
さらに、本発明は、複数のホストコンピュータとの結合に適応される記憶システムであって、前記ホストコンピュータからのデータを記憶する複数のディスクドライブと、アクセス管理テーブルを有するコントローラとを有し、前記ディスクドライブは複数の論理ユニットを形成し、前記論理ユニットは論理ユニット番号を有し、前記アクセス管理テーブルは、前記複数のホストコンピュータの一部のホストグループの識別子と複数の仮想論理ユニット番号とを含み、1以上の前記仮想論理ユニット番号は、前記ホストグループの前記識別子と前記論理ユニット番号のうちの1つの識別番号でリナンバーされる前記仮想論理ユニット番号でマップされ、前記アクセスマ管理テーブルは、前記ホストグループから前記論理ユニットへのアクセスを制御するのに使用されることを特徴とする記憶システムである。
さらに、本発明は、複数のホストコンピュータとの結合に適応される記憶システムであって、前記複数のホストコンピュータからのデータを記憶する複数のディスクドライブと、前記複数のディスクドライブからのデータの読み取り又は前記複数のディスクドライブへのデータの書き込みを前記複数のホストコンピュータから前記論理ユニットへのアクセスに応じてアクセス管理マップを用いて制御するコントローラとを有し、前記複数のディスクドライブは複数の論理ユニットを形成し、前記論理ユニットは論理ユニット番号を有し、前記アクセス管理マップは、前記複数のホストコンピュータの一部のホストグループの識別子と複数の仮想論理ユニット番号を含み、1以上の前記仮想論理ユニット番号は、前記ホストグループの前記識別子と前記論理ユニット番号のうちの1つの識別番号でリナンバーされる前記仮想論理ユニット番号でマップされることを特徴とする記憶システムである。
さらに、本発明は、複数のホストコンピュータとの結合に適応される記憶システムであって、前記複数のホストコンピュータからのデータを記憶する複数のディスクドライブと、前記複数のディスクドライブからのデータの読み取り又は前記複数のディスクドライブへのデータの書き込みを前記複数のホストコンピュータからのアクセスに応じてマップを用いて制御するコントローラとを有し、前記複数のディスクドライブは複数の論理ユニットを形成し、前記論理ユニットは論理ユニット番号を有し、前記コントローラは、前記ホストコンピュータのいくつかを有するホストグループと対応する複数の識別子及び複数の前記論理ユニット番号のうちの1つでリナンバーされた仮想論理ユニット番号を含むアクセス管理マップを含み、各々のホストグループに割り当てられる前記仮想論理ユニット番号のいくつかはゼロから始まり、他はゼロ以外の番号で始まり、前記コントローラは、前記アクセス管理マップに応じて前記ホストグループから前記論理ユニットへのアクセスを制御することを特徴とする記憶システムである。
さらに、本発明は、複数のホストコンピュータとの結合に適応される記憶システムであって、前記複数のホストコンピュータからのデータを記憶する複数のディスクドライブと、前記複数のディスクドライブからのデータの読み取り又は前記複数のディスクドライブへのデータの書き込みを前記複数のホストコンピュータから前記論理ユニットへのアクセスに応じて制御するコントローラとを有し、前記複数のディスクドライブは複数の論理ユニットを形成し、前記論理ユニットは論理ユニット番号を有し、前記コントローラは、前記ホストコンピュータのいくつかを有するホストグループの識別子と複数の前記論理ユニット番号のうちの1つでリナンバーされた仮想論理ユニット番号をマップするアクセス管理テーブルを含み、前記論理ユニット番号はゼロでない番号で始まり、前記コントローラは、前記アクセス管理テーブルに応じた前記ホストグループから前記論理ユニットへのアクセスを制御すること特徴とする記憶システムである。
【0018】
【発明の実施の形態】
本発明では、記憶サブシステムとホストコンピュータ間で使用するインタフェース・プロトコルの例にファイバチャネルを、その上で動作するコマンドセットの例にSCSIコマンドを用いて説明する。しかし本発明の適用は、ファイバチャネルとSCSIコマンドの組み合わせに限定されるものではなく、これらと同様に、ログイン、問い合わせといった機能、機構を提供可能なプロトコルであれば何でもかまわない。
【0019】
本発明の第一の実施例を以下に示す。
【0020】
ここで、ファイバチャネルは比較的新しいインタフェース・プロトコルであるため、はじめに、そのプロトコルの概要を説明する。
【0021】
ファイバチャネルはシリアル転送方式のプロトコルであり、情報を非同期に送るため伝送媒体の帯域幅を有効に利用できる。また、ファイバチャネルは独自のコマンドセットを持たず、従来のSCSI、ESCON、HIPPI、IPI−3、IP等といったコマンドセットのためのインフラとして使用される。これより、従来のプロトコル資産を継承可能であり、かつ、より高速で信頼性の高い多彩なデータ転送を可能とする。
【0022】
また、ファイバチャネルはチャネルとネットワークの特長を併せ持つインタフェースである。ファイバチャネルでは一度、転送元と転送先が確定すれば、遅延が少ない高速な転送を実現できるが、これはチャネルの最大の特長の1つである。また、通信を希望する機器は、任意の契機でファイバチャネルの通信系に参加し、通信の目的となる相手の機器と相互に通信に関する取り決め情報を交換し、通信を開始することができるが、これはネットワークの特長である。ここで述べた相手機器との通信に関する取り決め情報交換の手続きを、とくにログインと呼ぶ。
【0023】
ファイバチャネルのインタフェースを持つ機器をノードと呼び、実際のインタフェースにあたる物理的な口をポートと呼ぶ。ノードは1つ以上のポートを持つことが可能である。ファイバチャネルの系全体に同時に参加できるポートの数は、最大で24ビットのアドレス数、すなわち約1677万個である。これらの接続を媒介するハードウェアをファブリックと呼ぶ。実際には、送信元および送信先のポートは、ファブリックを意識せずに互いのポートに関する情報のみを考慮して動作すればよい。
【0024】
各ノードおよびポートには、標準化団体(IEEE)から一定のルールによって割り当てられる、世界中でユニークな識別子が記憶されている。これは従来からTCP/IPなどで馴染みのMACアドレスに相当するものであり、ハードウェア的に固定なアドレスである。このアドレスにはN_Port_Name、Node_Nameの2種類があり、それぞれ8バイトのサイズを持つ。N_Port_Nameはポート毎に固有の値(ハードウェア・アドレス)であり、Node_Nameはノード毎に固有の値(ハードウェア・アドレス)である。これらは、いずれも世界中でユニークな値であることから、ノードまたは、ポートを一意に識別できるアドレスとして、WWN(World Wide Name)と呼ばれる。本特許の実施例では、WWNと記述した場合、N_Port_Nameを指すものとする。
【0025】
ファイバチャネルでは、通信はOrdered Setと呼ばれる信号レベルの情報と、フレームと呼ばれる固定のフォーマットを持った論理的な情報とで行われる。図2はフレームの構造を示している。フレーム201は、フレームの始まりを示すSOF(Start of Frame)202と呼ばれる4バイトの識別子、リンク動作の制御やフレームの特徴づけを行う24バイトのフレームヘッダ203、実際に転送される目的となるデータ部分であるデータフィールド204、4バイトの巡回冗長コード(CRC)205、フレームの終わりを示すEOF(End of Frame)206と呼ばれる4バイトの識別子からなる。データフィールド204は0〜2112バイトの間で可変である。
【0026】
次に、フレームヘッダの内容について説明する。207はフレームヘッダの構造について示している。ここではフレームヘッダ203の詳細構造207における、1ワード目の0〜23ビット領域にあたるS_ID208についてのみ説明する。S_ID(Source ID)208は当該フレームを送信するポートを識別するための3バイトのアドレス識別子であり、送受信されるすべてのフレームで有効な値を持つ。このS_IDは動的に変動する値であり、ファイバチャネルの規格セットの1つであるFC_PHでは、S_IDをファブリックによって、初期化手続き時に割り当てられる、としている。割り当てられる値は、それぞれのポートがもつN_Port_Nameまたは、Node_Nameに依存する。
【0027】
次に、ファイバチャネルプロトコルに基づく、送信元の機器と送信先の機器が通信に関して互いに情報を交換するログイン手続きについて述べる。図3に、PLOGIフレームにおけるデータフィールド303の詳細構造について示す。フレーム、およびフレームヘッダの構造は図2と同様である。PLOGIフレームのデータフィールド303において、先頭から21バイト目〜29バイト目までの8バイトの領域がN_Port_Name307を格納する領域であり、先頭から30バイト目〜38バイト目までの8バイトの領域がNode_Name308を格納する領域である。
【0028】
図4は、送信元(ログイン要求元)401と送信先(ログイン受信先)402との間に取り交わされる情報のやりとりを示したものである。ファイバチャネルのログイン手続きには数種類存在するが、ここではクラス3のログインに関して述べる。
【0029】
ログイン要求元は、PLOGIフレーム403をログイン受信先へ送信する。このフレームには、ログイン要求元のN_Port_Name、Node_Name、S_IDおよびその他の情報が含まれている。受信先の装置では、このフレームに含まれている情報を取り出し、ログインを承認する場合は、ACC404と呼ばれるフレームをログイン要求元に対して送信する。一方、ログインを拒絶する場合は、LS_RJT405と呼ばれるフレームをログイン要求元に対して送信する。
【0030】
ログイン要求元は、自らが送信したPLOGIフレームに対してACCフレームの応答を検出すると、ログインが成功したことを知り、データ転送などのI/Oプロセスを開始できる状態となる。一方、ログイン要求元が、LS_RJTを受信した場合はログインが成立しなかったこととなり、当該ログイン受信先へのI/Oプロセスは実行不可となる。ここではクラス3のログインについて述べたが、他のログインプロセスにおいても、ログイン要求元からログイン受信先へ渡すことのできる情報の中に、N_Port_Name、Node_NameおよびS_IDが含まれることにおいては同様である。
【0031】
次に、SCSIコマンドセットでは必ずサポートされている標準的なコマンドである、Inquiryコマンドについて説明する。Inquiryコマンドとは、I/Oプロセスを開始するのに先立ち、I/Oプロセスの対象となる論理ユニットに対して、その実装状態、準備状態を問い合わせるコマンドである。
【0032】
図5は、SCSI規格で定義されたInquiryコマンドを、ファイバチャネル規格のフレームで送信する場合のデータフィールドの詳細構造を示している。フレーム、およびフレームヘッドの構造は図2と同様であるが、S_ID208が含まれている。
【0033】
データフィールド503には506のFCP_CMNDフォーマットに示すように、FCP_LUN 507、FCP_CNTL508、FCP_CDB509、FCP_DL510と呼ばれる領域がある。ここではFCP_LUN507、およびFCP_CDB509について述べる。FCP_LUN507の中には、フレーム送信元が状態を問い合わせようとする、フレーム送信先のポートに関連付けられた論理ボリューム(目に見える単体としての記憶装置(物理ボリューム)に対して、便宜上仮想的に分割されナンバリングされた記憶領域)の識別子が格納されている。この識別子をLUN(Logical Unit Number)という。FCP_CDB509の中には、SCSIコマンドセットを使用する場合にはSCSIのコマンド記述ブロック(CDB)と呼ばれる命令情報が格納される。このFCP_CDB509の中に、SCSIのInquiryコマンド情報が格納されて、前述のFCP_LUN 507と共に、フレーム受信先へ情報が転送される。
【0034】
次に、Inquiryコマンドを受信したフレーム受信先が、問合せへの応答としてフレーム送信元へ返信する情報について述べる。この情報をInquiryデータという。図6にInquiryデータの抜粋を示す。ここでは、Inquiryデータ601のうちでクオリファイア602と、デバイス・タイプ・コード603の2つについて述べる。クオリファイア(Peripheral Qualifier)602は、指定された論理ユニットの現在の状態を設定する3ビットの情報である。論理ユニットの状態604は、このクオリファイアのビットパターンによって示される論理ユニットの状態を示したものである。コード000(2進数)605は、論理ユニットとして接続されている装置は、デバイス・タイプ・コード603の領域に示される種類の入出力機器であることを示している。本コードが設定されていても、その論理ユニットが使用可能、すなわちレディ状態であることを必ずしも示しているわけではない。
【0035】
しかし、当該論理ユニットを使用できるのは本コードが設定されている場合に限られる。コード001(2進数)606は、論理ユニットとして接続されている装置は、デバイス・タイプ・コード603の領域に示される種類の入出力機器であることを示しているが、そのロジカルユニットには実際の入出力機器が接続されていないことを示している。これは例えばCD−ROMドライブが実装されているが、CD−ROM媒体がドライブ内に挿入されていないような場合を示す。
【0036】
コード011(2進数)607は、指定された論理ユニットがサポートされていないことを示す。従って指定された論理ユニットに装置が割り当てられることはない。本コードが設定されるときは、デバイス・タイプ・コード領域603にはかならず1F(16進数)が設定される。
【0037】
デバイス・タイプ・コード(Peripheral Device Type)603は、指定された論理ユニットに実際に割り当てられている入出力機器の種別を示す5ビットの情報である。コード608は、各デバイスタイプ609に対応する16進数のコードである。608に示されている情報のうち、未定義または未接続のデバイスを表す1F(16進数)610が設定された場合、Inquiryコマンド送信元が問い合わせたデバイスは未定義あるいは未接続であり、当該論理ユニットは送信元からは使用できない。
【0038】
図7に、このInquiryコマンドを用いた論理ユニット問合せの手順を示す。論理ユニットにアクセスしようとするホストコンピュータ701は、アクセスしようとする論理ユニットをもつ記憶サブシステム702に対し、Inquiryコマンドを格納したフレーム703を送信する。
【0039】
このフレームには、ホストコンピュータのS_IDと、問合せを行う先の論理ユニットの識別子であるLUNが含まれている。ここで、LUNについては、FCP_LUN領域の他に、FCP_CDB内のInquiryコマンド情報のフォーマット中にも設定することができる。どちらの値を使用しても得られる効果は同じであるが、本実施例ではLUNの値はFCP_LUN 507に格納された値を使用するものとする。
【0040】
Inquiryコマンドを含むフレームを受信した記憶サブシステム702は、問合せに対して必要なInquiryデータを準備し、作成したInquiryデータを含むフレーム704をホストコンピュータに送信する。このときInquiryデータを格納するフレームを、FCP_DATAと呼ぶ。記憶サブシステムが、問合せのあった論理ユニットについて、クオリファイア000(2進数)、デバイスタイプ00〜09(16進数)のいずれかを設定する場合704、このInquiryデータを受信したホストコンピュータは、当該論理ユニットに対して、以降I/Oの発行が可能となる。
【0041】
一方、705に示すように、記憶サブシステムが、クオリファイア001(2進数)または011(2進数)、デバイスタイプ1F(16進数)を設定した場合、このInquiryデータ705を受信したホストコンピュータは、当該論理ユニットに対して、以降、I/Oの発行が不可能であることを認識する。
【0042】
以上のことから、Inquiryデータに格納するクオリファイア、およびデバイス・タイプ・コードを記憶サブシステム側でコントロールすれば、ホストコンピュータから記憶サブシステムの論理ユニットへのアクセス許可および不許可を制御できることが分かる。
【0043】
続いて、本発明の処理の流れについて詳細を述べる。
【0044】
はじめに図1は、本発明の実施例の装置構成を示したものである。本装置を記憶サブシステム101とよぶ。記憶サブシステム101は、ファイバチャネル・インタフェース用のポート102〜104を有し、ファイバチャネル・インタフェースを介して、ホストコンピュータ105〜107と物理的に接続されている。ホストコンピュータ105〜107もまた、ファイバチャネルインタフェース用のポート108〜112を有しており、ホストコンピュータ105〜107と記憶サブシステム101は、ファイバチャネル・プロトコルによる通信が可能である。ホストコンピュータには、105や106のように複数のファイバチャネル・ポートをもつものもあれば、107のように単一のファイバチャネル・ポートしかもたないものもある。
【0045】
記憶サブシステム101とホストコンピュータ105〜107間のファイバチャネルインタフェースの接続形態(トポロジ)には、Point−to−Pointや、アービトレーション・ループ接続、ファブリック接続等、いくつかの種類が存在するが、本発明はその接続形態には依存しないため、単にファイバチャネル113と記述する。
【0046】
まず、記憶サブシステム101は、種々の演算や処理を行うマイクロプロセッサ114を有し、複数の記憶装置群115、およびこれらにデータの読み書きを制御して行う記憶制御装置116、さらに記憶装置群115と記憶制御装置116を接続するためのバス117を有している。また、記憶サブシステム101は、種々の演算や処理のワーク領域として使用するメモリ118と、種々の管理情報、管理テーブル等を保存しておく不揮発メモリ119を有する。更に、ホストコンピュータへの応答を速くするための工夫として、キャッシュ120を有している。また、記憶サブシステム101は、通信制御部121を有し、通信回線122を介して、保守用端末装置123と接続されている。
【0047】
保守用端末装置123は、内部にマイクロプロセッサ124と、ユーザとのインタフェースとなる入力部125と処理の結果を出力する表示部126を有している。ユーザは、この入力部125を介して、本実施例で定義するいくつかのテーブルの設定を行うことができる。
【0048】
図8において、本実施例の処理流れ概要を示す。初めに、手順801において、ユーザは前述の保守用端末装置123の入力部125を介して、記憶サブシステム内に存在するLUを規定するLUN(Logical Unit Number)と、そのLUNにアクセスする可能性のあるホストコンピュータのWWN(N_Port_Name)と、これにアクセスしてくるホストコンピュータに対してそのLUNをどのように見せるかを決定する仮想LUNとを結び付けた「LUNアクセス管理テーブル」を作成する。
【0049】
本テーブルは、記憶サブシステム内の不揮発メモリ119に保持される。各ホストコンピュータには、本テーブルの仮想LUNが見える。各ホストコンピュータのWWNは既知である。
【0050】
手順802において、各ホストコンピュータが記憶サブシステムに対して、ファイバチャネル・プロトコルに基づいてログインしてくると、記憶サブシステムはPLOGIフレームから、当該ホストコンピュータのWWNと、S_IDを切り出し、それらの組み合わせを記述した「WWN−S_ID変換テーブル」を作成し、不揮発メモリ119上にこれを保持する。記憶サブシステムはこの作業を全てのPLOGIフレームに対して行う。
【0051】
次に手順803において、記憶サブシステムは、各ホストコンピュータが記憶サブシステム内の論理ユニットの状態を知るために送信したInquiryコマンドを含むフレームを受信する。このフレームを受信した記憶サブシステムは、そのフレームのヘッダからS_IDを、データフィールドからInquiryコマンドの対象となるLUNを切り出す。続いて、記憶サブシステムは、このS_IDをキーにして上述の「WWN−S_ID変換テーブル」を検索し、このS_IDに相当するWWNを取得する。
【0052】
続いて、記憶サブシステムは、手順804において、得られたWWNをキーにして上述の「LUNアクセス管理テーブル」を検索し、Inquiryコマンドの対象となっているLUNに相当する仮想LUNを「LUNアクセス管理テーブル」から取得する。ここでInquiry対象となっているLUNを仮想LUNとして取得する理由は、ホストコンピュータには仮想LUNが開示されているためである。
【0053】
続いて手順805では、手順804の結果、当該WWNに対応する仮想LUNを取得できたか否かの判定を行う。取得できた場合、すなわち当該WWNに対応する仮想LUNが「LUNアクセス管理テーブル」上に存在した場合は、当該ホストコンピュータによる当該仮想LUNへのアクセスが許可される。対応する仮想LUNが該テーブルに存在しない場合は、当該ホストコンピュータにより当該仮想LUNへのアクセスが拒絶される。
【0054】
手順805の結果、当該ホストコンピュータによる当該仮想LUNへのアクセスが許可される場合、記憶サブシステムは、手順806において、ホストコンピュータの発行したInquiryコマンドに対して、対象LUが実装済みの設定(すなわちアクセス可能である旨の設定)を行った上で、Inquiryデータを送信する。
【0055】
一方、当該仮想LUへのアクセスが拒絶される場合、記憶サブシステムは、手順807によって、ホストコンピュータの発行したInquiryコマンドに対して、対象LUが未実装の設定(すなわちアクセス不可である旨の設定)を行った上で、Inquiryデータを送信する。
【0056】
Inquiryデータを受信したホストコンピュータは、そのフレームを解析する。
【0057】
解析の結果、記憶サブシステムの当該仮想LUNへのアクセス許可を認識すると、ホストコンピュータは以降、当該仮想LUNに対して、コマンド(I/O要求)を継続して発行することができる。この場合、手順808にあるように、記憶サブシステムは当該ホストコンピュータからのログインが有効である間は、当該LUへのアクセス可否をチェックしなおすことなく、コマンド受信を継続することができる。
【0058】
一方、当該LUNへのアクセス拒否を認識したホストコンピュータは、記憶サブシステムへのログインが有効である間、当該LUへ再度アクセスすることはない。
【0059】
以下、上記の記憶サブシステム内の特定LUNに対するホストコンピュータからのアクセス可否を制御する方式を、便宜的に「LUNセキュリティ」と呼ぶ。
【0060】
次に、上記の各手順について詳細を示す。
【0061】
はじめに、上記手順の「LUNアクセス管理テーブル」の作成について記述する。本発明におけるLUNセキュリティは、記憶サブシステムのもつポート毎に管理されるものとし、ホストコンピュータは、この記憶サブシステムのポートを通して、記憶サブシステム内のLUにアクセスするものとする。この場合、最も簡単な方法として、ホストコンピュータを一意に識別する情報であるWWNと、当該ホストコンピュータにアクセスを許可するLUN(Logical Unit Number)の対応を定義した、図9に示すようなテーブル901を、記憶サブシステム内に設ければよい。
【0062】
しかし、ホストコンピュータと記憶サブシステム間に、ファイバチャネル対応のハブや、スイッチなどの機器類が存在するような使用環境では、901のテーブルだけでは不十分である。以下それを説明する。
【0063】
テーブル901は、記憶サブシステム内のLUをその識別子であるLUN(Logical Unit Number)に基づき、そのままホストコンピュータのWWNに対して割り当てている。図9では、WWN902のホストコンピュータには、LU0〜2にのみアクセスが許可され、WWN903のホストコンピュータは、LU3、4、および7にのみアクセスが許可され、WWN904のホストコンピュータは、LU5〜6にのみアクセスが許可されている。
【0064】
したがって、例えばLU0〜2は、WWN902のホストコンピュータ以外のホストコンピュータからは、アクセス不可となり、LUNセキュリティが実現される。しかし、今日多くのホストコンピュータでは、起動時に接続されている記憶サブシステムのLU0にアクセスできない場合、そのLU0以降の同系列のLU(SCSI−2の規格では、この1系列は8つのLUで構成されるため、LU0〜LU7までが同系列となる。)には全く存在の問い合わせをしない、とするものが多い。
【0065】
すると、テーブル901のような規定方法では、ホストコンピュータ903や904は、アクセス許可するLUNがそれぞれ規定されていながら、LU0にアクセスできないために、テーブル901で規定したアクセス許可のLUNを参照できない事態が発生してしまう。このような現象は、ディスクアレイ装置のような記憶資源を豊富に提供し得る装置においては、著しくその利用率を下げてしまうことになり無駄である。
【0066】
そこで、これを防ぐためにホストコンピュータ903、904にLU0へのアクセスを許可すると、LU0のセキュリティが保証されない。仮にこれを認めた場合にも、ホストコンピュータ903と904が異なるOSをもつホストコンピュータである場合、LU0を共有することは、それぞれのOSによるフォーマットの違いなどから困難である。
【0067】
一方、図10においてホストコンピュータが接続している当該ポート配下にLU0が存在しなくても、全てのLUNに対して存在の問い合わせを行う、WWN1002〜1004を持つホストコンピュータ群が存在すると仮定する。ここでは、WWN1002のホストコンピュータは、LU0、1、7にのみアクセスが許可され、WWN1003のホストコンピュータは、LU3、5、6にのみアクセスが許可され、WWN1004のホストコンピュータは、LU2、4にのみアクセスが許可されている。
【0068】
この状態を視覚的に表したのが図11である。ホストコンピュータ1102〜1104は、図10WWN1002〜1004を持つホストコンピュータに相当する。ホストコンピュータ1102〜1104は、ファイバチャネル対応のハブや、スイッチ1105を経由して記憶サブシステムの同一のポート1106に接続している。このような使用環境において、各々のホストコンピュータ1102〜1104に対し、無計画にアクセス対象LUNを定義したり、以前割り当てたLUNと異なるLUNをアクセス対象として割り当てた場合、ホストコンピュータに記憶サブシステム内のLUNをそのまま開示している1101のような記憶サブシステムではLUNの開示方法に柔軟性がないため、当該ポート配下が、LU群1107のようにLUが離散した状態で見え、使用上、著しく管理しにくい状態となってしまう。
【0069】
一方、最近、記憶サブシステムの1つのポート配下に9個以上のLUを定義しても、これを認識するホストコンピュータが存在するが、このようなホストコンピュータと従来のように1つの記憶サブシステムのポート配下にLU0〜7までの8個のLUしかサポートしないホストコンピュータ間でLUNセキュリティを実施した場合の問題点を示す。
【0070】
図12において、WWN1202、1204を持つホストコンピュータが、接続する記憶サブシステムのポート配下にLU0が存在しなくても、各LUに存在の問い合わせを行う機構をもち、かつ、接続する記憶サブシステムのポート配下にLUを16個まで認識する場合について以下説明する。
【0071】
WWN1203を持つホストコンピュータは、接続する記憶サブシステムのポート配下にLU0が存在しなくても、各LUに存在の問い合わせを行えるが、サポート可能なLUはLU0〜7の範囲の8個までとする。テーブル1201から分かるように、WWN1202を持つホストコンピュータはLU0〜5の範囲でアクセスが許可されており、WWN1203を持つホストコンピュータはLU6〜10の範囲で、またWWN1204を持つホストコンピュータはLU11〜15の範囲でアクセスが許されている。この状態を視覚的に表したのが図13である。
【0072】
ホストコンピュータ1302〜1304は、図12のWWN1202〜1204を持つホストコンピュータに相当する。ホストコンピュータ1302〜1304は、ファイバチャネル対応のハブや、スイッチ1305を経由して記憶サブシステムの同一のポート1306に接続している。このような使用環境において、各々のホストコンピュータ1302〜1304に対して、LU群1308のように記憶サブシステム内のLUを割り当てたとすると、ホストコンピュータA1302には、LU群1308中のLU0〜5の範囲のみアクセス許可対象として見え、ホストコンピュータC1304には、LU群1308中のLU11〜15の範囲のみアクセス許可対象として見え、それぞれLUNセキュリティの目的を果たすことができる。しかし、ホストコンピュータB1303は、元々1ポート配下にLU0〜7までの範囲で、8個までしかLUをサポートできないため、LU群1307の範囲内でしか問い合わせを実施することができない。よって、テーブル1201において、LU6〜10までアクセス許可をしても、実際には、LU6、7にしかアクセスできないという問題が生じる。これも、記憶サブシステム内のLUをそのまま開示しているために起こる弊害である。
【0073】
以上のような懸念を考慮して、本発明では、図14に示すような「LUNアクセス管理テーブル」1401を定義する。テーブル1401は、図9のテーブル901、図10のテーブル1001、図12のテーブル1201のように記憶サブシステム内のLUNをWWNに直接割り当てたテーブルとは異なり、記憶サブシステム内のLUNと、そのLUNをユーザの任意のリナンバリング方法で定義しなおした仮想LUNと、その仮想LUNにアクセスする可能性のあるホストコンピュータのWWNを組み合わせて記憶サブシステムのポート毎に定義したテーブルである。
【0074】
このテーブル1401において、ユーザは任意個数の任意LUNに対して、任意のリナンバリング方法で仮想LUNを対応づけることができる。その結果、この「LUNアクセス管理テーブル」1401を定義した記憶サブシステムでは、各ホストコンピュータに対して、ユーザの任意の使用希望に沿った形でLUNを開示することができる。その際、各ホストコンピュータにアクセスが許可されるLUNは、実際のLUN1417ではなく、仮想LUN1416であるため、各ホストコンピュータに記憶サブシステム内のLUNのばらつきや、LU0の有無などを意識させる必要がなく、ユーザの意志によって最適化された柔軟なLUN状態を提供することができる。
【0075】
図14において、WWN1402を持つホストコンピュータは、仮想LUN0〜3を通して、実際のLUN0〜3へアクセスが許可されている。以下WWN1403〜1414を持つホストコンピュータも同様であり、それぞれ仮想LUN1416を通して、対応する実際のLUN1417へアクセス許可される。これにより、各ホストコンピュータは、非LU0に対しても、LU0に対して行うような処理を実行すること等が可能となる。
【0076】
この「LUNアクセス管理テーブル」1401において特徴的なことは、WWN1402〜1405を持つホストコンピュータには、それぞれ接続ポート配下のLU0にアクセスしているように見えているものの、実際には、それぞれの間で排他的なセキュリティが実現されながら、実際には異なったLUNにアクセスし、記憶資源を効率的に使用できていることである。
実際のLUNに対する仮想LUNのリナンバリングに関して詳細を示す。使用者が最もよく行うと思われる仮想LUNによるリナンバリング方法は、従来のSCSI規格との対応を意識して、各WWNに対して、LU0を起点に1ずつLUNが増えていくような番号付け、すなわちWWN1402〜1404の欄に見られるようなケースである。
【0077】
しかし、運用面を考えて、WWN1407,1408の欄のように、偶数のみの仮想LUN、奇数のみの仮想LUNを対応させることも可能である。この例では、WWN1407、1408を有するホストコンピュータがアクセス許可されているのは、実際には単に連続するLU30〜34、およびLU35〜38である。また、WWN1409の欄のように、LU0が存在しなくても任意のLUNを検出できるようなホストコンピュータに対しては、アクセス希望するLUNに対応する仮想LUNにだけアクセス許可すればよい。また、WWN1410および1411の欄のような対応づけは、2つ以上の異なるホストコンピュータを任意にグルーピングする際に便利である。さらにまた、WWN1412および1413の欄は、これら2つのWWNを有するホストコンピュータに対しては、異なるLUNにアクセス許可しているように見せながら、実際には全く同じLUNにアクセスさせ、同一の情報を開示したい場合に便利な運用である。
【0078】
さらには、記憶サブシステムがRAIDを構成するディスクアレイ装置であるような場合に、異なるRAIDグループに属するLUをひとつずつ割り当て、最もI/Oに貢献する記憶装置(磁気ディスクドライブ)数が多くなるようにすることもできる。図14の例でいうと、WWN1414の欄がこれに該当する。
【0079】
以上、本発明の「LUNアクセス管理テーブル」による仮想LUNと実際のLUN対応づけの効果について具体例に説明してきたが、これを視覚的に表すと図16のようになる。対応する管理テーブル1502は図15に示した。
【0080】
テーブル1501で、各ホストコンピュータに割り当てた実際のLU群1504は、実際には図16の1608のように全く乱雑な配置をとっている。しかし、これをテーブル1501の仮想LU群1503で置換することで、各ホストコンピュータに記憶サブシステム1601内の実際のLUの配置状態1608に影響を受けない状態1607でLUを開示することができる。これにより、記憶サブシステム資源の柔軟な運用が可能となる。
【0081】
本発明の「LUNアクセス管理テーブル」1401や1501は、図17手順1701〜1703に示すように、記憶サブシステムの全ポートに対して定義された後、記憶サブシステム内の不揮発メモリに保持される。不揮発メモリに保持されることで、本テーブルは、記憶サブシステムの電源切断によっても消失しない。
【0082】
続いて、記憶サブシステムがホストコンピュータから、ログインされる際の処理について説明する。本実施例では、一連のログイン処理を通じて、ホストコンピュータを一意に識別するWWNと、ログイン以降に使用されるホストコンピュータを一意に識別するS_IDとを対応させる。ホストコンピュータが起動すると、図18の手順1801において、記憶サブシステムは、PLOGIフレームを受信する。
【0083】
PLOGIフレームを受信した記憶サブシステムは、手順1802において、フレームヘッダからホストコンピュータのS_IDを、手順1803において、データフィールドからホストコンピュータのWWN(N_Port_Name)を取得する。続いて、記憶サブシステムは手順1804において、このWWNとS_IDの組み合わせを図19に示す「WWN−S_ID変換テーブル」1901に記録作成し、これを手順1805において、記憶サブシステム内の不揮発メモリに保持する。「WWN−S_ID変換テーブル」1901は、記憶サブシステムのポート毎に作成される。
【0084】
このテーブルに登録されたWWNをもつホストコンピュータから、以後、コマンドが送信されると、記憶サブシステムはそのフレームヘッダからS_IDを取得し、「WWN−S_ID変換テーブル」1901によってそのホストコンピュータのWWNを検索することができる。記憶サブシステムは、この「WWN−S_ID変換テーブル」を不揮発メモリ上に保存すると、手順1806において、当該ホストコンピュータのログインを承認した旨のACCフレームを送信する。記憶サブシステムからACCフレームを受信したホストコンピュータは、これ以降、記憶サブシステムに対してInquiryコマンドを発行することができる。
【0085】
続いて、ホストコンピュータからのInquiryコマンド受信と、これに対する記憶サブシステムのセキュリティ応答について説明する。図20、図21は、この一連の処理の流れを示したものであり、図22は、この一連の処理の流れにおいて使用される各テーブルやパラメータの参照関係を示したものである。図20の手順2001において、記憶サブシステムは、ホストコンピュータからファイバチャネルに規定されたFCP_CMNDフレームを受信する。すると記憶サブシステムは、手順2002において、そのFCP_CMNDのデータフレームの内容を解析する。
【0086】
続いて記憶サブシステムは、手順2003において、当該のFCP_CMNDの内容がInquiryコマンドであるか否かをチェックする。Inquiryコマンドでない場合、記憶サブシステムは手順2004において、そのコマンドに対応した処理を実行する。一方、Inquiryコマンドであった場合、記憶サブシステムは手順2005において、当該FCP_CMNDフレームのヘッダからホストコンピュータのS_IDを取得し、手順2006において、当該FCP_CMNDフレームのデータフィールドのFCP_LUNから対象とするLUNを取得する。引き続き、記憶サブシステムは手順2007において、得られたS_IDをキーにして、図19の「WWN−S_ID変換テーブル」1901を検索し、このS_IDに対応するWWNを取得する。ここまでの流れは、図22の2201および手順2202、2203の参照動作を指す。
【0087】
続いて、手順2008において、このWWNに対してアクセス許可されている仮想LUN情報を取得する。そして、手順2109において、このWWNをもつホストコンピュータのInquiryコマンドから得られたLUNが、「LUNアクセス管理テーブル」上でアクセス許可された仮想LUNとして登録されているか否かを判定する。ここまでの流れは、図22の手順2204および2205の参照動作を指す。
【0088】
「LUNアクセス管理テーブル」の当該エントリに、手順2006で得られたLUNが仮想LUNとして登録されている場合、当該ホストコンピュータからその仮想LUNへのアクセスが許可されるため、記憶サブシステムは手順2110において、ホストコンピュータ応答用Inquiryデータのクオリファイアに2進数の'000'を、デバイスタイプに記憶サブシステムのデバイスタイプコードをセットする。
【0089】
一方、「LUNアクセス管理テーブル」の当該エントリに、手順2006で得られたLUNが仮想LUNとして登録されていない場合、当該ホストコンピュータからその仮想LUNへのアクセスは拒絶されるため、記憶サブシステムは手順2111において、ホストコンピュータ応答用Inquiryデータのクオリファイアに2進数の'001'または、'011'を、デバイスタイプに16進数の'1F'をセットする。
【0090】
次に記憶サブシステムは、手順2112において、FCP_DATAフレームに上記の応答用Inquiryデータをセットして、ホストコンピュータへ送信する。続いて記憶サブシステムは、手順2113において、ホストコンピュータのInquiryコマンドの応答を完了したことを示すFCP_RSPフレームを送信する。
【0091】
図20の手順2110、2112に引き続いて、Inquiryデータを含むFCP_DATAを記憶サブシステムから受信したホストコンピュータは、当該LUNへのアクセスは可能と判断し、以降、当該仮想LUNへのアクセス可否を再度問い合わせることなく、アクセスを継続することができる。ここで、当該ホストコンピュータがアクセスするLUNは、実際には図22の手順2206の参照動作でポイントされる、仮想LUNと一意に対応づけられた記憶サブシステム内のLUNとなる。この手順2206の参照動作は、記憶サブシステムの内部的な参照作業であり、ホストコンピュータから意識されることはない。一方、手順2111、2112に引き続いて、Inquiryデータを含むFCP_DATAを記憶サブシステムから受信したホストコンピュータは、当該LUNへのアクセスは不可能と判断し、以降、当該LUNへのアクセス可否を再度問い合わせることはなく、当該仮想LUNへもアクセスしない。
【0092】
本実施例では、上記したようにホストコンピュータがアクセス可否を当該LUNへ問い合わせるのは、Inquiryコマンド発行時だけである。つまり、ログインが有効である間は、この問い合わせを繰り返し行う必要がない。これにより、ホストコンピュータと記憶サブシステム間のデータ転送効率を落とすことなく、強固なLUNセキュリティを実現できる。
【0093】
以上のように、記憶サブシステム内に存在するLUと、そのLUNをユーザ任意のリナンバリング方法で定義しなおした仮想LUNと、その仮想LUNにアクセスする可能性のあるホストコンピュータのWWNとを組み合わせて記憶サブシステムのポート毎に管理することにより、ホストコンピュータ側の処理を変えることなく、記憶サブシステム内の記憶資源を有効に提供でき、当該ホストコンピュータから当該LUNへのアクセス可否を高速な判定ロジックで行う強固なLUNセキュリティを実現できる。
【0094】
本実施例では、ファイバチャネルを例に説明したが、実施においては、必ずしもファイバチャネルに限定する必要はなく、同等機能を提供可能なプロトコル環境であれば、その種別は問わない。また、記憶サブシステムに関しても、本実施例では、主にディスクアレイ装置を想定して記述しているが、記憶装置を可換媒体として置き換え、光ディスクライブラリや、テープライブラリなどに適用することも可能である。
【0095】
本発明に係る第二の実施形態を以下に説明する。
【0096】
第二の実施例も第一の実施例同様、ホストコンピュータと記憶サブシステムの間のインタフェース・プロトコルにファイバチャネルを例にして説明する。本実施例は、複数のホストコンピュータから構成される特定のグループに対してLUNセキュリティを実現する方法である。
【0097】
例えば、ホストコンピュータと記憶サブシステム間にファイバチャネル対応のハブや、スイッチなどの機器類が存在する図1、図11、図13、図16のような使用環境では、記憶サブシステムの同一ポートにアクセスするホストコンピュータには様々なベンダ製のものが予想される。このような様々なベンダ製のホストコンピュータが共存するような環境では、しばしば記憶サブシステム内の記憶資源の共有、共用に関して問題が発生する。ベンダが異なれば、多くの場合、当該ホストコンピュータの搭載するOSが異なる。この問題は、ホストコンピュータが、WSやメインフレーム等の場合にしばしば発生する。ホストコンピュータがPCの場合は、ベンダが異なっても、OSは多くの場合Windows系であるためこの限りではない。
【0098】
OSが異なる場合、記憶資源に対するフォーマット形式や、アクセスのロジック、実行可能なスクリプト、アプリケーション等が異なるため異なるベンダ製ホストコンピュータ間で同一のボリュームを共有することは困難である。
【0099】
そこで、記憶サブシステムの記憶資源に対して、ベンダ単位でグルーピングしてアクセスの可否を設定できるような、いわゆるベンダ毎のLUNセキュリティ機能を実現することが望ましい。更に、このようなベンダ毎のLUNセキュリティが実現できれば、アクセスを許可したグループ向けの記憶資源上に、当該ベンダ向けのサービスを提供したり、固有の処理を実行させることもできる。
【0100】
そこで、記憶サブシステム内のLUへアクセスを許可する最小単位をホストコンピュータのベンダ単位で規定することを例に、第二の実施例を説明する。第二の実施例が第一の実施例と異なる点は、「LUNアクセス管理テーブル」の定義方法である。本実施例では、WWNの性質に注目してホストコンピュータのベンダを識別する。図23の2301は、WWNのフォーマットの1つを示したものである。この図から分かるように、WWN2301は、60〜63ビットエリア(4ビットエリア)に定義された識別フィールド2302と、36〜59ビット(24ビットエリア)に定義されたCompany_ID2303と、0〜35ビット(36ビットエリア)に定義されたVSID(Vendor Specific Identifier)2304から構成される。
【0101】
このCompany_ID2303は、従来からよく知られているMACアドレスを原則的に流用したもので、IEEEが世界中のコンピュータベンダや、通信機器ベンダ等を対象にユニークに割り当てた識別情報である。VSID2304は、IEEEからCompany_ID2303の使用を認められたベンダが自社のルールで決定したユニークな識別情報であり、当該ベンダ内でユニークな値となる。各ベンダのCompany_ID2303は、IEEEの出版物等を通して誰でも知ることができる情報であることから、このCompany_ID2303を予め調べておけば、記憶サブシステムにログインしてきたホストコンピュータがどのベンダ製のものであるかを識別することができる。
【0102】
WWNには、何種類かのフォーマット形式が規定されているが、Company_ID2303とVSID(Vendor Specific Identifier)2304を共通して内包している。
【0103】
図24は、本実施例における「LUNアクセス管理テーブル」2401である。「LUNアクセス管理テーブル」2401は、記憶サブシステム内のLUN2304と、そのLUNをユーザの任意のリナンバリング方法で定義しなおした仮想LUN2403と、その仮想LUNにアクセスする可能性のあるホストコンピュータのベンダを表すCompany_ID2402を組み合わせて記憶サブシステムのポート毎に定義したテーブルである。このテーブル2401においてユーザは、任意個数の任意LUNに対して、任意のリナンバリング方法で仮想LUNを対応づけることができる。
【0104】
その結果、この「LUNアクセス管理テーブル」2401を定義した記憶サブシステムでは、各ベンダ製のホストコンピュータに対して、ユーザの任意の使用希望に沿った形でLUNを開示することができる。その際、各ベンダのホストコンピュータにアクセスが許可されるLUNは、実際のLUN2404ではなく、仮想LUN2403であるため、各ベンダ製のホストコンピュータに記憶サブシステム内のLUNのばらつきや、LU0の有無などを意識させる必要がなく、ユーザの意志によって最適化されたLUN状態を提供することができる。
【0105】
一方、「WWN−S_ID変換テーブル」に関しては、本発明の第一の実施例図18に示したものと同様の作成方法で、図19の1901と同様のフォーマットで実現することができる。
【0106】
続いて、図25において、本実施例の全体の処理流れを示し、同時に図26において、この一連の処理の流れにおいて使用される各テーブルとパラメタの参照関係を示す。初めに、手順2501において、ユーザは前述の保守用端末装置123の入力部125を介して、記憶サブシステム内に存在するLUNと、そのLUNにアクセスする可能性のあるホストコンピュータ群のベンダを表わすCompany_IDと、これにアクセスしてくる各ベンダ製ホストコンピュータに対してそのLUNをどのように見せるかを決定する仮想LUNとを結び付けた「LUNアクセス管理テーブル」を作成する。
【0107】
本テーブルは、記憶サブシステム内の不揮発メモリ119に保持される。各ベンダ製ホストコンピュータには、本テーブルの実際のLUNではなく、仮想LUNが見える。Company_IDは各ベンダを表す既知の情報である。本実施例の「LUNアクセス管理テーブル」において、WWNではなくWWNの構成要素であるCompany_IDを使用するのは、LUへのアクセス可否判定を個々のホストコンピュータ単位ではなく、各ベンダ単位で行うためである。
【0108】
手順2502において、各ホストコンピュータが記憶サブシステムに対して、ファイバチャネル・プロトコルに基づいてログインしてくると、記憶サブシステムはPLOGIフレームから、当該ホストコンピュータのN_Port_Name(以下、これをWWNと記す)と、S_IDを切り出し、それらの組み合わせを記述した「WWN−S_ID変換テーブル」を作成し、不揮発メモリ119上にこれを保持する。記憶サブシステムは、この作業を全てのPLOGIフレームに対して行う。
【0109】
次に手順2503において、記憶サブシステムは、各ベンダ製ホストコンピュータが記憶サブシステム内の論理ユニットの状態を知るために送信したInquiryコマンドを含むフレームを受信する。このフレームを受信した記憶サブシステムは、そのフレームのヘッダからS_IDを、データフィールドからInquiryコマンドの対象となるLUNを切り出す。続いて、記憶サブシステムは、このS_IDをキーにして上述の「WWN−S_ID変換テーブル」を検索し、このS_IDに相当するWWNを取得する。
【0110】
続いて記憶サブシステムは、手順2504において、得られたWWNから、図23の2301のフォーマットに基づいて、24ビットのCompany_IDを切り出す。このCompany_IDの切り出し作業は、第一の実施例の流れにはなかった本実施例に固有のものである。手順2503、2504は図26の2601〜2604に相当する。
【0111】
次に記憶サブシステムは、得られたCompany_IDをキーにして上述の「LUNアクセス管理テーブル」を検索し、Inquiryコマンドの対象となっているLUNに相当する仮想LUNを「LUNアクセス管理テーブル」から取得する。ここで、Inquiry対象となっているLUNを仮想LUNとして取得する理由は、仮想LUNが記憶サブシステムのLUNとして各ベンダ製ホストコンピュータに対して開示されているためである。
【0112】
続いて手順2506では、手順2505の結果、当該WWNに対応する仮想LUNを取得できたか否かの判定を行う。取得できた場合、すなわち当該WWNに対応する仮想LUNが「LUNアクセス管理テーブル」上に存在した場合が、当該ベンダ製ホストコンピュータに対して当該仮想LUNへのアクセスが許可される場合であり、存在しない場合が、当該ベンダ製ホストコンピュータに対して当該仮想LUNへのアクセスが拒絶される場合である。
【0113】
手順2506の結果、当該ベンダ製ホストコンピュータによる当該仮想LUNへのアクセスが許可できる場合、記憶サブシステムは、手順2507において、当該ベンダ製ホストコンピュータの発行したInquiryコマンドに対して、対象LUが実装済みの設定、すなわちアクセス可能である旨の設定を行った上で、Inquiryデータを送信する。これら手順2505、2506、2507は図26の2605、2606、2608に相当する。
【0114】
一方、手順2506の結果、当該ホストコンピュータにより当該仮想LUNへのアクセスが拒絶される場合、記憶サブシステムは、手順2508によって、当該ベンダ製ホストコンピュータの発行したInquiryコマンドに対して、対象LUが未実装の設定、すなわちアクセス不可である旨の設定を行った上で、Inquiryデータを送信する。Inquiryデータを受信したホストコンピュータは、そのフレームを解析する。
【0115】
解析の結果、記憶サブシステムの当該仮想LUNへのアクセス許可を認識すると、当該ベンダ製ホストコンピュータは以降、当該仮想LUNに対して、コマンド(I/O要求)を継続して発行することができる。この場合、手順2509にあるように、記憶サブシステムは当該ベンダ製ホストコンピュータからのログインが有効である間、当該LUNへのアクセス可否をチェックしなおすことなく、コマンド受信を継続することができる。ここで、当該ベンダ製ホストコンピュータのアクセスが許可されるLUNは、実際には図26の手順2607の参照動作でポイントされる、仮想LUNと一意に対応づけられた記憶サブシステム内のLUNとなる。この手順2607の参照動作は、記憶サブシステムの内部的な参照作業であり、ホストコンピュータから意識されることはない。
【0116】
一方、記憶サブシステムが送信したInquiryデータフレームから、当該LUへのアクセス拒否を認識した各ベンダ製ホストコンピュータは、記憶サブシステムへのログインが有効である間、当該LUNへ再度アクセスすることはない。
【0117】
本実施例では記憶サブシステムにアクセスしてきたホストコンピュータのWWNを直接セキュリティの管理対象としているのではなく、WWNを構成する情報であるCompany_IDを切り出して、当該ホストコンピュータが属するグループ、すなわちベンダを規定し、セキュリティの管理対象単位としていることが分かる。
【0118】
このことをより詳細に説明しているのが図27と図28である。2701の「LUNアクセス管理テーブル」では、Company_ID0000E1をもつベンダ製ホストコンピュータ群2705に対して、仮想LUN0、1、2、3、4を通して、実際のLUN0、1、6、8、15へのアクセスを許可している。同様に、Company_ID0000E2をもつベンダ製ホストコンピュータ群2706に対して、仮想LUN0、1、2を通して、実際のLUN2、7、10へのアクセスを、Company_ID0000F0をもつベンダ製ホストコンピュータ群2707に対しては、仮想LUN0、1、2、3を通して、実際のLUN3、4、5、14へのアクセスを許可している。
【0119】
これを図示したのが図28である。種々のコンピュータ2803〜2811は、ファイバチャネルのファブリック2802を経由して、記憶サブシステム2801に単一のポートで接続している。ホストコンピュータ2803〜2811は、それぞれ世界でユニークなWWNを有しているが、同じベンダ製のホストコンピュータは共通のCompany_IDを有している。ホストコンピュータ2803、2804、2805、2808が同一のベンダA製であり、そのCompany_IDは、0000E1とすると、これらのホストコンピュータは、所属するファイバチャネルのドメインが異なっても、2701の「LUNアクセス管理テーブル」のセキュリティ規定から、記憶サブシステム2801内のLUA0〜4にのみアクセスが許可される。
【0120】
同様にホストコンピュータ2806、2807、2811が同一のベンダB製であり、そのCompany_IDは、0000E2とすると、これらのホストコンピュータは、所属するファイバチャネルのドメインが異なっても、2701のテーブルのセキュリティ規定から、記憶サブシステム2801内のLUB0〜2にのみアクセスが許可される。同様にホストコンピュータ2809、2810が同一のベンダC製であり、そのCompany_IDは、0000F0とすると、これらのホストコンピュータは、所属するファイバチャネルのドメインが異なっても、2701のテーブルのセキュリティ規定から、記憶サブシステム2801内のLUC0〜3にのみアクセスが許可される。これら異なるベンダ間では、2701のテーブルのセキュリティ規定に基づいたアクセスの排他論理により、異なるベンダ用にアクセス制限されたLUを見ることはできない。
以上のように、ベンダ毎のLUNセキュリティを実現することができるが、これを応用することで、更にベンダ毎のホストコンピュータ群に記憶サブシステム資源を有効に提供することができる。例えば、2812のLUA0〜4、LUB0〜2、LUC0〜3は、それぞれアクセスしてくるベンダが異なることが自明であるため、それぞれに対して、アクセス許可したベンダ製ホストコンピュータOS向けのフォーマットを実施することができる。また、それぞれに、アクセス許可したベンダ製ホストコンピュータOS向けの固有の実行スクリプトや、アプリケーション・ソフトウェア、サービスを提供することも可能である。更には、それぞれに記憶サブシステム2801の制御情報を提供することで、ベンダ毎に当記憶サブシステム2801をカスタマイズさせることも可能である。
【0121】
以上のように、記憶サブシステム内に存在するLUと、そのLUNをユーザの任意のリナンバリング方法で定義しなおした仮想LUNと、その仮想LUNにアクセスする可能性のあるコンピュータベンダのCompany_IDを組み合わせて記憶サブシステムのポート毎に管理することにより、ホストコンピュータ側の処理を変えることなく、記憶サブシステム内の記憶資源を有効に提供でき、当該ホストコンピュータから当該LUNへのアクセス可否をベンダ単位で高速な判定ロジックで行う強固なLUNセキュリティを実現することができる。
【0122】
本実施例では、ファイバチャネルを例に説明したが、実施においては、必ずしもファイバチャネルに限定する必要はなく、本記述と同等の機能を提供できるプロトコル環境であれば、その種別は問わない。また、記憶サブシステムに関しても、本実施例では、主にディスクアレイを対象に記述したが、記憶装置を可換媒体として置き換え、光ディスクライブラリや、テープライブラリなどに適用することも可能である。更に、ここではホストコンピュータのベンダ単位でグルーピングを行ったが、複数のホストコンピュータ間で共有可能な情報に基づき、任意のグループ分けが可能である。
【0123】
以上述べた実施例に基づき、ある記憶サブシステムにおいて本発明が実施されているか否かの確認方法としては、たとえば以下の方法がある。
【0124】
▲1▼図14あるいは図24に示すような、ホストを一意に識別する識別子と、論理ユニット番号(LUN)、および仮想的な論理ユニット番号(仮想LUN)を対応づけた管理テーブルを作成する必要がある、またはこの表を参照する処理が行われれば、本発明が実施されている可能性が高い。
【0125】
▲2▼ファイバモニタを用いて、ホスト−ストレージ間の通信に用いられるコマンドをモニターする。ホストが管理する論理ユニット番号(仮想LUN)と、実際にアクセスした論理ユニットに与えられた、ストレージが管理する論理ユニット番号(LUN)が一致しない場合があれば、本発明が実施されている可能性が高い。
【0126】
▲3▼ホストが管理する論理ユニット番号(仮想LUN)の絶対値の最大値と、ストレージが管理する論理ユニット番号(LUN)の絶対値の最大値が一致しない場合があれば、本発明が実施されている可能性が高い。(これは、複数のLUに対して、同一の仮想LUNを対応づけることが可能であることによる。)
【0127】
【発明の効果】
以上説明したように、管理テーブルを用いることによって、ホストコンピュータにユーザ運用希望にそった形で、記憶サブシステム内の論理ユニットを開示しながら、各ホストコンピュータに対してLU単位にアクセス可否を制限し、不正アクセスを防止するセキュリティ機能を実現できる。更に、記憶サブシステム内のLUに対するアクセス可否判定は、問い合わせコマンド発行時点で判明し、以降この判定を繰り返す必要がないため、記憶サブシステムを高い性能で維持運用しながら、LUに対する強固なセキュリティを確保することができる。
【0128】
また、本発明の上記実施例によれば、同一ベンダを示すCompany_ID等、ホストコンピュータのうちのあるグループに共通な識別情報をWWNから部分的に切り出し、共通の識別情報を持つグループ単位に、記憶サブシステム内のLUにアクセス制限を実施することで、当該ホストコンピュータ群にのみ有効な記憶資源フォーマットや、アプリケーション、サービス、固有の処理などを提供することができる。
【図面の簡単な説明】
【図1】本発明の実施形態におけるハードウェア構成図である。
【図2】本発明の実施形態におけるフレーム・フォーマットおよびそのフレームヘッダの詳細を示す図である。
【図3】本発明の実施形態におけるフレーム・フォーマットおよびそのフレームヘッダおよびデータフィールドの詳細を示す図である。
【図4】本発明の実施形態におけるログインプロセスを示す図である。
【図5】本発明の実施形態におけるInquiryコマンド送信時のフレーム・フォーマットの詳細を示す図である。
【図6】図5で示したInquiryコマンドに対して送信するInquiryデータ・フォーマットの詳細を示す図である。
【図7】本発明の実施形態におけるInquiryコマンドによる論理ユニットへのアクセス可否問い合わせシーケンスを示す図である。
【図8】本発明の実施形態におけるLUNセキュリティの処理シーケンス概要を示す図である。
【図9】本発明の実施形態における「LUNアクセス管理テーブル」を示す図である。
【図10】本発明を利用しないことによる不完全な「LUNアクセス管理テーブル」のフォーマットおよび、その第一の例を示す図である。
【図11】図10の状態を視覚的に表した図である。
【図12】本発明を利用しないことによる不完全な「LUNアクセス管理テーブル」のフォーマットおよび、その第二の例を示す図である。
【図13】図12で示した状態を視覚的に示した図である。
【図14】本発明の実施形態における「LUNアクセス管理テーブル」のフォーマットおよび、その第一の利用例を示す図である。
【図15】本発明の実施形態における「LUNアクセス管理テーブル」のフォーマットおよび、その第二の利用例を示す図である。
【図16】本発明の実施形態におけるLUNセキュリティの効果を視覚的に示す図である。
【図17】本発明の実施形態における「LUNアクセス管理テーブル」の作成シーケンスを示す図である。
【図18】本発明の実施形態における「WWN−S_ID変換テーブル」の作成シーケンスを示す図である。
【図19】本発明の実施形態における「WWN−S_ID変換テーブル」の作成シーケンスを示す図である。
【図20】本発明の実施形態におけるLUNセキュリティのホストコンピュータ送信のInquiryコマンドに対するLUNアクセス可否判定シーケンスを示す図である。
【図21】本発明の実施形態におけるLUNセキュリティのホストコンピュータ送信のInquiryコマンドに対するLUNアクセス可否判定シーケンスを示す図である。(つづき)
【図22】本発明の実施形態におけるLUNセキュリティの各テーブル間の参照関係を示す図である。
【図23】本発明の実施形態におけるWWNのフォーマットの一例を示す図である。
【図24】本発明の実施形態におけるベンダ別「LUNアクセス管理テーブル」のフォーマットおよび、その第一の利用例を示す図である。
【図25】本発明の実施形態におけるベンダ別LUNセキュリティの処理シーケンス概要を示す図である。
【図26】本発明の実施形態におけるベンダ別LUNセキュリティの各テーブル間の参照関係を示す図である。
【図27】本発明の実施形態におけるベンダ別「LUNアクセス管理テーブル」のフォーマットおよび、その第二の利用例を示す図である。
【図28】本発明の実施形態におけるベンダ別LUNセキュリティの効果を視覚的に示す図である。
【符号の説明】
201 フレーム・フォーマット
207 フレーム・ヘッダの詳細
208 S_ID
305 データフィールドの詳細
307 N_Port_Name
308 Node_Name
506 データフィールドの詳細
601 Inquiryコマンドに対して送信するInquiryデータ・フォーマット
604 クオリファイア(3ビット)の詳細
605〜607 クオリファイア(3ビット)
608 デバイス・タイプコード(5ビット)の種別
609 デバイス・タイプ
901 不完全な「LUNアクセス管理テーブル」の第一の例
902〜904 記憶サブシステムへアクセス管理されたホストコンピュータ1〜3のWWN
1001 不完全な「LUNアクセス管理テーブル」の第二の例
1101 記憶サブシステム
1201 不完全な「LUNアクセス管理テーブル」の第三の例
1308 記憶サブシステムのポート配下に定義されたLU群LU0〜15
1401 「LUNアクセス管理テーブル」の第一の例
1501 「LUNアクセス管理テーブル」の第二の例
1901 「WWN−S_ID変換テーブル」の第一の例
2301 WWN(World Wide Name)のフォーマットの一例
2401 ベンダ別「LUNアクセス管理テーブル」の第一の例
2701 ベンダ別「LUNアクセス管理テーブル」の第二の例

Claims (24)

  1. 複数のホストコンピュータとの結合に適応される記憶システムであって、
    前記ホストコンピュータからのデータを記憶する複数のディスクドライブと、
    アクセス管理テーブルを有するコントローラとを有し、
    前記ディスクドライブは複数の論理ユニットを形成し、
    前記論理ユニットは論理ユニット番号を有し、
    前記アクセス管理テーブルは、
    前記複数のホストコンピュータのうちの一部の複数のホストコンピュータからなるホストグループを識別するホストグループ識別子と、各々が前記論理ユニット番号のうちの1つでリナンバーされる複数の仮想論理ユニット番号とを含み、
    前記ホストグループの前記識別子と前記複数の仮想論理ユニット番号のうちの少なくとも1つと、を対応付け
    前記ホストグループから前記論理ユニットへのアクセスを制御するのに使用されることを特徴とする記憶システム。
  2. 前記アクセステーブルは、
    前記ホストグループの前記識別子と、前記複数の仮想論理ユニット番号のうちの少なくとも1つと、当該複数の仮想論理ユニット番号のうちの少なくとも1つがリナンバーされる前記論理ユニット番号のうちの1つと、を対応付けていることを特徴とする請求項1に記載の記憶システム。
  3. 前記アクセス管理テーブルは、異なるホストグループにそれぞれ割当てられた同一の仮想論理ユニット番号に、それぞれ異なる論理ユニット番号を対応付けられることを特徴とする請求項2に記載の記憶システム。
  4. 前記アクセス管理テーブルは、同じ仮想論理ユニット番号で1つのホストグループに異なる論理ユニット番号を対応付けないことを特徴とする請求項2に記載の記憶システム。
  5. 複数のホストコンピュータとの結合に適応される記憶システムであって、
    前記複数のホストコンピュータからのデータを記憶する複数のディスクドライブと、
    前記複数のディスクドライブからのデータの読み取り又は前記複数のディスクドライブへのデータの書き込みを前記複数のホストコンピュータから前記論理ユニットへのアクセスに応じてアクセス管理マップを用いて制御するコントローラとを有し、
    前記複数のディスクドライブは複数の論理ユニットを形成し、
    前記論理ユニットは論理ユニット番号を有し、
    前記アクセス管理マップは、
    前記複数のホストコンピュータのうちの一部の複数のホストコンピュータからなるホストグループを識別するホストグループ識別子と、各々が前記論理ユニット番号のうちの1つでリナンバーされる複数の仮想論理ユニット番号を含み、
    前記ホストグループの前記識別子と前記仮想論理ユニット番号のうちの少なくとも1つと、を対応付けられることを特徴とする記憶システム。
  6. 前記アクセス管理マップは、
    前記ホストグループの前記識別子と、前記複数の仮想論理ユニット番号のうちの少なくとも1つと、当該複数の仮想論理ユニット番号のうちの少なくとも1つがリナンバーされる前記論理ユニット番号のうちの1つと、を対応付けていることを特徴とする請求項5に記載の記憶システム。
  7. 前記アクセス管理マップは、異なるホストグループにそれぞれ割当てられた同一の仮想論理ユニット番号に、それぞれ異なる論理ユニット番号を対応付けられることを特徴とする請求項6に記載の記憶システム。
  8. 前記アクセス管理マップは、同じ仮想論理ユニット番号で1つのホストグループに異なる論理ユニット番号を対応付けないことを特徴とする請求項6に記載の記憶システム。
  9. 各々のホストグループに割り当てられる仮想論理ユニット番号は、ゼロから始まり、
    前記各々の仮想論理ユニット番号は、前記論理ユニット番号のうちの1つの識別子でリナンバーされることを特徴とする請求項2又は請求項6に記載の記憶システム。
  10. 各々のホストグループに割り当てられる仮想論理ユニット番号は、ゼロから始まるとともに1ずつ増加し、
    前記各々の仮想論理ユニット番号は、前記論理ユニット番号のうちの1つの識別子でリナンバーされることを特徴とする請求項2又は請求項6に記載の記憶システム。
  11. 各々の前記仮想論理ユニット番号は、ユーザによって指定されることを特徴とする請求項2又は請求項6に記載の記憶システム。
  12. 前記ホストコンピュータは、互いに関連付けられた前記ホストグループを含むことを特徴とする請求項2又は請求項6に記載の記憶システム。
  13. 複数のホストコンピュータとの結合に適応される記憶システムであって、
    前記複数のホストコンピュータからのデータを記憶する複数のディスクドライブと、
    前記複数のディスクドライブからのデータの読み取り又は前記複数のディスクドライブへのデータの書き込みを前記複数のホストコンピュータからのアクセスに応じてマップを用いて制御するコントローラとを有し、
    前記複数のディスクドライブは複数の論理ユニットを形成し、
    前記論理ユニットは論理ユニット番号を有し、
    前記コントローラは、前記ホストコンピュータのいくつかを有するホストグループと対応する複数の識別子及び複数の前記論理ユニット番号のうちの1つでリナンバーされた仮想論理ユニット番号を含むアクセス管理マップを含み、
    各々のホストグループに割り当てられる前記仮想論理ユニット番号のいくつかはゼロから始まり、他はゼロ以外の番号で始まり、
    前記コントローラは、前記アクセス管理マップに応じて前記ホストグループから前記論理ユニットへのアクセスを制御することを特徴とする記憶システム。
  14. 前記アクセス管理マップは、
    前記ホストグループの前記識別子と、前記複数の仮想論理ユニット番号のうちの少なくとも1つと、当該複数の仮想論理ユニット番号のうちの少なくとも1つがリナンバーされる前記論理ユニット番号のうちの1つと、を対応付けていることを特徴とする請求項13に記載の記憶システム。
  15. 前記アクセス管理マップは、異なるホストグループにそれぞれ割当てられた同一の仮想論理ユニット番号に、それぞれ異なる論理ユニット番号を対応付けられることを特徴とする請求項14記載の記憶システム。
  16. 前記アクセス管理マップは、同じ仮想論理ユニット番号で1つのホストグループに異なる論理ユニット番号を対応付けないことを特徴とする請求項14記載の記憶システム。
  17. 前記ホストグループに対応する仮想論理ユニット番号のいつくかは、1ずつ増加することを特徴とする請求項14記載の記憶システム。
  18. 各々の前記仮想論理ユニット番号は、ユーザによって指定されることを特徴とする請求項14記載の記憶システム。
  19. 複数のホストコンピュータとの結合に適応される記憶システムであって、
    前記複数のホストコンピュータからのデータを記憶する複数のディスクドライブと、
    前記複数のディスクドライブからのデータの読み取り又は前記複数のディスクドライブへのデータの書き込みを前記複数のホストコンピュータから前記論理ユニットへのアクセスに応じて制御するコントローラとを有し、
    前記複数のディスクドライブは複数の論理ユニットを形成し、
    前記論理ユニットは論理ユニット番号を有し、
    前記コントローラは、前記ホストコンピュータのいくつかを有するホストグループの識別子と複数の前記論理ユニット番号のうちの1つでリナンバーされた仮想論理ユニット番号を対応付けるアクセス管理テーブルを含み、
    前記論理ユニット番号はゼロでない番号で始まり、
    前記コントローラは、前記アクセス管理テーブルに応じた前記ホストグループから前記論理ユニットへのアクセスを制御すること特徴とする記憶システム。
  20. 前記アクセス管理テーブルは、
    前記ホストグループの前記識別子と、前記複数の仮想論理ユニット番号のうちの少なくとも1つと、当該複数の仮想論理ユニット番号のうちの少なくとも1つがリナンバーされる前記論理ユニット番号のうちの1つと、を対応付けていることを特徴とする請求項19に記載の記憶システム。
  21. 前記アクセス管理テーブルは、異なるホストグループにそれぞれ割当てられた同一の仮想論理ユニット番号に、それぞれ異なる論理ユニット番号を対応付けられることを特徴とする請求項20記載の記憶システム。
  22. 前記アクセス管理テーブルは、同じ仮想論理ユニット番号で1つのホストグループに異なる論理ユニット番号を対応付けないことを特徴とする請求項20記載の記憶システム。
  23. 前記ホストグループと対応する仮想論理ユニット番号は、前記ゼロでない番号で始まるとともに1ずつ増加することを特徴とする請求項20記載の記憶システム。
  24. 各々の前記仮想論理ユニット番号は、ユーザによって指定されることを特徴とする請求項20記載の記憶システム。
JP2000244020A 2000-01-14 2000-08-07 記憶サブシステムのセキュリティシステム Expired - Fee Related JP4598248B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000244020A JP4598248B2 (ja) 2000-01-14 2000-08-07 記憶サブシステムのセキュリティシステム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000-10115 2000-01-14
JP2000010115 2000-01-14
JP2000244020A JP4598248B2 (ja) 2000-01-14 2000-08-07 記憶サブシステムのセキュリティシステム

Publications (3)

Publication Number Publication Date
JP2001265655A JP2001265655A (ja) 2001-09-28
JP2001265655A5 JP2001265655A5 (ja) 2007-08-16
JP4598248B2 true JP4598248B2 (ja) 2010-12-15

Family

ID=26583761

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000244020A Expired - Fee Related JP4598248B2 (ja) 2000-01-14 2000-08-07 記憶サブシステムのセキュリティシステム

Country Status (1)

Country Link
JP (1) JP4598248B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3993773B2 (ja) 2002-02-20 2007-10-17 株式会社日立製作所 ストレージサブシステム、記憶制御装置及びデータコピー方法
JP4379860B2 (ja) 2003-04-08 2009-12-09 株式会社日立製作所 記憶制御装置及びその制御方法
JP4429634B2 (ja) 2003-06-02 2010-03-10 株式会社日立製作所 ストレージシステム、及びストレージシステムの制御方法
JP4152866B2 (ja) 2003-11-19 2008-09-17 株式会社日立製作所 記憶装置、記憶装置システム、および、通信制御方法
US7137031B2 (en) * 2004-02-25 2006-11-14 Hitachi, Ltd. Logical unit security for clustered storage area networks
JP3976324B2 (ja) 2004-02-27 2007-09-19 株式会社日立製作所 セキュリティレベルに応じて記憶領域を計算機に割り当てるシステム
US7574529B2 (en) * 2004-06-22 2009-08-11 International Business Machines Corporation Addressing logical subsystems in a data storage system
JP4484597B2 (ja) * 2004-06-28 2010-06-16 株式会社日立製作所 ストレージ装置及びストレージ装置の排他制御方法
JP4612373B2 (ja) 2004-09-13 2011-01-12 株式会社日立製作所 記憶装置及び記憶装置を用いた情報システム
JP2007018401A (ja) 2005-07-11 2007-01-25 Hitachi Ltd 記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法
JP2007087059A (ja) 2005-09-21 2007-04-05 Hitachi Ltd 記憶制御システム
JP4671353B2 (ja) 2005-12-14 2011-04-13 株式会社日立製作所 ストレージ装置及びその制御方法
WO2016103416A1 (ja) * 2014-12-25 2016-06-30 株式会社日立製作所 ストレージシステム、ストレージ装置およびアクセス制御方法
JP6343716B2 (ja) * 2015-06-24 2018-06-13 株式会社日立製作所 計算機システム及び記憶制御方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000000881A1 (en) * 1998-06-30 2000-01-06 Emc Corporation Method and apparatus for authenticating connections to a storage system coupled to a network

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3228182B2 (ja) * 1997-05-29 2001-11-12 株式会社日立製作所 記憶システム及び記憶システムへのアクセス方法
US6061753A (en) * 1998-01-27 2000-05-09 Emc Corporation Apparatus and method of accessing target devices across a bus utilizing initiator identifiers

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000000881A1 (en) * 1998-06-30 2000-01-06 Emc Corporation Method and apparatus for authenticating connections to a storage system coupled to a network

Also Published As

Publication number Publication date
JP2001265655A (ja) 2001-09-28

Similar Documents

Publication Publication Date Title
JP4651230B2 (ja) 記憶システム及び論理ユニットへのアクセス制御方法
US8700587B2 (en) Security method and system for storage subsystem
US7657727B2 (en) Security for logical unit in storage subsystem
JP4719957B2 (ja) 記憶制御装置及び記憶システム並びに記憶システムのセキュリティ設定方法
US7454795B2 (en) Disk control unit
JP3993773B2 (ja) ストレージサブシステム、記憶制御装置及びデータコピー方法
US6260120B1 (en) Storage mapping and partitioning among multiple host processors in the presence of login state changes and host controller replacement
US6295575B1 (en) Configuring vectors of logical storage units for data storage partitioning and sharing
US6421711B1 (en) Virtual ports for data transferring of a data storage system
US20040025166A1 (en) Server computer and a method for accessing resources from virtual machines of a server computer via a fibre channel
US20020099914A1 (en) Method of creating a storage area & storage device
JP4598248B2 (ja) 記憶サブシステムのセキュリティシステム
JP4512179B2 (ja) ストレージ装置及びそのアクセス管理方法
JP3744248B2 (ja) ファイバチャネル接続ストレージサブシステム及びそのアクセス方法
JP4315142B2 (ja) ストレージシステム及びストレージシステムのアクセス方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070702

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070702

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070702

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070718

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100422

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100617

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100826

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100924

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131001

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees