JP2007115138A - データ転送方法及びリモートコピーシステム - Google Patents

データ転送方法及びリモートコピーシステム Download PDF

Info

Publication number
JP2007115138A
JP2007115138A JP2005307670A JP2005307670A JP2007115138A JP 2007115138 A JP2007115138 A JP 2007115138A JP 2005307670 A JP2005307670 A JP 2005307670A JP 2005307670 A JP2005307670 A JP 2005307670A JP 2007115138 A JP2007115138 A JP 2007115138A
Authority
JP
Japan
Prior art keywords
buffer
data
control device
storage
storage controller
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
JP2005307670A
Other languages
English (en)
Inventor
Yoshio Kakizaki
吉夫 柿崎
Masahiro Horiba
正浩 堀場
Homare Okamoto
誉 岡本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2005307670A priority Critical patent/JP2007115138A/ja
Priority to US11/331,084 priority patent/US7441142B2/en
Publication of JP2007115138A publication Critical patent/JP2007115138A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/39Credit based
    • 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
    • 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

Abstract

【課題】ファイバチャネルプロトコルにしたがってデータ転送を行う、送信側ポートと受信側ポート間が、複数の記憶制御装置間でリモートコピーシステムを構成している場合など、遠距離であっても、両ポート間でのデータ転送においてスループットの低下或いはそのおそれが無い、データ転送制御を提供する。
【解決手段】第1の記憶制御装置と、第1の記憶制御装置に通信手段を介して接続され、第1の記憶制御装置からデータを受信する、第2の記憶制御装置を備えるリモートコピーシステムにおける、第1の記憶制御装置と第2の記憶制御装置との間で、ファイバチャネルプロトコルにしたがって、データフレームの転送を行うデータ転送方法である。第1の記憶制御装置と第2の記憶制御装置間との間の距離に応じて、データフレームの転送に適用されるバッファ・ツゥー・バッファ・クレジット数を増加させる、ようにした。
【選択図】図5

Description

本発明は、ファイバチャネルプロトコルによる、複数のノード間のデータ転送を制御する方式に関する。より詳しくは、本発明は、遠距離を介して置かれた複数の記憶制御装置からなるリモートコピーシステムに適用される、ファイバチャネルプロトコルに基づいたデータフレームの転送を制御する方法及び装置である。
コンピュータシステムがあらゆる組織にとって重要な存在である現在の社会では、アプリケーションによる継続したサービスを提供するデータセンタが、災害や事故などのさまざまな要因によって運用不可能な状態に陥った場合、別のデータセンタにおいて継続したサービスを提供することが大変重要である。
そこで、リモートコピーシステムは、一つの記憶制御装置とは離れた地理的位置に他の記憶制御装置を備え、一つの記憶制御装置に格納されたデータの複製を、他の記憶制御装置に格納するようにしている。
このリモートコピーシステムでは、記憶制御装置からリモートサイトである記憶制御装置へのデータ転送は、ファイバチャネルプロトコルに基づいて行われる。イニシエータノードからターゲットノードにファイバチャネルプロトコルで長距離接続を行う場合、FC2レイヤで定義されているBuffer to Buffer Credit(バッファ・ツゥー・バッファクレジット:BBクレジット)を考慮する必要がある。すなわち、ローカルサイトの記憶制御装置が、リモートサイトの記憶制御装置ヘログインしてデータ転送を行う際、リモートサイトの記憶制御装置において、一度に受信可能なデータフレームの個数は、ログイン時のパラメータの一つであるBBクレジットで決定される。
この種の従来技術として、例えば、特開平11−55314号公報(特許文献1)記載のデータ転送制御方法がある。このものは、送信側に送信したフレームシーケンス番号と受信側の処理が終了したフレームシーケンス番号を送信側が判断して、BBクレジット数を決めている。また、受信側に送信した最新のフレームシーケンス番号と受信側で処理が終了した最新のフレームシーケンス番号との差を送信側が把握する事により、受信側のトラフィック状況に応じて送信するクレジット数を増減させることが記載されている。
なお、特許第3517452号特許公報(特許文献2)には、ケーブルの転送遅延時間によるデータ転送効率の低下を防止することを目的とするデータ転送制御方法が記載されている。この公報には、バッファを有する記憶制御部が、記憶手段の容量に相当するデータ要求を発行後、上位処理装置から転送される最初のデータを受信するまでの間に、記憶制御部は上位処理装置に対してデータ要求を発行すること、さらに、ターゲットがケーブル上の転送遅延時間を見越してデータ要求をイニシエータへ返すことが記載されている。
特開平11−55314号公報 特許第3517452号特許公報
ファイバチャネルプロトコルでは、バッファクレジットの値がゼロの場合、送信側FCポートは、R_RDY(Receive Ready)が戻るまで次のフレームを受信側FCポートに送出してはならない。両ポート間の距離が短い場合には、送信側ポートは、受信側ポートに対して、データ転送路の転送データ及びR_RDYの転送路伝播遅延時間に影響されることなくデータ転送を行うことができる。
しかしながら、両ポート間のデータ転送路距離が長い時、受信側ポートから送信側ポートへのR_RDYの到着が回線遅延により遅れるため、バッファ・ツゥー・バッファ・クレジット(BBクレジット)が接続距離(回線遅延)に対して十分なバッファ数を用意できていない場合、送信側FCポートはフレームを送出できない時間が増え、スループットが低下する問題がある。
本発明はこのような問題を解決するために、ファイバチャネルプロトコルにしたがってデータ転送を行う、送信側ポートと受信側ポート間が、複数の記憶制御装置間でリモートコピーシステムを構成している場合など、遠距離であっても、両ポート間でのデータ転送においてスループットの低下或いはそのおそれが無い、データ転送制御を提供することを目的とするものである。
この目的を達成するために、本発明は、ファイバチャネルプロトコルによる、ポート間の連続するデータ転送制御方法において、送信側のノードが受信側のノードに宣言していたBBクレジット数を、送信側ポート間と受信側ポート間の距離に対応させて、増加させる事を特徴とするものである。
本発明の形態の第1は、情報処理装置に接続され、前記情報処理装置との間でデータの送受信を行う第1の記憶制御装置と、前記第1の記憶制御装置に通信手段を介して接続され、当該記憶制御装置からデータを受信する、第2の記憶制御装置を備えるリモートコピーシステムにおける、前記第1の記憶制御装置と前記第2の記憶制御装置との間で、ファイバチャネルプロトコルにしたがって、データフレームの転送を行うデータ転送方法において、前記第1の記憶制御装置と前記第2の記憶制御装置間との間の距離に応じて、前記データフレームの転送に適用されるBBクレジット数を増加させる、ようにした事を特徴とするものである。
本発明の形態の第2は、イニシエータノードのポートとターゲットノードのポート間で、ファイバチャネルプロトコルにしたがって、データフレームの転送を行うデータ転送方法において、前記イニシエータノードが前記ターゲットノードに、予め定められたBBクレジット数に基づいてログインする第1ステップと、前記イニシエータノードのポートと前記ターゲットノードのポート間の距離と前記データ転送に適用されるBBクレジット数とを対応させた制御テーブルに基づいて、前記BBクレジット数を決定する第2ステップと、第1のステップの前記予め定められたBBクレジット数が、第2のステップで決定されたBBクレジット数以下の場合には、前記イニシエータノードのポートと前記ターゲットノードのポート間での前記データフレームの転送に実際に適用されるBBクレジット数を、前記第2のステップで決定された値に設定する第3のステップと、を備えてなることを特徴とするものである。
さらに、本発明の形態の第3は、情報処理装置に接続され、前記情報処理装置との間でデータの送受信を行う第1の記憶制御装置と、前記第1の記憶制御装置に通信手段を介して接続される第2の記憶制御装置と、前記第1の記憶制御装置の論理ボリュームを前記第2の記憶制御装置の論理ボリュームにリモートコピーするコピー制御回路と、当該記憶制御装置からデータを受信する、第2の記憶制御装置と、前記第1の記憶制御装置と前記第2の記憶制御装置との間で、ファイバチャネルプロトコルにしたがって、前記第1の記憶制御回路のデータフレームを前記第2の記憶制御装置にデータ転送を行う転送制御回路と、を備え、前記転送制御回路は、前記第1の記憶制御装置と前記第2の記憶制御装置間の距離に応じて、前記データ転送に適用されるBBクレジット数を増加させるようにしたことを特徴とするものである。
本発明によれば、複数のノードのポート間における、ファイバチャネルプロトコルに基づくデータ転送の際、データ転送やノードでのデータ処理の状態によってバッファ・ツゥー・バッファ・クレジット(BBクレジット)数を増減させたので、効率的なデータ転送を実行することができる。
以上説明したように、本発明によれば、ファイバチャネルプロトコルにしたがってデータ転送を行う、送信側ポートと受信側ポート間が、複数の記憶制御装置間でリモートコピーシステムを構成している場合など、遠距離であっても、両ポート間でのデータ転送においてスループットの低下或いはそのおそれが無い、データ転送制御を実現することができる。
図1は、本発明の実施形態に係る、複数の記憶システムからなるリモートコピーシステムの全体を示す図である。各記憶システムは後述の図2に示すような記憶制御装置から構成されている。第1の記憶システム10は、ホストコンピュータ5と接続線210を介して接続されている。第2の記憶システム15は、第1の記憶システム10と接続線220を介して接続される。この第2の記憶システムは、第1の記憶システム10と第3の記憶システム20との間の中間サイトとして機能するものである。
ホストコンピュータ5と第1の記憶システム10とにより構成される第1のサイトと、ホストコンピュータ6と第2の記憶システム15とによって構成される第2のサイトとを合わせたシステムがローカルサイトに相当する。一方、ローカルサイトから数百キロメートル以上も離れたところに配置されることがあるリモートサイトを構成する第3の記憶システム20は、第2の記憶システムである記憶システム15と接続線240を介して接続されている。第1の記憶システム10と第2の記憶システム15との間、及び、第2の記憶システム15と第3の記憶システム20との間は、ファイバチャネルプロトコルに基づくデータ通信が行われる。
第1の記憶システム10は、論理ボリューム110(ORG1)、 論理ボリューム120(ORG2)を備えており、論理ボリューム110(ORG1)に複製対象となるオリジナルデータが格納されている。第2の記憶システム15は、論理ボリューム110(ORG1)のデータイメージが同期コピーされる論理ボリューム150(Data1)を備えている。リモートサイトの記憶システム20は、複製データが格納される論理ボリューム200(Data2)を備えている。
記憶システム10、15、20内に定義される論理ボリュームの容量や物理的な格納位置(物理アドレス)は、各記憶システムに接続した管理用コンピュータ(SVP)もしくはホストコンピュータ5、6、7を用いて設定可能である。複製対象のデータが蓄積される論理ボリュームは正論理ボリュームであり、複製データが蓄積される論理ボリュームは副論理ボリュームである。一対の正論理ボリュームと副論理ボリュームとからコピーペアが構成される。
図1において、第1の記憶システム10が、ホストコンピュータ5から第1の記憶システム10内の正論理ボリューム110(ORG1)のデータに対するライト命令を受信すると(250)、第1の記憶システム内の正論理ボリューム110(ORG1)のデータが更新される。そして、当該更新された正論理ボリューム110(ORG1)とペアとなっている第2の記憶システム15の内の論理ボリューム150(Data1)も同期更新される。このことにより第2の記憶システム15は、第1の記憶システム10で障害が発生した場合でも、直ちにその業務を引き継ぐことができる。これは、第2の記憶システム15が、ホストコンピュータ5の使用している正論理ボリューム110(ORG1)と同じデータイメージを持つ副論理ボリューム150(Data1)を保持しているからである。
一方、第2サイトの記憶システム15は、論理ボリューム150(Data1)へのデータ更新があると、すなわち、ホストコンピュータ5から論理ボリューム1にデータの更新I/Oがあると、ジャーナルボリューム151(JNL1)にジャーナルデータの保存を行う(260)。 ジャーナルボリューム151(JNL1)に蓄積されたジャーナルデータは、接続線240を介して、遠距離にある第3の記憶システム20内のジャーナルボリューム201(JNL2)に非同期で転送(270)される。第3の記憶システム20は、ジャーナルボリューム201(JNL2)のジャーナルデータを用いて、第2の記憶システム15の論理ボリューム150(Data1)に対応する論理ボリューム200(Data2)を再生する(280)。この動作は、リストア処理或いはリカバリ処理に相当する。
図2に、記憶システム15のハードウエアのブロック構成を示す。記憶システム10及び20も同様な構成を備えている。第2の記憶システム15は、ホストコンピュータ6と接続するための複数のチャネルアダプタ50を有し、これらチャネルアダプタ50は接続線210、220を介してホストコンピュータ6や第3の記憶システム20と接続されている。チャネルアダプタ50は、接続部55を介して、キャッシュメモリ60に接続され、上位装置(情報処理装置)から受領したコマンドを解析し、ホストコンピュータ6が所望するデータのキャッシュメモリ上への読み出しや書き込みを制御する。論理ボリューム110(ORG1)と論理ボリューム120(ORG2)は、複数のHDD100上にわたって設定されている。80はディスクアダプタで、チャネルアダプタ50とHDD100との間のデータの授受を制御する。70は制御情報などをチャネルアダプタ50とディスクアダプタ80に供給させる共有メモリである。
チャネルアダプタ50はディスクアダプタ80、キャッシュメモリ60、共有メモリ70及び管理端末SVPとの間でデータやコマンドの送受信を行う。SVPはチャネルアダプタ50及びディスクアダプタ80に接続されている。ファイルアクセス要求に対応するI/O要求は、チャネルアダプタ50内の制御回路によって出力される。
次に、第2の記憶システムを送信元ノードとし、第3の記憶システムを送信先ノードとして本発明の実施形態について説明する。図2に示すように、第2の記憶システム15のAポート402から第3の記憶システム20のBポート400へデータを転送する時、図3に示すように、例えば、BBクレジット数=3で送信するフレーム数=10とした場合、AポートとBポート間のデータ転送距離が短い場合には、AポートはBポートに対し、データ転送路の転送データ及びR_RDYの転送路伝播遅延時間に影響されることなくデータを転送することができる。
図3においてBBクレジットカウンタは、チャネルアダプタのマイクロプロセッサ112が、ローカルメモリ114のマイクロプログラムに基づいて構成するものであり、AポートからBポートにフレームが転送されると(実線の矢印で表示)、カウンタ値が1つインクリメントされる。
一方、Bポートから、Aポート側のマイクロプロセッサがR_RDYを受信した場合(破線の矢印で表示)にはBBクレジットカウンタ値がデクリメントされる。BBクレジットカウンタ値が3になると、Aポート側のマイクロプロセッサはBポート側の記憶システムにフレームを送信することができない。図3において、(1),(2)・・・・(10)は、AポートからBポートに送信されるフレームであり、(1)´,(2)´・・・・(10)´はBポートからAポートに送信されるR_RDYである。
AポートとBポート間が、リモートコピーシステムのように遠距離になる場合には、図4に示すように、送信側のAポートから受信側のBポートにデータフレームの転送を実行する時、AポートからBポートへデータを転送し、BポートからAポートへR_RDYが返ってくるまでの時間を“t”とすると、BポートからAポートにR_RDYが返ってくるまでの時間(tloss)、AポートではBポートへデータフレームを送信する事が出来ない。この間Bポート側の記憶システムのバッファが空いている状態となり、データの転送効率が低下する。
BBクレジット数は、受受信ポートを有するノード(記憶システム)の受信バッファ量によって決定される。送信側の記憶システムが受信側の記憶システムにログインした際、受信側の記憶システムは送信側の記憶システムにBBクレジット数を通知する。送信側の記憶システムは通知されたBBクレジット数で、受信側の記憶システムにフレームを送信する。なお、バッファとは、フレームデータの一時記記憶領域であり、受信側のキャッシュメモリ、又はチャネルアダプタのローカルメモリが、バッファに該当する。
データ送信の効率を改善するために、送信側の記憶システムが受信側の記憶システムに最初にログインした際のBBクレジット数を、図5に示すように、Bポート側の記憶システムが処理可能な「3」から例えば「6」にして、送信側の記憶システムが受信側の記憶システムにログインし直すことにより、データ転送効率を改善する。すなわち、この間Bポート側の記憶システムのバッファが空いている状態を見越して、通常よりも多いデータフレームを、Aポート側からBポート側に転送する。なお、送信側であるAポートから送信された6つのフレームのうちの3つのフレームはBポート側の記憶システムにて一度に処理することは出来ないので、AポートとBポートとの間にある転送路に3フレーム分のデータをバッファリングする。例えば、転送路途中のファブリックのバッファにバッファリングし、Bポート側の記憶システムでバッファのフレームがHDDに転送されてバッファが開放された後、ファブリックに保存された3つのフレームがBポート側の記憶システムに取り込まれる。
次にデータ転送の動作について、図6のフローチャートに基づいて説明する。このフローチャートは、送信元記憶制御装置に設けられたチャネルアダプタのマイクロプロセッサ112によって実行される。ステップ600において、マイクロプロセッサは、AポートからBポート側の記憶システム20(図2)にログインする。ログイン時に設定されるBBクレジット数は、Bポート側の記憶システムに当初から設定されているBBクレジット数である。ポート間でのログインの契機は、データの転送を開始する時である。
ステップ602では、マイクロプロセッサはAポートからBポートへデータフレームを一つ送信する。ステップ604では、ステップ602において、マイクロプロセッサがAポートを介してBポートへデータフレームを送信した時刻と、BポートからAポートにR_RDYが返ってくる時刻とから、1フレームの処理に要した時間tを算出する。
ステップ606では、マイクロプロセッサは、ステップ604で計算された時間tが、データフレーム送信間隔時間T(図3参照)とから下記式1の演算を行う。
(数1) (BBクレジット数(n)−1)×T<t
数1は、前記tlossの期間、データフレームを送信できるクレジット数であるか否かを判定するものであり、ステップ606が否定判定された場合は、AポートからBポートへのデータの転送が、転送距離に影響されることなく、適切に実行されているとAポート側のマイクロプロセッサが判断し、BBクレジット数を変更することなく処理を終了する。
一方、ステップ606が肯定判定された場合は、tlossの間も,AポートからBポートへデータフレームが送信できるBBクレジット数にはなっていないので、マイクロプロセッサは、Bポートに再ログインして、(BBクレジット数(n)−1×T)がtに最も近い整数を新たなBBクレジット数として、これを受信側の記憶システムの共有メモリ或いはBポートのチャネルプロセッサのローカルメモリに設定する(ステップ608)。これにより、ファイバチャネルプロトコルに基づいてデータ送信が行われる、複数のノード間の距離が長い場合でも、スループットの低下を防いで、複数のノード間のデータ送信が可能となる。
図7は、AポートからBポートへのデータ転送処理を行う際の、BBクレジット数の設定に係る他の実施形態を示すフローチャートである。ステップ600−608までは、図5に同じ番号で示されるステップと同様である。ステップ700では、Bポート側のマイクロプロセッサは、ステップ608で決定されたBBクレジット数で送信されたデータフレームの数がBポート側で受信可能な個数以上であり、Bポート側でのデータフレームの処理が停滞して受信バッファのオーバーフローが発生し、データ転送が失敗しているかどうかを監視し、オーバーフローが発生していない場合は、ステップ702に進む。
ステップ700において、オーバーフローが発生した場合は、送信側の記憶システムのマイクロプロセッサは、Aポートからの送信フレーム数が過剰と判断し、BBクレジット数をステップ608で設定したBBクレジット数から1をデクリメントし、Bポート側でのオーバーフローが無くなるまで前記処理を繰返し実施し、データ転送で使用するBBクレジット数を減少させ、データ転送のリトライ動作を試行する(ステップ704)。なお、オーバーフローは、Bポート側の記憶制御装置から該当する制御コードがAポート側の記憶制御装置に送られ、Aポート側の記憶制御装置のチャネルアダプタが判定する。
ステップ702において、BBクレジット数をステップ608で決定した数から減少させているかどうか、Aポート側のマイクロプロセッサが判断し、減少させていない場合はステップ608で宣言したBBクレジット数でデータ転送を行う。もしBポート側でオーバーフローが発生し、BBクレジット数を減少させている場合は、ステップ706に進む。Aポート側のマイクロプロセッサは、BBクレジット数を減少させてから、Bポート側で送信されたデータフレームの処理回数が複数回(この場合、10回以上とする)終了したか否かを判断する。10回以上処理が行われていない場合、10回以上の処理が完了されるまでステップ706が繰り返される。
ステップ706で、複数回の処理が完了した場合は、Aポート側のマイクロプロセッサは、Bポート側でのオーバーフローが完全に解消されたと認識し、AポートからBポートへ再度ログインし、BBクレジット数をステップ608で決定された整数値に再び増やして、Bポートへデータフレームの転送処理を行う。以後、Bポート側でAポート側からのデータフレームの処理にオーバーフローが発生しない場合には、ステップ700とステップ702を経て図7の処理が終了する。Bポート側でオーバーフローが発生した場合には、ステップ700,704,702,706,708を経由して、BBクレジット数が増加・減少される。
この実施形態によれば、記憶制御装置間のデータ転送において、受信側のデータ処理が停滞し、受信側バッファでオーバーフローが発生しても、受信側のデータ処理状況に合せて、BBクレジット数を調整できることにより、記憶制御システム間で効率良くデータ転送を実現することができる。
図8は、さらに他の実施形態に係るフローチャートである。データ送信を行うAポートとデータ受信を行うBポートとのデ−タ転送距離が予め判明している場合に、距離に対応するBBクレジット数をあらかじめAポート側の記憶性制御装置のSVP(図2参照)に管理者が入力し、これを、データ転送を行う時に使用する制御データテーブルとして共有メモリ70に登録しておく(ステップ800)。
図9は、このテーブルの一例であり、AポートとBポート間の距離と、通信において使用する帯域とに応じて、BBクレジット数(n´)が定められている。両ポート間の距離が長距離であるほど、かつ、帯域の周波数が大きいほどBBクレジット数(n´)が多く設定されている。
作成したデータテーブルに基づいて、Aポート側である送信側の記憶制御装置はキャッシュ60に、データ転送を行う距離に対応するBBクレジット数(n´)をあらかじめ記憶しておく(ステップ802)。AポートとBポートとの間でログインが行われる(ステップ804)。このログイン時に設定するBBクレジット数は、Bポート側に予め設定されたクレジット数(n)にてログインを行う。AポートとBポート間のログイン契機はAポートからBポートに対してデータ転送を開始する時である。
Aポート側のマイクロプロセッサは、ステップ802のBBクレジット数(n’)と、ログイン時に設定した現在のBBクレジット数(n)とを比較し(ステップ806)、nの方がn´より大きい場合は、現在のBBクレジット数を変更せず、そのままフレームデータ転送を実施する。それに対しn’がn以上の場合は、BBクレジット数をn’として、AポートとBポートとの間で再度ログインを実施し(ステップ808)、BBクレジット数(n´)でAポートとBポート間でフレームデータ転送を実施する。この実施形態によれば、データが互いに転送される2つのノード間が長距離であっても、ポート間のデータ転送効率を高く維持することが可能である。
なお、既述の実施形態は、第2の記憶制御装置と第3の記憶制御装置間のデータ転送を例にしたが、中間サイトが無い、2つの記憶制御装置間にも本発明を適用することができる。また、リモートコピーシステムに限らず、ファイバチャネルプロトコルで互いに通信を行うコンピュータシステム・機器に本発明を適用することができる。
本発明に係わるリモートコピーシステムの実施形態を示すハードウエアブロック図である。 記憶制御装置のハードウエアブロック図である。 送信側ポートと受信側ポートとの間(近距離)で行われる、データフレームの転送形態を示すタイミングチャートである。 送信側ポートと受信側ポートとの間(遠距離)で行われる、データフレームの転送形態を示すタイミングチャートである。 BBクレジットを増加させた前後にわたる、データフレームの転送形態を示すタイミングチャートである。 BBクレジット数を、送信側ポートと受信側ポートとの間におけるデータ転送距離に合わせて調整する事を示すフローチャートである。 図6のフローチャートの他の実施形態を示すフローチャートである。 さらに他の実施形態を示すフローチャートである。 図8のフローチャートにおいて使用される、送信側と受信側FCポート間の距離とBBクレジット数との関係を示す制御テーブルである。
符号の説明
5、6、7 ホストコンピュータ
10 第1の記憶システム
15 第2の記憶システム
20 第3の記憶システム
110 第1の記憶システム内の論理ボリューム(ORG1)
120 第1の記憶システム内の論理ボリューム(ORG2)
150 第2の記憶システム内の論理ボリューム(Data1)
151 第2の記憶システム内のジャーナルボリューム(JNL1)
200 第3の記憶システム内の論理ボリューム(Data2)
201 第3の記憶システム内のジャーナルボリューム(JNL2)
210、220、240 接続線
250,260,270 データ転送の流れ
50 チャネルアダプタ
55 接続部
60 CACHE
70 SM
80 ディスクアダプタ
100 HDD
400,402 ポート

