JP2013134681A - 接続装置、ストレージ装置、接続装置における処理方法、および処理プログラム - Google Patents

接続装置、ストレージ装置、接続装置における処理方法、および処理プログラム Download PDF

Info

Publication number
JP2013134681A
JP2013134681A JP2011285715A JP2011285715A JP2013134681A JP 2013134681 A JP2013134681 A JP 2013134681A JP 2011285715 A JP2011285715 A JP 2011285715A JP 2011285715 A JP2011285715 A JP 2011285715A JP 2013134681 A JP2013134681 A JP 2013134681A
Authority
JP
Japan
Prior art keywords
notification
unit
storage device
control
exp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011285715A
Other languages
English (en)
Other versions
JP5923976B2 (ja
Inventor
Atsushi Katano
篤 片野
Atsuhiro Otaka
敦弘 大▲高▼
Nobuyuki Honjo
信行 本城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011285715A priority Critical patent/JP5923976B2/ja
Priority to US13/616,745 priority patent/US8645587B2/en
Priority to EP12187938.1A priority patent/EP2610729A3/en
Priority to KR1020120113760A priority patent/KR101318004B1/ko
Priority to CN2012104294490A priority patent/CN103227808A/zh
Publication of JP2013134681A publication Critical patent/JP2013134681A/ja
Application granted granted Critical
Publication of JP5923976B2 publication Critical patent/JP5923976B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Debugging And Monitoring (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】記憶部7の状態変化の発生を示す通知が接続装置4を介して複数の制御部3に対して発行される場合に、当該通知に応じて発生する接続装置4の処理負荷を軽減する。
【解決手段】少なくとも一つの記憶部7を備える記憶装置5と前記記憶装置5に対する制御を行なう複数の制御部3との間に介設される接続装置4であって、前記記憶部7に係る状態変化の発生を示す通知を前記記憶装置5から受けた場合、一部の制御部3に対して前記通知を転送する通知部40aと、前記通知が転送された制御部3から前記接続装置4を介した前記記憶装置5へのアクセスを監視する監視部40bと、前記監視部40bにより前記アクセスが終了したことが検出された場合、前記通知部40aによる前記通知の転送先を、前記通知の転送が行なわれなかった制御部3のうちの一以上の制御部3に切り換える通知制御部40cと、を備える。
【選択図】図1

Description

本件は、記憶装置とその記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置、並びに、ストレージ装置、接続装置における処理方法及び処理プログラムに関する。
ストレージ装置において、SCSI(Small Computer System Interface)規格の一種であるSAS(Serial Attached SCSI)に対応したHDD(Hard Disk Drive)等のデバイスを多数搭載する場合、SAS Expander(SASエクスパンダ;以下、EXPという)が用いられることがある。
EXPは、SAS接続の拡張を行なうために用いられるSASスイッチである。
図7は、複数のSASデバイス700並びにEXP400及び600を備えるストレージシステムの構成例を示す図であり、特に、図7では、多数のSASデバイス700並びにEXP400及び600を用いた大規模ストレージシステムの例を示す。
図7に示すように、ストレージシステムは、コントローラエンクロージャ(Controller Enclosure;以下、CEという)200と複数のドライブエンクロージャ(Drive Enclosure;以下、DEという)500とを備えるストレージ装置100、及び、ホスト800を備える。
なお、図7において、二重のラインはホストインタフェースを示し、一本のラインはSAS接続を示す。
CE200は、ホスト800からSASデバイス700に対するデータの書き込み及び読み出し等のデータアクセス要求の制御を行なうものであり、コントローラモジュール(Controller Module;以下、CMという)300及びEXP400を備える。
CM300は、配下のSASデバイス700を管理し、サーバ等のホスト800からSASデバイス700へのデータアクセス要求に対して適切なSASデバイス700を割り当てるモジュールである。また、CM300は、SASデバイス700やEXP400及び600のイニシエータとして機能し、配下のEXP400及び600を経由して、アクセス対象のSASデバイス700に対するアクセスを行なう。
EXP400は、SAS接続の拡張を行なうためのモジュールであり、SASの制御デバイスであるエクスパンダチップやSASの物理ポートであるPhyを備える。
また、EXP400は、Phyを介してCM300及び配下のDE500内のEXP600と接続され、CM300からのデータアクセス要求をアクセス対象のEXP600に転送する。
なお、CE200は、冗長化を目的として、複数(図7に示す例では8つ)のCM300を備え、マルチイニシエータ構成をとっている。また、CE200は、冗長化のため、複数(図7に示す例では2つ)のEXP400を備える。
DE500は、HDD等の複数のSASデバイス(SASドライブ)700を搭載するとともに、冗長化を目的として複数(図7に示す例では2つ)のEXP600を備える。なお、図7においては、図の簡略化のため、DE500におけるSASデバイス700の図示並びに符号600及び700の図示を一部省略しているが、DE500はいずれも同様の構成を備える。
なお、以下、CM300からDE500までのデータ経路において、CM300側を上位といい、DE500側を下位という。
EXP600は、CE200内のEXP400と同様の構成であり、図示しないPhy(物理ポート)を介してCE200内のEXP400及び/又は他のDE500内のEXP600と接続され、上位、すなわちCM300側からのデータアクセス要求に応じた処理を行なう。
なお、以下、複数のCM300のうちの1つを特定する必要があるときには、図7に示すようにCM00〜CM07のいずれかを用いる。また、以下、複数のEXP400又は600のうちの1つを特定する必要があるときには、図7に示すようにEXP00,10〜17,20〜27,30〜37,40〜47のいずれかを用いる。
図7に示すように、ストレージ装置100においては、EXP00及び01の上位には、それぞれ、CM00〜CM07が接続される。また、EXP00の下位には、EXP10〜13がそれぞれ接続され、EXP01の下位には、EXP14〜17がそれぞれ接続されている。
また、EXP10にはEXP20,30,40が、EXP11にはEXP21,31,41が、EXP12にはEXP22,32,42が、EXP13にはEXP23,33,43が、それぞれ直列にカスケード接続(多段接続)されている。同様に、EXP14にはEXP24,34,44が、EXP15にはEXP25,35,45が、EXP16にはEXP26,36,46が、EXP17にはEXP27,37,47が、それぞれ直列にカスケード接続(多段接続)されている。
さらに、各DE500における2つのEXP600は、それぞれ、自身のDE500が備える少なくとも1つのSASデバイス700に接続される。
以上のように構成されたストレージ装置100は、EXP400及び600を用いることにより、多数のSASデバイス700を接続することができる。
ここで、EXP400及び600は、冗長化のために各エンクロージャ内に2つずつ設けられている。以下、冗長化されたEXP400及び600のうち、CE200内のEXP00と、各DE500内のEXP10〜13とが接続された系列を第1系列といい、CE200内のEXP01と、各DE500内のEXP14〜17とが接続された系列を第2系列という。
なお、以下、第1系列における各系統のEXP10〜13,20〜23,30〜33,40〜43をまとめてEXP10〜43という。
ところで、図7の構成において、第1系列のEXP10〜43配下のSASデバイス700に何らかの状態変化が発生した場合、そのSASデバイス700が接続されているEXP600は、上位に対してブロードキャストチェンジ(BroadCast (Change);以下、BC(CHG)という)を発行する。なお、SASデバイス700の状態変化としては、例えばSASデバイス700の挿抜やデバイス異常が挙げられる。
BC(CHG)は、状態変化の発生を示す通知であり、発行元のEXP600から上位のEXP600及び400を経由して、全てのCM300に転送される。
イニシエータであるCM300は、BC(CHG)を受領後、配下のSASデバイス700を再認識するためのディスカバリ(Discovery)プロセスを行なう。
なお、BC(CHG)を受け取ったEXP400及び600は、全てのSASポート、すなわちPhyに対してBC(CHG)を転送するため、BC(CHG)が上位に伝搬される結果、全てのCM300がほぼ同時にディスカバリプロセスを開始することになる。
ディスカバリプロセスでは、CM300は、下位側に接続される全てのEXP400及び600に対して、それぞれ複数のSMP(SAS Management Protocol) Functionを発行する。SMP Functionは、EXPを管理するプロトコルであるSMPにより規定されるコマンドであり、EXP配下のSASデバイス700の情報の取得,EXPのルーティング情報の構築,トポロジーの構築,Phyの制御及びSAS接続のリンクネゴシエーション等に用いられる。
CM300は、ディスカバリプロセスにおいて必要な情報を取得するため、例えば各EXP400又は600に対して、5〜10のSMP Function(コマンド)を発行する。
SMP Functionを受領したEXP400及び600は、コマンド種に応じた情報、例えば、自らが有しているPhyの数やこれらのPhyに接続されたSASデバイス700の情報等をマップ情報としてCM300に向けて発行する。
CM300は、下位のEXP400及び600から送信されたマップ情報を用いて、下位のSASデバイス700の情報を管理する。
特開2006−279347号公報 特表2009−540436号公報
上述の如く、ディスカバリプロセスでは、CM300は、全てのEXP400及び600に対して複数のSMP Functionを発行する。
一方、各EXP400及び600は、受け取った複数のSMP Functionについて、1つずつしか処理を行なうことができない。
従って、図7に例示するマルチイニシエータ環境では、ディスカバリプロセスが発生した場合、各EXP400及び600において、複数のCM300からのSMP Functionによるアクセスが競合し、各EXP400及び600での負荷が大きくなるという課題がある。
1つの側面では、本発明は、記憶部の状態変化の発生を示す通知が接続装置を介して複数の制御部に対して発行される場合に、当該通知に応じて発生する接続装置の処理負荷を軽減することを目的とする。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
本件の接続装置は、少なくとも一つの記憶部を備える記憶装置と前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置であって、前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送する通知部と、前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視する監視部と、前記監視部により前記アクセスが終了したことが検出された場合、前記通知部による前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換える通知制御部と、を備えるものである。
また、本件のストレージ装置は、少なくとも一つの記憶部を備える記憶装置と、前記記憶装置に対する制御を行なう複数の制御部と、上記接続装置と、を備えるものである。
さらに、本件の処理方法は、少なくとも一つの記憶部を備える記憶装置と、前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置における処理方法であって、前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送し、前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視し、前記監視により前記アクセスが終了したことが検出された場合、前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換えるものである。
また、本件の処理プログラムは、少なくとも一つの記憶部を備える記憶装置と、前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置としてのコンピュータに、前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送し、前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視し、前記監視により前記アクセスが終了したことが検出された場合、前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換える、処理を実行させるものである。
1実施形態によれば、記憶部の状態変化の発生を示す通知が接続装置を介して複数の制御部に対して発行される場合に、当該通知に応じて発生する接続装置の処理負荷を軽減することができる。
一実施形態としてのストレージシステムの構成例を示す図である。 本実施形態に係るコントローラエンクロージャの構成例を示す図である。 本実施形態に係るエクスパンダの構成例を示す図である。 本実施形態に係るドライブエンクロージャの構成例を示す図である。 図1に例示するストレージ装置のコントローラモジュール並びに第1系列のエクスパンダに注目した図である。 本実施形態に係るストレージ装置の動作例を説明するフローチャートである。 複数のSASドライブ及びEXPを備えるストレージシステムの構成例を示す図である。
以下、図面を参照して実施の形態を説明する。
〔1〕一実施形態
〔1−1〕ストレージシステムの構成例
図1は、一実施形態としてのストレージシステムの構成例を示す図であり、図2は、本実施形態に係るコントローラエンクロージャ2の構成例を示す図である。また、図3は、本実施形態に係るエクスパンダ4及び6の構成例を示す図であり、図4は、ドライブエンクロージャ5の構成例を示す図である。
図1に例示するように、本実施形態に係るストレージシステムは、CE2と複数のDE5とを備えるストレージ装置1、及び、ホスト8を備える。
なお、図1において、二重のラインはホストインタフェースを示し、一本のラインはSAS接続を示す。
また、以下、CM3からDE5までのデータ経路において、CM3側を上位といい、DE5側を下位という場合がある。
ホスト8は、ストレージ装置1が備えるSASデバイス7に対するデータの書き込み及び読み出し等のデータアクセス要求を発行する装置であり、ホスト8としてはサーバ等の情報処理装置が挙げられる。
CE2は、ホスト8から発行されたデータアクセス要求に係る制御を行なう制御装置であり、冗長化を目的として、複数(図1に示す例では8つ)のCM3及び複数(図1に示す例では2つ)のEXP4を備える。
CM(制御部)3は、DE5に対する制御を行なうものであり、上述したCM300と同様に、配下のSASデバイス7を管理し、ホスト8から発行されたデータアクセス要求に対して適切なSASデバイス7を割り当てるモジュールである。
CM3は、具体的には、図2に例示するように、ホストアダプタ31,プロセッサ32,メモリ33及びSAS IO(Input Output)コントローラ34を備える。
ホストアダプタ31は、ホスト8からのデータアクセス要求等の情報を受信したり、EXP4又はDE5からのデータやコマンド等の情報をホスト8に送信するアダプタであり、ホスト8とホストインタフェースを介して接続される。
プロセッサ32は、種々の制御や演算を行なうCPU(Central Processing Unit)やMPU(Micro Processing Unit)等の処理装置であり、図示しないROM(Read Only Memory)等に格納されたプログラムを実行することにより、CM3における種々の機能を実現する。本実施形態においては、プロセッサ32は、ホスト8からのデータアクセス要求に係る処理や、ディスカバリプロセスの実行を行なう。
メモリ33は、種々のデータやプログラムを一時的に格納する記憶装置であって、プロセッサ32がプログラムを実行する際に、データやプログラムを一時的に格納・展開して用いる。なお、メモリ33としては、例えばRAM(Random Access Memory)等の揮発性メモリが挙げられる。
SAS IOコントローラ34は、配下のEXP4に対する入出力を司るコントローラであり、EXP4の後述するPhy44とケーブル等によりSAS接続される。
また、CM3は、SASデバイス7やEXP4及び6のイニシエータとして機能し、配下のEXP4及び6を経由して、アクセス対象のSASデバイス7に対するアクセスを行なう。
さらに、CM3は、上述したCM300と同様に、EXP4を介してDE5(EXP6)から発行されたBC(CHG)、つまり状態変化の発生を示す通知を受領すると、配下のSASデバイス7を再認識するためのディスカバリプロセスを開始する。
すなわち、CM3は、ディスカバリプロセスにおいて、SAS IOコントローラ34により、下位側に接続される全てのEXP4及びDE5(EXP6)に対して、EXP4を介して、SMP Function(制御情報)を発行する。
なお、上述の如く、SMP Functionは、EXPを管理するプロトコルであり、EXP配下のSASデバイス7の情報の取得,EXPのルーティング情報の構築,トポロジーの構築,Phyの制御及びSAS接続のリンクネゴシエーション等に用いられる。
例えば、SMP Functionは、EXP4又は6の配下のDE5(EXP6)、つまりEXP4又は6の下位側に接続されるEXP6やSASデバイス7等のデバイスの接続状態等を示すマップ情報(接続情報)を要求する制御情報である。このように、SMP Functionは、状態変化の発生に応じてEXP4やDE5を制御する情報である。
CM3は、ディスカバリプロセスにおいて必要な上述のような情報を取得するため、例えば各EXP4又は6に対して、複数(例えば5〜10)のSMP Functionを発行する。
また、CM3は、ディスカバリプロセスにおいて、EXP4やDE5(EXP6)から受信したレスポンス(応答情報)をメモリ33等の記憶装置に格納し、マップ情報を用いて、下位のSASデバイス7の情報を管理することができる。
図1に示す例においては、CM3は、EXP4に対するSMP Functionのレスポンス(応答情報)のうちのマップ情報により、SMP Functionを発行するDE5(EXP6)をEXP10〜13として認識することができる。また、CM3は、EXP6に対するSMP Functionのレスポンス(応答情報)のうちのマップ情報により、例えばEXP10〜13の配下のEXP6をそれぞれEXP20〜23として認識することができる。
すなわち、CM3は、マップ情報により、SMP Functionを発行するDE5(EXP6)を認識することができる。
なお、EXP4及び6が送信するマップ情報には、送信元の各EXP4及び6が有しているPhy44の数やこれらのPhy44に接続されたSASデバイス7の情報等が含まれる。
EXP(接続装置)4は、DE5と複数のCM3との間に介設される、SAS接続の拡張を行なうためのモジュールであり、CM3からのデータアクセス要求をアクセス対象のDE5(EXP6)に転送する。
EXP4は、具体的には、図3に例示するように、エクスパンダチップ41,電源46,PLD(Programmable Logic Device)47及びスイッチ48を備える。
エクスパンダチップ41は、SASの制御デバイスであり、プロセッサ42,メモリ43,Phy44、並びに、シリアル接続及びイーサネット(登録商標)接続のインタフェースであるシリアルポート45a及びイーサポート45bを備える。
プロセッサ42は、種々の制御や演算を行なうCPUやMPU等の処理装置であり、図示しないROM等に格納されたプログラムを実行することにより、EXP4における種々の機能を実現する。本実施形態においては、プロセッサ42は、SASの物理ポートであるPhy44の制御の他、SMP論理デバイスとしてSMP Functionに係る処理を行なうとともに、SSP(Serial SCSI Protocol)論理デバイスとしてSCSIコマンドに係る処理を行なう。
また、本実施形態に係るEXP4は、後述する通知部40a,監視部40b,通知制御部40c及びリセット部40dとしての機能を備え、これらの機能は、プロセッサ42によって実現される。
メモリ(保持部)43は、種々のデータやプログラムを一時的に格納する記憶装置であって、プロセッサ42がプログラムを実行する際に、データやプログラムを一時的に格納・展開して用いる。なお、メモリ43としては、例えばRAM等の揮発性メモリが挙げられる。
Phy44は、CM3及びDE5内のEXP6とケーブル等によりSAS接続される物理ポートであり、図3に示す例においては、0〜35のポートを備える。なお、図示を省略しているが、CE2にも、SASデバイス7を備えることができ、この場合、EXP4は、Phy44を介してCE2内のSASデバイス7と接続される。
電源46は、図示しない外部電源からの電力によってエクスパンダ4内に電力を供給するものであり、PLD47は、電源46等からの常駐電源で動作し、エクスパンダ4の電源制御等を行なう。具体的には、PLD47は、スイッチ48に対する電源制御を通じて、エクスパンダチップ41に対して電源46からの電力を供給する制御を行なう。
EXP4は、BC(CHG)をDE5(EXP6)から受けた場合、配下のSASデバイス7やEXP6を再認識するため、ディスカバリプロセスを実行し、下位側に接続されたEXP6にSMP Functionを発行する。このSMP Functionは、例えば下位側に接続されたEXP6における更新後のルートテーブル等のDE5の状態情報を要求するコマンドである。
そして、下位側に接続されたEXP6からSMP Functionに対するレスポンスを受信すると、EXP4は、レスポンスのうちの状態情報に基づいて自身のルートテーブル(状態情報)を更新(作成)し、メモリ43等の記憶装置に格納する。
また、EXP4は、ディスカバリプロセスの実行により状態情報を取得すると、BC(CHG)をCM3に対して転送するが、本実施形態に係るEXP4は、CM3に対するBC(CHG)の転送に際して、通知部40a,監視部40b,通知制御部40c及びリセット部40dによる後述する処理を行なう。
なお、EXP4は、BC(CHG)を転送したCM3からSMP Functionを受信した場合には、受信したコマンドに応じた処理、例えば自身のPhy44やPhy44に接続されたデバイスの情報を取得する処理を行ない、この情報をマップ情報としてレスポンスに含めてCM3に返す。
DE(記憶装置)5は、図4に例示するように、少なくとも一つのSASデバイス7を備えるとともに、冗長化を目的として、複数(図4に示す例では2つ)のEXP6を備える。なお、図1においては、図の簡略化のため、DE5におけるSASデバイス7の図示並びに符号6及び7の図示を一部省略しているが、DE5はいずれも同様の構成を備える。
SASデバイス(記憶部)7は、SASに対応したHDD等の磁気ディスク装置等、種々のデータやプログラム等を格納するハードウェアである。なお、SASデバイス7は、SASに対応した他のデバイスであっても良い。
EXP6は、図2に例示するEXP4と同様の構成であり、図3に示すPhy44を介してCE2内のEXP4及び/又は他のDE5内のEXP6とケーブル等によりSAS接続され、上位、すなわちCM3側からのデータアクセス要求に応じた処理を行なう。
また、EXP6は、DE5内、つまりEXP6に直接接続されたSASデバイス7に係る状態変化が発生した場合、Phy44に接続されたSASデバイス7を再認識するため、ルートテーブル(状態情報)を更新(作成)し、メモリ43等の記憶装置に格納する。
なお、状態変化が発生した場合とは、例えば、Phy44のリンクアップ/リンクダウンや、SASデバイス7の抜き挿しが発生した場合が挙げられる。
さらに、EXP6は、BC(CHG)を全てのPhy44、例えば図1に示す上位に接続された他のEXP4又は6に対して発行する。
また、下位側に接続されたEXP6からBC(CHG)を受け取った上位のEXP6は、配下のSASデバイス7やEXP6を再認識するため、ディスカバリプロセスを実行し、下位側に接続されたEXP6にSMP Functionを発行する。このSMP Functionは、例えば下位側に接続されたEXP6における更新後のルートテーブルの情報を要求するコマンドである。
そして、下位側に接続されたEXP6からSMP Functionに対するレスポンスを受信すると、上位のEXP6は、レスポンスのうちの状態情報に基づいて自身のルートテーブル(状態情報)を更新(作成)し、メモリ43等の記憶装置に格納する。
さらに、上位のEXP6は、BC(CHG)を全てのPhy44、例えば上位に接続されたEXP4又はEXP6に転送する。
また、EXP6は、CM3から発行されたSMP Functionを受信した場合には、受信したコマンドに応じた処理、例えば自身のPhy44やPhy44に接続されたデバイスの情報を取得する処理を行ない、この情報をマップ情報としてレスポンスに含めてCM3に返す。
なお、以下、複数のCM3のうちの1つを特定する必要があるときには、図1に示すようにCM00〜CM07のいずれかを用いる。また、以下、複数のEXP4又は6のうちの1つを特定する必要があるときには、図1に示すようにEXP00,10〜17,20〜27,30〜37,40〜47のいずれかを用いる。
図1に示すように、ストレージ装置1においては、EXP00及び01の上位には、それぞれ、CM00〜CM07が接続される。また、EXP00の下位には、EXP10〜13がそれぞれ接続され、EXP01の下位には、EXP14〜17がそれぞれ接続されている。
また、EXP10にはEXP20,30,40が、EXP11にはEXP21,31,41が、EXP12にはEXP22,32,42が、EXP13にはEXP23,33,43が、それぞれ直列にカスケード接続(縦続接続,多段接続)されている。同様に、EXP14にはEXP24,34,44が、EXP15にはEXP25,35,45が、EXP16にはEXP26,36,46が、EXP17にはEXP27,37,47が、それぞれ直列にカスケード接続(縦続接続,多段接続)されている。
さらに、各DE5における2つのEXP6は、それぞれ、自身のDE5が備える少なくとも1つのSASデバイス7に接続される。
ここで、EXP4及び6は、冗長化のために各エンクロージャ内に2つずつ設けられている。以下、冗長化されたEXP4及び6のうち、CE2内のEXP00と、各DE5内のEXP10〜13とが接続された系列を第1系列といい、CE2内のEXP01と、各DE5内のEXP14〜17とが接続された系列を第2系列という。
以上のように、図1及び図5に示すように、ストレージ装置1は、第1系列において、1つのEXP4(EXP00)に全てのCM3が接続され、EXP00配下に複数の系統毎にEXP00から直列にカスケード接続で複数のEXP6が配置された構成となっている。すなわち、EXP4には、それぞれが少なくとも一つのSASデバイス7を備える複数のDE5が、複数の系統で、直接接続、又は、直接接続されるDE5に縦続接続される。なお、複数の系統とは、EXP10以下直列に接続された系統,EXP11以下直列に接続された系統,EXP12以下直列に接続された系統、及び、EXP13以下直列に接続された系統をいう。
なお、以下、第1系列における各系統のEXP10〜13,20〜23,30〜33,40〜43をまとめてEXP10〜43という。
〔1−2〕エクスパンダの説明
次に、EXP4における通知部40a,監視部40b,通知制御部40c及びリセット部40dとしての機能について図5を参照しながら説明する。
EXP4は、上述の如く、下位側に接続されたEXP6から、SASデバイス7に係る状態変化の発生を示す通知であるBC(CHG)を受け取ると、ディスカバリプロセスを実行して状態情報を取得する。
そして、EXP4は、ディスカバリプロセスにより状態情報を全てのDE5から取得し、BC(CHG)をCM3に対して転送する際に、通知部40a,監視部40b,通知制御部40c及びリセット部40dとして機能する。
通知部40aは、転送先である複数のCM3のうちの一部のCM3に対してBC(CHG)を転送するものである。なお、一部のCM3とは、1以上且つCE2内のCM3の数(図5に示す例では8つ)未満の数のCM3をいい、以下に示す例においては、1つのCM3である。
具体的には、通知部40aは、予め設定された接続構成情報に基づいて、BC(CHG)を転送する転送先のCM3を選択する。例えば、図5に示す例においては、EXP4は、CM00〜07のうちの最小の番号(最若番)であるCM00をBC(CHG)を転送するCM3として選択する。なお、接続構成情報は、ストレージ装置1における各CM3やEXP4及び6の接続関係を示す情報である。
また、通知部40aは、選択したCM3(例えばCM00)以外のCM3に対して転送する状態変化の発生を示す情報、つまりBC(CHG)の情報については、メモリ43等のバッファにキューイングする。
なお、上述の如く、BC(CHG)が転送されたCM3は、ディスカバリプロセスを実行し、EXP4に対してSMP Functionを発行し、EXP4は、自身に対するSMP Functionのレスポンスにマップ情報を含めてCM3に返す。そして、CM3は、EXP4からのマップ情報に基づいて、EXP4の配下のDE5に対するディスカバリプロセスを実行する。
監視部40bは、通知部40aによりBC(CHG)が転送されたCM3(例えばCM00)からEXP4又はEXP4を介したDE5へのディスカバリプロセスに起因するアクセスを監視し、このアクセスが終了したことを検出するものである。
具体的には、監視部40bは、BC(CHG)が転送されたCM3からEXP4又はDE5に対して発行される、状態変化の発生に応じてEXP4又はDE5を制御するSMP Function、及び、EXP4又はDE5からCM3に対して発行されるSMP Functionに対するレスポンス、の少なくとも一方を監視する。そして、監視部40bは、監視するSMP Function及びレスポンスの少なくとも一方の発行が終了した場合、BC(CHG)が転送されたCM3によるアクセスが終了したことを検出する。なお、以下の例においては、監視部40bは、BC(CHG)が転送されたCM3からEXP4又はDE5に対して発行されるSASフレーム、つまりSMP Functionを監視するものとする。
なお、監視部40bは、例えば、BC(CHG)を転送したCM3及び/又はEXP6へのSASポートであるPhy44を監視状態として、当該Phy44を通過する情報(SASフレーム)を見ることにより、上述したアクセスの監視を行なう。
また、監視部40bは、図5に示すようにEXP4の配下に複数のDE5(EXP6)があるときには、BC(CHG)が転送されたCM3から複数のDE5のうちの最終のDE5(EXP6)へのアクセスが終了した場合に、CM3からのアクセスが終了したことを検出する。例えば、図5に示す例において、CM3がSMP FunctionをEXP10から順にEXP43まで発行する場合には、監視部40bは、CM3からEXP43へのアクセスが終了した場合に、CM3からのアクセスが終了したことを検出する。
なお、監視部40bは、複数のDE5(EXP6)のうちのいずれのDE5が最終であるかを、EXP4がSMP Functionに応じて取得したマップ情報に基づいて判断(検出)することができる。すなわち、CM3が、EXP4に対するディスカバリプロセスによって取得したマップ情報に基づいてEXP4配下のDE5を認識しDE5へのSMP Functionの発行順序を決定する場合には、監視部40bは、当該マップ情報に基づいて、CM3が最後にSMP Functionを発行するDE5を予測することができる。
通知制御部40cは、監視部40bによりアクセスが終了したことが検出された場合、通知部40aによるBC(CHG)の転送先を、BC(CHG)の転送が行なわれなかったCM3のうちの1以上のCM3に切り換えるものである。なお、1以上のCM3とは、以下に示す例においては、1つのCM3である。
通知制御部40cは、通知部40aによるBC(CHG)の転送が全てのCM3に対して行なわれるまで、BC(CHG)の転送先の切り換えを行なう。
具体的には、通知制御部40cは、監視部40bによりCM3(例えばCM00)からのアクセスが終了したことが検出されると、上述した接続構成情報に基づいて、所定の順序(例えばCM3の最小の番号から順)で次の転送先のCM3(例えばCM01)を選択する。そして、通知制御部40cは、選択した転送先のCM3に対して、キューイング中のBC(CHG)を通知部40aに転送させる。
なお、この所定の順序は上述したものに限定されず、例えば、CM00〜07のうちの最大の番号から順であっても良いし、CM3に接続されるEXP4のPhy44のポート番号に基づく順序であっても良く、複数のCM3間で順序付けができればどのような情報を用いても良い。
そして、通知部40aは、通知制御部40cにより選択された次の転送先のCM3に対して、メモリ43等のバッファに保持された状態情報の発生を示す情報に基づくBC(CHG)を転送する。
なお、EXP4は、予め設定された接続構成情報における全てのCM3からのディスカバリプロセス(マップ情報要求)を処理したことを契機に、BC(CHG)の発行元のEXP6にBC(CHG)に係る処理が終了したことを示す応答を返す。
このように、通知部40a,監視部40b及び通知制御部40cによれば、複数のCM3からのディスカバリプロセスがEXP4に集中しないため、EXP4の性能ネックによる処理遅延や、CM3におけるマップ情報の獲得遅延、タイムアウト発生等を回避することができる。
リセット部40dは、SASデバイス7に係る状態変化の発生を示す他の通知、つまり他のBC(CHG)をDE5から受けた場合、通知部40a,監視部40b及び通知制御部40cにおける先のBC(CHG)に係る処理をリセットするものである。
具体的には、リセット部40dは、全てのCM3におけるディスカバリプロセスが終了しない状態で、EXP4がいずれかのDE5で発生した他の状態変化によるBC(CHG)を受領した場合、通知部40aの動作を停止させるとともに、キューイング中のBC(CHG)を破棄させる。また、監視部40bに対して、Phy44の監視状態を解除させるとともに、通知制御部40cの動作を停止させる。
リセット部40dによりリセットが行なわれると、通知部40aは、上述した動作と同様に、複数のCM3のうちの一部のCM3に対して、新たに発生した他のBC(CHG)を転送する。
〔1−3〕ストレージ装置の動作例
次に、上述の如く構成された本実施形態に係るストレージ装置1におけるBC(CHG)発行時の動作例を図5及び図6を参照しながら説明する。なお、図6は、本実施形態に係るストレージ装置1の動作例を説明するフローチャートである。
はじめに、DE5(EXP10〜43)のいずれかにおいてSASの変化(SASデバイス7に係る状態変化)が発生すると、状態変化の発生を検出したEXP6により、上位のEXP4又は6に対してBC(CHG)が発行される(ステップS1)。
例えば、図5に示すEXP30において状態変化の発生が検出されると、EXP30により上位のEXP20に対してBC(CHG)が発行される。BC(CHG)を受信したEXP20は、ディスカバリプロセスを実行して自身に接続されているSASデバイス7や下位のEXP30に関するルートテーブル(状態情報)を更新するとともに、上位のEXP10に対してBC(CHG)を転送する。BC(CHG)を転送されたEXP10も、同様に、ディスカバリプロセスの実行により下位のSASデバイス7やEXP20,30,40に関するルートテーブル(状態情報)を更新するとともに、上位のEXP00に対してBC(CHG)を転送する。
次いで、下位側のEXP6からBC(CHG)を受領したEXP4により、下位側のEXP6に対してディスカバリプロセスが開始され、下位側のEXP6から状態情報等の情報が採取される(ステップS2)。
例えば、図5に示すEXP30から発行されたBC(CHG)を受領すると、EXP4は、下位に接続されたEXP10〜13(及びSASデバイス7)から状態情報を取得する。
そして、EXP4(通知部40a)により、CM番号をXXとし初期値がXX=00に設定され(ステップS3)、最小の番号のCM3であるCM00へのみBC(CHG)が転送される。なお、その他のCM01〜07に対するBC(CHG)は転送されず、通知部40aによりEXP4内でキューイングされる。
また、EXP4(監視部40b)により、BC(CHG)を転送したCM00へのSASポートであるPhy44が監視状態とされ、CM00からのSASフレームが監視される(ステップS4)。
次に、EXP4からBC(CHG)を受領したCM00により、ディスカバリプロセスが開始される。
まず、CM00により、配下のEXP4に対してSMP Functionが発行され、EXP4からのレスポンスであるマップ情報が受信される。そして、CM00により、EXP4の配下にEXP10〜13が存在することが認識されると、これらのEXP10〜13に対してそれぞれSMP Functionが発行される(ステップS5)。
続いて、CM00により、例えばEXP20〜23,EXP30〜33及びEXP40〜43の順でSMP Functionが発行され、全てのEXP6が認識されると、CM00におけるディスカバリプロセスが終了する(ステップS6)。
なお、監視部40bによるCM00から発行されるSMP Functionの監視によって、最下段のEXP40〜43に対するSMP Functionが終了したことが判断された場合に、EXP4は、CM00によるディスカバリプロセスが終了したと判断する。
そして、EXP4(通知制御部40c)により、全てのCM3によるディスカバリプロセスが終了したか否かが判断され(ステップS7)、終了していない場合には(ステップS7のNoルート)、CM番号のXXが所定の順序に応じて次のCM番号(例えば次に小さい番号であるXX=01)に設定される(ステップS8)。この場合、通知部40aにより、キューイングしていたBC(CHG)がCM01に対して転送され、監視部40bにより、CM01へのPhy44が監視状態とされ(ステップS4)、ステップS5の処理に移行する。なお、監視部40bによるCM00へのPhy44の監視状態は解除される。
上述したステップS4〜S8の処理が全CM3に対して行なわれると、通知制御部40cにより、ステップS7においてすべてのCM3によるディスカバリプロセスが終了したと判断される(ステップS7のYesルート)。すなわち、全てのCM3がSASの変化を認識したことになる。
なお、ステップS4〜S8の処理中にEXP4が他の新たなBC(CHG)を受領した場合には、上述の如く、リセット部40dにより、キューイング中の先のBC(CHG)が破棄され、新たなBC(CHG)についてステップS2以降の処理が行なわれる。
上述のように、本実施形態に係るEXP4によれば、配下のEXP6からBC(CHG)を受信した際に、全CM3に同時にBC(CHG)を転送する動作に代えて、最小の番号のCM3から1つずつ順番にBC(CHG)を転送することになる。より具体的には、EXP4が配下のEXP6からのBC(CHG)を受信すると、EXP4により、上位の全CM3に対して1CMずつ順次ディスカバリプロセスが開始されるように、BC(CHG)の送信が制御される。
従って、各CM3のディスカバリプロセスに時間差を設けることができ、各CM3のディスカバリプロセスが競合しなくなるため、EXP4及び6に対するアクセス競合を軽減することができる。特に、任意のEXP6から送信されたBC(CHG)に対応して、各CM3が一斉にディスカバリプロセスを開始することを防止できるため、多数のCM3からEXP4へのディスカバリプロセスの集中を回避することができる。これにより、EXP4が輻輳状態となることを抑止することができ、性能ネックによる処理遅延やCM3におけるマップ情報の獲得遅延、タイムアウト発生等を抑止することができる。特に、各EXP4に対して複数のイニシエータが接続される、図1及び図5に例示する大規模ストレージシステムの構成において、顕著な効果を得ることができる。
また、本実施形態に係るEXP4によれば、監視部40bにより、BC(CHG)が転送されたCM3からEXP4を介したDE5へのアクセスが監視される。そして、監視部40bによりアクセスが終了したことが検出された場合に、通知制御部40cにより、BC(CHG)の転送先が、転送が行なわれなかったCM3のうちの一以上のCM3に切り換えられる。このように、CM3のディスカバリプロセスによるアクセスが終了したときに次のCM3にBC(CHG)が転送されるため、EXP4は、ディスカバリプロセスの処理状態に追従して柔軟に次のCM3のディスカバリプロセスの開始を制御することができ、効率的にリソースを利用することができる。
なお、本実施形態に係る監視部40bによれば、BC(CHG)が転送されたCM3とDE5との間のSMP Function(制御情報)、及び、レスポンス(応答情報)、の少なくとも一方が監視される。従って、EXP4は、SMP Function又はレスポンスの発行が終了した場合に、CM3によるディスカバリプロセスに係るアクセスが終了したことを確実に検出することができる。
また、本実施形態に係る通知制御部40cによれば、通知部40aによるBC(CHG)の転送が全てのCM3に対して行なわれるまで、転送先の切り換えが行なわれるため、全てのCM3が、ディスカバリプロセスの処理遅延やタイムアウト発生等の影響を受けずに確実にマップ情報を獲得することができる。
さらに、本実施形態に係るリセット部40dによれば、SASデバイス7に係る状態変化の発生を示す他の通知、つまり他のBC(CHG)をDE5から受けた場合、通知部40a、監視部40b及び通知制御部40cにおける先の通知に係る処理がリセットされる。また、通知部40aにより、リセット後に、複数のCM3のうちの一部のCM3に対して他のBC(CHG)が転送される。これにより、先のBC(CHG)に係る処理中に他のBC(CHG)が発行された場合には、ストレージ装置1の最新の状態に関する情報を取得するための当該他のBC(CHG)に係るディスカバリプロセスを、効率的に(速やかに)実行することができる。
〔2〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、かかる特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
例えば、上述した実施形態において、通知部40aは、BC(CHG)の転送先のCM3として、複数のCM3のうちの1つのCM3を選択し、通知制御部40cは、次の転送先のCM3として、転送が行なわれていないCM3のうちの1つのCM3を選択していたが、これに限定されるものではない。
例えば、通知部40a及び通知制御部40cは、転送先として、2つ以上のCM3を同時に選択し、通知部40aは、2つ以上のCM3に対してBC(CHG)を転送しても良い。この場合においても、全てのCM3に対して同時にBC(CHG)が転送されるよりも、EXP4及び6に対するアクセス競合を軽減することができるため、上述の如き効果を得ることができる。
また、上述した実施形態において、通知制御部40cは、監視部40bによりCM3と最終のDE5(EXP6)との間のアクセスが終了したことが検出された場合に、BC(CHG)の転送先を切り換えていたが、これに限定されるものではない。
例えば、通知制御部40cは、監視部40bによる監視により、CM3と所定のDE5(EXP6)との間のアクセスが終了した場合に、転送先を切り換えて通知部40aにBC(CHG)を転送させても良い。すなわち、BC(CHG)の転送が、先のCM3によるディスカバリプロセスが終了する前に行なわれても良い。この場合、先にBC(CHG)が転送されたCM3によるディスカバリプロセスと、後にBC(CHG)が転送されたCM3によるディスカバリプロセスとは、一部の時間において並行して行なわれることになる。この場合においても、全てのCM3に対して同時にBC(CHG)が転送されるよりも、EXP4及び6に対するアクセス競合を軽減することができるため、上述の如き効果を得ることができる。
さらに、上述した実施形態において、BC(CHG)がEXP6から発行される場合について説明したが、これに限定されるものではない。
例えば、CE2がSASデバイス7を備える記憶装置として機能し、EXP4がSASデバイス7の状態変化の発生を検出した場合には、EXP4がディスカバリプロセスを実行して配下のデバイスに関する状態情報を取得する。そして、通知部40aが、上述したようにBC(CHG)を発行し、図6等を用いて上述した処理を行なうことができる。
なお、図1に例示するCE2内のEXP4及び各DE5内のEXP6は、それぞれ冗長化されているが、上述した実施形態においては、EXP4について、図5に例示するように第1系列に着目して説明した。しかし、実際には、任意のDE5(例えばEXP30及び34を備えるDE5)において状態変化の発生が検出された場合、EXP30及び34の両方からBC(CHG)が発行される。
例えばEXP30及び34からBC(CHG)が発行される場合、第1及び第2系列のそれぞれにおいて、上述したBC(CHG)の伝搬及びディスカバリプロセスが並行して行なわれる。この場合、EXP00及び01は、接続構成情報に基づいて、互いに異なる順序で、BC(CHG)の転送先のCM3を選択しても良い。これにより、1つのCM3が同時に第1及び第2系列に対するディスカバリプロセスを行なうことを防止することができ、CM3の処理遅延等を抑止することができる。
なお、通知部40a、監視部40b、通知制御部40c及びリセット部40dとしての機能を実現するためのプログラム(処理プログラム)は、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。また、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信回線を介してコンピュータに提供するようにしても良い。
通知部40a、監視部40b、通知制御部40c及びリセット部40dとしての機能を実現する際には、内部記憶装置(本実施形態では図示しないROM又はメモリ43)に格納されたプログラムがコンピュータのマイクロプロセッサ(本実施形態ではプロセッサ42)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしても良い。
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。また、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、EXP4がコンピュータとしての機能を有しているのである。
〔3〕付記
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
少なくとも一つの記憶部を備える記憶装置と前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置であって、
前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送する通知部と、
前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視する監視部と、
前記監視部により前記アクセスが終了したことが検出された場合、前記通知部による前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換える通知制御部と、を備えることを特徴とする、接続装置。
(付記2)
前記監視部は、前記通知が転送された制御部から前記記憶装置に対して発行される、前記状態変化の発生に応じて前記記憶装置を制御する制御情報、及び、前記記憶装置から前記制御部に対して発行される前記制御情報に対する応答情報、の少なくとも一方を監視し、監視する前記制御情報及び前記応答情報の少なくとも一方の発行が終了した場合、前記アクセスが終了したことを検出することを特徴とする、付記1記載の接続装置。
(付記3)
前記通知制御部は、前記通知部による前記通知の転送が全ての前記制御部に対して行なわれるまで、前記切り換えを行なうことを特徴とする、付記1又は付記2記載の接続装置。
(付記4)
前記記憶装置から通知された前記状態変化の発生を示す情報を保持する保持部をさらに備え、
前記通知部は、前記転送先の制御部に対して、前記保持部に保持された前記状態情報の発生を示す情報に基づく前記通知を転送し、
前記通知制御部は、前記通知部による前記通知の転送が全ての前記制御部に対して行なわれると、前記保持部に保持された前記状態情報の発生を示す情報を破棄することを特徴とする、付記3記載の接続装置。
(付記5)
前記接続装置には、それぞれが少なくとも一つの記憶部を備える複数の記憶装置が、直接接続、又は、前記直接接続される記憶装置に縦続接続され、
前記監視部は、前記通知が転送された制御部から前記複数の記憶装置のうちの最終の記憶装置へのアクセスが終了した場合、前記アクセスが終了したことを検出することを特徴とする、付記1〜4のいずれか1項記載の接続装置。
(付記6)
前記接続装置は、前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記接続装置に接続された前記記憶装置から、前記記憶装置の状態情報を取得し、
前記通知部は、前記状態情報を全ての前記記憶装置から取得した場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送することを特徴とする、付記5記載の接続装置。
(付記7)
前記接続装置は、前記通知が転送された制御部から、前記記憶装置へのアクセスに先立って前記接続装置に対して接続情報の要求があった場合に、前記制御部に対して接続情報を送信し、
前記監視部は、前記送信した接続情報に基づいて、前記最終の記憶装置を検出することを特徴とする、付記5又は付記6記載の接続装置。
(付記8)
前記記憶部に係る状態変化の発生を示す他の通知を前記記憶装置から受けた場合、前記通知部、前記監視部及び前記通知制御部における先の通知に係る処理をリセットするリセット部をさらに備え、
前記通知部は、前記リセット部によるリセット後に、前記複数の制御部のうちの一部の制御部に対して前記他の通知を転送することを特徴とする、付記1〜7のいずれか1項記載の接続装置。
(付記9)
前記通知部は、予め設定された接続構成情報に基づいて、前記通知を転送する前記複数の制御部のうちの一部の制御部を選択し、
前記通知制御部は、前記接続構成情報に基づいて、所定の順序で前記転送先の一以上の制御部を選択することを特徴とする、付記1〜8のいずれか1項記載の接続装置。
(付記10)
前記通知部は、前記通知を前記複数の制御部のうちの一の制御部に対して転送し、
前記通知制御部は、前記監視部により前記アクセスが終了したことが検出された場合、前記通知部による前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの他の制御部に切り換えることを特徴とする、付記1〜9のいずれか1項記載の接続装置。
(付記11)
少なくとも一つの記憶部を備える記憶装置と、
前記記憶装置に対する制御を行なう複数の制御部と、
前記記憶装置と前記複数の制御部との間に介設される接続装置であって、前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送する通知部と、前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視する監視部と、前記監視部により前記アクセスが終了したことが検出された場合、前記通知部による前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換える通知制御部と、を備える接続装置と、を備えることを特徴とする、ストレージ装置。
(付記12)
前記監視部は、前記通知が転送された制御部から前記記憶装置に対して発行される、前記状態変化の発生に応じて前記記憶装置を制御する制御情報、及び、前記記憶装置から前記制御部に対して発行される前記制御情報に対する応答情報、の少なくとも一方を監視し、監視する前記制御情報及び前記応答情報の少なくとも一方の発行が終了した場合、前記アクセスが終了したことを検出することを特徴とする、付記11記載のストレージ装置。
(付記13)
前記通知制御部は、前記通知部による前記通知の転送が全ての前記制御部に対して行なわれるまで、前記切り換えを行なうことを特徴とする、付記11又は付記12記載のストレージ装置。
(付記14)
前記接続装置には、それぞれが少なくとも一つの記憶部を備える複数の記憶装置が、直接接続、又は、前記直接接続される記憶装置に縦続接続され、
前記監視部は、前記通知が転送された制御部から前記複数の記憶装置のうちの最終の記憶装置へのアクセスが終了した場合、前記アクセスが終了したことを検出することを特徴とする、付記11〜13のいずれか1項記載のストレージ装置。
(付記15)
少なくとも一つの記憶部を備える記憶装置と、前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置における処理方法であって、
前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送し、
前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視し、
前記監視により前記アクセスが終了したことが検出された場合、前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換えることを特徴とする、処理方法。
(付記16)
前記アクセスの監視は、前記通知が転送された制御部から前記記憶装置に対して発行される、前記状態変化の発生に応じて前記記憶装置を制御する制御情報、及び、前記記憶装置から前記制御部に対して発行される前記制御情報に対する応答情報、の少なくとも一方を監視することにより行なわれ、
監視する前記制御情報及び前記応答情報の少なくとも一方の発行が終了した場合、前記アクセスが終了したことを検出することを特徴とする、付記15記載の処理方法。
(付記17)
前記通知の転送先は、前記通知の転送が全ての前記制御部に対して行なわれるまで、切り換えられることを特徴とする、付記15又は付記16記載の処理方法。
(付記18)
前記接続装置には、それぞれが少なくとも一つの記憶部を備える複数の記憶装置が、直接接続、又は、前記直接接続される記憶装置に縦続接続され、
前記通知が転送された制御部から前記複数の記憶装置のうちの最終の記憶装置へのアクセスが終了した場合、前記アクセスが終了したことを検出することを特徴とする、付記15〜17のいずれか1項記載の処理方法。
(付記19)
前記記憶部に係る状態変化の発生を示す他の通知を前記記憶装置から受けた場合、先の通知に係る前記通知の転送、前記アクセスの監視及び前記通知の転送先の切り換えの処理をリセットし、
リセット後に、前記複数の制御部のうちの一部の制御部に対して前記他の通知を転送することを特徴とする、付記15〜18のいずれか1項記載の処理方法。
(付記20)
少なくとも一つの記憶部を備える記憶装置と、前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置としてのコンピュータに、
前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送し、
前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視し、
前記監視により前記アクセスが終了したことが検出された場合、前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換える、
処理を実行させることを特徴とする、処理プログラム。
1,100 ストレージ装置
2,2,200 コントローラエンクロージャ
3 コントローラモジュール(制御部)
31 ホストアダプタ
32,42 プロセッサ
33 メモリ(保持部)
34 SAS IOコントローラ
300 コントローラモジュール
4 エクスパンダ(接続装置)
40a 通知部
40b 監視部
40c 通知制御部
40d リセット部
41 エクスパンダチップ
42a SMP論理デバイス
42b SSP論理デバイス
43 メモリ
44 Phy(ポート)
45a シリアルポート
45b イーサポート
46 電源
47 PLD
48 スイッチ
5 ドライブエンクロージャ(記憶装置)
500 ドライブエンクロージャ
6,400,600 エクスパンダ
7 SASドライブ(記憶部)
700 SASドライブ
8,800 ホスト

Claims (8)

  1. 少なくとも一つの記憶部を備える記憶装置と前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置であって、
    前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送する通知部と、
    前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視する監視部と、
    前記監視部により前記アクセスが終了したことが検出された場合、前記通知部による前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換える通知制御部と、を備えることを特徴とする、接続装置。
  2. 前記監視部は、前記通知が転送された制御部から前記記憶装置に対して発行される、前記状態変化の発生に応じて前記記憶装置を制御する制御情報、及び、前記記憶装置から前記制御部に対して発行される前記制御情報に対する応答情報、の少なくとも一方を監視し、監視する前記制御情報及び前記応答情報の少なくとも一方の発行が終了した場合、前記アクセスが終了したことを検出することを特徴とする、請求項1記載の接続装置。
  3. 前記通知制御部は、前記通知部による前記通知の転送が全ての前記制御部に対して行なわれるまで、前記切り換えを行なうことを特徴とする、請求項1又は請求項2記載の接続装置。
  4. 前記接続装置には、それぞれが少なくとも一つの記憶部を備える複数の記憶装置が、直接接続、又は、前記直接接続される記憶装置に縦続接続され、
    前記監視部は、前記通知が転送された制御部から前記複数の記憶装置のうちの最終の記憶装置へのアクセスが終了した場合、前記アクセスが終了したことを検出することを特徴とする、請求項1〜3のいずれか1項記載の接続装置。
  5. 前記記憶部に係る状態変化の発生を示す他の通知を前記記憶装置から受けた場合、前記通知部、前記監視部及び前記通知制御部における先の通知に係る処理をリセットするリセット部をさらに備え、
    前記通知部は、前記リセット部によるリセット後に、前記複数の制御部のうちの一部の制御部に対して前記他の通知を転送することを特徴とする、請求項1〜4のいずれか1項記載の接続装置。
  6. 少なくとも一つの記憶部を備える記憶装置と、
    前記記憶装置に対する制御を行なう複数の制御部と、
    前記記憶装置と前記複数の制御部との間に介設される接続装置であって、前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送する通知部と、前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視する監視部と、前記監視部により前記アクセスが終了したことが検出された場合、前記通知部による前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換える通知制御部と、を備える接続装置と、を備えることを特徴とする、ストレージ装置。
  7. 少なくとも一つの記憶部を備える記憶装置と、前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置における処理方法であって、
    前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送し、
    前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視し、
    前記監視により前記アクセスが終了したことが検出された場合、前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換えることを特徴とする、処理方法。
  8. 少なくとも一つの記憶部を備える記憶装置と、前記記憶装置に対する制御を行なう複数の制御部との間に介設される接続装置としてのコンピュータに、
    前記記憶部に係る状態変化の発生を示す通知を前記記憶装置から受けた場合、前記複数の制御部のうちの一部の制御部に対して前記通知を転送し、
    前記通知が転送された制御部から前記接続装置を介した前記記憶装置へのアクセスを監視し、
    前記監視により前記アクセスが終了したことが検出された場合、前記通知の転送先を、前記通知の転送が行なわれなかった制御部のうちの一以上の制御部に切り換える、
    処理を実行させることを特徴とする、処理プログラム。
JP2011285715A 2011-12-27 2011-12-27 接続装置、ストレージ装置、接続装置における処理方法、および処理プログラム Expired - Fee Related JP5923976B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2011285715A JP5923976B2 (ja) 2011-12-27 2011-12-27 接続装置、ストレージ装置、接続装置における処理方法、および処理プログラム
US13/616,745 US8645587B2 (en) 2011-12-27 2012-09-14 Connection apparatus, processing method for connection apparatus and computer-readable recording medium in which processing program is recorded
EP12187938.1A EP2610729A3 (en) 2011-12-27 2012-10-10 Connection apparatus, storage apparatus, processing method for connection apparatus and processing program
KR1020120113760A KR101318004B1 (ko) 2011-12-27 2012-10-12 접속 장치, 스토리지 장치, 접속 장치에 있어서의 처리 방법, 및 처리 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
CN2012104294490A CN103227808A (zh) 2011-12-27 2012-10-31 连接设备、存储设备和用于连接设备的处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011285715A JP5923976B2 (ja) 2011-12-27 2011-12-27 接続装置、ストレージ装置、接続装置における処理方法、および処理プログラム

Publications (2)

Publication Number Publication Date
JP2013134681A true JP2013134681A (ja) 2013-07-08
JP5923976B2 JP5923976B2 (ja) 2016-05-25

Family

ID=47178490

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011285715A Expired - Fee Related JP5923976B2 (ja) 2011-12-27 2011-12-27 接続装置、ストレージ装置、接続装置における処理方法、および処理プログラム

Country Status (5)

Country Link
US (1) US8645587B2 (ja)
EP (1) EP2610729A3 (ja)
JP (1) JP5923976B2 (ja)
KR (1) KR101318004B1 (ja)
CN (1) CN103227808A (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5377399B2 (ja) * 2010-04-09 2013-12-25 株式会社日立製作所 フレーム転送装置及びフレーム転送方法
TWI598739B (zh) * 2013-10-18 2017-09-11 美超微電腦股份有限公司 硬碟擴展裝置
US9542348B2 (en) * 2014-04-08 2017-01-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Arbitration monitoring for serial attached small computer system interface systems during discovery
CN105988726B (zh) * 2014-10-31 2019-06-11 株式会社东芝 存储装置及用于利用电源无效信号的方法
CN104391548A (zh) * 2014-12-16 2015-03-04 浪潮电子信息产业股份有限公司 一种提高服务器Expander板卡芯片FW烧录效率的方法
CN104598275A (zh) * 2015-01-13 2015-05-06 浪潮电子信息产业股份有限公司 一种提高lsisas2x20芯片fw烧录效率的烧录方法
CN111209236A (zh) * 2020-01-03 2020-05-29 苏州浪潮智能科技有限公司 一种多级级联expander的通信方法
CN111240932A (zh) * 2020-01-09 2020-06-05 苏州浪潮智能科技有限公司 一种机箱管理方法、装置及电子设备和存储介质
CN114415957B (zh) * 2022-01-20 2022-11-29 无锡众星微系统技术有限公司 一种级联expander自动配置方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011243064A (ja) * 2010-05-19 2011-12-01 Fujitsu Ltd 接続拡張装置、ストレージシステム、接続拡張制御プログラム及び接続拡張制御方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0764898A (ja) * 1993-08-26 1995-03-10 Hitachi Ltd 電子計算機の周辺装置接続システム
JPH08286989A (ja) * 1995-04-19 1996-11-01 Fuji Xerox Co Ltd ネットワーク管理システム
US7263593B2 (en) * 2002-11-25 2007-08-28 Hitachi, Ltd. Virtualization controller and data transfer control method
JP2006107080A (ja) * 2004-10-05 2006-04-20 Hitachi Ltd ストレージ装置システム
JP2006127217A (ja) * 2004-10-29 2006-05-18 Hitachi Ltd 計算機システムおよび計算機システムの制御方法
JP4479564B2 (ja) 2005-03-28 2010-06-09 日本電気株式会社 ネットワークシステム初期化時のチャネル制御方法、プログラム、およびコンピュータシステム
JP4806557B2 (ja) 2005-10-18 2011-11-02 株式会社日立製作所 ログを管理するストレージ装置及び計算機システム
JP4775846B2 (ja) * 2006-03-20 2011-09-21 株式会社日立製作所 物理リンクの割当てを制御するコンピュータシステム及び方法
CN100458808C (zh) * 2006-04-26 2009-02-04 南京大学 一种对即插即用存储设备进行读写访问控制的方法
WO2007146515A2 (en) 2006-06-08 2007-12-21 Dot Hill Systems Corporation Fault-isolating sas expander
US7536508B2 (en) * 2006-06-30 2009-05-19 Dot Hill Systems Corporation System and method for sharing SATA drives in active-active RAID controller system
CN101529402B (zh) * 2006-12-20 2012-02-08 富士通株式会社 通信处理装置以及通信处理方法
JP4940967B2 (ja) * 2007-01-30 2012-05-30 富士通株式会社 ストレージシステム、ストレージ装置、ファームウェアの活性交換方法、ファームウェアの活性交換プログラム
JP4869123B2 (ja) * 2007-03-28 2012-02-08 株式会社日立製作所 ストレージシステム
JP4438010B2 (ja) * 2007-08-30 2010-03-24 富士通株式会社 中継装置、中継方法および中継制御プログラム
WO2010097933A1 (ja) * 2009-02-27 2010-09-02 富士通株式会社 情報処理装置、情報処理方法及びコンピュータプログラム
JP5376221B2 (ja) * 2009-03-31 2013-12-25 富士通株式会社 状態通知システム、状態通知装置、状態監視装置、状態検知装置、状態通知プログラムおよび状態通知方法
WO2010140189A1 (en) * 2009-06-02 2010-12-09 Hitachi, Ltd. Storage system and control methods for the same
JP5391994B2 (ja) 2009-10-19 2014-01-15 富士通株式会社 ストレージシステム,制御装置および診断方法
JP5327036B2 (ja) 2009-12-21 2013-10-30 富士通株式会社 記憶装置接続装置,ストレージ装置,情報管理方法及び情報管理プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011243064A (ja) * 2010-05-19 2011-12-01 Fujitsu Ltd 接続拡張装置、ストレージシステム、接続拡張制御プログラム及び接続拡張制御方法

Also Published As

Publication number Publication date
EP2610729A3 (en) 2016-08-03
CN103227808A (zh) 2013-07-31
KR20130075647A (ko) 2013-07-05
KR101318004B1 (ko) 2013-10-14
US8645587B2 (en) 2014-02-04
JP5923976B2 (ja) 2016-05-25
US20130166788A1 (en) 2013-06-27
EP2610729A2 (en) 2013-07-03

Similar Documents

Publication Publication Date Title
JP5923976B2 (ja) 接続装置、ストレージ装置、接続装置における処理方法、および処理プログラム
US8898385B2 (en) Methods and structure for load balancing of background tasks between storage controllers in a clustered storage environment
JP5077240B2 (ja) 通信処理プログラムおよび通信処理方法
CN104202197A (zh) 设备管理的方法和装置
JP5514169B2 (ja) 情報処理装置および情報処理方法
JP6040612B2 (ja) ストレージ装置、情報処理装置、情報処理システム、アクセス制御方法、およびアクセス制御プログラム
JP5614133B2 (ja) アクセス制御装置、アクセス制御方法およびストレージシステム
US8843666B2 (en) Method for optimizing wide port power management in a SAS topology
JP2007065751A (ja) ストレージシステム及び記憶制御方法
JP2019095971A (ja) ストレージシステム、ストレージ制御装置およびプログラム
JP2014026529A (ja) ストレージシステムおよびその制御方法
JP6617461B2 (ja) 制御装置、制御プログラム、及び制御方法
CN105045336A (zh) Jbod
WO2017075149A1 (en) Distributing management responsibilities for a storage system
JP2015161999A (ja) ストレージ装置,制御装置及び制御プログラム
JP2006318152A (ja) 記憶制御システム及び方法
KR101137085B1 (ko) 데이터 저장 시스템의 논리 파티션에서 초기 프로그램 로드를 관리하는 방법, 이를 수행하기 위한 저장 컨트롤러, 및 컴퓨터 판독 가능 저장매체
US20150269099A1 (en) Storage controller, storage apparatus, and computer readable storage medium having storage control program stored therein
US9542348B2 (en) Arbitration monitoring for serial attached small computer system interface systems during discovery
JP5811706B2 (ja) ストレージ装置,データ転送方法及びプログラム
JP6565248B2 (ja) ストレージ装置、管理装置、ストレージシステム、データ移行方法及びプログラム
CN106155573B (zh) 用于存储设备扩展的方法、装置以及扩展的存储设备
JP6932953B2 (ja) ストレージ装置、システム、ストレージ装置の制御方法及びプログラム
JP2007213411A (ja) バスブリッジ装置
US8856306B2 (en) Determining an active zone manager based on disruption prediction metrics

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150804

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150918

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160322

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160404

R150 Certificate of patent or registration of utility model

Ref document number: 5923976

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees