JP2003534749A - Tcp/ipによるscsiを使用するデータ複製方法および装置 - Google Patents

Tcp/ipによるscsiを使用するデータ複製方法および装置

Info

Publication number
JP2003534749A
JP2003534749A JP2001587223A JP2001587223A JP2003534749A JP 2003534749 A JP2003534749 A JP 2003534749A JP 2001587223 A JP2001587223 A JP 2001587223A JP 2001587223 A JP2001587223 A JP 2001587223A JP 2003534749 A JP2003534749 A JP 2003534749A
Authority
JP
Japan
Prior art keywords
command
scsi
targets
logical unit
data 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
JP2001587223A
Other languages
English (en)
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 JP2003534749A publication Critical patent/JP2003534749A/ja
Pending legal-status Critical Current

Links

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/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/2066Optimisation of the communication load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1859Arrangements for providing special services to substations for broadcast or conference, e.g. multicast adapted to provide push services, e.g. data channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/2058Error 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 more than 2 mirrored copies
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 本発明は、IPマルチキャスティング機構をSCSIプロトコルと組み合わせ、より効率的なデータ複製方式またはデータ・ミラーリング方式を実現する。IPマルチキャスト機構と、仮想ユニット論理番号の実論理ユニット番号へのマッピングを組み合わせると共に、SCSI応答フレームを使用することによって、マルチキャストされるデータの完全性が保証される。本発明によってTCP/IP(203)によるSCSIプロトコルを使用することにより、もはや同じ通信リンク上で同じデータの複数のコピーを転送することが不要になり、発信側(201)およびターゲット(205A〜205C)からIPルータへの経路指定論理を削除することができる。

Description

【発明の詳細な説明】
【0001】 発明の背景関連出願 本出願は、2000年5月23日に出願され、引用によって本明細書に組み入れられ
た米国暫定出願第60/206,607号に対する優先権を主張するものである。
【0002】発明の分野 本発明は、コンピュータ・システムにおけるデータの複製に関する。特に、本
発明は、IPマルチキャスト機構を介してTCP/IPによるSCSIトランスポート層を利
用してSCSI装置に転送されるデータを複製することに関する。
【0003】関連技術の説明 小型コンピュータ・システム・インタフェース(「SCSI」)は、入出力装置、
特に記憶装置と通信するための、広く使用されているプロトコル群である。より
適切に言えば、SCSIはコンピュータと記憶サブシステムとの間の入出力動作用の
基本的なプロトコルである。これは基本的に2地点間プロトコルである。
【0004】 他の普及しているプロトコルとしてトランスポート制御プロトコル/インタフ
ェース・プログラム(「TCP/IP」)がある。TCP/IPは、コンピュータと通信網と
間の一般的なデータ交換用の基本的な1組の通信プロトコルである。これは、イ
ンタネットを介して通信するのに用いられる一般的なプロトコルである。
【0005】 現在、この2つのプロトコル、SCSIとTCP/IPは組み合わされている。特に、現
在では、SCSIを介してサブシステムと通信するコンピュータ同士が、インタネッ
トを介して相互に接続され、TCP/IPを利用して相互に通信する傾向がある。
【0006】 この組合せに鑑みて、TCPによってSCSIを実現する標準が提案されている。現
在提案されている標準「-draft-ietf-ips-iSCSI-06.txt」はhttp://www.ietf.or g/internet-drafts/draft-ietf-ips-iscsi-06.txt (引用によって本明細書に明
示的に組み入れられる)(「標準」)で入手することができる。この標準は、SC
SIアーキテクチャ・モデル2ドキュメント(これも引用によって本明細書に明示
的に組み入れられる)に記載された要件を完全に満たすことを目的としている。
この標準は、TCP/IP接続上で、SCSI装置間でSCSIコマンドを送信できるようにす
る。
【0007】 従来、互いに通信するSCSI装置は、同じSCSIバスを介して通信しなければなら
ない。提案されている標準は、同じSCSIバスを介して接続されていないSCSI装置
を、TCP/IPプロトコルを利用して互いに通信できるようにする。この標準によれ
ば、場合によっては互いに長距離離れたSCSI装置が互いに通信することができる
。この標準は、トランスポート・プロトコルとしてのTCPによって動作するSCSI
の実現態様を記載したものである。
【0008】 SCSIプロトコルにおいて1組の2地点間入出力動作として実現される多数の高
レベル記憶機能がある。これらの高レベル記憶機能のうちで最もよく知られてい
る機能はデータ・ミラーリングである。従来のSCSIシステム上のデータ・ミラー
リングでは、複製されたデータのイメージを保持するための各装置に個別のSCSI
入出力動作を発行することによってデータ複製が実施される。
【0009】 以下に、いくつかのSCSI概念の用語を定義する。代表的なSCSIコマンドの終点
は「論理ユニット」(LUN)である。論理ユニットには、たとえば、ハード・ド
ライバ、テープ・ドライバ、CDドライバおよびDVDドライバ、プリンタ、ならび
にプロセッサが含まれる。論理ユニットの集合は、「ターゲット」と呼ばれ、ネ
ットワーク上で直接アドレス指定される。クライアント・サーバ・モデルでは、
ターゲットはサーバに対応する。「発信側」は、SCSIコマンドを作成し、ターゲ
ットに送信する。クライアント・サーバ・モデルでは、発信側はクライアントに
対応する。
【0010】 代表的なSCSIコマンドの結果として、コマンド・フェーズ、データ・フェーズ
、および応答フェーズが生じる。データ・フェーズにおいて、情報は発信側から
ターゲットへ(たとえば、WRITEコマンド)、またはターゲットから発信側へ(
たとえば、READコマンド)に移動する。応答フェーズでは、ターゲットはあらゆ
るエラーを含む、最終的な動作ステータスを返す。応答は、代表的なSCSIコマン
ドの終了を示す。
【0011】 従来の記憶サブシステムでは、データ・ミラーリングは、一般に入出力動作レ
ベルで追加の論理を設けることによって行われる。通常、この追加の論理は、ミ
ラーリングされるデータの各WRITE動作ごとに、データのミラーリングされたイ
メージを維持するあらゆる装置に、対応するWRITE動作を発行する。したがって
、従来のシステムで2方向ミラーリングが可能である場合、各WRITEコマンドの
2つのコピーがSCSIバス上で送信される。さらに、WRITEコマンドに関連するデ
ータの2つのコピーがSCSIバス上で送信され、同じデータが複数回転送される。
たとえば、パーソナル・コンピュータなどの発信側からのWRITEコマンドが、3
つのデータ記憶装置、たとえばZIPドライバのような3つのターゲットにミラー
リングされるものとする。発信側が、ミラーリングされるWRITEコマンドを生成
するたびに、WRITEコマンドおよび関連するデータをすべての3つのターゲット
に送信しなければならない。さらに、入出力サブシステムは、データ複製、エラ
ー処理、SCSIネットワーク内でのデータの経路指定に対処するために追加の複雑
な論理を必要とする。前記のことから分かるように、データ・ミラーリングは通
常、SCSIバスの利用度を大幅に高める。このため、SCSIバスを利用する他の装置
へのスループットが著しく低速になり、エラーの確率が高くなる。
【0012】 図1は、ヤナイ(Yanai)らの米国特許第6,173,377B1号に示された代表的なリ
モート・データ・ミラーリング・システムを示している。このシステムは、主デ
ータ記憶装置または一次記憶装置から地理的に離れた位置に記憶されているコピ
ーまたはミラーを自動的に確保し維持する。図1のデータ処理システム110は、
一次データ記憶システム114内のサービス・プロセッサ134のユーザ・インタフェ
ースからのリモート・ミラーリング向けに構成することができる。リモート・ミ
ラーリング・ソフトウェア113を設けることができ、ホスト・アプリケーション
・プログラムは、このリモート・ミラーリング・ソフトウェア113を介してデー
タ記憶システム114、146のリモート・ミラーリング機構のインタフェースをとる
ことができる。ヤナイのプロセスおよびシステムによれば、中央処理ユニット15
2は、冗長信号経路を介して一次および二次データ記憶システム114、146にリン
クされたリモート二次データ記憶システム146を備えてよい。リンク・アダプタ1
36、137からの通信リンク140、141が設けられている。リモート・ミラーリング
機構は、特定のアプリケーション用のリモート・ミラーリング動作モードを実現
するために、データ記憶システム114、146と同様に記憶装置内の各論理データ・
ボリュームごとに動作モードを定義する。同期モードまたは半同期モードに従っ
てデータをリモートにミラーリングするための特定の1組の方法が設けられる。
ホストが、リモートにミラーリングされるボリュームにデータを書き込むと、一
連の段階が実行される。すなわち、一次ボリュームを有するデータ記憶システム
のキャッシュにデータが書き込まれる。エントリが、データを二次ボリュームに
送信するための待ち行列に入れられる。二次ボリュームのデータ記憶システムが
データの受信に対して肯定応答する。WRITE要求を開始したホストに書込み終了
信号が返される。
【0013】 発明の概要 本発明の趣旨は、共にTCP/IPネットワークに接続されたSCSI発信側およびSCSI
ターゲットを含むネットワークにおいてデータ転送コマンドをミラーリングする
方法、システム、および/または手段を提供することである。マルチキャスト・
アドレスおよび仮想論理ユニット番号を含む登録コマンドをTCP/IPネットワーク
を介して各ターゲットに送信することが含まれる。さらに、登録コマンドに応答
して、各SCSI装置において、SCSI装置と仮想論理ユニット番号とマルチキャスト
・アドレスの関連性を示すマッピングを確立することも含まれる。さらに、マル
チキャスト・グループ・アドレスを示すSCSIデータ転送コマンドを発信側から送
信することが含まれる。さらに、マルチキャスト・グループの各メンバーにおい
て、データ転送コマンドを受信し、これに応答してデータを転送することも含ま
れる。さらに、マルチキャスト・グループの各SCSIメンバーにおいて、指定され
たデータ転送コマンドを実行することも含まれる。
【0014】 本発明の一態様によれば、本発明は、ミラーリング終了コマンドを発信側から
各ターゲットに送信することを含む。一態様によれば、ミラーリング終了コマン
ドは、仮想論理ユニット番号からの分離を生じさせ、任意にマルチキャスト・グ
ループからの分離を生じさせる。
【0015】 本発明の好ましい一態様によれば、データ転送コマンドはWRITEコマンドであ
る。WRITEコマンドは仮想論理ユニット番号を指定する。シーケンスに複数のWRI
TEコマンドを含めてよい。
【0016】 本発明の好ましい態様によれば、登録コマンドは、各ターゲットに対応するユ
ニキャスト・アドレスに送信される。好ましくは、登録コマンドは標準SCSIテキ
スト・コマンド・フォーマットを有する。
【0017】 極めて好ましい態様によれば、各ターゲットは、マルチキャスト・アドレスを
リスンするように通信NICを設定し、仮想論理ユニット番号をSCSI装置にマッピ
ングすることによって登録コマンドに応答する。さらに、この極めて好ましい態
様によれば、各ターゲットは、マッピングを確立したときに、発信側にメッセー
ジを返す。
【0018】 好ましい態様によれば、データ転送コマンドは、マルチキャストを介して送信
される。さらに、好ましい態様によれば、マルチキャスト・グループの各SCSIメ
ンバーはデータ転送コマンドのステータスを返し、発信側はデータ転送コマンド
のあらゆるエラー・ステータスを処理する。
【0019】 さらに、他の態様によれば、各ターゲットは、ミラーリング終了コマンドが完
了したことを示すステータスを発信側に返す。
【0020】 本発明の目的は、IPマルチキャスティング機構を利用し、論理を大幅に簡略化
し、不要なデータ複製をなくし、たいていのIPルータですでに実現されている一
般的なマルチキャスティング論理を利用することである。本発明のこれらおよび
その他の目的、特徴、および利点は、以下の、好ましい態様の図面および詳細な
説明から容易に明らかになると思われる。
【0021】 本発明の上述および他の利点および特徴は、以下の詳細な説明および添付の図
面から容易に明らかになると思われる。
【0022】 発明の詳細な説明 好ましい態様についての以下の詳細な説明は多数の特定の詳細を含む。このよ
うな詳細を含んでいるのは、例示のために過ぎず、本発明を制限するものと理解
すべきではない。この議論全体にわたって、参照を容易にするために、様々な図
において類似の要素を類似の番号で参照する。
【0023】 図2は、ルータを含むTCP/IPバックボーン203を介して3つのターゲット、タ
ーゲット0 205A、ターゲット1 205B、およびターゲット2 205Bに接続されたSCSI
発信側201の例示的な態様を示している。極めて好ましい態様によれば、SCSI発
信側201、ターゲット205A、205B、205Cは、標準に指定されているようにインタ
ネットに接続されている。
【0024】 例示のために、ルータを含むTCP/IPバックボーンはグローバル・インタネット
の一部であると仮定されているが、TCP/IPプロトコルを介して相互接続されたSC
SIバスを利用するあらゆるシステムに本発明を適用できることに留意されたい。
したがって、本発明は、たとえばイントラネット上で容易に使用することができ
る。
【0025】 通常、ターゲットはSCSIバスを介してターゲット自体のSCSI装置または論理ユ
ニットに接続される。図2に示す例では、ターゲット0 205Aは2つのSCSI装置、
すなわち、論理ユニット0 207および論理ユニット1 209を含む。ターゲット1 20
5Bは3つのSCSI装置、すなわち、論理ユニット0 211、論理ユニット1 213、およ
び論理ユニット2 215を含む。さらに、1つのSCSI装置、すなわち、論理ユニッ
ト0 217を含むターゲット2 205Cも含まれている。この例では、ターゲット0 205
Aの論理ユニット0 207、ターゲット1 205Bの論理ユニット1 213、およびターゲ
ット2 205Cの論理ユニット0 217がミラーリングされるものとする。
【0026】 本発明による方法についての以下の説明でこの構成例を使用する。3つのSCSI
装置、すなわち、ターゲット0 205A上の論理ユニット0 207、ターゲット1 205B
上の論理ユニット1 213、およびターゲット2 205C上の論理ユニット0 217(ミラ
ーリングされた装置)上での、発信側201によって生成されたすべてのWRITEコマ
ンドのミラーリングについての説明に関連して、図2を参照する。具体的には、
発信側201からのすべてのWRITEコマンドが、ミラーリングされた装置によって実
行される。
【0027】 標準では、コマンドを、標準で定義されていない特殊コマンドを含めるように
展開することが取り上げられている。それにもかかわらず、このような特殊コマ
ンドに対処するために、発信側およびSCSI装置を、特殊コマンドを認識するよう
にいくらか修正する必要がある。本発明は、有利なことに、このような特殊コマ
ンドの使用に対処する標準に規定に従って実施される。
【0028】 したがって、ターゲットで利用されるSCSI装置は、標準SCSI装置に対していく
らか修正する必要がある。第1の点として、SCSI装置は、好ましくは標準に記載
されているように、TCP/IPネットワークに接続できる必要がある。さらに、本発
明によってSCSI装置を使用するために、データ・ミラーリングに関する特殊コマ
ンドを認識し、その後受信されたコマンドを適切に実行することができるように
装置を修正する必要がある。
【0029】 本発明では、非WRITE動作または標準に定義されているその他の動作の変更を
必ずしも考慮していない
【0030】 本発明では、WRITE動作の複数のターゲットへのミラーリングを実施するため
に以下の4つの段階を想定する。 マルチキャスト・グループ確立フェーズ データ転送フェーズ 応答受信フェーズ ミラーリング終了フェーズ
【0031】 これらのフェーズのそれぞれについて以下に詳しく論じる。マルチキャスト・
グループ確立フェーズが終了してからミラーリング終了フェーズが開始するまで
の間に複数のデータ転送フェーズおよび応答受信フェーズを有することが可能で
ある。
【0032】マルチキャスト・グループ確立フェーズ 再び図2の例を参照する。マルチキャスト・グループ確立フェーズは以下のス
テップを含むが、必ずしもこの順序である必要はない。まず、マルチキャスト・
グループの一部となる予定の指定された各ターゲットがマルチキャスト・アドレ
スに関連付けされる。次に、マルチキャスト・グループの一部となる予定の各SC
SI装置が特定の仮想論理ユニット番号に関連付けされる。このようにして、特定
の仮想論理ユニット番号に送信されるコマンドを、マルチキャスト・グループの
一部を構成する各論理ユニット番号にミラーリングすべきであると解釈すること
ができる。
【0033】 たとえば、図2のターゲット0、1、および2をマルチキャスト・グループに
関連付ける予定であると仮定する。第1のステップによれば、ターゲット0、1
、および2がマルチキャスト・アドレスに関連付けされる。第2に、ターゲット
0 205Aにある論理ユニット番号0 207を有する装置、ターゲット1 205Bにある論
理ユニット番号1 213を有する装置、ターゲット2 205Cにある論理ユニット番号0 217を有する装置が同じ仮想論理ユニット番号に関連付けされる。
【0034】 SCSI装置を、SCSI装置自体を仮想論理ユニット番号に関連付けるコマンドを認
識し、その仮想論理ユニット番号を指定するその後受信されるコマンドを実行し
、かつSCSI装置自体をこの仮想論理ユニット番号から分離するコマンドを認識す
ることができるように修正すべきであることが理解されると考えられる。
【0035】 前記のことによれば、マルチキャスト確立フェーズの一部に、ミラーリングに
参加する予定のSCSI装置にグループに関連する仮想論理ユニット番号を知らせる
ことが含まれる。その後、ミラーリングされる予定のWRITEコマンドは、この仮
想論理ユニット番号を指定し、ミラーリングされたSCSI装置の個々の実際の論理
ユニット番号を指定する必要はない。
【0036】 マルチキャスト確立フェーズの一部の目的は、ミラーリングに参加する予定の
すべてのSCSI装置にグループに関連する仮想論理ユニット番号を知らせることで
ある。ミラーリングすべきすべてのその後のWRITEコマンドはこの仮想論理ユニ
ット番号を指定する。
【0037】 マルチキャスト・グループが確立された後、マルチキャスト・アドレスまたは
この仮想論理ユニット番号を指定する、発信側によって送信されたあらゆるメッ
セージが、このグループの一部であるすべてのターゲットに分配される。さらに
、マルチキャスト・グループの仮想論理ユニット番号を指定するすべてのWRITE
動作(以下に詳しく説明する)が、この仮想論理ユニット番号に関連するすべて
のSCSI装置によって実行される。
【0038】 マルチキャスト確立フェーズは、ミラーリングされる予定のコマンドのシーケ
ンスの開始時に実行されるようになっている。有利なことに、マルチキャスト・
グループ確立フェーズは一度しか実行されない。しかし、マルチキャスト確立フ
ェーズは、必要に応じて、たとえばグループの定義を変更する場合に再実行する
ことができる。たとえば、マルチキャスト確立フェーズを再送信することによっ
て、グループにターゲットを追加するか、またはグループからターゲットを削除
することができる。
【0039】 マルチキャスト・グループ確立フェーズの好ましいプロトコルを示す図3を参
照する。マルチキャスト・グループ確立は以下の段階に従って行われる。
【0040】 1.発信側が、ミラーリングに参加する各ターゲットに、TCP/IP接続を介して
SCSI登録コマンドを送信する。図示のように、発信側は、ターゲット1に登録コ
マンド301を送信し、ターゲット2に登録コマンド303を送信し、最後のターゲッ
トnに最後の登録コマンド305を送信するまでこれを続ける。各登録コマンドは
各ターゲットのユニキャスト・アドレスに送信される。
【0041】 極めて好ましい態様によれば、登録コマンドは、以下に再現する「標準」の2.
8節で定義されている標準SCSIテキスト・コマンドを用いて実施される。
【0042】 標準SCSIテキスト・コマンドはテキスト・フィールドを含む。テキスト・フィ
ールドにおいて、登録コマンドは、上記に示したように以下の情報、すなわち、
マルチキャスト・グループIPアドレス、コマンドが送信されるSCSI装置のSCSI論
理ユニット、ミラーリングすべき将来のWRITEコマンドによって使用すべきSCSI
仮想論理番号を指定する。
【0043】 以下に、ミラー・セッションに参加する3つの論理ユニット(luns)を有する
ターゲットに対する好ましい登録コマンドのテキスト・フィールドの一例を示す
。 コマンド=登録 マルチキャスト_グループ_ip=X.X.X.X\0 lun_マップ=(lun1#",lun2#,lun2#),vlun#)\0
【0044】 同じターゲット上のすべての3つのSCSI装置を同じ仮想装置にマッピングする
必要があることに留意されたい。図2に示す例を検討されたい。使用すべきマル
チキャスト・グループipアドレスが128.12.15.3であると仮定する。ターゲット
1に送信される登録コマンドは、以下に示すように、仮想論理ユニット番号およ
び論理ユニット番号1を指定し、それによって、ターゲット1の装置に、該装置
が、該装置自体を指定された仮想論理ユニット番号に関連付けする必要があるこ
とを論理ユニット1で知らせる。登録コマンドにおける以下のテキスト部分は、
上記に示したフォーマットを前述の例に使用する。 コマンド=登録\0 マルチキャスト_グループ_ip=128.12.15.3\0 lun_マップ=(1,5)\0 lun 1を仮想lun 5にマッピングする
【0045】 上記に示したように、本発明によってミラーリングに参加するSCSI装置は、登
録コマンドを認識し登録コマンドの下で動作するように修正する必要がある。
【0046】 単一のターゲットにある複数のSCSI装置がグループの一部になることが可能で
ある。この例では、登録コマンドは複数の論理ユニット番号を指定し、したがっ
て、このターゲットにあるすべての指定されたSCSI装置はそれ自体を仮想論理ユ
ニット番号に関連付けする。あるいは、各SCSI装置ごとに1つの複数の登録コマ
ンドを、グループの一部である複数のSCSI装置を有するターゲットに送ることが
できる。
【0047】 2.ターゲットは、登録コマンドに応答して、グループIPアドレスを用いてマ
ルチキャスト・グループに登録することによって応答する。図3に示すように、
ターゲット1はマルチキャスト・グループ307に登録し、ターゲット2はマルチ
キャスト・グループ309に登録し、やはりマルチキャスト・グループ311に登録す
るターゲットnまで同様な動作が行われる。ターゲットは、1)指定されたマル
チキャスト・アドレスをリスンするように通信NICを設定し、2)仮想lun番号に
実装置をマッピングするようにターゲットの内部(実現態様特有の)データ構造
を設定することによって、マルチキャスト・グループに登録する。
【0048】 3.ターゲット内のSCSI装置は、登録コマンドに応答して、登録コマンドによ
って指定されたSCSI仮想論理ユニット番号と装置の実SCSI論理ユニット番号との
マッピングを確立する。図3に示すように、各ターゲットを通過した登録コマン
ドに応答して、ターゲット1にあるSCSI装置は、指定されたマッピング313を確
立し、ターゲット2にあるターゲットとされるSCSI装置は、指定されたマッピン
グ315を確立し、やはり指定された仮想論理ユニット番号と論理ユニット番号と
のマッピング317を確立する最後のターゲットnにある最後のSCSI装置まで同様
な動作が行われる。
【0049】 4.各ターゲットは好ましくは、マルチキャスト・グループの一部として応答
するために実行される動作が完了したことに応答して、このターゲットが登録プ
ロセスを完了した旨のメッセージを発信側に送り返す。極めて好ましい態様によ
れば、各ターゲットは、このターゲットがマルチキャスト・グループに登録し、
ターゲットにある指定されたSCSI装置が適切なマッピングを確立した後で応答を
送信する。好ましくは、このメッセージは、標準の2.9条に指定されており、以
下に再現するように、発信側にSCSIテキスト応答フレームとして返される。
【0050】 図3に示すように、各ターゲットは、発信側のユニキャスト・アドレスに登録
確認メッセージを送信する。したがって、ターゲット1は登録確認319を発信側
に返し、ターゲット2は登録確認321を発信側に返し、最後のターゲットnが登
録確認323を発信側に返すまで同様な動作が行われる。
【0051】 マルチキャスト・グループ確立フェーズは、発信側が、すべてのターゲット、
およびこれらのターゲット上の、指定されているすべてのSCSI装置がグループに
登録されたことを確認する確認をマルチキャスト・グループ内のすべてのターゲ
ットから受信したときに完了する。
【0052】 他の一態様によれば、同じターゲット群が、それぞれの異なる装置上の複数の
セッションに参加することができる。この態様では、同じターゲット群が複数の
マルチキャスト・グループに含まれる。しかし、通常、それぞれの異なるマルチ
キャスト・グループごとに異なる発信側が責任を負う。再び図2の例を参照する
と分かるように、第1のミラーリング・セッションは、論理ユニット番号0を有
するターゲット0にある装置、論理ユニット番号1を有するターゲット1にある
装置、および論理ユニット番号0を有するターゲット2にある装置を含む一群の
装置を含んでよい。第2のミラーリング・セッションは異なる装置から成ってい
てよい。第1群の装置は、第1のミラーリング・セッションである発信側からの
WRITEコマンドをミラーリングすることができ、第2群の装置は、第2のミラー
リング・セッションとして別の発信側からのWRITEコマンドをミラーリングする
。この例では、第1群と第2群の両方に同じターゲットが含まれるので、第1群
のマルチキャスト・アドレスと第2群のマルチキャスト・アドレスは同じであっ
てよい。それにもかかわらず、第1群の仮想論理ユニット番号は、第2群の仮想
論理ユニット番号と異なる必要がある。
【0053】 他の態様によれば、同じターゲット群が複数のミラーリング・セッションに参
加する。しかし、この態様によれば、両方の装置群が同じ発信側からのWRITEコ
マンドをミラーリングする。
【0054】 他の態様では、複数の発信側が同じミラーリング・セッションに参加すること
ができる。しかし、この場合、そのセッションに登録する発信側は、TCP/IPまた
は他の任意の通信手段を通じて他の発信側に その セッションに関するマルチキ
ャスト・アドレスおよび仮想論理ユニットを知らせる必要がある。
【0055】 従来のシステムでは、ターゲットがグループに登録するか、またはターゲット
自体をマルチキャスト・アドレスに関連付けするときは、そのターゲットが登録
プロセスを開始しなければならない。したがって、従来のシステムでは、発信側
が映画などのあるオーディオ・ビジュアル・データを送信しており、ターゲット
がこのデータを受信する必要がある場合、ターゲットをマルチキャスト・アドレ
スに登録するかまたは関連付けすることはこのターゲットの責任である。しかし
、本発明によれば、発信側がグループを確立する責任を負う。すなわち、発信側
は、所定のターゲットに登録コマンドを送信することによって、どのターゲット
がグループに参加するかを制御する。
【0056】データ転送フェーズ データ転送フェーズは、発信側がマルチキャスト・アドレスにWRITEコマンド
を送信するたびに実行される。この場合、マルチキャスト・グループが確立され
ていると仮定される。データ転送フェーズの間、書き込まれているデータは、発
信側から、マルチキャスト・グループの一部である各ターゲットに転送される。
【0057】 データ転送フェーズによれば、マルチキャスト・グループにWRITEコマンドが
送信され、そのため、マルチキャスト・グループの一部を構成する各論理ユニッ
トに対するWRITE入出力が行われる。データ転送フェーズは好ましくは以下の段
階に従って行われる。
【0058】 1.発信側は、マルチキャスト・グループIPアドレス、すなわち、マルチキャ
スト・グループ確立フェーズによって確立されたグループにSCSI WRITE 401コマ
ンドを送信する。このコマンドは、ミラーリングに参加しているすべてのターゲ
ットにマルチキャストされる。有利なことに、これは、好ましくは標準に従って
、任意の標準SCSIコマンドをマルチキャストするのと同様に行われる。データ転
送フェーズに関する図示の好ましいプロトコルでは、発信側からマルチキャスト
・グループ全体に単一のWRITEコマンド401が送信される。
【0059】 代表的な書込みコマンドは、以下に再現する2.7節の標準に記載されている。
【0060】 2.次いで、マルチキャスト・グループの各ターゲット番号は、有利なことに
標準的な転送準備完了信号(「RTT」)を介して、すなわち、好ましくは標準に
従ってSCSI応答として送信される標準的な転送準備完了信号(「RTT」)を介し
て発信側に準備完了ステータス表示を返す。RTTは、マルチキャスト・グループ
の一部として構成されたあらゆるターゲットから送信する必要がある。したがっ
て、図4に示すように、ターゲット1はRTT応答403を返し、ターゲット2はRTT
応答405を返し、やはりRTT応答407を返す最後のターゲットnまで同様な動作が
行われる。発信側は、実際のデータ伝送自体を送信する前に、あらゆるターゲッ
トからRTT応答を受信するまで待つ。
【0061】 3.次いで、発信側は、各ターゲットからRTTを受信した後、マルチキャスト
・グループIPアドレスおよび対応する仮想論理ユニット番号にコマンド409のデ
ータ部分を送信する。説明されているように、データはこれによって単一のデー
タコマンドを用いて複数のSCSI装置へ転送する。
【0062】 極めて好ましい態様によれば、発信側は、後述の応答フェーズ中にマルチキャ
スト・グループの各メンバーからWRITEコマンドのステータスを得ることができ
る。
【0063】 すべてのデータを送信する際のエラーにいくつかの方法で対処することができ
る。従来、従来のシステムにおけるグループの各メンバーに、発信側によってマ
ルチキャスト・アドレスに送信されたあらゆるデータ・ブロックを受信させる標
準的な方法はなかった。聴覚/視覚データを送信する場合、たとえば、映画やテ
レビ会議のように、データの喪失が重要ではない場合がある。このような状況で
は、ターゲットが、送信されたブロックのうちの1つをときどき受信しなくても
致命的な結果には至らない。このような状況では、ブロックが失われても、ター
ゲットは1秒の数分の1の信号を失うに過ぎず、さらに、再送信されたブロック
を受信すると望ましくない結果が得られる恐れがある。それにもかかわらず、デ
ータWRITEコマンドを適切にミラーリングする際、たとえば冗長なデータ記憶を
行う際に、送信されたデータの完全性を維持するには、発信側によって送信され
たあらゆるデータ・ブロックをあらゆるターゲットが受信することが必須である
【0064】 標準SCSI WRITEコマンドは、書き込まれるデータの量を指定する。その結果、
好ましい態様では、SCSI装置は、この装置がWRITEコマンドの一部としてどのく
らいのデータを受信する必要があるかを厳密に認識する。WRITEコマンドから受
信したデータが予想された量よりも少ないSCSI装置があった場合、そのSCSI装置
は、受信されていないデータがあることを発信側に報告する。
【0065】 図5を参照する。ここに、発信側からマルチキャスト・グループにWRITEコマ
ンド401が送信されたことが示されている。この特定の例では、各ターゲットが
データ障害を経験する。したがって、ターゲット1はデータ障害レポート501を
返し、ターゲット2はデータ障害レポート503を返し、やはりデータ障害レポー
ト505を返す最後のターゲットnまで同様な動作が行われる。この状況では、発
信側がWRITEコマンド507全体に再送するのが適切である。
【0066】 より典型的には、データ転送エラーにおいて、データ障害を経験するのは1つ
のターゲットまたは1つのターゲットにある1つのSCSI装置だけである。図6を
参照する。この場合、WRITEコマンド401は発信側からマルチキャスト・グループ
に送信されている。このWRITEコマンドは1つのターゲットにデータを届けてい
る。ターゲット1は、データ障害を経験しており、発信側にデータ障害レポート
601を返す。次いで、発信側は、WRITEコマンド603がデータを届けたことを示し
たターゲットに、WRITEコマンド603をユニキャストとして再送する。このことは
、データが届けられた他のターゲットに対して繰り返される。
【0067】 図7を参照する。データ転送フェーズにおいてエラーに対処し、WRITEコマン
ドの再送を回避する他の方法として、受信されなかったデータ・ブロックのみを
再送することが望ましい場合がある。この方法によれば、発信側は伝送の各デー
タ・ブロックにラベル付けまたは番号付けする。このデータを受信したSCSI装置
は次いで、受信したデータ・ブロックの番号またはラベルを記録する。SCSI装置
によってWRITEコマンドの間に受信されたデータ量が、データまたはデータ・ブ
ロック701の総量よりも少ない場合、SCSI装置は、どのブロックが受信されてい
ないかを判定し、失われたデータ・ブロックのみの再送を要求することができる
(701)。次いで、発信側は、再送を要求したSCSI装置に、失われたデータ・ブ
ロックのみをユニキャストを介して再送する(703)。この方法によれば、SCSI
装置は、データ・ブロック番号およびラベルを監視できるように修正される。
【0068】 上記の説明は、データ送信エラーの対処の例によるものである。それにもかか
わらず、グループ内のあらゆるターゲットに、発信側によって送信されたすべて
のデータ・ブロックを受信させる他の解決策が、当業者には明らかになると考え
られる。
【0069】応答受信フェーズ 発信側がマルチキャスト・アドレスにWRITEコマンドを送信するたびに実行さ
れる応答受信フェーズを有すると有利である。応答受信フェーズ中に、各ターゲ
ットは、WRITEコマンドに関連するステータス情報を発信側に報告する。次いで
、発信側は、WRITEコマンドがマルチキャスト・グループ・レベルで成功したか
どうかを判定することができる。
【0070】 再び図4を参照する。データ転送フェーズに続いて応答受信フェーズが実行さ
れる。これは以下の段階で行われる。
【0071】 1.従来、SCSI装置は常に、WRITEコマンドのステータスを発信側に報告して
いる。好ましい態様によれば、各SCSI装置は、そのSCSI装置が従来のWRITEコマ
ンドのステータスを報告するのと同様にマルチキャストWRITEコマンドのステー
タスを示す。WRITEコマンドによって指定された仮想論理ユニット番号に関連す
る各SCSI装置は、応答受信フェーズ中に、そのSCSI装置のステータス情報を発信
側に送信する。したがって、図示のように、WRITEコマンド409のデータ部分に続
いて、ターゲット1にあるSCSI装置はステータス応答411を送信し、ターゲット
2にあるSCSI装置はステータス応答413を送信し、やはり発信側にステータス応
答415を送信するターゲットnにある最後のSCSI装置まで同様な動作が行われる。
好ましくは、これらは従来のステータス応答であり、ユニキャストを介して発信
側のTCP/IPアドレスに送信される。応答がマルチキャストである必要はない。
【0072】 発信側自体は、発信側がマルチキャスト・グループ内のすべてのターゲットか
らのステータス応答411、413、415を受信するまで待つ必要がある。特定のター
ゲットにあるSCSI装置からステータス応答が届かない場合にタイムアウトする機
構を設けてよい。
【0073】 2.すべてのターゲットから受信されたすべての応答が、WRITEが首尾良く完
了したことを示している場合、発信側は「動作成功」表示をアプリケーションに
返すことができる(417)。一方、1つの応答が障害を示しているか、または受
信されない場合、このエラーに対処する必要がある。1つの可能な処置は、発信
側からアプリケーションにステータスを返すことである。この場合、ステータス
は、不良なWRITEを示し、障害のあるターゲットを一意に識別し、それによって
、アプリケーション自体が、それが選択することのできる任意の回復処置をとる
ことができる。あるいは、発信側自体が、障害のあるターゲットのユニキャスト
TCPアドレスを用いてこのターゲットに対してWRITE動作を再試行することができ
る。
【0074】 ある態様では、特にデータ転送のステータスが状況で、応答受信フェーズを省
略してよい。しかし、たいていのデータ監視状況では、各書込み動作が首尾良く
完了した(または首尾良く完了しなかった)ことをアプリケーション・プログラ
ムが認識する必要があることが予想される。
【0075】ミラーリング終了フェーズ ミラーリング終了フェーズは、マルチキャスト・グループを解散させるのに用
いられる。具体的には、ミラーリング終了フェーズは、マルチキャスト・アドレ
スからターゲットを分離し、仮想論理ユニット番号からSCSI装置を分離する。マ
ルチキャスト・グループWRITE(または一連のWRITE)が確立され完了した後でこ
のフェーズを1回実行すればよいようにすべきである。ミラーリング終了フェー
ズが実行された後、発信側からのWRITEコマンドがマルチキャスト・グループの
メンバーにミラーリングされることはない。
【0076】 図8を参照する。終了フェーズは以下の段階に従って行われる。
【0077】 1.発信側は、ミラーリングが終了したことを示すコマンドを送信する(801
)。好ましくは、これは標準テキストSCSIコマンドを介して行われ、特定のマル
チキャスト・グループ・アドレスに対するミラーリング終了フェーズを示す。こ
のコマンドはまた好ましくは、SCSIコマンドに基づくコマンドである。好ましい
態様によれば、ミラーリング終了コマンドのテキスト・フィールドは、終了する
マルチキャスト・グループ・アドレスと仮想論理ユニット番号の両方を指定する
【0078】 ミラーリング終了コマンドのテキスト部分の好ましい態様のフォーマット例を
以下に示す。 コマンド=終了\0 仮想_lun=vlun#\0
【0079】 ミラーリング終了コマンドを受信した各ターゲットは、マルチキャスト・グル
ープからそれ自体を登録解除し、さらに、この特定のセッションに関する、その
ターゲットの論理ユニット番号と仮想論理ユニット番号との間の関連付けを削除
する。図8に示すように、第1のターゲットはそれ自体を登録解除し(803)、
第2のターゲットはそれ自体を登録解除し(805)、やはりそれ自体を登録解除
する(807)最後のターゲットnまで同様な動作が行われる。登録解除では、以下
の2つのことが行われ、すなわち、1)ターゲットの内部データ構造から、装置
と仮想装置との間のマッピングが削除され、2)これがターゲットの最後の監視
セッションである場合に、通信NICがマルチキャストIPアドレスのリスンを停止
するよう命令される。
【0080】 3.登録解除タスクが完了した後、各ターゲットは次いで、好ましくは標準の
2.9節(以下に再現する)に指定された、ミラーリング終了フェーズが完了した
ことを示すテキスト応答フレームを、発信側に送信する。したがって、登録解除
が完了した後、ターゲット1は登録解除完了テキスト応答フレーム809を発信側
に返し、ターゲット2は同様の登録解除完了テキスト応答フレームを発信側に返
し811、やはり登録完了応答フレーム813を発信側に返す最後のターゲットnまで
同様な動作が行われる。
【0081】 本発明を例示するための特定の例に関連して本発明を説明した。それにもかか
わらず、本発明は、説明した例の多数の変形態様を包含する。たとえば、3つの
例示的なターゲットに関連して本発明を説明したが、本発明はこれよりも多いか
または少ない数のターゲットにも適用可能である。さらに、図示の例では各ター
ゲット上に1つ、2つ、または3つのSCSI装置が含まれるが、本発明は、各ター
ゲット上に3つよりも多くの論理ユニットがある場合にも適用可能である。さら
に、図示の例では、発信側が、ルータを含むTCP/IPバックボーンを通してターゲ
ットと通信すると仮定されている。しかし、TCP/IPバックボーンおよび/または
ルータを利用せずに本発明を実施することは技術的に可能である。さらに、ある
例では、ミラーリングされるデータ転送コマンドがWRITEコマンドであると仮定
されている。しかし、本発明は、技術的にはWRITEコマンドでない他のデータ転
送コマンドにも適用可能である。
【0082】 さらに、本発明の好ましい態様では、標準で確立されているSCSI/TCPフォーマ
ットが利用されているが、SCSI装置が各コマンドを認識するようになっているか
ぎり、このようなコマンドを、標準を満たさないように実施することも可能であ
る。さらに、当業者には、本明細書で概略的に説明したエラー回復方法以外の適
切なエラー回復方法があることが認識されると思われる。本発明は、このような
エラー回復方法を包含するようになっている。プロトコルをターゲット1、2、
、、nによって例示したが、本発明は、1つのみのターゲットを含む任意の数の
ターゲットにも適用可能である。マルチキャスト・グループに登録しマッピング
を確立する特定の方法について一例を挙げて説明したが、同様に適切な方法が明
らかであり、かつ本発明によって包含される。さらに、プロトコルに従った伝送
の交換を順次示したが、伝送のシーケンスは異なる順序であってよく、依然とし
て本発明の範囲内である。
【0083】 参考として、標準の現行のバージョンの2.7節、2.8節、および2.9節を以下に
再現する。
【0084】 2.7 SCSIデータ出力およびSCSIデータ入力 代表的なデータ転送では、データ・ペイロードの長さ、このデータ転送によっ
てもたらされるターゲット転送タグ、およびバッファ・オフセットが指定される
。(発信側からターゲットへの)WRITEの代表的なSCSIデータPDUは以下のフォー
マットを有する。
【0085】 (ターゲットから発信側への)READの代表的なSCSIデータ・パケットは以下の
フォーマットを有する。
【0086】 2.7.1 F(最終ビット) 発信データの場合、このビットは、請求されていないデータの最後のPDUまた
はR2Tに対するシーケンスの最後のPDUについては1である。着信データの場合、
このビットは、コマンドに関連する最後の入力データPDUについては(ステータ
スを含む場合でも)1である。
【0087】 2.7.2 ターゲット転送タグ 転送がR2Tに対するものである場合、発信データ上でターゲットにターゲット
転送タグが与えられる。この場合、ターゲット転送タグ・フィールドは、R2Tを
備えるターゲット転送タグの複製である。
【0088】 ターゲット転送タグ値は、全ビット1値(0x'ffffffff')が、予約されており
、ターゲット転送タグが供給されないことを意味していることを除いて、このプ
ロトコルでは指定されない。ターゲット転送タグが与えられた場合、LUNフィー
ルドは、妥当な値を保持し、かつコマンドによって指定されたあらゆるものに整
合しなければならない。そうでない場合、LUNフィールドは予約される。
【0089】 2.7.3 StatSN このフィールドは、Sビットが1に設定された場合にのみ設定しなければなら
ない。
【0090】 2.7.4 データSN 入力(読取り)データPDUの場合、データSNは、発信側タスク・タグによって
識別されたコマンドに対するデータ転送内の(0で始まる)データPDU番号であ
る。出力(書込み)データPDUの場合、データSNは現在の出力シーケンス内の(
0で始まる)データPDU番号である。現在の出力シーケンスは、発信側タスク・
タグによって識別されるか(請求されていないデータの場合)、または1つのR2
Tについて生成されたデータ・シーケンスである(R2Tによって請求されたデータ
の場合)。
【0091】 どんな入力データ・シーケンスまたは出力データ・シーケンスでも含まれるPD
Uの番号は2‡‡32-1よりも小さくなければならない。
【0092】 2.7.5 バッファ・オフセット バッファ・オフセット・フィールドは、完全なデータ転送に対するこのPDUペ
イロード・データのオフセットを含む。バッファ・オフセットと長さの和が、コ
マンドの予期される転送長を超えてはならない。
【0093】 入力データ順序は、切断−再接続モード・ページ・ビット(EMDP)によって支
配される。このビットが0である場合、ターゲットはバッファ・オフセットの小
さい順にパケットを供給しなければならない。
【0094】 バースト(R2Tを満たす初期データPDUシーケンスまたは任意のデータPDUシー
ケンス)内の出力データは、バッファ・オフセットの小さい順に供給しなければ
ならない。
【0095】 2.7.6 データ・セグメント長 これは、SCSIデータ入力PDUまたはSCSIデータ出力PDUのデータ・ペイロード長
である。0長データ・セグメントの送信は回避する必要がある。
【0096】 2.7.7 フラグ 首尾良く完了した特定のSCSIコマンドについて最後にターゲットから発信側に
送信されるSCSIデータ・パケットは任意に、データ転送に関するコマンド・ステ
ータスを含んでよい。この場合、センス・データをコマンド・ステータスと共に
送信することはできない。コマンドがエラーで終了した場合、応答およびセンス
・データをSCSI応答PDUで送信しなければならない(すなわち、SCSIデータ・パ
ケットで送信してはならない)。双方向コマンドの場合、ステータスをSCSI応答
PDUで送信しなければならない。
【0097】 b0 S(ステータス)−コマンド・ステータス・フィールドがステータスを含む
ことを示すように設定される。このビットが1に設定された場合、Fビットも1
に設定しなければならない。 b1-2 SCSI応答と同様 b3-6 使用されない(0に設定する必要がある)。
【0098】 StatSNフィールド、コマンド・ステータス・フィールド、残りカウント値フィ
ールドは、Sビットが1に設定された場合にのみ意味のある内容を有する。
【0099】 2.8 テキスト・コマンド テキスト・コマンドは、情報を交換できるように設けられると共に、将来の拡
張用に設けられる。このコマンドによって、発信側は、ターゲットにその機能を
知らせ、かついくつかの特殊な動作を要求することができる。
【0100】 2.8.1 F(最終)ビット このビットは、1に設定されると、これがコマンドのシーケンス中の最後のま
たは唯一のテキスト・コマンドであることを示す。他の場合には、コマンドがさ
らに後に続くことを示す。
【0101】 2.8.2 発信側タスク・タグ このテキスト・コマンドに関する、発信側によって割り当てられた識別子。
【0102】 このコマンドがコマンドのシーケンスの一部(ログインフェーズまたはテキス
トコマンドのシーケンス)として送信される場合、発信側タスク・タグは、シー
ケンス内のすべてのコマンドについて同じでなければならない(リンクされたSC
SIコマンドと同様)。
【0103】 2.8.3 テキスト 発信側は、UTF-8ユニコードで符号化された1組のキー=値対またはキー=リ
スト対をターゲットに送信する。キーと値は「=」(0x3D)デリミタによって分
離される。多くのキー=値対は、ヌル(0x00)デリミタを用いて分離することに
よってテキスト・ブロックに含めることができる。リストとは、コンマ(0x2c)
によって区切られた1組の値である。大きなバイナリ項は、その16進表現(たと
えば、8190は0x1FFE)または10進表現を用いて符号化することができる。個々の
値の最大長(値のストリング表現ではない)は255バイトである。
【0104】 テキスト・コマンドまたは応答のデータ長は4096バイト未満である必要がある
。どのキーも255文字よりも多くの文字を含んではならない。
【0105】 文字ストリングは平文で表される。数値およびバイナリ値は、10進数または16
進0x'ffff'表記を用いて表される。結果は特定のキーを用いて調整される。
【0106】 ターゲットは、その応答を発信側に送り返すことによって応答する。応答テキ
スト・フォーマットは要求テキスト・フォーマットに類似している。
【0107】 いくつかの基本的なキー=値対が付録Aおよび付録Dに記載されている。X拡
張フォーマットを除いて、これらのキーはすべて、iSCSI発信側およびターゲッ
トによってサポートされなければならない。
【0108】 製造業者は、Xと、その後に続く製造業者の(反対にされた)ドメイン名とを
接頭辞として付加することによって新しいキーを導入することができる。たとえ
ば、ドメインacme.comを所有している会社は以下のキーを発行することができる
。 X-com.acme.bar.foo.do_something=0000000000000003
【0109】 ターゲットに理解されないその他のキーは、基本機能に影響を与えずに無視す
ることができる。テキスト応答が、要求されたキーを含んでいない場合、発信側
は、このキーがターゲットに理解されなかったと仮定するか、または必要に応じ
て、応答が「none(なし)」であったと仮定しなければならない。
【0110】 テキスト動作は通常、パラメータ設定/交渉のための動作であるが、いくつか
のアクティブ動作を実行するのに用いることもできる。
【0111】 時間のかかるテキスト動作をそれ自体のテキスト・コマンドに入れることを推
奨する。
【0112】 セッションは、任意の所与の時間に1つの未処理のテキスト・コマンドまたは
テキスト・コマンド・シーケンスのみを有してよい。
【0113】 2.9 テキスト応答 テキスト応答PDUは、発信側のテキスト・コマンドに対するターゲットの応答
を含む。テキスト・フィールドのフォーマットはテキスト・コマンドのフォーマ
ットと一致する。
【0114】 2.9.1 (最終)ビット Fビットは、最終ビットが1に設定されたテキスト・コマンドに応答して1に
設定されると、ターゲットがその動作を終了したことを示す。そうでない場合、
Fビットは、最終ビットが1に設定されたテキスト・コマンドに応答して0に設
定された場合、ターゲットが実行すべきことがまだあることを示す(後続のテキ
スト・コマンドを要求する)。Fビットが0に設定されたテキスト・コマンドに
応答してFビットが1に設定されたテキスト応答はプロトコル・エラーである。
【0115】 2.9.2 発信側タスク・タグ 発信側タスク・タグは、最初のテキスト・コマンドまたはログイン発信側タス
ク・タグで使用されるタグと一致する。
【0116】 2.9.3 テキスト応答データ テキスト応答データ・セグメントは、テキスト・コマンドと同じキー=値フォ
ーマットであり、長さおよび符号化に関する同じ制約を有する応答を含む。付録
Cに、いくつかの基本的なテキスト・コマンドおよびその応答がリストされてい
る。テキスト応答に、要求されたキーが含まれていない場合、発信側は、そのキ
ーがターゲットに理解されなかったか、または回答が<key>=none(なし)である
と仮定する。
【0117】 テキスト応答キー=値対は、必要に応じてコマンド・キー=値対と同じ順序で
供給しなければならない。
【0118】 上記に概略的に説明した特定の態様に関連して本発明を説明したが、当業者に
は多数の代替態様、修正態様、および変形態様が明らかになると思われる。した
がって、上記の本発明の好ましい態様は、例示的なものであり、制限的なもので
はない.特許請求の範囲で定義される本発明の趣旨および範囲から逸脱せずに様
々な変更を加えることができる。
【図面の簡単な説明】
【図1】 リモートにミラーリングされる一次および二次データ記憶シーケ
ンスを示す従来技術のシステムとリンクのブロック図である。
【図2】 インタネット(TCP/IPバックボーンおよび適切なルータ)を介し
てターゲットに接続されたSCSI発信側を示すブロック図である。
【図3】 登録コマンド・プロトコルを示す図である。
【図4】 データ転送フェーズ・プロトコルを示す図である。
【図5】 データ転送エラー処理プロトコルの1バージョンを示す図である
【図6】 データ転送エラー処理プロトコルの他のバージョンを示す図であ
る。
【図7】 データ転送エラー処理プロトコルの第3のバージョンを示す図で
ある。
【図8】 ミラーリング終了フェーズ・プロトコル用のプロトコルを示す図
である。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE,TR),OA(BF ,BJ,CF,CG,CI,CM,GA,GN,GW, ML,MR,NE,SN,TD,TG),AP(GH,G M,KE,LS,MW,MZ,SD,SL,SZ,TZ ,UG,ZW),EA(AM,AZ,BY,KG,KZ, MD,RU,TJ,TM),AE,AG,AL,AM, AT,AU,AZ,BA,BB,BG,BR,BY,B Z,CA,CH,CN,CO,CR,CZ,DE,DK ,DM,DZ,EC,EE,ES,FI,GB,GD, GE,GH,GM,HR,HU,ID,IL,IN,I S,JP,KE,KG,KR,KZ,LC,LK,LR ,LS,LT,LU,LV,MA,MD,MG,MK, MN,MW,MX,MZ,NO,NZ,PL,PT,R O,RU,SD,SE,SG,SI,SK,SL,TJ ,TM,TR,TT,TZ,UA,UG,UZ,VN, YU,ZA,ZW Fターム(参考) 5B065 BA01 EA31 5B082 DE05 5K030 GA08 HB18 HC01 HC20 HD03 HD09 KA05 KX28 LD02

