JP2002215554A - データ記録システム、データ記録方法およびネットワークシステム - Google Patents

データ記録システム、データ記録方法およびネットワークシステム

Info

Publication number
JP2002215554A
JP2002215554A JP2000387497A JP2000387497A JP2002215554A JP 2002215554 A JP2002215554 A JP 2002215554A JP 2000387497 A JP2000387497 A JP 2000387497A JP 2000387497 A JP2000387497 A JP 2000387497A JP 2002215554 A JP2002215554 A JP 2002215554A
Authority
JP
Japan
Prior art keywords
data
node
storage area
write
protocols
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
JP2000387497A
Other languages
English (en)
Other versions
JP4187403B2 (ja
Inventor
Yoshitaka Fujie
義啓 藤江
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2000387497A priority Critical patent/JP4187403B2/ja
Publication of JP2002215554A publication Critical patent/JP2002215554A/ja
Application granted granted Critical
Publication of JP4187403B2 publication Critical patent/JP4187403B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 ノードのロードを分割する場合において、単
一のアドレスで特定できるネットワークストレージシス
テムを提供し、ネットワークストレージシステム全体の
パフォーマンスおよび信頼性を向上する。 【解決手段】 イーサネット(登録商標)5のフロント
エンドに位置するフロントエンドスイッチ6よりプロト
コル毎にデータを振り分け、同一プロトコルに従うデー
タは同一のノード7に振り分けるようにする。ノード7
のNVS9間を高速のバス10で接続し、ピアノードの
NVSとの間で同じ書込みデータを保持する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ネットワーク環境
におけるデータ記録システムおよびデータ記録方法に関
し、特に複数のプロトコルが混在するネットワーク環境
にアタッチされるデータ記録システムのスループットお
よび信頼性を向上する技術に関する。
【0002】
【従来の技術】インターネットあるいはLAN(local
area network)に代表されるコンピュータネットワーク
の一般化およびコンピュータシステムの性能向上を背景
として、より大きな容量のストレージ装置に対するニー
ズが高まっている。たとえばネットワークファイルある
いはウェブキャッシュとして大容量なデータストレージ
システムが利用される。
【0003】ネットワークシステムにアタッチされるス
トレージシステムの一つとして、RAID(redundant
arrays of inexpensive disk)等のディスクアレイが知
られている。ディスクアレイはたとえばSCSI(smal
l computer system interface)で接続されるためディ
スクアレイとネットワークとを接続するノードが用いら
れる。
【0004】また、一般にネットワークに接続される複
数のコンピュータシステムでは異なるネットワークOS
(operating system)やLANアプリケーションが用い
られる。このため、ネットワークに接続されるノード
は、ネットワークOSやLANアプリケーションごとに
相違するプロトコルに対応するようにしている。たとえ
ば、Windows NT/98(Windows及び
Windows NTはマイクロソフトコーポレーショ
ンの米国及びその他の国における商標)クライアントか
らノードにファイルアクセスを行う場合にはたとえばC
IFS(common internet file system)が用いられ、
UNIX(The Open Groupがライセンス
している米国及びその他の国における登録商標)クライ
アントからのファイルアクセスではたとえばNFS(ne
twork file system)が用いられる。また、ウェブ環境
におけるウェブキャッシュとして使用する場合にはHT
TP(hyper text transfer protocol)が用いられる。
これら複数のプロトコルに対応できるノードとして前記
したノードが構成される。
【0005】
【発明が解決しようとする課題】ところが、ネットワー
ク上でのファイルアクセス要求が増加し、また、ディス
クアレイの総記録容量が増加するに従い、ノードへのト
ラフィックロードが増加する。単一のノードでは、CP
Uの速度、内部メモリの容量、バスバンド幅などの制限
により処理スピードに限界がある。このためノードを複
数設けてノードあたりの負荷を軽減する方策が採られ
る。
【0006】ノードを複数設ける方策の一つに、ディス
クアレイをクラスタ化し、各ノード間でこのクラスタ化
されたディスクアレイを共有する方法がある。しかしな
がらこの場合、ノード毎にアドレスを持つことになる。
つまりネットワークに接続されるストレージシステムと
して複数のアドレスを持つことになり、クライアントは
各々アクセスポイントの管理を行う必要が生じる。この
ようなアクセスポイント管理(アドレス管理)はクライ
アントユーザにとって極めて不便であることは明らかで
ある。
【0007】ノードを複数設ける他の方策に、各ノード
間を高速バスで相互接続し、それぞれのノードをネット
ワークに接続する方法がある。しかしながらこの場合、
前記した複数アドレス(アクセスポイント)管理の問題
に加えて、キャッシュのヒット率低下の問題が生じる。
つまり、ノードには階層化されたメモリシステムを有
し、書込みあるいは読出しデータが一旦キャッシュに記
録される。既にキャッシュされているデータと相違する
プロトコルに従うデータが受け入れられた場合、アクセ
スパターンの相違等によりキャッシュのヒット率が低下
する。この結果、ストレージシステム全体のパフォーマ
ンスを低下させる原因となる。さらに、本方策の場合、
高速バスでのデータ転送自体がボトルネックになる可能
性もある。
【0008】本発明の目的は、ノードのロードを分割す
る場合においても、単一のアドレスで特定できるネット
ワークストレージシステムを提供することにある。
【0009】また、本発明の目的は、ノードのキャッシ
ュヒット率を向上し、ネットワークストレージシステム
全体のパフォーマンスを向上することにある。
【0010】また、本発明の目的は、ネットワークスト
レージシステム全体の信頼性を向上することにある。
【0011】
【課題を解決するための手段】本願の発明の概略を説明
すれば、以下の通りである。すなわち、本発明のデータ
記録システムでは、ネットワークのフロントエンドに位
置するイーサネットスイッチによりプロトコル毎にデー
タを振り分け、同一プロトコルに従うデータは同一のサ
ービスノードに振り分けるようにする。このようにサー
ビスノードを特定プロトコルの処理に特化することによ
り、ノード内でのキャッシュのヒット率を高め、スルー
プットとスケイラビリティを同時に実現する。また、ネ
ットワークストレージは単一のフロントエンドスイッチ
でネットワークに接続されるため、クライアントは単一
のアドレスを管理するだけで本ネットワークストレージ
システムを利用することができ、ユーザのアドレス管理
(ポート管理)を不要にして、ユーザの利便性を向上で
きる。
【0012】また、本データ記録システムでは、ノード
間を高速バスで接続したクラスタ構造を実現する。そし
てピアノードの不揮発性ストレージ間で同じ書込みデー
タを保持(ミラーリング)することにより、障害発生時
のノードのリスタートを信頼性良く行う。これにより、
システムの信頼性を向上できる。
【0013】なお、本発明を具体的に列記すれば以下の
通りである。本発明のデータ記録システムは、異なる複
数のプロトコルに従うデータを受け取り、プロトコル毎
にデータの伝送先を切り換えるフロントエンドスイッチ
と、フロントエンドスイッチに接続され、複数のプロト
コルのうち少なくとも一種類のプロトコルに適合する複
数のノードと、ノードを介してデータの読み書きを行う
データストレージ装置とを有する。このとき、前記デー
タのヘッダにはプロトコルの各々に対応付けられたポー
トIDを含み、ポートIDによりデータの伝送先を切り
換えることができる。また、複数のノードの各々に不揮
発性ストレージ領域を含み、不揮発性ストレージ領域が
他のノードの不揮発性ストレージ領域と接続され、不揮
発性ストレージ領域には、ノードへの書込みデータと他
のノードへの書込みデータとが記録することができる。
【0014】また、本発明のデータ記録方法は、特定の
プロトコルに関連付けられた識別情報を含むデータを受
け取るステップと、識別情報を参照して、データが送付
されるノードを切り換えるステップと、ノードを介して
データをデータストレージ装置に記録するステップと、
を含む。このとき、識別情報は、プロトコル毎に関連付
けられているポートIDとすることができる。また、デ
ータが書込みデータであるかを判断するステップと、判
断が真の場合にはノードの不揮発性ストレージ領域、お
よび、不揮発性ストレージ領域に接続された他のノード
の不揮発性ストレージ領域にデータを書き込むステップ
と、データストレージ装置への書込みデータの書込み処
理が終了した時には、不揮発性ストレージ領域、およ
び、他のノードの不揮発性ストレージ領域に記録された
書込みデータのデータ領域を開放するステップと、をさ
らに含むことができる。また、書込みデータの処理中に
エラーが検出された時には、エラーが検出されたノード
以外の不揮発性ストレージ領域に記録された書込みデー
タを、その不揮発性ストレージ領域を含むノードを経由
してデータストレージ装置に記録することができる。
【0015】なお、前記データ記録システムを構成要素
とするネットワークシステムとして本発明を把握するこ
とができるのは勿論である。
【0016】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて詳細に説明する。ただし、本発明は多くの異
なる態様で実施することが可能であり、本実施の形態の
記載内容に限定して解釈すべきではない。なお、実施の
形態の全体を通して同じ要素には同じ番号を付するもの
とする。
【0017】図1は、本発明の一実施の形態であるデー
タストレージシステムとデータストレージシステムが接
続されたネットワークシステムの一例を示した全体構成
図である。本実施の形態のネットワークシステムは、コ
ンピュータシステム1〜3とデータストレージシステム
4とがイーサネット5でネットワーク接続された構成を
有する。
【0018】コンピュータシステム1〜3は、中央演算
処理装置(CPU)、主記憶装置(メインメモリ:RA
M(Random Access Memory))、不揮発性記憶装置(RO
M(Read Only Memory))等がバスで相互に接続された一
般的なコンピュータシステムである。前記バスにはコプ
ロセッサ、画像アクセラレータ、キャッシュメモリ、デ
ータ入出力のためのインタフェイス等が接続され、イン
タフェイスにはハードディスクドライブ等の外部記憶装
置、キーボード、マウス等の入出力装置、液晶表示装
置、CRT(cathode ray tube)等の表示装置、通信制
御装置等が接続される。通信制御装置は、たとえば以下
に説明するイーサネット規格に適合し、データを高速に
通信することができる。その他一般的なコンピュータシ
ステムに備えられるハードウェア資源を備えることがで
きることは勿論である。なお、本実施の形態のコンピュ
ータシステム1〜3は、適当な通信回線あるいは前記イ
ーサネット5を介してインターネットあるいはイントラ
ネットに接続することが可能である。通信回線には、無
線、有線、専用線、公衆回線等あらゆる通信手段が含ま
れる。
【0019】また、本実施の形態のコンピュータシステ
ム1〜3は各々異なるOSで動作し、各々のOSでサポ
ートする通信プロトコルが相違する。たとえばコンピュ
ータシステム1ではOSとしてWindows NT/
98で動作し、データストレージシステム4に対してク
ライアントとして機能する際にはCIFSプロトコルが
適用される。また、コンピュータシステム2ではOSと
してUNIXが動作し、データストレージシステム4に
対して共有データアクセスを行う際にはNFSプロトコ
ルが適用される。また、コンピュータシステム3の適当
なOS上でウェブ(WWW)に対するHTTPリクエス
トが生じた時には、データストレージシステム4に対し
てネットワークからリクエストがルーティングされる。
この時通信プロトコルにはHTTPが適用される。すな
わち、コンピュータシステム1〜3では異なる通信プロ
トコルをサポートし、イーサネット5上では複数の通信
プロトコルが混在する。
【0020】イーサネット5は、IEEE802.3で
規定された伝送規格であり、OSI(open system inte
rconnection)参照モデルでは物理層(第1層)および
データリンク層(第2層)に相当する。なお、本実施の
形態ではイーサネットを例示するが、トークンリング
(IEEE802.5)、FDDI(fiber distribute
d data interface)、TPDDI(twisted pair distr
ibuted data interface)、ローカルトーク(RS−4
22)等OSI参照モデルで物理層およびデータリンク
層に相当する他の伝送規格を用いることも可能である。
【0021】データストレージシステム4には、フロン
トエンドスイッチ6、複数のノード7、RAID装置8
が含まれる。
【0022】フロントエンドスイッチ6は、イーサネッ
ト5およびノード7に接続され、イーサネット5から伝
送されたデータをプロトコル毎に割当てられたノード7
に振り分ける機能を持つ。フロントエンドスイッチの詳
細については後述する。
【0023】ノード7は、フロントエンドスイッチ6に
よって割り振られたデータを受け取り、RAID装置8
にデータをインタフェイスする。ノード7は、複数プロ
トコルに適応可能なようにプロトコル毎の処理手段を有
する。但し、ネットワークで使用される全てのプロトコ
ルをサポートする必要はなく、単一のプロトコルを処理
するものであっても良い。ノード7にはたとえばバッテ
リでバックアップされた不揮発性のメモリ領域であるN
VS(Non Volatile Storage)9を有し、各ノード7の
NVS9は高速バス10で相互に接続される。高速バス
にはSCI(Scalable Coherent Interface)を例示で
きる。なお、図1では3つのノード7を例示するがそれ
以上のノードが設けられても良い。ノード7の詳細につ
いては後に説明する。
【0024】RAID装置8は、たとえばハードディス
クアレイ11で構成された記録装置であり、ノード7と
ファイバーチャネル12でリング状に接続される。RA
ID装置8にはハードディスクアレイ11を制御するR
AIDコントローラ13が含まれる。なお、図1では複
数のRAID装置8を例示するが、RAID装置8は1
台でも構わない。
【0025】図2は、フロントエンドスイッチの詳細を
示したブロック図である。本実施の形態のフロントエン
ドスイッチには、ポート1〜nを持つイーサネットイン
タフェイス14、MAC(media access control)イン
タフェイス15、入力キュー16、出力キュー17、フ
ァブリックインタフェイス18、スイッチファブリック
19を有し、ポートルックアップテーブル20、フレー
ム転送エンジン21、データバッファ22を備える。
【0026】ポート1〜nは、図1におけるイーサネッ
ト5およびノード7に接続するポートである。イーサネ
ットインタフェイス14はノード内部とイーサネット5
とのインタフェイスを行い、MACインタフェイス15
ではたとえばIPアドレスとメディア固有のMACアド
レスとの対応付けを行う。入力キュー16および出力キ
ュー17では、各々データの入力および出力の待ち行列
を制御し、ファブリックインタフェイス18では入出力
キュー16,17とスイッチファブリック19とのイン
タフェイスを行う。スイッチファブリック19は、デー
タのルーティングを行う伝送先切り換え手段であり、フ
レーム転送エンジン21によって制御される。
【0027】ポートルックアップテーブル20は、特定
のプロトコルに関連付けられているポートIDと、プロ
トコル毎に割当てられる特定の物理ポートとを対応付け
たテーブルである。図3は、ポートルックアップテーブ
ルの一例を示した表図である。本実施の形態のネットワ
ークストレージシステムの場合、同じデスティネーショ
ンアドレスであっても、第4層(トランスポート層)で
のアプリケーション(プロトコル)が相違する場合に
は、異なる物理ポートにルーティングする。たとえば
「1.222.333.44」のデスティネーションア
ドレスでNFSのポートIDが指定されて受け入れられ
たデータは物理ポート「0」にルーティングされる。同
様にCIFSのポートIDから受け入れられたデータは
物理ポート「1」にルーティングされる。HTTPにつ
いても同様である。なお、ポートルックアップテーブル
20には他のデスティネーションアドレスが含まれても
良いことは勿論である。
【0028】フレーム転送エンジン21は、フレーム単
位で受け入れたデータのポートIDを識別し、ポートル
ックアップテーブル20を参照して転送先を決定する手
段である。スイッチファブリック19と協働してデータ
のルーティングを行う。データバッファ22にはデータ
がバッファされる。
【0029】図4は、ノードの詳細を示したブロック図
である。本実施の形態のノード7は、CPU23、メモ
リバスコントローラ24、CPUメモリ・データバッフ
ァ25、ファームウェア・フラッシュROM26、GP
IO(General Purpose Input Output)27、ネッ
トワークコントローラ28、ギガビットイーサネットイ
ンタフェイス29、ストレージデバイスコントローラ3
0、ファイバチャネルインタフェイス31、フロントエ
ンドスイッチコントローラ32、NVSコントローラ3
3、およびNVS9を含む。
【0030】CPU23はノードを制御する計算やメモ
リ間のデータ転送等を制御する中央演算処理装置であ
る。単一のプロセッサあるいは複数プロセッサからな
る。メモリバスコントローラ24は、各種メモリ間のデ
ータ転送をCPUを介さずに直接行う制御装置である。
高速なデータ転送が実現できる。CPUメモリ・データ
バッファ25はたとえばDRAM(Dynamic Random Acc
ess Memory)で構成され、CPU23に入力されるプロ
グラムあるいはデータが記録されるほか、データのバッ
ファリングにも利用される。ファームウェア・フラッシ
ュROM26には、ノードを制御するプログラムが記録
される。CPU23からファームウェア・フラッシュR
OM26に対して直接プログラムを読み出す他、一旦C
PUメモリ・データバッファ25にプログラムが転送さ
れ、CPUからはCPUメモリ・データバッファ25上
のプログラムを読み出すこともできる。GPIO27
は、各種構成スイッチの読み取り、および状態表示用L
EDのインタフェイス機能を持つ。
【0031】ネットワークコントローラ28、ストレー
ジデバイスコントローラ30、フロントエンドスイッチ
コントローラ32は、各々ネットワーク(イーサネット
5)、RAID装置8、フロントエンドスイッチ6を制
御する。ギガビットイーサネットインタフェイス29
は、ネットワークコントローラ28とイーサネット5と
をインタフェイスし、ファイバチャネルインタフェイス
31はストレージデバイスコントローラ30とRAID
装置8をインタフェイスする。NVSコントローラ33
は、NVS9を制御し、ピアノードのNVSコントロー
ラに接続される。
【0032】次に、前記したネットワークストレージシ
ステムを用いてデータを記録する方法について説明す
る。図5は、フロントエンドスイッチ6での処理の一例
を示したフローチャートである。
【0033】コンピュータシステム1〜3から発せられ
たデータ(フレーム)がイーサネット5を介してフロン
トエンドスイッチ6に伝送され、フロントエンドスイッ
チ6がこのフレームを受取ることにより処理が開始する
(ステップ40)。フレームは図2に示すフロントエン
ドスイッチのポートから受信され、受信されたフレーム
はイーサネットインタフェイス14を介してMACイン
タフェイス15に送られる。
【0034】MACインタフェイス15では、受取った
データのヘッダに含まれるIPアドレスから機器固有の
MACアドレスに従ってフレームを入力キュー16に転
送する(ステップ41)。なお、MACアドレスとIP
アドレスとの対応は、ARPテーブルとしてネットワー
ク内のルータ等に記録されており、フロントエンドスイ
ッチ内のデータバッファにも同じテーブルを保持してい
る。また、ネットワーク内のIPアドレスにはローカル
アドレスを用いることができる。
【0035】次に、フレーム転送エンジン21がフレー
ムヘッダからポート番号を抽出する(ステップ42)。
ポート番号は、アプリケーションに関連付けて通常同じ
プロトコルでは同じポートを開いてデータの送受信を行
うために付される。たとえばHTTPではポート番号は
80、netbios−nsではポート番号137のポ
ートが開かれる。
【0036】次に、ヘッダから抽出されたポート番号と
ポートルックアップテーブル20を参照して、フレーム
の転送先物理ポートをサーチする(ステップ43)。そ
して、フレーム転送テーブル(図示せず)に転送先の物
理ポートを指定し(ステップ44)、フレームを出力キ
ュー17に転送する(ステップ45)。
【0037】その後、フレームは出力キュー17の処理
に従って物理ポートからノードに転送されることになる
(ステップ46)。
【0038】前記した通り、フロントエンドスイッチ6
の物理ポートには何れかのノード7が接続されているの
で、特定のノードには特定のプロトコルに従うデータが
転送されることになる。このように特定のノードには、
特定のプロトコルに従うデータ(フレーム)が転送され
るので、後に説明するノードでの処理において、キャッ
シュヒット率が向上する。すなわち、通常プロトコルに
よってディレクトリ構造やアクセスパターンが相違する
が、本実施の形態のシステムによればノードにおいては
結果的に常に同一プロトコルのファイルアクセス処理を
行うことになる。常に同一のアクセスパターンあるいは
ディレクトリ構造のデータ処理をノードにおいて行うこ
ととなり、必然的にキャッシュヒット率が向上すること
になる。これによりノードでの処理のスループットを向
上し、システム全体のパフォーマンスを向上することが
できる。
【0039】また、本実施の形態のフロントエンドスイ
ッチ6は単一のIPアドレスで指定される。つまりユー
ザは自己の使用するプロトコルを意識することなく、単
一のフロントエンドスイッチ6のアドレスを指定してフ
ァイルシステムを利用できる。これにより、ユーザに煩
雑なアドレス管理を強いることなく、スケーラビリティ
と高いスループットが実現されたファイルシステムを実
現できる。
【0040】次に、ノードでの処理をフローチャートを
用いて説明する。図6は、ノードにおけるデータ記録処
理の一例を示したフローチャートである。
【0041】前記したフロントエンドスイッチ6での処
理の後、ノード7にデータ(フレーム)が転送されてく
る(ステップ47)。その後、フレームを受取ったノー
ド7は、まずIP層(ネットワーク層)の処理を行い
(ステップ48)、続いてTCPあるいはUDP層(ト
ランスポート層)での処理を行う(ステップ49)。I
P層での処理は、主に、径路制御、ネットワークコネク
ションの確立、多重化とフロー制御、データパケットの
分割・統合等を行う。TCPあるいはUDP層では、主
に、上位層であるセッション層(OSI参照モデルにお
ける第5層以上)に透過的なデータを提供し、多重化制
御、フロー制御、再送制御(TCPの場合)等を行う。
【0042】次に、上位プロトコルの識別を行い(ステ
ップ50)、プロトコルに従った処理を行う(ステップ
51〜53)。たとえばCIFSの場合にはCIFSに
応じた処理を行い(ステップ51)、HTTPの場合は
HTTPに応じた処理を行う(ステップ52)。IP層
の処理の場合はそれに応じた処理を行う(ステップ5
3)。なお、本実施の形態では、複数のプロトコルに対
応可能なノードを例示しているが、たとえばCIFSに
のみ対応するノードであっても良い。この場合、ステッ
プ50をパスしてステップ51を実行する。
【0043】次に、ファイルシステムの処理を行う(ス
テップ54)。ファイルシステム処理では、RAID装
置8へのデータ転送のための各種の計算等を行う。
【0044】次に、現在処理しているデータが書込みデ
ータであるかを判断する(ステップ55)。書込みデー
タである場合(ステップ55の判断がYesの時)には
NVS9へのデータ転送を行う(ステップ56)。その
後データバッファ25等のキャッシュにデータを転送し
(ステップ57)、さらにキャッシュからストレージデ
バイスコントローラ30を介してファイバチャネルにデ
ータを転送する(ステップ58)。なお、書込みデータ
である際の処理は後に詳しく説明する。
【0045】一方、ファイルシステム処理が読込みデー
タを必要とする場合(ステップ55の判断がNoの
時)、キャッシュ内部の有効データを検索し(ステップ
59)、キャッシュヒットか否かの判断を行う(ステッ
プ60)。キャッシュヒットの場合はこのデータをネッ
トワークコントローラを経由してネットワークにデータ
転送を行う(ステップ62)。キャッシュミスの場合は
ファイバチャネルからストレージデバイスコントローラ
を経由してデータバッファ内のキャッシュにデータを転
送し(ステップ61)、キャッシュからネットワークコ
ントローラを経由してネットワークにデータ転送を行う
(ステップ62)。
【0046】以上ノードにおける処理はフラッシュRO
M26に記録されたファームウェアに従ってCPU23
の制御のもとに行われる。上記処理において、あるノー
ド7に受け入れられるデータのプロトコルは前記した通
りフロントエンドスイッチ6によって同じプロトコルに
振り分けられている。このため、ファイルシステム層で
の処理において、キャッシュされたデータの利用率つま
りキャッシュヒット率が高くなる。このため複数ノード
を用いてファイルシステムの処理負担を軽減しつつ、各
ファイルシステムでの処理効率(スループット)を向上
できる。
【0047】図7は、ノードにおいて書込み処理が行わ
れる時の処理の一例を示したフローチャートである。ま
ず、ネットワークコントローラ28からデータバッファ
25にデータが転送される(ステップ63)。次にネッ
トワークコントローラ28からNVS9にデータが転送
される(ステップ64)とともに、ピアノードのNVS
にデータが転送される(ステップ65)。つまり、書込
み操作時に、書込み操作を行っているノードのNVSと
ピアノードのNVSとに同一データが書込まれ、ある書
込み操作における書込みデータは常にコピーを持つこと
になる。
【0048】図8は、書込み動作時のノード間でのNV
Sデータをコピーする操作について説明した図である。
ノードAのNVSコントローラ33−1によってノード
Aが処理する書込みデータをノードAのNVS9−1に
書き込むとともに、ノードAのNVSコントローラ33
−1からノードBのNVSコントローラ33−2に同じ
書込みデータが転送され、ノードBのNVSコントロー
ラ33−2を介してノードBのNVS9−2にノードA
が処理する書込みデータを書き込む。つまり、ノードA
とノードBとはピアノードを構成し、ノードAの書込み
データは、ノードAのNVS9−1に書込まれるととも
に、ノードBのNVS9−2にもコピーが保持される。
同様に、ノードBの書込みデータはノードCのNVSに
コピーが保持され、順次サイクリックにピアノード間で
書込みデータのコピーが保持され、最後はノードnの書
込みデータがノードAのNVS9−1に保持される。
【0049】このように、書込みデータを自己のノード
NVSだけでなく、ピアノードのNVSにもコピーを保
持することにより、後に説明するようにノードに障害を
生じた時の復帰がしやすくなる。すなわち、安定したノ
ードのリスタートを実現でき、システム全体の信頼性を
向上することができる。
【0050】上記のようにNVSへのデータ転送を行っ
た後、ノードはファイルシステム層での書込み処理を完
了する(ステップ66)。
【0051】次に、データバッファ25からストレージ
デバイスコントローラ30にデータが転送され、ファイ
バチャネルインタフェイス31を介してストレージ(R
AID装置8)にデータが送出される(ステップ6
7)。ストレージからのライトコンプリートの信号を受
信すればストレージでの書込み処理の完了を確認する
(ステップ68)。
【0052】書込み処理の完了後、自己ノードのNVS
およびピアノードのNVSに記録されたデータの記憶領
域を開放(あるいはデータを消去)する(ステップ6
9)。以上のようにして書込み処理が完了する。
【0053】次に、ノードで障害が発生した時の処理に
ついて説明する。図9はノードエラーを生じた時の処理
の一例を示したフローチャートである。
【0054】エラー時の復帰処理は、ノードでのエラー
検出で開始する(ステップ70)。エラーが検出された
時、ピアノードがあるかを判断する(ステップ71)。
【0055】ピアノードがある場合には、ピアノードの
NVSにコミットされていないデータがあるかをチェッ
クする(ステップ72)。コミットされていないデータ
がある場合、このデータをピアノードを経由してストレ
ージにステージング(書き込み)処理を行う(ステップ
73)。なお、ステージング処理については前記の通り
である。ストレージからの書込み完了信号の受信により
書込み処理が完了し(ステップ74)、書込み処理の完
了後、障害の発生したノードのリスタート処理を行う
(ステップ75)。その後通常の処理に復帰する(ステ
ップ76)。
【0056】一方、ピアノードがない場合、ノードのリ
スタート処理および通常の処理を停止し(ステップ7
7)、NVS上にコミットされていないデータがあるか
をチェックする(ステップ78)。その後、コミットさ
れていないデータについて、NVSからそのノードのス
トレージデバイスコントローラ30にデータを転送し
(ステップ79)、ストレージでの書込み処理の完了を
確認する(ステップ80)。そして通常動作に復帰する
(ステップ76)。
【0057】すなわち、ピアノードがある場合には障害
が発生したノードとそのピアノードについてのみ特別の
リスタート処理を行い、ピアノードがない場合には全て
のノードについてリスタート処理を行う。前記の通り、
本実施の形態のストレージシステムでは原則的に何れの
ノードにおいてもピアノードに書込みデータのコピーデ
ータを保持するため、何れのノードに障害を生じた場合
でもそのノードとピアノードの処理を一時停止するのみ
であり、他のノードには障害の影響を及ぼさない。この
結果、ノードに障害を生じてもシステム全体を停止する
ことなく、冗長性が高くつまり信頼性の高いシステムを
構築できる。
【0058】なお、NVS上にコミットされていないデ
ータが発見されない場合には、障害の発生以前に全ての
ステージング処理は正常に完了しており、ノードをリス
タートする等の処理のみを行う。
【0059】以上、本発明者によってなされた発明を発
明の実施の形態に基づき具体的に説明したが、本発明は
前記実施の形態に限定されるものではなく、その要旨を
逸脱しない範囲で種々変更可能であることは言うまでも
ない。
【0060】たとえば、前記実施の形態では、ファイル
システム(RAID装置8)へのインタフェイスとして
ファイバーチャネルを例示したが、FDDI、ATM
(asynchronous transfer mode)であっても良い。
【0061】また、前記実施の形態では、アプリケーシ
ョンによるプロトコルの相違をポート番号で識別したが
これに限られず、その他ヘッダに含まれる識別情報を用
いることも可能である。
【0062】
【発明の効果】本願で開示される発明のうち、代表的な
ものによって得られる効果は、以下の通りである。すな
わち、ノードのロードを分割する場合においても、単一
のアドレスで特定できるネットワークストレージシステ
ムを提供できる。また、ノードのキャッシュヒット率を
向上し、ネットワークストレージシステム全体のパフォ
ーマンスを向上できる。ネットワークストレージシステ
ム全体の信頼性を向上することができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態であるデータストレージ
システムとデータストレージシステムが接続されたネッ
トワークシステムの一例を示した全体構成図である。
【図2】フロントエンドスイッチの詳細を示したブロッ
ク図である。
【図3】ポートルックアップテーブルの一例を示した表
図である。
【図4】ノードの詳細を示したブロック図である。
【図5】フロントエンドスイッチでの処理の一例を示し
たフローチャートである。
【図6】ノードにおけるデータ記録処理の一例を示した
フローチャートである。
【図7】ノードにおいて書込み処理が行われる時の処理
の一例を示したフローチャートである。
【図8】書込み動作時のノード間でのNVSデータをコ
ピーする操作について説明した図である。
【図9】ノードエラーを生じた時の処理の一例を示した
フローチャートである。
【符号の説明】
1〜3…コンピュータシステム、4…データストレージ
システム、5…イーサネット、6…フロントエンドスイ
ッチ、7…ノード、8…RAID装置、9(9−1〜9
−n)…NVS、10…バス、11…ハードディスクア
レイ、12…ファイバーチャネル、13…RAIDコン
トローラ、14…イーサネットインタフェイス、15…
MACインタフェイス、16…入力キュー、17…出力
キュー、18…ファブリックインタフェイス、19…ス
イッチファブリック、20…ポートルックアップテーブ
ル、21…フレーム転送エンジン、22…データバッフ
ァ、23…CPU、24…メモリバスコントローラ、2
5…CPUメモリ・データバッファ、26…ファームウ
ェア・フラッシュROM、27…GPIO、28…ネッ
トワークコントローラ、29…ギガビットイーサネット
インタフェイス、30…ストレージデバイスコントロー
ラ、31…ファイバチャネルインタフェイス、32…フ
ロントエンドスイッチコントローラ、33(33−1〜
33−n)…NVSコントローラ。
フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04L 29/04 H04L 13/00 303B Fターム(参考) 5B014 EA02 EB04 FB04 GA13 GA38 GA39 GA43 GE04 HB06 5B065 BA01 CA19 CA30 CC01 CH01 CH13 ZA01 ZA08 5B082 FA02 5B089 GA21 GA32 HA06 KA04 KA06 KB04 KB06 KF06 KG05 LB25 5K034 AA01 AA20 JJ24

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 異なる複数のプロトコルに従うデータを
    受け取り、前記プロトコル毎に前記データの伝送先を切
    り換えるフロントエンドスイッチと、 前記フロントエンドスイッチに接続され、前記複数のプ
    ロトコルのうち少なくとも一種類のプロトコルに適合す
    る複数のノードと、 前記ノードを介して前記データの読み書きを行うデータ
    ストレージ装置と、 を有するデータ記録システム。
  2. 【請求項2】 前記データのヘッダには前記プロトコル
    の各々に対応付けられたポートIDを含み、前記ポート
    IDにより前記データの伝送先を切り換える請求項1記
    載のデータ記録システム。
  3. 【請求項3】 前記複数のノードの各々に不揮発性スト
    レージ領域を含み、前記不揮発性ストレージ領域が他の
    ノードの不揮発性ストレージ領域と接続され、 前記不揮発性ストレージ領域には、前記ノードへの書込
    みデータと前記他のノードへの書込みデータとが記録さ
    れる請求項1または2記載のデータ記録システム。
  4. 【請求項4】 各々異なるプロトコルに従ってデータを
    送受信する複数のコンピュータシステムと、 前記データを受け取り、前記プロトコル毎に前記データ
    の伝送先を切り換えるフロントエンドスイッチと、がネ
    ットワークに接続され、 前記プロトコルのうち少なくとも一種類のプロトコルに
    適合する前記フロントエンドスイッチに接続されたノー
    ドと、 前記ノードを介して前記データの読み書きを行うデータ
    ストレージ装置と、 を有するネットワークシステム。
  5. 【請求項5】 前記データのヘッダには前記プロトコル
    の各々に対応付けられたポートIDを含み、前記ポート
    IDにより前記データの伝送先を切り換える請求項4記
    載のネットワークシステム。
  6. 【請求項6】 前記複数のノードの各々に不揮発性スト
    レージ領域を含み、前記不揮発性ストレージ領域が他の
    ノードの不揮発性ストレージ領域と接続され、 前記不揮発性ストレージ領域には、前記ノードへの書込
    みデータと前記他のノードへの書込みデータとが記録さ
    れる請求項4または5記載のネットワークシステム。
  7. 【請求項7】 特定のプロトコルに関連付けられた識別
    情報を含むデータを受け取るステップと、 前記識別情報を参照して、前記データが送付されるノー
    ドを切り換えるステップと、 前記ノードを介して前記データをデータストレージ装置
    に記録するステップと、 を含むデータ記録方法。
  8. 【請求項8】 前記識別情報は、前記プロトコル毎に関
    連付けられているポートIDである請求項7記載のデー
    タ記録方法。
  9. 【請求項9】 前記データが書込みデータであるかを判
    断するステップと、 前記判断が真の場合には前記ノードの不揮発性ストレー
    ジ領域、および、前記不揮発性ストレージ領域に接続さ
    れた他のノードの不揮発性ストレージ領域に前記データ
    を書き込むステップと、 前記データストレージ装置への前記書込みデータの書込
    み処理が終了した時には、前記不揮発性ストレージ領
    域、および、前記他のノードの不揮発性ストレージ領域
    に記録された前記書込みデータのデータ領域を開放する
    ステップと、 をさらに含む請求項7または8記載のデータ記録方法。
  10. 【請求項10】 前記書込みデータの処理中にエラーが
    検出された時には、 前記エラーが検出されたノード以外の不揮発性ストレー
    ジ領域に記録された前記書込みデータを、その不揮発性
    ストレージ領域を含むノードを経由して前記データスト
    レージ装置に記録する請求項9記載のデータ記録方法。
  11. 【請求項11】 前記エラーが検出されたノードと同等
    な他のノードがあるかを判断するステップと、 前記判断が真の場合には、 前記同等な他のノードに含まれる不揮発性ストレージ領
    域に未処理のデータがあるかを検査するステップと、 前記未処理のデータを前記同等な他のノードを経由して
    前記データストレージ装置に記録するステップと、 前記エラーが検出されたノードのリスタート処理を行う
    ステップと、 を含む請求項10記載のデータ記録方法。
  12. 【請求項12】 前記エラーが検出されたノードと同等
    な他のノードがあるかを判断するステップと、 前記判断が偽の場合には、 前記エラーが検出されたノード以外の他のノードのリス
    タート処理および通常処理を停止するステップと、 前記他のノードに含まれる不揮発性ストレージ領域に未
    処理のデータがあるかを検査するステップと、 前記未処理のデータを前記他のノードを経由して前記デ
    ータストレージ装置に記録するステップと、 を含む請求項10記載のデータ記録方法。
JP2000387497A 2000-12-20 2000-12-20 データ記録システム、データ記録方法およびネットワークシステム Expired - Fee Related JP4187403B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000387497A JP4187403B2 (ja) 2000-12-20 2000-12-20 データ記録システム、データ記録方法およびネットワークシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000387497A JP4187403B2 (ja) 2000-12-20 2000-12-20 データ記録システム、データ記録方法およびネットワークシステム

Publications (2)

Publication Number Publication Date
JP2002215554A true JP2002215554A (ja) 2002-08-02
JP4187403B2 JP4187403B2 (ja) 2008-11-26

Family

ID=18854419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000387497A Expired - Fee Related JP4187403B2 (ja) 2000-12-20 2000-12-20 データ記録システム、データ記録方法およびネットワークシステム

Country Status (1)

Country Link
JP (1) JP4187403B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006507591A (ja) * 2002-11-26 2006-03-02 インターナショナル・ビジネス・マシーンズ・コーポレーション 単一システムにおけるマルチプル・ネイティブ・ネットワーク・プロトコル実施の効率的なサポート
JP2008282345A (ja) * 2007-05-14 2008-11-20 Fuji Xerox Co Ltd ストレージシステム及びストレージ装置
JP4750040B2 (ja) * 2003-11-26 2011-08-17 シマンテック・オペレーティング・コーポレーション ストレージボリュームに対するクロスプラットフォームアクセスを可能にするオペレーティングシステムメタデータをエミュレートするためのシステム及び方法
JP2012523024A (ja) * 2009-09-01 2012-09-27 株式会社日立製作所 マルチコアプロセッサを有する要求処理システム
US9015124B2 (en) 2012-03-28 2015-04-21 Fujitsu Limited Replication system and method of rebuilding replication configuration

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000043888A1 (en) * 1999-01-25 2000-07-27 International Business Machines Corporation Full cache coherency across multiple raid controllers
JP2000242434A (ja) * 1998-12-22 2000-09-08 Hitachi Ltd 記憶装置システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000242434A (ja) * 1998-12-22 2000-09-08 Hitachi Ltd 記憶装置システム
WO2000043888A1 (en) * 1999-01-25 2000-07-27 International Business Machines Corporation Full cache coherency across multiple raid controllers

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
宮嵜 清志: "システム提案者のためのネットワーク攻略法", 日経システムプロバイダ NO.90, vol. 第90号, CSND200000823005, 26 November 1999 (1999-11-26), JP, pages 12 - 18, ISSN: 0000719970 *
宮嵜 清志: "システム提案者のためのネットワーク攻略法", 日経システムプロバイダ NO.90, vol. 第90号, JPN6008044013, 26 November 1999 (1999-11-26), JP, pages 12 - 18, ISSN: 0001122561 *
宮嵜 清志: "システム提案者のためのネットワーク攻略法", 日経システムプロバイダ NO.90, vol. 第90号, JPNX006048556, 26 November 1999 (1999-11-26), JP, pages 12 - 18, ISSN: 0000783249 *
松岡 功: "いま、普及のときを迎えたストレージ・エリア・ネットワーク", SUNWORLD, vol. 第9巻 第5号, CSND200000529001, 1 May 1999 (1999-05-01), JP, pages 36 - 41, ISSN: 0000719969 *
松岡 功: "いま、普及のときを迎えたストレージ・エリア・ネットワーク", SUNWORLD, vol. 第9巻 第5号, JPN6008044012, 1 May 1999 (1999-05-01), JP, pages 36 - 41, ISSN: 0001122560 *
松岡 功: "いま、普及のときを迎えたストレージ・エリア・ネットワーク", SUNWORLD, vol. 第9巻 第5号, JPNX006048555, 1 May 1999 (1999-05-01), JP, pages 36 - 41, ISSN: 0000783248 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006507591A (ja) * 2002-11-26 2006-03-02 インターナショナル・ビジネス・マシーンズ・コーポレーション 単一システムにおけるマルチプル・ネイティブ・ネットワーク・プロトコル実施の効率的なサポート
US7797392B2 (en) 2002-11-26 2010-09-14 International Business Machines Corporation System and method for efficiently supporting multiple native network protocol implementations in a single system
JP4750040B2 (ja) * 2003-11-26 2011-08-17 シマンテック・オペレーティング・コーポレーション ストレージボリュームに対するクロスプラットフォームアクセスを可能にするオペレーティングシステムメタデータをエミュレートするためのシステム及び方法
JP2008282345A (ja) * 2007-05-14 2008-11-20 Fuji Xerox Co Ltd ストレージシステム及びストレージ装置
JP2012523024A (ja) * 2009-09-01 2012-09-27 株式会社日立製作所 マルチコアプロセッサを有する要求処理システム
US9015124B2 (en) 2012-03-28 2015-04-21 Fujitsu Limited Replication system and method of rebuilding replication configuration

Also Published As

Publication number Publication date
JP4187403B2 (ja) 2008-11-26

Similar Documents

Publication Publication Date Title
US9357030B2 (en) Clustered cache appliance system and methodology
US6389432B1 (en) Intelligent virtual volume access
US7640364B2 (en) Port aggregation for network connections that are offloaded to network interface devices
US20170237668A1 (en) Tcp/udp acceleration
US8438321B2 (en) Method and system for supporting hardware acceleration for iSCSI read and write operations and iSCSI chimney
JP3996457B2 (ja) マルチノードコンピュータシステムにおけるルーティング方法および分散型マルチノードコンピュータシステム
US7089293B2 (en) Switching system method for discovering and accessing SCSI devices in response to query
US7222150B1 (en) Network server card and method for handling requests received via a network interface
US6985956B2 (en) Switching system
US8560631B2 (en) Storage system
US20030105931A1 (en) Architecture for transparent mirroring
US20040078419A1 (en) Switching system
US20040210584A1 (en) Method and apparatus for increasing file server performance by offloading data path processing
US20030131068A1 (en) Distributed storage system, storage device and method of copying data
JPH08255122A (ja) クラスタ化コンピューティング・システムのディスク・アクセス・パスにおける障害から回復する方法および関連する装置
WO2007101375A1 (fr) Système virtuel de mémoire réseau, dispositif de mémoire réseau et procédé virtuel
US10320905B2 (en) Highly available network filer super cluster
NO331320B1 (no) Balansering av nettverksbelastning ved bruk av informasjon om vertsmaskin-status
US7870258B2 (en) Seamless fail-over support for virtual interface architecture (VIA) or the like
CN1985492B (zh) 支持iSCSI读操作和iSCSI烟囱的方法和系统
JP2005055970A (ja) ストレージ装置
US20050273649A1 (en) Apparatus for high-speed streaming data transmission using PMEM controller and method thereof
WO2002037225A2 (en) Switching system
US20050281261A1 (en) Method and system for supporting write operations for iSCSI and iSCSI chimney
JP4187403B2 (ja) データ記録システム、データ記録方法およびネットワークシステム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050202

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050428

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060307

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060606

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060907

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061107

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20061117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070307

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070410

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: 20080902

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080909

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110919

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees