JP2005507118A - ネットワーク記憶制御装置のためのモジュラーアーキテクチャ - Google Patents

ネットワーク記憶制御装置のためのモジュラーアーキテクチャ Download PDF

Info

Publication number
JP2005507118A
JP2005507118A JP2003538914A JP2003538914A JP2005507118A JP 2005507118 A JP2005507118 A JP 2005507118A JP 2003538914 A JP2003538914 A JP 2003538914A JP 2003538914 A JP2003538914 A JP 2003538914A JP 2005507118 A JP2005507118 A JP 2005507118A
Authority
JP
Japan
Prior art keywords
data
channel
bus
interface
port
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
JP2003538914A
Other languages
English (en)
Other versions
JP2005507118A5 (ja
Inventor
ピコーン,ヴイクター,キー
Original Assignee
チヤパラル ネツトワーク ストレージ,インコーポレーテツド
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 チヤパラル ネツトワーク ストレージ,インコーポレーテツド filed Critical チヤパラル ネツトワーク ストレージ,インコーポレーテツド
Publication of JP2005507118A publication Critical patent/JP2005507118A/ja
Publication of JP2005507118A5 publication Critical patent/JP2005507118A5/ja
Pending legal-status Critical Current

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
    • 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
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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
    • G06F13/40Bus structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Hardware Redundancy (AREA)

Abstract

ホストコンピュータと、安価なディスクを用いた冗長アレイ(RAID:Redundant Array of Inexpensive Disks)等の記憶装置との間でデータを転送するためのネットワーク記憶制御装置が開示される。ネットワーク記憶制御装置は、受動バックプレーンに接続されホストコンピュータ及び記憶装置と受動バックプレーンとの間でデータを選択的に転送する少なくとも1つのチャネルインタフェースモジュールを有する。ネットワーク記憶制御装置は、受動バックプレーン(116)を介してチャネルインタフェースモジュール(136,140)と通信しホストコンピュータまたは記憶装置から受け取ったデータを処理し一時的に記憶する少なくとも1つの制御装置メモリモジュール(104,108)をも有する。冗長性が必要とされるアプリケーションにおいて、少なくとも2つの制御装置メモリモジュールと少なくとも2つのチャネルインタフェースモジュールが使用される。制御装置メモリモジュールは、受動バックプレーンとチャネルインタフェースモジュール上の共有通信経路を用いて相互間でデータをミラー化しても良く、それにより、データをミラー化するためのホストチャネルまたはディスクチャネルの使用を実質的に回避する。

Description

【技術分野】
【0001】
本発明はネットワーク記憶制御装置、特に、入出力インタフェースに依存しないデータ処理機能を有する冗長モジュラー構成要素を利用するネットワーク記憶制御装置に関する。
【背景技術】
【0002】
ネットワーク記憶制御装置は、典型的には、ホストコンピュータシステムをディスクドライブやテープドライブ等の周辺記憶装置と接続するために使用される。ネットワーク記憶制御装置は、ホストコンピュータと周辺記憶装置との間のインタフェースの役割を果たす。多くのアプリケーションにおいて、ネットワーク記憶制御装置は、ホストコンピュータと周辺装置との間で転送されるデータに関わる処理機能を実行する。このようなシステムの一般的なアプリケーションの1つが、独立したディスクを用いた冗長アレイ(RAID:Redundant Array of Independant Disks)である。RAIDシステムは、ディスクドライブの故障からデータを保護するため、複数のディスクドライブにデータを記憶する。1つのディスクが故障した場合、通常RAIDシステムはアレイ内の残りのドライブから、故障したドライブに記憶されていたデータを復元することができる。RAIDシステムは、多くの場合、ホストコンピュータとディスクドライブアレイとの間のインタフェースである、RAID制御装置を含むネットワーク記憶制御装置を使用する。
【0003】
多くのアプリケーションは、非常に高い可用性を備える記憶システムを必要とする。ユーザはRAIDシステムに記憶されたデータに大きく依存するため、金融機関や航空予約システム等の多くのアプリケーションにおいて、この高い可用性は重要である。これらの種類のアプリケーションでは、RAIDシステムに記憶されるデータの非可用性が、結果として収益及び/または顧客満足度の大幅な低下を生む可能性がある。このようなアプリケーションでRAIDシステムを採用することは、1つのディスクドライブが故障してもなおデータが記憶されシステムから回復できるため、記憶データの可用性を向上させる。RAIDシステムの使用に加えて、記憶システムの可用性を更に向上させるために、冗長RAID制御装置を使用することが一般的である。こうした状況では、2つ以上の制御装置がRAIDシステムで使用され、各制御装置は、制御装置の1つが故障した場合、他の残りの制御装置が、故障した制御装置の作業を引き受けるというフェイルオーバー機能を有する。このようなプラットフォームはRAIDシステムの可用性を高めるが、下記に述べるようないくつかの不利点を引き起こす可能性がある。
【0004】
図1は、RAIDネットワーク制御装置10を構成する一般的な最新のデュアル制御装置のブロック図であり、ファイバチャネル・ツー・ファイバチャネル接続を示す。すなわち、この例では、ホストコンピュータとディスクドライブアレイの両方が、ファイバチャネル接続を用いてネットワーク記憶ブリッジと通信する。ファイバチャネルはこのようなシステムにおいて一般的なチャネル媒体であるが、例えば、小型コンピュータシステムインタフェース(SCSI:Small Computer System Interface)やイーサネット(登録商標)等の他のチャネルも用いられても良いことは理解されるべきである。図1に示されるRAIDシステムは、ホストポート−1 14及びホストポート−2 18の2つのホストポートと、ディスクポート−1 22及びディスクポート−2 26の2つのディスクポートとを含む。RAIDシステムにおいて一般的で、当該技術において良く知られているように、各ホストポート14、18は異なるホストコンピュータと対応付けられ、各ディスクポート22、26は異なるディスクアレイに対応付けられていても良い。ネットワーク記憶ブリッジ10は、制御装置−A 30と制御装置−B 34のデュアルRAID制御装置を含む。制御装置の区分(zoning)を採用するシステムにおいて、制御装置−A 30をホストポート−1 14及びディスクポート−1 22に区分し、制御装置−B 34をホストポート−2 18及びディスクポート−2 26に区分することができる。
【0005】
当該技術において理解されるように、書き戻しキャッシュ方式の(write back cache)デュアル制御装置を採用するシステムは、キャッシュの一貫性(cache coherency)を維持するため制御装置間のデータのミラー化を必要とする。各制御装置30、34は、制御装置間の冗長性を維持し、それによって1つの制御装置が故障した場合にRAIDシステムの動作を維持するため、他の制御装置のデータ及び状態のコピーを備えていなければならない。制御装置間のデータのミラー化は、後に詳述するように、制御装置間でのデータの転送が制御装置の処理リソースだけでなくチャネル帯域幅をも使用するため、RAIDシステムのパフォーマンスを低下させる可能性がある。
【0006】
制御装置30、34は、入出力モジュール−1 42と入出力モジュール−2 46の2つの入出力モジュールに接続されるファイバチャネルバックプレーン38に接続される。各制御装置30、34は、CPUサブシステム50、メモリ54(例えば、2倍のデータ転送速度)、制御論理58、2つのホストポート62a、62bのデュアル(dual)ポートファイバチャネル接続、及び2つのディスクポート66a、66bのデュアルポートファイバチャネル接続を含む。CPUサブシステム50は、データの分散化と、読み取り及び書き込みコマンドの開始及び実行とを含む、ディスクアレイへのデータの記憶に必要なタスクを実行する。メモリ54は、データ及びその他の情報のための不揮発性記憶領域である。制御論理58は、CPUサブシステム50と、メモリ54と、ホストポート62a、62b及びディスクポート66a、66bとの仲介等のいくつかの機能を実行する。制御論理58は、排他的論理和(XOR:Exclusive OR)エンジン等のパリティ生成機能を含むその他の機能をも有していても良い。ホストポート62a、62b及びディスクポート66a、66bは、ファイバチャネルバックプレーン38との通信を提供する。入出力モジュール42、46は、ポートバイパス回路(port bypass circuit)としても良く知られている、各ホストポート14、18及び各ディスクポート22、26を各制御装置30、34に接続するために機能するリンク復元回路(LRC:Link Resiliency Circuit)70を含む。これによって、両制御装置30、34は、両ホストポート14、18及び両ディスクポート22、26にアクセス可能となる。
【0007】
完全な冗長性を提供するため、各制御装置は各ホストポート14、18及び各ディスクポート22、26との接続を有していなければならない。このようにして、制御装置のうち1つが故障した場合、他の制御装置が動作を継続することができる。上記のように、各ホストポート14、18は異なるホストコンピュータと対応付けられ、各ディスクポート22、26は異なるディスクアレイと対応付けられるのが一般的である。これらの場合において、各制御装置30、34は典型的には1つのディスクポート及び1つのホストポートと対応付けられ、RAIDシステムのパフォーマンスを高めるのに役立つ。しかしながら、こうした場合、これらのポートの半分が受動的(passive)である。例えば、制御装置−A 30がホストポート−1 14及びディスクポート−1 22と対応付けられる場合、制御装置−A 30はホストポート−1 14からのすべての通信を受信し、ディスクポート−1 22上のディスクアレイを制御する。同様に、制御装置−B 34は、ホストポート−2 18及びディスクポート−2 26と対応付けられるであろう。これらの技法は当該技術において良く知られており、RAIDシステムのパフォーマンスを高めるだけでなく、2つの制御装置30、34の制御及び通信を簡易化することもできる。図1の例において、制御装置−A 30上で、ホストポート接続62aとディスクポート接続66aは、入出力モジュール−1 42のLRC70を通じてホストポート−1 14及びディスクポート−1 22にそれぞれ接続される。制御装置−A 30はホストポート−1 14及びディスクポート−1 22と対応付けられるため、ホストポート接続62a及びディスクポート接続66aはホストポート−1 14及びディスクポート−1 22と能動的に通信する。残りのホストポート接続62b及びディスクポート接続66bは、入出力モジュール−2 46のLRC70を通じてホストポート−1 18及びディスクポート−2 26にそれぞれ接続される。制御装置−B 34が故障しない限り、制御装置−A 30はホストポート−2 18及びディスクポート−2 26と能動的に通信しないため、これらの接続は典型的には受動接続である。同様に、制御装置−B 34はホストポート−2 18及びディスクポート−2 26と対応付けられるであろう。よって、制御装置−B 34の場合、ホストポート接続62b及びディスクポート接続66bは、入出力モジュール−2 46のLRC70を通じてホストポート−2 18及びディスクポート−2 26と通信するであろう。残りのホストポート接続62a及びディスクポート接続66aは、入出力モジュール−1 42のLRC70を通じてホストポート−1 14及びディスクポート−1 22に接続されるであろう。
【0008】
上記のように、書き戻しキャッシュ方式の典型的な冗長制御装置の動作において、データが制御装置間でミラー化される。制御装置−A 30と制御装置−B 34間でデータをミラー化する時、ディスクポート接続越しにミラー化されたデータを転送するのが一般的である。例えば、制御装置−B 34は、ディスクポート−2越しにドライブアレイに書き込まれるデータを、ホストポート−2 18越しに受信することができる。制御装置−B 34は、このデータを受信し、メモリ54に格納する。キャッシュの一貫性を維持するため、制御装置−B 34はこのデータを制御装置−A 30にも伝達しなければならず、従って、両方の制御装置がそのデータを有し、一方の制御装置が故障しても、他方の制御装置がなおデータを書き込むことができる。従来のシステムにおいて、このデータの転送がいくつかのステップを経て達成される。まず、制御装置−B 34がディスクポート−1 22に接続されたLRC70につながるディスクポート接続66a越しにデータを送信する。データはディスクポート−1 22上の対応するハードウェアに転送され、LRC70に送り返され、そこで制御装置−A上のディスクポート接続66aで受信される。次に、制御装置−Aはデータをメモリ54に格納し、最初に制御装置−B 34に送られたデータのコピーを提供する。次に、制御装置−B 34は、データをディスクアレイに書き込む適切なステップを実行する。いったんデータがディスクアレイに書き込まれれば、制御装置−B 34が上記と同じ通信経路を用いて、これを制御装置−A 30に伝達し、制御装置−A 30がデータ書き込みの記録を除去する。同様に、制御装置−A 30がディスクポート−1 22上のディスクアレイに書き込まれるデータを受信する場合、制御装置−A 30は同じミラー化技法を用いて制御装置−B 34にデータを送信する。
【発明の開示】
【発明が解決しようとする課題】
【0009】
この技法は各制御装置上の残りのディスクポートを使用することができるが、各制御装置上の第二のホストポートは、システムの通常動作時には未使用のままであり、従って受動的である。各制御装置上の受動ポートは、制御装置に相当量のハードウェアを追加し、ネットワーク記憶制御装置10の大幅なコスト増を招く可能性がある。したがって、制御装置に設けられる受動ポートに関連するコストとハードウェアを低減しつつ、高可用性を維持する冗長ネットワーク記憶制御装置を提供することが有利であろう。
【0010】
加えて、こうしたシステムにおいてデータをミラー化すると、結果的に、ミラー化されたデータを受信する制御装置においてはミラー化されたデータと記憶データが同じポート越しに送信されることになる。ディスクアレイにアクセスする帯域幅は、ミラー化されたデータによって消費され、ネットワーク記憶ブリッジのパフォーマンスを低減させる可能性がある。加えて、データをミラー化する時、データを送信する制御装置はディスクポート越しに転送される形式にデータを置換え、データを受信する制御装置はディスクポート越しに受信されるデータを処理しなければならないため、制御装置30、34内の処理リソースが消費される。例えば、図1に示されるファイバチャネルの実施の形態において、ミラー化されたデータがファイバチャネルプロトコルに従ってフォーマット化され、いくつかの割込みと処理リソースを必要とする可能性がある。したがって、制御装置間でデータをミラー化する時にチャネル帯域幅を全くかほとんど消費しないネットワーク記憶制御装置を備えることが有利であろう。また、データをミラー化するための処理リソースの消費がより少ないネットワーク記憶制御装置を備えることが有利であろう。
【0011】
更に、継続的に高まりつつあるデータ記憶の需要とともに、RAID制御装置は追加のディスクドライブを伴うアップグレードや、より高速なバスインタフェースを必要とする。しかしながら、RAID制御装置は追加のバスインタフェース能力を追加する、あるいは新しい種類のバスインタフェースをサポートするように構成されていないかもしれない。こうした制御装置は一般的に、アップグレードが実行される時に取り替えられなければならない。この制御装置の交換によって、RAIDシステムをアップグレードするコストが増す可能性がある。動作可能なRAID制御装置の交換は、RAIDシステムをアップグレードする決定を阻むかもしれない価値の減損を表す。したがって、簡易かつ低コストに、能力のアップグレードをサポートするだけでなく新しい種類のインタフェースをもサポートすることが可能なシステムを備えることが有利であろう。
【0012】
したがって、(1)受動的な構成要素のためのコストを軽減しつつ冗長性を提供し、(2)ディスクポートまたはホストポート上で送信されるミラー化されたデータの量を低減し、(3)データのミラー化に関連する処理のオーバーヘッドを減らし、(4)容易に交換可能かつアップグレード可能な構成要素を提供する、ネットワーク記憶制御装置内で使用される装置及び方法を開発する必要がある。
【課題を解決するための手段】
【0013】
本発明によると、ホストコンピュータの少なくとも1つの記憶装置との接続に関わる装置及び方法が提供される。前記装置は、第1のデータバス及び第2のデータバスを含む複数のデータバスを有する受動バックプレーンを備える。前記装置は、受動バックプレーン、ホストコンピュータ、及び記憶装置に接続される、少なくとも2つのチャネルインタフェースモジュールを有する。チャネルインタフェースモジュールは、ホストコンピュータ及び記憶装置と記憶データの送受信を行い、データバスに記憶データを選択的に転送するように動作可能である。前記装置は、受動バックプレーンに接続され、受動バックプレーンを介してチャネルインタフェースモジュールと通信し、チャネルインタフェースモジュールとの間で転送される記憶データを記憶し処理する、少なくとも2つの制御装置メモリモジュールをも有する。
【0014】
チャネルインタフェースモジュールは、通信経路部とチャネルインタフェース部とを有する。チャネルインタフェース部は、ホストコンピュータ及び/または記憶装置と通信経路部との間で記憶データを転送するように動作可能である。通信経路部は、チャネルインタフェース部と受動バックプレーンとの間でデータを選択的に転送するように動作可能である。ある実施の形態において、第1のチャネルインタフェースモジュールが第1のバスポートと第2のバスポートを有し、第2のチャネルインタフェースモジュールが第3のバスポートと第4のバスポートを有し、バスポートの各々は通信経路部を受動バックプレーンに接続するように動作可能である。
【0015】
制御装置メモリモジュールは、受動バックプレーンに接続するバスインタフェース部と、記憶データの一時記憶のためのメモリと、記憶データを編成し配列する処理部とを有する。バスインタフェース部は、受動バックプレーンに接続する少なくとも1つのバックプレーンインタフェースと、メモリに接続するメモリインタフェースと、処理部に接続する処理部と、処理インタフェース、メモリインタフェース、及びバックプレーンインタフェースを接続するように動作可能な制御論理を含むブリッジコアとを有する。バスインタフェース部は、データブロックに排他的論理和(XOR:Exclusive OR)機能を実行するXORエンジンを含んでも良い。ある実施の形態において、バスインターフェース部は、受動バックプレーンへのダイレクトメモリアクセス(DMA:Direct Memory Access)接続を提供するDMAエンジンをも有する。別の実施の形態において、第1の制御装置メモリモジュールが第1のバスインタフェースと第2のバスインタフェースを有し、第2の制御装置メモリモジュールが第3のバスインタフェースと第4のバスインタフェースを有し、各バスインタフェースがバスインタフェース部を受動バックプレーンに接続するように動作可能である。
【0016】
受動バックプレーンは、少なくとも第1及び第2のデータバスを含み、ある実施の形態において、第3及び第4のデータバスをも含む。受動バックプレーン上のデータバスは、次世代の周辺構成要素相互接続(PCIX:Peripheral Component Interconnect)バスであっても良い。ある実施の形態において、第1のバスポートは第1のデータバスに接続され、第2のバスポートは第3のデータバスに接続される。第3のバスポートは第2のデータバスに接続され、第4のバスポートは第4のデータバスに接続される。第1のバスインタフェースは第1のデータバスに接続され、第2のバスインタフェースは第2のデータバスに接続される。第3のバスインタフェースは第3のデータバスに接続され、第4のバスインタフェースは第4のデータバスに接続される。
【0017】
第1のチャネルインタフェースモジュールの通信経路部は、第1の共有経路、第1の交換経路、及び第2の交換経路を有しても良く、第2のチャネルインタフェースモジュールの通信経路部は、第2の共有経路、第3の交換経路、及び第4の交換経路を有しても良い。この実施の形態において、第1の共有経路は、第1のバスポート及び第2のバスポートに接続される。第1の交換経路は、第1のバスポートとチャネルインタフェース部に接続される。第2の交換経路は、第2のバスポートとチャネルインタフェース部に接続される。第2の共有経路は、第3のバスポートと第4のバスポートに接続される。第3の交換経路は、第3のバスポートとチャネルインタフェース部に接続される。第4の交換経路は、第4のバスポートとチャネルインタフェース部に接続される。各交換経路は、チャネルインタフェース部に関わる通信を有効及び無効にするように動作可能である。
【0018】
更に別の実施の形態において、ホストコンピュータを少なくとも1つの記憶装置に接続するネットワーク記憶装置は、少なくとも第1及び第2のチャネルインタフェースモジュールを備え、その各々がホストチャネル及びディスクチャネルに接続されるように適合され、ホストチャネル及びディスクチャネル越しにデータを送受信するよう動作可能である。ホストチャネルはホストコンピュータに接続され、ディスクチャネルは記憶装置に接続される。前記装置は、チャネルインタフェースモジュールと通信し、記憶装置に記憶するための記憶データを提供するためにホストコンピュータからのデータを処理し、ホストコンピュータに送信するための取出データを提供するために記憶装置からのデータを処理する、少なくとも第1及び第2の制御装置メモリモジュールを有する。また、前記装置は、制御装置メモリモジュールとチャネルインタフェースモジュールのそれぞれに接続され、チャネルインタフェースモジュールと制御装置メモリモジュールとの間の通信をサポートする受動バックプレーンを有する。受動バックプレーンは、データがホスト及び/またはディスクチャネルによって運ばれるとき、それと同時にデータが第1の制御装置メモリモジュールと第2の制御装置メモリモジュールとの間でミラー化され、ホストチャネルもディスクチャネルもミラー化されるデータの50%を超えて運ばないように、通信をサポートする。
【0019】
ホストコンピュータと1つ以上の記憶装置との間でデータを転送する方法は、第1のチャネル媒体を用いてホストコンピュータからチャネルインタフェースモジュールへのデータの第一の転送ステップを含む。次に、データは受動バックプレーンを用いて、チャネルインタフェースモジュールから第1の制御装置メモリモジュールへ転送する第2のステップで転送される。制御装置メモリモジュールは、記憶データを定義するためデータを処理する。記憶データは、受動バックプレーンを介してチャネルインタフェースモジュールへ、第3の転送ステップで転送される。記憶データは、第4の転送ステップで第2のチャネル媒体を介して記憶装置に転送される。記憶データは、第1のチャネル媒体及び第2のチャネル媒体と実質上独立して、第1の制御装置メモリモジュールと第2の制御装置メモリモジュールとの間でミラー化される。
【0020】
ある実施の形態において、第2の転送ステップは、制御装置メモリモジュールにデータを転送するため受動バックプレーンの第1のバスを採用するステップを含む。第3の転送ステップは、チャネルインタフェースモジュールに記憶データを転送するため受動バックプレーンの第2のバスを採用するステップを含む。ある実施の形態において、ミラー化するステップは、第1のチャネル媒体も第2のチャネル媒体も使用しない。別の実施の形態において、ミラー化するステップが、記憶データの少なくとも50%未満を運ぶように第1のチャネル媒体及び第2のチャネル媒体を制限するステップを含む。
【発明を実施するための最良の形態】
【0021】
《実施の形態1》
図2を参照して、本発明のネットワークブリッジ100のブロック図を示す。ネットワークブリッジ100は、1つ以上の制御装置メモリモジュール(CMM:Controller Memory Module)を含む。図2に示される実施の形態において、CMM−A 104とCMM−B 108の2つのCMMがあるが、冗長性が必要とされないアプリケーションでは単一のCMMが使用されても良く、追加のCMMは追加の冗長性またはより高いパフォーマンスを要求するアプリケーションにおいて使用されても良い。各CMM104、108は、2つのバックプレーンインタフェース112を有する。システムは、各CMMにつき2つのバスを有する受動バスバックプレーン116を備える。示される実施の形態において、受動バスバックプレーン116は、次世代の周辺構成要素相互接続(PCIX:Peripheral Component Interconnect)バスを使用するが、インフィニバンド(Infiniband)やラピッドIO(RapidIO)等の交換アーキテクチャだけでなく、PCIローカルバス等の従来のバスアーキテクチャをも含むいかなるバス技術が用いられても良いことは理解されるべきである。受動バスバックプレーン116は第1のデータバス120、第2のデータバス124、第3のデータバス128、第4のデータバス132を有することができる。第1のデータバス120及び第2のデータバス124は、CMMバス接続134を介してCMM−A 104上のバックプレーンインタフェース112に接続し、第3のデータバス128及び第4のデータバス132は、CMMバス接続134を介してCMM−B 108上のバックプレーンインタフェース112に接続する。
【0022】
図2に示される実施の形態において、PCIXバスは受動バスバックプレーン116において使用される。PCIXバスの使用は、良く理解され比較的単純なバスプロトコルを有する受動バスバックプレーン116に接続される比較的高パフォーマンスのバス相互接続構成要素を可能にする。PCIX技術は、従来のPCIバスを活用する次世代の技術である。PCIX技術によって、システム及び装置は、64ビットまたは32ビットのバス幅を用い、64ビット、133MHZ PCIXバスで最大1066Mb/sの帯域幅を有し、最大133MHZの周波数で作動することが可能になる。PCIXバスは、高周波数の従来のPCIバスに関わるタイミング制約を緩和するレジスタ・ツー・レジスタプロトコルを採用し、PCIXバスの高周波数動作を可能にする。バス周波数を高める能力に加えて、PCIXバスは、属性相、分割トランザクションサポート、最適化待ち状態、及び標準ブロック長移動(block size movement)を含む、バスの効率性を高めるいくつかの技術を組み込む。
【0023】
属性相は、従来のPCI仕様書が与えるよりも詳細にバストランザクション(bus transaction)を記載する36ビットの属性領域を使用する。属性相はアドレス相の直後に続き、トランザクションのサイズ、トランザクションの順序付け、キャッシュスヌーピング(cache snooping)要件、トランザクションイニシエータ(transaction initiator)の識別についての情報を含むいくつかのビット割当を有する。PCIXにおいてサポートされる分割トランザクションでデータを要求する装置がターゲットに信号を送る。ターゲット装置は、要求を受け付けたことを要求元に伝える。ターゲット装置が新たなトランザクションを開始し、要求元にデータを送信するまで、要求元は自由に他の情報を処理できる。よって、分割トランザクションは、バスのより効率的な利用を可能にする。待ち状態は、最初のターゲット待ち時間を除き、従来のPCIバスプロトコルでは使用される待ち状態を使用することを排除するPCIXにおいて、最適化される。PCIX装置が転送するデータを持たない時、他の装置がバス帯域幅を使用できるように、バスから自身を切り離す。これによって、バスとメモリリソースがより効率的に使用される。標準ブロック長移動では、アダプタ及びブリッジ(ホスト・ツー・PCIX及びPCIX・ツー・PCIX)は、生来整列した128バイト境界でしかトランザクションを切り離すことが許可されない。これは、より長いバーストを可能とし、プロセッサバスやメインメモリ等のキャッシュラインベースのリソースの効率的な使用を可能とする。また、PCIX装置内のアーキテクチャをよりパイプライン化することを容易にする。
【0024】
ネットワークブリッジ100は、1つ以上のチャネルインタフェースモジュール(CIM:Channel Interface Module)を有する。図2に示される実施の形態において、CIM−1 136とCIM−2 140の、2つのCIMがあるが、この数はネットワークブリッジ100が使用される構成及びアプリケーションに応じて変化しても良いことは理解されるであろう。各CIM136、140は、2つのCIMバスインタフェースポート144a、144bを有する。各CIM136、140上では、1つのCIMバスインタフェースポート144aがCIMバス接続146を介してCMM−A 104に接続される1つのバスと接続し、1つのCIMバスインタフェースポート144bがCIMバス接続146を介してCMM−B 108に接続される1つのバスと接続する。図2に示される実施の形態において、CIM−1 136が第1のデータバス120及び第3のデータバス128に接続し、CIM−2 140が第2のデータバス124及び第4のデータバス132に接続する。各CIM136、140は、ホストコンピュータ(図示せず)に接続されるホストチャネル152に接続するホストポート148を有する。また、各CIM136、140は、1つ以上の記憶装置(図示せず)に接続されるディスクチャネル158に接続するディスクポート156をも有する。下記に詳述する別の実施の形態において、要求されるアプリケーション及びチャネルインタフェースに応じて、ホストポートのみ、或いはディスクポートのみを含んでも良い。
【0025】
ホストコンピュータがデータを送信する時、データはホストチャネル152上で送られ、CIM136、140上のホストポート148で受信される。このデータは、受動バックプレーン116を介してCMM104、108に送られる。CMM104、108はメモリと、下記に詳述されるように、記憶装置に記憶するため適切なフォームにデータを配列する処理ユニットとを含む。例えば、システムがRAID5ディスクアレイシステムで使用される場合、CMM104、108は、ディスクに書き込まれるのに適切なデータのストライプ(stripe)にデータを配列し、データのストライプのためのパリティブロックを計算する。よって、CMM104、108は、データを処理し、記憶のためにそれをフォーマット化する。一旦これが完了すれば、CMM104、108は記憶準備ができた状態で、受動バックプレーン116を介してCIM136、140にデータを転送する。次に、CIM136、140は、ディスクポート156に接続された記憶装置にデータを送信する。下記に詳述するように、データは、CIM136、140及び受動バックプレーン116を用いてCMM104、108間を転送されることができる。加えて、後述されるように、CMM104、108及びCIM136、140は、特定のドライブまたはホストに区分されても良い。
【0026】
この構成は、ホストチャネル152及びディスクチャネル158が必ずしも同じチャネル媒体であるとは限らないモジュラー及び冗長アーキテクチャを提供する。CMM104、108及びCIM136、140のモジュール性は、比較的低コストのアップグレードと故障ユニットの簡単な交換をも可能にする。下記で詳述するように、CMM104、108間のデータのやり取りに受動バックプレーン116を使用することによって、従来の冗長制御装置環境におけるデータのミラー化で要求される、ディスクチャネル158またはホストチャネル152のチャネル帯域幅の使用をも回避することができる。
【0027】
図3を参照して、CMM104のブロック図を示す。CMM104は、CPUサブシステム160、メモリ164、及びインタフェースFPGA168を含むいくつかの構成要素を含む。CPUサブシステム160は、広範に使用されるマイクロプロセッサ等の標準型CPUであっても良いし、あるいはアプリケーション特有のプロセッサであっても良い。ある実施の形態において、CPUサブシステム160は、Intel Pentium(登録商標)クラスのマイクロプロセッサである。CPUサブシステム160は、PCIバス等の標準バスを用いて、インタフェースFPGA168と通信する。メモリ164は、CMM104内でのデータの一時記憶を可能にする。この記憶は、ディスクアレイに書き込まれるのを待っている待ち行列に入れられたデータの記憶等のいくつかの目的で、通常の読み取り及び書き込み動作の間、使用される。ある実施の形態において、DDRメモリDIMMが使用され、バスインタフェースを用いてインタフェースFPGA168と通信する。
【0028】
インタフェースFPGA168は、多数の構成要素を含む。これらの構成要素は単一のFPGAに結合されても良く、あるいはCMM104内に複数の構成要素として存在しても良いことは理解されるべきである。図3に示される実施の形態において、インタフェースFPGA168は、PCIインタフェース172、メモリインタフェース176、XORエンジン180、ブリッジコア184、DMAエンジン188、データFIFO192、及び2つのバックプレーンインタフェース112を含む。PCIインタフェース172は、CPUサブシステム160とインタフェースFPGA168の他の部分との間のインタフェースとしての役割を果たす。図示される実施の形態において、このインタフェースは、標準PCIバス接続を用いる。PCIインタフェース172はブリッジコア184に接続し、順次、受動バックプレーン116上に配置された第1のデータバス120及び第2のデータバス124とインタフェースを取るバックプレーンインタフェース112に接続する。
【0029】
メモリインタフェース176は、メモリ164とインタフェースFPGA168間のインタフェースとしての役割を果たす。XORエンジン180は、これから書き込まれるデータに関するパリティ情報を得るため、記憶されるデータに関するXOR動作を実行する役目をする。XORエンジン180は、ディスクアレイ内の故障ドライブからデータを復元するためにパリティ情報の使用が必要とされる状況においても使用される。XORエンジン180は、PCIインタフェース172を通じてCPUサブシステム160に接続する。データFIFO192はメモリインタフェース176及びブリッジコア184に接続し、順次バックプレーンインタフェース112に接続する。データFIFOは、読み取り及び書き込み動作を処理するためにCMM104によって使用される待ち行列として働く。下記に詳述されるように、DMAエンジン188は、CMMが冗長性を提供するように動作している時、別のCMMからDMAデータを提供及び受信する役目を果たす。
【0030】
図4を参照して、CIM136のブロック図を示す。CIM136は、交換/共有PCIX FPGA200とチャネルインタフェース204とを含む。交換/共有PCIX FPGA200は、第1の交換PCIX経路208、第2の交換PCIX経路212、及び共有PCIX経路216を含む。各交換PCIX経路208、212は、バスインタフェースポート144に接続し、順次CIMバス接続146を介して受動バックプレーン116上でPCIXバスに接続する。また、各交換PCIX経路208、212はイネーブル入力214も有する。イネーブル入力214は、交換PCIX経路208、212を有効または無効にするために用いられる。共有PCIX経路216は、どのデータが共有経路216越しに経路付けされるかを決定し、そのデータを共有経路216を通じてその他のCIMバス接続146にまで通過させるブリッジコア220を含む。同様に、各交換PCIX経路208、212は、どのデータが交換経路208、212越しに経路付けされるかを決定し、そのデータをチャネルインタフェース204にまで通過させるブリッジコア224をも含む。
【0031】
チャネルインタフェース204は、交換/共有PCIX FPGA200をホストチャネル152及びディスクチャネル158に接続する。チャネルインタフェースは、制御レジスタ228、アドレス操舵部232、PCIXインタフェース236、ホストポート148、及びディスクポート156とを含む。制御レジスタ228は、ホストチャネル152またはディスクチャネル158上の通信を制御するため使用される。アドレス操舵部232は、ホストコンピュータまたは記憶装置のいずれかでデータを適切なアドレスに方向付けるために用いられる。PCIXインタフェース236は、交換/共有PCIX FPGA200からデータを受け取り、ホストポート148及びディスクポート156にデータを伝達する機能を果たす。PCIXインタフェース236は、アプリケーションにとって最適なチャネル媒体上で通信することを可能にする。例えば、ホストチャネル152及びディスクチャネル158がファイバチャネルを使用する場合、PCIXインタフェース236は交換/共有PCIX FPGA200とファイバチャネルとの間のインタフェースの役割を果たすであろう。同様に、ホストチャネル152及びディスクチャネル158がSCSIチャネルを使用する場合、PCIXインタフェース236は交換/共有PCIX FPGA200とSCSIチャネルとの間のインタフェースの役割を果たすであろう。ホストチャネル152及びディスクチャネル158の両方が同じチャネル媒体を使用する場合、CIM136はホストチャネル152及びディスクチャネル158の両方との通信のために同一のホストポート148及びディスクポート156を使用することができる。
【0032】
ある実施の形態において、ディスクチャネル158及びホストチャネル152は、同じチャネル媒体を使用しない。この実施の形態において、異なるチャネル媒体毎に異なるCIMが使用される。例えば、ホストコンピュータがファイバチャネルを使用し、ディスクアレイがSCSIチャネルを使用する場合、ホストコンピュータはファイバチャネルインタフェースを用いて一方のCIMに接続し、ディスクアレイはSCSIチャネルインタフェースを用いて他方のCIMに接続するであろう。冗長性が必要とされる場合は、2つ以上のCIMが各チャネル媒体に接続されることがある。
【0033】
図4に示される実施の形態において、バスインタフェースポート144及びCIMバス接続146を通じて、第1の交換PCIX経路208が第1のデータパス120と通信し、第2の交換PCIX経路212が第3のデータパス128と通信する。下記に詳述するように、共有PCIX経路216は、一方のCMMが他方のCMMと通信するための通信経路として使用されても良い。ネットワークブリッジ上に存在する残りのCIMに対しても、同様の構成が使用されると理解されるであろう。例えば、図2に示される実施の形態において、CIM−2 140が第2のデータバス124及び第4のデータバス132に接続されるため、CIM−2 140に含まれる交換/共有PCIX FPGA200は、第2のデータバス124及び第4のデータバス132とそれぞれ通信する交換PCIX経路208、212を備えるであろう。同様に、2つを超えるCIMが存在する場合、アプリケーションによる要求に応じて受動バックプレーン116上の適切なバスと通信するよう構成されるであろう。
【0034】
図2〜4を参照すると、イネーブル入力214は、CIM136、140を特定のCMM104、108に区分するために用いられる。このような場合、CMM104または108が接続されるバスセグメントからCMM136または140へのアクセスを可能にすることによって、CMM104または108はCIM136、140の排他的所有権を有する。例えば、ある実施の形態において、CMM−A 104がCIM−1 136に区分され、CMM−B 108がCIM−2 140に区分される。したがって、CMM−A 104はCIM−1 136の排他的所有権を有し、CMM−B 108はCIM−2 140の排他的所有権を有する。この区分(zoning)は、CIM−1 136において第1の交換PCIX経路208上のイネーブル入力214を活性化し、CIM−1 136において第2の交換PCIX経路212上のイネーブル入力214を無効にすることによって達成される。この結果、第1の交換PCIX経路208のみが、チャネルインタフェース204と通信する。上記のように、CIM−1 136において、第1の交換PCIX経路208が第1のデータバスと通信し、それ故、CMM−A 104がCIM−1 136に区分される。同様に、CIM−2 140をCMM−B 108へ区分するために、第2の交換経路212上のイネーブル入力214は活性化され、第1の交換PCIX経路208上のイネーブル入力は活性化されない。この結果、CIM−2 140内の第2の交換PCIX経路212のみがチャネルインタフェース204と通信し、それ故、CMM−B 108はCIM−2 140に区分される。CMM104または108の一方のみにCIM136または140を制御させることによって、チャネル制御、マッピング、及び管理が簡易化される。区分は、2つ以上のホストチャネルまたはディスクチャネルが存在する場合に特に有用である。例えば、2つのホストチャネルと2つのディスクチャネルが存在する場合、CMM−A 104を第1のホストチャネル及び第1のディスクチャネルに区分し、CMM−B 108を第2のホストチャネル及び第2のディスクチャネルに区分しても良い。したがって、CMM−A 104は、CIM−1 136を通じて第1のホストチャネルからデータの送受信を行い、CMM−B 108は、CIM−2 140を通じて第2のホストチャネルからデータの送受信を行う。CMMは一貫性チェックを行わないため、CMM内で区分を行うと活動中のアプリケーションにおける制御が簡易化される。両方のCMMが同じチャネルを使用するため、区分が実行されない場合でも一貫性のチェックが必要である。このような場合、CMMは、読み取りまたは書き込み機能等のデータに関する何らかの機能を実行する前に、他のCMMがそのデータに関していかなる機能も実行していないことを確認しなければならない。この一貫性のチェックは実行が複雑であり、各CMMが実行しなければならない追加のオーバーヘッドのため、パフォーマンスを低下させる可能性がある。
【0035】
図5を参照して、冗長構成要素を含むネットワークブリッジ100aのブロック図を示す。この実施例において、CMM−A 104とCMM−B 108の2つのCMMが使用される。また、CIM−1 136とCIM−2 140の2つのCIMが使用される。CMM−A 104及びCIM−1 136は両方とも受動バックプレーン116で第1のデータバス120に接続される。CMM−A 104及びCIM−2 140は両方とも受動バックプレーン116で第2のデータバス124に接続される。CMM−B 108CIM−1 136は両方とも受動バックプレーン116で第3のデータバス128に接続される。CMM−B 108及びCIM−2 140は両方とも受動バックプレーン116で第4のデータバス132に接続される。
【0036】
当業者によって理解されるように、冗長制御装置は、記憶サブシステムに取り付けられる2つの制御装置間のデータのミラー化を必要とする。これは、制御装置がホストコンピュータからデータを受信し、データをキャッシュし、データが書き込まれたというメッセージをホストコンピュータに送信する、書き戻しキャッシュ(write back cache)の使用による。従って、データが実際に制御装置に格納され、ディスクアレイ内のドライブに書き込まれるためにそこで待機している時、ホストコンピュータは、データが書き込まれたと判定する。このデータが故障の場合に失われないよう確保することを助けるため、冗長制御装置はこのデータを他の制御装置にミラー化し、従って、他の制御装置にデータの別のコピーができる。このことは、キャッシュの一貫性として既知である。ある実施の形態において、CMM104、108は、ネットワークブリッジ100aにキャッシュの一貫性を提供するためにデータをミラー化する。これは、CMM−A 104とCMM−B 108との間にDMA経路を設けることによって実現できる。このことは、図3に関して上述したように、インタフェースFPGA168内のDMAエンジン188と、図4に関して上述したように、交換/共有経路FPGA200内に配置される共有経路216とを設けることで達成可能である。各CMM104、108は、他のCMMとデータを送受信するためにこのDMA経路を用いる。DMA経路を利用することによって、2つのCMM104、108は、ホストチャネル152またはディスクチャネル158を使用する必要なくデータをミラー化でき、従って、ディスクチャネル158またはホストチャネル152のチャネル帯域幅はデータをミラー化するCMM104、108によって消費されない。加えて、2つのCMM104、108間のDMA経路を採用することによって、CMM104、108がミラー化を完了させるのに必要な処理リソースは、ホストチャネル152またはディスクチャネル158を用いるミラー化で必要とされる処理リソースよりも少なくなるであろう。
【0037】
また、CMM−A 104とCMM−B 108との間にはフェイルオーバーリセットリンク240がある。フェイルオーバーリセットリンク240は、CMM104、108のうち1つの故障を伝達するために使用される。ある実施の形態において、フェイルオーバーリセットリンク204は、CMM−A 104とCMM−B 108間のシリアル接続である。この実施の形態において、各CMM104、108は、フェイルオーバーリセットリンク204越しに伝達され別のCMMによって監視される心拍(heartbeat)信号を維持する。心拍信号に問題が検知された場合、CMM104、108は、他のCMMの動作を終了させるためにフェイルオーバーリセットリンク越しに信号を送信することができる。例えば、CMM−B 108に故障がある場合、CMM−A 104は、CMM−B 108からの心拍信号がもはや活性(active)でないことを検知する。心拍信号が受信されない所定期間の経過後、CMM−A 104はCMM−B 108に終了信号を送信する。CMM−B 108は終了信号を受信すると、動作を停止する。次に、CMM−Aが、すべての読み取り及び書き込み動作の制御を引き受ける。同様に、CMM−A 104が故障した場合、CMM−B 108がフェイルオーバーリセットリンク240越しに指示を受信し、すべての読み取り及び書き込み動作の制御を引き受けるであろう。したがって、システムは冗長であり、CMM 104または108が故障した時でも動作を継続する。
【0038】
図6を参照して、1つのCMMが故障した時のシステムの動作を説明する。図6に示されるように、ネットワークブリッジ100aは、CMM−A 104とCMM−B 108、受動PCIXバックプレーン116、及びCIM−1 136とCIM−2 140を備える。CMM−A 104が故障した時、CMM−B 108が上記のとおり、フェイルオーバーリセットリンク240越しに故障を検知し、CMM−A 104の動作を終了させる。次に、CMM−B 108は、それまでCMM−A 104によって実行されていたすべての記憶及び制御動作を担う。これが発生すると、CMM−B 108は、CMM−B 108のみとの通信を可能にするためにCIM−1 136及びCIM−2 140にコマンドを送信する。この場合、CIM−1 136がこのコマンドを受信し、第1のデータバス120に接続された第1の交換経路208を無効にし、第3のデータバス128に接続された第2の交換経路212を有効にし、それにより、CMM−B 108とCIM−1 136上のホストポート148及びディスクポート156とを接続する。また、CIM−2 140はCMM−B 108からのコマンドを受信し、第2のデータバス124に接続された第1の交換経路208を無効にし、第4のデータバス132に接続された第2の交換経路212を有効にするために、同じ機能を実行する。ある実施の形態において、受動バックプレーン116は、CIM136、140上のイネーブル入力214につながる制御論理線を含み、CMM104、108に接続される。CMM104、108は、CIM136、140上の交換経路208、212を有効にし、及び無効にするために、これらの制御論理線を使用することができる。それに代えて、例えば、受動バックプレーン116上のPCIXバスを介してコマンド情報を受信するCIM内の制御論理等の他の実施の形態が、交換経路208、212を有効にし、及び無効にするために用いられても良い。
【0039】
図7を参照して、1つのCIMが故障した時のシステムの動作を説明する。CMM104、108は、CIM136,140内のすべての構成要素の適切な動作を確認する実行時診断(run time diagnostics)を定期的に実行する。これらの実行時診断の結果は、制御論理線を介してCMM104、108に伝達される。CIM136、140に区分されるCMM104、108は、これらの実行時診断を監視し、エラーまたは故障が生じた場合に、CIM136または140の動作を終了させるために、制御論理線越しにコマンドを伝達する。図7に示されるように、CIM−1 136は故障を有する。CMM−A 104は、CIM−1 136に故障があると判定し、CIM−1 136を無効にする。次に、CMM−A 104は、CIM−2 140上の共有経路216を介してCMM−B 108にこの情報を伝達する。CMM−B 108は、この情報を受信し、CIM−2 140上のホストポート148とディスクポート156との間のすべての通信の制御を担う。CIM−1 136が交換されるか、あるいは故障が矯正されるまで、CMM−A 104は受動状態のままである。
【0040】
図8を参照して、4つのCIMモジュールが存在するネットワークブリッジ100bのブロック図を示す。この実施の形態において、CMM−A 104及びCMM−B 108の2つのCMMは、CIM−1 136、CIM−2 140、CIM−3 300、及びCIM−4 304の4つのCIMと通信する。この実施の形態において、CIM−1 136及びCIM−2 140上のCMM−A交換経路208は有効にされる。同様に、CIM−3 300及びCIM−4 304では、CMM−B交換経路212は有効にされる。したがって、CIM−1 136及びCIM−2 140は、CMM−A 104とホストポート148及びディスクポート156との間のインタフェースを提供し、CIM−3 300及びCIM−4 304は、CMM−B 108とホストポート148及びディスクポート156との間のインタフェースを提供する。本実施の形態のネットワークブリッジは、例えば、複数のホストが存在する時等を含むいくつかの場合に有用である。本実施の形態において、CIM−1 136及びCIM−2 140が第1のホストへの通信を提供し、CIM−3 300及びCIM−4 304が第2のホストへの通信を提供する。2つの別個のRAIDアレイ等の複数のディスクノードに対しても、同じ配列が実行できる。理解されるように、この構成は冗長動作を提供する一方で、1つ以上のホストノードと1つ以上のディスクノードとの間の通信を提供することができる拡張性のあるシステムを提供する。加えて、こうした実施の形態は、異なるチャネル媒体を用いるホスト及び/またはディスクアレイを接続するのに有用であるかもしれない。例えば、現行のシステムは2つのCIMを備え、ホスト及びディスクチャネルの両方にファイバチャネル接続を使用するかもしれない。ユーザがシステムをアップグレードしてSCSI接続を用いる別のディスクアレイを追加したいと考える場合、SCSIチャネルとの通信を可能にする追加CIMを付け加えることができるため、既存のハードウェアを交換する必要なく、現行のシステムのアップグレードが可能になる。
【0041】
図9〜11を参照して、CIMが採っても良い異なる構成、及びCIMが接続しても良い異なるチャネル媒体を提供するためにいくつかのCIMの別の実施の形態を示す。図9は、CIM136aを構成するPCIX・ツー・ギガビットインターコネクト(GBIC:Gigabit Interconnect)のブロック図を示す。CIM136a内では、交換/共有PCIX FPGA200が、デュアルポート2Gbファイバチャネルインタフェース400に接続する。デュアルポート2Gbファイバチャネルインタフェース400の各ポートは、シリアライザ/デシリアライザ(SERDES:Serializer/Deserializer)404a、404bに接続する。各SERDES404a、404bは、2Gbファイバチャネル接続を用いてチャネル媒体に接続する。図9に示される実施の形態において、一方のSERDES404aがGBICホストチャネル152aに接続し、他方のSERDES404bがGBICディスクチャネル158aに接続する。
【0042】
図10は、PCIX・ツー・SCSI CIM136bのブロック図を示す。CIM136b内では、交換/共有PCIX FPGA200が、デュアルポートUltra320 SCSIインタフェース408に接続する。デュアルポートUltra320 SCSIインタフェース408の各ポートは、ホストチャネルまたはディスクチャネルに接続し、SCSIシステムの必要に応じて、終端412接続をも有する。図10に示される実施の形態において、デュアルポートUltra320 SCSIインタフェース408の1つのポートが超高密度相互接続(VHDIC:Very High Density Interconnect)ホストチャネル152bに接続し、デュアルポートUltra320 SCSIインタフェース408の1つのポートがVHDICディスクチャネル158bに接続する。
【0043】
図11は、交換経路内で使用する高速スイッチ接続416a、416bを採用するPCIX・ツー・イーサネット(登録商標)CIM136cのブロック図を示す。高速スイッチ接続416a、416bは、高速スイッチ接続416a、416bを有効及び無効にする役割を果たすイネーブル入力を含むバス継電部である。各高速スイッチ接続416a、416bは、加速FPGAとデータFIFOとを含むインタフェース接続420に接続する。インタフェース接続420は、データをイーサネット(登録商標)接続上で伝達するデータへの適切な機能を実行するギガビットイーサネット(登録商標)ASIC424に接続する。ギガビットイーサネット(登録商標)ASIC424は、信号を物理信号に変換するMAC/物理コンバータ428に接続し、次に適切な電圧で信号を出力するために変圧器432に経路付けされる。ある実施の形態において、変圧器432は、ディスクチャネルへのGBIC接続部158cに接続する。図11の実施の形態において、冗長システムが必要とされる場合、共有経路が他のCIMに提供されるであろう。図9〜11に示されるような異なるインタフェースモジュールの組合せを用いた単一のシステムにおいて、異なるチャネル媒体が使用されても良いことは評価されるであろう。例えば、ホストコンピュータはファイバチャネル媒体を用いてネットワークブリッジに接続し、ネットワークブリッジはSCSIチャネル媒体を用いてディスクアレイに接続しても良い。
【0044】
本発明の上記の説明は、例証と解説を目的として提示された。更に、説明は、本発明を本明細書に開示された形式に限定することを意図していない。それ故に、関連技術の技能と知識の範囲内での変形や変異は上記の教示に相応し、本発明の範囲内である。上記に記載される実施の形態は、更に、発明を実行する現在既知の最良の様態を説明することと、上記実施の形態または別の実施の形態で、本発明の特別な用途または用法によって要求される各種変形とともに、他の当業者に本発明を利用可能とさせることを意図する。添付された請求項は、先行技術が許す程度にまで別の実施の形態を含むように解釈されることを意図する。
【図面の簡単な説明】
【0045】
【図1】図1は、従来のデュアル制御装置ネットワーク記憶ブリッジを示すブロック図である。
【図2】図2は、本発明のネットワーク記憶装置を示すブロック図である。
【図3】図3は、本発明の制御装置メモリモジュールを示すブロック図である。
【図4】図4は、本発明のチャネルインタフェースモジュールを示すブロック図である。
【図5】図5は、本発明の冗長ネットワーク記憶ブリッジを示すブロック図である。
【図6】図6は、故障した制御装置メモリモジュールを示す冗長ネットワーク記憶ブリッジを示すブロック図である。
【図7】図7は、故障したチャネルインタフェースモジュールを示す冗長ネットワーク記憶ブリッジを示すブロック図である。
【図8】図8は、4つのチャネルインタフェースモジュールを示す冗長ネットワーク記憶ブリッジを示すブロック図である。
【図9】図9は、2ギガバイトのファイバチャネル相互接続チャネルを利用するネットワーク記憶ブリッジを示すブロック図である。
【図10】図10は、Ultra320 SCSIチャネルを利用するネットワーク記憶ブリッジを示すブロック図である。
【図11】図11は、1ギガビットのイーサネット(登録商標)チャネルを利用するネットワーク記憶ブリッジを示すブロック図である。
【符号の説明】
【0046】
10 RAIDネットワーク制御装置
14、18 ホストポート
22、26 ディスクポート
30、34 制御装置
38 ファイバチャネルバックプレーン
42、46 入出力モジュール
100 ネットワークブリッジ
104、108 CMM
112 バックプレーンインタフェース
116 受動バスバックプレーン
134 CMMバス接続
136、140、300、304 CIM
146 CIMバス接続
148 ホストポート
152 ホストチャネル
156 ディスクポート
158 ディスクチャネル
200 交換/共有PCIX FPGA
204 チャネルインタフェース

Claims (19)

  1. ホストコンピュータを少なくとも1つの記憶装置に接続するためのネットワーク記憶装置であって、
    第1及び第2のデータバスを含む複数のデータバスを有する受動バックプレーン(passive backplane)と、
    前記受動バックプレーンに接続され、ホストコンピュータ及び少なくとも1つの記憶装置に接続されるように適合され、ホストコンピュータ及び少なくとも1つの記憶装置と記憶データを送受信するように動作可能であり、及び、記憶データを前記複数のデータバスのうち1つ以上に選択的に転送するように動作可能である、少なくとも第1及び第2のチャネルインタフェースモジュールと、
    前記受動バックプレーンに接続され、前記受動バックプレーンを介して前記チャネルインタフェースモジュールと通信し、及び、前記チャネルインタフェースモジュールで転送される記憶データを記憶し処理する、少なくとも第1及び第2の制御装置メモリモジュールと、を有するネットワーク記憶装置。
  2. 少なくとも前記第1のチャネルインタフェースモジュールが通信経路部とチャネルインタフェース部と有し、前記チャネルインタフェース部がホストコンピュータ及び/または少なくとも1つの記憶装置と前記通信経路部との間で記憶データを転送するように動作可能であり、前記通信経路部が前記チャネルインタフェース部と前記受動バックプレーンとの間で記憶データを選択的に転送するように動作可能である請求項1の装置。
  3. 少なくとも前記第1の制御装置メモリモジュールが、前記受動バックプレーンに接続するバスインタフェース部と、前記記憶データの一時記憶のためのメモリと、前記記憶データを編成し配列する処理部とを有する請求項1の装置。
  4. 前記バスインタフェース部が、
    前記受動バックプレーンに接続する少なくとも1つのバックプレーンインタフェースと、
    前記メモリに接続するメモリインタフェースと、
    前記処理部に接続する処理インタフェースと、
    前記処理インタフェースと、メモリインタフェースと、バックプレーンインタフェースとを接続するように動作可能な制御論理を含むブリッジコアと、
    データブロックに排他的論理和(XOR:Exclusive OR)機能を実行するXORエンジン、及び、前記受動バックプレーンへのダイレクトメモリアクセス(DMA:Direct Memory Access)を提供するDMAエンジンのうちの少なくとも1つを有する請求項3の装置。
  5. 前記受動バックプレーンが更に第3及び第4のデータバスを有する請求項1のネットワーク記憶装置。
  6. 前記第1及び第2のデータバスの各々がバックプレーンバスのグループの一部であり、前記グループが周辺構成要素相互接続(PCIX:Peripheral Component Interconnect)バスを有する請求項1の装置。
  7. 前記受動バックプレーンが更に第3のデータバスと第4のデータバスを有し、
    前記第1のチャネルインタフェースモジュールが第1のバスポートと第2のバスポートを有し、前記第2のチャネルインタフェースモジュールが第3のバスポートと第4のバスポートを有し、前記第1、第2、第3、及び第4のバスポートが前記通信経路部を前記受動バックプレーンに接続するように動作可能であり、
    前記第1の制御装置メモリモジュールが第1のバスインタフェースと第2のバスインタフェースを有し、前記第2の制御装置メモリモジュールが第3のバスインタフェースと第4のバスインタフェースを有し、前記第1、第2、第3、及び第4のバスインタフェースが前記制御装置メモリモジュールを前記受動バックプレーンの前記第1、第2、第3、及び第4のデータバスに接続するように動作可能である請求項2の装置。
  8. 前記第1のバスポートが前記第1のデータバスと接続され、前記第2のバスポートが前記第3のデータバスと接続され、
    前記第3のバスポートが前記第2のデータバスと接続され、前記第4のバスポートが前記第4のデータバスと接続され、
    前記第1のバスインタフェースが前記第1のデータバスと接続され、前記第2のバスインタフェースが前記第2のデータバスと接続され、
    前記第3のバスインタフェースが前記第3のデータバスと接続され、前記第4のバスインタフェースが前記第4のデータバスと接続される請求項7の装置。
  9. 前記第1のチャネルインタフェースモジュールの前記通信経路部が、第1の共有経路、第1の交換経路、及び第2の交換経路を有し、
    前記第2のチャネルインタフェースモジュールの前記通信経路部が、第2の共有経路、第3の交換経路、及び第4の交換経路を有し、
    前記第1の共有経路が前記第1のバスポートと前記第2のバスポートに接続され、
    前記第1の交換経路が前記第1のバスポートと前記チャネルインタフェース部に接続され、
    前記第2の交換経路が前記第2のバスポートと前記チャネルインタフェース部に接続され、
    前記第2の共有経路が前記第3のバスポートと前記第4のバスポートに接続され、
    前記第3の交換経路が前記第3のバスポートと前記チャネルインタフェース部に接続され、
    前記第4の交換経路が前記第4のバスポートと前記チャネルインタフェース部に接続され、
    前記第1、第2、第3、第4の交換経路が、前記チャネルインタフェース部に関する通信を有効及び無効にするように動作可能である請求項8の装置。
  10. ホストコンピュータと1つ以上の記憶装置との間でデータを転送する方法であって、
    第1のチャネル媒体を用いてホストコンピュータからチャネルインタフェースモジュールへ最初にデータを転送するステップと、
    受動バックプレーンを用いて前記チャネルインタフェースモジュールから第1の制御装置メモリモジュールへ2番目に前記データを転送するステップと、
    記憶データを定義するために前記制御装置メモリモジュールで前記データを処理するステップと、
    前記受動バックプレーンを介して前記チャネルインタフェースモジュールへ前記記憶データを3番目に転送するステップと、
    第2のチャネル媒体を介して少なくとも1つの記憶装置へ前記記憶データを4番目に転送するステップと、
    前記第1のチャネル媒体及び前記第2のチャネル媒体から実質上独立して、前記第1の制御装置メモリモジュールと前記第2の制御装置メモリモジュールとの間で前記記憶データをミラー化するステップと、を有する方法。
  11. 前記2番目に転送するステップが、前記制御装置メモリモジュールに前記データを転送するために前記受動バックプレーンの第1のバスを採用するステップを有する請求項10の方法。
  12. 前記3番目に転送するステップが、前記チャネルインタフェースモジュールに前記記憶データを転送するために前記受動バックプレーンの第2のバスを採用するステップを有する請求項10の方法。
  13. 前記ミラー化するステップが、前記第1のチャネル媒体も、前記第2のチャネル媒体も使用しない請求項10の方法。
  14. 前記ミラー化するステップが、前記記憶データの50%未満を運ぶように前記第1のチャネル媒体と前記第2のチャネル媒体を制限するステップを有する請求項10の方法。
  15. ホストコンピュータを少なくとも1つの記憶装置と接続するためのネットワーク記憶装置であって、
    それぞれがホストチャネル及びディスクチャネルに接続されるように適合され、ホストチャネル及びディスクチャネル越しにデータを送受信するように動作可能であり、ホストチャネルがホストコンピュータに接続され、ディスクチャネルが少なくとも1つの記憶装置に接続される、少なくとも第1及び第2のチャネルインタフェースモジュールと、
    前記第1及び第2のチャネルインタフェースモジュールと通信し、少なくとも1つの記憶装置に記憶するための記憶データを提供するためにホストコンピュータからのデータを処理し、ホストコンピュータに送信するための取出データを提供するために少なくとも1つの記憶装置からのデータを処理する、少なくとも第1及び第2の制御装置メモリモジュールと、
    前記チャネルインタフェースモジュールと前記制御装置メモリモジュールとの間の通信をサポートする、前記チャネルインタフェースモジュールの各々と前記制御装置メモリモジュールの各々に接続され、データがホストチャネル及び/またはディスクチャネルによって運ばれる時、それと同時にデータが前記第1の制御装置メモリモジュールと前記第2の制御装置メモリモジュールとの間でミラー化され、ホストチャネルもディスクチャネルもミラー化される前記データの50%を超えて運ばない受動バックプレーンと、を有するネットワーク記憶装置。
  16. 前記第1及び第2のチャネルインタフェースモジュールの各々が、通信経路部とチャネルインタフェース部とを有し、前記チャネルインタフェース部が前記ホストチャネル及び/または前記ディスクチャネルと前記通信経路部との間で前記記憶データを転送するように動作可能であり、前記通信経路部が前記チャネルインタフェース部と前記受動バックプレーンとの間で前記記憶データを転送するように動作可能である請求項15の装置。
  17. 前記第1及び第2の制御装置メモリモジュールの各々が、前記受動バックプレーンに接続するバスインタフェース部と、前記記憶データを一時記憶するためのメモリと、前記記憶データを編成し配列する処理部とを含む請求項15の装置。
  18. 前記バスインタフェース部が、
    前記受動バックプレーンに接続する少なくとも1つのバックプレーンインタフェースと、
    前記メモリに接続するメモリインタフェースと、
    前記処理部に接続する処理インタフェースと、
    前記処理インタフェースと、メモリインタフェースと、バックプレーンインタフェースとを接続するように動作可能な制御論理を含むブリッジコアと、
    データブロックに排他的論理和(XOR:Exclusive OR)を実行する少なくとも1つのXORエンジンと、前記受動バックプレーンへのダイレクトメモリアクセス(DMA:Direct Memory Access)を提供するDMAエンジンと、を有する請求項17の装置。
  19. 前記ミラー化されるデータのいずれも、実質上、ホストチャネル及びディスクチャネルによって運ばれない請求項15の装置。
JP2003538914A 2001-09-28 2002-09-26 ネットワーク記憶制御装置のためのモジュラーアーキテクチャ Pending JP2005507118A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/967,194 US7437493B2 (en) 2001-09-28 2001-09-28 Modular architecture for a network storage controller
PCT/US2002/030632 WO2003036493A1 (en) 2001-09-28 2002-09-26 Modular architecture for a network storage controller

Publications (2)

Publication Number Publication Date
JP2005507118A true JP2005507118A (ja) 2005-03-10
JP2005507118A5 JP2005507118A5 (ja) 2005-12-22

Family

ID=25512443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003538914A Pending JP2005507118A (ja) 2001-09-28 2002-09-26 ネットワーク記憶制御装置のためのモジュラーアーキテクチャ

Country Status (5)

Country Link
US (1) US7437493B2 (ja)
JP (1) JP2005507118A (ja)
DE (1) DE10297284T5 (ja)
GB (1) GB2396726B (ja)
WO (1) WO2003036493A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106027424A (zh) * 2016-05-23 2016-10-12 上海电控研究所 基于RapidIO交换技术的以太网交换装置

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536495B2 (en) * 2001-09-28 2009-05-19 Dot Hill Systems Corporation Certified memory-to-memory data transfer between active-active raid controllers
US7146448B2 (en) * 2001-09-28 2006-12-05 Dot Hill Systems Corporation Apparatus and method for adopting an orphan I/O port in a redundant storage controller
US7315911B2 (en) * 2005-01-20 2008-01-01 Dot Hill Systems Corporation Method for efficient inter-processor communication in an active-active RAID system using PCI-express links
US7062591B2 (en) * 2001-09-28 2006-06-13 Dot Hill Systems Corp. Controller data sharing using a modular DMA architecture
US7340555B2 (en) 2001-09-28 2008-03-04 Dot Hill Systems Corporation RAID system for performing efficient mirrored posted-write operations
US7143227B2 (en) * 2003-02-18 2006-11-28 Dot Hill Systems Corporation Broadcast bridge apparatus for transferring data to redundant memory subsystems in a storage controller
US7437493B2 (en) 2001-09-28 2008-10-14 Dot Hill Systems Corp. Modular architecture for a network storage controller
US6732243B2 (en) * 2001-11-08 2004-05-04 Chaparral Network Storage, Inc. Data mirroring using shared buses
US20030086550A1 (en) * 2001-11-08 2003-05-08 Yehuda Hershkovits Gateway apparatus for transporting electrical telephony signals
AU2002361603A1 (en) * 2001-11-09 2003-05-26 Chaparral Network Storage, Inc. Transferring data using direct memory access
US7290277B1 (en) * 2002-01-24 2007-10-30 Avago Technologies General Ip Pte Ltd Control of authentication data residing in a network device
US7173943B1 (en) * 2002-02-26 2007-02-06 Computer Access Technology Corporation Protocol analyzer and time precise method for capturing multi-directional packet traffic
US8005918B2 (en) 2002-11-12 2011-08-23 Rateze Remote Mgmt. L.L.C. Data storage devices having IP capable partitions
US7170890B2 (en) * 2002-12-16 2007-01-30 Zetera Corporation Electrical devices with improved communication
US7649880B2 (en) 2002-11-12 2010-01-19 Mark Adams Systems and methods for deriving storage area commands
CN101448012B (zh) 2002-11-12 2013-04-24 雷特泽遥距管理有限责任公司 具有ip能力分区的数据存储设备
US7627780B2 (en) 2003-04-23 2009-12-01 Dot Hill Systems Corporation Apparatus and method for deterministically performing active-active failover of redundant servers in a network storage appliance
US7565566B2 (en) * 2003-04-23 2009-07-21 Dot Hill Systems Corporation Network storage appliance with an integrated switch
US7661014B2 (en) * 2003-04-23 2010-02-09 Dot Hill Systems Corporation Network storage appliance with integrated server and redundant storage controllers
US7401254B2 (en) 2003-04-23 2008-07-15 Dot Hill Systems Corporation Apparatus and method for a server deterministically killing a redundant server integrated within the same network storage appliance chassis
US7437425B2 (en) * 2003-09-30 2008-10-14 Emc Corporation Data storage system having shared resource
GB2412205B (en) * 2004-02-10 2006-02-15 Hitachi Ltd Storage system
JP2005275829A (ja) * 2004-03-25 2005-10-06 Hitachi Ltd ストレージシステム
US7543096B2 (en) * 2005-01-20 2009-06-02 Dot Hill Systems Corporation Safe message transfers on PCI-Express link from RAID controller to receiver-programmable window of partner RAID controller CPU memory
US7702850B2 (en) 2005-03-14 2010-04-20 Thomas Earl Ludwig Topology independent storage arrays and methods
US7620981B2 (en) 2005-05-26 2009-11-17 Charles William Frank Virtual devices and virtual bus tunnels, modules and methods
US7743214B2 (en) * 2005-08-16 2010-06-22 Mark Adams Generating storage system commands
US8819092B2 (en) 2005-08-16 2014-08-26 Rateze Remote Mgmt. L.L.C. Disaggregated resources and access methods
US9270532B2 (en) * 2005-10-06 2016-02-23 Rateze Remote Mgmt. L.L.C. Resource command messages and methods
US8595313B2 (en) * 2005-11-29 2013-11-26 Netapp. Inc. Systems and method for simple scale-out storage clusters
US7924881B2 (en) 2006-04-10 2011-04-12 Rateze Remote Mgmt. L.L.C. Datagram identifier management
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
US7865766B2 (en) * 2006-07-26 2011-01-04 International Business Machines Corporation Providing increased availability of I/O drawers during concurrent I/O hub repair
US20080168161A1 (en) * 2007-01-10 2008-07-10 International Business Machines Corporation Systems and methods for managing faults within a high speed network employing wide ports
US20080168302A1 (en) * 2007-01-10 2008-07-10 International Business Machines Corporation Systems and methods for diagnosing faults in a multiple domain storage system
US7681089B2 (en) * 2007-02-20 2010-03-16 Dot Hill Systems Corporation Redundant storage controller system with enhanced failure analysis capability
US7936767B2 (en) * 2007-04-30 2011-05-03 International Business Machines Corporation Systems and methods for monitoring high speed network traffic via sequentially multiplexed data streams
US20080270638A1 (en) * 2007-04-30 2008-10-30 International Business Machines Corporation Systems and methods for monitoring high speed network traffic via simultaneously multiplexed data streams
US8998636B2 (en) * 2013-01-29 2015-04-07 Hewlett-Packard Development Company, L.P. Interconnect assembly
US9882805B2 (en) * 2013-09-30 2018-01-30 Vmware, Inc. Dynamic path selection policy for multipathing in a virtualized environment
WO2017053968A1 (en) 2015-09-25 2017-03-30 Fsa Technologies, Inc. Data redirection in a bifurcated communication trunk system and method
CN105760310B (zh) * 2016-02-05 2018-12-14 华为技术有限公司 地址分配方法及ddr控制器
DE102018125297A1 (de) * 2017-11-17 2019-05-23 Samsung Electronics Co., Ltd. Speichereinrichtung, die Peer-to-Peer-Kommunikation mit externer Einrichtung ohne Eingriff eines Host durchführt

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1118101A (en) 1977-06-02 1982-02-09 Jerry Doniger Digital flight guidance system
US4428044A (en) 1979-09-20 1984-01-24 Bell Telephone Laboratories, Incorporated Peripheral unit controller
JPH0264834A (ja) 1988-08-31 1990-03-05 Midori Denshi Kk 小型コンピュータシステムにおけるデータ転送装置
US5163131A (en) 1989-09-08 1992-11-10 Auspex Systems, Inc. Parallel i/o network file server architecture
US5301303A (en) 1990-04-23 1994-04-05 Chipcom Corporation Communication system concentrator configurable to different access methods
JP2910303B2 (ja) 1990-06-04 1999-06-23 株式会社日立製作所 情報処理装置
US5345565A (en) 1991-03-13 1994-09-06 Ncr Corporation Multiple configuration data path architecture for a disk array controller
US5483528A (en) 1994-10-11 1996-01-09 Telex Communications, Inc. TDM digital matrix intercom system
DE19540915A1 (de) 1994-11-10 1996-05-15 Raymond Engineering Redundante Anordnung von Festkörper-Speicherbausteinen
US5619642A (en) 1994-12-23 1997-04-08 Emc Corporation Fault tolerant memory system which utilizes data from a shadow memory device upon the detection of erroneous data in a main memory device
US5590377A (en) 1995-06-07 1996-12-31 Ast Research, Inc. Automatic control of distributed DMAs in a PCI bus system supporting dual ISA buses
US5761705A (en) 1996-04-04 1998-06-02 Symbios, Inc. Methods and structure for maintaining cache consistency in a RAID controller having redundant caches
US5802561A (en) 1996-06-28 1998-09-01 Digital Equipment Corporation Simultaneous, mirror write cache
US5812754A (en) 1996-09-18 1998-09-22 Silicon Graphics, Inc. Raid system with fibre channel arbitrated loop
US6185634B1 (en) 1996-09-27 2001-02-06 Emc Corporation Address triggered DMA controller with an indicative signal including circuitry for calculating a new trigger address value based on the sum of the current trigger address and the descriptor register data with a trigger address register
JP3602293B2 (ja) 1997-04-22 2004-12-15 株式会社ソニー・コンピュータエンタテインメント データ転送方法及び装置
US6094699A (en) 1998-02-13 2000-07-25 Mylex Corporation Apparatus and method for coupling devices to a PCI-to-PCI bridge in an intelligent I/O controller
US6243829B1 (en) 1998-05-27 2001-06-05 Hewlett-Packard Company Memory controller supporting redundant synchronous memories
US6098140A (en) 1998-06-11 2000-08-01 Adaptec, Inc. Modular bus bridge system compatible with multiple bus pin configurations
US6507581B1 (en) 1998-06-12 2003-01-14 Fairchild Semiconductor Corporation Dynamic port mode selection for crosspoint switch
US6230240B1 (en) 1998-06-23 2001-05-08 Hewlett-Packard Company Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface
US6219725B1 (en) 1998-08-28 2001-04-17 Hewlett-Packard Company Method and apparatus for performing direct memory access transfers involving non-sequentially-addressable memory locations
US6202106B1 (en) 1998-09-09 2001-03-13 Xilinx, Inc. Method for providing specific knowledge of a structure of parameter blocks to an intelligent direct memory access controller
US6185652B1 (en) 1998-11-03 2001-02-06 International Business Machin Es Corporation Interrupt mechanism on NorthBay
EP1131719A4 (en) 1998-11-14 2007-10-31 Mti Tech Corp ILLUSTRATION OF LOGICAL UNITS IN A STORAGE AREA NETWORK
US6493795B1 (en) 1998-12-30 2002-12-10 Emc Corporation Data storage system
US6272533B1 (en) 1999-02-16 2001-08-07 Hendrik A. Browne Secure computer system and method of providing secure access to a computer system including a stand alone switch operable to inhibit data corruption on a storage device
JP3716126B2 (ja) * 1999-03-17 2005-11-16 株式会社日立製作所 ディスクアレイ制御装置及びディスクアレイ
US6854034B1 (en) 1999-08-27 2005-02-08 Hitachi, Ltd. Computer system and a method of assigning a storage device to a computer
JP3843713B2 (ja) 1999-08-27 2006-11-08 株式会社日立製作所 計算機システム及びそのデバイスの割り当て方法
US6801958B2 (en) 1999-12-15 2004-10-05 Texas Instruments Incorporated Method and system for data transfer
US6421769B1 (en) 1999-12-30 2002-07-16 Intel Corporation Efficient memory management for channel drivers in next generation I/O system
US6785783B2 (en) 2000-11-30 2004-08-31 International Business Machines Corporation NUMA system with redundant main memory architecture
US6957313B2 (en) 2000-12-01 2005-10-18 Hsia James R Memory matrix and method of operating the same
US6470429B1 (en) 2000-12-29 2002-10-22 Compaq Information Technologies Group, L.P. System for identifying memory requests as noncacheable or reduce cache coherence directory lookups and bus snoops
US6687797B1 (en) * 2001-05-17 2004-02-03 Emc Corporation Arbitration system and method
US7437493B2 (en) 2001-09-28 2008-10-14 Dot Hill Systems Corp. Modular architecture for a network storage controller
US6839788B2 (en) 2001-09-28 2005-01-04 Dot Hill Systems Corp. Bus zoning in a channel independent storage controller architecture
US7062591B2 (en) 2001-09-28 2006-06-13 Dot Hill Systems Corp. Controller data sharing using a modular DMA architecture

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106027424A (zh) * 2016-05-23 2016-10-12 上海电控研究所 基于RapidIO交换技术的以太网交换装置

Also Published As

Publication number Publication date
DE10297284T5 (de) 2005-01-05
US7437493B2 (en) 2008-10-14
US20030065733A1 (en) 2003-04-03
GB0406742D0 (en) 2004-04-28
GB2396726A (en) 2004-06-30
GB2396726B (en) 2006-04-12
WO2003036493A1 (en) 2003-05-01

Similar Documents

Publication Publication Date Title
US7062591B2 (en) Controller data sharing using a modular DMA architecture
JP2005507118A (ja) ネットワーク記憶制御装置のためのモジュラーアーキテクチャ
US6839788B2 (en) Bus zoning in a channel independent storage controller architecture
US6732243B2 (en) Data mirroring using shared buses
US7093043B2 (en) Data array having redundancy messaging between array controllers over the host bus
US7631218B2 (en) RAID system and Rebuild/Copy back processing method thereof
US8340087B2 (en) Storage subsystem
US7146448B2 (en) Apparatus and method for adopting an orphan I/O port in a redundant storage controller
EP0907917B1 (en) Cache memory controller in a raid interface
US8751716B2 (en) Adaptive data throttling for storage controllers
US20050005062A1 (en) Redundant external storage virtualization computer system
US20110145452A1 (en) Methods and apparatus for distribution of raid storage management over a sas domain
US20030221061A1 (en) Serial interface for a data storage array
JP2007122477A (ja) Raidシステム、raidコントローラ及びそのリビルド/コピーバック処理方法
JP3987241B2 (ja) 系間情報通信システム
JP2009053946A (ja) 二重化コントーラ構成ブロックデバイス制御装置
WO2021012169A1 (zh) 一种提高存储***可靠性的方法和相关装置
US7426658B2 (en) Data storage system and log data equalization control method for storage control apparatus
JP2003263279A (ja) ディスクアレイ制御装置
JP2005190498A (ja) 記憶制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050908

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20050908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050908

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20051012

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071113

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080415