Claims (11)

  1. 情報処理装置に接続され、前記情報処理装置との間でデータの送受信を行う第1の記憶制御装置と、前記第1の記憶制御装置に通信手段を介して接続され、当該記憶制御装置からデータを受信する、第2の記憶制御装置を備えるリモートコピーシステムにおける、前記第1の記憶制御装置と前記第2の記憶制御装置との間で、ファイバチャネルプロトコルにしたがって、データフレームの転送を行うデータ転送方法において、
    前記第1の記憶制御装置と前記第2の記憶制御装置間との間の距離に応じて、前記データフレームの転送に適用されるバッファ・ツゥー・バッファ・クレジット数を増加させる、ようにしたデータ転送方法。
  2. 前記第1の記憶制御装置が前記第2の記憶制御装置にログインするステップと、
    前記第1の記憶制御装置から前記第2の記憶制御装置に、所定のデータフレームを送信するステップと、
    前記データフレームの送信時刻から、前記第2の記憶制御装置から前記第1の記憶制御装置がレシーブ・レディを受信する時刻までの経過時間を計測するステップと、
    前記経過時間に基づいて、前記バッファ・ツゥー・バッファ・クレジット数を増加させるステップと、を備えてなる、請求項1記載のデータ転送方法。
  3. 前記第1の記憶制御装置が、
    前記バッファ・ツゥー・バッファ・クレジット数の初期値が、前記第2の記憶制御装置が前記第1の記憶制御装置に前記レシーブ・レディを送信してから、前記第1の記憶制御装置が前記レシーブ・レディを受信するまでの間に、前記第2の記憶制御装置にデータフレームを送信できるだけの値か否かを判定する第1ステップと、
    この判定が否定された場合、前記バッファ・ツゥー・バッファ・クレジット数を初期値から増加させる第2ステップと、
    を実行する、請求項2記載のデータ転送方法。
  4. 前記第1のステップは、前記バッファ・ツゥー・バッファ・クレジット数の初期値(n)、前記第1の記憶制御装置から送信される複数のデータフレームの送信間隔(T)、前記第2の記憶制御装置が前記第1の記憶制御装置に前記レシーブ・レディを送信してから、前記第1の記憶制御装置が前記レシーブ・レディを受信するまでの間(t)に基づく、下記式Iによって行われる、請求項3記載のデータ転送方法。
    (n−1)×T<t・・・・・(I)
  5. 前記増加後のバッファ・ツゥー・バッファ・クレジット数が、(n−1)×Tにて算出した値について前記tに最も近い整数である、請求項4記載のデータ転送方法。
  6. 前記第1の記憶制御装置が前記第2の記憶制御装置に、前記増加されたバッファ・ツゥー・バッファ・クレジット数のもとで再ログインされる請求項3記載のデータ転送方法。
  7. 前記第2の記憶制御装置のバッファにおいて、前記第1の記憶制御装置から送られた前記データフレーム処理に停滞が発生した場合、前記第1の記憶制御装置は、前記増加されたバッファ・ツゥー・バッファ・クレジット数を減少させる、請求項3記載のデータ転送方法。
  8. 前記第1の記憶制御装置が、前記減少したバッファ・ツゥー・バッファ・クレジット数に基づいて前記第2の記憶制御装置に再ログインする第3のステップと、
    前記第1の記憶制御装置は、前記データフレームの処理の停滞が解消されない場合には、前記バッファ・ツゥー・バッファ・クレジット数をさらに減少させて、第2の記憶制御装置に再ログインして前記データフレームの転送を行う第4のステップと、を備える、請求項7記載のデータ転送方法。
  9. 前記第1の記憶制御装置は、前記データフレームの処理の停滞が解消された場合、減少された前記バッファ・ツゥー・バッファ・クレジット数を減少前の値に増加させる第5のステップを備える請求項8記載のデータ転送方法。
  10. イニシエータノードのポートとターゲットノードのポート間で、ファイバチャネルプロトコルにしたがって、データフレームの転送を行うデータ転送方法において、
    前記イニシエータノードが前記ターゲットノードに、予め定められたバッファ・ツゥー・バッファ・クレジット数に基づいてログインする第1ステップと、
    前記イニシエータノードのポートと前記ターゲットノードのポート間の距離と前記データ転送に適用されるバッファ・ツゥー・バッファ・クレジット数とを対応させた制御テーブルに基づいて、前記バッファ・ツゥー・バッファ・クレジット数を決定する第2ステップと、
    第1のステップの前記予め定められたバッファ・ツゥー・バッファ・クレジット数が、第2のステップで決定されたバッファ・ツゥー・バッファ・クレジット数以下の場合には、前記イニシエータノードのポートと前記ターゲットノードのポート間での前記データフレームの転送に実際に適用されるバッファ・ツゥー・バッファ・クレジット数を、前記第2のステップで決定された値に設定する第3のステップと、
    を備えてなるデータ転送方法。
  11. 情報処理装置に接続され、前記情報処理装置との間でデータの送受信を行う第1の記憶制御装置と、
    前記第1の記憶制御装置に通信手段を介して接続される第2の記憶制御装置と、
    前記第1の記憶制御装置の論理ボリュームを前記第2の記憶制御装置の論理ボリュームにリモートコピーするコピー制御回路と、
    当該記憶制御装置からデータを受信する、第2の記憶制御装置と、
    前記第1の記憶制御装置と前記第2の記憶制御装置との間で、ファイバチャネルプロトコルにしたがって、前記第1の記憶制御回路のデータフレームを前記第2の記憶制御装置にデータ転送を行う転送制御回路と、
    を備え、
    前記転送制御回路は、前記第1の記憶制御装置と前記第2の記憶制御装置間の距離に応じて、前記データ転送に適用されるバッファ・ツゥー・バッファ・クレジット数を増加させるようにした、リモートコピーシステム。

