JP2022174911A - ストレージシステム及び情報処理方法 - Google Patents

ストレージシステム及び情報処理方法 Download PDF

Info

Publication number
JP2022174911A
JP2022174911A JP2021080952A JP2021080952A JP2022174911A JP 2022174911 A JP2022174911 A JP 2022174911A JP 2021080952 A JP2021080952 A JP 2021080952A JP 2021080952 A JP2021080952 A JP 2021080952A JP 2022174911 A JP2022174911 A JP 2022174911A
Authority
JP
Japan
Prior art keywords
register
mirror transfer
storage system
error information
transfer
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.)
Pending
Application number
JP2021080952A
Other languages
English (en)
Inventor
真也 宮田
Shinya Miyata
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 JP2021080952A priority Critical patent/JP2022174911A/ja
Priority to US17/579,634 priority patent/US11704208B2/en
Publication of JP2022174911A publication Critical patent/JP2022174911A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • 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/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/85Active fault masking without idle spares

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)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】ストレージシステムにおける制御モジュールにおいて、汎用的なスイッチを実現すると共に、送達保障にかかる時間を短縮する。【解決手段】複数の制御モジュール1と中継装置2とを備え、複数の制御モジュール1の間でミラー転送を実行するストレージシステム100であって、中継装置2は、複数の制御モジュール1の間の各デバイス12,14,21における異常を検出してエラー情報をレジスタに集約し、複数の制御モジュール1のうちミラー転送の実行元である第1の制御モジュール1は、ミラー転送が実行された後に、レジスタの内容を読み出してミラー転送が正常に完了したかを判定する。【選択図】図3

Description

