(57)【要約】【課題】  ホスト計算機の特別なパス切り替え手段、アプリ停止および設定変更を伴わず高速でパスを切り替えてストレージを切り替えるための通信制御方法、それを実現する装置を提供する。【解決手段】  ホスト計算機２０と、ホスト計算機２０とネットワーク３０で接続されるストレージ装置１０と、ネームサーバ４０と、を備える計算機システムにおいて、ホスト計算機２０は、ストレージ装置１０との使用パスの異常を見出すと、代替のパスを捜す機能を有し、ストレージ装置１０は、ポートを経由してホスト計算機２０と通信するターゲットを有するとともに、ネームサーバ４０へ登録された移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへ登録変更する手段と、登録変更処理の後に、移行元ターゲットで成立中の全通信手段を切断する手段と有する。【選択図】        図１
2007140699.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のホスト計算機と、該ホスト計算機とネットワークで接続される１つ以上のストレージ装置と、ネームサーバと、を備える計算機システムにおいて、
前記ホスト計算機は、前記ストレージ装置との使用パスの異常を見出すと、代替のパスを捜す機能を有しており、
前記ストレージ装置は、ポートを経由して前記ホスト計算機と所定の通信手段で通信するターゲットを有するとともに、前記ネームサーバへ登録された前記移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへ登録変更する手段と、前記登録変更処理の後に、移行元ターゲットで成立中の全通信手段を切断する手段とを有することを特徴とする計算機システム。
【請求項２】
前記ストレージ装置は、前記ネームサーバにターゲットの識別子とポートのアドレスとを関連付けて登録する手段を有する請求項１記載の計算機システム。
【請求項３】
前記ストレージ装置は、前記移行元ターゲットから前記移行先ターゲットにデータ移行を行なう手段を有し、前記データ移行手段の実行後に前記登録変更を実行する請求項１記載の計算機システム。
【請求項４】
前記ストレージ装置は、前記移行元ターゲットから前記移行先ターゲットにデータ移行を行なう手段を有し、前記データ移行手段の実行前に前記登録変更を実行する請求項１記載の計算機システム。
【請求項５】
前記通信手段切り替え要因が、前記移行元ポートの処理量が予め定められた値を越えた事の検出である請求項１記載の計算機システム。
【請求項６】
前記識別子がｉＳＣＳＩネームであり、前記移行先ポートに属する前記ターゲットがｉＳＣＳＩターゲットであり、前記移行元ポートに属する前記ターゲットがｉＳＣＳＩターゲットである請求項１記載の計算機システム。
【請求項７】
前記ストレージ装置は、その通信手段がＴＣＰコネクションであり、前記通信中止処理がＴＣＰ
ＦＩＮ送信である請求項１記載の計算機システム。
【請求項８】
前記ストレージ装置は、その通信手段がＴＣＰコネクションであり、前記通信中止処理がＴＣＰ
ＲＳＴ送信である請求項１記載の計算機システム。
【請求項９】
前記ストレージ装置は、その通信手段がｉＳＣＳＩコネクションであり、前記通信中止処理がｉＳＣＳＩログアウト要求送信である請求項１記載の計算機システム。
【請求項１０】
前記ストレージ装置は、通信中止処理を実施した後、前記ホスト計算機からの通信再開要求を拒絶する請求項１記載の計算機システム。
【請求項１１】
前記ストレージ装置に、登録変更処理と、移行元ターゲットで成立中の全通信手段の切断処理の実行を指示する管理サーバを備える請求項１記載の計算機システム。
【請求項１２】
ストレージ装置との使用パスの異常を見出すと、代替のパスを捜す機能を有する１つ以上のホスト計算機とネットワークで接続され、前記ホスト計算機とネームサーバとで計算機システムを構成するストレージ装置において、
ポートを経由して前記ホスト計算機と所定の通信手段で通信するターゲットを有するとともに、前記ネームサーバへ登録された前記移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへ登録変更する手段と、前記登録変更処理の後に、移行元ターゲットで成立中の全通信手段を切断する手段とを有することを特徴とするストレージ装置。
【請求項１３】
前記ネームサーバにターゲットの識別子とポートのアドレスとを関連付けて登録する手段を有する請求項１２記載のストレージ装置。
【請求項１４】
前記移行元ターゲットから前記移行先ターゲットにデータ移行を行なう手段を有し、前記データ移行手段の実行後に前記登録変更を実行する請求項１２記載のストレージ装置。
【請求項１５】
前記登録変更処理と、移行元ターゲットで成立中の全通信手段の切断処理の実行の指示を、接続した管理サーバから受信する請求項１２記載のストレージ装置。
【請求項１６】
ストレージ装置との使用パスの異常を見出すと、代替のパスを捜す機能を有する１つ以上のホスト計算機と、該ホスト計算機とネットワークで接続され、ポートを経由して前記ホスト計算機と所定の通信手段で通信するターゲットを有する１つ以上のストレージ装置と、ネームサーバとで計算機システムを構成する管理サーバにおいて、
前記ネームサーバへ登録された前記移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへの登録変更と、移行元ターゲットで成立中の全通信手段の切断処理の実行の指示を、前記ストレージ装置に指示することを特徴とする管理サーバ。
【請求項１７】
ストレージ装置との使用パスの異常を見出すと、代替のパスを捜す機能を有する１つ以上のホスト計算機と、該ホスト計算機とネットワークで接続され、ポートを経由して前記ホスト計算機と所定の通信手段で通信するターゲットを有する１つ以上のストレージ装置と、ネームサーバと、を備える計算機システムにおける通信制御方法において、
前記ネームサーバへ登録された前記移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへ登録変更することと、前記登録変更処理の後に、移行元ターゲットで成立中の全通信手段を切断することとを有することを特徴とする通信制御方法。
【請求項１８】
前記ネームサーバにターゲットの識別子とポートのアドレスとを関連付けて登録することを有する請求項１７記載の通信制御方法。
【請求項１９】
前記ストレージ装置は前記移行元ターゲットから前記移行先ターゲットにデータ移行を行なう手段を有しており、前記データ移行手段の実行後に前記登録変更を実行することを有する請求項１７記載の通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システム及びホスト透過ｉＳＣＳＩパス切り替え方法およびそれを用いたストレージ装置に関し、特にストレージへのアクセスにおける通信制御方法、ストレージ装置、計算機システムおよび通信制御プログラムを記録した記憶媒体に関する。
【背景技術】
【０００２】
従来、サーバ装置（以下、「ホスト」と記述）とストレージ装置（以下、「ストレージ」または「ストレージシステム」と記述）との間の通信は、ファイバチャネル（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ、以下、「ＦＣ」と記述）が用いられ、それら装置間を専用ネットワークで接続することが主流だった。このストレージ接続専用のネットワークをストレージエリアネットワーク（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ、以下、「ＳＡＮ」と記述）と呼ぶ。ネットワーク制御プロトコルとしてＦＣを用いるＳＡＮは、特にＦＣ−ＳＡＮと呼ぶ。ＦＣ−ＳＡＮでは、ＦＣの上位プロトコルであるストレージを制御するプロトコルとして、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒｆａｃｅ）やＳＢＣＣＳ（Ｓｉｎｇｌｅ  Ｂｙｔｅ  Ｃｏｍｍａｎｄ  Ｃｏｄｅ  Ｓｅｔ）などが用いられる。
【０００３】
一方、最近では、ＦＣの代わりにネットワーク技術であるＴＣＰ／ＩＰ上を利用する技術が普及しつつある。特にＴＣＰ／ＩＰの上位プロトコルとなる形でＳＣＳＩを用いるためのプロトコル技術としてｉＳＣＳＩ（ｉｎｔｅｒｎｅｔ  ＳＣＳＩ）がある。ＴＣＰ／ＩＰおよびｉＳＣＳＩは、ＩＥＴＦ（ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）で規格化が行われた。ＴＣＰ／ＩＰは、更にＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）とＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）として定義される。一般に、ネットワークでは、階層に分けて通信制御（プロトコル処理）を行なう。たとえば、ＴＣＰを処理するプロトコル層をＴＣＰ層、ＩＰを処理するプロトコル層をＩＰ層と呼ぶ。
【０００４】
図１５に、ｉＳＣＳＩ通信を行なう装置のプロトコル層と送受信データの関係を示す。ホスト２０とストレージシステム１０は、ネットワーク３０で接続されている。ｉＳＣＳＩ通信を行なう装置のプロトコルの階層は、アプリケーション層３２０、ＳＣＳＩ層３００、ｉＳＣＳＩ層３０１、ＴＣＰ層３０２、ＩＰ層３０３およびＭＡＣ層３０４から構成される。ＭＡＣ層３０４は、Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ層とも呼ばれ、通常イーサネット（登録商標）やギガビットイーサネット（登録商標）が用いられる。各プロトコル層では扱うデータ長が異なり、また、ヘッダ情報などが追加される。プロトコルの階層は、上位から順にアプリケーション層３２０、ＳＣＳＩ層３００、ｉＳＣＳＩ層３０１、ＴＣＰ層３０２、ＩＰ層３０３、ＭＡＣ層３０４として位置づける。
【０００５】
ホスト２０においてアプリケーション層３２０は、アプリケーションソフトウェア（データベース、画像処理ソフトウェア、設計支援ソフトウェア、ワードプロセッサ、表計算ソフトウェア等。以下「アプリ」と記述する）である。
【０００６】
ストレージシステム１０において、アプリケーション層３２０は記憶装置であり、ホスト２０からの指示に応じて、ホスト２０から受信したデータの格納や、格納されているデータを読み出してホスト２０に対する送信を実行する。こうしたホスト２０からの指示としてＳＣＳＩのリード命令やライト命令等が用いられるが、本明細書では説明を省略し概略のみ記述する。すなわち、ホスト２０のアプリ３２０は、記憶装置に格納するデータ３１０、ＳＣＳＩ層３００、ｉＳＣＳＩ層３０１、ＴＣＰ層３０２、ＩＰ層３０３、ＭＡＣ層３０４を経由し、ネットワーク３０を通じてストレージシステム１０へデータを送信する。これを受信したストレージ１０は、ＭＡＣ層３０４、ＩＰ層３０３、ＴＣＰ層３０２、ｉＳＣＳＩ層３０１、ＳＣＳＩ層３００を経由して記憶装置へデータ３１０を格納する（３４０）。また、ホスト２０のアプリ３２０は、記憶装置に対するＳＣＳＩ命令を同様の経路で記憶装置へ送信する。
【０００７】
ＳＣＳＩのリード命令を受けた記憶装置は、格納されているデータ３１０を、ＳＣＳＩ層３００、ｉＳＣＳＩ層３０１、ＴＣＰ層３０２、ＩＰ層３０３、ＭＡＣ層３０４を経由し、ネットワーク３０を通じてホスト２０へ送信する。これを受信したホスト２０は、ＭＡＣ層３０４、ＩＰ層３０３、ＴＣＰ層３０２、ｉＳＣＳＩ層３０１、ＳＣＳＩ層３００を経由してアプリ３２０へデータ３１０を渡す（３５０）。
【０００８】
ストレージを運用する場合、格納・保存する情報の増大に伴いストレージ容量を拡張する必要が生じる。また、データへのアクセス量増大に伴い、よりアクセス処理能力の高いストレージへの置き換えや、一部のデータを新しいストレージへ移行してアクセス処理を装置間で分散する負荷分散が有効である。これらは、たとえば企業で運用されているストレージにおいて、当該企業のビジネス規模が増大するにつれ顧客・従業員が増加し、扱う情報やアクセス量が増大することによって引き起こされる。
【０００９】
また、経年化したストレージは、ドライブの物理的劣化により故障が多く発生するようになると考えられ、データを別ストレージに移し替え、新しいストレージで継続してデータを保管し続ける必要が生じる。近年電子メールなどのビジネスデータは長期保存が義務化される動向にあり、こうしたデータの継続保管に関する要求が高まっている。
【００１０】
またＩＰネットワークはＦＣと比べ通信が不安定であるといった問題があり、ｉＳＣＳＩでは従来のネットワークのように、通信経路（以下、「パス」と記述）の切り替えによる負荷分散や障害時のパス切り替えが必要である。
【００１１】
従来のストレージでは、運用中のストレージに対してストレージ容量拡張、ストレージ置き換え、またはデータ移行を行なう場合に、通信相手のストレージが切り替わるので、通信経路の切り替えと、アプリからみたストレージの情報を変更する必要があった。すなわちアプリを停止し、ホストの設定を変更してからアプリの動作再開を行なわなければならなかった。
【００１２】
従来のパス切り替え技術としては、
（１）ＦＣのパス切替…予め経路を２つ張っておき、アドレス１からアドレス２へ切替える。
（２）ＩＰネットワークのパス切替…移行元ポートの動作を止め、ＩＰアドレスを移行先へ引継ぐ。
がある。しかし、これらの技術をＩＰ−ＳＡＮに適用する場合、それぞれ、
（１）予めホストにパス切替ソフトを動作させておき、パスを２本張っておく必要がある。
（２）ホストはタイムアウトを契機に接続しなおす。切り替え時間がネットワークのタイムアウトに依存して数秒以上となり、その間ホストのアプリケーションが停止する。
といった課題がある。
【００１３】
上記（２）を高速に実現する手段として特許文献１を、また関連する技術として特許文献２を挙げる。特許文献１では、ＭＡＣ層とＩＰ層の間でアドレス変換を行なうポート制御手段にて、ＭＡＣ層の冗長化部分の切り替えが行われてもＩＰ層に対しては経路変更前にＩＰ層が認識していたＭＡＣ層の情報（ＭＡＣアドレス）が受け渡される構成にすることにより、ＴＣＰ／ＩＰ層およびユーザアプリケーションプログラムが冗長化を意識しない技術が開示されている。
【００１４】
特許文献１の技術では、ＭＡＣアドレスを冗長化ソフトウェアすなわちパス切り替えソフトウェアで移行元の通信先アドレスへ変更する。アプリは冗長化を意識せず、同一のＴＣＰコネクションを使って通信を継続する。ＴＣＰ経路の切替があっても、ＴＣＰのコネクションを維持しアプリに切替の影響を及ぼさない。また、特許文献２には、クライアント、サーバ間にコネクションを確立し、データ通信時にコネクション上で通信エラーが発生した場合、そのエラーを検出して、自動的にエラー発生時のコネクションをクローズすると共に、コネクション確立要求を出力して、新たなコネクションを確立する技術が開示されている。
【特許文献１】特開２００４−１２９２８７号公報（請求項など）
【特許文献２】特開平０５−３４６８９８号公報（請求項など）
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、従来技術では、ホストとストレージの接続について、ホストでのパス切り替え手段の実行無しに高速かつアプリに意識させない手段でパスを切り替える技術は開示されていない。すなわち、特許文献１では、ホストにパス制御ソフトウェアが必要でありかつ複数のコネクションを予め確立しておく必要があった。特許文献２は、パスの障害回復を高速に行なうが、パスの接続先を変更する技術は開示されていない。すなわち、パス切り替えやターゲット切り替えを目的にストレージからパスの切断を行なう技術は開示されていない。
【００１６】
本発明は、前記した課題を踏まえ、ホストの特別なパス切り替え手段、アプリ停止および設定変更を伴わず高速でパスを切り替えてストレージを切り替えるための通信制御方法、それを実現する装置およびプログラムを記録した記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【００１７】
前記の課題を解決するため、本発明の通信制御技術は、ｉＳＣＳＩのネームサーバであるｉＳＮＳ（ｉｎｔｅｒｎｅｔ  Ｓｔｏｒａｇｅ  Ｎａｍｅ  Ｓｅｒｖｉｃｅ）サーバに登録されている移行元ターゲットのＩＰアドレスを移行先ターゲットのＩＰアドレスへ変更し、ターゲットないし通信経路を移行するタイミングで移行元ターゲットからホストとの通信を切断する。これにより、ホストの障害回復機能を利用して、アプリケーションに意識させず高速にターゲット切り替えおよびパス切り替えを実現する。
【００１８】
すなわち、本発明は、１つ以上のホスト計算機と、該ホスト計算機とネットワークで接続される１つ以上のストレージ装置と、ネームサーバと、を備える計算機システムにおいて、前記ホスト計算機は、前記ストレージ装置との使用パスの異常を見出すと、代替のパスを捜す機能を有しており、前記ストレージ装置は、ポートを経由して前記ホスト計算機と所定の通信手段で通信するターゲットを有するとともに、前記ネームサーバへ登録された前記移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへ登録変更する手段と、前記登録変更処理の後に、移行元ターゲットで成立中の全通信手段を切断する手段とを有する計算機システムである。
【発明の効果】
【００１９】
本発明によれば、ＩＰ―ＳＡＮにおいて、ホストのアプリに意識させることなく、また特別なパス切り替え手段をホストに要求することなく短時間でターゲットの切替を実現する。これにより運用中のストレージに対してストレージ容量拡張、ストレージ置き換え、データ移行、または通信経路の切り替えをアプリを停止することなく実現できるＩＰストレージを提供できる。
【発明を実施するための最良の形態】
【００２０】
本発明を実施するための最良の形態を説明する。
以下、本発明の計算機システム及びストレージ装置と管理サーバ並びに通信制御方法の実施形態について、図面を用いて説明する。
【００２１】
＜＜第１の実施形態＞＞
本発明にかかる第１の実施形態は、ストレージ間のデータ移行を実現するために移行元ストレージにおいてｉＳＮＳ登録変更を行なった後パス切り替えのためにコネクション切断を行なう実施形態である。また、まず移行元ターゲットがホストからのアクセスを処理しているバックグラウンドでＬＵのコピーを実行し、それが終了した時点でホストに対するターゲット移行を実行する点も特徴である。
【００２２】
［システムの構成］
図１は、第１の実施形態における電子計算機システム１（１Ａ）のハードウェア（以下、「Ｈ／Ｗ」と記述）構成を示す説明図である。本実施形態における電子計算機システム１（１Ａ）において、ネットワーク３０にはストレージシステム１０（ストレージ１０Ａおよびストレージ１０Ｂ）、ホスト計算機２０（ホスト２０Ａ、ホスト２０Ｂ、以下単に「ホスト」と呼ぶ場合がある。）、ネームサーバ４０ならびに管理サーバ５０が接続されている。この計算機システムにおいて、ネットワーク３０を介してストレージシステム１０およびホスト２０との間でデータの送受信が行われる。ストレージシステムは、１つ以上のストレージ装置からなるが、以下、ストレージシステムとストレージ装置とを区別せずに、単に「ストレージ」などとして使用する場合がある。
【００２３】
ホスト２０は、ストレージに対しデータの書き込み指示や読み出し指示を行なう。これは、ｉＳＣＳＩの上位プロトコルであるＳＣＳＩコマンドのライト命令やリード命令を用いて行なわれる。なお、ホスト２０は、ストレージとの使用パスの異常を見出すと、代替のパスを捜す機能を有している。
【００２４】
ストレージシステム１０は、ストレージコントローラ１００、記憶装置１８０から構成される。ストレージシステム１０がストレージコントローラ１００を複数持ち、予めホスト２０に複数のコントローラのターゲット情報（後述のターゲット識別子とアドレス）を設定しておけば、ホスト２０と複数のコントローラで通信できる。
【００２５】
記憶装置１８０は、通常、複数のディスクドライブ装置であり、ホストから書き込み指示されたデータが最終的に記録される。
【００２６】
ストレージコントローラ１００は、ネットワークポート１１０を持つ。これらのネットワークポート１１０は、ネットワーク３０に対し、通常、ギガビットイーサネット（登録商標）のような高速ＩＰインタフェースを介して接続される物理ポートを持つ。また、図示していないが、これらのネットワークポートは、送信データを一時格納しておくための送信バッファ、及び受信データを一時格納しておくための受信バッファを備えていてもよい。以下ネットワークポートを単に「ポート」と記述する。
【００２７】
また、ストレージコントローラ１００は、プロセッサ１２０、各種制御情報を格納する制御メモリ１３０、キャッシュメモリ１５０、記憶装置１８０に接続されデータの入出力を行なうバックエンドインタフェース１６０を備える。そして、ストレージコントローラ１００は、ストレージコントローラ１００上のデータ転送制御を行なうデータコントローラ１４０を備える。
【００２８】
ネームサーバ４０は、ｉＳＣＳＩでは「ｉＳＮＳ」と呼ぶネームサーバ機能を提供する。ｉＳＮＳは、それ自身がクライアントーサーバ型のサービスであり、ネームサーバであるｉＳＮＳがサーバの機能を持ち、ｉＳＣＳＩイニシエータ及びターゲットはｉＳＮＳクライアント機能を持つ。ｉＳＮＳのネームサーバ４０は、ＩＰ−ＳＡＮ上の機器の情報をｉＳＮＳ内のデータベース（図では省略している）へ格納し、ｉＳＮＳクライアントからの要求に従ってｉＳＮＳデータベースの問い合わせを行なうネーミングサービスを提供する。
【００２９】
ネームサーバ４０は、ｉＳＣＳＩイニシエータおよびｉＳＣＳＩターゲットの識別子（ｉＳＣＳＩネーム）とアドレス情報（ＩＰアドレス）を管理するｉＳＮＳサーバ機能を持つ。以下ネームサーバを「ｉＳＮＳサーバ」と記述する。
【００３０】
管理サーバ５０は、ストレージ１０の管理機能を有する。すなわちポート、ターゲットやＬＵの設定および管理を行なう。後述のデータ移行に関する指示も行なう。管理サーバとストレージ１０との通信プロトコルは、独自のプロトコルによる方法、ＳＣＳＩコマンドの未使用領域を独自に利用する方法、ｉＳＣＳＩのＴＥＸＴネゴシエーションを利用する方法などが挙げられるが、本発明の本質ではないので詳細は略とする。
【００３１】
尚、図示していないが、サーバ２０、ネームサーバ４０、および管理サーバ５０は、それぞれプロセッサ、記憶装置、入出力装置を備える計算機である。
【００３２】
本実施例では、ホスト２０がアクセスするターゲットを、ストレージ２０Ａからストレージ２０Ｂに対して移行する。制御の詳細は後述する。
【００３３】
図２は、第１の実施形態の電子計算機システム１（１Ａ）のモジュール構成を示す説明図である。各サーバ２０は、ネットワークポート２１０を持ち、図では省略しているプロセッサ上にてｉＳＣＳＩイニシエータ機能を実現するイニシエータ機能２２０と、アプリ２３０が動作する。
【００３４】
ｉＳＣＳＩイニシエータ機能２２０は、アプリ２３０からの要求により、アクセス対象であるターゲットに対し、ｉＳＣＳＩ命令としてＳＣＳＩのライト命令やリード命令、その他の制御命令を発行する。イニシエータからターゲットへの送信やターゲットからイニシエータに対する受信は、ポート２１０を経由して行なわれる。
【００３５】
ストレージシステム１０Ａ内のプロセッサ１２０上では、ターゲット機能１２２と、イニシエータ機能１２４と、ｉＳＮＳクライアント機能１２６と、データ移行（マイグレーション）の管理を行なうデータ移行管理機能１２８が動作する。
【００３６】
ターゲット機能１２２は、ポート１１０から受信したホストのイニシエータ機能２２０からｉＳＣＳＩコマンドとして受信したＳＣＳＩコマンドに従って、記憶装置１８０上に定義されたＬＵ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ）に対しデータの読み出しや書き込みを行なう。通常ストレージ１０には複数のＬＵが定義され、ストレージ１０内で位置のＬＵＮ（ＬＵ  Ｎｕｍｂｅｒ）で識別される。
【００３７】
ｉＳＣＳＩでは、物理的な１つポートに対し複数のターゲットが存在できる。また、物理的に複数のポートを１つのターゲットが異なるパスとして使用することも可能である。
【００３８】
各ｉＳＣＳＩノード（ｉＳＣＳＩイニシエータおよびｉＳＣＳＩターゲット）はそれぞれ異なるｉＳＣＳＩネームを持つが、イニシエータは自身がアクセスするターゲットをｉＳＣＳＩネームで識別する。
【００３９】
個々のターゲット機能は、ｉＳＣＳＩネーム、ポート、ＬＵマッピング機能を持つ。また、ターゲット機能は、接続してくるイニシエータを制限するために、イニシエータ認証情報を持ち、認証に失敗したイニシエータからのログインを拒絶する機能を持つ。
【００４０】
イニシエータ機能１２４は、後述のＬＵのコピーのために、データ移行管理機能が動作制御する。ストレージのデータ移行管理機能１２８と区別するため、ホストのイニシエータ機能２２０をホストイニシエータ機能または単にホストイニシエータと記述する場合がある。
【００４１】
ｉＳＮＳクライアント機能１２６は、ｉＳＮＳサーバに対し登録・変更の要求を発行する機能である。
【００４２】
データ移行管理機能１２８の動作は、図７で説明する。
【００４３】
また、以下特に説明は省略するが、イニシエータ機能１２４には、ｉＳＣＳＩネームおよびＩＰアドレスを設定しておく。この設定には管理サーバ５０を用いる。ＩＰアドレスは、ストレージシステム１０ＡのいずれかのｉＳＣＳＩターゲットと共通の値でも良い。
【００４４】
図３は、ｉＳＮＳサーバの登録・変更処理の一動作例を示す説明図である。ｉＳＮＳの通信については、ＩＥＴＦで標準化が行なわれている。
【００４５】
ＩＰ−ＳＡＮの場合、ｉＳＮＳクライアントからのターゲット情報Ｔ１０を受け取り、それに対するレスポンスＴ２０を返信すると共に、ＩＰアドレスとｉＳＣＳＩネームの関係をデータベースへ登録する。登録されているデータベースのターゲット情報に変更があった場合、ｉＳＮＳは、そのターゲットに影響する範囲（「ディスカバリ・ドメイン」と呼ぶ。詳細は後記する。）のｉＳＮＳクライアントにＳＣＮ（Ｓｔａｔｅ  Ｃｈａｎｇｅ  Ｎｏｔｉｆｉｃａｔｉｏｎ）Ｔ３０を送信する。ＳＣＮを受け取ったｉＳＮＳクライアントは、ｉＳＮＳに対しどのような変更があったか問い合わせるクエリＴ４０を発行し、レスポンスＴ５０として更新されたターゲット情報を入手する。以上が、ｉＳＮＳサーバの基本的動作である。
【００４６】
図４は、ストレージ１０Ａが各ターゲット毎に管理するイニシエータ情報管理テーブル１０００の構成の一例を示す説明図である。イニシエータ情報管理テーブル１０００は、ターゲット機能１２２がホストのイニシエータと通信するために必要なイニシエータ情報を格納するテーブルであり、制御メモリ１３０上に格納され、管理サーバ５０およびターゲット機能１２２によってホスト情報の追加・更新が行なわれる。
【００４７】
イニシエータ情報は、内部的な処理で利用するインデックス、ホストイニシエータを識別するｉＳＣＳＩネーム、ＩＰアドレスおよび認証情報から構成される。予め管理サーバ５０から、当該ターゲットへアクセス可能なホストイニシエータについてｉＳＣＳＩネームと認証情報を登録する。ホストイニシエータが当該ターゲット機能へのアクセス開始のためにログインを行なった際に、ログイン受信処理にてログインを許可した場合ホストのＩＰアドレスを格納する。ログイン受信処理の詳細は図６で説明する。
【００４８】
図４の例では、イニシエータ情報管理テーブルにはイニシエータ情報１０１０および１０２０が格納されている。
【００４９】
ホスト１０Ａのイニシエータ２２０に対応するイニシエータ情報１０１０は、
インデックス＝１０Ａ、ｉＳＣＳＩネーム＝ｃｏｍ．ｈｉｔａｃｈｉ．ｓｅｒｖｅｒ−００１、ＩＰアドレスが１９２．１６８．０．１０、
であり、イニシエータ認証情報が認証プロトコルとしてＣＨＡＰ（Ｃｈａｌｌｅｎｇｅ  Ｈａｎｄｓｈａｋｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）を使用しそのシークレット（パスワードの役割を果たす）がａｂｃｄｅｆである。
【００５０】
ホスト１０Ｂのイニシエータ２２０に対応するイニシエータ情報１０２０は、
インデックス＝１０Ｂ、ｉＳＣＳＩネーム＝ｃｏｍ．ｈｉｔａｃｈｉ．ｓｅｒｖｅｒ−００２、ＩＰアドレスが１９２．１６８．０．２０、
であり、イニシエータ認証情報は認証を特に必要としない（ｎｏｎｅ）。
【００５１】
図５は、ストレージ１０Ａが各ターゲット毎に管理するターゲット情報管理テーブル１１００の構成の一例を示す説明図である。ターゲット情報管理テーブル１１００は、ターゲット機能が動作するために必要な情報を格納するテーブルであり、制御メモリ１３０上に格納され、管理サーバ５０、ターゲット機能１２２、データ移行管理機能１２８によってターゲット情報の追加・更新が行なわれる。
【００５２】
ターゲット情報は、内部的な処理で利用するインデックス、ＬＵマッピング（後述）、ターゲットを識別するｉＳＣＳＩネーム、ＩＰアドレス、通信中のホストイニシエータ、データの移行状態、移行先アドレス、移行先ＬＵから構成される。
【００５３】
予め管理サーバ５０から、ターゲットを定義するためにＬＵマッピング、ｉＳＣＳＩネーム、ＩＰアドレスを設定しておく。なおターゲット定義の当初、通信中のホストイニシエータは無し、データ移行状態はデータ移行を行なっていない状態であり（ｎｏｔ  ｍｉｇｒａｔｉｎｇ）、移行先のアドレスやＬＵは未定義である（Ｎ／Ａ）。
【００５４】
図５の例では、ターゲット情報管理テーブルにはターゲット情報１１１０および１１２０が格納されている。
【００５５】
ターゲット機能２０Ａに対応するターゲット情報１１１０は、
インデックス＝２０Ａ、ｉＳＣＳＩネーム＝ｃｏｍ．ｈｉｔａｃｈｉ．ｒａｉｄ−００１、現在のＩＰアドレスが１９２．１６８．０．１００、
である。また、ＬＵマッピングとしてＬＵＮ＝６のＬＵが割り当てられている。これはホストイニシエータがターゲット機能２０Ａへログインした場合、ストレージシステム１０ＡのＬＵＮ＝６で示される記憶領域へのアクセスが可能であることを示す。
【００５６】
また、通信中のイニシエータの内部インデックスは、１０Ａである。
【００５７】
さらにまた、データ移行に関しては移行状態がコピー中（Ｄａｔａ  ｍｏｖｉｎｇ）であり、移行先のアドレスは１９２．１６８．０．１１０、移行先ではＬＵＮ＝１のＬＵが割り当てられている。
【００５８】
移行状態がコピー中の場合、ターゲット機能は、移行先へのＬＵのコピーを行なうと共に、既にコピーされた領域に対するホストイニシエータから更新されたブロックを記憶しておく。データ移行処理の詳細は、図７で説明する。
【００５９】
ターゲット機能２０Ｂに対応するターゲット情報１１２０は、
インデックス＝２０Ｂ、ｉＳＣＳＩネーム＝ｃｏｍ．ｈｉｔａｃｈｉ．ｒａｉｄ−００２、ＩＰアドレスが１９２．１６８．０．１０１、
である。また、ＬＵマッピングとしてＬＵＮ＝７のＬＵが割り当てられている。これはホストイニシエータがターゲット機能２０Ｂへログインした場合、ストレージシステム１０ＡのＬＵＮ＝７で示される記憶領域へのアクセスが可能であることを示す。
【００６０】
さらにまた、データ移行に関してはデータ移行を行なっていない状態であり（ｎｏｔ  ｍｉｇｒａｔｅ）、移行先のアドレスやＬＵは未定義である（Ｎ／Ａ）。
【００６１】
［通信処理の動作］
図６および図７は、第１の実施形態におけるプロトコル制御処理を示すフローチャートの一例である。なお移行先ターゲットすなわちストレージ１０Ｂのターゲット機能１２２は、通常のｉＳＣＳＩターゲット機能を持ち、特別な追加機能を必要としない。
【００６２】
図６は、第１の実施形態におけるストレージ１０Ａのログイン受信処理を示すフローチャートである。この処理は、プロセッサ１２０が、制御メモリ１３０に記憶されたターゲット機能１２２を実行することにより行なわれる。ストレージシステム１０は、ネットワーク３０からｉＳＣＳＩログイン命令（以下、「ログイン命令」と記述）を受信するとログイン受信処理を開始する（Ｓ１００）。
【００６３】
ログイン命令には、ログイン命令の発行元でありログインを要求しているホストイニシエータを識別するｉＳＣＳＩネームが格納されているが、ターゲット機能１２２は受信したログイン命令に格納されているｉＳＣＳＩネームから当該イニシエータがイニシエータ情報管理テーブル１０００に格納されているか否かの判定を行なう（Ｓ１１０）。
【００６４】
Ｓ１１０でログインを要求しているホストイニシエータがイニシエータ情報管理テーブルに格納されていない場合は、ホストイニシエータに対しログインの拒絶を応答する（Ｓ１６０）。
【００６５】
Ｓ１１０でログインを要求しているホストイニシエータがイニシエータ情報管理テーブルに格納されている場合は、イニシエータ情報管理テーブルに格納されている認証情報によりログイン認証処理を行ない（Ｓ１２０）、認証成功か否かの判定を行なう（Ｓ１３０）。認証が失敗した場合は、ホストに対しログインの拒絶を応答する（Ｓ１６０）。
【００６６】
Ｓ１３０で認証が成功した場合は、イニシエータ情報管理テーブルに、当該ホストイニシエータのＩＰアドレスを格納すると共にターゲット情報管理テーブルの通信中イニシエータとして当該ホストイニシエータのインデックスを追加し（Ｓ１４０）、イニシエータへログイン許可の応答をする（Ｓ１５０）。イニシエータのＩＰアドレスは、ログイン命令が格納されたＩＰパケットのヘッダ情報から取得する。ログイン受信処理はＳ１５０で終了だが、その後、イニシエータからの命令に応じデータの格納や読み出しを行なう。
【００６７】
図７は、第１の実施形態におけるデータ移行処理を示すフローチャートである。この処理は、プロセッサ１２０が、制御メモリ１３０に記憶されたデータ移行機能１２８をターゲット機能１２２、イニシエータ機能１２４、ｉＳＮＳクライアント機能と連動しながら実行することにより行なわれる。
【００６８】
ストレージシステム１０Ａは、管理サーバ５０からデータ移行指示を受信するとデータ移行処理を開始する（Ｓ２００）。このデータ移行処理は、移行元のターゲットを示すｉＳＣＳＩネーム、移行先のターゲットのＩＰアドレス、移行先のターゲットでのＬＵマッピング情報を含む。
【００６９】
まず、データ移行機能１２８はイニシエータ機能１２４を用いて、移行先ターゲットへログインする（Ｓ２１０）。ここで、移行先ターゲットのｉＳＣＳＩネームは移行元ターゲットと同じである。
【００７０】
次いで、データ移行機能１２８は、イニシエータ機能１２４を用いて、移行元ＬＵの内容を全て移行先ＬＵへコピーする。このコピーにはＳＣＳＩのライト命令を用い、ＬＵ内の各ブロックを順にライトすることで行なう。コピー中、移行元ターゲット（移行元ＬＵ）に対してホストイニシエータ２２０からデータの更新が有り得るが、既にコピーされた領域に対する更新は、更新されたブロックを記憶しておく（Ｓ２２０）。
【００７１】
移行対象であるＬＵの全領域のコピーが終了したら、データ移行機能１２８は、移行元のターゲット機能１２２に対し新規の更新命令はリジェクトするよう指示すると共に、イニシエータ機能１２４を用い、Ｓ２３０で記憶しておいたコピー後にイニシエータから更新されたブロックを移行先へ反映するために、それらのブロックの内容を移行先へライトする（Ｓ２３０）。
【００７２】
そして、データ移行機能１２８は、ｉＳＮＳクライアント機能１２６を用い、予めｉＳＮＳサーバに登録されている移行元ターゲットの登録を変更する。すなわち、登録されているＩＰアドレスを移行先のＩＰアドレスへ変更する（Ｓ２４０）。登録変更が終了したら、変更内容の確認のために、ｉＳＮＳサーバの当該ｉＳＣＳＩネームの登録内容を参照してＩＰアドレスが変更されていることを確認しても良い。
【００７３】
各ホストイニシエータ２２０はｉＳＮＳからのＳＣＮを受信するが、移行元ターゲットとの通信を行なっているホストイニシエータ２２０については、移行先ターゲットへの通信に切り替えられず、移行元ターゲットへの通信が継続されると考えられる。これについては、次のステップＳ２５０で対処する。なお、通信を行なっていないホストイニシエータ２２０に関しては、この時点でターゲットの移行が行なわれている。すなわち、それらのホストイニシエータ２２０は、これ以後、当該ｉＳＣＳＩネームで識別されるｉＳＣＳＩターゲットは移行先ＩＰアドレスでアクセスするものとし、新規ログインを移行先ターゲットに対して行なう。また、移行元ターゲット機能は、Ｓ２００〜Ｓ２４０の処理の間は、ホストイニシエータ２２０からのアクセス要求を通常のｉＳＣＳＩターゲットが処理するのと同様に処理する。すなわち移行元ターゲットは、Ｓ２００〜Ｓ２４０をホストイニシエータ２２０からのアクセスを処理するバックグラウンドで平行して行なう。
【００７４】
その後、データ移行機能１２８は、移行元ターゲット機能１２２に対し（１）通信中のホストイニシエータ２２０とのコネクション切断、（２）再接続要求の拒絶、（３）新規ログインのリジェクトないし無視を指示する（Ｓ２５０）。コネクション中断は、具体的にはＴＣＰコネクションの切断であり、ＴＣＰ  ＦＩＮまたはＴＣＰ  ＲＳＴの送信を行なう。再接続要求の拒絶は、具体的にはイニシエータ２２０が再度ＴＣＰコネクション確立要求（ＴＣＰ  ＳＹＮ）を送信して来た場合にも再度ＴＣＰ  ＦＩＮまたはＴＣＰ  ＲＳＴの送信を行なう。通信中のホストイニシエータ２２０が複数あった場合は、全てに対しでこれらの処理を行なう。これにより、ホストイニシエータ２２０と移行元ターゲットの通信は中断する。ホストイニシエータ２２０は、変更されたｉＳＮＳの内容に基づいて移行先ターゲットに対しコネクション接続を行ない、通信中断以前のターゲットへのアクセスを引き続き行なう。このコネクション接続は、ホストイニシエータ２２０の障害回復機能の一環で実行されることが期待され、コネクション切断から１秒程度でアクセスが継続される。
【００７５】
その後、データ移行処理を終了する（Ｓ２６０）。図中省略しているが、ここでイニシエータ機能１２４は、移行先ターゲットに対してログアウト処理を行なう。
【００７６】
本実施形態では、データ移行時に移行元ターゲットと通信しているホストイニシエータとの通信を、移行元ターゲットから中断することによって、ホストイニシエータのＴＣＰ層でのコネクション回復が移行先ターゲットへのログインとして行なわれる。
【００７７】
一般に、こうしたコネクション回復処理は、高速に（１秒以下で）行なわれることが期待できる。回復時には、移行先ターゲットのＩＰアドレスに対してｉＳＣＳＩログインを行ない、ホストのアプリやＯＳにとっては、回復中すなわちターゲット切り替え中のアクセスが待たされる以外の影響を及ぼさない。
【００７８】
通信中のホストイニシエータの判別は、ターゲット情報管理テーブル１１００の移行元ターゲットのターゲット情報の通信中イニシエータのインデックスを参照する。
【００７９】
図１４は、第１の実施形態のデータ移行における装置間通信を示す説明図である。図の縦方向は時間の経緯を示し、矢印は通信を示す。移行元ターゲット、イニシエータ機能およびデータ移行機能１２４を図中では１２２Ｘとし、移行先ターゲットを１２２Ｙとする。
【００８０】
まず管理サーバ５０が、データ移行指示Ｔ１００を移行元ターゲット１２２Ｘへ送信する。移行元ターゲットは、これをイニシエータ機能へ渡し、図７で説明したデータ移行処理が開始される。すなわち、移行先ターゲット１２２Ｙに対しログインを行ない（Ｔ１１０、図７のＳ２１０）、移行元ＬＵを移行先へコピーし、コピー中に更新されたデータ（差分データ）を移行先ＬＵへ反映する（Ｔ１２０、図７のＳ２２０〜Ｓ２３０）。
【００８１】
その後ｉＳＮＳサーバへ、当該ターゲットのＩＰアドレスの登録変更を行ない（Ｔ１３０〜Ｔ１４０、図７のＳ２４０）、通信中のホストのイニシエータ２２０とのコネクションを切断する（Ｔ１５０）。図では省略しているが、ホストイニシエータ２２０は、移行元ターゲットに対しＴ１５０が発行されるまでの間通常のアクセスを行なっている。Ｔ１５０でイニシエータ２２０との通信を中断した後、もしホストイニシエータ２２０から再接続要求（Ｔ１６０）があった場合にも、移行元ターゲットは再接続を拒絶する（Ｔ１７０、図７のＳ２５０）。
【００８２】
これにより、ホストイニシエータ２２０は、ｉＳＮＳサーバからＳＣＮであるＴ１４０にて通知されたＩＰアドレスに対してログインを行ない（Ｔ１８０）、Ｔ１５０によって通信が切断された続きの処理を継続する（Ｔ１９０）。
【００８３】
このように、第１の実施形態はアプリに意識させることなく短時間で、異なるストレージ間にてターゲットの切替を実現する。ホストに期待するのはＴＣＰ層のコネクション回復機能だけであり、これは必ず通常のイニシエータの一部として実現されているため、特別なパス切り替えおよびストレージ切り替え機能は必要としない。また、移行先ターゲットは通常のｉＳＣＳＩターゲット機能を持てば良い。
【００８４】
＜＜第２の実施形態＞＞
第２の実施形態では第１の実施形態と異なり、ストレージ１０Ｂからストレージ１０Ａへターゲットを切り替える。また、まずターゲットを切り替えてから移行先ターゲットがホストからのアクセスを処理しているバックグラウンドでデータ移行を実行する点も特徴である。
【００８５】
［システムの構成］
第２の実施形態における電子計算機システム１（１Ｂ）のＨ／Ｗ構成は、第１の実施形態のそれと同じである。
【００８６】
図８は、第２の実施形態の電子計算機システム１Ｂのモジュール構成を示す説明図である。ストレージ１０Ｂは、ターゲット機能１２２を制御するコネクション切断機能１２９を持つ。またストレージ１０Ａのデータ移行機能を１２８Ｂとする。それ以外の各構成要素は第１の実施形態における図３と同様である。
【００８７】
［通信処理の動作］
図９は、第２の実施形態におけるデータ移行処理を示すフローチャートである。なおストレージ１０Ａのログイン受信処理は、第１の実施形態（図６）と同様である。
【００８８】
このデータ移行処理は、プロセッサ１２０が、制御メモリ１３０に記憶されたデータ移行機能１２８Ｂをターゲット機能１２２、イニシエータ機能１２４、ｉＳＮＳクライアント機能１２６と連動しながら実行することにより行なわれる。
【００８９】
ストレージシステム１０Ａは、管理サーバ５０からデータ移行指示を受信するとデータ移行処理を開始する（Ｓ３００）。このデータ移行処理は、移行元のターゲットを示すｉＳＣＳＩネーム、移行元のターゲットのＩＰアドレス、移行元のターゲットでのＬＵマッピング情報を含む。
【００９０】
まず、データ移行機能１２８Ｂは、イニシエータ機能１２４を用いて、移行元ターゲットへログインする（Ｓ３１０）。ここで、移行元ターゲットのｉＳＣＳＩネームは移行先ターゲットと同じである。
【００９１】
次いで、データ移行機能１２８Ｂは、ｉＳＮＳクライアント機能１２６を用い、予めｉＳＮＳサーバに登録されている移行元ターゲットの登録を変更する。すなわち、登録されているＩＰアドレスを移行先のＩＰアドレスへ変更する（Ｓ３２０）。登録変更が終了したら、変更内容の確認のために、ｉＳＮＳサーバの当該ｉＳＣＳＩネームの登録内容を参照してＩＰアドレスが変更されていることを確認しても良い。
【００９２】
ホストのイニシエータ２２０は、ｉＳＮＳからのＳＣＮを受信するが、移行元ターゲットとの通信を行なっているイニシエータ２２０については、移行先ターゲットへの通信に切り替えられず、移行元ターゲットへの通信が継続されると考えられる。これについては、次のステップＳ３３０で対処する。なお、通信を行なっていないイニシエータ２２０に関しては、この時点でターゲットの移行が行なわれている。すなわち、それらのイニシエータ２２０は、これ以後、当該ｉＳＣＳＩネームで識別されるｉＳＣＳＩターゲットは移行先ＩＰアドレスでアクセスされるものとし、新規ログインは移行先ターゲットに対して行なわれる。
【００９３】
その後、データ移行機能１２８Ｂは、移行元ターゲットのコネクション切断機能１２９に対し（１）通信中のホストのイニシエータとのコネクション切断、（２）再接続要求の拒絶、（３）新規ログインのリジェクトないし無視を指示する（Ｓ３３０）。コネクション中断は、具体的にはＴＣＰコネクションの切断であり、ＴＣＰ  ＦＩＮまたはＴＣＰ  ＲＳＴの送信を行なう。再接続要求の拒絶は、具体的にはイニシエータ２２０が再度ＴＣＰコネクション確立要求（ＴＣＰ  ＳＹＮ）を送信して来た場合にも、再度ＴＣＰ  ＦＩＮまたはＴＣＰ  ＲＳＴの送信を行なう。通信中のイニシエータ２２０が複数あった場合は、全てに対してこれらの処理を行なう。これにより、イニシエータ２２０と移行元ターゲットの通信は中断する。イニシエータ２２０は変更されたｉＳＮＳの内容に基づいて移行先ターゲットに対しコネクション接続を行ない、通信中断以前のターゲットへのアクセスを引き続き行なう。このコネクション接続は、ホストのイニシエータの障害回復機能の一環で実行されることが期待され、コネクション切断から１秒程度でアクセスが継続される。
【００９４】
その後、データ移行機能１２８Ｂは、イニシエータ機能１２４を用いて、移行元ＬＵの内容を全て移行先ＬＵへコピーする。このコピーにはＳＣＳＩのリード命令を用い、ＬＵ内の各ブロックを順にリードすることで行なう。この処理は、ホストからのアクセスと平行して行なう。コピー中、当該ＬＵに対してホストからデータの更新が有り得るが、まだコピーされていない領域に対する更新があった場合は、更新されたブロックへの移行元ＬＵからのリードを行なわない。また、まだコピーされていない領域に対するホストのイニシエータ２２０からのリード要求があった場合、当該領域を優先して移行元ＬＵからコピーする（Ｓ３４０）。
【００９５】
移行対象であるＬＵの全領域のコピーが終了したら、データ移行機能１２８Ｂはデータ移行処理を終了する（Ｓ３５０）。図中省略しているが、ここでイニシエータ機能１２４は、移行元ターゲットに対してログアウト処理を行なう。
【００９６】
このように、第２の実施形態も、アプリに意識させることなく短時間で、異なるストレージ間にてターゲットの切替を実現する。ホストに期待するのはＴＣＰ層のコネクション回復機能だけであり、これは必ず通常のイニシエータの一部として実現されているため、特別なパス切り替えおよびストレージ切り替え機能を必要としない。また、移行元ターゲットは、通常のｉＳＣＳＩターゲット機能に加え、コネクション切断機能１２９を備える必要がある。
【００９７】
＜＜第３の実施形態＞＞
第３の実施形態では、第１第２の実施形態と異なり、ストレージ１０Ａのポートから同じストレージ１０Ａの異なるストレージコントローラ上のポートへターゲットを切り替える。同一ストレージ内での切り替えなので、第１第２の実施形態と比べて、ＬＵのコピーにかかる時間が短い点が特徴である。コントローラ間の負荷分散を図る目的などに適用可能である。
【００９８】
［システムの構成］
第３の実施形態における電子計算機システム１（１Ｃ）のＨ／Ｗ構成は、第１の実施形態のＨ／Ｗ構成からストレージ１０Ｂを差し引いた構成である。
【００９９】
図１０は、第３の実施形態の電子計算機システム１（１Ｃ）のモジュール構成を示す説明図である。ストレージ１０Ａのデータ移行機能を１２８Ｃとする。第１第２の実施形態と異なり、ストレージ間の通信でＬＵをコピーする必要が無いため、ストレージ１０Ａにはイニシエータ機能は必要無い。それ以外の各構成要素は、第１の実施形態における図３と同様である。
【０１００】
［通信処理の動作］
図１１は、第３の実施形態におけるデータ移行処理を示すフローチャートの一例である。なおストレージ１０Ａのログイン受信処理は、第１の実施形態（図６）と同様である。このデータ移行処理は、プロセッサ１２０が、制御メモリ１３０に記憶されたデータ移行機能１２８Ｃをターゲット機能１２２、ｉＳＮＳクライアント機能１２６と連動しながら実行することにより行なわれる。
【０１０１】
ストレージシステム１０Ａは、管理サーバ５０からデータ移行指示を受信するとデータ移行処理を開始する（Ｓ４００）。このデータ移行処理は、移行元のターゲットを示すｉＳＣＳＩネーム、移行先のターゲットのＩＰアドレス、移行先のターゲットでのＬＵマッピング情報を含む。
【０１０２】
まず、データ移行機能１２８Ｃは、移行元ＬＵの内容を全て移行先ＬＵへコピーする。このコピーは、装置内のデータ複製機能を用いる（Ｓ４１０）。コピー中、移行元ターゲット（移行元ＬＵ）に対してホストイニシエータ２２０からデータの更新が有り得るが、既にコピーされた領域に対する更新は、更新されたブロックを記憶しておく（Ｓ４２０）。
【０１０３】
移行対象であるＬＵの全領域のコピーが終了したら、データ移行機能１２８は、移行元のターゲット機能１２２に対し新規の更新命令はリジェクトするよう指示すると共に、イニシエータ機能１２４を用い、Ｓ４２０で記憶しておいたコピー後にイニシエータから更新されたブロックを移行先へ反映するために、それらのブロックの内容を移行先へライトする。
【０１０４】
そして、データ移行機能１２８Ｃは、ｉＳＮＳクライアント機能１２６を用い、予めｉＳＮＳサーバに登録されている移行元ターゲットの登録を変更する。すなわち、登録されているＩＰアドレスを移行先のＩＰアドレスへ変更する（Ｓ４３０）。登録変更が終了したら、変更内容の確認のために、ｉＳＮＳサーバの当該ｉＳＣＳＩネームの登録内容を参照してＩＰアドレスが変更されていることを確認しても良い。
【０１０５】
各ホストイニシエータ２２０はｉＳＮＳからのＳＣＮを受信するが、移行元ターゲットとの通信を行なっているホストイニシエータ２２０については、移行先ターゲットへの通信に切り替えられず、移行元ターゲットへの通信が継続されると考えられる。これについては次のステップＳ４４０で対処する。なお、通信を行なっていないホストイニシエータ２２０に関しては、この時点でターゲットの移行が行なわれている。すなわち、それらのホストイニシエータ２２０は、これ以後、当該ｉＳＣＳＩネームで識別されるｉＳＣＳＩターゲットは移行先ＩＰアドレスでアクセスするものとし、新規ログインを移行先ターゲットに対して行なう。また、移行元ターゲット機能は、Ｓ４００〜Ｓ４３０の処理の間はホストイニシエータ２２０からのアクセス要求を通常のｉＳＣＳＩターゲットが処理するのと同様に処理する。すなわち移行元ターゲットは、Ｓ４００〜Ｓ４３０をホストイニシエータ２２０からのアクセスを処理するバックグラウンドで平行して行なう。
【０１０６】
その後、データ移行機能１２８Ｃは、移行元ターゲット機能１２２に対し（１）通信中のホストイニシエータ２２０とのコネクション切断、（２）再接続要求の拒絶、（３）新規ログインのリジェクトないし無視を指示する（Ｓ４４０）。コネクション中断は、具体的にはＴＣＰコネクションの切断であり、ＴＣＰ  ＦＩＮまたはＴＣＰ  ＲＳＴの送信を行なう。再接続要求の拒絶は、具体的にはイニシエータ２２０が再度ＴＣＰコネクション確立要求（ＴＣＰ  ＳＹＮ）を送信して来た場合にも、再度ＴＣＰ  ＦＩＮまたはＴＣＰ  ＲＳＴの送信を行なう。通信中のホストイニシエータ２２０が複数あった場合は、全てに対してこれらの処理を行なう。これにより、ホストイニシエータ２２０と移行元ターゲットの通信は中断する。ホストイニシエータ２２０は、変更されたｉＳＮＳの内容に基づいて移行先ターゲットに対しコネクション接続を行ない、通信中断以前のターゲットへのアクセスを引き続き行なう。このコネクション接続は、ホストイニシエータ２２０の障害回復機能の一環で実行されることが期待され、コネクション切断から１秒程度でアクセスが継続される。その後、データ移行処理を終了する（Ｓ４５０）。
【０１０７】
このように、第３の実施形態も、アプリに意識させることなく短時間で同一ストレージ内でのターゲットの切替を実現する。これは、ホストからみればターゲットへアクセスするパスの切り替えとも受け取れる。ホストに期待するのはＴＣＰ層のコネクション回復機能だけであり、これは必ず通常のイニシエータの一部として実現されているため、特別なパス切り替えおよびストレージ切り替え機能は必要としない。また、移行先ターゲットは、通常のｉＳＣＳＩターゲット機能を持てば良い。
【０１０８】
＜＜第４の実施形態＞＞
第４の実施形態では第１〜第３の実施形態と異なり、イニシエータに対してターゲットに関連付けられたＩＰアドレスの変更を報せる手段としてｉＳＮＳサーバを用いない。その代わりに、イニシエータにはパス制御機能２４０が必要であり、予めターゲットの移行元アドレスと移行先アドレスを登録しておく。たとえば移行元アドレスは通常アクセス用のパス、移行先アドレスは交替用パスとして登録しておく。
【０１０９】
ホストイニシエータからは移行元ターゲットへ通信を確立しておくが、予め移行先ターゲットへも通信を確立しておく必要があるか否かはイニシエータのパス制御機能２４０に依存する。たとえば、パス制御機能２４０が「通信中のパスに障害が発生した場合、予め登録してある交替用パスを確立して、障害発生で中断したアクセスを継続する」といった仕様の場合は、予め交替用パスを確立しておく必要が無い。
【０１１０】
［システムの構成］
第４の実施形態における電子計算機システム１（１Ｄ）のＨ／Ｗ構成は第３の実施形態と同じく、１の実施形態のＨ／Ｗ構成からストレージ１０Ｂを差し引いた構成である。
【０１１１】
図１２は、第４の実施形態の電子計算機システム１（１Ｄ）のモジュール構成を示す説明図である。本実施例では、ターゲット１２２およびＬＵ１８２は移行元と移行先が同一である。ホストに対してターゲット１２２へアクセスするアドレスがポート１１０のＩＰアドレスから別のポート１１０ＣのＩＰアドレスへ変更するよう切り替えさせる。そのため、データ移行機能１２８の代わりにパス切り替え機能１２８Ｄをストレージ１０Ａは持つ。また、ホスト２０では、ホストイニシエータ機能２２０とアプリ２３０の間に前述のパス制御機能２４０がある。それ以外の各構成要素は、第３の実施形態と同様である。
【０１１２】
［通信処理の動作］
図１３は、第４の実施形態におけるパス切り替え処理を示すフローチャートの一例である。なおストレージ１０Ａのログイン受信処理は、第１の実施形態（図６）と同様である。このデータ移行処理は、プロセッサ１２０が、制御メモリ１３０に記憶されたパス切り替え機能１２８Ｄをターゲット機能１２２と連動しながら実行することにより行なわれる。
【０１１３】
ストレージシステム１０Ａは、管理サーバ５０からパス切り替え指示を受信すると、パス切り替え処理を開始する（Ｓ５００）。このパス切り替え処理は、移行元のターゲットを示すｉＳＣＳＩネーム、パスの移行元のポートおよび移行先のポートを識別する情報を含む。ポートの識別情報としては、たとえばストレージ装置２０Ａにて通番で管理されているポート番号とする。
【０１１４】
次にパス切り替え機能１２８Ｄは、Ｓ５００で指定されたパス切り替え対象ターゲットのパス切り替え先ポートに対し、処理開始を指示する（Ｓ５１０）。
【０１１５】
その次に、パス切り替え機能１２８Ｄは、Ｓ５００で指定されたパス切り替え対象ターゲットのパス切り替え元ポートに対し、（１）通信中のホストイニシエータとのコネクション切断、（２）再接続要求は拒絶、（３）新規ログインはリジェクトを指示する（Ｓ５２０）。コネクション中断は、具体的にはＴＣＰコネクションの切断であり、ＴＣＰ  ＦＩＮまたはＴＣＰ  ＲＳＴの送信を行なう。再接続要求の拒絶は、具体的にはイニシエータ２２０が再度ＴＣＰコネクション確立要求（ＴＣＰ  ＳＹＮ）を送信して来た場合にも、再度ＴＣＰ  ＦＩＮまたはＴＣＰ  ＲＳＴの送信を行なう。通信中のホストイニシエータ２２０が複数あった場合は、全てに対しでこれらの処理を行なう。これにより、ホストイニシエータ２２０とターゲットの、切り替え元パスを用いた通信は中断する。ホストイニシエータ２２０は、パス制御機能２４０に予め登録された内容に基づいて交替用パスに対しコネクション接続を行ない、通信中断以前のターゲットへのアクセスを引き続き行なう。このコネクション接続は、パス制御機能２４０の機能の一環で高速に実行されることが期待される。その後、データ移行処理を終了する（Ｓ４５０）。
【０１１６】
このように、第４の実施形態では、ホストにはパス制御機能２４０および予め複数パスの登録が必要であるものの、データ移行を伴わずに、アプリに意識させることなく短時間でターゲットへアクセスするパスの切替を実現する。
【０１１７】
本発明の実施形態は、さらに様々な変形例をもつ。たとえば、第１の実施形態ではイニシエータと移行元ターゲットの通信を中断するために移行元ターゲットからＴＣＰ  ＦＩＮ信号またはＴＣＰ  ＲＳＴ信号を送信したが、これはｉＳＣＳＩ層にてイニシエータのログアウト命令を要求する非同期メッセージである、ｉＳＣＳＩログアウト要求ＰＤＵ送信に換えても良い。
【０１１８】
また、第４の実施形態は異なる装置間のターゲットの切り替えとして（第１第２の実施形態と同様に、ｉＳＣＳＩイニシエータ機能と適当なデータ移行処理を追加して）実現し、ｉＳＮＳ無しの計算機システムでのターゲット切り替え手段としても良い。
【０１１９】
また、第３第４の実施形態では、同一ストレージ装置内のそれぞれ別コントローラに属するポート間での切り替えであったが、同一コントローラに属するポート間の切り替えとしても同様である。すなわち移行元と移行先のターゲット機能は、同一のプロセッサ１２０上で実行される機能であっても良い。
【０１２０】
また、第３第４の実施形態では、第１の実施形態と同様に、バックグラウンドでＬＵのコピーを終了してからターゲットおよびパスの切り替えを実行するが、これの順番を第２の実施形態のように逆転し、ターゲットおよびパスの切り替えを実行してからバックグラウンドでＬＵのコピーを行なう形態としても良い。
【０１２１】
また、第３第４の実施形態では、移行元と移行先のポートが物理的に同じでも良い。すなわちポート１１０が複数のＩＰアドレスを持ち、イニシエータに対してターゲットを別のＩＰアドレスでアクセスさせるためにターゲット切り替えやパス切り替えを実行する形態としても良い。
【０１２２】
また、第１〜第３の実施形態はそれぞれｉＳＮＳサーバが複数あっても良い。
【０１２３】
また、各実施形態において、管理サーバはＩＰネットワーク３０に接続されストレージとの通信はポート１１０を経由して行なうとしたが、ストレージは管理サーバとの接続のためにホストとの通信以外のインタフェースすなわちポート１１０以外のインタフェースを持ち、管理サーバはＩＰネットワーク３０ではなくそのインタフェースと接続する形態としても良い。
【０１２４】
また、各実施形態は、図で示したＳＡＮの接続形態に限るものではなく、種々の接続形態に適用することが可能である。たとえば、ＩＰネットワーク３０はギガビットイーサネット（登録商標）上に構築せずその他のネットワークの上に構築しても良い。
【０１２５】
また、各実施形態において、１つのターゲットへ接続するイニシエータは複数であっても良い。
【０１２６】
また、各実施形態において、１つのターゲットは複数のＬＵがＬＵマッピングにて関連付けられていても良い。
【０１２７】
さらにまた、各実施形態において、ターゲット移行は、管理サーバからの指示ではなく予め決められたポリシによってストレージ装置内のデータ移行機能１２８やパス切り替え機能１２８Ｐによって開始されるように実現しても良い。
【０１２８】
本発明は、本質的に、階層状のプロトコル処理と、ネームサーバに基づくアクセス対象の管理と、ホストのアプリの通信継続性に対する考慮が必要なストレージシステムに対する適用が有効である。
【０１２９】
以上、本発明の実施形態について説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得る。また、本発明のすべての実施形態は、演算手段を用いて、計算機のプログラムを読み込んで実行することで実現される。
【０１３０】
本発明の他の実施形態１は、前記ストレージ装置は、前記ネームサーバにターゲットの識別子とポートのアドレスとを関連付けて登録する手段を有する計算機システムである。
【０１３１】
本発明の他の実施形態２は、前記ストレージ装置は、前記移行元ターゲットから前記移行先ターゲットにデータ移行を行なう手段を有し、前記データ移行手段の実行後に前記登録変更を実行する計算機システムである。
【０１３２】
本発明の他の実施形態３は、前記ストレージ装置は、前記移行元ターゲットから前記移行先ターゲットにデータ移行を行なう手段を有し、前記データ移行手段の実行前に前記登録変更を実行する計算機システムである。
【０１３３】
本発明の他の実施形態４は、前記通信手段切り替え要因が、前記移行元ポートの処理量が予め定められた値を越えた事の検出である計算機システムである。
【０１３４】
本発明の他の実施形態５は、前記識別子がｉＳＣＳＩネームであり、前記移行先ポートに属する前記ターゲットがｉＳＣＳＩターゲットであり、前記移行元ポートに属する前記ターゲットがｉＳＣＳＩターゲットである計算機システムである。
【０１３５】
本発明の他の実施形態６は、前記ストレージ装置は、その通信手段がＴＣＰコネクションであり、前記通信中止処理がＴＣＰ
ＦＩＮ送信である計算機システムである。
【０１３６】
本発明の他の実施形態７は、前記ストレージ装置は、その通信手段がＴＣＰコネクションであり、前記通信中止処理がＴＣＰ
ＲＳＴ送信である計算機システムである。
【０１３７】
本発明の他の実施形態８は、前記ストレージ装置は、その通信手段がｉＳＣＳＩコネクションであり、前記通信中止処理がｉＳＣＳＩログアウト要求送信である計算機システムである。
【０１３８】
本発明の他の実施形態９は、前記ストレージ装置は、通信中止処理を実施した後、前記ホスト計算機からの通信再開要求を拒絶する計算機システムである。
【０１３９】
本発明の他の実施形態１０は、前記ストレージ装置に、登録変更処理と、移行元ターゲットで成立中の全通信手段の切断処理の実行を指示する管理サーバを備える計算機システムである。
【０１４０】
本発明の他の実施形態１１は、ストレージ装置との使用パスの異常を見出すと、代替のパスを捜す機能を有する１つ以上のホスト計算機とネットワークで接続され、前記ホスト計算機とネームサーバとで計算機システムを構成するストレージ装置において、ポートを経由して前記ホスト計算機と所定の通信手段で通信するターゲットを有するとともに、前記ネームサーバへ登録された前記移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへ登録変更する手段と、前記登録変更処理の後に、移行元ターゲットで成立中の全通信手段を切断する手段とを有するストレージ装置である。
【０１４１】
本発明の他の実施形態１２は、前記ネームサーバにターゲットの識別子とポートのアドレスとを関連付けて登録する手段を有するストレージ装置である。
【０１４２】
本発明の他の実施形態１３は、前記移行元ターゲットから前記移行先ターゲットにデータ移行を行なう手段を有し、前記データ移行手段の実行後に前記登録変更を実行するストレージ装置である。
【０１４３】
本発明の他の実施形態１４は、前記登録変更処理と、移行元ターゲットで成立中の全通信手段の切断処理の実行の指示を、接続した管理サーバから受信するストレージ装置である。
【０１４４】
本発明の他の実施形態１５は、ストレージ装置との使用パスの異常を見出すと、代替のパスを捜す機能を有する１つ以上のホスト計算機と、該ホスト計算機とネットワークで接続され、ポートを経由して前記ホスト計算機と所定の通信手段で通信するターゲットを有する１つ以上のストレージ装置と、ネームサーバとで計算機システムを構成する管理サーバにおいて、前記ネームサーバへ登録された前記移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへの登録変更と、移行元ターゲットで成立中の全通信手段の切断処理の実行の指示を、前記ストレージ装置に指示する管理サーバである。
【０１４５】
本発明の他の実施形態１５は、ストレージ装置との使用パスの異常を見出すと、代替のパスを捜す機能を有する１つ以上のホスト計算機と、該ホスト計算機とネットワークで接続され、ポートを経由して前記ホスト計算機と所定の通信手段で通信するターゲットを有する１つ以上のストレージ装置と、ネームサーバと、を備える計算機システムにおける通信制御方法において、前記ネームサーバへ登録された前記移行元ターゲットの登録について関連付けられたアドレスを移行先ポートのアドレスへ登録変更することと、前記登録変更処理の後に、移行元ターゲットで成立中の全通信手段を切断することとを有する通信制御方法である。
【０１４６】
本発明の他の実施形態１６は、前記ネームサーバにターゲットの識別子とポートのアドレスとを関連付けて登録することを有する通信制御方法である。
【０１４７】
本発明の他の実施形態１７は、前記ストレージ装置は前記移行元ターゲットから前記移行先ターゲットにデータ移行を行なう手段を有しており、前記データ移行手段の実行後に前記登録変更を実行することを有する通信制御方法である。
【０１４８】
本発明の他の実施形態１８は、前記通信手段切り替え要因が前記移行元コントローラの障害検出である計算機システムである。
【０１４９】
本発明の他の実施形態１９は、別の計算機に対するデータ移行処理を実施するステップを含み、前記通信手段切り替え要因が、前記移行先ポートへのデータ移行処理終了である計算機システムである。
【０１５０】
本発明の他の実施形態２０は、前記通信中止処理後に別の計算機に対するデータ移行処理を実施するステップを含む計算機システムである。
【０１５１】
本発明の他の実施形態２１は、別の計算機に対するデータ移行処理を実施するステップを含み、前記通信手段切り替え要因が、前記移行先ポートへのデータ移行処理終了である通信制御方法である。
【０１５２】
本発明の他の実施形態２２は、ｉＳＣＳＩ通信手段を備えるストレージが実行する通信制御方法を記録した記憶媒体であり、移行先ポートに属するｉＳＣＳＩターゲットと同じｉＳＣＳＩネームを持つｉＳＣＳＩターゲットが属する移行元ポートを持つ計算機が実行する通信制御方法であって、前記識別子が関連付けられた前記ターゲットとホストとの間で成立中の通信手段について通信中止処理を実施するステップを含む通信制御方法を記録した記憶媒体である。
【図面の簡単な説明】
【０１５３】
【図１】第１の実施形態における電子計算機システム１のハードウェア構成を示す説明図。
【図２】第１の実施形態の電子計算機システム１Ａのモジュール構成を示す説明図。
【図３】ｉＳＮＳネームサーバの登録処理の一動作例を示す説明図。
【図４】第１の実施形態におけるイニシエータ情報管理テーブルを示す説明図。
【図５】第１の実施形態におけるターゲット情報管理テーブルを示す説明図。
【図６】第１の実施形態におけるログイン受信処理を示すフローチャート。
【図７】第１の実施形態におけるデータ移行処理を示すフローチャート。
【図８】第２の実施形態の電子計算機システム１Ｂのモジュール構成を示す説明図。
【図９】第２の実施形態におけるデータ移行処理を示すフローチャート。
【図１０】第３の実施形態の電子計算機システム１Ｃのモジュール構成を示す説明図。
【図１１】第３の実施形態におけるデータ移行処理を示すフローチャート。
【図１２】第４の実施形態の電子計算機システム１Ｄのモジュール構成を示す説明図。
【図１３】第４の実施形態におけるパス切り替え処理を示すフローチャート。
【図１４】第１の実施形態のデータ移行における装置間通信を示す説明図。
【図１５】ｉＳＣＳＩ通信を行なう装置のプロトコル階層と送受信データの関係を示す説明図。
【符号の説明】
【０１５４】
１    電子計算機システム
１０，１０Ａ，１０Ｂ    ストレージシステム
２０，２０Ａ，２０Ｂ    ホスト（サーバ装置）
３０    ネットワーク（ＩＰネットワーク）
４０    ネームサーバ（ｉＳＮＳサーバ）
５０    管理サーバ
１００Ａ１，１００Ａ２，１００Ｂ１，１００Ｂ２    ストレージコントローラ
１１０    ネットワークポート
１２０    プロセッサ
１３０    制御メモリ
１４０    データコントローラ
１５０    キャッシュメモリ
１６０    ディスクコントローラ
１８０    記憶装置（ディスクドライブ）
【図１】
2007140699.tif 000003
【図２】
2007140699.tif 000004
【図３】
2007140699.tif 000005
【図４】
2007140699.tif 000006
【図５】
2007140699.tif 000007
【図６】
2007140699.tif 000008
【図７】
2007140699.tif 000009
【図８】
2007140699.tif 000010
【図９】
2007140699.tif 000011
【図１０】
2007140699.tif 000012
【図１１】
2007140699.tif 000013
【図１２】
2007140699.tif 000014
【図１３】
2007140699.tif 000015
【図１４】
2007140699.tif 000016
【図１５】
2007140699.tif 000017