JP2005307670A 2005-10-21 2005-10-21 データ転送方法及びリモートコピーシステム Pending JP2007115138A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005307670A JP2007115138A (ja) 2005-10-21 2005-10-21 データ転送方法及びリモートコピーシステム
US11/331,084 US7441142B2 (en) 2005-10-21 2006-01-13 Data transfer method and remote copy system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005307670A JP2007115138A (ja) 2005-10-21 2005-10-21 データ転送方法及びリモートコピーシステム

Publications (1)

Publication Number Publication Date
JP2007115138A true JP2007115138A (ja) 2007-05-10

Family

ID=37986656

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005307670A Pending JP2007115138A (ja) 2005-10-21 2005-10-21 データ転送方法及びリモートコピーシステム

Country Status (2)

Country Link
US (1) US7441142B2 (ja)
JP (1) JP2007115138A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010044608A (ja) * 2008-08-13 2010-02-25 Nec Corp ディスクアレイ装置間の遠隔データコピー方法、システムおよびプログラム
JP2010117992A (ja) * 2008-11-14 2010-05-27 Nec Corp データ複製システム、データ複製方法、プログラム、及びディスクアレイ装置
JP2011509443A (ja) * 2007-11-30 2011-03-24 インターナショナル・ビジネス・マシーンズ・コーポレーション ファイバ・チャネル通信における永続情報単位ペーシング・プロトコルの使用に関する方法、システム、および装置
US8593948B1 (en) 2012-12-04 2013-11-26 Hitachi, Ltd. Network device and method of controlling network device
JP2014230072A (ja) * 2013-05-22 2014-12-08 株式会社リコー データ通信デバイス、データ通信装置及びデータ通信方法
US10491544B2 (en) 2017-08-30 2019-11-26 Fujitsu Limited Consistency control of a logical path passing through a relay device
US10938741B2 (en) 2015-12-04 2021-03-02 International Business Machines Corporation Resource allocation for a storage area network

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8683000B1 (en) * 2006-10-27 2014-03-25 Hewlett-Packard Development Company, L.P. Virtual network interface system with memory management
US20090138480A1 (en) 2007-08-29 2009-05-28 Chatley Scott P Filing system and method for data files stored in a distributed communications network
US10079782B2 (en) * 2016-03-31 2018-09-18 Mellanox Technologies Tlv Ltd. Facilitating communication of data packets using credit-based flow control
CN111416776A (zh) * 2019-01-07 2020-07-14 华为技术有限公司 传输数据的方法和网络设备
US11144230B2 (en) 2019-02-18 2021-10-12 International Business Machines Corporation Data copy amount reduction in data replication

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3517452B2 (ja) 1993-10-05 2004-04-12 株式会社日立製作所 データ転送制御方法
US5610745A (en) * 1995-10-26 1997-03-11 Hewlett-Packard Co. Method and apparatus for tracking buffer availability
US5751715A (en) * 1996-08-08 1998-05-12 Gadzoox Microsystems, Inc. Accelerator fiber channel hub and protocol
JPH1155314A (ja) 1997-07-30 1999-02-26 Nippon Telegr & Teleph Corp <Ntt> データ転送制御方法
US7085846B2 (en) * 2001-12-31 2006-08-01 Maxxan Systems, Incorporated Buffer to buffer credit flow control for computer network
US7471628B2 (en) * 2002-06-10 2008-12-30 Cisco Technology, Inc. Intelligent flow control management to extend fibre channel link full performance range
US6859437B2 (en) * 2002-11-05 2005-02-22 Nortel Networks Limited Method and system for extending the reach of a data communication channel using a flow control interception device

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011509443A (ja) * 2007-11-30 2011-03-24 インターナショナル・ビジネス・マシーンズ・コーポレーション ファイバ・チャネル通信における永続情報単位ペーシング・プロトコルの使用に関する方法、システム、および装置
JP2010044608A (ja) * 2008-08-13 2010-02-25 Nec Corp ディスクアレイ装置間の遠隔データコピー方法、システムおよびプログラム
JP2010117992A (ja) * 2008-11-14 2010-05-27 Nec Corp データ複製システム、データ複製方法、プログラム、及びディスクアレイ装置
US8593948B1 (en) 2012-12-04 2013-11-26 Hitachi, Ltd. Network device and method of controlling network device
WO2014087449A1 (en) 2012-12-04 2014-06-12 Hitachi, Ltd. Network device and method of controlling the network device
JP2014230072A (ja) * 2013-05-22 2014-12-08 株式会社リコー データ通信デバイス、データ通信装置及びデータ通信方法
US10938741B2 (en) 2015-12-04 2021-03-02 International Business Machines Corporation Resource allocation for a storage area network
US10491544B2 (en) 2017-08-30 2019-11-26 Fujitsu Limited Consistency control of a logical path passing through a relay device