本発明は、ストレージシステム及び情報処理方法に関する。
ストレージシステムは、Controller Module(CM)及びFront End Router(FRT)を備える。CMは、ホストからのデータを受けて処理を行う。FRTは、各CM同士を接続し、CM間通信によるデータをルーティングする。CMとFRTとは、例えば、PCI Express(PCIe)で接続されてよい。
CMは、Switch(SW)及びNon-Transparent Bridge(NTB)を備えてよい。SWは、Central Processing Unit(CPU)やDirect Memory Access(DMA),NTBをルーティングし、CMとFRTとの間の経路がPCIeである場合にはPCIeSWであってよい。NTBは、データを別ドメイン(FRT及び別CM)に転送するために転送パケットのアドレス変換を行い、CMとFRTとの間の経路がPCIeである場合にはPCIeSWであってよい。
CM間通信では、ユーザデータの冗長性を保つためのデータ転送(別言すれば、ミラー)が多く行われる。このようなデータ転送において、経路上のデバイスの内部異常等により正しく転送が行えなかった場合には、冗長性を保てなくなりシステムダウンに陥る可能性がある。このようなデータ転送が行われるCM間通信においては、データが正常に転送できたかどうかが、送達保障機能によりハードウェアで保障される。
送達保障機能では、データ冗長化のためのライトのCM間通信が実施された後、当該CM間通信と同じ経路を使ってライトしたアドレスをリードすることによって送達保障リードを行う。そして、リード処理が正常に完了することで、ライトしたCM間通信の経路に異常が無いことが保障される。一方、ライトの際に経路に異常があった場合には、CM間即断機能により、当該経路をハードウェア的に切断し、送達保障リードが失敗させられる。
特開2018-060419号公報 特開2016-212516号公報 特表2013-515980号公報
送達保障機能及びCM間即断機能は、CM内部のSWやNTB(例えば、PCIeSW)の独自の機能により実現される。そのため、CMに備えるSWやNTBの種類によっては、送達保障機能又はCM間即断機能を実現できないおそれがある。
1つの側面では、ストレージシステムにおける制御モジュールにおいて、汎用的なスイッチを実現すると共に、送達保障にかかる時間を短縮することを目的とする。
1つの側面では、ストレージシステムは、複数の制御モジュールと中継装置とを備え、前記複数の制御モジュールの間でミラー転送を実行するストレージシステムであって、前記中継装置は、前記複数の制御モジュールの間の各デバイスにおける異常を検出してエラー情報をレジスタに集約し、前記複数の制御モジュールのうち前記ミラー転送の実行元である第1の制御モジュールは、前記ミラー転送が実行された後に、前記レジスタの内容を読み出して前記ミラー転送が正常に完了したかを判定する。
1つの側面では、ストレージシステムにおける制御モジュールにおいて、汎用的なスイッチを実現できると共に、送達保障にかかる時間を短縮できる。
実施形態におけるストレージシステムのハードウェア構成例を模式的に示すブロック図である。 図1に示したストレージシステムのソフトウェア構成例を模式的に示すブロック図である。 図1に示したストレージシステムにおける送達保障処理を説明するブロック図である。 図3に示した送達保障処理における正常時の動作を説明する図である。 図3に示した送達保障処理における異常時の動作を説明する図である。 図1に示したストレージシステムにおける送達保障処理を説明するフローチャートである。 図6に示した送達保障処理の送達保障判定部における動作の詳細を説明するフローチャートである。 図6に示した送達保障処理のFRT Route Complex(RC)における動作の詳細を説明するフローチャートである。 図6に示した送達保障処理のエラー情報集約部における動作の詳細を説明するフローチャートである。 関連例における送達保障処理の際のレイテンシを説明するブロック図である。 実施形態における送達保障処理の際のレイテンシを説明するブロック図である。
〔A〕実施形態
以下、図面を参照して一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
〔A-1〕構成例
図1は、実施形態におけるストレージシステム100のハードウェア構成例を模式的に示すブロック図である。
ストレージシステム100は、複数のCM1(別言すれば、CM#0~#n)及び複数のFRT2(別言すれば、FRT#0~#n)を備える。
CM1は、制御モジュールの一例であり、CPU11,SW12,1以上(図示する例では2つ)のDMA13,1以上(図示する例では4つ)のNTB14及び監視Field Programmable Gate Array(FPGA)15を備える。
CPU11は、例示的に、種々の制御や演算を行なう処理装置であり、メモリ110(図4及び図5等を用いて後述)に格納されたOperating System(OS)やプログラムを実行することにより、種々の機能を実現する。
なお、種々の機能を実現するためのプログラムは、例えばフレキシブルディスク、CD(CD-ROM、CD-R、CD-RW等)、DVD(DVD-ROM、DVD-RAM、DVD-R、DVD+R、DVD-RW、DVD+RW、HD DVD等)、ブルーレイディスク、磁気ディスク、光ディスク、光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供されてよい。そして、コンピュータ(本実施形態ではCPU11)は上述した記録媒体から図示しない読取装置を介してプログラムを読み取って内部記録装置または外部記録装置に転送し格納して用いてよい。また、プログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、記憶装置から通信経路を介してコンピュータに提供してもよい。
種々の機能を実現する際には、内部記憶装置(本実施形態ではメモリ110)に格納されたプログラムがコンピュータ(本実施形態ではCPU11)によって実行されてよい。また、記録媒体に記録されたプログラムをコンピュータが読み取って実行してもよい。
SW12は、CPU11やDMA13,NTB14をルーティングし、CM1とFRT2との間の経路がPCIeである場合にはPCIeSWであってよい。
DMA13は、CPU11を介さずに、メインメモリと各モジュールとの間のデータ転送を実現する。
NTB14は、データを別ドメイン(FRT2及び別CM1)に転送するために転送パケットのアドレス変換を行い、CM1とFRT2との間の経路がPCIeである場合にはPCIeSWであってよい。
監視FPGA15は、CM1内部の状態監視を行う集積回路である。
FRT2は、中継装置の一例であり、FRT SW21及びFRT RC22を備える。
FRT SW21は、CM1とFRT2との間の通信を中継する。
FRT RC22は、CM1及びFRT2の各デバイスで検出された異常に関するエラー情報を集約する。
図2は、図1に示したストレージシステム100のソフトウェア構成例を模式的に示すブロック図である。
ストレージシステム100は、異常検出部111,エラー情報集約部112及び送達保障判定部113として機能する。
異常検出部111は、各デバイスで発生した異常を検出する。
エラー情報集約部112は、各CM1及びFRT SW21で発生した異常を示すエラー情報を集約する。
送達保障判定部113は、エラー情報集約部112によって集約されたエラー情報をリードすることにより、CM1間のミラー転送が正常に完了したかを判定することにより、送達保障機能を実現する。
図3は、図1に示したストレージシステム100における送達保障処理を説明するブロック図である。
図3に示すストレージシステム100において、異常検出部111は、CM1のSW12及びNTB14に配置されていると共に、FRT2のFRT SW21に配置されている。また、エラー情報集約部112はFRTのFRT RC22に配置され、送達保障判定部113はCM1のDMA13に配置されている。
また、図3に示すストレージシステム100においては、FRT2のFRT SW21にアップストリームポート211及びダウンストリームポート212が備えられている。アップストリームポート211は、FRT RC22との間のデータ通信を中継する。ダウンストリームポート212は、各CM1との間の通信を中継する。
ホストからデータがライトされてCPU11を介してデータがキャッシュに格納されると、キャッシュされたデータがDMA13を介してミラー転送先のCM1へライトされる。
図3に示す例においては、符号A1に示すように、ミラー転送の際に、NTB14のFRT2への接続ポート又はFRT SW21の各ダウンストリームポート212における異常検出部111で異常を検出される。
符号A2に示すように、FRT RC22のエラー情報集約部112にエラーレポート(例えば、PCIe標準のMessage Request)が集約される。
符号A3に示すように、FRT RC22は、不図示のエラーレポートレジスタの各番地でエラー発生有無のフラグを保持する。図3においては、例えば、CM#0からのエラーレポートが0番地に登録され、CM#1からのエラーレポートが1番地に登録されている。
NTB14のSW12側ポート及びその上流(別言すれば、CPU11側)で異常が発生した場合には、エラーレポートは、CPU11方向に転送されてよい。そして、符号A4及びA5に示すように、SW12のDMA13及びNTB14側のポートにおけるDownstream Port Containment(DPC)機能により、経路を切断する。
DMA13の送達保障判定部113は、ミラー転送先のCM1へのライト実施後、FRT RC22のエラー情報集約部112の全番地をリードする。送達保障判定部113よるリードは、ミラー転送先のCM1へのライトをする度に実施する。なお、DMA13による送達保障リードは、ミラー転送先へのCM1へのライト後、十分な時間を空けて実施されてよい。
送達保障判定部113は、リードした情報を確認し、エラーフラグが無い場合は、正常にミラーが完了したと判定する。一方、送達保障判定部113は、エラーフラグがあった場合、又はエラー情報集約部112へのリードが失敗した場合には、ミラー転送が途中経路の異常により失敗したと判定する。
すなわち、FRT2は、複数のCM1の間の各デバイスにおける異常を検出してエラー情報をレジスタに集約する。ミラー転送の実行元であるCM1は、ミラー転送が実行された後に、レジスタの内容を読み出してミラー転送が正常に完了したかを判定する。
これにより、一時的な経路異常の発生によりミラー転送が失敗した場合であっても、エラーレポートがFRT RC22へ送信されるため、経路切断をすることなく送達保障の判定を実施できる。
ミラー転送の実行元であるCM1は、レジスタにエラー情報が書き込まれている場合に、ミラー転送が正常に完了していないと判定してよい。また、ミラー転送の実行元であるCM1は、レジスタの内容を読み出すことができない場合には、ミラー転送が正常に完了していないと判定してよい。
FRT2は、レジスタのアドレスの番地のそれぞれに対して各デバイスを対応づけてエラー情報を集約する。ミラー転送の実行元であるCM1は、レジスタの全ての番地を読み出してミラー転送が正常に完了したかを判定してよい。また、ミラー転送の実行元であるCM1は、レジスタの全ての番地のうちミラー転送の経路に関わる番地を読み出してミラー転送が正常に完了したかを判定してもよい。
図4は、図3に示した送達保障処理における正常時の動作を説明する図である。
図4に示すCM1においては、図1等に示した構成に加えて、メモリ110及びNTB14のポート140を備えることとしている。
符号B1に示すように、CM#0のDMA13からCM#1のメモリ110に対して、データ冗長化のためのデータライトが行われる。
図4に示す例では、いずれの経路でも異常が発生していないため、符号B2に示すように、FRT RC22のエラー情報集約部112は、エラーフラグ無しの状態をエラーレポートレジスタで保持する。
符号B3に示すように、DMA13の送達保障判定部113は、送達保障のためのデータリードをFRT RC22のエラー情報集約部112に対して行う。
符号B4に示すように、送達保障判定部113は、エラー情報集約部112においてエラーフラグが保持されていないため、送達保障の判定がOKであると認識する。
図5は、図3に示した送達保障処理における異常時の動作を説明する図である。
符号C1に示すように、CM#0のDMA13からCM#1のメモリ110に対して、データ冗長化のためのデータライトが行われる。
図5に示す例では、符号C2に示すようにFRT SW21で異常が発生してFRT RC22のエラー情報集約部112にエラーレポートが送信されているため、符号C3に示すようにエラー情報集約部112はエラーフラグをエラーレポートレジスタに登録する。
符号C4に示すように、DMA13の送達保障判定部113は、送達保障のためのデータリードをFRT RC22のエラー情報集約部112に対して行う。
符号C5に示すように、送達保障判定部113は、エラー情報集約部112においてエラーフラグが保持されているため、送達保障の判定がNGであると認識する。
〔A-2〕動作例
図1に示したストレージシステム100における送達保障処理を、図6に示すフローチャート(ステップS1~S7)に従って説明する。
DMA13は、ホストからのデータを受信して、キャッシュを格納する(ステップS1)。
DMA13は、ミラー転送先のCM1へデータをライトする(ステップS2)。
DMA13は、FRT RC22のエラー情報集約部112をリードする(ステップS3)。
DMA13は、エラー情報集約部112を正常にリードできたかを判定する(ステップS4)。
正常にリードできなかった場合には(ステップS4のNOルート参照)、DMA13は、ミラーライトは失敗したと判断し、復旧処理を行う(ステップS5)。そして、送達保障処理は終了する。
一方、正常にリードできた場合には(ステップS4のYESルート参照)、DMA13は、エラー情報集約部112からのリード結果にエラーフラグがあるかを判定する(ステップS6)。
エラーフラグがある場合には(ステップS6のYESルート参照)、処理はステップS5へ進む。
一方、エラーフラグがない場合には(ステップS6のNOルート参照)、DMA13は、ミラーライトを正常に終了したと判断する(ステップS7)。そして、送達保障処理は終了する。
次に、図6に示した送達保障処理の送達保障判定部113における動作の詳細を、図8に示すフローチャート(ステップS11~S20)に従って説明する。
送達保障判定部113は、ミラー転送先のCM1へデータをライトする(ステップS11)。
送達保障判定部113は、所定の時間、動作を待機する(ステップS12)。
送達保障判定部113は、FRT RC22のエラー情報集約部112の全番地をリードすることにより、送信保障リードを実行する(ステップS13)。なお、送達保障判定部113によるリード要求に応じたFRT RC22における処理は、図8のステップS21を用いて後述する。
送達保障判定部113は、図8のステップS24を用いて後述するFRT RC22からのリード応答に応じて、リード応答はあるかを判定する(ステップS14)。
リード応答がある場合には(ステップS14のYESルート参照)、送達保障判定部113は、リード応答において、ミラーライト経路の各ポートからのエラーフラグの有無を確認する(ステップS15)。
送達保障判定部113は、リード応答においてエラーフラグはあるかを判定する(ステップS16)。
エラーフラグがない場合には(ステップS16のNOルート参照)、送達保障判定部113は、送達保障OKと判定する(ステップS17)。
送達保障判定部113は、CPU11へ送達保障処理の完了通知を発行する(ステップS18)。そして、送達保障処理の送達保障判定部113における動作は終了する。
リード応答がない場合(ステップS14のNOルート参照)、又は、エラーフラグがある場合には(ステップS16のYESルート参照)、送達保障判定部113は、送達保証NGと判定する(ステップS19)。
送達保障判定部113は、CPU11へ送達保障処理の異常通知を発行する(ステップS20)。そして、送達保障処理の送達保障判定部113における動作は終了する。
次に、図6に示した送達保障処理のFRT RC22における動作の詳細を、図8に示すフローチャート(ステップS21~S24)に従って説明する。
FRT RC22は、図7のステップS13で示した送達保障判定部113により発行されたリード要求に応じて、DMA13からの送信保障リード要求の有無を監視する(ステップS21)。
FRT RC22は、リード要求を受信したかを判定する(ステップS22)。
リード要求を受信していない場合には(ステップS22のNOルート参照)、処理はステップS21へ戻る。
一方、リード要求を受信した場合には(ステップS22のYESルート参照)、FRT RC22は、エラー情報集約部112におけるエラー情報を読み込む(ステップS23)。なお、FRT RC22によるエラー情報の読み込み処理に応じたエラー情報集約部112における処理は、図9のステップS33を用いて後述する。
FRT RC22は、エラー情報集約部112における全番地のデータの応答を返す(ステップS24)。なお、FRT RC22によるデータ応答に応じた送達保障判定部113における処理は図7のステップS14を用いて前述した。そして、送達保障処理のFRT RC22における動作は終了する。
次に、図6に示した送達保障処理のエラー情報集約部112における動作の詳細を、図9に示すフローチャート(ステップS31~S33)に従って説明する。
エラー情報集約部112は、FRT SW21配下の各ポートからエラーレポート受信の監視を行う(ステップS31)。
エラー情報集約部112は、エラーレポートを受信したかを判定する(ステップS32)。
エラーレポートを受信していない場合には(ステップS32のNOルート参照)、処理はステップS31へ戻る。
一方、エラーレポートを受信した場合には(ステップS32のYESルート参照)、エラー情報集約部112は、各ポートに対応する番地にエラーフラグを立て、図8のステップS23に示したFRT RC22によるエラー情報の読み込み要求に応じる(ステップS33)。そして、送達保障処理のエラー情報集約部112における動作は終了する。
〔B〕効果
上述した実施形態の一例におけるストレージシステム100及び情報処理方法によれば、例えば、以下の作用効果を奏することができる。
FRT2は、複数のCM1の間の各デバイスにおける異常を検出してエラー情報をレジスタに集約する。ミラー転送の実行元であるCM1は、ミラー転送が実行された後に、レジスタの内容を読み出してミラー転送が正常に完了したかを判定する。
これにより、ストレージシステム100における制御モジュールにおいて、汎用的なスイッチを実現できると共に、送達保障にかかる時間を短縮できる。
ミラー転送の実行元であるCM1は、レジスタにエラー情報が書き込まれている場合に、ミラー転送が正常に完了していないと判定する。これにより、ストレージシステム100におけるいずれかのデバイスで異常が発生したことにより、ミラー転送が正常に完了していない可能性があることを認識できる。
ミラー転送の実行元であるCM1は、レジスタの内容を読み出すことができない場合には、ミラー転送が正常に完了していないと判定する。これにより、CM1とFRT2との間のデバイスで異常が発生したことにより、ミラー転送が正常に完了していない可能性があることを認識できる。
FRT2は、レジスタのアドレスの番地のそれぞれに対して各デバイスを対応づけてエラー情報を集約する。ミラー転送の実行元であるCM1は、レジスタの全ての番地を読み出してミラー転送が正常に完了したかを判定する。これにより、ストレージシステム100におけるいずれかのデバイスで異常が発生したことにより、ミラー転送が正常に完了していない可能性があることを認識できる。
FRT2は、レジスタのアドレスの番地のそれぞれに対して各デバイスを対応づけてエラー情報を集約する。ミラー転送の実行元であるCM1は、レジスタの全ての番地のうちミラー転送の経路に関わる番地を読み出してミラー転送が正常に完了したかを判定する。これにより、ミラー転送が正常に完了したかの判定のための最低限のデバイスにおける状態を読み出すことができ、ミラー転送の失敗による復旧処理の実行を最低限にできる。
図10は、関連例における送達保障処理の際のレイテンシを説明するブロック図である。図11は、実施形態における送達保障処理の際のレイテンシを説明するブロック図である。
PCIeSW等の各モジュールの通過レイテンシを150nsとし、メモリのリードレイテンシを1000nsとし、FRT RC22のエラー情報集約部112のレジスタリードレイテンシを200nsとする。
図10の符号D1に示すように、関連例において送達保障のためのデータリードを実行すると、150ns x 10 + 1000ns = 2500nsの時間がかかる。
一方、図11の符号E1に示すように、実施形態において送達保障のためのデータリードを実行すると、150ns x 6 + 200ns = 1100nsの時間がかかる。
このように、実施形態における送達保障においては、データリードにかかる時間を例えば1.4μs短縮でき、1つのミラー処理にかかる時間短縮及び装置Input/Output Per Second(IOPS)性能の向上を実現できる。
〔C〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
〔D〕付記
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
複数の制御モジュールと中継装置とを備え、前記複数の制御モジュールの間でミラー転送を実行するストレージシステムであって、
前記中継装置は、前記複数の制御モジュールの間の各デバイスにおける異常を検出してエラー情報をレジスタに集約し、
前記複数の制御モジュールのうち前記ミラー転送の実行元である第1の制御モジュールは、前記ミラー転送が実行された後に、前記レジスタの内容を読み出して前記ミラー転送が正常に完了したかを判定する、
ストレージシステム。
(付記2)
前記第1の制御モジュールは、前記レジスタに前記エラー情報が書き込まれている場合に、前記ミラー転送が正常に完了していないと判定する、
付記1に記載のストレージシステム。
(付記3)
前記第1の制御モジュールは、前記レジスタの内容を読み出すことができない場合には、前記ミラー転送が正常に完了していないと判定する、
付記1又は2に記載のストレージシステム。
(付記4)
前記中継装置は、前記レジスタのアドレスの番地のそれぞれに対して前記各デバイスを対応づけて前記エラー情報を集約し、
前記第1の制御モジュールは、前記レジスタの全ての番地を読み出して前記ミラー転送が正常に完了したかを判定する、
付記1~3のいずれか1項に記載のストレージシステム。
(付記5)
前記中継装置は、前記レジスタのアドレスの番地のそれぞれに対して前記各デバイスを対応づけて前記エラー情報を集約し、
前記第1の制御モジュールは、前記レジスタの全ての番地のうち前記ミラー転送の経路に関わる番地を読み出して前記ミラー転送が正常に完了したかを判定する、
付記1~3のいずれか1項に記載のストレージシステム。
(付記6)
複数の制御モジュールの間でミラー転送を実行するストレージシステムに備えられるコンピュータが、
前記複数の制御モジュールの間の各デバイスにおける異常を検出してエラー情報をレジスタに集約し、
前記ミラー転送が実行された後に、前記レジスタの内容を読み出して前記ミラー転送が正常に完了したかを判定する、
情報処理方法。
(付記7)
前記レジスタに前記エラー情報が書き込まれている場合に、前記ミラー転送が正常に完了していないと判定する、
処理を前記コンピュータが実行する、付記6に記載の情報処理方法。
(付記8)
前記レジスタの内容を読み出すことができない場合には、前記ミラー転送が正常に完了していないと判定する、
処理を前記コンピュータが実行する、付記6又は7に記載の情報処理方法。
(付記9)
前記レジスタのアドレスの番地のそれぞれに対して前記各デバイスを対応づけて前記エラー情報を集約し、
前記レジスタの全ての番地を読み出して前記ミラー転送が正常に完了したかを判定する、
処理を前記コンピュータが実行する、付記6~8のいずれか1項に記載の情報処理方法。
(付記10)
前記レジスタのアドレスの番地のそれぞれに対して前記各デバイスを対応づけて前記エラー情報を集約し、
前記レジスタの全ての番地のうち前記ミラー転送の経路に関わる番地を読み出して前記ミラー転送が正常に完了したかを判定する、
処理を前記コンピュータが実行する、付記6~8のいずれか1項に記載の情報処理方法。
100 :ストレージシステム
1 :CM
11 :CPU
110 :メモリ
12 :SW
13 :DMA
14 :NTB
140 :ポート
15 :監視FPGA
2 :FRT
21 :FRT SW
211 :アップストリームポート
212 :ダウンストリームポート
22 :FRT RC
111 :異常検出部
112 :エラー情報集約部
113 :送達保障判定部

Claims (6)

  1. 複数の制御モジュールと中継装置とを備え、前記複数の制御モジュールの間でミラー転送を実行するストレージシステムであって、
    前記中継装置は、前記複数の制御モジュールの間の各デバイスにおける異常を検出してエラー情報をレジスタに集約し、
    前記複数の制御モジュールのうち前記ミラー転送の実行元である第1の制御モジュールは、前記ミラー転送が実行された後に、前記レジスタの内容を読み出して前記ミラー転送が正常に完了したかを判定する、
    ストレージシステム。
  2. 前記第1の制御モジュールは、前記レジスタに前記エラー情報が書き込まれている場合に、前記ミラー転送が正常に完了していないと判定する、
    請求項1に記載のストレージシステム。
  3. 前記第1の制御モジュールは、前記レジスタの内容を読み出すことができない場合には、前記ミラー転送が正常に完了していないと判定する、
    請求項1又は2に記載のストレージシステム。
  4. 前記中継装置は、前記レジスタのアドレスの番地のそれぞれに対して前記各デバイスを対応づけて前記エラー情報を集約し、
    前記第1の制御モジュールは、前記レジスタの全ての番地を読み出して前記ミラー転送が正常に完了したかを判定する、
    請求項1~3のいずれか1項に記載のストレージシステム。
  5. 前記中継装置は、前記レジスタのアドレスの番地のそれぞれに対して前記各デバイスを対応づけて前記エラー情報を集約し、
    前記第1の制御モジュールは、前記レジスタの全ての番地のうち前記ミラー転送の経路に関わる番地を読み出して前記ミラー転送が正常に完了したかを判定する、
    請求項1~3のいずれか1項に記載のストレージシステム。
  6. 複数の制御モジュールの間でミラー転送を実行するストレージシステムに備えられるコンピュータが、
    前記複数の制御モジュールの間の各デバイスにおける異常を検出してエラー情報をレジスタに集約し、
    前記ミラー転送が実行された後に、前記レジスタの内容を読み出して前記ミラー転送が正常に完了したかを判定する、
    情報処理方法。
JP2021080952A 2021-05-12 2021-05-12 ストレージシステム及び情報処理方法 Pending JP2022174911A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021080952A JP2022174911A (ja) 2021-05-12 2021-05-12 ストレージシステム及び情報処理方法
US17/579,634 US11704208B2 (en) 2021-05-12 2022-01-20 Storage system and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021080952A JP2022174911A (ja) 2021-05-12 2021-05-12 ストレージシステム及び情報処理方法

Publications (1)

Publication Number Publication Date
JP2022174911A true JP2022174911A (ja) 2022-11-25

Family

ID=83999038

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021080952A Pending JP2022174911A (ja) 2021-05-12 2021-05-12 ストレージシステム及び情報処理方法

Country Status (2)

Country Link
US (1) US11704208B2 (ja)
JP (1) JP2022174911A (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011151859A1 (en) 2010-06-01 2011-12-08 Hitachi, Ltd. Data transfer device and method of controlling the same
JP6455302B2 (ja) 2015-04-30 2019-01-23 富士通株式会社 バス通信システム
US9864663B2 (en) * 2016-02-19 2018-01-09 Dell Products L.P. Storage controller failover system
US10228995B2 (en) * 2016-07-28 2019-03-12 Hewlett Packard Enterprise Development Lp Last writers of datasets in storage array errors
JP6773974B2 (ja) 2016-10-06 2020-10-21 富士通株式会社 ストレージ制御装置およびストレージ装置

Also Published As

Publication number Publication date
US11704208B2 (en) 2023-07-18
US20220365856A1 (en) 2022-11-17

Similar Documents

Publication Publication Date Title
US8589723B2 (en) Method and apparatus to provide a high availability solid state drive
JP6307847B2 (ja) 情報処理装置,制御装置及び制御プログラム
JP4391954B2 (ja) ファイル制御システムおよびファイル制御装置
JP7080863B2 (ja) ストレージ装置
JP6455302B2 (ja) バス通信システム
US8621121B1 (en) Detecting bogus IOs in a multipathing driver
US8166273B2 (en) Degeneration method and information processing apparatus
JP5982909B2 (ja) 制御装置、ストレージ装置、ストレージ装置の試験方法及びストレージ装置の試験プログラム
JP6070357B2 (ja) ストレージ装置
JP2017091456A (ja) 制御装置、制御プログラムおよび制御方法
JP5998884B2 (ja) ストレージ装置、およびモジュール間データ転送方法
JP2018060419A (ja) ストレージ制御装置およびストレージ装置
US9535791B2 (en) Storage control device, non-transitory computer-readable recording medium having stored therein program, and control method
JP2022174911A (ja) ストレージシステム及び情報処理方法
JP2016014972A (ja) 通信制御装置,ストレージ装置及び通信制御プログラム
JP5316502B2 (ja) I/oブリッジ装置、応答通知方法、及びプログラム
JP6244970B2 (ja) ストレージシステム、制御装置及び制御プログラム
JP4460596B2 (ja) ディスク管理方法、ディスク管理装置およびストレージシステム
US8589722B2 (en) Methods and structure for storing errors for error recovery in a hardware controller
JP2015064770A (ja) メモリ制御装置、情報処理装置、及び情報処理装置の制御方法
JP5273185B2 (ja) 記録媒体制御システム、記録媒体制御方法、記録媒体制御プログラム
US9760423B2 (en) Storage system and control apparatus
JP7315753B2 (ja) ストレージ装置
JP4234730B2 (ja) Raid閉塞判定方法、raid装置、そのコントローラ・モジュール、プログラム
JP2018045365A (ja) ストレージ制御装置及びストレージ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240208