Claims (46)

    【特許請求の範囲】
  1. 【請求項1】 ネットワークにおいてデータ転送コマンドをミラーリングす
    る方法であって、ネットワークが、SCSI発信側および複数のSCSIターゲットを含
    み、発信側およびターゲットが、TCP/IPネットワークに接続されており、 (a)マルチキャスト・アドレスおよび仮想論理ユニット番号を含む登録コマ
    ンドを発信側からTCP/IPネットワークを介して複数のターゲットのそれぞれに送
    信する段階と、 (b)登録コマンドに応答して、SCSI装置と仮想論理ユニット番号とマルチキ
    ャスト・アドレスとの間の関連性を示すマッピングを各SCSI装置で確立する段階
    と、 (c)マルチキャスト・グループ・アドレスを示すSCSIデータ転送コマンドを
    発信側から送信する段階と、 (d)マルチキャスト・グループの各メンバーにおいてデータ転送コマンドを
    受信し、該コマンドに応答してデータを転送する段階と、 (e)マルチキャスト・グループの各SCSIメンバーにおいて、指定されたデー
    タ転送コマンドを実行する段階とを含む方法。
  2. 【請求項2】 (f)発信側から複数のターゲットのそれぞれにミラーリン
    グ終了コマンドを送信する段階をさらに含む、請求項1記載の方法。
  3. 【請求項3】 ミラーリング終了コマンドによって、仮想論理ユニット番号
    からの分離が行われる、請求項2記載の方法。
  4. 【請求項4】 ミラーリング終了コマンドによって、マルチキャスト・グル
    ープからの分離が行われる、請求項2記載の方法。
  5. 【請求項5】 データ転送コマンドがWRITEコマンドである、請求項1記載
    の方法。
  6. 【請求項6】 WRITEコマンドが、仮想論理ユニット番号を指定する、請求
    項5記載の方法。
  7. 【請求項7】 複数のWRITEコマンドがある、請求項5記載の方法。
  8. 【請求項8】 登録コマンドが、複数のターゲットのそれぞれに対応するユ
    ニキャスト・アドレスに送信される、請求項1記載の方法。
  9. 【請求項9】 登録コマンドが、標準SCSIテキスト・コマンド・フォーマッ
    トを有する、請求項1記載の方法。
  10. 【請求項10】 複数のターゲットのそれぞれが、通信NICをマルチキャス
    ト・アドレスをリスンするように設定し、仮想論理ユニット番号をSCSI装置にマ
    ッピングすることによって登録コマンドに応答する、請求項1記載の方法。
  11. 【請求項11】 複数のターゲットのそれぞれが、マッピングを確立した後
    、発信側にメッセージを返す、請求項1記載の方法。
  12. 【請求項12】 データ転送コマンドがマルチキャストを介して送信される
    、請求項1記載の方法。
  13. 【請求項13】 マルチキャスト・グループの各SCSIメンバーがデータ転送
    コマンドのステータスを返し、発信側がデータ転送コマンドのあらゆるエラー・
    ステータスを処理する、請求項1記載の方法。
  14. 【請求項14】 複数のターゲットのそれぞれが、ミラーリング終了コマン
    ドが完了したことを示すステータスを発信側に返す、請求項2記載の方法。
  15. 【請求項15】 ネットワークにおいてデータ転送コマンドをミラーリング
    する方法であって、ネットワークが、SCSI発信側および複数のSCSIターゲットを
    含み、発信側およびターゲットが、TCP/IPネットワークに接続されており、 (a)マルチキャスト・アドレスおよび仮想論理ユニット番号を含み、複数の
    ターゲットのそれぞれに対応するユニキャスト・アドレスに送信され、標準SCSI
    テキスト・コマンド・フォーマットを有する登録コマンドを、各ターゲットが通
    信NICをマルチキャスト・アドレスをリスンするように設定し仮想論理ユニット
    番号をSCSI装置にマッピングすることによって登録コマンドに応答する複数のタ
    ーゲットのそれぞれに、発信側からTCP/IPネットワークを介して送信する段階と
    、 (b)登録コマンドに応答して、SCSI装置と仮想論理ユニット番号とマルチキ
    ャスト・アドレスとの間の関連性を示すマッピングを各SCSI装置で確立する段階
    と、 (c)仮想論理ユニット番号を指定するWRITEコマンドであり、マルチキャス
    ト・グループ・アドレスを示すSCSIデータ転送コマンドを、発信側から送信する
    段階と、 (d)マルチキャスト・グループの各メンバーにおいてデータ転送コマンドを
    受信し、該コマンドに応答してデータを転送する段階と、 (e)マルチキャスト・グループの各SCSIメンバーにおいて、指定されたデー
    タ転送コマンドを実行する段階と、 (f)仮想論理ユニット番号からの分離を生じさせるミラーリング終了コマン
    ドを発信側から複数のターゲットのそれぞれに送信する段階とを含む方法。
  16. 【請求項16】 ネットワークにおいてデータ転送コマンドをミラーリング
    するシステムであって、ネットワークが、SCSI発信側および複数のSCSIターゲッ
    トを含み、発信側およびターゲットのすべてが、TCP/IPネットワークに接続され
    ており、 (a)登録コマンドを発信側からTCP/IPネットワークを介して複数のターゲッ
    トのそれぞれに送信され、マルチキャスト・アドレスおよび仮想論理ユニット番
    号を含む登録コマンドと、 (b)登録コマンドに応答して各SCSI装置で確立され、SCSI装置と仮想論理ユ
    ニット番号とマルチキャスト・アドレスとの間の関連性を示すマッピングと、 (c)発信側から送信され、マルチキャスト・グループ・アドレスを示すSCSI
    データ転送コマンドと、 (d)マルチキャスト・グループの各メンバーにおける、データ転送コマンド
    の受信に応答したデータの転送とを含むシステム。
  17. 【請求項17】 (f)発信側から複数のターゲットのそれぞれに送信され
    るミラーリング終了コマンドをさらに含む、請求項16記載のシステム。
  18. 【請求項18】 ミラーリング終了コマンドによって、仮想論理ユニット番
    号からの分離が行われる、請求項17記載のシステム。
  19. 【請求項19】 ミラーリング終了コマンドによって、マルチキャスト・グ
    ループからの分離が行われる、請求項17記載のシステム。
  20. 【請求項20】 データ転送コマンドがWRITEコマンドである、請求項16記
    載のシステム。
  21. 【請求項21】 WRITEコマンドが、仮想論理ユニット番号を指定する、請
    求項20記載のシステム。
  22. 【請求項22】 複数のWRITEコマンドがある、請求項20記載のシステム。
  23. 【請求項23】 登録コマンドが、複数のターゲットのそれぞれに対応する
    ユニキャスト・アドレスに送信される、請求項16記載のシステム。
  24. 【請求項24】 登録コマンドが、標準SCSIテキスト・コマンド・フォーマ
    ットを有する、請求項16記載のシステム。
  25. 【請求項25】 複数のターゲットのそれぞれが、通信NICをマルチキャス
    ト・アドレスをリスンするように設定し、仮想論理ユニット番号をSCSI装置にマ
    ッピングすることによって登録コマンドに応答する、請求項16記載のシステム。
  26. 【請求項26】 複数のターゲットのそれぞれが、マッピングを確立した後
    、発信側にメッセージを返す、請求項16記載のシステム。
  27. 【請求項27】 データ転送コマンドがマルチキャストを介して送信される
    、請求項16記載のシステム。
  28. 【請求項28】 マルチキャスト・グループの各SCSIメンバーがデータ転送
    コマンドのステータスを返し、発信側がデータ転送コマンドのあらゆるエラー・
    ステータスを処理する、請求項16記載のシステム。
  29. 【請求項29】 複数のターゲットのそれぞれが、ミラーリング終了コマン
    ドが完了したことを示すステータスを発信側に返す、請求項17記載のシステム。
  30. 【請求項30】 各コマンドが電子信号として実現される、請求項16記載の
    システム。
  31. 【請求項31】 ネットワークにおいてデータ転送コマンドをミラーリング
    するシステムであって、ネットワークが、SCSI発信側および複数のSCSIターゲッ
    トを含み、発信側およびターゲットのすべてが、TCP/IPネットワークに接続され
    ており、 (a)発信側からTCP/IPネットワークを介して複数のターゲットのそれぞれに
    送信され、マルチキャスト・アドレスおよび仮想論理ユニット番号を含み、複数
    のターゲットのそれぞれに対応するユニキャスト・アドレスに送信され、標準SC
    SIテキスト・コマンド・フォーマットを有する登録コマンドであって、複数のタ
    ーゲットのそれぞれが、通信NICをマルチキャスト・アドレスをリスンするよう
    に設定し仮想論理ユニット番号をSCSI装置にマッピングすることによって登録コ
    マンドに応答する登録コマンドと、 (b)登録コマンドに応答して各SCSI装置で確立され、SCSI装置と仮想論理ユ
    ニット番号とマルチキャスト・アドレスとの間の関連性を示すマッピングと、 (c)発信側から送信され、マルチキャスト・グループ・アドレスを示すSCSI
    データ転送コマンドであって、仮想論理ユニット番号を指定するWRITEコマンド
    であるSCSIデータ転送コマンドと、 (d)マルチキャスト・グループの各メンバーにおける、受信されたデータ転
    送コマンド、および該コマンドに応答したデータの転送と、 (e)発信側から複数のターゲットのそれぞれに送信され、仮想論理ユニット
    番号からの分離を生じさせるミラーリング終了コマンドとを含むシステム。
  32. 【請求項32】 ネットワークにおいてデータ転送コマンドをミラーリング
    するシステムであって、ネットワークが、SCSI発信側および複数のSCSIターゲッ
    トを含み、発信側およびターゲットのすべてが、TCP/IPネットワークに接続され
    ており、 (a)マルチキャスト・アドレスおよび仮想論理ユニット番号を含む登録コマ
    ンドを発信側からTCP/IPネットワークを介して複数のターゲットのそれぞれに送
    信する手段と、 (b)登録コマンドに応答して、SCSI装置と仮想論理ユニット番号とマルチキ
    ャスト・アドレスとの間の関連性を示すマッピングを各SCSI装置で確立する手段
    と、 (c)マルチキャスト・グループ・アドレスを示すSCSIデータ転送コマンドを
    発信側から送信する手段と、 (d)マルチキャスト・グループの各メンバーにおいてデータ転送コマンドを
    受信し、該コマンドに応答してデータを転送する手段と、 (e)マルチキャスト・グループの各SCSIメンバーにおいて、指定されたデー
    タ転送コマンドを実行する手段とを含むシステム。
  33. 【請求項33】 (f)発信側から複数のターゲットのそれぞれにミラーリ
    ング終了コマンドを送信する手段をさらに含む、請求項32記載のシステム。
  34. 【請求項34】 ミラーリング終了コマンドによって、仮想論理ユニット番
    号からの分離が行われる、請求項33記載のシステム。
  35. 【請求項35】 ミラーリング終了コマンドによって、マルチキャスト・グ
    ループからの分離が行われる、請求項33記載のシステム。
  36. 【請求項36】 データ転送コマンドがWRITEコマンドである、請求項32記
    載のシステム。
  37. 【請求項37】 WRITEコマンドが、仮想論理ユニット番号を指定する、請
    求項36記載のシステム。
  38. 【請求項38】 複数のWRITEコマンドがある、請求項36記載のシステム。
  39. 【請求項39】 登録コマンドが、複数のターゲットのそれぞれに対応する
    ユニキャスト・アドレスに送信される、請求項32記載のシステム。
  40. 【請求項40】 登録コマンドが、標準SCSIテキスト・コマンド・フォーマ
    ットを有する、請求項32記載のシステム。
  41. 【請求項41】 複数のターゲットのそれぞれが、通信NICをマルチキャス
    ト・アドレスをリスンするように設定し、仮想論理ユニット番号をSCSI装置にマ
    ッピングすることによって登録コマンドに応答する、請求項32記載のシステム。
  42. 【請求項42】 複数のターゲットのそれぞれが、マッピングを確立した後
    、発信側にメッセージを返す、請求項32記載のシステム。
  43. 【請求項43】 データ転送コマンドがマルチキャストを介して送信される
    、請求項32記載のシステム。
  44. 【請求項44】 マルチキャスト・グループの各SCSIメンバーがデータ転送
    コマンドのステータスを返し、発信側がデータ転送コマンドのあらゆるエラー・
    ステータスを処理する、請求項32記載のシステム。
  45. 【請求項45】 複数のターゲットのそれぞれが、ミラーリング終了コマン
    ドが完了したことを示すステータスを発信側に返す、請求項33記載のシステム。
  46. 【請求項46】 ネットワークにおいてデータ転送コマンドをミラーリング
    するシステムであって、ネットワークが、SCSI発信側および複数のSCSIターゲッ
    トを含み、発信側およびターゲットが、TCP/IPネットワークに接続されており、 (a)マルチキャスト・アドレスおよび仮想論理ユニット番号を含み、複数の
    ターゲットのそれぞれに対応するユニキャスト・アドレスに送信され、標準SCSI
    テキスト・コマンド・フォーマットを有する登録コマンドを、各ターゲットが通
    信NICをマルチキャスト・アドレスをリスンするように設定し仮想論理ユニット
    番号をSCSI装置にマッピングすることによって登録コマンドに応答する複数のタ
    ーゲットのそれぞれに、発信側からTCP/IPネットワークを介して送信する手段と
    、 (b)登録コマンドに応答して、SCSI装置と仮想論理ユニット番号とマルチキ
    ャスト・アドレスとの間の関連性を示すマッピングを各SCSI装置で確立する手段
    と、 (c)仮想論理ユニット番号を指定するWRITEコマンドであり、マルチキャス
    ト・グループ・アドレスを示すSCSIデータ転送コマンドを、発信側から送信する
    手段と、 (d)マルチキャスト・グループの各メンバーにおいてデータ転送コマンドを
    受信し、該コマンドに応答してデータを転送する手段と、 (e)マルチキャスト・グループの各SCSIメンバーにおいて、指定されたデー
    タ転送コマンドを実行する手段と、 (f)仮想論理ユニット番号からの分離を生じさせるミラーリング終了コマン
    ドを発信側から複数のターゲットのそれぞれに送信する手段とを含むシステム。
