(57)【特許請求の範囲】
【請求項１】
外部装置から送られてくるデータＩ／Ｏ要求を受信する、一つ以上のチャネル基板と、
受信した前記データＩ／Ｏ要求に応じて、複数の記憶ドライブを備えて構成される記憶装置へのデータの書き込み、又は前記記憶装置からのデータの読み出しを行う、一つ以上のドライブ基板と、
前記記憶装置に書き込まれる書き込みデータもしくは前記記憶装置から読み出される読み出しデータが記憶される、キャッシュメモリと、
前記チャネル基板、前記ドライブ基板、及び前記キャッシュメモリのうちの少なくともいずれかの間で行われるデータ転送を担う、複数のプロセッサ基板と、
前記プロセッサ基板からアクセス可能な共有メモリと、
を備え、
前記プロセッサ基板は、マイクロプロセッサと、前記共有メモリに比べて前記マイクロプロセッサからのアクセス性能の高いローカルメモリとを有し、
前記記憶装置は、前記記憶ドライブの記憶領域を、論理的な記憶領域であるＬＤＥＶを単位として提供し、
前記チャネル基板は、前記プロセッサ基板の夫々について設定された前記ＬＤＥＶへのアクセス権であるオーナ権に従って設定された、前記ＬＤＥＶと前記プロセッサ基板との対応を示す情報を含むフレーム転送テーブルを記憶し、
前記プロセッサ基板の夫々は、自身が前記オーナ権を有する前記ＬＤＥＶにアクセスする際に参照する情報であるＬＤＥＶ制御情報を前記ローカルメモリに記憶し、
前記チャネル基板は、前記フレーム転送テーブルにおいて、前記データフレームに含まれている情報から特定される前記ＬＤＥＶに対応づけられている前記プロセッサ基板に、受信した前記データＩ／Ｏ要求を構成しているデータフレームを転送し、
前記フレーム転送テーブルには、前記ＬＤＥＶと前記プロセッサ基板との対応を示す前記情報として、前記ＬＤＥＶと一つ以上の前記マイクロプロセッサの集合であるプロセッサ集合との対応を示す情報が含まれており、
各前記プロセッサ集合には、前記ローカルメモリ内に排他制御不要な記憶領域がそれぞれ割り当てられているとともに、各前記プロセッサ集合内の前記マイクロプロセッサがデータ授受に使用することができる内部メモリが設けられており、
前記チャネル基板は、前記フレーム転送テーブルにおいて、前記データフレームに含まれている情報から特定される前記ＬＤＥＶに対応づけられている前記プロセッサ集合を有する前記プロセッサ基板の当該プロセッサ集合に、受信した前記データＩ／Ｏ要求を構成しているデータフレームを転送し、
前記プロセッサ基板は、前記プロセッサ集合の負荷情報を監視し、前記プロセッサ集合の負荷が均等になるように、前記フレーム転送テーブルにおける前記ＬＤＥＶと前記プロセッサ集合との対応を設定する
ストレージ装置。
【請求項２】
請求項１に記載のストレージ装置であって、
前記共有メモリ又は前記ローカルメモリに、前記オーナ権を示す情報であるＬＤＥＶオーナ権テーブルを記憶し、
前記共有メモリ又は前記ローカルメモリに、前記チャネル基板と、前記チャネル基板が備える前記外部装置と通信するためのポートと、前記ＬＤＥＶとを対応づけた関連付けテーブルを記憶し、
前記チャネル基板は、前記外部装置から、前記外部装置が当該ストレージ装置にログインするためのデータフレームであるログインフレームを受信すると、前記関連付けテーブルから取得される、前記ログインフレームを受信した、前記チャネル基板及び前記ポート番号に対応する前記ＬＤＥＶについて、前記ＬＤＥＶオーナ権テーブルから当該ＬＤＥＶのオーナ権を有する前記プロセッサ基板を特定することにより、前記ＬＤＥＶと前記プロセッサ基板との対応を取得し、取得した前記対応を前記フレーム転送テーブルに設定する
ストレージ装置。
【請求項３】
請求項２に記載のストレージ装置であって、
前記プロセッサ基板は、前記外部装置から、前記外部装置が当該ストレージ装置からログアウトするためのデータフレームであるログアウトフレームを受信すると、前記フレーム転送テーブルにおける、当該ログアウトフレームを送信してきた前記外部装置に関する、前記ＬＤＥＶと前記プロセッサ基板との対応を無効化する
ストレージ装置。
【請求項４】
請求項２に記載のストレージ装置であって、
前記共有メモリにアクセス可能な管理装置と通信可能に接続し、
前記ＬＤＥＶオーナ権テーブルは、前記管理装置によって設定可能である
ストレージ装置。
【請求項５】
請求項４に記載のストレージ装置であって、
前記ＬＤＥＶの夫々について、前記データＩ／Ｏ要求に基づく、前記ＬＤＥＶに対するジョブを実行中であるか否か示す情報が設定されるＬＤＥＶ使用中テーブルを記憶し、
前記ＬＤＥＶ使用中テーブルにおいて前記ＬＤＥＶについてジョブが実行中に設定されている場合に、当該ＬＤＥＶについての前記オーナ権の設定変更を抑止する、ＬＤＥＶオーナ権管理部をさらに備える
ストレージ装置。
【請求項６】
請求項４に記載のストレージ装置であって、
前記プロセッサ基板は、前記マイクロプロセッサの負荷情報を前記共有メモリに随時記憶し、
前記ＬＤＥＶオーナ権テーブルは、前記マイクロプロセッサの負荷が均等になるように、前記管理装置によって設定される
ストレージ装置。
【請求項７】
請求項１に記載のストレージ装置であって、
前記ＬＤＥＶ制御情報は、前記マイクロプロセッサから前記ＬＤＥＶに対する排他制御に関する情報、前記外部装置から前記ＬＤＥＶへのリザーブ要求の有無を示す情報、前記リザーブ要求を発行した前記外部装置を特定する情報、のうちの少なくともいずれかである
ストレージ装置。
【請求項８】
外部装置から送られてくるデータＩ／Ｏ要求を受信する、一つ以上のチャネル基板と、
受信した前記データＩ／Ｏ要求に応じて、複数の記憶ドライブを備えて構成される記憶装置へのデータの書き込み、又は前記記憶装置からのデータの読み出しを行う、一つ以上のドライブ基板と、
前記記憶装置に書き込まれる書き込みデータもしくは前記記憶装置から読み出される読み出しデータが記憶される、キャッシュメモリと、
前記チャネル基板、前記ドライブ基板、及び前記キャッシュメモリのうちの少なくともいずれかの間で行われるデータ転送を担う、複数のプロセッサ基板と、
前記プロセッサ基板からアクセス可能な共有メモリと、
を備え、
前記プロセッサ基板は、マイクロプロセッサと、前記共有メモリに比べて前記マイクロプロセッサからのアクセス性能の高いローカルメモリとを有し、
前記記憶装置は、前記記憶ドライブの記憶領域を、論理的な記憶領域であるＬＤＥＶを単位として提供するストレージ装置の制御方法であって、
前記チャネル基板が、前記プロセッサ基板の夫々について設定された前記ＬＤＥＶへのアクセス権であるオーナ権に従って設定された、前記ＬＤＥＶと前記プロセッサ基板との対応を示す情報を含むフレーム転送テーブルを記憶し、
前記プロセッサ基板の夫々が、自身が前記オーナ権を有する前記ＬＤＥＶにアクセスする際に参照する情報であるＬＤＥＶ制御情報を前記ローカルメモリに記憶し、
前記チャネル基板が、前記フレーム転送テーブルにおいて、前記データフレームに含まれている情報から特定される前記ＬＤＥＶに対応づけられている前記プロセッサ基板に、受信した前記データＩ／Ｏ要求を構成しているデータフレームを転送し、
前記フレーム転送テーブルには、前記ＬＤＥＶと前記プロセッサ基板との対応を示す前記情報として、前記ＬＤＥＶと一つ以上の前記マイクロプロセッサの集合であるプロセッサ集合との対応を示す情報が含まれており、
各前記プロセッサ集合には、前記ローカルメモリ内に排他制御不要な記憶領域がそれぞれ割り当てられているとともに、各前記プロセッサ集合内の前記マイクロプロセッサがデータ授受に使用することができる内部メモリが設けられており、
前記チャネル基板が、前記フレーム転送テーブルにおいて、前記データフレームに含まれている情報から特定される前記ＬＤＥＶに対応づけられている前記プロセッサ集合を有する前記プロセッサ基板の当該プロセッサ集合に、受信した前記データＩ／Ｏ要求を構成しているデータフレームを転送し、
前記プロセッサ基板は、前記プロセッサ集合の負荷情報を監視し、前記プロセッサ集合の負荷が均等になるように、前記フレーム転送テーブルにおける前記ＬＤＥＶと前記プロセッサ集合との対応を設定する
ストレージ装置の制御方法。
【請求項９】
請求項８に記載のストレージ装置の制御方法であって、
前記共有メモリ又は前記ローカルメモリは、前記オーナ権を示す情報であるＬＤＥＶオーナ権テーブルを記憶し、
前記共有メモリ又は前記ローカルメモリは、前記チャネル基板と、前記チャネル基板が備える前記外部装置と通信するためのポートと、前記ＬＤＥＶとを対応づけた関連付けテーブルを記憶し、
前記プロセッサ基板は、前記外部装置から、前記外部装置が当該ストレージ装置にログインするためのデータフレームであるログインフレームを受信すると、前記関連付けテーブルから取得される、前記ログインフレームを受信した、前記チャネル基板及び前記ポート番号に対応する前記ＬＤＥＶについて、前記ＬＤＥＶオーナ権テーブルから当該ＬＤＥＶのオーナ権を有する前記プロセッサ基板を特定することにより、前記ＬＤＥＶと前記プロセッサ基板との対応を取得し、取得した前記対応を前記フレーム転送テーブルに設定する
ストレージ装置の制御方法。
【請求項１０】
請求項９に記載のストレージ装置の制御方法であって、
前記プロセッサ基板は、前記外部装置から、前記外部装置が当該ストレージ装置からログアウトするためのデータフレームであるログアウトフレームを受信すると、前記フレーム転送テーブルにおける、当該ログアウトフレームを送信してきた前記外部装置に関する、前記ＬＤＥＶと前記プロセッサ基板との対応を無効化する
ストレージ装置の制御方法。
【請求項１１】
請求項９に記載のストレージ装置の制御方法であって、
前記共有メモリにアクセス可能な管理装置と通信可能に接続し、
前記ＬＤＥＶオーナ権テーブルは、前記管理装置によって設定可能であり、
前記ストレージ装置は、
前記ＬＤＥＶの夫々について、前記データＩ／Ｏ要求に基づく、前記ＬＤＥＶに対するジョブを実行中であるか否か示す情報が設定されるＬＤＥＶ使用中テーブルを記憶し、
前記ＬＤＥＶ使用中テーブルにおいて前記ＬＤＥＶについてジョブが実行中に設定されている場合に、当該ＬＤＥＶについての前記オーナ権の設定変更を抑止する
ストレージ装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置、及びストレージ装置の制御方法に関し、とくに外部装置からストレージ装置が受信するデータＩ／Ｏ要求を効率よく確実に処理するための技術に関する。
【背景技術】
【０００２】
例えば特許文献１には、複数のホストアダプタ、複数のディスクアダプタ、キャッシュメモリ、共有メモリ、及び記憶装置を備え、ホストアダプタは、ホストコンピュータとキャッシュメモリ間のデータ転送を制御し、ディスクアダプタは、キャッシュメモリと記憶装置との間のデータ転送を制御し、キャッシュメモリは、ホストコンピュータから受信したデータあるいは記憶装置から読み出したデータを一時的に保持し、共有メモリが、ホストアダプタとディスクアダプタとが共有する、記憶システムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−０１８５０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような構成からなるストレージ装置では、ホストアダプタやディスクアダプタを構成している特定のプロセッサへのＩ／Ｏ処理負荷の集中を防ぐため、適切に負荷分散を行う必要がある。またホストアダプタやディスクアダプタがＩ／Ｏ処理に際して参照する制御情報は、ホストアダプタやディスクアダプタが備えるメモリや共有メモリのアクセス性能を考慮して、適切に配置する必要がある。
本発明はこのような背景に鑑みてなされたもので、外部装置からストレージ装置が受信するデータＩ／Ｏ要求を効率よく確実に処理することが可能な、ストレージ装置、及びストレージ装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するための本発明の一つは、
外部装置から送られてくるデータＩ／Ｏ要求を受信する、一つ以上のチャネル基板と、
受信した前記データＩ／Ｏ要求に応じて、複数の記憶ドライブを備えて構成される記憶装置へのデータの書き込み、又は前記記憶装置からのデータの読み出しを行う、一つ以上のドライブ基板と、
前記記憶装置に書き込まれる書き込みデータもしくは前記記憶装置から読み出される読み出しデータが記憶される、キャッシュメモリと、
前記チャネル基板、前記ドライブ基板、及び前記キャッシュメモリのうちの少なくともいずれかの間で行われるデータ転送を担う、複数のプロセッサ基板と、
前記プロセッサ基板からアクセス可能な共有メモリと、
を備え、
前記プロセッサ基板は、マイクロプロセッサと、前記共有メモリに比べて前記マイクロプロセッサからのアクセス性能の高いローカルメモリとを有し、
前記記憶装置は、前記記憶ドライブの記憶領域を、論理的な記憶領域であるＬＤＥＶを単位として提供し、
前記チャネル基板は、前記プロセッサ基板の夫々について設定された前記ＬＤＥＶへのアクセス権であるオーナ権に従って設定された、前記ＬＤＥＶと前記プロセッサ基板との対応を示す情報を含むフレーム転送テーブルを記憶し、
前記プロセッサ基板の夫々は、自身が前記オーナ権を有する前記ＬＤＥＶにアクセスする際に参照する情報であるＬＤＥＶ制御情報を前記ローカルメモリに記憶し、
前記チャネル基板は、前記フレーム転送テーブルにおいて、前記データフレームに含まれている情報から特定される前記ＬＤＥＶに対応づけられている前記プロセッサ基板に、受信した前記データＩ／Ｏ要求を構成しているデータフレームを転送し、
前記フレーム転送テーブルには、前記ＬＤＥＶと前記プロセッサ基板との対応を示す前記情報として、前記ＬＤＥＶと一つ以上の前記マイクロプロセッサの集合であるプロセッサ集合との対応を示す情報が含まれており、
各前記プロセッサ集合には、前記ローカルメモリ内に排他制御不要な記憶領域がそれぞれ割り当てられているとともに、各前記プロセッサ集合内の前記マイクロプロセッサがデータ授受に使用することができる内部メモリが設けられており、
前記チャネル基板は、前記フレーム転送テーブルにおいて、前記データフレームに含まれている情報から特定される前記ＬＤＥＶに対応づけられている前記プロセッサ集合を有する前記プロセッサ基板の当該プロセッサ集合に、受信した前記データＩ／Ｏ要求を構成しているデータフレームを転送し、
前記プロセッサ基板は、前記プロセッサ集合の負荷情報を監視し、前記プロセッサ集合の負荷が均等になるように、前記フレーム転送テーブルにおける前記ＬＤＥＶと前記プロセッサ集合との対応を設定する
ストレージ装置である。
【０００６】
本発明によれば、チャネル基板は、外部装置から受信したデータＩ／Ｏ要求を構成しているデータフレームを、プロセッサ基板の夫々について設定されたＬＤＥＶのオーナ権に従って設定された、フレーム転送テーブルに従ってプロセッサ基板に転送するので、当該データフレームの処理を実行する際に必要となるＬＤＥＶ制御情報を有するプロセッサ基板に対して、確実にデータフレームを転送することができる。これによれば、共有メモリに比べてアクセス性能の高い各プロセッサ基板のローカルメモリにＬＤＥＶ制御情報を配置することが可能となり、プロセッサ基板のマイクロプロセッサがローカルメモリのＬＤＥＶ制御情報を利用して高速にデータフレームを処理することが可能となる。従ってストレージ装置の処理性能を向上させることができる。また、データフレームの転送先を、プロセッサ基板のプロセッサ集合を単位として特定することができるので、マイクロプロセッサやローカルメモリの構成に応じて、適切にフレームの転送先を制御することができる。さらに、前記プロセッサ集合の負荷の状態に応じてフレーム転送テーブルを適切に設定することで、マイクロプロセッサの負荷分散を実現することができる。
【０００９】
本発明の他の一つは、上記ストレージ装置であって、
前記共有メモリ又は前記ローカルメモリに、前記オーナ権を示す情報であるＬＤＥＶオーナ権テーブルを記憶し、
前記共有メモリ又は前記ローカルメモリに、前記チャネル基板と、前記チャネル基板が備える前記外部装置と通信するためのポートと、前記ＬＤＥＶとを対応づけた関連付けテーブルを記憶し、
前記プロセッサ基板は、前記外部装置から、前記外部装置が当該ストレージ装置にログインするためのデータフレームであるログインフレームを受信すると、前記関連付けテーブルから取得される、前記ログインフレームを受信した、前記チャネル基板及び前記ポート番号に対応する前記ＬＤＥＶについて、前記ＬＤＥＶオーナ権テーブルから当該ＬＤＥＶのオーナ権を有する前記プロセッサ基板を特定することにより、前記ＬＤＥＶと前記プロセッサ基板との対応を取得し、取得した前記対応を前記フレーム転送テーブルに設定する。
【００１０】
フレーム転送テーブルの設定は、このように、ログインフレームを受信したチャネル基板とポート番号に基づいて効率よく確実に行うことができる。またフレーム転送テーブルの設定は、このように外部装置のストレージ装置へのログイン時に一括して行うことができる。このようにログイン時に一括してフレーム転送テーブルの設定が行われることで、ログイン期間中に外部装置から送られてくるフレームを効率よく処理することができる。
【００１１】
本発明の他の一つは、上記ストレージ装置であって、前記プロセッサ基板は、前記外部装置から、前記外部装置が当該ストレージ装置からログアウトするためのデータフレームであるログアウトフレームを受信すると、前記フレーム転送テーブルにおける、当該ログアウトフレームを送信してきた前記外部装置に関する、前記ＬＤＥＶと前記プロセッサ基板との対応を無効化する。
【００１２】
このように、外部装置がストレージ装置からログアウトする際は、フレーム転送テーブルから当該外部装置に関する情報が無効化される。このため、フレーム転送テーブルに不要な情報が残留するのを防ぐことができ、チャネル基板の記憶資源を有効に利用することができる。
【００１３】
本発明の他の一つは、上記ストレージ装置であって、
上記ストレージ装置は、
共有メモリにアクセス可能な管理装置と通信可能に接続しており、前記ＬＤＥＶオーナ権テーブルは、前記管理装置によって設定可能であり、
前記ＬＤＥＶの夫々について、前記データＩ／Ｏ要求に基づく、前記ＬＤＥＶに対するジョブを実行中であるか否か示す情報が設定されるＬＤＥＶ使用中テーブルを記憶し、
前記ＬＤＥＶ使用中テーブルにおいて前記ＬＤＥＶについてジョブが実行中に設定されている場合に、当該ＬＤＥＶについての前記オーナ権の設定変更を抑止する、ＬＤＥＶオーナ権管理部をさらに備える。
【００１４】
このように、ＬＤＥＶに対するジョブの実行中はオーナ権の変更を抑止するようにすることで、ジョブの実行中にオーナ権が不用意に変更されてＬＤＥＶ制御情報に不整合が生じ、もしくはレジスタ内容や処理対象データが破壊され、その結果、マイクロプロセッサが停止や暴走に至るのを、確実に防ぐことができる。
【００１５】
本発明の他の一つは、上記ストレージ装置であって、
前記プロセッサ基板は、前記マイクロプロセッサの負荷情報を前記共有メモリに随時記憶し、
前記ＬＤＥＶオーナ権テーブルは、前記マイクロプロセッサの負荷が均等になるように、前記管理装置によって設定される。
【００１６】
このように、マイクロプロセッサの負荷の状態に応じてＬＤＥＶオーナ権テーブルを適切に設定することで、マイクロプロセッサの負荷分散を容易かつ効果的に実施することができる。
【００１９】
尚、前記ＬＤＥＶ制御情報は、前記マイクロプロセッサから前記ＬＤＥＶに対する排他制御に関する情報、前記外部装置から前記ＬＤＥＶへのリザーブ要求の有無を示す情報、前記リザーブ要求を発行した前記外部装置を特定する情報、のうちの少なくともいずれかである。
【００２０】
その他本願が開示する課題やその解決方法については、発明の実施形態の欄及び図面により明らかにされる。
【発明の効果】
【００２１】
本発明によれば、外部装置からストレージ装置が受信するデータＩ／Ｏ要求を効率よく確実に処理することができる。
【図面の簡単な説明】
【００２２】
【図１】ストレージシステム１の構成を示す図である。
【図２Ａ】チャネル基板１１のハードウエア構成を示す図である。
【図２Ｂ】プロセッサ基板１２のハードウエア構成を示す図である。
【図２Ｃ】ドライブ基板１３のハードウエア構成を示す図である。
【図３】管理装置３として利用可能なコンピュータ（情報処理装置）のハードウエア構成例である。
【図４】管理装置３が備える主な機能を示す図である。
【図５】ストレージ装置１０が備える主な機能及び主なデータを示す図である。
【図６】データ書き込み処理Ｓ６００を説明するフローチャートである。
【図７】データ読み出し処理Ｓ７００を説明するフローチャートである。
【図８】チャネル基板１１のフレームレベルの構成を説明する模式図である。
【図９】プロセッサ基板１２のフレームレベルの構成を説明する模式図である。
【図１０Ａ】マイクロプロセッサ１２２１、プロセッサ集合１２３０、Ｌ２、及びＰＭの接続構成の一例である。
【図１０Ｂ】マイクロプロセッサ１２２１、プロセッサ集合１２３０、Ｌ２、及びＰＭの接続構成の一例である。
【図１０Ｃ】マイクロプロセッサ１２２１、プロセッサ集合１２３０、Ｌ２、及びＰＭの接続構成の一例である。
【図１１Ａ】ホスト装置２からストレージ装置１０に送信されるフレームのフォーマットの一例である。
【図１１Ｂ】ホスト装置２からストレージ装置１０に送信されるフレーム（データ書き込み要求）のフォーマットの一例である。
【図１１Ｃ】ホスト装置２からストレージ装置１０に送信されるフレーム（データ読み出し要求）のフォーマットの一例である。
【図１２】フレーム転送テーブル５２１の一例である。
【図１３】Ｉ／Ｏフレーム転送処理Ｓ１３００を説明するフローチャートである。
【図１４】ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２の一例である。
【図１５】ＬＤＥＶオーナ権テーブル５２３の一例である。
【図１６】ＬＤＥＶオーナ権テーブル５２３の格納位置と管理方法を説明する模式図である。
【図１７】ＬＤＥＶ制御情報５２４の格納位置と管理方法を説明する模式図である。
【図１８】フロントエンド処理Ｓ１８００を説明するフローチャートである。
【図１９】認証フレーム転送処理Ｓ１８１２を説明するフローチャートである。
【図２０】ホストログイン時のフレーム転送テーブル設定処理Ｓ１８１４の詳細を説明するフローチャートである。
【図２１】ホストログアウト時のフレーム転送テーブル設定処理Ｓ１８３４の詳細を説明するフローチャートである。
【図２２】ＬＤＥＶ確保処理Ｓ１８２４の詳細を説明するフローチャートである。
【図２３】ＬＤＥＶ開放処理Ｓ１８２６の詳細を説明するフローチャートである。
【図２４】ＬＤＥＶ使用中テーブル５２５の一例である。
【発明を実施するための形態】
【００２３】
以下、実施形態について説明する。図１に、実施形態として説明するストレージシステム１の構成を示している。同図に示すように、このストレージシステム１は、ホスト装置２（外部装置）、通信ネットワーク５を介してホスト装置２と通信するストレージ装置１０、及びストレージ装置１０にＬＡＮ（Local Area Network）等を介して通信可能に接続する管理装置３を含んで構成されている。
【００２４】
通信ネットワーク５は、例えばＬＡＮ、ＳＡＮ（Storage Area Network）、インターネット、公衆通信網等である。ホスト装置２とストレージ装置１０との間の通信は、ＴＣＰ／ＩＰ、ｉＳＣＳＩ（internet Small Computer System Interface）、ファイバーチャネルプロトコル（Fibre Channel Protocol）、ＦＩＣＯＮ（Fibre Connection）（登録商標）、ＥＳＣＯＮ（Enterprise System Connection） （登録商標）、ＡＣＯＮＡＲＣ（Advanced Connection Architecture）（登録商標）、ＦＩＢＡＲＣ（Fibre Connection Architecture）（登録商標）等のプロトコルに従って行われる。
【００２５】
ホスト装置２は、ストレージ装置１０によって提供される記憶領域を利用する情報処理装置（コンピュータ）である。例えばホスト装置２は、パーソナルコンピュータ、メインフレーム（Mainframe）、オフィスコンピュータ等のハードウエアを用いて構成されている。ホスト装置２は、上記記憶領域へのアクセスに際し、ストレージ装置１０にデータＩ／Ｏ要求を送信する。
【００２６】
ストレージ装置１０は、一つ以上のチャネル基板１１、一つ以上のプロセッサ基板１２（Micro Processor）、一つ以上のドライブ基板１３、キャッシュメモリ１４（Cache Memory）、共有メモリ１５（Shared Memory）、内部スイッチ１６、記憶装置１７、及び保守装置１８（Service Processor）を備える。このうちチャネル基板１１、プロセッサ基板１２、ドライブ基板１３、キャッシュメモリ１４、及び共有メモリ１５は、内部スイッチ１６を介して互いに通信可能に接続されている。
【００２７】
チャネル基板１１は、ホスト装置２から送られてくるデータＩ／Ｏ要求（データ書き込み要求、データ読み出し要求等）を受け付け、受け付けたデータＩ／Ｏ要求についての処理の応答（例えば読み出したデータ、読み出し完了報告、書き込み完了報告）をホスト装置２に送信する。チャネル基板１１は、ホスト装置２と通信するためのプロトコル制御に関する機能を有する。
【００２８】
プロセッサ基板１２は、チャネル基板１１が受信した上記データＩ／Ｏ要求に応じて、チャネル基板１１、ドライブ基板１３、及びキャッシュメモリ１４の間で行われる、データ転送に関する処理を行う。プロセッサ基板１２は、例えばキャッシュメモリ１４を介して行われる、チャネル基板１１とドライブ基板１３の間のデータ（記憶装置１７から読み出したデータ、記憶装置１７に書き込むデータ）の引き渡し、キャッシュメモリ１４に格納されているデータについて、ステージング（記憶装置１７からのデータの読み出し）やデステージング（記憶装置１７への書き出し）を行う。
【００２９】
キャッシュメモリ１４は、例えば高速アクセスが可能なＲＡＭ（Random Access Memory）を用いて構成される。キャッシュメモリ１４には、記憶装置１７に書き込まれるデータ（以下、書き込みデータと称する。）や記憶装置１７から読み出されたデータ（以下、読み出しデータと記載する。）が格納される。共有メモリ１５には、ストレージ装置１０の制御に用いられる各種の情報が格納される。
【００３０】
ドライブ基板１３は、記憶装置１７からのデータの読み出しもしくは記憶装置１７へのデータの書き込みに際し、記憶装置１７との間で通信を行う。内部スイッチ１６は、例えば高速クロスバースイッチ（Cross Bar Switch）を用いて構成されている。内部スイッチ１６を介して行われる通信は、例えば、ファイバーチャネル、ｉＳＣＳＩ、ＴＣＰ／ＩＰなどのプロトコルに従って行われる。
【００３１】
記憶装置１７は、複数の記憶媒体（ハードディスクドライブ、半導体記憶装置（ＳＳＤ（Solid State Drive）等）を備えて構成されている。以下の説明において、記憶装置１７は、例えばＳＡＳ（Serial Attached SCSI）、ＳＡＴＡ（Serial ATA）、ＦＣ（Fibre Channel）、ＰＡＴＡ（Parallel ATA）、ＳＣＳＩ等のタイプのハードディスクドライブ、もしくは半導体記憶装置（ＳＳＤ）（以下、ハードディスクドライブや半導体記憶装置等の記憶媒体を記憶ドライブ１７１と総称する。）を用いて構成されているものとする。
【００３２】
記憶装置１７は、記憶ドライブ１７１をＲＡＩＤ（Redundant Arrays of Inexpensive （or Independent) Disks）等の制御方式で制御することによって提供される記憶領域（例えばＲＡＩＤグループ（パリティグループ（Parity Group）の記憶領域）を用いて構成される論理装置（ＬＤＥＶ１７２（LDEV: Logical Device））を単位とする記憶領域を提供する。後述するように、ストレージ装置１０は、ホスト装置２に対し、ＬＤＥＶ１７２を用いて構成される論理的な記憶領域（以下、ＬＵ（Logical Unit）と称する。）を提供する。
【００３３】
図２Ａにチャネル基板１１のハードウエア構成を示している。チャネル基板１１は、ホスト装置２と通信するためのポート（通信ポート）を有する外部通信インタフェース（以下、外部通信Ｉ／Ｆ１１１と表記する。）、プロセッサ１１２（後述するフレーム処理チップ、フレーム転送チップを含む）、メモリ１１３、プロセッサ基板１２と通信するためのポート（通信ポート）を有する内部通信インタフェース（以下、内部通信Ｉ／Ｆ１１４と表記する。）を備える。
【００３４】
このうち外部Ｉ／Ｆ１１１は、例えばＮＩＣ（Network Interface Card）やＨＢＡ（Host Bus Adaptor）を用いて構成される。プロセッサ１１２は、例えばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）を用いて構成される。メモリ１１３は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）である。内部通信Ｉ／Ｆ１１４は、内部スイッチ１６を介して、プロセッサ基板１２、ドライブ基板１３、キャッシュメモリ１４、共有メモリ１５と通信を行う。
【００３５】
図２Ｂにプロセッサ基板１２のハードウエア構成を示している。プロセッサ基板１２は、内部通信インタフェース（以下、内部通信Ｉ／Ｆ１２１と表記する。）、プロセッサ１２２、及び共有メモリ１５に比べてプロセッサ１２２からのアクセス性能が高い（高速アクセスが可能な）メモリ１２３（ローカルメモリ）を備える。内部通信Ｉ／Ｆ１２１は、内部スイッチ１６を介してチャネル基板１１、ドライブ基板１３、キャッシュメモリ１４、共有メモリ１５と通信を行う。プロセッサ１２２は、例えばＣＰＵ、ＭＰＵ、ＤＭＡ（Direct Memory Access）である。メモリ１２３は、ＲＡＭ又はＲＯＭである。尚、プロセッサ１２２は、メモリ１２３及び共有メモリ１５の双方にアクセスすることができるが、プロセッサ１２２から見たアクセス速度はメモリ１２３の方が共有メモリ１５よりも高速であり（アクセス性能が高い）、このためメモリ１２３の方が共有メモリ１５よりもアクセスコストが小さい。
【００３６】
図２Ｃにドライブ基板１３のハードウエア構成を示している。ドライブ基板１３は、内部通信インタフェース（以下、内部通信Ｉ／Ｆ１３１と表記する。）、プロセッサ１３２、メモリ１３３、及びドライブインタフェース（以下、ドライブＩ／Ｆ１３４と表記する。）を備える。内部通信Ｉ／Ｆ１３１は、内部スイッチ１６を介して、チャネル基板１１、プロセッサ基板１２、キャッシュメモリ１４、共有メモリ１５と通信する。プロセッサ１３２は、例えばＣＰＵ、ＭＰＵである。メモリ１３３は、例えばＲＡＭ、ＲＯＭである。ドライブＩ／Ｆ１３４は、記憶装置１７と通信する。
【００３７】
図１に示した保守装置１８（SVP: SerVice Processor）は、ＣＰＵ及びメモリを備えたコンピュータである。保守装置１８は、ストレージ装置１０の各構成要素の制御や状態監視を行う。保守装置１８は、内部スイッチ１６又はＬＡＮなどの通信手段を介してチャネル基板１１、プロセッサ基板１２、ドライブ基板１３、キャッシュメモリ１４、共有メモリ１５、及び内部スイッチ１６といったストレージ装置１０の構成要素と通信する。保守装置１８は、ストレージ装置１０の構成要素から随時稼働情報等を取得して管理装置３に提供する。保守装置１８は、管理装置３から送られてくる情報に従って構成要素の各種設定や制御、保守（ソフトウエアの導入や更新）等を行う。
【００３８】
図３に管理装置３として利用可能なコンピュータ（情報処理装置）の一例を示している。同図に示すように、コンピュータ３０は、ＣＰＵ３１、揮発性または不揮発性のメモリ３２（ＲＡＭまたはＲＯＭ）、記憶装置３３（例えばハードディスクドライブ、半導体記憶装置（ＳＳＤ））、キーボードやマウス等の入力装置３４、液晶モニタやプリンタ等の出力装置３５、及びＮＩＣやＨＢＡ等の通信インタフェース（通信Ｉ／Ｆ３６と表記する。）を備える。管理装置３は、例えばパーソナルコンピュータやオフィスコンピュータである。管理装置３は、ストレージ装置１０と一体的であっても（同一筐体に実装されていても）よい。管理装置３は保守装置１８とＬＡＮ等を介して通信可能に接続されている。管理装置３はストレージ装置１０の制御や監視のためのＧＵＩ（Graphical User Interface）やＣＬＩ（Command Line Interface）等を用いたユーザインタフェースを備える。
【００３９】
＜管理装置の機能＞
図４に管理装置３の主な機能を示している。同図に示すように、管理装置３は、後述するＬＤＥＶオーナ権テーブル５２３に関する設定や制御を行うＬＤＥＶ管理部４１１を備える。尚、管理装置３が備える機能は、管理装置３のハードウエアにより、もしくは管理装置３のＣＰＵ３１が、管理装置３のメモリ３２に格納されているプログラムを読み出して実行することにより実現される。
【００４０】
＜ストレージ装置の機能等＞
図５にストレージ装置１０が備える主な機能、及びストレージ装置１０において管理される主なデータを示している。同図に示すように、ストレージ装置１０は、ホストログイン処理部５１１、ホストログアウト処理部５１２、ＬＤＥＶオーナ権管理部５１３、Ｉ／Ｏ処理部５１４を備えている。尚、ストレージ装置１０が備える上記の機能は、ストレージ装置１０のチャネル基板１１やプロセッサ基板１２、ドライブ基板１３が備えるハードウエアによって、又は、プロセッサ１１２，１２２，１３２が、メモリ１１３，１２３，１３３や共有メモリ１５に格納されているプログラムを読み出して実行することにより実現される。
【００４１】
ホストログイン処理部５１１は、ホスト装置２がストレージ装置１０へのログインに関する処理を実行する。ホストログアウト処理部５１２は、ホスト装置２のストレージ装置１０からのログアウトに関する処理を実行する。ＬＤＥＶオーナ権管理部５１３は、ＬＤＥＶオーナ権テーブル５２３及びＬＤＥＶ制御情報５２４の管理を行う。
【００４２】
Ｉ／Ｏ処理部５１４は、ホスト装置２から送られてくるデータＩ／Ｏ要求(データ書き込み要求、データ読み出し要求）に関する処理を行う。例えばストレージ装置１０のＩ／Ｏ処理部５１４は、ホスト装置２からデータＩ／Ｏ要求としてデータ書き込み要求を受信すると、受信したデータＩ／Ｏ要求についての記憶ドライブ１７１に対する書き込み要求（以下、ドライブ書き込み要求（記憶媒体書き込み要求）と称する。）を生成し、ドライブ基板１３の書き込み処理待ちキューに登録する。ドライブ基板１３は、書き込み処理待ちキューからドライブ書き込み要求を順次取得し、取得したドライブ書き込み要求に従い記憶装置１７にデータを書き込む。またＩ／Ｏ処理部５１４は、ホスト装置２からデータＩ／Ｏ要求としてデータ読み出し要求を受信すると、記憶装置１７からデータを読み出し、読み出したデータ（読み出しデータ）をホスト装置２に送信する。
【００４３】
図５に示すように、ストレージ装置１０は、フレーム転送テーブル５２１、ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２、ＬＤＥＶオーナ権テーブル５２３、ＬＤＥＶ制御情報５２４、及びＬＤＥＶ使用中テーブル５２５を管理（記憶）している。このうちフレーム転送テーブル５２１は、チャネル基板１１のメモリ１１３に格納される。ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２は、共有メモリ１５又はプロセッサ基板１２のメモリ１２３に格納される。ＬＤＥＶオーナ権テーブル５２３は、共有メモリ１５又はプロセッサ基板１２のメモリ１２３に格納される。ＬＤＥＶ制御情報５２４は、共有メモリ１５又はプロセッサ基板１２のメモリ１２３に格納される。ＬＤＥＶ使用中テーブル５２５は、共有メモリ１５に格納される。チャネル基板１１及びプロセッサ基板１２は、特にアクセス制限が施されていない限り、共有メモリ１５のいずれのテーブルにもアクセスすることができる。またプロセッサ基板１２は、チャネル基板１１のメモリ１１３に格納されているフレーム転送テーブル５２１にアクセスすることができる。
【００４４】
次にストレージ装置１０によって行われる基本的な機能について説明する。
＜データの書き込み＞
図６は、ストレージ装置１０がホスト装置２から前述したＩ／Ｏ要求としてデータ書き込み要求を受信した場合にＩ／Ｏ処理部５１４が行うＩ／Ｏ処理（以下、データ書き込み処理Ｓ６００と称する。）を説明するフローチャートである。以下、同図とともにデータ書き込み処理Ｓ６００について説明する。
【００４５】
ホスト装置２から送信されてくるデータ書き込み要求は、ストレージ装置１０のチャネル基板１１によって受信される（Ｓ６１１，Ｓ６１２）。チャネル基板１１は、ホスト装置２からデータ書き込み要求を受信すると、その旨をプロセッサ基板１２及びドライブ基板１３に通知する（Ｓ６１３）。チャネル基板１１は、ホスト装置２に完了報告を送信し（Ｓ６１４）、ホスト装置２が送られてきた完了報告を受信する（Ｓ６１５）。
【００４６】
プロセッサ基板１２は、チャネル基板１１から上記通知を受信すると（Ｓ６２１）、当該データ書き込み要求に基づくドライブ書き込み要求を生成してキャッシュメモリ１４に格納し、また生成したドライブ書き込み要求をドライブ基板１３に送信する（Ｓ６２２，Ｓ６２３）。
【００４７】
ドライブ基板１３は、ドライブ書き込み要求を受信すると、書き込み処理待ちキューに登録する（Ｓ６２４）。ドライブ基板１３は、書き込み処理待ちキューからドライブ書き込み要求を随時読み出す（Ｓ６２５）。そしてドライブ基板１３は、読み出したドライブ書き込み要求に指定されているドライブ書き込みデータをキャッシュメモリ１４から読み出し、読み出したドライブ書き込みデータを記憶ドライブ１７１に書き込む（Ｓ６２６）。
【００４８】
次にドライブ基板１３は、ドライブ書き込み要求についてドライブ書き込みデータの書き込みが完了した旨の報告（完了報告）をプロセッサ基板１２に通知する（Ｓ６２７）。プロセッサ基板１２は、送られてきた完了報告を受信する（Ｓ６２８）。
【００４９】
＜データ読み出し処理＞
図７は、ストレージ装置１０が、ホスト装置２から前述したデータＩ／Ｏ要求としてデータ読み出し要求を受信した場合に、ストレージ装置１０の読み出し処理部６１２によって行われるＩ／Ｏ処理（以下、データ読み出し処理Ｓ７００と称する。）を説明するフローチャートである。以下、同図とともにデータ読み出し処理Ｓ７００について説明する。
【００５０】
ホスト装置２から送信されてくるデータ読み出し要求は、ストレージ装置１０のチャネル基板１１によって受信される（Ｓ７１１，Ｓ７１２）。チャネル基板１１は、ホスト装置２からデータ読み出し要求を受信すると、その旨をプロセッサ基板１２及びドライブ基板１３に通知する（Ｓ７１３）。
【００５１】
ドライブ基板１３は、チャネル基板１１から上記通知を受信すると、当該データ読み出し要求によって指定されたデータ（例えばＬＢＡ（Logical Block Address）で指定されるデータ）を、記憶装置１７（記憶ドライブ１７１）から読み出す（Ｓ７１４）。尚、キャッシュメモリ１４に読み出しデータが存在する場合（キャッシュヒットした場合）には、記憶装置１７からの読み出し処理（Ｓ７１４）は省略される。プロセッサ基板１２は、ドライブ基板１３によって読み出されたデータをキャッシュメモリ１４に書き込む（Ｓ７１５）。プロセッサ基板１２は、キャッシュメモリ１４に書き込んだデータを通信Ｉ／Ｆに随時転送する（Ｓ７１６）。
【００５２】
チャネル基板１１は、プロセッサ基板１２から送られてくる読み出しデータをホスト装置２に順次送信する（Ｓ７１７，Ｓ７１８）。読み出しデータの送信が完了すると、チャネル基板１１は、ホスト装置２に完了報告を送信する（Ｓ７１９）。ホスト装置２は送られてきた完了報告を受信する（Ｓ７２０）。
＜フレームレベルの構成＞
【００５３】
次に、以上に説明したストレージシステム１における、データフレームレベル（以下、フレームと略記する。）の構成について説明する。尚、ここでいうフレームとは、ホスト装置２からストレージ装置１０に送信されるデータＩ／Ｏ要求を構成しているフレームのことである。フレームの一例としてファイバチャネル（Fibre Channel）におけるＦＣフレームがある。
【００５４】
＜チャネル基板＞
図８にチャネル基板１１のフレームレベルの構成を説明する模式図を示している。同図に示すように、チャネル基板１１は、ホスト装置２から送られてくるフレームを受信するポート１１５１、前述したプロセッサ１１２の構成要素である、フレーム処理チップ１１２１及びフレーム転送チップ１１２２、前述したメモリ１１３、プロセッサ基板１２と通信する際に用いられるポート１１５２を備えている。同図に示すように、メモリ１１３には、フレーム処理チップ１１２１とフレーム転送チップ１１２２との間のフレームの授受（送受信）を行うためのフレーム送受信キュー１１３１が設けられている。フレーム送受信キュー１１３１は、例えばチャネル基板のポート１１５１の夫々について設けられる。またメモリ１１３には、前述したフレーム転送テーブル５２１が格納されている。
【００５５】
＜プロセッサ基板＞
図９にプロセッサ基板１２のフレームレベルの構成を説明する模式図を示している。同図に示すように、プロセッサ基板１２は、前述したプロセッサ１２２の構成要素であるところの、複数のマイクロプロセッサ１２２１（同図ではＭＰと表記）、及び前述したメモリ１２３を備えている。各マイクロプロセッサは、例えばマルチコアプロセッサにおける、各コアプロセッサに相当する。
【００５６】
メモリ１２３には、チャネル基板１１とマイクロプロセッサ１２２１との間のフレームの授受（送受信）を行うためのフレーム送受信キュー１２３１が設けられている。フレーム送受信キュー１２３１は、例えばチャネル基板のポート１１５２の夫々について設けられる。またメモリ１２３には、前述したＬＤＥＶ制御情報５２４、前述したＬＤＥＶオーナー権テーブル５２３が格納されている。
【００５７】
同図に示すように、各マイクロプロセッサ１２２１は、同一のフレーム送受信キュー１２３１を共有するマイクロプロセッサ１２２１のグループとして設定される、一つ以上のプロセッサ集合１２３０のいずれかに所属している。プロセッサ集合１２３０は、例えばＣＰＵのコア数の増加やＣＰＵのキャッシュ構造の変化に応じて設定される。
【００５８】
図１０Ａ乃至図１０Ｃに、マイクロプロセッサ１２２１、プロセッサ集合１２３０、Ｌ２、及びＰＭの構成例を示している。同図において、Ｌ２はＣＰＵの内部メモリ（Ｌ２キャッシュ）であり、ＰＭは前述したメモリ１２３（ローカルメモリ）に相当する。
【００５９】
図１０Ａに示す態様では、各プロセッサ集合１２３０に２つのマイクロプロセッサ１２２１が所属している。同じプロセッサ集合１２３０に所属するマイクロプロセッサ１２２１間では、Ｌ２を介してデータの授受を行い、異なるプロセッサ集合１２３０に所属するマイクロプロセッサ１２２１間では、ＰＭを介してデータの授受を行う。各プロセッサ集合１２３０は、いずれもストレージ装置１０内の全チャネル基板１１の全ポート１１５２のフレーム送受信キュー１２３１に対応づけられている。
【００６０】
同図に示すように、ＰＭには特定のマイクロプロセッサ１２２１のみからアクセスが可能であり、排他制御が不要な記憶領域（以下、ＬＭと表記する。）が確保されている。各マイクロプロセッサ１２２１は、夫々について確保されたＬＭを利用することができる。この構成では、同じプロセッサ集合１２３０に所属するマイクロプロセッサ１２２１間で負荷分散を行うことができる。また同じプロセッサ集合１２３０に所属するマイクロプロセッサ１２２１間では、Ｌ２を介して高速にデータの授受を行うことができる。
【００６１】
図１０Ｂでは、プロセッサ集合１２３０の夫々に一つのマイクロプロセッサ１２２１が所属している。異なるプロセッサ集合１２３０に所属しているマイクロプロセッサ１２２１間では、Ｌ２もしくはＰＭを介してデータの授受が行われる。この態様では、各プロセッサ集合１２３０は、いずれもストレージ装置１０内の全チャネル基板１１の全ポート１１５２のフレーム送受信キュー１２３１に対応づけられている。各マイクロプロセッサ１２２１は、ＰＭ内にマイクロプロセッサ１２２１毎に確保されたＬＭを利用することができる。
【００６２】
図１０Ｃでは、１つのプロセッサ集合１２３０に全てのマイクロプロセッサ１２２１が所属し、Ｌ２又はＰＭを介してマイクロプロセッサ１２２１間のデータの授受を行う。この態様では、プロセッサ集合１２３０は、ストレージ装置１０内の全チャネル基板１１の全ポート１１５２のフレーム送受信キュー１２３１に対応づけられている。各マイクロプロセッサ１２２１は、ＰＭ内にマイクロプロセッサ１２２１毎について確保されたＬＭを利用することができる。
【００６３】
＜フレーム構造＞
図１１Ａは、ホスト装置２からストレージ装置１０に送信される（チャネル基板１１が受信する）フレームのフォーマットである。このフレームには、当該フレームを送信したホスト装置２を特定する情報であるホストＩＤが設定されるホストＩＤ１１１１、及び当該フレームの種別を示す情報であるフレーム種別が設定されるフレーム種別１１１２が含まれる。尚、ＦＣフレームの場合、ホストＩＤは「S_ID」である。
【００６４】
フレーム種別１１１２には、例えば当該フレームがストレージ装置１０へのログインに関するフレームであれば「Login」が、当該フレームがログアウトに関するフレームであれば「Logout」が、当該フレームがデータ書き込み要求に関するフレームであれば「Write」が、当該フレームがデータ読み出し要求に関するフレームであれば「Read」が、夫々設定される。
【００６５】
図１１Ｂは、データ書き込み要求に関するフレームである場合（フレーム種別１１１２が「Write」の場合）のフレームのフォーマットである。このフレームには、ホストＩＤ１１１１、フレーム種別１１１２に加えて、ＬＵＮ１１１３、アドレス１１１４、書き込みデータ１１１５などの情報が含まれている。このうちＬＵＮ１１１３には、書き込み先のＬＵを特定する情報であるＬＵＮが設定される。アドレス１１１４には、書き込み先のＬＵにおける書き込み先のアドレス（例えばＬＢＡ）が設定される。書き込みデータ１１１５には、書き込みデータが設定される。
【００６６】
図１１Ｃは、データ書き込み要求に関するフレームである場合（フレーム種別１１１２が「Read」の場合）のフレームのフォーマットである。同図に示すように、このフレームには、ホストＩＤ１１１１、フレーム種別１１１２に加えて、ＬＵＮ１１１７、アドレス１１１８、データ長１１１９といった情報が含まれている。このうちＬＵＮ１１１７には、読み出し先のＬＵを特定する情報であるＬＵＮ（Logical Unit Number）が設定される。アドレス１１１８には、読み出し先（読み込み先）のＬＵにおける読み出し先のアドレス（例えばＬＢＡ）が設定される。データ長１１１９には、読み出しデータのデータ長が設定される。
【００６７】
以下の説明において、フレーム種別に「Login」もしくは「Logout」が設定されているフレームのことを認証フレームと称し、フレーム種別に「Write」もしくは「Read」が設定されているフレームのことをＩ／Ｏフレームと称する。
【００６８】
＜フレーム転送テーブル＞
図１２にチャネル基板１１のメモリ１１３に格納される、フレーム転送テーブル５２１の一例を示す。同図に示すように、フレーム転送テーブル５２１には、ホストＩＤ検索テーブル５２１１、プロセッサ集合検索テーブル５２１２の２つのテーブルが含まれる。
【００６９】
同図に示すように、ホストＩＤ検索テーブル５２１１は、チャネル基板１１のポート１１５１を特定するポートＩＤが設定されるポートＩＤ１２１１、各ポート１１５１が受信したフレームについてポート１１５１ごとに自動的に付与される番号であるエントリ番号が設定されるエントリ番号１２１２、当該レコードの有効／無効を示す情報（有効／無効）が設定される有効／無効フラグ１２１３、及びホスト装置２の識別子（例えばＦＣフレームの場合は「S_ID」）が設定されるホストＩＤ１２１４、の各項目からなる複数のレコードからなる。
【００７０】
一方、プロセッサ集合検索テーブル５２１２は、チャネル基板１１のポート１１５１を特定するポートＩＤが設定されるポートＩＤ１２２１、エントリ番号が設定されるエントリ番号１２２２、ＬＵＮが設定されるＬＵＮ１２２３、当該レコードの有効／無効を示す情報（有効／無効）が設定される有効／無効フラグ１２２４、及びプロセッサ集合１２３０を特定する情報であるプロセッサ集合ＩＤが設定されるプロセッサ集合ＩＤ１２２５、の各項目からなる複数のレコードで構成される。
【００７１】
＜Ｉ／Ｏフレームの転送＞
フレーム転送テーブル５２１は、チャネル基板１１が、ホスト装置２からＩ／Ｏフレームを受信した際、そのＩ／Ｏフレームの転送先となるプロセッサ集合１２３０を決定する際に参照される。図１３はチャネル基板１１によって行われるＩ／Ｏフレームの転送処理（以下、Ｉ／Ｏフレーム転送処理Ｓ１３００と称する。）を説明するフローチャートである。以下、同図とともにＩ／Ｏフレーム転送処理Ｓ１３００について説明する。尚、以下の説明において、符号の前に付している「Ｓ」の文字はステップを意味する。
【００７２】
チャネル基板１１のフレーム処理チップ１１２１は、ホスト装置２からＩ／Ｏフレームを受信すると（Ｓ１３１１：ＹＥＳ）、当該Ｉ／Ｏフレームを受信したポート１１５１に対応づけられているフレーム送受信キュー１１３１に当該Ｉ／Ｏフレームを登録する（Ｓ１３１２）。チャネル基板１１のフレーム転送チップ１１２２は、フレーム送受信キュー１１３１に登録されている当該Ｉ／Ｏフレームを読み出し（Ｓ１３１３）、当該Ｉ／Ｏフレームに含まれているホストＩＤとＬＵＮを取得する（Ｓ１３１４）。
【００７３】
次にフレーム転送チップ１１２２は、当該Ｉ／Ｏフレームを受信したポート１１５１のポートＩＤと取得したホストＩＤとを検索キーとしてホストＩＤ検索テーブル５２１１を検索し、検索キーに対応するエントリ番号を取得する（Ｓ１３１５）。そしてフレーム転送チップ１１２２は、当該Ｉ／Ｏフレームを受信したポート１１５１のポートＩＤとＳ１３１５で取得したエントリ番号とＳ１３１４で取得したＬＵＮとを検索キーとしてプロセッサ集合検索テーブル５２１２を検索し、検索キーに対応するプロセッサ集合ＩＤを取得する（Ｓ１３１６）。そしてフレーム転送チップ１１２２は、当該Ｉ／Ｏフレームを受信したチャネル基板１１のチャネル基板ＩＤ、ポート１１５１を特定するポートＩＤ、及び取得したプロセッサ集合ＩＤによって特定される、プロセッサ集合１２３０のフレーム送受信キュー１２３１に、当該Ｉ／Ｏフレームを転送する（Ｓ１３１７）。
【００７４】
＜ＬＵＮ−ＬＤＥＶ関連付けテーブル＞
図１４に、前述したＬＵＮ−ＬＤＥＶ関連付けテーブル５２２の一例を示している。ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２は、フレーム転送テーブル５２１の内容を更新する際に参照されるテーブルである。ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２の内容は、管理装置３によって適宜更新される。
【００７５】
同図に示すように、ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２は、チャネル基板１１を特定する情報であるチャネル基板ＩＤが設定されるチャネル基板ＩＤ１４１１、前述したポートＩＤ（ホスト装置２から送られてくるフレームを受信するポート１１５１を特定する情報）が設定されるポートＩＤ１４１２、前述したエントリ番号が設定されるエントリ番号１４１３、ＬＵＮが設定されるＬＵＮ１４１４、及びＬＤＥＶ１７２を特定する情報であるＬＤＥＶ−ＩＤが設定されるＬＤＥＶ−ＩＤ１４１５、の各項目からなる複数のレコードで構成される。
【００７６】
＜ＬＤＥＶのオーナ権＞
管理装置３は、ストレージ装置１０が備えるプロセッサ基板１２の夫々について設定される、ＬＤＥＶ１７２へのアクセス権（以下、オーナ権と称する。）を管理している。各プロセッサ基板１２がアクセスすることができるＬＤＥＶ１７２の範囲は、このオーナ権によって制限されている。各プロセッサ基板１２は自身がオーナ権を有しないＬＤＥＶ１７２にアクセスすることはできない。オーナ権は、例えば特定のプロセッサ基板１２の負荷の集中を避ける目的で設定される。
【００７７】
オーナ権の設定内容は、前述したＬＤＥＶオーナ権テーブル５２３に管理される。ＬＤＥＶオーナ権テーブル５２３のマスタは、ストレージ装置１０の共有メモリ１５に格納されている。図１５にＬＤＥＶオーナ権テーブル５２３の一例を示す。同図に示すように、ＬＤＥＶオーナ権テーブル５２３は、ＬＤＥＶ−ＩＤが設定される、ＬＤＥＶ−ＩＤ１５１１と、そのＬＤＥＶ−ＩＤについてオーナ権を有するプロセッサ基板１２を特定する情報である、プロセッサ基板ＩＤ１５１２が設定される。
【００７８】
ＬＤＥＶオーナ権テーブル５２３の内容は、管理装置３のＬＤＥＶ管理部４１１によって提供されるユーザインタフェースを利用して設定することができる。ＬＤＥＶオーナ権テーブル５２３の設定は、例えばストレージ装置１０の初期導入時や保守時に適宜行われる。
【００７９】
図１６はＬＤＥＶオーナ権テーブル５２３の格納位置と管理方法を説明する図である。同図に示すように、ＬＤＥＶオーナ権テーブル５２３は、そのマスタとなるデータがストレージ装置１０の共有メモリ１５に格納されるとともに、その複製が各プロセッサ基板１２のメモリ１２３（図１０Ａ乃至図１０ＣにおけるＰＭのように各マイクロプロセッサ１２２１が参照可能な記憶領域）に格納される。管理装置３からのオーナ権の設定は、共有メモリ１５に格納されているマスタのＬＤＥＶオーナ権テーブル５２３に行われる。マスタのＬＤＥＶオーナ権テーブル５２３の内容は、各プロセッサ基板のメモリ１２３に能動的に又は受動的に随時複製（反映）される。
【００８０】
＜ＬＤＥＶ制御情報＞
ＬＤＥＶ制御情報は、ＬＤＥＶ１７２にアクセスする際に、プロセッサ基板１２のマイクロプロセッサ１２２１によって参照される情報である。ＬＤＥＶ制御情報は、例えば、マイクロプロセッサ１２２１からＬＤＥＶ１７２に対する排他制御に関する情報、ホスト装置２からＬＤＥＶ１７２へのリザーブ要求の有無を示す情報、リザーブ要求を発行したホスト装置２を特定する情報（例えば論理的なＩ／Ｏパスの識別子等）である。
【００８１】
図１７は、ＬＤＥＶ制御情報５２４の格納位置と管理方法を説明する図である。同図に示すように、ＬＤＥＶ制御情報５２４は、共有メモリ１５及び各プロセッサ基板１２のメモリ１２３（例えば前述したＰＭ）に格納されている。各プロセッサ基板１２には、通常は夫々が担当するＩ／Ｏフレームを処理するのに必要なＬＤＥＶ制御情報５２４のみが記憶されており、一方、共有メモリ１５には、各プロセッサ基板１２に格納されている全てのＬＤＥＶ制御情報５２４が格納されている。共有メモリ１５のＬＤＥＶ制御情報５２４と各プロセッサ基板１２のメモリ１２３に格納されているＬＤＥＶ制御情報５２４との間の同期は、例えば各プロセッサ基板１２のプロセッサ１２２によって確保される。またこの同期は管理装置３のＬＤＥＶ管理部４１１によって確保される。
【００８２】
管理装置３のＬＤＥＶ管理部４１１は、オーナ権の設定変更があると、新たにオーナ権が設定されたプロセッサ基板１２のメモリ１２３に、当該プロセッサ基板１２のマイクロプロセッサ１２２１がＩ／Ｏフレームを処理する為に必要となるＬＤＥＶ制御情報５２４を、共有メモリ１５から複製する。このように、各プロセッサ基板１２のメモリ１２３に、当該プロセッサ基板１２のマイクロプロセッサ１２２１がＩ／Ｏフレームを処理するのに必要となるＬＤＥＶ制御情報５２４が格納されていることで、マイクロプロセッサ１２２１は、Ｉ／Ｏフレームを高速に処理することができる。
【００８３】
＜フロントエンド処理＞
図１８は、ホスト装置２がストレージ装置１０にログインしてからログアウトするまでの間に、フロントエンド（チャネル基板１１及びプロセッサ基板１２）において行われる処理の概略的な流れを説明するフローチャートである。以下、同図とともにフロントエンドにおける処理（以下、フロントエンド処理Ｓ１８００と称する。）について説明する。
【００８４】
まずホスト装置２から送られてくる、フレーム種別に「Login」が設定された認証フレーム（以下、ログインフレームと称する。）を、チャネル基板１１のフレーム処理チップ１１２１が受信する（Ｓ１８１１）。チャネル基板１１のフレーム転送チップ１１２２は、受信したログインフレームを、予め設定された（デフォルトの）プロセッサ基板１２に転送する（Ｓ１８１２）。この処理（以下、認証フレーム転送処理Ｓ１８１２と称する。）の詳細については後述する。
【００８５】
プロセッサ基板１２は、ログインフレームを受信すると（Ｓ１８１３）、フレーム転送テーブル５２１の設定を行う（Ｓ１８１４）。この処理（以下、フレーム転送テーブル設定処理Ｓ１８１４と称する。）の詳細については後述する。フレーム転送テーブル５２１の設定が完了すると、ストレージ装置１０は、ホスト装置２から送られてくるＩ／Ｏフレームの受信を開始する。
【００８６】
次にホスト装置２からＩ／Ｏフレームを受信すると（Ｓ１８２１）、チャネル基板１１のフレーム転送チップ１１２２は、フレーム転送テーブル５２１を参照して当該Ｉ／Ｏフレームの転送先のプロセッサ集合１２３０を特定し、特定したプロセッサ集合１２３０に当該Ｉ／Ｏフレームを転送する。このＩ／Ｏフレームの転送処理（Ｓ１８２２）は、前述した図１３のＳ１３１３〜Ｓ１３１７の処理と同様である。
【００８７】
プロセッサ基板１２は、Ｉ／Ｏフレームを受信すると（Ｓ１８２３）、ＬＤＥＶ使用中テーブル５２５に当該Ｉ／Ｏフレームの処理を実行するジョブの登録を行う（Ｓ１８２４）。この処理（以下、ＬＤＥＶ確保処理Ｓ１８２４と称する。）の詳細については後述する。
【００８８】
ＬＤＥＶ確保処理Ｓ１８２４が完了すると、プロセッサ基板１２（Ｉ／Ｏフレームが転送されたプロセッサ集合１２３０に所属しているマイクロプロセッサ１２２１）が、Ｉ／ＯフレームについてのＩ／Ｏ処理（図６、図７のプロセッサ基板１２が行う処理）を実行する（Ｓ１８２５）。このＩ／Ｏ処理では、プロセッサ基板１２のメモリ１２３に格納されているＬＤＥＶ制御情報５２４が適宜参照される。
【００８９】
Ｉ／Ｏ処理が終了すると、プロセッサ基板１２は、ＬＤＥＶ使用中テーブル５２５からＳ１８２４で登録したジョブを削除する（Ｓ１８２６）。この処理（以下、ＬＤＥＶ開放処理Ｓ１８２６と称する。）の詳細については後述する。Ｓ１８２１〜Ｓ１８２６までの処理は、ホスト装置２がストレージ装置１０からログアウトするまでの間、Ｉ／Ｏフレームを受信する度に繰り返し行われる。
【００９０】
次にチャネル基板１１のフレーム処理チップ１１２１が、ホスト装置２から送られてくる、フレーム種別に「Logout」が設定された認証フレーム（以下、ログアウトフレームと称する。）を受信すると（Ｓ１８３１）、チャネル基板１１のフレーム転送チップ１１２２は、受信したログアウトフレームを、予め設定された（デフォルトの）プロセッサ基板１２に転送する（Ｓ１８３２）。この処理は前述した認証フレーム転送処理Ｓ１８１２と同様である。
【００９１】
プロセッサ基板１２は、ログアウトフレームを受信すると（Ｓ１８３３）、フレーム転送テーブル５２１の設定を行う（Ｓ１８３４）。この処理（以下、フレーム転送テーブル設定処理Ｓ１８３４と称する。）の詳細については後述する。
【００９２】
＜認証フレーム転送処理＞
図１９は、図１８に示した、認証フレーム転送処理Ｓ１８１２（Ｓ１８３２も共通）の詳細を説明するフローチャートである。以下、同図とともに認証フレーム転送処理Ｓ１８１２について説明する。
【００９３】
まずチャネル基板１１のフレーム転送チップ１１２２が、フレーム送受信キュー１１３１から認証フレーム（ログインフレーム又はログアウトフレーム）を読み出す（Ｓ１９１１）。次にフレーム転送チップ１１２２が、チャネル基板１１のメモリ１１３又は共有メモリ１５に格納されている、デフォルトのプロセッサ集合ＩＤを取得する（Ｓ１９１２）。尚、デフォルトのプロセッサ集合ＩＤは、例えば管理装置３を介してユーザやオペレータにより設定され、チャネル基板ＩＤとチャネル基板１１のポート１１５１を特定するポートＩＤとに対応づけて、共有メモリ１５又はメモリ１１３に格納される。
【００９４】
次にフレーム転送チップ１１２２は、当該認証フレームを受信したチャネル基板１１のチャネル基板ＩＤ、ポート１１５１を特定するポートＩＤ、及び取得したプロセッサ集合ＩＤで特定されるプロセッサ集合１２３０のフレーム送受信キュー１２３１に当該認証フレームを転送する（Ｓ１９１３）。
【００９５】
＜フレーム転送テーブル設定処理（ログイン時）＞
図２０は、図１８に示した、ホストログイン時のフレーム転送テーブル設定処理Ｓ１８１４の詳細を説明するフローチャートである。以下、同図とともにフレーム転送テーブル設定処理Ｓ１８１４について説明する。
【００９６】
まずプロセッサ基板１２のログインフレームが登録されたフレーム送受キュー１２３１の処理を担当するマイクロプロセッサ１２２１（以下、担当マイクロプロセッサ１２２１と称する。）は、フレーム送受信キュー１２３１からログインフレームを読み出し（Ｓ２０１１）、当該ログインフレームに設定されているホストＩＤを取得する（Ｓ２０１２）。
【００９７】
次に担当マイクロプロセッサ１２２１が、当該ログインフレームを転送してきたチャネル基板１１(以下、担当チャネル基板１１と称する。）のフレーム転送テーブル５２１にアクセスし、そのホストＩＤ検索テーブル５２１１の、当該ログインフレームを受信したポート１１５１(以下、受信ポート１１５１と称する。）のポートＩＤについてのレコードの中に、有効／無効フラグ１２１３に無効が設定されているレコードが存在するか否かを調べる（Ｓ２０１３）。存在する場合には、そのうちの一つを選択して（Ｓ２０１３：ＹＥＳ）Ｓ２０１４に進む。
【００９８】
Ｓ２０１４では、担当マイクロプロセッサ１２２１は、Ｓ２０１３で選択したレコードのエントリ番号をホストＩＤ検索テーブル５２１１から取得し、Ｓ２０２１に進む。一方、存在しない場合には（Ｓ２０１３：ＮＯ）、Ｓ２０３０に進む。Ｓ２０３０では、担当マイクロプロセッサ１２２１は、担当チャネル基板１１に対してエラーを通知する。担当チャネル基板１１は、エラー通知を受けるとホスト装置２にログインエラーを返す。その後は処理が終了する。
【００９９】
Ｓ２０２１からＳ２０２５までの処理は、ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２において、担当チャネル基板１１に対応付けられているＬＵＮ毎に行われる。まずＳ２０２１では、担当マイクロプロセッサ１２２１は、ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２を参照し、担当チャネル基板１１のチャネル基板ＩＤ、受信ポート１１５１のポートＩＤ、Ｓ２０１２で取得したホストＩＤ、及び現在処理対象になっているＬＵＮ（以下、対象ＬＵＮと称する。）、の組み合わせに対応づけられているＬＤＥＶ１７２が存在するか否か（登録されているか否か）を判定する（Ｓ２０２１）。ＬＤＥＶ１７２が存在する（登録されている）場合には、当該ＬＤＥＶ１７２を取得して（Ｓ２０２１：ＹＥＳ）、Ｓ２０２２に進み、存在しない（登録されていない）場合には（Ｓ２０２１：ＮＯ）、Ｓ２０２５に進む。
【０１００】
Ｓ２０２２では、担当マイクロプロセッサ１２２１は、ＬＤＥＶオーナ権テーブル５２３から、取得したＬＤＥＶ１７２のオーナ権を有するプロセッサ基板１２（プロセッサＩＤ）を取得し、取得したプロセッサ基板１２に所属しているいずれかのプロセッサ集合１２３０のプロセッサ集合ＩＤを取得する。尚、このプロセッサ集合１２３０の選出は、所定のテーブルや計算式に従って行うようにしてもよいし、例えば当該プロセッサ基板１２に所属している各プロセッサ集合１２３０の負荷状態に応じて選出するようにしてもよい。
【０１０１】
次に担当マイクロプロセッサ１２２１は、取得したプロセッサ集合ＩＤを、担当チャネル基板１１のプロセッサ集合検索テーブル５２１２の、受信ポート１１５１のポートＩＤ、Ｓ２０１４で取得したエントリ番号、及び対象ＬＵＮで特定されるレコードのプロセッサ集合ＩＤ１２２５に設定する（Ｓ２０２４）。
【０１０２】
一方、Ｓ２０２５では、担当マイクロプロセッサ１２２１は、担当チャネル基板１１のプロセッサ集合検索テーブル５２１２の、受信ポート１１５１のポートＩＤ、Ｓ２０１４で取得したエントリ番号、及び対象ＬＵＮで特定されるレコードの有効／無効フラグ１２２４に、無効を設定する。
【０１０３】
Ｓ２０２６では、担当マイクロプロセッサ１２２１は、担当チャネル基板１１のホストＩＤ検索テーブル５２１１の、受信ポート１１５１のポートＩＤ、及びＳ２０１４で取得したエントリ番号で特定されるレコードに、Ｓ２０１２で取得したホストＩＤを、また当該レコードの有効／無効フラグ１２１３に有効を設定する。
【０１０４】
このように、フレーム転送テーブル５２１の設定は、ログインフレームを受信したチャネル基板１１とポート番号に基づいて効率よく確実に行うことができる。またフレーム転送テーブル５２１の設定は、このようにホスト装置２のストレージ装置１０へのログイン時に一括して行うことができる。このように、ログイン時に一括してフレーム転送テーブル５２１の設定が行われることで、ログイン期間中にホスト装置２から送られてくるフレームを効率よく処理することができる。
【０１０５】
＜フレーム転送テーブル設定処理（ログアウト時）＞
図２１は、図１８における、ホストログアウト時のフレーム転送テーブル設定処理Ｓ１８３４の詳細を説明するフローチャートである。以下、同図とともにフレーム転送テーブル設定処理Ｓ１８３４について説明する。
【０１０６】
まずプロセッサ基板１２のログアウトフレームが登録されたフレーム送受キュー１２３１の処理を担当するマイクロプロセッサ１２２１（以下、担当マイクロプロセッサ１２２１と称する。）が、フレーム送受信キュー１２３１からログアウトフレームを読み出し（Ｓ２１１１）、当該ログアウトフレームに設定されているホストＩＤを取得する（Ｓ２１１２）。
【０１０７】
次に担当マイクロプロセッサ１２２１は、当該ログアウトフレームを転送してきたチャネル基板１１(以下、担当チャネル基板１１と称する。）のフレーム転送テーブル５２１にアクセスし、そのホストＩＤ検索テーブル５２１１の、当該ログアウトフレームを受信したポート１１５１(以下、受信ポート１１５１と称する。）のポートＩＤと、Ｓ２１１２で取得したホストＩＤに対応するレコードのエントリ番号１２１２に設定されているエントリ番号とを取得する（Ｓ２１１３）。
【０１０８】
次に担当マイクロプロセッサ１２２１は、担当チャネル基板１１のフレーム転送テーブル５２１にアクセスし、そのプロセッサ集合検索テーブル５２１２の、受信ポート１１５１のポートＩＤ、及びＳ２１１３で取得したエントリ番号に対応するレコードの有効／無効フラグ１２２４に、無効を設定する（Ｓ２１１４)。
【０１０９】
このように、ホスト装置２がストレージ装置１０からログアウトする際は、フレーム転送テーブル５２１から当該ホスト装置２に関する情報が無効化される。このためフレーム転送テーブル５２１に不要な情報が残留するのを防ぐことができ、チャネル基板１１の記憶資源（メモリ１１３）を有効に利用することができる。
【０１１０】
以上に説明したように、本実施形態のストレージ装置１０におけるチャネル基板１１は、ホスト装置２から受信したデータＩ／Ｏ要求を構成しているフレームを、プロセッサ基板１２の夫々について設定されている、ＬＤＥＶ１７２のオーナ権に従って設定されたフレーム転送テーブル５２１に従ってプロセッサ基板１２に転送する。このため、データフレームの処理を実行する際に必要となるＬＤＥＶ制御情報を有するプロセッサ基板１２に対し、確実にデータフレームを転送することができる。このため、共有メモリ１５に比べてアクセス性能の高い各プロセッサ基板１２のメモリ１２３にＬＤＥＶ制御情報５２４を配置することが可能となり、プロセッサ基板１２のマイクロプロセッサ１２２１がメモリ１２３に配置されたＬＤＥＶ制御情報５２４を利用して高速にデータフレームを処理することが可能となる。
【０１１１】
またチャネル基板１１は、プロセッサ基板１２のマイクロプロセッサ１２２１が所属するプロセッサ集合１２３０を単位としてフレームの転送先を設定するので、マイクロプロセッサ１２２１やメモリ１２３の構成に応じて適切にフレームの転送先を制御することができる。
【０１１２】
＜ＬＤＥＶ確保処理＞
図２２は、図１８におけるＬＤＥＶ確保処理Ｓ１８２４の詳細を説明するフローチャートである。以下、同図とともにＬＤＥＶ確保処理Ｓ１８２４について説明する。
【０１１３】
まずＩ／Ｏフレームの処理を担当するマイクロプロセッサ１２２１（以下、担当マイクロプロセッサ１２２１と称する。）が、ＬＤＥＶオーナ権テーブル５２３を参照し、当該Ｉ／Ｏフレームの処理対象となるＬＤＥＶ１７２（以下、対象ＬＤＥＶ１７２と称する。）のオーナ権を有するプロセッサ基板１２のプロセッサ基板ＩＤを取得する。
【０１１４】
次に担当マイクロプロセッサ１２２１は、取得したプロセッサ基板ＩＤで特定されるプロセッサ基板１２（対象ＬＤＥＶ１７２のオーナ権を有するプロセッサ基板１２）が、担当マイクロプロセッサ１２２１が所属するプロセッサ基板１２であるか否かを判定する（Ｓ２２１２）。担当マイクロプロセッサ１２２１が所属するプロセッサ基板１２である場合には（Ｓ２２１２：ＹＥＳ）、Ｓ２２１３に進み、そうでなければ（Ｓ２２１２：ＮＯ）、Ｓ２２１４に進む。
【０１１５】
尚、担当マイクロプロセッサ１２２１が所属するプロセッサ基板１２でない場合（Ｓ２２１２：ＮＯ）は、例えば、当該Ｉ／Ｏフレームがプロセッサ基板１２のフレーム送受キュー１２３１に登録されてから、当該処理（Ｓ２２１２）が開始されるまでの間に、オーナ権（ＬＤＥＶオーナ権テーブル５２３の内容）が変更された場合に起こり得る。
【０１１６】
Ｓ２２１３では、担当マイクロプロセッサ１２２１は、ＬＤＥＶ使用中テーブル５２５の対象ＬＤＥＶ１７２に対応づけて、当該Ｉ／Ｏフレームの処理を実行するジョブのジョブＩＤを登録する（Ｓ２２１３）。図２４にＬＤＥＶ使用中テーブル５２５の一例を示す。同図に示すように、ＬＤＥＶ使用中テーブル５２５は、ＬＤＥＶ−ＩＤ２４１１と、ジョブＩＤ（複数登録可）の各項目からなる１つ以上のレコードからなる。
【０１１７】
Ｓ２２１４では、担当マイクロプロセッサ１２２１は、当該Ｉ／Ｏフレームを転送してきたチャネル基板１１にエラーを通知する。通知を受けた担当チャネル基板１１は、ホスト装置２にエラーを返す。その後は処理が終了する。
【０１１８】
＜ＬＤＥＶ開放処理＞
図２３は、図１８におけるＬＤＥＶ開放処理Ｓ１８２６の詳細を説明するフローチャートである。以下、同図とともにＬＤＥＶ開放処理Ｓ１８２６について説明する。
【０１１９】
Ｉ／Ｏフレームの処理を担当するマイクロプロセッサ１２２１（以下、担当マイクロプロセッサ１２２１と称する。）は、当該Ｉ／Ｏフレームについての処理が完了すると、当該処理を実行したジョブのうち、対象ＬＤＥＶ１７２に対応づけて登録されているジョブＩＤを、ＬＤＥＶ使用中テーブル５２５から削除する（Ｓ２３１１）。
【０１２０】
＜オーナ権の設定変更抑止＞
ストレージ装置１０のＬＤＥＶオーナ権管理部５１３は、ＬＤＥＶ使用中テーブル５２５にジョブＩＤが登録されているＬＤＥＶ１７２については、オーナ権の設定変更を抑止（禁止）する。このため、管理装置３は、ＬＤＥＶ使用中テーブル５２５にジョブＩＤが登録されているＬＤＥＶ１７２については、ＬＤＥＶオーナ権テーブル５２３の設定を変更することができない。
【０１２１】
このように、ジョブの実行中は対象のＬＤＥＶ１７２についてオーナ権の設定変更が禁止されるため、ジョブの実行中にオーナ権が不用意に変更されてＬＤＥＶ制御情報に不整合が生じ、もしくはレジスタ内容や処理対象データが破壊されて、その結果マイクロプロセッサ１２２１が停止や暴走に至るような事態を確実に防ぐことができる。
【０１２２】
＜ログイン期間中にオーナ権が変更された場合＞
図１８のフレーム転送テーブル設定処理Ｓ１８１４の完了後のログイン期間中（ＬＤＥＶが確保期間（図１８のＳ１８２４〜Ｓ１８２６までの期間）中は除く）にオーナ権（ＬＤＥＶオーナ権テーブル５２３）の設定が変更された場合には、図２０のＳ２０１４〜Ｓ２０２６と同様の処理が行われてフレーム転送テーブル５２１の内容が変更後のオーナ権に対応する内容に更新される。
【０１２３】
＜負荷分散機能＞
プロセッサ基板１２のプロセッサ１２２は、自身に所属している各マイクロプロセッサ１２２１の負荷情報（例えば各マイクロプロセッサ１２２１の平均稼働率）を共有メモリ１５に随時格納する。管理装置３のＬＤＥＶ管理部４１１は、共有メモリ１５に格納されている各プロセッサ基板１２の負荷情報を監視し、プロセッサ基板１２間の負荷バランスが崩れていると判定すると、各プロセッサ基板１２の負荷が均等になるように、ＬＤＥＶオーナ権情報テーブル５２３の設定内容を変更する。
【０１２４】
例えばあるプロセッサ基板１２と他のプロセッサ基板１２の平均稼働率の差（又は比）が所定の閾値を超えた場合、ＬＤＥＶ管理部４１１は負荷の高いプロセッサ基板１２のオーナ権を負荷が低いプロセッサ基板１２に移動するようにＬＤＥＶオーナ権情報テーブル５２３の設定内容を変更する。このように、マイクロプロセッサ１２２１の負荷の状態に応じてＬＤＥＶオーナ権テーブル５２３を適切に設定することで、マイクロプロセッサ１２２１の負荷分散を容易かつ効果的に実施することができる。
【０１２５】
またプロセッサ基板１２のプロセッサ１２２は、自身に所属している各プロセッサ集合１２３０の負荷情報（例えば各プロセッサ集合１２３０の平均稼働率）をリアルタイムに監視しており、プロセッサ集合１２３０間の負荷バランスが崩れていると判定すると、プロセッサ集合１２３０間の負荷バランスが均等になるように、プロセッサ集合検索テーブル５２１２の設定内容を変更する。例えばプロセッサ１２２は、あるプロセッサ集合１２３０と他のプロセッサ集合１２３０の平均稼働率の差（又は比）が所定の閾値を超えると、負荷の高いプロセッサ基板１２３０に割り当てられているＬＤＥＶ１７２（ＬＵＮ−ＬＤＥＶ関連付けテーブル５２２から取得される、ＬＵＮ１２２３のＬＵＮに対応づけられているＬＤＥＶ−ＩＤのＬＤＥＶ１７２）が、負荷が低い他のプロセッサ集合１２３０に割り当て直す（プロセッサ集合ＩＤ１２２５の内容を変更する）。
【０１２６】
このように、プロセッサ集合１２３０の負荷の状態に応じてフレーム転送テーブル５２１を適切に設定することで、マイクロプロセッサ１２２１の負荷分散を容易かつ効果的に実施することができる。
【０１２７】
以上、本実施形態について説明したが、上記実施形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【図１】
0005236813.tif 000002
【図２Ａ】
0005236813.tif 000003
【図２Ｂ】
0005236813.tif 000004
【図２Ｃ】
0005236813.tif 000005
【図３】
0005236813.tif 000006
【図４】
0005236813.tif 000007
【図５】
0005236813.tif 000008
【図６】
0005236813.tif 000009
【図７】
0005236813.tif 000010
【図８】
0005236813.tif 000011
【図９】
0005236813.tif 000012
【図１０Ａ】
0005236813.tif 000013
【図１０Ｂ】
0005236813.tif 000014
【図１０Ｃ】
0005236813.tif 000015
【図１１Ａ】
0005236813.tif 000016
【図１１Ｂ】
0005236813.tif 000017
【図１１Ｃ】
0005236813.tif 000018
【図１３】
0005236813.tif 000019
【図１４】
0005236813.tif 000020
【図１５】
0005236813.tif 000021
【図１６】
0005236813.tif 000022
【図１７】
0005236813.tif 000023
【図１８】
0005236813.tif 000024
【図１９】
0005236813.tif 000025
【図２０】
0005236813.tif 000026
【図２１】
0005236813.tif 000027
【図２２】
0005236813.tif 000028
【図２３】
0005236813.tif 000029
【図１２】
0005236813.tif 000030
【図２４】
0005236813.tif 000031