(57)【要約】【課題】  小規模〜大規模な構成までユーザ要求に見合った価格／性能／接続性を実現可能なフレキシブルな構成のストレージシステムの提供。【解決手段】  サーバ３あるいはハードディスク群２とのインターフェースを有するインターフェース部１０と、サーバ３あるいはハードディスク群２との間でリード／ライトされるデータを格納するキャッシュメモリモジュール１２６とシステムの制御情報を格納する制御メモリモジュール１２７を有するメモリ部２１と、サーバ３とハードディスク群２との間でのデータのリード／ライトを制御するマイクロプロセッサを有するプロセッサ部８１と、相互結合網３１からストレージシステムを構成し、インターフェース部１０、メモリ部２１及びプロセッサ部８１間を相互結合網３１で互いに接続する構成とする。【選択図】  図１
2005227807.tif 000002
【特許請求の範囲】
【請求項１】
計算機またはディスク装置と接続される接続部を有するインターフェース部と、
メモリ部と、
プロセッサ部と、
ディスク装置とを有し、
前記インターフェース部、前記メモリ部及び前記プロセッサ部の間は相互結合網で互いに接続されていることを特徴とするストレージシステム。
【請求項２】
前記メモリ部は、前記計算機または前記ディスク装置との間で読み出し又は書き込まれるデータを格納するキャッシュメモリ及び制御情報を格納する制御メモリを有し、
前記プロセッサ部は、前記計算機と前記ディスク装置との間でのデータの該ストレージシステム内での転送を制御する複数のマイクロプロセッサを有することを特徴とする請求項１記載のストレージシステム。
【請求項３】
前記複数のマイクロプロセッサは、該ストレージシステム内でのデータ転送を制御する際、制御対象となる前記インターフェース部又は前記メモリ部へ、前記相互結合網を介して前記制御情報を転送することを特徴とする請求項２載のストレージシステム。
【請求項４】
前記相互結合網が、データを転送する相互結合網と前記制御情報を転送する相互結合網とを有することを特徴とする請求項３記載のストレージシステム。
【請求項５】
前記相互結合網が複数のスイッチ部を有することを特徴とする請求項４記載のストレージシステム。
【請求項６】
前記複数のマイクロプロセッサのうちの何れかは、前記インターフェース部と前記メモリ部との間のデータ転送の制御のみを実行することを特徴とする請求項５記載のストレージシステム。
【請求項７】
前記複数のマイクロプロセッサのうちの第一のマイクロプロセッサは、前記計算機に接続されるインターフェース部と前記メモリ部との間のデータ転送の制御のみを実行し、前記複数のマイクロプロセッサのうちの第二のマイクロプロセッサは、前記ディスク装置に接続されるインターフェース部と前記メモリ部との間のデータ転送の制御のみを実行することを特徴とする請求項６記載のストレージシステム。
【請求項８】
複数のクラスタを有し、
前記複数のクラスタの各々は、
計算機またはディスク装置との接続部を有するインターフェース部と、
前記計算機または前記ディスク装置との間で送受信されるデータを格納するキャッシュメモリ及び制御情報を格納する制御メモリとを有するメモリ部と、
前記計算機と前記ディスク装置との間でのデータの転送を制御するマイクロプロセッサを有するプロセッサ部と、
ディスク装置とを有し、
前記複数のクラスタの個々が有する前記インターフェース部、前記メモリ部及び前記プロセッサ部は、相互結合網により前記複数のクラスタのうち他のクラスタが有する前記インターフェース部、前記メモリ部及び前記プロセッサ部に接続されることを特徴とするストレージシステム。
【請求項９】
前記複数のクラスタの個々はスイッチ部を有し、
前記複数のクラスタの個々が有する前記インターフェース部、前記メモリ部及び前記プロセッサ部は、前記スイッチ部を用いて前記クラスタ内で相互に接続され、
前記複数のクラスタは、前記スイッチ部間を接続することにより相互に接続されていることを特徴とする請求項８記載のストレージシステム。
【請求項１０】
前記スイッチ部間を他のスイッチを用いて接続することを特徴とする請求項９記載のストレージシステム。
【請求項１１】
前記計算機が要求するデータは、前記複数のクラスタのうち前記計算機が接続される第一のクラスタとは異なる第二のクラスタが有するディスク装置に格納されていることを特徴とする請求項１０記載のストレージシステム。
【請求項１２】
前記計算機が要求するデータが、前記複数のクラスタのうち前記計算機が接続される第一のクラスタとは異なる第二のクラスタが有するディスク装置に格納されている場合、前記第一のクラスタの前記プロセッサ部は、前記第二のクラスタの前記インターフェース部に対して、前記スイッチ部を介してデータ転送の指示を送信することを特徴とする請求項１１記載のストレージシステム。
【請求項１３】
前記インターフェース部が第１の回路基板に実装され、
前記メモリ部が第２の回路基板に実装され、
前記プロセッサ部が第３の回路基板に実装され、
前記スイッチ部が第４の回路基板に実装され、
更に、前記第１、第２、第３及び第４の回路基板間を接続する信号線がプリントされ、プリントされた前記信号線に前記第１、第２、第３及び第４の回路基板を接続するための第１のコネクタを有する１つのバックプレーンを有し、
前記第１、第２、第３及び第４の回路基板は前記バックプレーンの前記第１のコネクタに接続するための第２のコネクタを有することを特徴とする請求項５記載のストレージシステム。
【請求項１４】
前記バックプレーンに接続できる前記回路基板の総数がｎで、前記第４の回路基板の数と接続場所は予め定められており、前記第１、第２、第３及び第４の回路基板の総数がｎを超えない範囲で前記バックプレーンに接続する前記第１、第２、及び第３の回路基板それぞれの数を自由に選択できることを特徴とする請求項１３記載のストレージシステム。
【請求項１５】
前記クラスタの各々は、
前記インターフェース部が実装される第１の回路基板と、
前記メモリ部が実装される第２の回路基板と、
前記プロセッサ部が実装される第３の回路基板と、
前記スイッチ部が実装される第４の回路基板と、
前記第１、第２、第３及び第４の回路基板間を接続する信号線がプリントされ、プリントされた前記信号線に前記第１、第２、第３及び第４の回路基板を接続するための第１のコネクタを有する１つのバックプレーンとを有し、
前記第１、第２、第３及び第４の回路基板は前記バックプレーンの前記第１のコネクタに接続するための第２のコネクタを有することを特徴とする請求項９記載のストレージシステム。
【請求項１６】
前記複数のクラスタの数と前記バックプレーンの数が等しいことを特徴とする請求項１５記載のストレージシステム。
【請求項１７】
前記第４の回路基板はケーブルを接続するための第３のコネクタを有し、かつ前記第３のコネクタと前記スイッチ部を接続する信号線が基板上に配線されており、
前記複数のクラスタ間は、前記第３のコネクタ間を前記ケーブルによって接続することで相互に接続されることを特徴とする請求項１６記載のストレージシステム。
【請求項１８】
前記インターフェース部は第１の回路基板上に実装され、
前記メモリ部、前記プロセッサ部及び前記スイッチ部は第５の回路基板上に実装され、
更に前記第１と前記第５の回路基板間を接続する信号線がプリントされ、プリントされた前記信号線に前記第１と前記第５の回路基板を接続するための第４のコネクタを有するバックプレーンを有し、
前記第１と前記第５の回路基板は前記バックプレーンの前記第４のコネクタに接続するための第５のコネクタを有することを特徴とする請求項５記載のストレージシステム。
【請求項１９】
前記インターフェース部、前記メモリ部、前記プロセッサ部及び前記スイッチ部は、第６の回路基板上に実装されていることを特徴とする請求項５記載のストレージシステム。
【請求項２０】
計算機またはディスク装置と接続される接続部を有するインターフェース部と、
メモリ部と、
プロセッサ部と、
ディスク装置とを有し、
前記インターフェース部、前記メモリ部及び前記プロセッサ部の間は相互結合網で互いに接続されており、
前記計算機からデータ読み出しのコマンドを受信した前記インターフェースは、前記受信したコマンドを前記プロセッサ部へ転送し、
前記プロセッサ部は、前記コマンドを解析して前記コマンドで要求されるデータの格納場所を特定し、前記メモリ部へアクセスして前記コマンドで要求されるデータが前記メモリ部に格納されているかどうかを確認し、
前記メモリ部に前記コマンドで要求されるデータが格納されている場合、前記プロセッサ部は、前記インターフェース部に前記メモリ部から前記要求されるデータの読み出しを前記相互結合網を介して指示し、
前記インターフェース部は前記プロセッサ部の指示に従って、前記要求されるデータを前記メモリ部から前記相互結合網を介して読み出して前記計算機へ転送し、
前記メモリ部に前記コマンドで要求されるデータが格納されていない場合、前記プロセッサ部は、前記要求されるデータが格納される前記ディスク装置が接続される前記インターフェース部に前記ディスク装置から前記要求されたデータを読み出して前記メモリ部へ格納するよう、前記相互結合網を介して指示し、
前記ディスク装置が接続される前記インターフェース部は、前記プロセッサ部からの指示に基づいて、前記要求されたデータを前記ディスク装置から読み出して前記相互結合網を介して前記メモリ部に転送し、転送の終了を前記プロセッサ部に送信し、
前記プロセッサ部は、前記転送の終了を受信後、前記計算機が接続される前記インターフェース部に前記メモリ部から前記要求されたデータを読み出して前記計算機へ転送することを前記相互結合網を介して指示し、
前記計算機が接続される前記インターフェース部は、前記プロセッサ部の指示に基づいて、前記メモリ部から前記要求されたデータを前記相互結合網を介して読み出して前記計算機へ転送することを特徴とするストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、小規模から大規模までスケーラブルに構成を拡張可能なストレージシステムに関する。
【背景技術】
【０００２】
昨今、情報処理システムで処理されるデータを保存するストレージシステムが、情報処理システムの中心的な役割を担うようになっている。ストレージシステムには、小規模な構成から大規模な構成まで数多くの種類のシステムがある。
【０００３】
例えば、図２０に示すような構成のストレージシステムが特許文献１に開示されている。このストレージシステムは、計算機（以下「サーバ」とも言う）３との間のデータ転送を実行する複数のチャネルインターフェース（以下「ＩＦ」とも言う）部１１、ハードディスク群２との間のデータ転送を実行する複数のディスクＩＦ部１６、ハードディスク群２に格納するデータを一時的に格納するキャッシュメモリ部１４、ストレージシステム８に関する制御情報（例えば、ストレージシステム８内のデータ転送制御に関する情報、ハードディスク群２に格納するデータの管理情報等）を格納する制御メモリ部１５及びハードディスク群２とを有する。そして、チャネルＩＦ部１１、ディスクＩＦ部１６及びキャッシュメモリ部１４との間は相互結合網４１で接続され、チャネルＩＦ部１１、ディスクＩＦ部１６及び制御メモリ部１５との間は相互結合網４２で接続されている。また、相互結合網４１や相互結合網４２は共通バスやスイッチで構成される。
【０００４】
特許文献１記載のストレージシステムでは、上述の構成により、１つのストレージシステム８内において、キャッシュメモリ部１４および制御メモリ部１５は全てのチャネルＩＦ部１１及びディスクＩＦ部１６からアクセス可能な構成となっていた。
【０００５】
また、特許文献２に開示されている従来技術では、図２１に示すように、複数のディスクアレイ装置４がディスクアレイスイッチ５を介して複数のサーバ３に接続され、ディスクアレイスイッチ５及び各ディスクアレイ装置４に接続されたシステム構成管理手段６０で、複数のディスクアレイ装置４を１つのストレージシステム９として管理する。
【０００６】
【特許文献１】米国特許第6385681号
【０００７】
【特許文献２】米国特許第6542961号
【発明の開示】
【発明が解決しようとする課題】
【０００８】
企業は情報処理システムへの初期投資を抑え、ビジネス規模の拡張に応じて情報処理システムの拡張を行う傾向にある。このため、初期投資が小さくかつ事業規模に合わせてリーズナブルな投資で規模を拡張するためのコストおよび性能のスケーラビリティがストレージシステムに要求される。ここで従来技術の性能のスケーラビリティ及びコストについて検討する。
【０００９】
ストレージシステムに要求される性能（単位時間当たりのデータの入出力回数や単位時間当たりのデータの転送量）は年々向上している。従って、将来的な性能向上に対応するため、特許文献１のストレージシステムが有するチャネルＩＦ部１１およびディスクＩＦ部１６のデータ転送処理性能も向上させる必要がある。
【００１０】
しかし特許文献１の技術では、全てのチャネルＩＦ部１１と全てのディスクＩＦ部１６が、キャッシュメモリ部１４および制御メモリ部１５を介して、チャネルＩＦ部１１とディスクＩＦ部１６の間のデータ転送を制御する。従ってチャネルＩＦ部１１およびディスクＩＦ部１６のデータ転送処理性能が向上すると、キャッシュメモリ部１４や制御メモリ部へのアクセス負荷が増大する。するとこのアクセス負荷がネックとなり、ストレージシステム８の性能を向上することが将来的に難しくなる、すなわち性能のスケーラビリティを確保できなくなる。
【００１１】
一方特許文献２の技術では、ディスクアレイスイッチ５のポート数を増やすことや複数のディスクアレイスイッチ５を多段に接続することで、接続可能なディスクアレイ装置４およびサーバ３の数を増やすことができる。すなわち性能のスケーラビリティを確保することができる。
【００１２】
しかしながら、特許文献２の技術では、サーバ３はディスクアレイスイッチ５を介してディスクアレイ装置４にアクセスする。したがって、ディスクアレイスイッチ５が有するサーバ３とのインターフェース部においてサーバとディスクアレイスイッチとの間のプロトコルがディスクアレイスイッチ内のプロトコルに変換され、さらにディスクアレイスイッチ５が有するディスクアレイ装置４とのインターフェース部においてディスクアレイスイッチ内のプロトコルがディスクアレイスイッチとディスクアレイ装置との間のプロトコルに変換されるという２回のプロトコル変換処理が発生する。従ってディスクアレイスイッチを介さずに直接ディスクアレイ装置にアクセス可能な場合に比べ、応答性能が劣る。
【００１３】
またコストを考慮しなければ、特許文献１において、キャッシュメモリ部１４や制御メモリ部を大規模化して許容可能なアクセス性能を向上させることは可能である。しかし、全てのチャネルＩＦ部１１およびディスクＩＦ部１６からキャッシュメモリ部１４や制御メモリ部１５をアクセス可能とするためにキャッシュメモリ部１４や制御メモリ部１５をそれぞれ１つの共有メモリ空間として管理する必要がある。このため、キャッシュメモリ部１４や制御メモリ部１５を大規模化すると、小規模構成におけるストレージシステムの低コスト化が難しく、小規模構成のストレージシステムを低価格で提供することが難しい。
【課題を解決するための手段】
【００１４】
上述した課題を解決するために、本発明の一実施態様は以下の構成を有する。具体的には、計算機またはディスク装置との接続部を有するインターフェース部、計算機またはディスク装置との間で送受信されるデータや制御情報を格納するメモリ部、計算機とディスク装置との間でのデータの転送を制御するマイクロプロセッサを有するプロセッサ部、及びディスク部を有するストレージシステムであって、インターフェース部、メモリ部、プロセッサ部の間が相互結合網で互いに接続されている構成である。
【００１５】
そして、本発明のストレージシステムでは、プロセッサ部がインターフェース部とメモリ部との間で制御情報をやり取りすることにより、プロセッサ部が、計算機から要求されたデータ読み出し又はデータの書き込みにかかるデータの転送を指示する。
【００１６】
尚、相互結合網の一部または全部を、データを転送する相互結合網と制御情報を転送する相互結合網に分離する構成としても良い。又、相互結合網は複数のスイッチ部から構成されていても良い。
【００１７】
また本発明の他の実施態様として、以下の構成がある。具体的には、複数のクラスタが通信網を介して接続されるストレージシステムである。ここで個々のクラスタは、計算機またはディスク装置との接続部を有するインターフェース部、計算機またはディスク装置との間でリード／ライトされるデータやシステムの制御情報を格納するメモリ部、計算機とディスク装置との間でのデータのリード／ライトを制御するマイクロプロセッサを有するプロセッサ部、及びディスク部を有する。そして、各クラスタ内のインターフェース部、メモリ部及びプロセッサ部は、通信網を介して他のクラスタ内の各部と接続される構成とする。
【００１８】
尚、各クラスタ内のインターフェース部、メモリ部及びプロセッサ部は、少なくとも１つのスイッチ部によりクラスタ内で接続され、接続パスにより各クラスタのスイッチ部間を相互に接続する構成としても良い。
【００１９】
更に、各クラスタが有するスイッチ部間を別のスイッチを介して接続することで、各クラスタ間を接続する構成としても良い。
【００２０】
又、他の実施態様として、上述した実施態様におけるインターフェース部がプロトコル処理用のプロセッサを有する構成としても良い。この場合、インターフェース部においてプロトコル処理を行い、プロセッサ部においてストレージシステム内におけるデータ転送を制御する構成としても良い。
【００２１】
その他、本願が開示する課題、及びその解決方法は、発明の実施形態の欄及び図面により明らかにされる。
【発明の効果】
【００２２】
本発明によれば、サーバ接続数やハードディスク接続数やシステム性能に対するユーザの要求に柔軟に対応可能なフレキシブルな構成のストレージシステムを提供することが可能となる。また、ストレージシステムの共有メモリネックを解消するとともに、小規模な構成の低コスト化を図り、小規模から大規模な構成までコストと性能のスケーラビリティを実現可能なストレージシステムを提供することが可能となる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施形態を図面を用いて説明する。
【実施例１】
【００２４】
図１は、第一の実施形態のストレージシステムの構成例を示す図である。ストレージシステム１は、サーバ３あるいはハードディスク群２とのデータの送受信を行うインターフェース部１０、プロセッサ部８１、メモリ部２１及びハードディスク群２を有する。インターフェース部１０、プロセッサ部８１及びメモリ部２１の間は相互結合網３１を介して接続されている。
相互結合網３１の具体的な構成の一例を図２に示す。
【００２５】
相互結合網３１は２つのスイッチ部５１を有する。インターフェース部１０、プロセッサ部８１及びメモリ部２１は、２つのスイッチ部５１と１本ずつの通信パスで各々接続される。ここで、通信パスとはデータや制御情報を伝送するための１つまたは複数の信号線から成る伝送路である。これにより、インターフェース部１０、プロセッサ部８１及びメモリ部２１のそれぞれの間で２つの通信経路を確保し、信頼性をあげることが可能となる。なお、ここで、上記個数や本数は一実施例に過ぎず、個数を上記に限定するものではない。このことは以下に説明する実施形態全てに当てはまる。
また、相互結合網はスイッチを利用したものを例に示したが、相互に接続され制御情報やデータが転送されれば良いのであり、例えばバスで構成されても良い。
【００２６】
また、図３に示すように、相互結合網３１を、データを転送する相互結合網４１と制御情報を転送する相互結合網４２に分離しても良い。こうすることにより、データと制御情報を１つの通信パスで転送する場合(図１)に比べ、データと制御情報の転送が相互に干渉することが無くなる。これによってデータ及び制御情報の転送性能を向上することが可能となる。
【００２７】
図４は、相互結合網４１、４２の具体的な構成の一例を示す図である。相互結合網４１、４２は、それぞれ２つのスイッチ部５２、５６を有する。インターフェース部１０、プロセッサ部８１及びメモリ部２１は、２つのスイッチ部５２及び２つのスイッチ部５６の各々と１本ずつの通信パスで接続される。これにより、インターフェース部１０、プロセッサ部８１、およびメモリ部２１のそれぞれの間でデータ用パス９１を２本、制御情報用パス９２を２本それぞれ確保し、信頼性をあげることが可能となる。
【００２８】
図８は、インターフェース部１０の構成の具体例を示す図である。
インターフェース部１０は、サーバ３あるいはハードディスク群２と接続される４つのＩＦ（外部ＩＦ）１００、プロセッサ部８１あるいはメモリ部２１との間のデータ／制御情報の転送を制御する転送制御部１０５及びデータのバッファリングや制御情報の格納を行うメモリモジュール１２３を有する。
【００２９】
外部ＩＦ１００は転送制御部１０５と接続される。また、メモリモジュール１２３は転送制御部１０５に接続される。転送制御部１０５は、メモリモジュール１２３へのデータ／制御情報のリード／ライトを制御するメモリコントローラとしても動作する。
【００３０】
ここで、外部ＩＦ１００あるいはメモリモジュール１２３と転送制御部１０５の間の接続構成は一実施例に過ぎず、構成を上記に限定するものではない。少なくとも、外部ＩＦ１００から転送制御部１０５を経てプロセッサ部８１、メモリ部２１へデータ／制御情報を転送可能な構成であれば良い。
【００３１】
なお、図４に示すデータ用パス９１と制御情報用パス９２を分離した場合のインターフェース部１０においては、転送制御部１０５にはデータ用パス９１が２本、制御情報用パス９２が２本接続される。
【００３２】
図９は、プロセッサ部８１の構成の具体的例を示す図である。
プロセッサ部２１は、２つのマイクロプロセッサ１０１、インターフェース部１０あるいはメモリ部２１との間のデータ／制御情報の転送を制御する転送制御部１０５及びメモリモジュール１２３を有する。メモリモジュール１２３は転送制御部１０５に接続される。転送制御部１０５は、メモリモジュール１２３へのデータ／制御情報のリード／ライトを制御するメモリコントローラとしても動作する。メモリモジュール１２３は、２つのマイクロプロセッサ１０１の主記憶として共有され、データや制御情報を格納する。なお、プロセッサ部２１は、２つのマイクロプロセッサ１０１に共有されるメモリモジュール１２３の代わりに、各マイクロプロセッサ１０１専用のメモリモジュールをマイクロプロセッサの数だけ有しても良い。
【００３３】
マイクロプロセッサ１０１は転送制御部１０５に接続される。マイクロプロセッサ１０１は、メモリ部２１の制御メモリモジュール１２７内に格納された制御情報に基づいて、メモリ部２１が有するキャッシュメモリへのデータのリード／ライト、キャッシュメモリのディレクトリ管理、インターフェース部１０とメモリ部２１との間のデータ転送を制御する。
具体的には、例えばインターフェース部１０内の外部ＩＦ１００が、データのリードまたはライトのアクセス要求を示す制御情報をプロセッサ部８１内のメモリモジュール１２３に書き込む。その後、マイクロプロセッサ１０１は書き込まれた制御情報を読み出して解釈し、外部ＩＦ１００からどのメモリ部２１へデータを転送するかを示す制御情報及びそのデータ転送に必要なパラメータをインターフェース部１０内のメモリモジュール１２３へ書き込む。外部ＩＦ１００はその制御情報とパラメータに従い、メモリ部２１へのデータ転送を実行する。
【００３４】
またマイクロプロセッサ１０１は、インターフェース部１０に接続されたハードディスク群２へ書き込むデータの冗長化処理、いわゆるＲＡＩＤ処理を実行する。このＲＡＩＤ処理は、インターフェース部１０やメモリ部２１において実行しても問題ない。更にマイクロプロセッサ１０１は、ストレージシステム１における記憶領域の管理（論物変換等）も行う。
【００３５】
ここで、マイクロプロセッサ１０１、転送制御部１０５及びメモリモジュール１２３の間の接続構成は一例に過ぎず、構成を上記に限定するものではない。少なくともマイクロプロセッサ１０１、転送制御部１０５及びメモリモジュール１２３の間で相互にデータを転送できる構成であれば良い。
なお、図４に示すようにデータ用パス９１と制御情報用パス９２を分離した場合、プロセッサ部８１の転送制御部１０６にはデータ用パス９１（ここでは２本）と制御情報用パス９２（ここでは２本）とが接続される。
【００３６】
図１０は、メモリ部２１の構成の具体的例を示す図である。
メモリ部２１は、キャッシュメモリモジュール１２６、制御メモリモジュール１２７及びメモリコントローラ１２５を有する。キャッシュメモリモジュール１２６には、ハードディスク群２に書き込むデータまたはハードディスク群２から読み出したデータが一時的に格納（以下「キャッシング」）される。制御メモリモジュール１２７には、キャッシュメモリモジュール１２６のディレクトリ情報（キャッシュメモリ上のデータを格納する論理的な区画に関する情報）、インターフェース部１０、プロセッサ部８１及びメモリ部２１間のデータ転送を制御するための情報、ストレージシステム１の管理情報並びに構成情報等が格納される。メモリコントローラ１２５は、キャッシュメモリモジュール１２６と制御メモリモジュール１２７へのデータのリード／ライトの処理を独立に制御する。
また、メモリコントローラ１２５は、インターフェース部１０、プロセッサ部８１及び他のメモリ部２１との間のデータ／制御情報の転送を制御する。
【００３７】
ここで、キャッシュメモリモジュール１２６と制御メモリモジュール１２７を物理的に１つにまとめ、１つのメモリ空間上の論理的に異なる領域にキャッシュメモリ領域と制御メモリ領域を割り当てても良い。こうすることにより、メモリモジュール数を減らすことができ、部品コストを削減することが可能となる。
【００３８】
また、メモリコントローラ１２５をキャッシュメモリモジュール制御用と制御メモリモジュール制御用に分離しても良い。
【００３９】
ここで、ストレージシステム１がメモリ部２１を複数有する場合、複数のメモリ部２１を２つのグループに分け、そのグループ間でキャッシュメモリモジュール及び制御メモリモジュールへ格納するデータや制御情報を二重化しても良い。こうすることにより、１つのグループのキャッシュメモリモジュールまたは制御メモリモジュールに障害が発生した場合、もう一方のグループのキャッシュメモリモジュールまたは制御メモリモジュールに格納されたデータ等で動作を継続することが可能となり、ストレージシステム１の信頼性が向上する。
【００４０】
なお、図４に示すようにデータ用パス９１と制御情報用パス９２を分離した場合、メモリコントローラ１２５にはデータ用パス９１（ここでは２本）と制御情報用パス９２（ここでは２本）とが接続される。
【００４１】
図１１は、スイッチ部５１の構成の具体例を示す図である。
スイッチ部５１はスイッチＬＳＩ５８を有する。スイッチＬＳＩ５８は、４つのパスＩＦ１３０、ヘッダ解析部１３１、アービタ１３２、クロスバスイッチ１３３、８つのバッファ１３４及び４つのパスＩＦ１３５を有する。
【００４２】
パスＩＦ１３０は、インターフェース部１０と接続される通信パスが接続されるＩＦである。インターフェース部１０及びパスＩＦ１３０は、一対一に接続される。パスＩＦ１３５は、プロセッサ部８１又はメモリ部２１と接続される通信パスが接続されるＩＦである。プロセッサ部８１又はメモリ部２１とパスＩＦ１３５は、一対一に接続される。バッファ１３４には、インターフェース部１０、プロセッサ部８１及びメモリ部２１の間で転送されるパケットが一時的に格納（バッファリング）される。
【００４３】
図１２は、インターフェース部１０、プロセッサ部８１及びメモリ部２１の間で転送されるパケットのフォーマットの一例を示す図である。パケットとは、各部の間でのデータ（制御情報を含む）転送の際に使用されるプロトコルにおけるデータ転送の単位である。パケット２００は、ヘッダ２１０、ペイロード２２０及びエラーチェックコード２３０を有する。ヘッダ２１０には、少なくともパケットの送信元と送信先を示す情報が格納される。ペイロード２２０には、コマンド、アドレス、データ、ステータス等の情報が格納される。また、エラーチェックコード２３０は、パケット転送時にパケット内で発生するエラーの検出のために使用するコードである。
【００４４】
スイッチＬＳＩ５８は、パスＩＦ１３０又は１３５がパケットを受信すると、受信したパケットのヘッダ２１０をヘッダ解析部１３１へ送る。ヘッダ解析部１３１は、ヘッダ２１０に含まれるパケットの送信先の情報に基づいて、各パスＩＦ間の接続要求を割り出す。具体的には、ヘッダ解析部１３１は、ヘッダ２１０で指定されるパケット送信先の装置（メモリ部等）と接続されているパスＩＦを割り出し、パケットを受信したパスＩＦと割り出されたパスＩＦとの間での接続要求を生成する。
【００４５】
その後、ヘッダ解析部１３１は、生成した接続要求をアービタ１３２へ送る。アービタ１３２は、割り出された各パスＩＦの接続要求を元に各パスＩＦ間の調停（アービトレーション）を行う。その結果に基づいて、アービタ１３２は、クロスバスイッチ１３３に対して接続切換を示す信号を出力する。信号を受信したクロスバスイッチ１３３は、信号の内容に基づいてクロスバスイッチ１３３内の接続を切り換え、所望のパスＩＦ間の接続を実現する。
【００４６】
ここで、本実施例では各パスＩＦに一対一にバッファを持つ構成としたが、スイッチＬＳＩ５８が１つの大きなバッファを持ち、その中から各パスＩＦにパケット格納領域を割り当てるという構成にしても良い。また、スイッチＬＳＩ５８はスイッチ部５１内の障害情報を格納するメモリを有する。
【００４７】
図１６は、相互結合網３１の他の構成例を示す図である。
図１６では、スイッチ部５１のパスＩＦの数を１０に増やし、かつスイッチ部５１の数を４に増やした。その結果、インターフェース部１０、プロセッサ部８１及びメモリ部２１の数が図２の構成の倍になる。尚、図１６においては、インターフェース部１０は一部のスイッチ部５１にしか接続されないが、プロセッサ部８１及びメモリ部２１は全てのスイッチ部５１に接続される構成である。こうしても、全てのインターフェース部１０から全てのメモリ部２１及び全てのプロセッサ部８１へのアクセスが可能となる。
【００４８】
また逆に、インターフェース部１０個々が全てのスイッチ部５１と接続され、プロセッサ部８１及びメモリ部２１の各々は一部のスイッチ部５１と接続される構成としても良い。例えば、プロセッサ部８１及びメモリ部２１を２つのグループに分け、１つのグループは２つのスイッチ部５１と接続され、他のグループは残りの２つのスイッチ部５１と接続される構成とする。こうすることによっても、全てのインターフェース部１０から全てのメモリ部２１及び全てのプロセッサ部８１へのアクセスが可能となる。
【００４９】
次に、サーバ３からストレージシステム１のハードディスク群２に記録されたデータを読み出す場合の処理手順の例を述べる。なお、以下の説明においてスイッチ５１を使用するデータ転送には全てパケットが使用される。又、プロセッサ部８１とインタフェース部１０との通信において、プロセッサ部８１から送信された制御情報（データ転送等に必要な情報）をインターフェース部１０が格納する場所は、あらかじめ決まっている。
【００５０】
図２２は、サーバ３からストレージシステム１のハードディスク群２に記録されたデータを読み出す場合の処理手順例を示したフローチャートである。
まずサーバ３は、ストレージシステム１に対してデータの読出しコマンドを発行する。インターフェース部１０内の外部ＩＦ１００がコマンドを受信する（７４２）と、コマンド待ち（７４１）にあった外部ＩＦ１００は、受信したコマンドを転送制御部１０５及び相互結合網３１（ここではスイッチ部５１とする）を介してプロセッサ部８１内の転送制御部１０５へ転送する。コマンドを受信した転送制御部１０５は、メモリモジュール１２３に受信したコマンドを書き込む。
【００５１】
プロセッサ部８１のマイクロプロセッサ１０１は、メモリモジュール１２３へコマンドが書き込まれたことをメモリモジュール１２３へのポーリング、または転送制御部１０５からの書き込みを示す割り込みによって検出する。コマンドの書き込みを検知したマイクロプロセッサ１０１は、メモリモジュール１２３から該当するコマンドを読み出してコマンド解析を行う（７４３）。マイクロプロセッサ１０１は、コマンド解析の結果、サーバ３が要求するデータが記録されている記憶領域を示す情報を割り出す（７４４）。
【００５２】
マイクロプロセッサ１０１は、コマンド解析によって得られた記憶領域の情報及びプロセッサ部８１内のメモリモジュール１２３又はメモリ部２１内の制御メモリモジュール１２７に格納されているキャッシュメモリモジュールのディレクトリ情報から、メモリ部２１内のキャッシュメモリモジュール１２６に、コマンドで要求されるデータ（以下「要求データ」とも言う）が記録されているかどうかを確認する（７４５）。
【００５３】
キャッシュメモリモジュール１２６に要求データがあった場合（以下「キャッシュヒット」とも言う。）（７４６）、マイクロプロセッサ１０１は、キャッシュメモリモジュール１２６からインターフェース部１０内の外部ＩＦ１００へ要求データを転送するために必要な情報、具体的には要求データが格納されているキャッシュメモリモジュール１２６内のアドレス及び転送先となるインターフェース部１０が有するメモリモジュール１２３内のアドレスの情報を、プロセッサ部８１内の転送制御部１０５、スイッチ部５１及びインターフェース部１０内の転送制御部１０５を介してインターフェース部１０内のメモリモジュール１２３へ転送する。
【００５４】
その後、マイクロプロセッサ１０１は、外部ＩＦ１００にメモリ部２１からデータを読み出すように指示する（７５２）。
【００５５】
指示を受けたインターフェース部１０内の外部ＩＦ１００は、まず自インターフェース部１０内のメモリモジュール１２３の所定の場所から要求データの転送に必要な情報を読み出す。その情報をもとに、インターフェース部１０内の外部ＩＦ１００はメモリ部２１のメモリコントローラ１２５へアクセスして、キャッシュメモリモジュール１２６からの要求データの読み出しを要求する。要求を受けたメモリコントローラ１２５は、キャッシュメモリモジュール１２６から要求データを読み出し、その要求データを、要求を受けたインターフェース部１０へ転送する（７５３）。要求データを受信したインターフェース部１０は、受信した要求データをサーバ３へ送出する（７５４）。
【００５６】
一方、キャッシュメモリモジュール１２６に要求データがない場合（以下「キャッシュミス」とも言う。）（７４６）、まずマイクロプロセッサ１０１は、メモリ部２１内の制御メモリモジュール１２７へアクセスし、キャッシュメモリモジュールのディレクトリ情報に、メモリ部２１内のキャッシュメモリモジュール１２６に要求データを格納する領域を確保するための情報、具体的には空いているキャッシュスロットを指定する情報を登録する（以下「キャッシュ領域確保」とも言う。）（７４７）。キャッシュ領域確保後、マイクロプロセッサ１０１は、メモリ部２１内の制御メモリモジュール１２７へアクセスし、制御メモリモジュール１２７に格納されている記憶領域の管理情報から、要求データが格納されているハードディスク群２が接続されているインターフェース部１０（以下「目的インターフェース部１０」とも言う）を割り出す（７４８）。
【００５７】
その後、マイクロプロセッサ１０１は、目的インターフェース部１０内の外部ＩＦ１００からキャッシュメモリモジュール１２６へ要求データを転送するために必要な情報を、プロセッサ部８１内の転送制御部１０５、スイッチ部５１及び目的インターフェース部１０内の転送制御部１０５を介して、目的インターフェース部１０内のメモリモジュール１２３へ転送する。そしてマイクロプロセッサ１０１は、ハードディスク群２から要求データを読み出しメモリ部２１へ要求データを書き込むよう、目的インターフェース部１０内の外部ＩＦ１００へ指示する。
【００５８】
指示を受けた目的インターフェース部１０内の外部ＩＦ１００は、指示に基づいて自インターフェース部１０内のメモリモジュール１２３の所定の場所から要求データの転送に必要な情報を読み出す。その情報をもとに、目的インターフェース部１０内の外部ＩＦ１００はハードディスク群２から要求データを読み出し（７４９）、読み出したデータをメモリ部２１内のメモリコントローラ１２５へ転送する。メモリコントローラ１２５は、受信した要求データをキャッシュメモリモジュール１２６へ書き込む（７５０）。要求データの書き込みが終了すると、メモリコントローラ１２５は、その終了をプロセッサ１０１へ通知する。
【００５９】
キャッシュメモリモジュール１２６への書き込みの終了を検出したマイクロプロセッサ１０１は、メモリ部２１内の制御メモリモジュール１２７へアクセスし、キャッシュメモリモジュールのディレクトリ情報を更新する。具体的には、マイクロプロセッサ１０１は、キャッシュメモリモジュールの内容が更新されたことをディレクトリ情報に登録する（７５１）。更にマイクロプロセッサ１０１は、データ読み出しの要求コマンドを受けたインターフェース部１０に対して、メモリ部２１から要求データを読み出すよう、指示を送る。
【００６０】
指示を受けたインターフェース部１０は、キャッシュヒット時の処理手順と同様に、キャッシュメモリモジュール１２６から要求データを読み出し、サーバ３へ転送する。以上のようにして、ストレージシステム１は、サーバ３からのデータの読み出し要求に対し、キャッシュメモリモジュールまたはハードディスク群２からデータを読み出して、サーバ３へ送信する。
【００６１】
次に、サーバ３からストレージシステム１にデータを書き込む場合の処理手順の例を述べる。図２３は、サーバ３からストレージシステム１にデータを書き込む場合の処理手順の例を示したフローチャートである。
まず、サーバ３は、ストレージシステム１に対してデータの書き込みコマンドを発行する。なお、本実施形態では、書き込みコマンドには、書き込まれるべきデータ（以下「更新データ」とも言う）が含まれているとして説明を行う。ただし、書き込みコマンドには更新データが含まれない場合もある。この場合は、一旦書き込みコマンドによってストレージシステム１の状態を確認した後で、サーバ３は更新データを送信する。
【００６２】
インターフェース部１０内の外部ＩＦ１００がコマンドを受信する（７６２）と、コマンド待ち（７６１）にあった外部ＩＦ１００は、受信したコマンドを、転送制御部１０５及びスイッチ部５１を介してプロセッサ部８１内の転送制御部１０５へ転送する。転送制御部１０５は、受信したコマンドをプロセッサ部のメモリモジュール１２３へ書き込む。尚、更新データは、インターフェース部１０のメモリモジュール１２３に一時的に保存される。
【００６３】
プロセッサ部８１のマイクロプロセッサ１０１は、メモリモジュール１２３へコマンドが書き込まれたことを、メモリモジュール１２３へのポーリングや転送制御部１０５からの書き込みを示す割り込み等によって検出する。コマンドの書き込みを検出したマイクロプロセッサ１０１は、メモリモジュール１２３から該当するコマンドを読み出してコマンド解析を行う（７６３）。マイクロプロセッサ１０１は、コマンド解析の結果から、サーバ３が書き込みを要求する更新データを記録する記憶領域を示す情報を割り出す（７６４）。マイクロプロセッサ１０１は、更新データを書き込む記憶領域を示す情報及びプロセッサ部２１内のメモリモジュール１２３又はメモリ部２１内の制御メモリモジュール１２７に格納されているキャッシュメモリモジュールのディレクトリ情報に基づいて、メモリ部２１内のキャッシュメモリモジュール１２６に、書き込み要求の対象、すなわち更新対象となるデータ（以下「更新対象データ」）が記録されているかどうかを判断する（７６５）。
【００６４】
キャッシュメモリモジュール１２６に更新対象データがあった場合（以下「ライトヒット」とも言う。）（７６６）、マイクロプロセッサ１０１は、インターフェース部１０内の外部ＩＦ１００からキャッシュメモリモジュール１２６へ更新データを転送するために必要な情報を、プロセッサ部８１内の転送制御部１０５、スイッチ部５１及びインターフェース部１０内の転送制御部１０５を介して、インターフェース部１０内のメモリモジュール１２３へ転送する。そして、マイクロプロセッサ１０１は、外部ＩＦ１００に、サーバ３から転送された更新データをメモリ部２１内のキャッシュメモリモジュール１２６へ書き込むように指示する（７６８）。
【００６５】
指示を受けたインターフェース部１０内の外部ＩＦ１００は、自インターフェース部１０内のメモリモジュール１２３の所定の場所から更新データの転送に必要な情報を読み出す。読み出した情報をもとに、インターフェース部１０内の外部ＩＦ１００は、転送制御部１０５及びスイッチ部５１を介して、メモリ部２１内のメモリコントローラ１２５へ更新データを転送する。更新データを受信したメモリコントローラ１２５は、キャッシュメモリモジュール１２６に格納されている更新対象データを要求データで上書きする（７６９）。書き込み終了後、メモリコントローラ１２５は、指示を送信したマイクロプロセッサ１０１へ更新データの書き込みの終了を通知する。
【００６６】
キャッシュメモリモジュール１２６への更新データの書き込みの終了を検知したマイクロプロセッサ１０１は、メモリ部２１内の制御メモリモジュール１２７へアクセスし、キャッシュメモリのディレクトリ情報を更新する（７７０）。具体的には、マイクロプロセッサ１０１は、ディレクトリ情報にキャッシュメモリモジュールの内容が更新されたことを登録する。それとともに、マイクロプロセッサ１０１は、サーバ３から書き込み要求を受けた外部ＩＦ１００に、書き込み完了通知をサーバ３へ送出するように指示する（７７１）。その指示を受けた外部ＩＦ１００は、書き込み完了通知をサーバ３へ送出する（７７２）。
【００６７】
キャッシュメモリモジュール１２６内に更新対象データがない場合（以下「ライトミス」とも言う。）（７６６）、マイクロプロセッサ１０１は、メモリ部２１内の制御メモリモジュール１２７へアクセスし、キャッシュメモリモジュールのディレクトリ情報に、メモリ部２１内のキャッシュメモリモジュール１２６に更新データを格納する領域を確保するための情報、具体的には空きキャッシュスロットを指定する情報を登録する（キャッシュ領域確保。）（７６７）。キャッシュ領域確保後、ストレージシステム１は、ライトヒット時と同様の制御を行う。ただし、ライトミスの場合にはキャッシュメモリモジュール１２６には更新対象データが存在しないので、メモリコントローラ１２５は、更新データを格納する場所として確保された記憶領域に更新データを格納する。
【００６８】
その後マイクロプロセッサ１０１は、キャッシュメモリモジュール１２６の空き容量等を判断して（７８１）、サーバ３からの書き込み要求とは非同期に、メモリ部２１内のキャッシュメモリモジュール１２６に書き込まれた更新データをハードディスク群２に記録する処理を行う。具体的には、マイクロプロセッサ１０１は、メモリ部２１内の制御メモリモジュール１２７へアクセスし、記憶領域の管理情報から、更新データを格納するハードディスク群２が接続されているインターフェース部１０（以下「更新目的インターフェース部１０」とも言う）を割り出す（７８２）。その後、マイクロプロセッサ１０１は、キャッシュメモリモジュール１２６から更新目的インターフェース部１０内の外部ＩＦ１００へ更新データを転送するために必要な情報を、プロセッサ部８１内の転送制御部１０５、スイッチ部５１及びインターフェース部１０内の転送制御部１０５を介して、更新目的インターフェース部１０内のメモリモジュール１２３へ転送する。
【００６９】
その後マイクロプロセッサ１０１は、キャッシュメモリモジュール１２６から更新データを読み出して更新目的インターフェース部１０の外部ＩＦ１００へ転送するように、更新目的インターフェース部１０へ指示する。指示を受けた更新目的インターフェース部１０内の外部ＩＦ１００は、自インターフェース部１０内のメモリモジュール１２３の所定の場所から更新データの転送に必要な情報を読み出す。読み出した情報をもとに、更新目的インターフェース部１０内の外部ＩＦ１００は、メモリ部２１内のメモリコントローラ１２５に、キャッシュメモリモジュール１２６から更新データを読み出し、その更新データをメモリコントローラ１２５から更新目的インターフェース部１０内の転送制御部１０５を介して外部ＩＦ１００へ転送するよう指示する。
【００７０】
指示を受けたメモリコントローラ１２５は、更新データを更新目的インターフェース部１０の外部ＩＦ１００へ転送する（７８３）。更新データを受信した外部ＩＦ１００は、ハードディスク群２へ更新データを書き込む（７８４）。以上のようにして、サーバ３からのデータの書き込み要求に対し、ストレージシステム１は、キャッシュメモリモジュールへデータを書き込み、さらにハードディスク群２へデータを書き込む。
【００７１】
本実施例に示すストレージシステム１では、管理端末６５をストレージシステム１に接続し、管理端末６５から、システムの構成情報の設定、システムの立上げ／停止の制御、システム内各部の利用率、稼動状況、障害情報の収集、障害時の障害部位の閉塞／交換処理、制御プログラムの更新等を行う。ここで、システムの構成情報、利用率、稼動状況、障害情報はメモリ部２１の制御メモリモジュール１２７内に格納される。ストレージシステム１内には内部ＬＡＮ(Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ)９１を設ける。各プロセッサ部８１はＬＡＮインターフェースを有し、管理端末６５と各プロセッサ部８１は内部ＬＡＮ９１で接続されている。管理端末６５は内部ＬＡＮ経由９１で、各プロセッサ部８１にアクセスし、上記の各種処理を行う。
【００７２】
図１４及び１５は、本実施例に示す構成のストレージシステム１を筐体に実装する場合の構成例を示す図である。
【００７３】
ストレージシステム１の骨格を構成する筐体は、電源ユニットシャーシ８２３、制御ユニットシャーシ８２１及びディスクユニットシャーシ８２２とを有する。これらのシャーシに上述した各部が装填される。制御ユニットシャーシ８２１の一面には、インターフェース部１０、スイッチ部５１、プロセッサ部８１及びメモリ部２１間を接続する信号線がプリントされたバックプレーン８３１が設けられている（図１５）。バックプレーン８３１は各層に信号線をプリントした複数層の基板から構成される。バックプレーン８３１は、ＩＦパッケージ８０１、ＳＷパッケージ８０２、メモリパッケージ８０３又はプロセッサパッケージ８０４が接続されるコネクタ９１１を有する。バックプレーン８３１上の信号線は、各パッケージが接続されるコネクタ９１１内の定められた端子に繋がるようにプリントされている。また、同各パッケージへ電源を供給するための電源用の信号線がバックプレーン８３１上にプリントされている。
【００７４】
ＩＦパッケージ８０１は、各層に信号線をプリントした複数層の回路基板から構成される。ＩＦパッケージ８０１は、バックプレーン８３１に接続するためのコネクタ９１２を有する。またＩＦパッケージ８０１の回路基板には、図８に示すインターフェース部１０の構成における外部ＩＦ１００と転送制御部１０５間の信号線、メモリモジュール１２３と転送制御部１０５間の信号線及び転送制御部１０５をスイッチ部５１へ接続する信号線をコネクタ９１２に接続する信号線がプリントされている。更に、ＩＦパッケージ８０１の回路基板上には、外部ＩＦ１００の役割を果たす外部ＩＦ−ＬＳＩ９０１、転送制御部１０５の役割を果たす転送制御ＬＳＩ９０２及びメモリモジュール１２３を構成する複数のメモリＬＳＩ９０３が回路基板上の配線に従って実装されている。
【００７５】
また、外部ＩＦ−ＬＳＩ９０１、転送制御ＬＳＩ９０２及びメモリＬＳＩ９０３を駆動するための電源並びにクロック用の信号線もＩＦパッケージ８０１の回路基板上にプリントされている。また、ＩＦパッケージ８０１は、サーバ３またはハードディスク群２と外部ＩＦ−ＬＳＩ９０１とを接続するためのケーブル９２０をＩＦパッケージ８０１に接続するためのコネクタ９１３を有する。コネクタ９１３と外部ＩＦ−ＬＳＩ９０１間の信号線が回路基板上にプリントされている。
【００７６】
ＳＷパッケージ８０２、メモリパッケージ８０３及びプロセッサパッケージ８０４も、基本的にＩＦパッケージ８０１と同様の構成である。つまり、具体的には上述した各部の役割を果たすＬＳＩが回路基板の上に実装されており、その間を接続する信号線が回路基板にプリントされている。ただし、その他のパッケージは、ＩＦパッケージ８０１が備えるコネクタ９１３及びそれに接続するための信号線は備えていない。
【００７７】
制御ユニットシャーシ８２１の上には、ハードディスクドライブを実装したハードディスクユニット８１１を装填するためのディスクユニットシャーシ８２２を設ける。ディスクユニットシャーシ８２２は、ハードディスクユニット８１１とディスクユニットシャーシとを接続するためのバックプレーン８３２を有する。ディスクユニット８１１とバックプレーン８３２は、両者を接続するためのコネクタを有する。バックプレーン８３１と同様に、バックプレーン８３２は各層に信号線をプリントした複数層の基板から構成されている。更にバックプレーン８３２は、ＩＦパッケージ８０１に接続されるケーブル９２０が接続されるコネクタを有する。そのコネクタとディスクユニット８１１を接続するコネクタとの間の信号線及び電源供給用の信号線がバックプレーン８３２にプリントされている。
【００７８】
また、ケーブル９２０を接続する専用のパッケージを設け、そのパッケージをバックプレーン８３２に設けたコネクタに接続しても良い。
【００７９】
また、制御ユニットシャーシ８２１の下には、ストレージシステム１全体に電力を供給する電源ユニットやバッテリユニットを収めた電源ユニットシャーシ８２３を設ける。
そして、これらのシャーシを１９インチラック（図示していない）に収める。尚、シャーシの配置関係は図示した例に限られず、例えば電源ユニットシャーシが筐体の一番上に装填されても良い。
【００８０】
なお、ストレージシステム１はハードディスク群２を有さない構成もありうる。この場合、ストレージシステム１とは別の場所に存在するハードディスク群２や他のストレージシステム１とストレージシステム１とがＩＦパッケージ８０１に設けられた接続ケーブル９２０を介して接続されることになる。またこの場合、ハードディスク群２はディスクユニットシャーシ８２２に収め、ディスクユニットシャーシ８２２をディスクユニットシャーシ専用の１９インチラックに収める。更にストレージシステム１はハードディスク群２を有し、さらに他のストレージシステム１と接続する場合もある。この場合も、ストレージシステム１と他のストレージシステム１はＩＦパッケージ８０１に設けられた接続ケーブル９２０を介して相互に接続されることになる。
【００８１】
また上記では、インターフェース部１０、プロセッサ部８１、メモリ部２１及びスイッチ部をそれぞれ別個のパッケージに実装する場合について説明したが、例えば、スイッチ部５１、プロセッサ部８１及びメモリ部２１をまとめて１枚のパッケージに実装することも可能である。また、インターフェース部１０、スイッチ部５１、プロセッサ部８１及びメモリ部２１全てをまとめて１枚のパッケージに実装することも可能である。そうした場合、パッケージのサイズが変わり、それに合わせて図１８に示す制御ユニットシャーシ８２１の幅、高さを変える必要がある。また図１４では、パッケージを床面と垂直になる形態で制御ユニットシャーシ８２１へ実装しているが、パッケージが床面と水平になる形態で制御ユニットシャーシ８２１へ実装することも可能である。上記のインターフェース部１０、プロセッサ部８１、メモリ部２１及びスイッチ部５１の内、どの組合せを１つのパッケージに実装するかは任意であり、上記の実装の組合せは一例である。
【００８２】
制御ユニットシャーシ８２１に搭載可能なパッケージの枚数は、制御ユニットシャーシ８２１の幅と各パッケージの厚さから物理的に決まる。一方、図２に示す構成からわかるように、ストレージシステム１は、スイッチ部５１を介して、インターフェース部１０、プロセッサ部８１及びメモリ部２１を互いに接続する構成であるため、要求されるシステム規模、サーバ接続数、ハードディスク接続数、性能に合わせて、各部の数を自由に設定可能である。したがって、図１４に示すＩＦパッケージ８０１、メモリパッケージ８０３及びプロセッサパッケージ８０４に設けるバックプレーン８３１とのコネクタを共通化し、さらに、搭載するＳＷパッケージ８０２の枚数とＳＷパッケージ８０２を接続するバックプレーン８３１上のコネクタとを予め定めておくことにより、制御ユニットシャーシ８２１に搭載可能なパッケージの枚数から搭載するＳＷパッケージの枚数を差し引いた数を上限として、ＩＦパッケージ８０１、メモリパッケージ８０３及びプロセッサパッケージ８０４の枚数を自由に選んで搭載することが可能となる。こうすることにより、ユーザが要求するシステム規模、サーバ接続数、ハードディスク接続数、性能に合わせて、フレキシブルにストレージシステム１を構成することが可能となる。
【００８３】
本実施例では、図２０に示す従来技術のチャネルＩＦ部１１及びディスクＩＦ部１６からマイクロプロセッサ１０３を分離し、プロセッサ部８１として独立させることに特徴がある。こうすることにより、サーバ３あるいはハードディスク群２との接続インターフェース数の増減とは独立にマイクロプロセッサ数の増減が可能となり、サーバ３やハードディスク群２の接続数やシステムの性能といったユーザの要求に柔軟に応えることが可能なフレキシブルな構成のストレージシステムの提供を可能にできる。
【００８４】
また本実施例では、データのリードまたはライト時に、チャネルＩＦ部１１内のマイクロプロセッサ１０３で行っていた処理と、ディスクＩＦ部１６内のマイクロプロセッサ１０３で行っていた処理を、図１に示すプロセッサ部８１内の１つのマイクロプロセッサ１０１でまとめて一貫して処理する。こうすることにより、従来技術において必要であったチャネルＩＦ部とディスクＩＦ部のそれぞれのマイクロプロセッサ１０３間の処理の引継ぎのオーバヘッドを削減することが可能となる。
【００８５】
また、プロセッサ部８１の２つのマイクロプロセッサ１０１、あるいは異なるプロセッサ部８１各々から１つずつ選択される２つのマイクロプロセッサ１０１により、そのうちの一方のマイクロプロセッサ１０１がサーバ３とのインターフェース部１０側の処理、もう一方がハードディスク群２とのインターフェース部１０側の処理を行っても良い。
【００８６】
また、サーバ３とのインターフェース側の処理の負荷がハードディスク群２とのインターフェース側の処理の負荷より大きい場合、前者の処理により多くのマイクロプロセッサ１０１の処理量（例えばプロセッサ数、一つのプロセッサの占有率等）を割り当てることができる。負荷の大きさが逆の場合は、後者の処理により多くのマイクロプロセッサ１０１の処理量を割り当てることができる。したがって、ストレージシステム内の各処理の負荷の大小により、柔軟にマイクロプロセッサの処理量（リソース）を割り当てることが可能となる。
【実施例２】
【００８７】
図５は、第二の実施例の構成例を示す図である。
ストレージシステム１は、複数のクラスタ７０−１〜７０−ｎを相互結合網３１で相互に接続した構成を有する。一つのクラスタ７０は、サーバ３またはハードディスク群２が繋がるインターフェース部１０、メモリ部２１、プロセッサ部８１及び相互結合網３１の一部を、あるまとまった数有する。一つのクラスタ７０が有する各部の数は任意である。各クラスタ７０のインターフェース部１０、メモリ部２１及びプロセッサ部８１は相互結合網３１に接続される。したがって、各クラスタ７０の各部は、他のクラスタ７０の各部と相互結合網３１を介してパケットのやり取りを行うことができる。尚、各クラスタ７０は、ハードディスク群２を有していても良い。したがって、一つのストレージシステム１の中に、ハードディスク群２を有するクラスタ７０とハードディスク群２を有さないクラスタ７０とが混在する場合もある。又、全てのクラスタ７０がハードディスク群２を有する場合もある。
【００８８】
図６は、相互結合網３１の具体的な構成例を示す図である。
相互結合網３１は、４つのスイッチ部５１及びこれらを接続する通信パスを有する。これらのスイッチ５１は個々のクラスタ７０の内部に設置される。ストレージシステム１は２つのクラスタ７０を有する。１つのクラスタ７０は、４つのインターフェース部１０、２つのプロセッサ部８１及びメモリ部２１を有する。また上述したように、一つのクラスタ７０には、相互結合網３１であるスイッチ５１のうち二つが含まれる。
【００８９】
インターフェース部１０、プロセッサ部８１及びメモリ部２１は、各部を含むクラスタ７０内の２つのスイッチ部５１と１本ずつの通信パスで接続される。これにより、インターフェース部１０、プロセッサ部８１及びメモリ部２１の間で２つの通信経路を確保し、信頼性をあげることが可能となる。
【００９０】
また、クラスタ７０−１とクラスタ７０−２とを接続するため、１つのクラスタ７０内の１つのスイッチ部５１は他のクラスタ７０内の２つのスイッチ部５１と各々１本ずつの通信パスで接続されている。これにより、１つのスイッチ部５１の故障あるいはスイッチ部５１間の通信パスの故障の際にもクラスタを跨ったアクセスが可能となり、信頼性を向上することができる。
【００９１】
図７はストレージシステム１内におけるクラスタ間接続の異なる形態の例を示す図である。図７に示すように、クラスタ間接続専用のスイッチ部５５で各クラスタ７０間を接続する。この場合、クラスタ７０−１〜３の各スイッチ部５１は２つのスイッチ部５５に各々１本ずつの通信パスで接続される。これにより、１つのスイッチ部５５の故障、あるいはスイッチ部５１−スイッチ部５５間の通信パスの故障の際にもクラスタを跨ったアクセスが可能となり、信頼性を向上することができる。
【００９２】
またこの場合、図６の構成に比べてクラスタの接続数を増やすことが可能となる。すなわち、スイッチ部５１に接続可能な通信パスの数は物理的に限界がある。しかし専用のスイッチ部５５をクラスタ間接続に使用することにより、図６の構成に比べてクラスタの接続数を増やすことが可能となる。
【００９３】
本実施例の構成においても、図２０に示す従来技術において、チャネルＩＦ部１１及びディスクＩＦ部１６からマイクロプロセッサ１０３を分離し、プロセッサ部８１内に独立させるということに特徴がある。こうすることにより、サーバ３あるいはハードディスク群２との接続インターフェース数の増減とは独立にマイクロプロセッサ数の増減が可能となり、サーバ３やハードディスク群２の接続数やシステムの性能といったユーザの要求に柔軟に応えることが可能なフレキシブルな構成のストレージシステムを提供することができる。
【００９４】
また本実施例でも、第一の実施例と同様のデータのリード及びライト処理が行われる。したがって、本実施例でも、データのリードまたはライト時に、チャネルＩＦ部１１内のマイクロプロセッサ１０３で行っていた処理と、ディスクＩＦ部１６内のマイクロプロセッサ１０３で行っていた処理を、図１に示すプロセッサ部８１内の１つのマイクロプロセッサ１０１でまとめて一貫して処理する。こうすることにより、従来技術において必要であったチャネルＩＦ部とディスクＩＦ部それぞれのマイクロプロセッサ１０３間の処理の引継ぎのオーバヘッドを削減することが可能となる。
【００９５】
尚、本実施例でデータのリード又はライトを実行する場合、一つのクラスタ７０に接続されたサーバ３から他のクラスタ７０が有するハードディスク群２（あるいは他のクラスタ７０に接続されたストレージシステム）へのデータのライト又はリードが行われる場合がある。この場合でも、第一の実施例で説明したリード及びライト処理が行われる。この場合、個々のクラスタ７０が有するメモリ部２１のメモリ空間をストレージシステム１全体で一つの論理的なメモリ空間とすることで、一つのクラスタのプロセッサ部８１等は、他のクラスタ７０のメモリ部２１等へアクセスするための情報を得ることが出来る。又、一つのクラスタのプロセッサ部８１は、他のクラスタが有するインターフェース部１０に対してデータの転送を指示することが出来る。
【００９６】
又、ストレージシステム１は、各クラスタに接続されるハードディスク群２から構成されるボリュームを、全てのプロセッサ部で共有されるように、一つのメモリ空間で管理する。
【００９７】
また本実施例でも第一の実施例と同様に、管理端末６５をストレージシステム１に接続し、管理端末６５から、システムの構成情報の設定、システムの立上げ／停止の制御、システム内各部の利用率、稼動状況、障害情報の収集、障害時の障害部位の閉塞／交換処理、制御プログラムの更新等を行う。ここで、システムの構成情報、利用率、稼動状況、障害情報はメモリ部２１の制御メモリモジュール１２７内に格納される。本実施例の場合、ストレージシステム１を複数のクラスタ７０から構成するため、補助プロセッサを備えたボード（補助プロセッサ部８５）をクラスタ７０毎に設ける。補助プロセッサ部８５は、管理端末６５の指示を各プロセッサ部８１に伝えたり、各プロセッサ部８１からの情報を纏めて管理端末６５へ送る役目を果たす。管理端末６５と補助プロセッサ部８５を内部ＬＡＮ９２で接続する。そして、クラスタ７０内では内部ＬＡＮ９１を設け、各プロセッサ部８１はＬＡＮインターフェースを有し、補助プロセッサ部８５と各プロセッサ部８１とは内部ＬＡＮ９１で接続される。管理端末６５は補助プロセッサ部８５経由で各プロセッサ部８１にアクセスし、上記の各種処理を行う。尚、補助プロセッサ無しで直接プロセッサ部８１と管理端末６５がLAN等を介して接続されていても良い。
【００９８】
図１７は、ストレージシステム１の本実施例における更なる変形例である。図１７に示すように、サーバ３またはハードディスク群２を繋ぐインターフェース部１０に他のストレージシステム４が接続される。この場合、ストレージシステム１は、他のストレージシステム４が繋がるインターフェース部１０が属するクラスタ７０内の制御メモリモジュール１２６及びキャッシュメモリモジュール１２７に、他のストレージシステム４が提供する記憶領域（以下「ボリューム」とも言う）の情報及び他のストレージシステム４に格納される（又は読み出される）データを格納する。
【００９９】
他のストレージシステム４が接続されるクラスタ７０内のマイクロプロセッサ１０１は、制御メモリモジュール１２７に格納された情報に基づいて、他のストレージシステム４が提供するボリュームを管理する。例えばマイクロプロセッサ１０１は、他のストレージシステム４が提供するボリュームをサーバ３にストレージシステム１が提供するボリュームとして割り当てる。このことにより、サーバ３が、ストレージシステム１を介して他のストレージシステム４のボリュームへアクセスすることが可能となる。
この場合、ストレージシステム１は、自己が有するハードディスク群２から構成されるボリュームと他のストレージシステム４が提供するボリュームを一括して管理する。
【０１００】
また、図１７において、ストレージシステム１が、どのインターフェース部１０にどのサーバ３が接続されているかを示すテーブルをメモリ部２１内の制御メモリモジュール１２７に格納する。そして同じクラスタ７０内のマイクロプロセッサ１０１がそのテーブルを管理する。具体的には、サーバ３とホストＩＦ１００との接続関係が追加変更等された場合、マイクロプロセッサ１０１は、上述したテーブルの内容を変更（更新、追加又は削除）する。これにより、ストレージシステム１に繋がる複数のサーバ３間でのストレージシステム１を介した通信およびデータ転送が可能となる。このことは、第一の実施例でも同様に実現可能である。
【０１０１】
更に図１７において、インターフェース部１０に繋がるサーバ３がストレージシステム４との間でデータ転送を行う際、ストレージシステム１は、サーバ３が接続されるインターフェース部１０とストレージシステム４が接続されるインターフェース部１０との間で相互結合網３１を介してデータ転送を行う。この時、ストレージシステム１は、転送されるデータをメモリ部２１内のキャッシュメモリモジュール１２６にキャッシングしても良い。これにより、サーバ３およびストレージシステム４間のデータ転送性能が向上する。
【０１０２】
また本実施例において、図１８に示すように、スイッチ６５を介して、ストレージシステム１とサーバ３および他のストレージシステム４との間を接続する構成も考えられる。この場合、サーバ３は、インターフェース部１０内の外部ＩＦ１００及びスイッチ６５を介してサーバ３および他のストレージシステム４へアクセスする。こうすることにより、ストレージシステム１に接続されたサーバ３から、スイッチ６５および複数のスイッチ６５からなるネットワークに接続されたサーバ３や他のストレージシステム４へのアクセスが可能となる。
【０１０３】
図１９は、図６に示す構成のストレージシステム１を筐体に実装する場合の構成例を示す図である。
実装の構成は基本的に図１４の実装構成と同様である。すなわち、インターフェース部１０、プロセッサ部８１、メモリ部２１及びスイッチ部５１をパッケージに実装し、制御ユニットシャーシ８２１内のバックプレーン８３１に接続する。
【０１０４】
図６の構成では、インターフェース部１０、プロセッサ部８１、メモリ部２１及びスイッチ部５１がクラスタ７０としてグループ化される。そこで、クラスタ７０毎に１つの制御ユニットシャーシ８２１を用意する。１つのクラスタ７０内の各部は、１つの制御ユニットシャーシ８２１に実装される。すなわち、異なるクラスタ７０のパッケージを異なる制御ユニットシャーシ８２１に実装する。更に、クラスタ７０間の接続のため、図１９に示すように異なる制御ユニットシャーシに装填されたＳＷパッケージ８０２間をケーブル９２１で接続する。この場合、図１９に示すＩＦパッケージ８０１と同様に、ＳＷパッケージ８０２にはケーブル９２１接続用のコネクタが実装される。
【０１０５】
なお、１つの制御ユニットシャーシ８２１に実装されるクラスタの数は、１つで無くても良い。例えば、１つの制御ユニットシャーシ８２１に実装されるクラスタ数は２つであっても良い。
【実施例３】
【０１０６】
実施例１及び２の構成のストレージシステム１においては、インターフェース部１０で受信するコマンドの解析をプロセッサ部８１で行う。しかしながら、サーバ３とストレージシステム１との間でやり取りされるコマンドが従うプロトコルは多種多様あり、一般的なプロセッサで全てのプロトコルの解析処理を行うことは現実的ではない。ここで、プロトコルとは、例えばファイル名を用いたファイルＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）プロトコル、ｉＳＣＳＩ（ｉｎｔｅｒｎｅｔ  Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）プロトコル、サーバとして大型計算機（メインフレーム）を使用する際のプロトコル（チャネルコマンドワード：ＣＣＷ）等がある。
【０１０７】
そこで、本実施例では、これらのプロトコルを高速に処理する専用のプロセッサを実施例１及び２の全て又は一部のインターフェース部１０に追加する。図１３は、転送制御部１０５にマイクロプロセッサ１０２を接続したインターフェース部１０（以下このインターフェース部１０を「アプリケーション制御部１９」と称する）の例を示す図である。
【０１０８】
本実施例のストレージシステム１は、実施例１及び２のストレージシステム１が有する全ての又は一部のインターフェース部１０の代わりにアプリケーション制御部１９を有する。アプリケーション制御部１９は、相互結合網３１と接続される。ここで、アプリケーション制御部１９が有する外部ＩＦ１００は、アプリケーション制御部１９のマイクロプロセッサ１０２が処理するプロトコルに従うコマンドを専用に受信する外部ＩＦとする。ただし、１つの外部ＩＦ１００で異なるプロトコルに従う複数のコマンドを受信する構成としても良い。
【０１０９】
マイクロプロセッサ１０２は、プロトコル変換処理を外部ＩＦ１００と連携して行う。具体的には、マイクロプロセッサ１０２は、サーバ３からアプリケーション制御部１９がアクセス要求を受けた場合、外部ＩＦが受信したコマンドのプロトコルを内部のデータ転送用のプロトコルに変換する処理を行う。
【０１１０】
また、専用のアプリケーション制御部１９を用意する代わりに、インターフェース部１０はそのまま使用し、プロセッサ部８１内のマイクロプロセッサ１０１のうちの一つをプロトコル処理専用とする構成も考えられる。
【０１１１】
本実施例におけるデータのリード及びライト処理は、第一の実施例と同様に行われる。ただし、第一の実施例ではコマンドを受信したインターフェース部１０は、コマンドを解析せずにプロセッサ部８１へ転送していたが、本実施例では、アプリケーション処理部１９においてコマンドの解析処理を行う。そして、その解析結果（コマンドの内容、データのあて先等）をアプリケーション制御部１９がプロセッサ部８１へ転送する。プロセッサ部８１は、解析された情報に基づいて、ストレージシステム１内でのデータ転送の制御を行う。
【０１１２】
尚、本発明の他の実施態様としては、以下のような構成も考えられる。具体的には、計算機またはディスク装置とのインターフェースを有する複数のインターフェース部、計算機またはディスク装置との間でリード／ライトされるデータを格納するキャッシュメモリとシステムの制御情報を格納する制御メモリを有する複数のメモリ部、計算機とディスク装置との間でのデータのリード／ライトを制御するマイクロプロセッサを有する複数のプロセッサ部を有し、複数のインターフェース部、複数のメモリ部及び複数のプロセッサ部は少なくとも１つのスイッチ部からなる相互結合網で互いに接続されており、相互結合網を介して複数のインターフェース部、複数のメモリ部及び複数のプロセッサ部の間でデータあるいは制御情報の送受信を行うストレージシステムである。
【０１１３】
そして、本構成において、インターフェース部、メモリ部及びプロセッサ部は、データあるいは制御情報の送受信を制御する転送制御部を有する。また、本構成において、インターフェース部は第１の回路基板上に、メモリ部は第２の回路基板上に、プロセッサ部は第３の回路基板上に、少なくとも１つのスイッチ部は第４の回路基板上に実装される。更に、本構成では、第１〜４の回路基板間を接続する信号線がプリントされ、プリントされた信号線に前記第１〜４の回路基板を接続するための第１のコネクタを備える少なくとも１つのバックプレーンを有する。更に本構成では、第１〜４の回路基板は前記バックプレーンの第１のコネクタに接続するための第２のコネクタを備えている。
【０１１４】
尚、上述した実施態様において、バックプレーンに接続できる回路基板の総数をｎとし、第４の回路基板の数と接続場所を予め定め、１〜４の回路基板の総数がｎを超えない範囲でバックプレーンに接続する前記第１、第２、及び第３の回路基板それぞれの数を自由に選択できるようにしても良い。
【０１１５】
又、本発明の別の実施態様としては、以下のような構成も考えられる。具体的には、計算機またはディスク装置とのインターフェースを有する複数のインターフェース部、計算機またはディスク装置との間でリード／ライトされるデータを格納するキャッシュメモリとシステムの制御情報を格納する制御メモリを有する複数のメモリ部及び計算機とディスク装置との間でのデータのリード／ライトを制御するマイクロプロセッサを有する複数のプロセッサ部を有するクラスタを複数有するストレージシステムである。
【０１１６】
本構成において、各クラスタが有する複数のインターフェース部、複数のメモリ部及び複数のプロセッサ部の間は複数のスイッチ部からなる相互結合網で複数のクラスタを跨って互いに接続される。これにより、相互結合網を介して各クラスタ間で複数のインターフェース部、複数のメモリ部及び複数のプロセッサ部の間でデータあるいは制御情報の送受信を行う。又、本構成において、インターフェース部、メモリ部及びプロセッサ部は、それぞれスイッチに接続され、データあるいは制御情報の送受信を制御する転送制御部を有する。
【０１１７】
更に本構成において、インターフェース部は第１の回路基板上に、メモリ部は第２の回路基板上に、プロセッサ部は第３の回路基板上に、少なくとも１つのスイッチ部は第４の回路基板上に実装される。そして、本構成は、第１〜４の回路基板間を接続する信号線がプリントされ、プリントされた信号線に第１〜４の回路基板を接続するための第１のコネクタを備える複数のバックプレーンを有し、第１〜４の回路基板は前記バックプレーンの第１のコネクタに接続するための第２のコネクタを有する。本構成において、クラスタは、第１〜４の回路基板を接続したバックプレーンから構成される。尚、クラスタ数とバックプレーンの数を等しくする構成としても良い。
【０１１８】
更に本構成において、第４の回路基板はケーブルを接続するための第３のコネクタを備え、第３のコネクタとスイッチ部を接続する信号線を第４の基板上に配線する。このようにすると、クラスタ間は、第３のコネクタ間をケーブルによって接続することで接続される。
【０１１９】
更に、本発明の別の実施態様としては、以下のような構成も考えられる。具体的には、計算機またはディスク装置とのインターフェースを有するインターフェース部、計算機またはディスク装置との間でリード／ライトされるデータを格納するキャッシュメモリとシステムの制御情報を格納する制御メモリを有するメモリ部及び計算機とディスク装置との間でのデータのリード／ライトを制御するマイクロプロセッサを有するプロセッサ部を有し、インターフェース部、メモリ部及びプロセッサ部の間は少なくとも１つのスイッチ部からなる相互結合網で互いに接続されているストレージシステムである。本構成において、相互結合網を介してインターフェース部、メモリ部及びプロセッサ部の間でデータあるいは制御情報の送受信を行う。
【０１２０】
本構成において、インターフェース部は第１の回路基板上に、メモリ部、プロセッサ部及びスイッチ部は第５の回路基板上に実装される。そして本構成において、第１と第５の回路基板間を接続する信号線がプリントされ、プリントされた信号線に第１と第５の回路基板を接続するための第４のコネクタを備える少なくとも１つのバックプレーンを有し、第１と第５の回路基板はバックプレーンの第４のコネクタに接続するための第５のコネクタを備えている。
【０１２１】
又、本発明の別の実施態様としては、以下のような構成も考えられる。具体的には、計算機またはディスク装置とのインターフェースを有するインターフェース部、計算機またはディスク装置との間でリード／ライトされるデータを格納するキャッシュメモリとシステムの制御情報を格納する制御メモリを有するメモリ部及び計算機とディスク装置との間でのデータのリード／ライトを制御するマイクロプロセッサを有するプロセッサ部を有し、インターフェース部、メモリ部及びプロセッサ部の間は少なくとも１つのスイッチ部からなる相互結合網で互いに接続されるストレージシステムである。本構成において、インターフェース部、メモリ部、プロセッサ部及びスイッチ部は、第６の回路基板上に実装される。
【図面の簡単な説明】
【０１２２】
【図１】ストレージシステム１の構成例を示す図である。
【図２】ストレージシステム１の相互結合網の詳細構成例を示す図である。
【図３】ストレージシステム１の他の構成例を示す図である。
【図４】図３に示す相互結合網の詳細構成例を示す図である。
【図５】ストレージシステムの構成例を示す図である。
【図６】ストレージシステムの相互結合網の詳細構成例を示す図である。
【図７】ストレージシステムの相互結合網の他の詳細構成例を示す図である。
【図８】インターフェース部の構成例を示す図である。
【図９】プロセッサ部の構成例を示す図である。
【図１０】メモリ部の構成例を示す図である。
【図１１】スイッチ部の構成例を示す図である。
【図１２】パケットフォーマットの一例を示す図である。
【図１３】アプリケーション制御部の構成例を示す図である。
【図１４】ストレージシステムの筐体への実装例を示す図である。
【図１５】パッケージとバックプレーンの構成例を示す図である。
【図１６】相互結合網の他の詳細構成例を示す図である。
【図１７】インターフェース部と外部装置との接続構成例を示す図である。
【図１８】インターフェース部と外部装置との他の接続構成例を示す図である。
【図１９】ストレージシステムの筐体への他の実装例を示す図である。
【図２０】従来のストレージシステムの構成例を示す図である。
【図２１】従来のストレージシステムの他の構成例を示す図である。
【図２２】ストレージシステム１のリード動作フローを示す図である。
【図２３】ストレージシステム１のライト動作フローを示す図である。
【符号の説明】
【０１２３】
１…ストレージシステム、２…ハードディスク群、３…サーバ、１０…インターフェース部、２１…メモリ部、３１…相互結合網、８１…プロセッサ部、１００…外部ＩＦ、１０１…マイクロプロセッサ、１０５…転送制御部、１２５…メモリコントローラ、１２６…キャッシュメモリモジュール、１２７…制御メモリモジュール。
【図１】
2005227807.tif 000003
【図２】
2005227807.tif 000004
【図３】
2005227807.tif 000005
【図４】
2005227807.tif 000006
【図５】
2005227807.tif 000007
【図６】
2005227807.tif 000008
【図７】
2005227807.tif 000009
【図８】
2005227807.tif 000010
【図９】
2005227807.tif 000011
【図１０】
2005227807.tif 000012
【図１１】
2005227807.tif 000013
【図１２】
2005227807.tif 000014
【図１３】
2005227807.tif 000015
【図１４】
2005227807.tif 000016
【図１５】
2005227807.tif 000017
【図１６】
2005227807.tif 000018
【図１７】
2005227807.tif 000019
【図１８】
2005227807.tif 000020
【図１９】
2005227807.tif 000021
【図２０】
2005227807.tif 000022
【図２１】
2005227807.tif 000023
【図２２】
2005227807.tif 000024
【図２３】
2005227807.tif 000025