Also Published As

Publication number Publication date
US20070094530A1 (en) 2007-04-26
US7441142B2 (en) 2008-10-21

Similar Documents

Publication Publication Date Title
JP2007115138A (ja) データ転送方法及びリモートコピーシステム
US8433862B2 (en) Storage system for adjusting asynchronous copy load based on cache activity rate
US7143254B2 (en) Remote copy system
JP4236049B2 (ja) データのミラー・コピーを提供するための方法、システム、およびプログラム
US8595185B2 (en) Storage disaster recovery using a predicted superset of unhardened primary data
JP2008250695A (ja) ディスクアレイコントローラ及びこれを備えたディスクアレイシステム
US8495014B2 (en) Asynchronous remote copy system and storage control method
JP4902538B2 (ja) 通信網を介してデータセットを更新するためのシステム、方法及び装置
US20110013625A1 (en) Storage subsystem
EP3272082B1 (en) System and methods for message redundancy
US8677190B2 (en) Comprehensive end-to-end storage area network (SAN) application transport service
US20080133695A1 (en) Information processing system and backing up data method
US7890715B2 (en) Suspension of an asynchronous remote copy pair system having a primary controller and a remote controller
US10782913B2 (en) Apparatus, method, and program product for data integrity during asynchronous remote copy
US20040198223A1 (en) Flow control in a bluetooth wireless communication system
US10140246B2 (en) Optimizing remote direct memory access (RDMA) with cache aligned operations
EP2220820B1 (en) Usage of persistent information unit pacing protocol in fibre channel communications
US7818447B1 (en) End-to-end broadcast based flow control in a switch fabric
JP6912105B2 (ja) ディスクアレイシステム、ディスクアレイシステムの制御方法、および、ディスクアレイ装置
CN110347535B (zh) 一种提升双控制器写性能的方法
US11936490B2 (en) L2 switch, communication method, and communication program
WO2019242629A1 (zh) 前向纠错的切换方法、装置及计算机存储介质
JP2006100919A (ja) Tcpコネクション中継方法およびtcpコネクション中継装置
JP2010117992A (ja) データ複製システム、データ複製方法、プログラム、及びディスクアレイ装置
KR19990056142A (ko) 교환시스템에서 과금 정보의 이중화 방법