JP2001587223A 2000-05-23 2001-05-23 Tcp/ipによるscsiを使用するデータ複製方法および装置 Pending JP2003534749A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US20660700P 2000-05-23 2000-05-23
US60/206,607 2000-05-23
PCT/US2001/016546 WO2001090902A1 (en) 2000-05-23 2001-05-23 Method and apparatus for data replication using scsi over tcp/ip

Publications (1)

Publication Number Publication Date
JP2003534749A true JP2003534749A (ja) 2003-11-18

Family

ID=22767129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001587223A Pending JP2003534749A (ja) 2000-05-23 2001-05-23 Tcp/ipによるscsiを使用するデータ複製方法および装置

Country Status (7)

Country Link
US (1) US6865617B2 (ja)
EP (1) EP1292893B1 (ja)
JP (1) JP2003534749A (ja)
AT (1) ATE407402T1 (ja)
AU (1) AU2001264798A1 (ja)
DE (1) DE60135654D1 (ja)
WO (1) WO2001090902A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009512011A (ja) * 2005-10-06 2009-03-19 ラテゼ・リモート・エム・ジー・エム・テイ・エル・エル・シー リソースコマンドメッセージおよび方法
JP2010537267A (ja) * 2007-08-16 2010-12-02 インターナショナル・ビジネス・マシーンズ・コーポレーション ストレージ・コントローラと複製エンジンとの間で書き込みを分割する方法、システムおよびプログラム
JP2013020635A (ja) * 2005-12-20 2013-01-31 Silicon Image Inc 記憶装置システムのための、プロトコル定義されたリンクにおいて補足メッセージを伝達するための隠しチャネル
US8560631B2 (en) 2002-06-03 2013-10-15 Hitachi, Ltd. Storage system

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7581077B2 (en) 1997-10-30 2009-08-25 Commvault Systems, Inc. Method and system for transferring data in a storage operation
US6418478B1 (en) * 1997-10-30 2002-07-09 Commvault Systems, Inc. Pipelined high speed data transfer mechanism
JP4719957B2 (ja) 2000-05-24 2011-07-06 株式会社日立製作所 記憶制御装置及び記憶システム並びに記憶システムのセキュリティ設定方法
US7269631B2 (en) * 2000-06-02 2007-09-11 Hewlett-Packard Development Company, L.P. Architecture for parallel distributed table driven I/O mapping
US7340558B2 (en) * 2000-11-22 2008-03-04 Silicon Image, Inc. Multisection memory bank system
US6996103B1 (en) 2001-06-20 2006-02-07 Cisco Technology, Inc. Method and system for multicasting
US20030056000A1 (en) * 2001-07-26 2003-03-20 Nishan Systems, Inc. Transfer ready frame reordering
US20030110300A1 (en) * 2001-12-12 2003-06-12 Micro-Star Int'l Co., Ltd. Virtual storage interface device
US6999999B2 (en) * 2001-12-28 2006-02-14 Hewlett-Packard Development Company, L.P. System and method for securing fiber channel drive access in a partitioned data library
US8788611B2 (en) * 2001-12-28 2014-07-22 Hewlett-Packard Development Company, L.P. Method for using partitioning to provide capacity on demand in data libraries
US7197571B2 (en) * 2001-12-29 2007-03-27 International Business Machines Corporation System and method for improving backup performance of media and dynamic ready to transfer control mechanism
US6779093B1 (en) * 2002-02-15 2004-08-17 Veritas Operating Corporation Control facility for processing in-band control messages during data replication
US8051197B2 (en) 2002-03-29 2011-11-01 Brocade Communications Systems, Inc. Network congestion management systems and methods
US20040006587A1 (en) * 2002-07-02 2004-01-08 Dell Products L.P. Information handling system and method for clustering with internal cross coupled storage
GB2410106B (en) 2002-09-09 2006-09-13 Commvault Systems Inc Dynamic storage device pooling in a computer system
CA2499073C (en) 2002-09-16 2013-07-23 Commvault Systems, Inc. Combined stream auxiliary copy system and method
CN1695113A (zh) * 2002-11-12 2005-11-09 泽特拉公司 具有改进的通信的电气设备
JP2004192305A (ja) 2002-12-11 2004-07-08 Hitachi Ltd iSCSIストレージ管理方法及び管理システム
US7069307B1 (en) * 2002-12-20 2006-06-27 Network Appliance, Inc. System and method for inband management of a virtual disk
US7043578B2 (en) 2003-01-09 2006-05-09 International Business Machines Corporation Method, system, and program for processing a packet including I/O commands and data
US7460473B1 (en) * 2003-02-14 2008-12-02 Istor Networks, Inc. Network receive interface for high bandwidth hardware-accelerated packet processing
US7512663B1 (en) * 2003-02-18 2009-03-31 Istor Networks, Inc. Systems and methods of directly placing data in an iSCSI storage device
US7269644B1 (en) * 2003-02-21 2007-09-11 Cisco Technology Inc. Performance profiling for improved data throughput
WO2004090740A1 (en) 2003-04-03 2004-10-21 Commvault Systems, Inc. System and method for dynamically sharing media in a computer network
US7739543B1 (en) * 2003-04-23 2010-06-15 Netapp, Inc. System and method for transport-level failover for loosely coupled iSCSI target devices
US7136974B2 (en) 2003-06-19 2006-11-14 Pillar Data Systems, Inc. Systems and methods of data migration in snapshot operations
CA2544063C (en) 2003-11-13 2013-09-10 Commvault Systems, Inc. System and method for combining data streams in pilelined storage operations in a storage network
US7177921B2 (en) * 2004-03-18 2007-02-13 Hitachi, Ltd. Method and apparatus for storage network management
US7577707B2 (en) * 2004-04-21 2009-08-18 International Business Machines Corporation Method, system, and program for executing data transfer requests
US7526574B2 (en) * 2004-04-21 2009-04-28 International Business Machines Corporation Method for communicating data transfer requests between data transfer protocols
US7475153B2 (en) * 2004-07-16 2009-01-06 International Business Machines Corporation Method for enabling communication between nodes
US7779081B2 (en) 2004-07-16 2010-08-17 International Business Machines Corporation Method, system, and program for forwarding messages between nodes
JP2006107158A (ja) * 2004-10-06 2006-04-20 Hitachi Ltd ストレージネットワークシステム及びアクセス制御方法
US7472238B1 (en) 2004-11-05 2008-12-30 Commvault Systems, Inc. Systems and methods for recovering electronic information from a storage medium
WO2006053050A2 (en) * 2004-11-08 2006-05-18 Commvault Systems, Inc. System and method for performing auxiliary storage operations
KR100640469B1 (ko) * 2005-01-28 2006-10-31 삼성전자주식회사 통신 시스템에서 미러링 서비스를 제공하기 위한 방법 및장치와 그 통신시스템
US8046810B2 (en) * 2006-04-07 2011-10-25 Alcatel Lucent Method and apparatus for delivering subscription service content to roaming users
US8095715B1 (en) * 2006-09-05 2012-01-10 Nvidia Corporation SCSI HBA management using logical units
US8312323B2 (en) * 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
US8352450B1 (en) 2007-04-19 2013-01-08 Owl Computing Technologies, Inc. Database update through a one-way data link
US7969445B2 (en) * 2007-06-20 2011-06-28 Nvidia Corporation System, method, and computer program product for broadcasting write operations
US20090216886A1 (en) * 2008-02-21 2009-08-27 Inventec Corporation Method of multi-path accessing remote logic device under linux system
US8032730B2 (en) * 2008-05-15 2011-10-04 Hitachi, Ltd. Method and apparatus for I/O priority control in storage systems
US20120063454A1 (en) * 2010-08-30 2012-03-15 Velez-Mccaskey Ricardo Apparatus and method in a system for multicast data transfers over an interconnected bus
US8767334B2 (en) 2010-09-30 2014-07-01 International Business Machines Corporation System, method, and computer program product for creating a single library image from multiple independent tape libraries
US10379988B2 (en) 2012-12-21 2019-08-13 Commvault Systems, Inc. Systems and methods for performance monitoring
US9354979B2 (en) 2014-02-07 2016-05-31 International Business Machines Corporation Server based disaster recovery by making use of dual write responses
US9575987B2 (en) 2014-06-23 2017-02-21 Owl Computing Technologies, Inc. System and method for providing assured database updates via a one-way data link
US9904481B2 (en) 2015-01-23 2018-02-27 Commvault Systems, Inc. Scalable auxiliary copy processing in a storage management system using media agent resources
US9898213B2 (en) 2015-01-23 2018-02-20 Commvault Systems, Inc. Scalable auxiliary copy processing using media agent resources
US11010261B2 (en) 2017-03-31 2021-05-18 Commvault Systems, Inc. Dynamically allocating streams during restoration of data
US10310760B1 (en) 2018-05-21 2019-06-04 Pure Storage, Inc. Layering communication fabric protocols
US12086431B1 (en) 2018-05-21 2024-09-10 Pure Storage, Inc. Selective communication protocol layering for synchronous replication
US11954220B2 (en) 2018-05-21 2024-04-09 Pure Storage, Inc. Data protection for container storage
US10880371B2 (en) * 2019-03-05 2020-12-29 International Business Machines Corporation Connecting an initiator and a target based on the target including an identity key value pair and a target characteristic key value pair
US11593223B1 (en) 2021-09-02 2023-02-28 Commvault Systems, Inc. Using resource pool administrative entities in a data storage management system to provide shared infrastructure to tenants

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5644787A (en) * 1993-08-03 1997-07-01 Seiko Epson Corporation Apparatus for controlling data transfer between external interfaces through buffer memory using table data having transfer start address transfer count and unit selection parameter
US5553083B1 (en) * 1995-01-19 2000-05-16 Starburst Comm Corp Method for quickly and reliably transmitting frames of data over communications links
US5983278A (en) * 1996-04-19 1999-11-09 Lucent Technologies Inc. Low-loss, fair bandwidth allocation flow control in a packet switch
EP1008051A4 (en) * 1997-03-12 2007-04-25 Storage Technology Corp MEMORY DATA SUBSYSTEM ON VIRTUAL MAGNETIC STRIP AND ATTACHED TO A NETWORK
US5953540A (en) 1997-06-26 1999-09-14 Compaq Computer Corporation SCSI cable with two cable segments having a first resistor coupled to a Y-connection from each segment and a second resistor coupled to one corresponding conductor
US6427173B1 (en) * 1997-10-14 2002-07-30 Alacritech, Inc. Intelligent network interfaced device and system for accelerated communication
US6421711B1 (en) * 1998-06-29 2002-07-16 Emc Corporation Virtual ports for data transferring of a data storage system
US6400730B1 (en) * 1999-03-10 2002-06-04 Nishan Systems, Inc. Method and apparatus for transferring data between IP network devices and SCSI and fibre channel devices over an IP network
US6654830B1 (en) * 1999-03-25 2003-11-25 Dell Products L.P. Method and system for managing data migration for a storage system
US6389432B1 (en) * 1999-04-05 2002-05-14 Auspex Systems, Inc. Intelligent virtual volume access
US6532517B1 (en) * 1999-04-13 2003-03-11 Webtv Networks, Inc. System and method for reducing disk chatter from disk-based data storage systems
US6470382B1 (en) * 1999-05-26 2002-10-22 3Com Corporation Method to dynamically attach, manage, and access a LAN-attached SCSI and netSCSI devices
US6684209B1 (en) * 2000-01-14 2004-01-27 Hitachi, Ltd. Security method and system for storage subsystem
US6591310B1 (en) * 2000-05-11 2003-07-08 Lsi Logic Corporation Method of responding to I/O request and associated reply descriptor

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8560631B2 (en) 2002-06-03 2013-10-15 Hitachi, Ltd. Storage system
JP2009512011A (ja) * 2005-10-06 2009-03-19 ラテゼ・リモート・エム・ジー・エム・テイ・エル・エル・シー リソースコマンドメッセージおよび方法
JP2013020635A (ja) * 2005-12-20 2013-01-31 Silicon Image Inc 記憶装置システムのための、プロトコル定義されたリンクにおいて補足メッセージを伝達するための隠しチャネル
JP2010537267A (ja) * 2007-08-16 2010-12-02 インターナショナル・ビジネス・マシーンズ・コーポレーション ストレージ・コントローラと複製エンジンとの間で書き込みを分割する方法、システムおよびプログラム
US8341366B2 (en) 2007-08-16 2012-12-25 International Business Machines Corporation Splitting writes between a storage controller and replication engine

