記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法
【課題】 チャネルアダプタ(CHA)が交換される場合、そこに保持されているセキュリティ情報を消去してセキュリティ性を向上させる。
【解決手段】 CHA110Aは、ホスト10との間で暗号化通信を行う。各通信ポート113のポート用メモリ117には、暗号化通信で使用するためのセキュリティ情報(暗号鍵等)が記憶されている。CHA110Aの交換が指示された場合、MP111は、ポート用メモリ117に記憶されているセキュリティ情報を共有メモリ140に退避させた後、それを消去させる。新たなCHA110Aが取り付けられた場合、共有メモリ140に記憶されたセキュリティ情報が、ポート用メモリ117に転送される。
【解決手段】 CHA110Aは、ホスト10との間で暗号化通信を行う。各通信ポート113のポート用メモリ117には、暗号化通信で使用するためのセキュリティ情報(暗号鍵等)が記憶されている。CHA110Aの交換が指示された場合、MP111は、ポート用メモリ117に記憶されているセキュリティ情報を共有メモリ140に退避させた後、それを消去させる。新たなCHA110Aが取り付けられた場合、共有メモリ140に記憶されたセキュリティ情報が、ポート用メモリ117に転送される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法に関する。
【背景技術】
【0002】
記憶制御装置は、例えば、ハードディスクドライブ等のディスクドライブをアレイ状に配設し、RAID(Redundant Arrays of Inexpensive Disks)に基づく記憶領域をホストコンピュータ(以下「ホスト」)に提供する。ホストは、記憶制御装置により提供される論理的な記憶領域にアクセスし、データの読み書きを行う。
【0003】
記憶制御装置とホストとの間の通信プロトコルとしては、例えば、ファイバチャネルプロトコルやiSCSI(internet Small Computer System Interface)が知られている。iSCSIでは、SCSIコマンドをTCP/IPのパケットで包み込むことにより、インターネットのようなIPネットワークを介して、記憶制御装置にアクセスすることができる。
【0004】
ところで、記憶制御装置には、例えば、企業、金融機関、政府機関、教育機関等の各種機関で使用される種々の情報が記憶されているため、これらの情報を不正なアクセスから防護する必要がある。そこで、例えば、WWN(World Wide Name)とポート識別情報の対応関係、または、WWNとLUN (Logical Unit Number)の対応関係を予めテーブルに記述しておき、このテーブルを参照しながら、アクセスの可否を制御するようにした技術が提案されている(特許文献1,特許文献2)。
【0005】
一方、TCP/IPネットワークを利用するiSCSIの場合は、MAC(Media Access Control)アドレスを用いて、アクセス権限を有するホストであるか否かを判定できるようにした技術も提案されている(特許文献3)。
【特許文献1】特開平10−333839号公報
【特許文献2】特開2001−265655号公報
【特許文献3】特開2005−134961号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
iSCSIとTCP/IPネットワークを利用してデータ転送を行う場合、第三者によるパケットモニタリングについても考慮する必要がある。そこで、例えば、IPSec(IP Security)のような暗号化通信の技術を用いて、ホストと記憶制御装置との間の通信内容を暗号化することが考えられる。
【0007】
暗号化通信を行う場合、例えば、暗号鍵や暗号化方式(暗号アルゴリズム)のような暗号化通信に用いる情報を、ホスト及び記憶制御装置の両方で保持する必要がある。記憶制御装置は、ホストとの通信を行う通信制御基板を一つまたは複数備えるが、暗号化通信に用いる情報は、この通信制御基板上のメモリに格納される。例えば、保守作業等により、通信制御基板が記憶制御装置から取り出された場合、暗号化通信に用いる情報を記憶したメモリも、記憶制御装置の外部に取り出されることになる。取り外された通信制御基板上のメモリに第三者がアクセスして情報を取り出した場合、その後のホストと記憶制御装置との間の通信内容が盗み見されたり、改ざんされたりする可能性がある。
【0008】
そこで、本発明の目的は、セキュリティ性を向上できるようにした記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法を提供することにある。本発明の他の目的は、暗号化通信に使用される所定の情報を保持した上位インターフェース制御部が記憶制御装置から取り外される場合でも、その所定の情報が外部に漏洩するのを未然に防止できるようにした記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法を提供することにある。本発明の更なる目的は、上位インターフェース制御部が記憶制御装置に取り付けられた場合に、暗号化通信に用いる所定の情報を比較的短時間で復元し、ホスト装置との通信を比較的速やかに再開できるようにした記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法を提供することにある。本発明の他の目的は、後述する実施形態の記載から明らかになるであろう。
【課題を解決するための手段】
【0009】
上記課題を解決すべく、本発明の一つの観点に従う記憶制御装置は、筐体と、この筐体に着脱可能に設けられ、ホスト装置と通信を行う上位インターフェース制御部と、筐体に設けられ、記憶デバイスと通信を行う下位インターフェース制御部と、筐体に設けられ、上位インターフェース制御部及び下位インターフェース制御部にそれぞれ接続された第1メモリ部と、を備えた記憶制御装置であって、上位インターフェース制御部は、ホスト装置に通信ネットワークを介して接続される送受信部と、送受信部を介して、ホスト装置との間で暗号化通信を行うための暗号化通信部と、暗号化通信部に接続され、暗号化通信に使用される所定の情報を記憶する第2メモリ部と、ホスト装置との通信を制御する制御部と、を備えており、制御部は、上位インターフェース制御部の交換指示を受信した場合に、第2メモリ部に記憶されている所定の情報を消去させる。
【0010】
暗号化通信に使用される所定の情報としては、例えば、暗号鍵の情報、暗号化方式の種別を示す情報を挙げることができる。例えば、上位インターフェース制御部に障害した場合や点検時には、上位インターフェース制御部が記憶制御装置から取り出される。その際、上位インターフェース制御部の交換を行う旨の指示が、記憶制御装置に入力される。この交換指示は、例えば、記憶制御装置に接続された管理端末またはホスト装置から与えることができる。制御部は、交換指示を受信すると、第2メモリ部に記憶されている所定の情報を消去させる。これにより、所定の情報を記憶したままの第2メモリ部が記憶制御装置から取り外されるのを防止することができ、信頼性安全性が向上する。
【0011】
一つの実施形態では、制御部は、上位インターフェース制御部の交換指示を受信した場合に、所定の情報を第1メモリ部に記憶させてから、第2メモリ部に記憶されている所定の情報を消去させる。そして、一つの実施形態では、制御部は、筐体に装着された場合に、第1メモリ部に記憶された所定の情報を読み出して第2メモリ部に記憶させる。これにより、例えば新品の上位インターフェース制御部が記憶制御装置に取り付けられた場合に、第1メモリ部に退避させた所定の情報を第2メモリ部に記憶させて、上位インターフェース制御部の機能を早期に回復させることができる。
なお、例えば、転送経路に生じた障害等により、所定の情報を第2メモリ部から第1メモリ部に退避させることができない場合、第2メモリ部から所定の情報の消去のみを実行させる。これにより、所定の情報が外部に漏洩するのを防止することができる。
【0012】
一つの実施形態では、制御部は、上位インターフェース制御部の交換指示を受信した場合に、(1)第2メモリ部から第1メモリ部へのデータ転送が可能か否かを判定し、(2)各メモリ間のデータ転送が可能であると判定した場合は、第2メモリ部から第1メモリ部に所定の情報を転送して記憶させてから、第2メモリ部に記憶されている所定の情報を消去させ、(3)各メモリ間のデータ転送が不能であると判定した場合は、第2メモリ部から所定の情報を消去させる。これにより、障害が発生した部位に応じて、所定の情報を第1メモリ部に退避させるか否かを決定することができる。
【0013】
一つの実施形態では、上位インターフェース制御部は、互いにバックアップ可能な複数の通信構造を備えており、これら各通信構造は、送受信部と、暗号化通信部と、第2メモリ部及び制御部をそれぞれ備えており、各通信構造のうちいずれか一方の通信構造において、第2メモリ部から第1メモリ部へのデータ転送が不能である場合、各通信構造のうち他方の通信構造を介して、一方の通信構造の第2メモリ部に記憶された所定の情報を第1メモリ部に転送して記憶させる。これにより、一方の制御部に障害が発生した場合でも、他方の制御部を介して所定の情報を第1メモリ部に退避させることができる。
【0014】
本発明の他の観点に従う記憶制御装置の上位インターフェース制御部は、記憶制御装置に着脱可能に設けられ、ホスト装置と通信を行う上位インターフェース制御部であって、ホスト装置に通信ネットワークを介して接続される送受信部と、送受信部を介して、ホスト装置との間で暗号化通信を行うための暗号化通信部と、暗号化通信部に接続され、暗号化通信に使用される所定の情報を記憶する第2メモリ部と、ホスト装置との通信を制御する制御部と、を備えており、制御部は、上位インターフェース制御部の交換指示を受信した場合に、第2メモリ部に記憶されている所定の情報を消去させる。
【0015】
本発明のさらに別の側面に従う記憶制御装置の情報保護方法は、筐体に着脱可能に設けられ、ホスト装置と暗号化通信を行う上位インターフェース制御部と、筐体に設けられ、記憶デバイスと通信を行う下位インターフェース制御部と、筐体に設けられ、上位インターフェース制御部及び下位インターフェース制御部にそれぞれ接続された第1メモリ部と、を備えた記憶制御装置の情報保護方法であって、上位インターフェース制御部の交換指示を受信したか否か判定する交換判定ステップと、交換指示を受信した場合は、上位インターフェース制御部に保持されている暗号化通信に使用される所定の情報を消去させる消去ステップと、所定の情報を消去した場合に、上位インターフェース制御部の交換が可能である旨を通知する通知ステップと、を含む。
【0016】
さらに、一つの実施形態では、(1)交換判定ステップと消去ステップとの間に、上位インターフェース制御部に保持されている所定の情報を第1メモリ部に記憶させる退避ステップを設け、(2)通知ステップの後に、上位インターフェース制御部が交換されたか否かを判定する交換終了判定ステップと、上位インターフェース制御部の交換が行われた場合は、第1メモリ部に所定の情報が記憶されているか否かを判定する退避判定ステップと、第1メモリ部に所定の情報が記憶されている場合は、第1メモリ部から所定の情報を読み出して、交換された上位インターフェース制御部に保持させる復元ステップとを、それぞれ設けている。
【0017】
本発明の手段、機能、ステップの少なくとも一部は、マイクロコンピュータにより読み込まれて実行されるコンピュータプログラムとして構成できる場合がある。このようなコンピュータプログラムは、例えば、ハードディスクや光ディスク等のような記憶媒体に固定して流通させることができる。または、インターネット等のような通信ネットワークを介して、コンピュータプログラムを供給することもできる。
【発明を実施するための最良の形態】
【0018】
以下、図面に基づき、本発明の実施の形態を説明する。図1は、本実施形態に係る記憶制御装置100の外観を模式的に示す説明図である。記憶制御装置100は、例えば、筐体101と、記憶ボックス102と、制御ボックス103と、電源ボックス104と、冷却ファン105とを備えて構成することができる。例えば、筐体101内では、下から順番に、電源ボックス104,制御ボックス103,記憶ボックス102がそれぞれ設けられている。
【0019】
記憶ボックス102には、例えば、ハードディスクドライブのような複数のディスクドライブ171が着脱可能に設けられている。制御ボックス103には、ホスト10(図2参照)との通信を行うチャネルアダプタ(以下「CHA」)110と、各ディスクドライブ171と通信を行うディスクアダプタ(以下「DKA」)120とが、それぞれ着脱可能に設けられている。また、図2と共に述べるように、制御ボックス103には、キャッシュメモリ130及び共有メモリ140、サービスプロセッサ180(以下「SVP」)も、それぞれ着脱可能に設けられている。例えば、保守作業を行う場合、矢示F方向にCHA110等を引き出すことにより、CHA110等を制御ボックス103から取り外すことができるようになっている。点検を終えたCHA110または新品のCHA110は、矢示F方向と逆の方向から制御ボックス103に挿入されて取り付けられる。なお、電源ボックス104には、交流電源から一つまたは複数の直流電源を生成するための電源回路やバッテリ回路が設けられている。
【0020】
この記憶制御装置100は、ホスト10との間で暗号化通信を行うことができ、CHA110が制御ボックス103から取り外される場合、そのCHA110内に保持されているセキュリティ情報は消去されるようになっている。以下、本実施形態をより詳細に説明する。
【実施例1】
【0021】
図2は、記憶制御装置100のブロック図である。記憶制御装置100は、通信ネットワークCN1A,CN1Bを介して、複数のホスト10にそれぞれ接続可能である。ホスト10は、例えば、いわゆるオープン系ホストでもメインフレーム系ホストでもよい。また、各ホスト10は、それぞれ異なる種類の通信プロトコルを介して、記憶制御装置100と通信することができ、それぞれの通信の種類に応じたインターフェース(図中「I/F」)11を備えている。例えば、一方のホスト群は、インターネットやLAN(Local Area Network)のようなネットワークCN1Aを介して、iSCSIに基づく通信を行う。他方のホスト群は、FC-SAN(Fibre Channel-Storage Area Network)として構成されるネットワークCN1Bを介して、ファイバチャネルプロトコルに基づく通信を行う。なお、記憶制御装置100は、複数種類の通信ネットワークCN1A,CN1Bを介して、各ホスト10に接続される必要はない。本実施例では、少なくともiSCSIを利用して暗号化通信を行うことができれば足りる。
【0022】
管理端末20は、後述のSVP180を介して、記憶制御装置100の各種情報を収集したり、記憶制御装置100に必要な指令を与えるための装置である。管理端末20は、例えば、LAN等の通信ネットワークCN2を介して、SVP180に接続される。管理端末20は、例えば、ウェブブラウザをベースとしたGUI(Graphical User Interface)を備えており、SVP180が提供するWWW(World Wide Web)サーバにログインすることにより、各種情報の収集と指令の入力とを行うことができる。なお、記憶制御装置100に管理用の指令を与えるための管理用ソフトウェアをホスト10に設けることにより、ホスト10から記憶制御装置100に各種の指令を与えることもできる。
【0023】
記憶制御装置100の構成を説明する。記憶制御装置100は、例えば、複数のCHA110A,110B(以下、特に区別しない場合は「CHA110」)と、複数のDKA120と、複数のキャッシュメモリ130と、複数の共有メモリ140と、各スイッチ制御アダプタ群150,160と、記憶部170と、SVP180とを備えている。
【0024】
各CHA110は、各ホスト10との間のデータ転送を制御するための専用パッケージである。CHA110の詳細はさらに後述するが、各CHA110は、複数の通信ポートを備えており、少なくとも一つ以上のホスト10と接続可能である。各CHA110は、ホスト10との間のデータ転送をそれぞれ個別に制御する。図に示す例では、CHA110Aは、iSCSIに基づいて、ホスト10との間で暗号化された通信を行う。CHA110Bは、ファイバチャネルプロトコルに基づいて、ホスト10との間で通信を行う。
【0025】
各DKA120は、記憶部170とのデータ転送をそれぞれ制御するものである。各DKA120は、例えば、ホスト10から指定された論理ブロックアドレス(LBA)を物理ディスクのアドレスに変換等することにより、各ディスクドライブ171にアクセスし、データの読出しまたはデータの書込みを行う。DKA120とCHA110とは、それぞれ別々のパッケージとして構成することもできるし、両者の機能を一つのパッケージにまとめた複合パッケージとして構成することもできる。
【0026】
各キャッシュメモリ130は、ホスト10から書き込まれたライトデータや、ホスト10によって読み出されたリードデータを記憶するものである。キャッシュメモリ130は、例えば、揮発または不揮発のメモリから構成可能である。キャッシュメモリ130が揮発性メモリを含んで構成される場合、電源ボックス104からのバッテリ電源等によってメモリバックアップを行うことが好ましい。キャッシュメモリ130は、リードキャッシュ領域とライトキャッシュ領域との2つの領域から構成することができ、ライトキャッシュ領域に格納されたデータは、多重記憶することができる。
【0027】
共有メモリ(あるいは制御メモリとも呼ばれる)140は、例えば、不揮発メモリから構成可能であるが、揮発メモリから構成してもよい。共有メモリ140には、例えば、制御情報や管理情報等が記憶される。これらの制御情報等の情報は、複数のメモリ140により多重管理することができる。また、共有メモリ140には、後述のように、暗号化通信のために使用されるセキュリティ情報が記憶される場合がある。
【0028】
共有メモリ140及びキャッシュメモリ130は、それぞれ別々のメモリパッケージとして構成することもできるし、同一のメモリパッケージ内にキャッシュメモリ130及び共有メモリ140を設けてもよい。
【0029】
CHA/DKA側のスイッチ制御アダプタ群150は、各CHA110と、各DKA120と、キャッシュメモリ130とをそれぞれ相互に接続する。これにより、全てのCHA110,DKA120は、キャッシュメモリ130にそれぞれ個別にアクセス可能である。共有メモリ140は、スイッチ制御アダプタ群150を介さずに、各CHA110及び各DKA120にそれぞれ接続されている。スイッチ制御アダプタ群150は、例えば、クロスバスイッチ等として構成できる。ディスクドライブ側のスイッチ制御アダプタ群160は、各DKA120と記憶部170とをそれぞれ接続するためのものである。
【0030】
記憶部170は、多数のディスクドライブ171を備えて構成される。記憶部170の物理的な外観は、図1中の記憶ボックス102に相当する。記憶部170は、各CHA110及び各DKA120等のコントローラ部分と共に、同一の筐体101内に設けることもできるし、コントローラ部分とは別の筐体内に設けることもできる。
【0031】
記憶部170には、例えば、FCディスク(ファイバチャネルディスク)、SCSI(Small Computer System Interface)ディスク、SATA(Serial AT Attachment)ディスクのような種々のハードディスクドライブを設けることができる。なお、記憶部170に装着する記憶デバイスは、ハードディスクドライブに限定されない。例えば、半導体メモリドライブ、光ディスクドライブ、磁気テープドライブ等を用いることができる場合もある。
【0032】
各ディスクドライブ171はそれぞれ物理的な記憶領域を有しており、所定数のディスクドライブ171がグループ化されることにより、論理的な記憶領域が形成される。この論理的な記憶領域上に一つまたは複数の論理ボリュームが設定される。そして、ホスト10は、論理ボリュームに対してデータの読み書きを行う。
【0033】
SVP180は、LAN等の内部ネットワークCN3を介して、各CHA110及び各DKA120とそれぞれ接続されている。SVP180は、例えば、各CHA110を介して各共有メモリ140にアクセスすることができ、各共有メモリ140を介して各DKA120の情報を収集可能である。このように、SVP180は、記憶制御装置100内部の各種状態を収集し、そのままで又は加工して、管理端末20に提供する。また、SVP180は、管理端末20からの指示に基づいて、各パッケージ110,120等の閉塞処理等を行わせることもできる。
【0034】
図3は、CHA110のうち、暗号化通信を行うCHA110Aの回路構成を示すブロック図である。各CHA110Aは、例えば、複数のマイクロプロセッサ(以下「MP」)111と、複数のデータ転送制御部112と、複数の通信ポート113とを備えて構成することができる。
【0035】
図3に示す例では、CHA110Aには、2組の通信回路が設けられている。各通信回路は、それぞれ2つの通信ポート113と、一つのデータ転送制御部112と、2つのMP111とから構成されている。各通信回路において、各MP111は、それぞれ自分自身が担当すべき通信ポート113(自系)に接続されているほか、相手方のMP111が担当する通信ポート113(他系)にもデータ転送制御部112を介して接続される。即ち、各通信回路内では、二つのMP111が互いに相手方の通信制御をバックアップするようになっており、冗長化されている。
【0036】
各通信ポート113は、例えば、トランシーバ114と、セキュリティチップ115と、プロトコルチップ116と、ポート用メモリ117とを含んで構成可能である。トランシーバ114は、ホスト10との間でデータの送受信を行う回路である。セキュリティチップ115は、ホスト10から受信したパケットを復号化したり、ホスト10へ送信するデータを暗号化するための回路である。プロトコルチップは、ホスト10との通信プロトコル(ここではiSCSI)を制御する回路である。ポート用メモリ117は、セキュリティチップ115で使用されるセキュリティ情報等を記憶するための回路である。
【0037】
接続構造を説明すると、トランシーバ114は、セキュリティチップ115に接続されており、セキュリティチップ115は、プロトコルチップに接続されている。ポート用メモリ117は、セキュリティチップ115に接続されている。プロトコルチップ116及びMP111は、データ転送制御部112にそれぞれ接続されている。また、MP111は、共有メモリ140に接続されており、データ転送制御部112はキャッシュメモリ130に接続されている。MP111は、データ転送制御部112を介して、自系の通信ポート113と通信を行うことができるほか、他系の通信ポート113とも通信を行うことができる。
【0038】
次に、データの流れを説明する。ホスト10から送信されたライトデータは、トランシーバ114によって受信され、セキュリティチップ115に渡される。セキュリティチップ115は、ホスト10によって暗号化されたライトデータを、ポート用メモリ117に格納されているセキュリティ情報に基づいて復号化する。復号化されたライトデータは、プロトコルチップ116からデータ転送制御部112を介して、キャッシュメモリ130に転送され、記憶される。MP111は、ライトデータをキャッシュメモリ130に記憶させると、ホスト10に対して書込み完了を報告する。また、MP111は、ホスト10からライトデータを受信した旨を共有メモリ140に書き込む。その後、DKA120は、共有メモリ140を参照して、ディステージされていないライトデータを発見すると、キャッシュメモリ130に記憶されているライトデータを読み出して、物理アドレスに変換等し、所定のディスクドライブ171に書き込ませる。ここで、所定のディスクドライブ171とは、そのライトデータが書き込まれるべき論理ボリュームを構成するドライブである。
【0039】
ホスト10からリードコマンドを受信した場合、MP111は、要求されたデータがキャッシュメモリ130に記憶されているか否かを確認し、キャッシュメモリ130に記憶されていない場合は、そのデータをディスクドライブ171から読み出すべき旨の指示を共有メモリ140に書き込む。この指示をDKA120が検出すると、DKA120は、所定のディスクドライブ171からデータを読み出して、論理アドレスに変換等し、このデータをキャッシュメモリ130に記憶させる。MP111は、データ転送制御部112を介して、キャッシュメモリ130からデータを読み出させ、プロトコルチップ116に転送させる。プロトコルチップ116は、iSCSIに基づいたパケット化処理を行って、セキュリティチップ115にデータを引き渡す。セキュリティチップ115は、ポート用メモリ117に記憶されているセキュリティ情報に基づいて、データを暗号化し、暗号化したデータをトランシーバ114に入力させる。トランシーバ114は、セキュリティチップ115から入力されたデータを、ホスト10に送信する。
【0040】
図4は、ポート用メモリ117及び共有メモリ140の記憶内容を模式的に示す説明図である。各通信ポート113のポート用メモリ117には、図4中の上側に示すように、複数種類の情報が記憶されている。
【0041】
第1の情報は、セキュリティ情報D1である。セキュリティ情報D1には、例えば、ホスト10との暗号通信に使用する暗号鍵及び暗号方式が含まれている。暗号方式は、共通鍵方式(秘密鍵方式)と公開鍵方式とに大別できる。iSCSIでは、共通鍵方式を採用し、ホスト10と各ポート113とがそれぞれ鍵情報を秘密に保持する必要がある。共通鍵方式の種別(暗号化方式の種別)としては、例えば、DES(Data Encryption Standard)、トリプルDES、AES(Advanced Encryption Standard)等が知られている。
ポート用メモリ117に記憶される第2の情報は、その他の情報D2である。その他の情報D2としては、例えば、ポート識別情報等を挙げることができる。
【0042】
次に、共有メモリ140の記憶内容を説明する。共有メモリ140には、複数種類の情報を記憶させることができる。一つは、ポート用メモリ117から退避されたセキュリティ情報D3である。このセキュリティ情報D3は、ポート用メモリ117のセキュリティ情報D1と同一内容であるが、それが使用されていたポートを識別するためのポート識別情報D4に対応付けられている点で相違する。
【0043】
共有メモリ140に記憶されている他の一つは、制御用情報D5である。この制御用情報D5には、例えば、ボリューム管理テーブル等のような各種のテーブルや、消去指令D51が含まれている。消去指令D51は、障害の発生した通信ポート113を担当するMP111から、同一のCHA110A内に設けられている他のMP111に対して、セキュリティ情報D1の消去(退避及び消去)を指示するための制御情報である。即ち、あるCHA110Aに障害が発生して交換が指示された場合、交換されるCHA110Aの各ポート用メモリ117からセキュリティ情報D1がそれぞれ消去(退避してから消去)されるようになっている。
【0044】
次に、本実施例の動作について説明する。まず、図5,図6は、CHA110Aに障害が発生した場合の処理概要を示すフローチャートである。
CHA110AのMP111は、障害の発生を検出すると(S11:YES)、この障害発生をSVP180に通知する(S12)。SVP180は、障害が発生した旨を管理端末20に表示させる(S13)。
【0045】
管理端末20を介して故障の発生を知ったユーザ(保守員)は、故障の生じたCHA110Aとホスト10との間をオフライン状態に変更させ、そのCHA110Aへのアクセスを停止させる(S14)。また、保守員は、故障の生じたCHA110Aの交換を指示する(S15)。これら保守員による指示は、管理端末20からSVP180に入力され、SVP180からCHA110Aに入力される。
【0046】
MP111は、SVP180から交換指示を受信すると(S16)、トランシーバ114の故障であるか否かを判定する(S17)。まず最初に、トランシーバ114の故障であるか否かを判定するのは、トランシーバ114はホスト10との接続箇所であり、他の部品よりも障害の生じやすい箇所であると考えることができるためである。トランシーバ114の故障であるか否かは、例えば、トランシーバ114の出力信号を監視するセンサからの検出信号に基づいて、判定することができる。
【0047】
トランシーバ114の故障であると判定された場合(S17:YES)、MP111は、ポート用メモリ117に記憶されているセキュリティ情報D1を、ポート用メモリ117から共有メモリ140に転送させる(S18)。
【0048】
このセキュリティ情報D1の退避は、交換されるCHA110Aの全てのポート用メモリ117について、それぞれ実行される。即ち、いずれか一つのMP111が、セキュリティ情報の退避を決定すると、そのMP111は、共有メモリ140に消去指令D51を書き込む。消去指令D51には、退避対象となるCHA110Aを特定するための情報(CHA番号等)が含まれている。他のMP111は、この消去指令D51を検出すると、自身の管理下にあるポート用メモリ117から共有メモリ140にセキュリティ情報D1をそれぞれ退避させる。これにより、共有メモリ140には、各ポート用メモリ117に記憶されているセキュリティ情報D1(D3)とポート識別情報D4とが対応付けられて記憶される。
【0049】
MP111は、セキュリティ情報D1をポート用メモリ117から共有メモリ140に正常に転送できたか否かを判定する(S19)。正常に転送が行われなかった場合(S19:NO)、MP111は、所定回数または所定時間だけセキュリティ情報D1の再転送を試みる(S20)。
【0050】
ポート用メモリ117から共有メモリ140にセキュリティ情報D1を正常に転送できた場合(S19:YES)、MP111は、ポート用メモリ117からセキュリティ情報D1を消去させる(S21)。そして、MP111は、閉塞処理を行い(S22)、閉塞処理が完了すると、取り外し準備が完了した旨をSVP180に通知する(S23)。上述のように、SVP180から交換対象として指定されたCHA110A内の各MP111は、ポート用メモリ117に記憶されているセキュリティ情報D1をそれぞれ消去させてから閉塞処理を行い、SVP180にそれぞれ通知する。
【0051】
SVP180は、交換対象のCHA110Aの取り外し準備が完了したことを検出すると(S24)、そのCHA110Aが交換可能である旨を保守員に通知する(S25)。この通知は、管理端末20を介して行われる。この通知を受けた保守員は、故障したCHA110Aを記憶制御装置100から取り外し、新たなCHA110Aを記憶制御装置100に取り付ける。この新たなCHA110Aを取り付ける際の処理については、さらに後述する。
【0052】
ところで、故障部位がトランシーバ114ではない場合もあり得る。トランシーバ114以外の箇所で故障が生じている場合(S17:NO)、MP111は、ポート用メモリ117と共有メモリ140とを結ぶ経路上で故障が生じたか否かを判定する(S26)。メモリ間経路での故障としては、例えば、ポート用メモリ117の故障、セキュリティチップ115の故障、プロトコルチップ116の故障、データ転送制御部112の故障、これら各部を接続する信号線の断線等を挙げることができる。
【0053】
メモリ間経路で障害が生じている場合(S26:YES)、MP111は、ポート用メモリ117に記憶されているセキュリティ情報D1を直ちに消去させる(S21)。メモリ間経路に障害がある場合、ポート用メモリ117から共有メモリ140へセキュリティ情報D1を正常に転送できない可能性が高いためである。
【0054】
一方、障害の原因がトランシーバ114でもなく(S17:NO)、かつ、メモリ間経路でもない場合(S26:NO)、MP111に障害が発生していると考えることができる。障害の発生した通信ポート113を担当するMP111(プライマリMP)が故障している場合、同一のデータ転送制御部112と接続されるMP111(他系MP)による処理が行われる(S27)。
【0055】
図6は、他系MP111による処理を示すフローチャートである。故障したMP111と同一のデータ転送112に接続されているMP111は、障害の発生した通信ポート113のポート用メモリ117から共有メモリ140にセキュリティ情報D1を転送させる(S271)。他系MP111は、転送が正常に完了したか否かを判定し(S272)、正常に転送できなかった場合(S272:NO)、所定回数または所定時間だけ再転送を試みる(S273)。
【0056】
セキュリティ情報D1が正常に転送された場合(S272:YES)、他系MP111は、ポート用メモリ117からセキュリティ情報D1を消去させる(S274)。そして、他系MP111は、閉塞処理を行った後(S275)、取り外し準備が完了した旨をSVP180に通知する(S276)。ここで、他系MP111は、セキュリティ情報D1の退避及び消去処理を肩代わりする際に、消去命令D51を共有メモリ140に書き込む。
【0057】
従って、次に、他系MP111は、消去命令D51に基づいて、自己の管理下にあるポート用メモリ117からセキュリティ情報D1を共有メモリ140に退避させた後、それを消去して、閉塞処理を行い、取り外し準備が完了した旨をSVP180に通知する。
【0058】
以上のように、消去すべき情報(セキュリティ情報D1)を保持しているCHA110Aの取り外しが決定された場合、そのCHA110A内の全てのポート用メモリ117からセキュリティ情報D1がそれぞれ消去される。また、もしもそれが可能ならば、セキュリティ情報D1を消去する前に、セキュリティ情報D1をポート識別情報と対応付けて、共有メモリ140に記憶させる。
【0059】
その後、保守員は、新たなCHA110Aを制御ボックス103に取り付ける。交換後の処理について、図7のフローチャートを参照しつつ説明する。保守員は、新たなCHA110Aを制御ボックス103に装着すると、管理端末20からSVP180に交換が終了した旨の情報を入力する(S30:YES)。SVP180は、保守員からの入力によって交換終了を検出すると、交換されたCHA110Aに通知する(S31)。
【0060】
SVP180からの交換終了通知は、セキュリティ情報D1を復元するためのトリガとして使用される。交換されたCHA110AのMP111は、セキュリティ情報D1が共有メモリ140に退避されているか否かを判定する(S32)。例えば、MP111は、共有メモリ140のセキュリティ情報D3及びポート識別情報D4を検索し、そこに自己の管理下にあるべきセキュリティ情報D1が存在するか否かを判定する。
【0061】
セキュリティ情報D1が共有メモリ140に退避済である場合(S32:YES)、MP111は、共有メモリ140からポート用メモリ117にセキュリティ情報D1を転送させ(S33)、転送が完了した場合は、セキュリティ情報D1の復元が完了した旨をSVP180に通知する(S33)。交換されたCHA110Aの各MP111は、それぞれ自己の管理下にあるべきセキュリティ情報D1を共有メモリ140から読み出させて、ポート用メモリ117に記憶させる。
【0062】
SVP180は、セキュリティ情報D1の復元が完了した旨の通知を受信すると(S34)、交換されたCHA110Aとホスト10との間を接続してオンライン状態とし、ホスト10から交換されたCHA110Aへのアクセスを許可する(S35)。
【0063】
一方、上述のように、ポート用メモリ117と共有メモリ140との間の経路に問題があった場合は、セキュリティ情報D1を退避させることができない。従って、その退避できなかったセキュリティ情報D1は、ポート用メモリ117から消去されている。このため、S32では「NO」と判定されて、S33及びS34はスキップされる。
【0064】
なお、上述のように、各ポート用メモリ117から共有メモリ140へのセキュリティ情報D1の退避処理及び消去処理は、各通信ポート113毎にそれぞれ行われる。従って、ある通信ポート113では、そのセキュリティ情報D1を共有メモリ140に退避させることができた場合でも、別のある通信ポート113では、そのセキュリティ情報D1を共有メモリ140に退避させることができず、消去する場合もある。セキュリティ情報D1を復元できたか否かで、各通信ポート113の動作はそれぞれ異なる。
【0065】
ホスト10からのアクセスがあると(S36:YES)、そのアクセスを受信した通信ポート113では、セキュリティ情報D1が復元済であるか否か、即ち、ポート用メモリ117にセキュリティ情報D1が記憶されているか否かを判定する(S37)。
【0066】
セキュリティ情報D1がポート用メモリ117に記憶されている場合(S37:YES)、その通信ポート113は、ホスト10からのコマンドを受信して(S38)、そのコマンドに基づいて処理を行う(S39)。このコマンド処理に際して、セキュリティ情報D1を用いた暗号の解読及びデータの暗号化が行われる。そして、MP111は、ポート用メモリ117に復元されたセキュリティ情報D1に基づいて、ホスト10と正常に通信が完了したことを確認すると、共有メモリ140内のセキュリティ情報D3(D1)を消去させる(S40)。これにより、共有メモリ140の空き容量が増加する。
【0067】
これに対し、ポート用メモリ117にセキュリティ情報D1が復元されていない場合(S37:NO)、その通信ポート113は、ホスト10と暗号化通信を行うことができないため、改めてセキュリティ情報D1を設定する必要がある。
【0068】
そこで、その通信ポート113は、ホスト10とネゴシエーションを開始し(S41)、暗号化通信に使用するための暗号鍵及び暗号方式を取り決める(S42)。より詳しくは、暗号化されていない平文の通信で暗号鍵を送信するのは、セキュリティ上の問題があるため、暗号鍵送信用の暫定的な暗号方式を取り決めた後、暗号鍵を送信する。
【0069】
通信ポート113は、このようにして改めて設定された暗号鍵及び暗号方式をセキュリティ情報D1として、ポート用メモリ117に記憶させる(S43)。そして、通信ポート113は、ホスト10からのアクセスを待って(S36:YES)、そのコマンドを処理し(S37:YES,S38,S39)、共有メモリ140に記憶されたセキュリティ情報D3(D1)を消去させる。
【0070】
図8〜図10は、障害の発生部位に応じた処理を模式的に示す説明図である。図8は、トランシーバ114が故障した場合を示す。図8(a)は交換前の様子を示す。MP111は、ポート用メモリ117内のセキュリティ情報D1を、セキュリティチップ115,プロトコルチップ116,データ転送制御部112,MP111をそれぞれ介して、共有メモリ140に転送し、記憶させる。この経路を図中太線で示す。図8(b)は、CHA110Aを交換した後の様子を示す。MP111は、共有メモリ140に記憶されたセキュリティ情報D1を、図8(a)に示す向きと逆方向に転送し、ポート用メモリ117に記憶させる。
【0071】
図9は、ポート用メモリ117と共有メモリ140との間の経路のいずれかで障害が発生した場合を示す。図中では、説明の便宜上、複数箇所で同時に障害が生じているかのように示しているが、メモリ間経路上のいずれか一箇所で障害が生じれば足りる。この場合は、ポート用メモリ117から共有メモリ140にセキュリティ情報D1を正常に転送できないため、ポート用メモリ117からセキュリティ情報D1が消去される。図9(b)は、交換後の様子を示す。交換後、通信ポート113は、ホスト10とネゴシエーションを行い、改めて暗号鍵及び暗号方式を設定する。
【0072】
図10は、MP111に障害が生じた場合を示す。図10(a)は交換前の様子を示している。故障したMP111をバックアップする他系MP111は、図中太線で示すように、ポート用メモリ117内のセキュリティ情報D1を、セキュリティチップ115,プロトコルチップ116,データ転送制御部112,他系MP111をそれぞれ介して、共有メモリ140に転送し、記憶させる。図10(b)は交換後の様子を示す。交換後は、共有メモリ140に退避させたセキュリティ情報D1を管理すべきMP111が、共有メモリ140から読出したセキュリティ情報D1を、MP111,データ転送制御部112,プロトコルチップ116,セキュリティチップ115をそれぞれ介して、ポート用メモリ117に転送して記憶させる。この経路を図中太線で示す。
【0073】
本実施例は、上述のように構成されるため、以下の効果を奏する。本実施例では、MP111は、CHA110Aの交換指示を受信した場合に、ポート用メモリ117に記憶されているセキュリティ情報D1を消去させる構成とした。従って、CHA110Aが制御ボックス103から取り外される前に、セキュリティ情報D1を消去できる。これにより、セキュリティ情報D1が記憶制御装置100の外部で第三者に読み取られるのを未然に防止でき、記憶制御装置100の信頼性、セキュリティ性が向上する。
【0074】
本実施例では、MP111は、CHA110Aの交換指示を受信した場合に、セキュリティ情報D1を共有メモリ140に記憶させてから、ポート用メモリ117に記憶されているセキュリティ情報を消去させる構成した。従って、セキュリティ情報D1を記憶制御装置100内に保存して、CHA110Aの交換後に備えることができる。
【0075】
そして、本実施例では、MP111は、CHA110Aが筐体101に装着された場合に、共有メモリ140に記憶されたセキュリティ情報D1を読み出してポート用メモリ117に記憶させる構成とした。従って、交換されたCHA110Aにセキュリティ情報D1を短時間で設定することがき、早期にCHA110Aを使用することができ、使い勝手が向上する。
【0076】
本実施例では、MP111は、CHA110Aの交換指示を受信した場合に、(1)ポート用メモリ117から共有メモリ140へのデータ転送が可能か否かを判定し、(2)各メモリ間のデータ転送が可能であると判定した場合は、ポート用メモリ117から共有メモリ140にセキュリティ情報D1を転送して記憶させてから、ポート用メモリ117に記憶されているセキュリティ情報D1を消去させ、(3)各メモリ間のデータ転送が不能であると判定した場合は、ポート用メモリ117からセキュリティ情報D1を消去させる構成とした。従って、障害の発生した位置に応じて、セキュリティ情報D1の取り扱いを変更し、セキュリティ性を維持しながら、使い勝手を向上させることができる。
【0077】
本実施例では、複数のMP111及び複数の通信ポート113によって冗長構造を形成し、一方のMP111に障害が生じた場合、他方のMP111によってセキュリティ情報D1の退避処理及び消去処理を行わせる構成とした。従って、故障したMP111の管理下にあるセキュリティ情報D1が消去されずにCHA110Aが取り外されるのを防止することができ、信頼性が向上する。
【0078】
本実施例では、各通信ポート113は、共有メモリ140に記憶される消去指令D51を介して連携しながら、それぞれ個別にセキュリティ情報D1の退避処理及び消去処理を行う構成とした。従って、比較的簡易な構成で記憶制御装置100のセキュリティ性能を向上させることができる。
【実施例2】
【0079】
図11に基づいて第2実施例を説明する。本実施例は、第1実施例の変形例に相当し、その特徴は、正規の手順を踏まずにCHA110Aが制御ボックス103から取り外された場合でも、セキュリティ情報D1を消去できるようにした点にある。
【0080】
図11は消去処理のフローチャートを示す。CHA110Aは、記憶制御装置100との接続が切れたか否かを監視している(S50)。例えば、第三者が不正にCHA110Aを制御ボックス103から取り外そうとした場合、そのCHA110Aと記憶制御装置100との間の接続が切れたことが検出される(S50:YES)。CHA110A(MP111)は、ポート用メモリ117からセキュリティ情報D1が消去済であるか否かを確認し(S51)、セキュリティ情報D1が消去されていない場合(S51:NO)、それを消去させる(S52)。CHA110Aに小型電池やキャパシタ等の非常電源を搭載し、ポート用メモリ117からセキュリティ情報D1を消去するための電力を確保してもよい。
【0081】
このように構成される本実施例では、正規の交換作業以外によって、CHA110Aが記憶制御装置100から取り外された場合でも、セキュリティ情報D1を消去してセキュリティ性を確保することができる。
【0082】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、セキュリティ情報の退避先は、共有メモリに限らず、キャッシュメモリを用いてもよい。あるいは、アクセス時間は長くなるが、セキュリティ情報をディスクドライブに退避させる構成でもよい。また、本発明は、iSCSIに限定されるものではなく、例えば、ファイバチャネル、ESCON(登録商標)、FICON(登録商標)、NAS、マルチプロトコル等の他のプロトコルにも適用することができる。
【図面の簡単な説明】
【0083】
【図1】本発明の実施形態に係る記憶制御装置の外観を示す説明図である。
【図2】記憶制御装置の全体構成を示すブロック図である。
【図3】チャネルアダプタ(CHA)の構造を示すブロック図である。
【図4】ポート用メモリ及び共有メモリの記憶内容を模式的に示す説明図である。
【図5】チャネルアダプタに障害が発生した場合に実行されるセキュリティ情報の退避処理及び消去処理を示すフローチャートである。
【図6】図5中のS27の詳細を示すフローチャートである。
【図7】新たなチャネルアダプタに交換した場合に実行されるセキュリティ情報の復元処理及びホストからのアクセス要求処理を示すフローチャートである。
【図8】トランシーバに障害が生じた場合のセキュリティ情報の流れを示す説明図である。
【図9】ポート用メモリと共有メモリとの間の経路上に障害が生じた場合の説明図である。
【図10】MPに障害が生じた場合のセキュリティ情報の流れを示す説明図である。
【図11】第2実施例に係る記憶制御装置により実行されるセキュリティ情報の消去処理を示すフローチャートである。
【符号の説明】
【0084】
10…ホスト、20…管理端末、100…記憶制御装置、101…筐体、102…記憶ボックス、103…制御ボックス、104…電源ボックス、105…冷却ファン、110,110A…チャネルアダプタ(CHA)、120…ディスクアダプタ(DKA)、111…マイクロプロセッサ(MP)、112…データ転送制御部、113…通信ポート、114…トランシーバ、115…セキュリティチップ、116…プロトコルチップ、117…ポート用メモリ、130…キャッシュメモリ、140…共有メモリ、150…スイッチ制御アダプタ群、160…スイッチ制御アダプタ群、170…記憶部、171…ディスクドライブ、180…サービスプロセッサ(SVP)
【技術分野】
【0001】
本発明は、記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法に関する。
【背景技術】
【0002】
記憶制御装置は、例えば、ハードディスクドライブ等のディスクドライブをアレイ状に配設し、RAID(Redundant Arrays of Inexpensive Disks)に基づく記憶領域をホストコンピュータ(以下「ホスト」)に提供する。ホストは、記憶制御装置により提供される論理的な記憶領域にアクセスし、データの読み書きを行う。
【0003】
記憶制御装置とホストとの間の通信プロトコルとしては、例えば、ファイバチャネルプロトコルやiSCSI(internet Small Computer System Interface)が知られている。iSCSIでは、SCSIコマンドをTCP/IPのパケットで包み込むことにより、インターネットのようなIPネットワークを介して、記憶制御装置にアクセスすることができる。
【0004】
ところで、記憶制御装置には、例えば、企業、金融機関、政府機関、教育機関等の各種機関で使用される種々の情報が記憶されているため、これらの情報を不正なアクセスから防護する必要がある。そこで、例えば、WWN(World Wide Name)とポート識別情報の対応関係、または、WWNとLUN (Logical Unit Number)の対応関係を予めテーブルに記述しておき、このテーブルを参照しながら、アクセスの可否を制御するようにした技術が提案されている(特許文献1,特許文献2)。
【0005】
一方、TCP/IPネットワークを利用するiSCSIの場合は、MAC(Media Access Control)アドレスを用いて、アクセス権限を有するホストであるか否かを判定できるようにした技術も提案されている(特許文献3)。
【特許文献1】特開平10−333839号公報
【特許文献2】特開2001−265655号公報
【特許文献3】特開2005−134961号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
iSCSIとTCP/IPネットワークを利用してデータ転送を行う場合、第三者によるパケットモニタリングについても考慮する必要がある。そこで、例えば、IPSec(IP Security)のような暗号化通信の技術を用いて、ホストと記憶制御装置との間の通信内容を暗号化することが考えられる。
【0007】
暗号化通信を行う場合、例えば、暗号鍵や暗号化方式(暗号アルゴリズム)のような暗号化通信に用いる情報を、ホスト及び記憶制御装置の両方で保持する必要がある。記憶制御装置は、ホストとの通信を行う通信制御基板を一つまたは複数備えるが、暗号化通信に用いる情報は、この通信制御基板上のメモリに格納される。例えば、保守作業等により、通信制御基板が記憶制御装置から取り出された場合、暗号化通信に用いる情報を記憶したメモリも、記憶制御装置の外部に取り出されることになる。取り外された通信制御基板上のメモリに第三者がアクセスして情報を取り出した場合、その後のホストと記憶制御装置との間の通信内容が盗み見されたり、改ざんされたりする可能性がある。
【0008】
そこで、本発明の目的は、セキュリティ性を向上できるようにした記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法を提供することにある。本発明の他の目的は、暗号化通信に使用される所定の情報を保持した上位インターフェース制御部が記憶制御装置から取り外される場合でも、その所定の情報が外部に漏洩するのを未然に防止できるようにした記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法を提供することにある。本発明の更なる目的は、上位インターフェース制御部が記憶制御装置に取り付けられた場合に、暗号化通信に用いる所定の情報を比較的短時間で復元し、ホスト装置との通信を比較的速やかに再開できるようにした記憶制御装置、記憶制御装置の上位インターフェース制御部及び記憶制御装置の情報保護方法を提供することにある。本発明の他の目的は、後述する実施形態の記載から明らかになるであろう。
【課題を解決するための手段】
【0009】
上記課題を解決すべく、本発明の一つの観点に従う記憶制御装置は、筐体と、この筐体に着脱可能に設けられ、ホスト装置と通信を行う上位インターフェース制御部と、筐体に設けられ、記憶デバイスと通信を行う下位インターフェース制御部と、筐体に設けられ、上位インターフェース制御部及び下位インターフェース制御部にそれぞれ接続された第1メモリ部と、を備えた記憶制御装置であって、上位インターフェース制御部は、ホスト装置に通信ネットワークを介して接続される送受信部と、送受信部を介して、ホスト装置との間で暗号化通信を行うための暗号化通信部と、暗号化通信部に接続され、暗号化通信に使用される所定の情報を記憶する第2メモリ部と、ホスト装置との通信を制御する制御部と、を備えており、制御部は、上位インターフェース制御部の交換指示を受信した場合に、第2メモリ部に記憶されている所定の情報を消去させる。
【0010】
暗号化通信に使用される所定の情報としては、例えば、暗号鍵の情報、暗号化方式の種別を示す情報を挙げることができる。例えば、上位インターフェース制御部に障害した場合や点検時には、上位インターフェース制御部が記憶制御装置から取り出される。その際、上位インターフェース制御部の交換を行う旨の指示が、記憶制御装置に入力される。この交換指示は、例えば、記憶制御装置に接続された管理端末またはホスト装置から与えることができる。制御部は、交換指示を受信すると、第2メモリ部に記憶されている所定の情報を消去させる。これにより、所定の情報を記憶したままの第2メモリ部が記憶制御装置から取り外されるのを防止することができ、信頼性安全性が向上する。
【0011】
一つの実施形態では、制御部は、上位インターフェース制御部の交換指示を受信した場合に、所定の情報を第1メモリ部に記憶させてから、第2メモリ部に記憶されている所定の情報を消去させる。そして、一つの実施形態では、制御部は、筐体に装着された場合に、第1メモリ部に記憶された所定の情報を読み出して第2メモリ部に記憶させる。これにより、例えば新品の上位インターフェース制御部が記憶制御装置に取り付けられた場合に、第1メモリ部に退避させた所定の情報を第2メモリ部に記憶させて、上位インターフェース制御部の機能を早期に回復させることができる。
なお、例えば、転送経路に生じた障害等により、所定の情報を第2メモリ部から第1メモリ部に退避させることができない場合、第2メモリ部から所定の情報の消去のみを実行させる。これにより、所定の情報が外部に漏洩するのを防止することができる。
【0012】
一つの実施形態では、制御部は、上位インターフェース制御部の交換指示を受信した場合に、(1)第2メモリ部から第1メモリ部へのデータ転送が可能か否かを判定し、(2)各メモリ間のデータ転送が可能であると判定した場合は、第2メモリ部から第1メモリ部に所定の情報を転送して記憶させてから、第2メモリ部に記憶されている所定の情報を消去させ、(3)各メモリ間のデータ転送が不能であると判定した場合は、第2メモリ部から所定の情報を消去させる。これにより、障害が発生した部位に応じて、所定の情報を第1メモリ部に退避させるか否かを決定することができる。
【0013】
一つの実施形態では、上位インターフェース制御部は、互いにバックアップ可能な複数の通信構造を備えており、これら各通信構造は、送受信部と、暗号化通信部と、第2メモリ部及び制御部をそれぞれ備えており、各通信構造のうちいずれか一方の通信構造において、第2メモリ部から第1メモリ部へのデータ転送が不能である場合、各通信構造のうち他方の通信構造を介して、一方の通信構造の第2メモリ部に記憶された所定の情報を第1メモリ部に転送して記憶させる。これにより、一方の制御部に障害が発生した場合でも、他方の制御部を介して所定の情報を第1メモリ部に退避させることができる。
【0014】
本発明の他の観点に従う記憶制御装置の上位インターフェース制御部は、記憶制御装置に着脱可能に設けられ、ホスト装置と通信を行う上位インターフェース制御部であって、ホスト装置に通信ネットワークを介して接続される送受信部と、送受信部を介して、ホスト装置との間で暗号化通信を行うための暗号化通信部と、暗号化通信部に接続され、暗号化通信に使用される所定の情報を記憶する第2メモリ部と、ホスト装置との通信を制御する制御部と、を備えており、制御部は、上位インターフェース制御部の交換指示を受信した場合に、第2メモリ部に記憶されている所定の情報を消去させる。
【0015】
本発明のさらに別の側面に従う記憶制御装置の情報保護方法は、筐体に着脱可能に設けられ、ホスト装置と暗号化通信を行う上位インターフェース制御部と、筐体に設けられ、記憶デバイスと通信を行う下位インターフェース制御部と、筐体に設けられ、上位インターフェース制御部及び下位インターフェース制御部にそれぞれ接続された第1メモリ部と、を備えた記憶制御装置の情報保護方法であって、上位インターフェース制御部の交換指示を受信したか否か判定する交換判定ステップと、交換指示を受信した場合は、上位インターフェース制御部に保持されている暗号化通信に使用される所定の情報を消去させる消去ステップと、所定の情報を消去した場合に、上位インターフェース制御部の交換が可能である旨を通知する通知ステップと、を含む。
【0016】
さらに、一つの実施形態では、(1)交換判定ステップと消去ステップとの間に、上位インターフェース制御部に保持されている所定の情報を第1メモリ部に記憶させる退避ステップを設け、(2)通知ステップの後に、上位インターフェース制御部が交換されたか否かを判定する交換終了判定ステップと、上位インターフェース制御部の交換が行われた場合は、第1メモリ部に所定の情報が記憶されているか否かを判定する退避判定ステップと、第1メモリ部に所定の情報が記憶されている場合は、第1メモリ部から所定の情報を読み出して、交換された上位インターフェース制御部に保持させる復元ステップとを、それぞれ設けている。
【0017】
本発明の手段、機能、ステップの少なくとも一部は、マイクロコンピュータにより読み込まれて実行されるコンピュータプログラムとして構成できる場合がある。このようなコンピュータプログラムは、例えば、ハードディスクや光ディスク等のような記憶媒体に固定して流通させることができる。または、インターネット等のような通信ネットワークを介して、コンピュータプログラムを供給することもできる。
【発明を実施するための最良の形態】
【0018】
以下、図面に基づき、本発明の実施の形態を説明する。図1は、本実施形態に係る記憶制御装置100の外観を模式的に示す説明図である。記憶制御装置100は、例えば、筐体101と、記憶ボックス102と、制御ボックス103と、電源ボックス104と、冷却ファン105とを備えて構成することができる。例えば、筐体101内では、下から順番に、電源ボックス104,制御ボックス103,記憶ボックス102がそれぞれ設けられている。
【0019】
記憶ボックス102には、例えば、ハードディスクドライブのような複数のディスクドライブ171が着脱可能に設けられている。制御ボックス103には、ホスト10(図2参照)との通信を行うチャネルアダプタ(以下「CHA」)110と、各ディスクドライブ171と通信を行うディスクアダプタ(以下「DKA」)120とが、それぞれ着脱可能に設けられている。また、図2と共に述べるように、制御ボックス103には、キャッシュメモリ130及び共有メモリ140、サービスプロセッサ180(以下「SVP」)も、それぞれ着脱可能に設けられている。例えば、保守作業を行う場合、矢示F方向にCHA110等を引き出すことにより、CHA110等を制御ボックス103から取り外すことができるようになっている。点検を終えたCHA110または新品のCHA110は、矢示F方向と逆の方向から制御ボックス103に挿入されて取り付けられる。なお、電源ボックス104には、交流電源から一つまたは複数の直流電源を生成するための電源回路やバッテリ回路が設けられている。
【0020】
この記憶制御装置100は、ホスト10との間で暗号化通信を行うことができ、CHA110が制御ボックス103から取り外される場合、そのCHA110内に保持されているセキュリティ情報は消去されるようになっている。以下、本実施形態をより詳細に説明する。
【実施例1】
【0021】
図2は、記憶制御装置100のブロック図である。記憶制御装置100は、通信ネットワークCN1A,CN1Bを介して、複数のホスト10にそれぞれ接続可能である。ホスト10は、例えば、いわゆるオープン系ホストでもメインフレーム系ホストでもよい。また、各ホスト10は、それぞれ異なる種類の通信プロトコルを介して、記憶制御装置100と通信することができ、それぞれの通信の種類に応じたインターフェース(図中「I/F」)11を備えている。例えば、一方のホスト群は、インターネットやLAN(Local Area Network)のようなネットワークCN1Aを介して、iSCSIに基づく通信を行う。他方のホスト群は、FC-SAN(Fibre Channel-Storage Area Network)として構成されるネットワークCN1Bを介して、ファイバチャネルプロトコルに基づく通信を行う。なお、記憶制御装置100は、複数種類の通信ネットワークCN1A,CN1Bを介して、各ホスト10に接続される必要はない。本実施例では、少なくともiSCSIを利用して暗号化通信を行うことができれば足りる。
【0022】
管理端末20は、後述のSVP180を介して、記憶制御装置100の各種情報を収集したり、記憶制御装置100に必要な指令を与えるための装置である。管理端末20は、例えば、LAN等の通信ネットワークCN2を介して、SVP180に接続される。管理端末20は、例えば、ウェブブラウザをベースとしたGUI(Graphical User Interface)を備えており、SVP180が提供するWWW(World Wide Web)サーバにログインすることにより、各種情報の収集と指令の入力とを行うことができる。なお、記憶制御装置100に管理用の指令を与えるための管理用ソフトウェアをホスト10に設けることにより、ホスト10から記憶制御装置100に各種の指令を与えることもできる。
【0023】
記憶制御装置100の構成を説明する。記憶制御装置100は、例えば、複数のCHA110A,110B(以下、特に区別しない場合は「CHA110」)と、複数のDKA120と、複数のキャッシュメモリ130と、複数の共有メモリ140と、各スイッチ制御アダプタ群150,160と、記憶部170と、SVP180とを備えている。
【0024】
各CHA110は、各ホスト10との間のデータ転送を制御するための専用パッケージである。CHA110の詳細はさらに後述するが、各CHA110は、複数の通信ポートを備えており、少なくとも一つ以上のホスト10と接続可能である。各CHA110は、ホスト10との間のデータ転送をそれぞれ個別に制御する。図に示す例では、CHA110Aは、iSCSIに基づいて、ホスト10との間で暗号化された通信を行う。CHA110Bは、ファイバチャネルプロトコルに基づいて、ホスト10との間で通信を行う。
【0025】
各DKA120は、記憶部170とのデータ転送をそれぞれ制御するものである。各DKA120は、例えば、ホスト10から指定された論理ブロックアドレス(LBA)を物理ディスクのアドレスに変換等することにより、各ディスクドライブ171にアクセスし、データの読出しまたはデータの書込みを行う。DKA120とCHA110とは、それぞれ別々のパッケージとして構成することもできるし、両者の機能を一つのパッケージにまとめた複合パッケージとして構成することもできる。
【0026】
各キャッシュメモリ130は、ホスト10から書き込まれたライトデータや、ホスト10によって読み出されたリードデータを記憶するものである。キャッシュメモリ130は、例えば、揮発または不揮発のメモリから構成可能である。キャッシュメモリ130が揮発性メモリを含んで構成される場合、電源ボックス104からのバッテリ電源等によってメモリバックアップを行うことが好ましい。キャッシュメモリ130は、リードキャッシュ領域とライトキャッシュ領域との2つの領域から構成することができ、ライトキャッシュ領域に格納されたデータは、多重記憶することができる。
【0027】
共有メモリ(あるいは制御メモリとも呼ばれる)140は、例えば、不揮発メモリから構成可能であるが、揮発メモリから構成してもよい。共有メモリ140には、例えば、制御情報や管理情報等が記憶される。これらの制御情報等の情報は、複数のメモリ140により多重管理することができる。また、共有メモリ140には、後述のように、暗号化通信のために使用されるセキュリティ情報が記憶される場合がある。
【0028】
共有メモリ140及びキャッシュメモリ130は、それぞれ別々のメモリパッケージとして構成することもできるし、同一のメモリパッケージ内にキャッシュメモリ130及び共有メモリ140を設けてもよい。
【0029】
CHA/DKA側のスイッチ制御アダプタ群150は、各CHA110と、各DKA120と、キャッシュメモリ130とをそれぞれ相互に接続する。これにより、全てのCHA110,DKA120は、キャッシュメモリ130にそれぞれ個別にアクセス可能である。共有メモリ140は、スイッチ制御アダプタ群150を介さずに、各CHA110及び各DKA120にそれぞれ接続されている。スイッチ制御アダプタ群150は、例えば、クロスバスイッチ等として構成できる。ディスクドライブ側のスイッチ制御アダプタ群160は、各DKA120と記憶部170とをそれぞれ接続するためのものである。
【0030】
記憶部170は、多数のディスクドライブ171を備えて構成される。記憶部170の物理的な外観は、図1中の記憶ボックス102に相当する。記憶部170は、各CHA110及び各DKA120等のコントローラ部分と共に、同一の筐体101内に設けることもできるし、コントローラ部分とは別の筐体内に設けることもできる。
【0031】
記憶部170には、例えば、FCディスク(ファイバチャネルディスク)、SCSI(Small Computer System Interface)ディスク、SATA(Serial AT Attachment)ディスクのような種々のハードディスクドライブを設けることができる。なお、記憶部170に装着する記憶デバイスは、ハードディスクドライブに限定されない。例えば、半導体メモリドライブ、光ディスクドライブ、磁気テープドライブ等を用いることができる場合もある。
【0032】
各ディスクドライブ171はそれぞれ物理的な記憶領域を有しており、所定数のディスクドライブ171がグループ化されることにより、論理的な記憶領域が形成される。この論理的な記憶領域上に一つまたは複数の論理ボリュームが設定される。そして、ホスト10は、論理ボリュームに対してデータの読み書きを行う。
【0033】
SVP180は、LAN等の内部ネットワークCN3を介して、各CHA110及び各DKA120とそれぞれ接続されている。SVP180は、例えば、各CHA110を介して各共有メモリ140にアクセスすることができ、各共有メモリ140を介して各DKA120の情報を収集可能である。このように、SVP180は、記憶制御装置100内部の各種状態を収集し、そのままで又は加工して、管理端末20に提供する。また、SVP180は、管理端末20からの指示に基づいて、各パッケージ110,120等の閉塞処理等を行わせることもできる。
【0034】
図3は、CHA110のうち、暗号化通信を行うCHA110Aの回路構成を示すブロック図である。各CHA110Aは、例えば、複数のマイクロプロセッサ(以下「MP」)111と、複数のデータ転送制御部112と、複数の通信ポート113とを備えて構成することができる。
【0035】
図3に示す例では、CHA110Aには、2組の通信回路が設けられている。各通信回路は、それぞれ2つの通信ポート113と、一つのデータ転送制御部112と、2つのMP111とから構成されている。各通信回路において、各MP111は、それぞれ自分自身が担当すべき通信ポート113(自系)に接続されているほか、相手方のMP111が担当する通信ポート113(他系)にもデータ転送制御部112を介して接続される。即ち、各通信回路内では、二つのMP111が互いに相手方の通信制御をバックアップするようになっており、冗長化されている。
【0036】
各通信ポート113は、例えば、トランシーバ114と、セキュリティチップ115と、プロトコルチップ116と、ポート用メモリ117とを含んで構成可能である。トランシーバ114は、ホスト10との間でデータの送受信を行う回路である。セキュリティチップ115は、ホスト10から受信したパケットを復号化したり、ホスト10へ送信するデータを暗号化するための回路である。プロトコルチップは、ホスト10との通信プロトコル(ここではiSCSI)を制御する回路である。ポート用メモリ117は、セキュリティチップ115で使用されるセキュリティ情報等を記憶するための回路である。
【0037】
接続構造を説明すると、トランシーバ114は、セキュリティチップ115に接続されており、セキュリティチップ115は、プロトコルチップに接続されている。ポート用メモリ117は、セキュリティチップ115に接続されている。プロトコルチップ116及びMP111は、データ転送制御部112にそれぞれ接続されている。また、MP111は、共有メモリ140に接続されており、データ転送制御部112はキャッシュメモリ130に接続されている。MP111は、データ転送制御部112を介して、自系の通信ポート113と通信を行うことができるほか、他系の通信ポート113とも通信を行うことができる。
【0038】
次に、データの流れを説明する。ホスト10から送信されたライトデータは、トランシーバ114によって受信され、セキュリティチップ115に渡される。セキュリティチップ115は、ホスト10によって暗号化されたライトデータを、ポート用メモリ117に格納されているセキュリティ情報に基づいて復号化する。復号化されたライトデータは、プロトコルチップ116からデータ転送制御部112を介して、キャッシュメモリ130に転送され、記憶される。MP111は、ライトデータをキャッシュメモリ130に記憶させると、ホスト10に対して書込み完了を報告する。また、MP111は、ホスト10からライトデータを受信した旨を共有メモリ140に書き込む。その後、DKA120は、共有メモリ140を参照して、ディステージされていないライトデータを発見すると、キャッシュメモリ130に記憶されているライトデータを読み出して、物理アドレスに変換等し、所定のディスクドライブ171に書き込ませる。ここで、所定のディスクドライブ171とは、そのライトデータが書き込まれるべき論理ボリュームを構成するドライブである。
【0039】
ホスト10からリードコマンドを受信した場合、MP111は、要求されたデータがキャッシュメモリ130に記憶されているか否かを確認し、キャッシュメモリ130に記憶されていない場合は、そのデータをディスクドライブ171から読み出すべき旨の指示を共有メモリ140に書き込む。この指示をDKA120が検出すると、DKA120は、所定のディスクドライブ171からデータを読み出して、論理アドレスに変換等し、このデータをキャッシュメモリ130に記憶させる。MP111は、データ転送制御部112を介して、キャッシュメモリ130からデータを読み出させ、プロトコルチップ116に転送させる。プロトコルチップ116は、iSCSIに基づいたパケット化処理を行って、セキュリティチップ115にデータを引き渡す。セキュリティチップ115は、ポート用メモリ117に記憶されているセキュリティ情報に基づいて、データを暗号化し、暗号化したデータをトランシーバ114に入力させる。トランシーバ114は、セキュリティチップ115から入力されたデータを、ホスト10に送信する。
【0040】
図4は、ポート用メモリ117及び共有メモリ140の記憶内容を模式的に示す説明図である。各通信ポート113のポート用メモリ117には、図4中の上側に示すように、複数種類の情報が記憶されている。
【0041】
第1の情報は、セキュリティ情報D1である。セキュリティ情報D1には、例えば、ホスト10との暗号通信に使用する暗号鍵及び暗号方式が含まれている。暗号方式は、共通鍵方式(秘密鍵方式)と公開鍵方式とに大別できる。iSCSIでは、共通鍵方式を採用し、ホスト10と各ポート113とがそれぞれ鍵情報を秘密に保持する必要がある。共通鍵方式の種別(暗号化方式の種別)としては、例えば、DES(Data Encryption Standard)、トリプルDES、AES(Advanced Encryption Standard)等が知られている。
ポート用メモリ117に記憶される第2の情報は、その他の情報D2である。その他の情報D2としては、例えば、ポート識別情報等を挙げることができる。
【0042】
次に、共有メモリ140の記憶内容を説明する。共有メモリ140には、複数種類の情報を記憶させることができる。一つは、ポート用メモリ117から退避されたセキュリティ情報D3である。このセキュリティ情報D3は、ポート用メモリ117のセキュリティ情報D1と同一内容であるが、それが使用されていたポートを識別するためのポート識別情報D4に対応付けられている点で相違する。
【0043】
共有メモリ140に記憶されている他の一つは、制御用情報D5である。この制御用情報D5には、例えば、ボリューム管理テーブル等のような各種のテーブルや、消去指令D51が含まれている。消去指令D51は、障害の発生した通信ポート113を担当するMP111から、同一のCHA110A内に設けられている他のMP111に対して、セキュリティ情報D1の消去(退避及び消去)を指示するための制御情報である。即ち、あるCHA110Aに障害が発生して交換が指示された場合、交換されるCHA110Aの各ポート用メモリ117からセキュリティ情報D1がそれぞれ消去(退避してから消去)されるようになっている。
【0044】
次に、本実施例の動作について説明する。まず、図5,図6は、CHA110Aに障害が発生した場合の処理概要を示すフローチャートである。
CHA110AのMP111は、障害の発生を検出すると(S11:YES)、この障害発生をSVP180に通知する(S12)。SVP180は、障害が発生した旨を管理端末20に表示させる(S13)。
【0045】
管理端末20を介して故障の発生を知ったユーザ(保守員)は、故障の生じたCHA110Aとホスト10との間をオフライン状態に変更させ、そのCHA110Aへのアクセスを停止させる(S14)。また、保守員は、故障の生じたCHA110Aの交換を指示する(S15)。これら保守員による指示は、管理端末20からSVP180に入力され、SVP180からCHA110Aに入力される。
【0046】
MP111は、SVP180から交換指示を受信すると(S16)、トランシーバ114の故障であるか否かを判定する(S17)。まず最初に、トランシーバ114の故障であるか否かを判定するのは、トランシーバ114はホスト10との接続箇所であり、他の部品よりも障害の生じやすい箇所であると考えることができるためである。トランシーバ114の故障であるか否かは、例えば、トランシーバ114の出力信号を監視するセンサからの検出信号に基づいて、判定することができる。
【0047】
トランシーバ114の故障であると判定された場合(S17:YES)、MP111は、ポート用メモリ117に記憶されているセキュリティ情報D1を、ポート用メモリ117から共有メモリ140に転送させる(S18)。
【0048】
このセキュリティ情報D1の退避は、交換されるCHA110Aの全てのポート用メモリ117について、それぞれ実行される。即ち、いずれか一つのMP111が、セキュリティ情報の退避を決定すると、そのMP111は、共有メモリ140に消去指令D51を書き込む。消去指令D51には、退避対象となるCHA110Aを特定するための情報(CHA番号等)が含まれている。他のMP111は、この消去指令D51を検出すると、自身の管理下にあるポート用メモリ117から共有メモリ140にセキュリティ情報D1をそれぞれ退避させる。これにより、共有メモリ140には、各ポート用メモリ117に記憶されているセキュリティ情報D1(D3)とポート識別情報D4とが対応付けられて記憶される。
【0049】
MP111は、セキュリティ情報D1をポート用メモリ117から共有メモリ140に正常に転送できたか否かを判定する(S19)。正常に転送が行われなかった場合(S19:NO)、MP111は、所定回数または所定時間だけセキュリティ情報D1の再転送を試みる(S20)。
【0050】
ポート用メモリ117から共有メモリ140にセキュリティ情報D1を正常に転送できた場合(S19:YES)、MP111は、ポート用メモリ117からセキュリティ情報D1を消去させる(S21)。そして、MP111は、閉塞処理を行い(S22)、閉塞処理が完了すると、取り外し準備が完了した旨をSVP180に通知する(S23)。上述のように、SVP180から交換対象として指定されたCHA110A内の各MP111は、ポート用メモリ117に記憶されているセキュリティ情報D1をそれぞれ消去させてから閉塞処理を行い、SVP180にそれぞれ通知する。
【0051】
SVP180は、交換対象のCHA110Aの取り外し準備が完了したことを検出すると(S24)、そのCHA110Aが交換可能である旨を保守員に通知する(S25)。この通知は、管理端末20を介して行われる。この通知を受けた保守員は、故障したCHA110Aを記憶制御装置100から取り外し、新たなCHA110Aを記憶制御装置100に取り付ける。この新たなCHA110Aを取り付ける際の処理については、さらに後述する。
【0052】
ところで、故障部位がトランシーバ114ではない場合もあり得る。トランシーバ114以外の箇所で故障が生じている場合(S17:NO)、MP111は、ポート用メモリ117と共有メモリ140とを結ぶ経路上で故障が生じたか否かを判定する(S26)。メモリ間経路での故障としては、例えば、ポート用メモリ117の故障、セキュリティチップ115の故障、プロトコルチップ116の故障、データ転送制御部112の故障、これら各部を接続する信号線の断線等を挙げることができる。
【0053】
メモリ間経路で障害が生じている場合(S26:YES)、MP111は、ポート用メモリ117に記憶されているセキュリティ情報D1を直ちに消去させる(S21)。メモリ間経路に障害がある場合、ポート用メモリ117から共有メモリ140へセキュリティ情報D1を正常に転送できない可能性が高いためである。
【0054】
一方、障害の原因がトランシーバ114でもなく(S17:NO)、かつ、メモリ間経路でもない場合(S26:NO)、MP111に障害が発生していると考えることができる。障害の発生した通信ポート113を担当するMP111(プライマリMP)が故障している場合、同一のデータ転送制御部112と接続されるMP111(他系MP)による処理が行われる(S27)。
【0055】
図6は、他系MP111による処理を示すフローチャートである。故障したMP111と同一のデータ転送112に接続されているMP111は、障害の発生した通信ポート113のポート用メモリ117から共有メモリ140にセキュリティ情報D1を転送させる(S271)。他系MP111は、転送が正常に完了したか否かを判定し(S272)、正常に転送できなかった場合(S272:NO)、所定回数または所定時間だけ再転送を試みる(S273)。
【0056】
セキュリティ情報D1が正常に転送された場合(S272:YES)、他系MP111は、ポート用メモリ117からセキュリティ情報D1を消去させる(S274)。そして、他系MP111は、閉塞処理を行った後(S275)、取り外し準備が完了した旨をSVP180に通知する(S276)。ここで、他系MP111は、セキュリティ情報D1の退避及び消去処理を肩代わりする際に、消去命令D51を共有メモリ140に書き込む。
【0057】
従って、次に、他系MP111は、消去命令D51に基づいて、自己の管理下にあるポート用メモリ117からセキュリティ情報D1を共有メモリ140に退避させた後、それを消去して、閉塞処理を行い、取り外し準備が完了した旨をSVP180に通知する。
【0058】
以上のように、消去すべき情報(セキュリティ情報D1)を保持しているCHA110Aの取り外しが決定された場合、そのCHA110A内の全てのポート用メモリ117からセキュリティ情報D1がそれぞれ消去される。また、もしもそれが可能ならば、セキュリティ情報D1を消去する前に、セキュリティ情報D1をポート識別情報と対応付けて、共有メモリ140に記憶させる。
【0059】
その後、保守員は、新たなCHA110Aを制御ボックス103に取り付ける。交換後の処理について、図7のフローチャートを参照しつつ説明する。保守員は、新たなCHA110Aを制御ボックス103に装着すると、管理端末20からSVP180に交換が終了した旨の情報を入力する(S30:YES)。SVP180は、保守員からの入力によって交換終了を検出すると、交換されたCHA110Aに通知する(S31)。
【0060】
SVP180からの交換終了通知は、セキュリティ情報D1を復元するためのトリガとして使用される。交換されたCHA110AのMP111は、セキュリティ情報D1が共有メモリ140に退避されているか否かを判定する(S32)。例えば、MP111は、共有メモリ140のセキュリティ情報D3及びポート識別情報D4を検索し、そこに自己の管理下にあるべきセキュリティ情報D1が存在するか否かを判定する。
【0061】
セキュリティ情報D1が共有メモリ140に退避済である場合(S32:YES)、MP111は、共有メモリ140からポート用メモリ117にセキュリティ情報D1を転送させ(S33)、転送が完了した場合は、セキュリティ情報D1の復元が完了した旨をSVP180に通知する(S33)。交換されたCHA110Aの各MP111は、それぞれ自己の管理下にあるべきセキュリティ情報D1を共有メモリ140から読み出させて、ポート用メモリ117に記憶させる。
【0062】
SVP180は、セキュリティ情報D1の復元が完了した旨の通知を受信すると(S34)、交換されたCHA110Aとホスト10との間を接続してオンライン状態とし、ホスト10から交換されたCHA110Aへのアクセスを許可する(S35)。
【0063】
一方、上述のように、ポート用メモリ117と共有メモリ140との間の経路に問題があった場合は、セキュリティ情報D1を退避させることができない。従って、その退避できなかったセキュリティ情報D1は、ポート用メモリ117から消去されている。このため、S32では「NO」と判定されて、S33及びS34はスキップされる。
【0064】
なお、上述のように、各ポート用メモリ117から共有メモリ140へのセキュリティ情報D1の退避処理及び消去処理は、各通信ポート113毎にそれぞれ行われる。従って、ある通信ポート113では、そのセキュリティ情報D1を共有メモリ140に退避させることができた場合でも、別のある通信ポート113では、そのセキュリティ情報D1を共有メモリ140に退避させることができず、消去する場合もある。セキュリティ情報D1を復元できたか否かで、各通信ポート113の動作はそれぞれ異なる。
【0065】
ホスト10からのアクセスがあると(S36:YES)、そのアクセスを受信した通信ポート113では、セキュリティ情報D1が復元済であるか否か、即ち、ポート用メモリ117にセキュリティ情報D1が記憶されているか否かを判定する(S37)。
【0066】
セキュリティ情報D1がポート用メモリ117に記憶されている場合(S37:YES)、その通信ポート113は、ホスト10からのコマンドを受信して(S38)、そのコマンドに基づいて処理を行う(S39)。このコマンド処理に際して、セキュリティ情報D1を用いた暗号の解読及びデータの暗号化が行われる。そして、MP111は、ポート用メモリ117に復元されたセキュリティ情報D1に基づいて、ホスト10と正常に通信が完了したことを確認すると、共有メモリ140内のセキュリティ情報D3(D1)を消去させる(S40)。これにより、共有メモリ140の空き容量が増加する。
【0067】
これに対し、ポート用メモリ117にセキュリティ情報D1が復元されていない場合(S37:NO)、その通信ポート113は、ホスト10と暗号化通信を行うことができないため、改めてセキュリティ情報D1を設定する必要がある。
【0068】
そこで、その通信ポート113は、ホスト10とネゴシエーションを開始し(S41)、暗号化通信に使用するための暗号鍵及び暗号方式を取り決める(S42)。より詳しくは、暗号化されていない平文の通信で暗号鍵を送信するのは、セキュリティ上の問題があるため、暗号鍵送信用の暫定的な暗号方式を取り決めた後、暗号鍵を送信する。
【0069】
通信ポート113は、このようにして改めて設定された暗号鍵及び暗号方式をセキュリティ情報D1として、ポート用メモリ117に記憶させる(S43)。そして、通信ポート113は、ホスト10からのアクセスを待って(S36:YES)、そのコマンドを処理し(S37:YES,S38,S39)、共有メモリ140に記憶されたセキュリティ情報D3(D1)を消去させる。
【0070】
図8〜図10は、障害の発生部位に応じた処理を模式的に示す説明図である。図8は、トランシーバ114が故障した場合を示す。図8(a)は交換前の様子を示す。MP111は、ポート用メモリ117内のセキュリティ情報D1を、セキュリティチップ115,プロトコルチップ116,データ転送制御部112,MP111をそれぞれ介して、共有メモリ140に転送し、記憶させる。この経路を図中太線で示す。図8(b)は、CHA110Aを交換した後の様子を示す。MP111は、共有メモリ140に記憶されたセキュリティ情報D1を、図8(a)に示す向きと逆方向に転送し、ポート用メモリ117に記憶させる。
【0071】
図9は、ポート用メモリ117と共有メモリ140との間の経路のいずれかで障害が発生した場合を示す。図中では、説明の便宜上、複数箇所で同時に障害が生じているかのように示しているが、メモリ間経路上のいずれか一箇所で障害が生じれば足りる。この場合は、ポート用メモリ117から共有メモリ140にセキュリティ情報D1を正常に転送できないため、ポート用メモリ117からセキュリティ情報D1が消去される。図9(b)は、交換後の様子を示す。交換後、通信ポート113は、ホスト10とネゴシエーションを行い、改めて暗号鍵及び暗号方式を設定する。
【0072】
図10は、MP111に障害が生じた場合を示す。図10(a)は交換前の様子を示している。故障したMP111をバックアップする他系MP111は、図中太線で示すように、ポート用メモリ117内のセキュリティ情報D1を、セキュリティチップ115,プロトコルチップ116,データ転送制御部112,他系MP111をそれぞれ介して、共有メモリ140に転送し、記憶させる。図10(b)は交換後の様子を示す。交換後は、共有メモリ140に退避させたセキュリティ情報D1を管理すべきMP111が、共有メモリ140から読出したセキュリティ情報D1を、MP111,データ転送制御部112,プロトコルチップ116,セキュリティチップ115をそれぞれ介して、ポート用メモリ117に転送して記憶させる。この経路を図中太線で示す。
【0073】
本実施例は、上述のように構成されるため、以下の効果を奏する。本実施例では、MP111は、CHA110Aの交換指示を受信した場合に、ポート用メモリ117に記憶されているセキュリティ情報D1を消去させる構成とした。従って、CHA110Aが制御ボックス103から取り外される前に、セキュリティ情報D1を消去できる。これにより、セキュリティ情報D1が記憶制御装置100の外部で第三者に読み取られるのを未然に防止でき、記憶制御装置100の信頼性、セキュリティ性が向上する。
【0074】
本実施例では、MP111は、CHA110Aの交換指示を受信した場合に、セキュリティ情報D1を共有メモリ140に記憶させてから、ポート用メモリ117に記憶されているセキュリティ情報を消去させる構成した。従って、セキュリティ情報D1を記憶制御装置100内に保存して、CHA110Aの交換後に備えることができる。
【0075】
そして、本実施例では、MP111は、CHA110Aが筐体101に装着された場合に、共有メモリ140に記憶されたセキュリティ情報D1を読み出してポート用メモリ117に記憶させる構成とした。従って、交換されたCHA110Aにセキュリティ情報D1を短時間で設定することがき、早期にCHA110Aを使用することができ、使い勝手が向上する。
【0076】
本実施例では、MP111は、CHA110Aの交換指示を受信した場合に、(1)ポート用メモリ117から共有メモリ140へのデータ転送が可能か否かを判定し、(2)各メモリ間のデータ転送が可能であると判定した場合は、ポート用メモリ117から共有メモリ140にセキュリティ情報D1を転送して記憶させてから、ポート用メモリ117に記憶されているセキュリティ情報D1を消去させ、(3)各メモリ間のデータ転送が不能であると判定した場合は、ポート用メモリ117からセキュリティ情報D1を消去させる構成とした。従って、障害の発生した位置に応じて、セキュリティ情報D1の取り扱いを変更し、セキュリティ性を維持しながら、使い勝手を向上させることができる。
【0077】
本実施例では、複数のMP111及び複数の通信ポート113によって冗長構造を形成し、一方のMP111に障害が生じた場合、他方のMP111によってセキュリティ情報D1の退避処理及び消去処理を行わせる構成とした。従って、故障したMP111の管理下にあるセキュリティ情報D1が消去されずにCHA110Aが取り外されるのを防止することができ、信頼性が向上する。
【0078】
本実施例では、各通信ポート113は、共有メモリ140に記憶される消去指令D51を介して連携しながら、それぞれ個別にセキュリティ情報D1の退避処理及び消去処理を行う構成とした。従って、比較的簡易な構成で記憶制御装置100のセキュリティ性能を向上させることができる。
【実施例2】
【0079】
図11に基づいて第2実施例を説明する。本実施例は、第1実施例の変形例に相当し、その特徴は、正規の手順を踏まずにCHA110Aが制御ボックス103から取り外された場合でも、セキュリティ情報D1を消去できるようにした点にある。
【0080】
図11は消去処理のフローチャートを示す。CHA110Aは、記憶制御装置100との接続が切れたか否かを監視している(S50)。例えば、第三者が不正にCHA110Aを制御ボックス103から取り外そうとした場合、そのCHA110Aと記憶制御装置100との間の接続が切れたことが検出される(S50:YES)。CHA110A(MP111)は、ポート用メモリ117からセキュリティ情報D1が消去済であるか否かを確認し(S51)、セキュリティ情報D1が消去されていない場合(S51:NO)、それを消去させる(S52)。CHA110Aに小型電池やキャパシタ等の非常電源を搭載し、ポート用メモリ117からセキュリティ情報D1を消去するための電力を確保してもよい。
【0081】
このように構成される本実施例では、正規の交換作業以外によって、CHA110Aが記憶制御装置100から取り外された場合でも、セキュリティ情報D1を消去してセキュリティ性を確保することができる。
【0082】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、セキュリティ情報の退避先は、共有メモリに限らず、キャッシュメモリを用いてもよい。あるいは、アクセス時間は長くなるが、セキュリティ情報をディスクドライブに退避させる構成でもよい。また、本発明は、iSCSIに限定されるものではなく、例えば、ファイバチャネル、ESCON(登録商標)、FICON(登録商標)、NAS、マルチプロトコル等の他のプロトコルにも適用することができる。
【図面の簡単な説明】
【0083】
【図1】本発明の実施形態に係る記憶制御装置の外観を示す説明図である。
【図2】記憶制御装置の全体構成を示すブロック図である。
【図3】チャネルアダプタ(CHA)の構造を示すブロック図である。
【図4】ポート用メモリ及び共有メモリの記憶内容を模式的に示す説明図である。
【図5】チャネルアダプタに障害が発生した場合に実行されるセキュリティ情報の退避処理及び消去処理を示すフローチャートである。
【図6】図5中のS27の詳細を示すフローチャートである。
【図7】新たなチャネルアダプタに交換した場合に実行されるセキュリティ情報の復元処理及びホストからのアクセス要求処理を示すフローチャートである。
【図8】トランシーバに障害が生じた場合のセキュリティ情報の流れを示す説明図である。
【図9】ポート用メモリと共有メモリとの間の経路上に障害が生じた場合の説明図である。
【図10】MPに障害が生じた場合のセキュリティ情報の流れを示す説明図である。
【図11】第2実施例に係る記憶制御装置により実行されるセキュリティ情報の消去処理を示すフローチャートである。
【符号の説明】
【0084】
10…ホスト、20…管理端末、100…記憶制御装置、101…筐体、102…記憶ボックス、103…制御ボックス、104…電源ボックス、105…冷却ファン、110,110A…チャネルアダプタ(CHA)、120…ディスクアダプタ(DKA)、111…マイクロプロセッサ(MP)、112…データ転送制御部、113…通信ポート、114…トランシーバ、115…セキュリティチップ、116…プロトコルチップ、117…ポート用メモリ、130…キャッシュメモリ、140…共有メモリ、150…スイッチ制御アダプタ群、160…スイッチ制御アダプタ群、170…記憶部、171…ディスクドライブ、180…サービスプロセッサ(SVP)
【特許請求の範囲】
【請求項1】
筐体と、
この筐体に着脱可能に設けられ、ホスト装置と通信を行う上位インターフェース制御部と、
前記筐体に設けられ、記憶デバイスと通信を行う下位インターフェース制御部と、
前記筐体に設けられ、前記上位インターフェース制御部及び前記下位インターフェース制御部にそれぞれ接続された第1メモリ部と、を備えた記憶制御装置であって、
前記上位インターフェース制御部は、
前記ホスト装置に通信ネットワークを介して接続される送受信部と、
前記送受信部を介して、前記ホスト装置との間で暗号化通信を行うための暗号化通信部と、
前記暗号化通信部に接続され、前記暗号化通信に使用される所定の情報を記憶する第2メモリ部と、
前記ホスト装置との通信を制御する制御部と、
を備えており、
前記制御部は、前記上位インターフェース制御部の交換指示を受信した場合に、前記第2メモリ部に記憶されている前記所定の情報を消去させる記憶制御装置。
【請求項2】
前記制御部は、前記上位インターフェース制御部の交換指示を受信した場合に、前記所定の情報を前記第1メモリ部に記憶させてから、前記第2メモリ部に記憶されている前記所定の情報を消去させる請求項1に記載の記憶制御装置。
【請求項3】
前記制御部は、前記筐体に装着された場合に、前記第1メモリ部に記憶された前記所定の情報を読み出して前記第2メモリ部に記憶させる請求項2に記載の記憶制御装置。
【請求項4】
前記制御部は、前記上位インターフェース制御部の交換指示を受信した場合に、
(1)前記第2メモリ部から前記第1メモリ部へのデータ転送が可能か否かを判定し、
(2)前記各メモリ間のデータ転送が可能であると判定した場合は、前記第2メモリ部から前記第1メモリ部に前記所定の情報を転送して記憶させてから、前記第2メモリ部に記憶されている前記所定の情報を消去させ、
(3)前記各メモリ間のデータ転送が不能であると判定した場合は、前記第2メモリ部から前記所定の情報を消去させる請求項1に記載の記憶制御装置。
【請求項5】
前記上位インターフェース制御部は、互いにバックアップ可能な複数の通信構造を備えており、これら各通信構造は、前記送受信部と、前記暗号化通信部と、前記第2メモリ部及び前記制御部をそれぞれ備えており、
前記各通信構造のうちいずれか一方の通信構造において、前記第2メモリ部から前記第1メモリ部へのデータ転送が不能である場合、前記各通信構造のうち他方の通信構造を介して、前記一方の通信構造の前記第2メモリ部に記憶された前記所定の情報を前記第1メモリ部に転送して記憶させる請求項1に記載の記憶制御装置。
【請求項6】
記憶制御装置に着脱可能に設けられ、ホスト装置と通信を行う上位インターフェース制御部であって、
前記ホスト装置に通信ネットワークを介して接続される送受信部と、
前記送受信部を介して、前記ホスト装置との間で暗号化通信を行うための暗号化通信部と、
前記暗号化通信部に接続され、前記暗号化通信に使用される所定の情報を記憶する第2メモリ部と、
前記ホスト装置との通信を制御する制御部と、
を備えており、
前記制御部は、前記上位インターフェース制御部の交換指示を受信した場合に、前記第2メモリ部に記憶されている前記所定の情報を消去させる記憶制御装置の上位インターフェース制御部。
【請求項7】
筐体に着脱可能に設けられ、ホスト装置と暗号化通信を行う上位インターフェース制御部と、
前記筐体に設けられ、記憶デバイスと通信を行う下位インターフェース制御部と、
前記筐体に設けられ、前記上位インターフェース制御部及び前記下位インターフェース制御部にそれぞれ接続された第1メモリ部と、を備えた記憶制御装置の情報保護方法であって、
前記上位インターフェース制御部の交換指示を受信したか否か判定する交換判定ステップと、
前記交換指示を受信した場合は、前記上位インターフェース制御部に保持されている前記暗号化通信に使用される所定の情報を消去させる消去ステップと、
前記所定の情報を消去した場合に、前記上位インターフェース制御部の交換が可能である旨を通知する通知ステップと、
を含む記憶制御装置の情報保護方法。
【請求項8】
(1)前記交換判定ステップと前記消去ステップとの間に、
前記上位インターフェース制御部に保持されている前記所定の情報を前記第1メモリ部に記憶させる退避ステップを設け、
(2)前記通知ステップの後に、
前記上位インターフェース制御部が交換されたか否かを判定する交換終了判定ステップと、
前記上位インターフェース制御部の交換が行われた場合は、前記第1メモリ部に前記所定の情報が記憶されているか否かを判定する退避判定ステップと、
前記第1メモリ部に前記所定の情報が記憶されている場合は、前記第1メモリ部から前記所定の情報を読み出して、前記交換された上位インターフェース制御部に保持させる復元ステップとを、それぞれ設ける請求項7に記載の記憶制御装置の情報保護方法。
【請求項1】
筐体と、
この筐体に着脱可能に設けられ、ホスト装置と通信を行う上位インターフェース制御部と、
前記筐体に設けられ、記憶デバイスと通信を行う下位インターフェース制御部と、
前記筐体に設けられ、前記上位インターフェース制御部及び前記下位インターフェース制御部にそれぞれ接続された第1メモリ部と、を備えた記憶制御装置であって、
前記上位インターフェース制御部は、
前記ホスト装置に通信ネットワークを介して接続される送受信部と、
前記送受信部を介して、前記ホスト装置との間で暗号化通信を行うための暗号化通信部と、
前記暗号化通信部に接続され、前記暗号化通信に使用される所定の情報を記憶する第2メモリ部と、
前記ホスト装置との通信を制御する制御部と、
を備えており、
前記制御部は、前記上位インターフェース制御部の交換指示を受信した場合に、前記第2メモリ部に記憶されている前記所定の情報を消去させる記憶制御装置。
【請求項2】
前記制御部は、前記上位インターフェース制御部の交換指示を受信した場合に、前記所定の情報を前記第1メモリ部に記憶させてから、前記第2メモリ部に記憶されている前記所定の情報を消去させる請求項1に記載の記憶制御装置。
【請求項3】
前記制御部は、前記筐体に装着された場合に、前記第1メモリ部に記憶された前記所定の情報を読み出して前記第2メモリ部に記憶させる請求項2に記載の記憶制御装置。
【請求項4】
前記制御部は、前記上位インターフェース制御部の交換指示を受信した場合に、
(1)前記第2メモリ部から前記第1メモリ部へのデータ転送が可能か否かを判定し、
(2)前記各メモリ間のデータ転送が可能であると判定した場合は、前記第2メモリ部から前記第1メモリ部に前記所定の情報を転送して記憶させてから、前記第2メモリ部に記憶されている前記所定の情報を消去させ、
(3)前記各メモリ間のデータ転送が不能であると判定した場合は、前記第2メモリ部から前記所定の情報を消去させる請求項1に記載の記憶制御装置。
【請求項5】
前記上位インターフェース制御部は、互いにバックアップ可能な複数の通信構造を備えており、これら各通信構造は、前記送受信部と、前記暗号化通信部と、前記第2メモリ部及び前記制御部をそれぞれ備えており、
前記各通信構造のうちいずれか一方の通信構造において、前記第2メモリ部から前記第1メモリ部へのデータ転送が不能である場合、前記各通信構造のうち他方の通信構造を介して、前記一方の通信構造の前記第2メモリ部に記憶された前記所定の情報を前記第1メモリ部に転送して記憶させる請求項1に記載の記憶制御装置。
【請求項6】
記憶制御装置に着脱可能に設けられ、ホスト装置と通信を行う上位インターフェース制御部であって、
前記ホスト装置に通信ネットワークを介して接続される送受信部と、
前記送受信部を介して、前記ホスト装置との間で暗号化通信を行うための暗号化通信部と、
前記暗号化通信部に接続され、前記暗号化通信に使用される所定の情報を記憶する第2メモリ部と、
前記ホスト装置との通信を制御する制御部と、
を備えており、
前記制御部は、前記上位インターフェース制御部の交換指示を受信した場合に、前記第2メモリ部に記憶されている前記所定の情報を消去させる記憶制御装置の上位インターフェース制御部。
【請求項7】
筐体に着脱可能に設けられ、ホスト装置と暗号化通信を行う上位インターフェース制御部と、
前記筐体に設けられ、記憶デバイスと通信を行う下位インターフェース制御部と、
前記筐体に設けられ、前記上位インターフェース制御部及び前記下位インターフェース制御部にそれぞれ接続された第1メモリ部と、を備えた記憶制御装置の情報保護方法であって、
前記上位インターフェース制御部の交換指示を受信したか否か判定する交換判定ステップと、
前記交換指示を受信した場合は、前記上位インターフェース制御部に保持されている前記暗号化通信に使用される所定の情報を消去させる消去ステップと、
前記所定の情報を消去した場合に、前記上位インターフェース制御部の交換が可能である旨を通知する通知ステップと、
を含む記憶制御装置の情報保護方法。
【請求項8】
(1)前記交換判定ステップと前記消去ステップとの間に、
前記上位インターフェース制御部に保持されている前記所定の情報を前記第1メモリ部に記憶させる退避ステップを設け、
(2)前記通知ステップの後に、
前記上位インターフェース制御部が交換されたか否かを判定する交換終了判定ステップと、
前記上位インターフェース制御部の交換が行われた場合は、前記第1メモリ部に前記所定の情報が記憶されているか否かを判定する退避判定ステップと、
前記第1メモリ部に前記所定の情報が記憶されている場合は、前記第1メモリ部から前記所定の情報を読み出して、前記交換された上位インターフェース制御部に保持させる復元ステップとを、それぞれ設ける請求項7に記載の記憶制御装置の情報保護方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2007−18401(P2007−18401A)
【公開日】平成19年1月25日(2007.1.25)
【国際特許分類】
【出願番号】特願2005−201099(P2005−201099)
【出願日】平成17年7月11日(2005.7.11)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成19年1月25日(2007.1.25)
【国際特許分類】
【出願日】平成17年7月11日(2005.7.11)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]