Also Published As

Publication number Publication date
EP1292893B1 (en) 2008-09-03
ATE407402T1 (de) 2008-09-15
EP1292893A1 (en) 2003-03-19
US20020029281A1 (en) 2002-03-07
US6865617B2 (en) 2005-03-08
DE60135654D1 (de) 2008-10-16
AU2001264798A1 (en) 2001-12-03
EP1292893A4 (en) 2006-11-08
WO2001090902A1 (en) 2001-11-29

Similar Documents

Publication Publication Date Title
JP2003534749A (ja) Tcp/ipによるscsiを使用するデータ複製方法および装置
US8140927B2 (en) Method and system for reliable multicast data transmission
US8185663B2 (en) Mirroring storage interface
US6871296B2 (en) Highly available TCP systems with fail over connections
US6934875B2 (en) Connection cache for highly available TCP systems with fail over connections
US6185623B1 (en) Method and system for trivial file transfer protocol (TFTP) subnet broadcast
US7929422B2 (en) Method of moving a transport connection among network hosts
US5745685A (en) Protocol extension in NSPP using an acknowledgment bit
US6724762B2 (en) System and method for implementing multi-pathing data transfers in a system area network
US8438321B2 (en) Method and system for supporting hardware acceleration for iSCSI read and write operations and iSCSI chimney
US20040078625A1 (en) System and method for fault tolerant data communication
US8396981B1 (en) Gateway for connecting storage clients and storage servers
JP2002512484A (ja) デジタル・ネットワークにおいてマルチキャスト・メッセージ配信エラー回復ツリーを確立するためのシステムおよび方法
CA2564363A1 (en) Method and apparatus for group communication with end-to-end reliability
JP2005505036A (ja) サーバ不要の記憶サービス
CN1985492B (zh) 支持iSCSI读操作和iSCSI烟囱的方法和系统
TW200306719A (en) System, method, and product for managing data transfers in a network
JP2003044230A (ja) 記憶装置システム
US20130279378A1 (en) Cascaded Streaming of Data Through Virtual Chain of Nodes in Hub Topology
JP2004171206A (ja) ストレージシステム
US20050283545A1 (en) Method and system for supporting write operations with CRC for iSCSI and iSCSI chimney
Gupta Storage area network fundamentals
US20050281261A1 (en) Method and system for supporting write operations for iSCSI and iSCSI chimney
CN109413142B (zh) 一种Linux下的iSCSI虚拟代理实现方法
EP1438808A2 (en) Packet classification in a storage system