(57)【要約】【課題】  １次記憶制御装置がファイバ・チャネル接続によりリモート・ホストから情報単位を受信し、そのファイバ・チャネル接続により永続情報単位ペーシングが実装される方法、システム、および装置を提供する。【解決手段】  １次記憶制御装置とリモート・ホストとの間のファイバ・チャネル接続により確立された少なくとも１つの論理パスにより１次記憶制御装置でいくつの大量書き込みが受信されたかに関する情報が維持され、大量書き込みは、処理されるデータ情報単位の数が情報単位ペーシング・クレジットのデフォルト値を超える入出力（Ｉ／Ｏ）操作である。１次記憶制御装置は、１次記憶制御装置からリモート・ホストに送信される応答に含まれる情報単位ペーシング・パラメータを調整し、その調整は少なくとも１つの論理パスにより１次記憶制御装置でいくつの大量書き込みが受信されたかについて維持される情報に基づいて行われる。【選択図】  図１
2011509443.tif 000002
【特許請求の範囲】
【請求項１】
１次記憶制御装置で、ファイバ・チャネル接続によりリモート・ホストから情報単位を受信するステップであって、前記ファイバ・チャネル接続により永続情報単位ペーシングが実装されるステップと、
前記１次記憶制御装置と前記リモート・ホストとの間の前記ファイバ・チャネル接続により確立された少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかに関する情報を維持するステップであって、大量書き込みが、処理されるデータ情報単位の数が情報単位ペーシング・クレジットのデフォルト値を超える入出力（Ｉ／Ｏ）操作であるステップと、
前記１次記憶制御装置により、前記１次記憶制御装置から前記リモート・ホストに送信される応答に含まれる情報単位ペーシング・パラメータを調整するステップであって、前記調整が、前記少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかについて維持される前記情報に基づいて行われるステップと、
を含む方法。
【請求項２】
前記情報単位ペーシング・パラメータが、前記１次記憶制御装置からのいずれの追加の応答も待たずに前記リモート・ホストが前記１次記憶制御装置に送信することができる情報単位の数を示し、前記少なくとも１つの論理パスに関する前記情報単位ペーシング・パラメータが、前記大量書き込みによって書き込みバッファの輻輳がまったく発生していない場合に、１６より大きいが２５６より小さい数に設定される、請求項１記載の方法。
【請求項３】
前記情報単位がファイバ接続プロトコルにおけるチャネル・コマンド・ワードであり、前記受信したチャネル・コマンド・ワードがチャネル・コマンド・ワード・チェーンを開始し、
拡張リモート・コピー操作に関するサブシステム操作を定義するサブシステム操作定義コマンドを前記チャネル・コマンド・ワードが含むかどうかを判断するステップと、
前記サブシステム操作定義コマンドに関連するレコード・セット読み取りコマンドの数を決定するステップであって、レコード・セット読み取りコマンドが読み取り要求に対応するステップと、
次のチャネル・プログラムの始めに、より多くの情報単位を送信できるように、論理パスに関する前記情報単位ペーシング・パラメータ値を設定するステップであって、同じ数またはより少ない数の前記レコード・セット読み取りコマンドを使用する場合、チェーン全体を直ちに送信することができるステップと、
をさらに含む、請求項１記載の方法。
【請求項４】
複数の大量書き込みによって書き込みバッファの輻輳が発生する場合、大量書き込みが所定のしきい値を超えるすべての論理パスについて前記情報単位ペーシング・パラメータがリセットされる、請求項１記載の方法。
【請求項５】
前記リモート・ホストが前記１次記憶制御装置からリモート記憶制御装置へのデータの拡張リモート・コピーを実行し、前記リモート・ホストが１００キロメートルを超える距離によって前記１次記憶制御装置から地理的に分離されている、請求項１記載の方法。
【請求項６】
メモリと、
前記メモリに結合され、操作を実行するプロセッサと、
を含むシステムであって、前記操作が、
（ｉ）１次記憶制御装置で、ファイバ・チャネル接続によりリモート・ホストから情報単位を受信するステップであって、前記ファイバ・チャネル接続により永続情報単位ペーシングが実装されるステップと、
（ｉｉ）前記１次記憶制御装置と前記リモート・ホストとの間の前記ファイバ・チャネル接続により確立された少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかに関する情報を維持するステップであって、大量書き込みが、処理されるデータ情報単位の数が情報単位ペーシング・クレジットのデフォルト値を超える入出力（Ｉ／Ｏ）操作であるステップと、
（ｉｉｉ）前記１次記憶制御装置により、前記１次記憶制御装置から前記リモート・ホストに送信される応答に含まれる情報単位ペーシング・パラメータを調整するステップであって、前記調整が、前記少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかについて維持される前記情報に基づいて行われるステップと、
を含むシステム。
【請求項７】
前記情報単位ペーシング・パラメータが、前記１次記憶制御装置からのいずれの追加の応答も待たずに前記リモート・ホストが前記１次記憶制御装置に送信することができる情報単位の数を示し、前記少なくとも１つの論理パスに関する前記情報単位ペーシング・パラメータが、前記大量書き込みによって書き込みバッファの輻輳がまったく発生していない場合に、１６より大きいが２５６より小さい数に設定される、請求項６記載のシステム。
【請求項８】
前記情報単位がファイバ接続プロトコルにおけるチャネル・コマンド・ワードであり、前記受信したチャネル・コマンド・ワードがチャネル・コマンド・ワード・チェーンを開始し、前記操作が、
拡張リモート・コピー操作に関するサブシステム操作を定義するサブシステム操作定義コマンドを前記チャネル・コマンド・ワードが含むかどうかを判断するステップと、
前記サブシステム操作定義コマンドに関連するレコード・セット読み取りコマンドの数を決定するステップであって、レコード・セット読み取りコマンドが読み取り要求に対応するステップと、
次のチャネル・プログラムの始めに、より多くの情報単位を送信できるように、論理パスに関する前記情報単位ペーシング・パラメータ値を設定するステップであって、同じ数またはより少ない数の前記レコード・セット読み取りコマンドを使用する場合、チェーン全体を直ちに送信することができるステップと、
をさらに含む、請求項６記載のシステム。
【請求項９】
複数の大量書き込みによって書き込みバッファの輻輳が発生する場合、大量書き込みが所定のしきい値を超えるすべての論理パスについて前記情報単位ペーシング・パラメータがリセットされる、請求項６記載のシステム。
【請求項１０】
前記リモート・ホストが前記１次記憶制御装置からリモート記憶制御装置へのデータの拡張リモート・コピーを実行し、前記リモート・ホストが１００キロメートルを超える距離によって前記１次記憶制御装置から地理的に分離されている、請求項６記載のシステム。
【請求項１１】
機械上で実行されると操作を実行するコードを含む装置であって、前記操作が、
１次記憶制御装置で、ファイバ・チャネル接続によりリモート・ホストから情報単位を受信するステップであって、前記ファイバ・チャネル接続により永続情報単位ペーシングが実装されるステップと、
前記１次記憶制御装置と前記リモート・ホストとの間の前記ファイバ・チャネル接続により確立された少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかに関する情報を維持するステップであって、大量書き込みが、処理されるデータ情報単位の数が情報単位ペーシング・クレジットのデフォルト値を超える入出力（Ｉ／Ｏ）操作であるステップと、
前記１次記憶制御装置により、前記１次記憶制御装置から前記リモート・ホストに送信される応答に含まれる情報単位ペーシング・パラメータを調整するステップであって、前記調整が、前記少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかについて維持される前記情報に基づいて行われるステップと、
を含む装置。
【請求項１２】
前記情報単位ペーシング・パラメータが、前記１次記憶制御装置からのいずれの追加の応答も待たずに前記リモート・ホストが前記１次記憶制御装置に送信することができる情報単位の数を示し、前記少なくとも１つの論理パスに関する前記情報単位ペーシング・パラメータが、前記大量書き込みによって書き込みバッファの輻輳がまったく発生していない場合に、１６より大きいが２５６より小さい数に設定される、請求項１１記載の装置。
【請求項１３】
前記情報単位がファイバ接続プロトコルにおけるチャネル・コマンド・ワードであり、前記受信したチャネル・コマンド・ワードがチャネル・コマンド・ワード・チェーンを開始し、前記操作が、
拡張リモート・コピー操作に関するサブシステム操作を定義するサブシステム操作定義コマンドを前記チャネル・コマンド・ワードが含むかどうかを判断するステップと、
前記サブシステム操作定義コマンドに関連するレコード・セット読み取りコマンドの数を決定するステップであって、レコード・セット読み取りコマンドが読み取り要求に対応するステップと、
次のチャネル・プログラムの始めに、より多くの情報単位を送信できるように、論理パスに関する前記情報単位ペーシング・パラメータ値を設定するステップであって、同じ数またはより少ない数の前記レコード・セット読み取りコマンドを使用する場合、チェーン全体を直ちに送信することができるステップと、
をさらに含む、請求項１１記載の装置。
【請求項１４】
複数の大量書き込みによって書き込みバッファの輻輳が発生する場合、大量書き込みが所定のしきい値を超えるすべての論理パスについて前記情報単位ペーシング・パラメータがリセットされる、請求項１１記載の装置。
【請求項１５】
前記リモート・ホストが前記１次記憶制御装置からリモート記憶制御装置へのデータの拡張リモート・コピーを実行し、前記リモート・ホストが１００キロメートルを超える距離によって前記１次記憶制御装置から地理的に分離されている、請求項１１記載の装置。
【請求項１６】
コンピュータ・システム内にコンピュータ可読コードを統合することを含む、コンピューティング・インフラストラクチャを配備するための方法であって、前記コードが前記コンピュータ・システムと組み合って、
１次記憶制御装置で、ファイバ・チャネル接続によりリモート・ホストから情報単位を受信するステップであって、前記ファイバ・チャネル接続により永続情報単位ペーシングが実装されるステップと、
前記１次記憶制御装置と前記リモート・ホストとの間の前記ファイバ・チャネル接続により確立された少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかに関する情報を維持するステップであって、大量書き込みが、処理されるデータ情報単位の数が情報単位ペーシング・クレジットのデフォルト値を超える入出力（Ｉ／Ｏ）操作であるステップと、
前記１次記憶制御装置により、前記１次記憶制御装置から前記リモート・ホストに送信される応答に含まれる情報単位ペーシング・パラメータを調整するステップであって、前記調整が、前記少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかについて維持される前記情報に基づいて行われるステップと、
を実行できる方法。
【請求項１７】
前記情報単位ペーシング・パラメータが、前記１次記憶制御装置からのいずれの追加の応答も待たずに前記リモート・ホストが前記１次記憶制御装置に送信することができる情報単位の数を示し、前記少なくとも１つの論理パスに関する前記情報単位ペーシング・パラメータが、前記大量書き込みによって書き込みバッファの輻輳がまったく発生していない場合に、１６より大きいが２５６より小さい数に設定される、請求項１６記載のコンピューティング・インフラストラクチャを配備するための方法。
【請求項１８】
前記情報単位がファイバ接続プロトコルにおけるチャネル・コマンド・ワードであり、前記受信したチャネル・コマンド・ワードがチャネル・コマンド・ワード・チェーンを開始し、前記コードが前記コンピュータ・システムと組み合って、
拡張リモート・コピー操作に関するサブシステム操作を定義するサブシステム操作定義コマンドを前記チャネル・コマンド・ワードが含むかどうかを判断するステップと、
前記サブシステム操作定義コマンドに関連するレコード・セット読み取りコマンドの数を決定するステップであって、レコード・セット読み取りコマンドが読み取り要求に対応するステップと、
次のチャネル・プログラムの始めに、より多くの情報単位を送信できるように、論理パスに関する前記情報単位ペーシング・パラメータ値を設定するステップであって、同じ数またはより少ない数の前記レコード・セット読み取りコマンドを使用する場合、チェーン全体を直ちに送信することができるステップと、
を実行できる、請求項１６記載のコンピューティング・インフラストラクチャを配備するための方法。
【請求項１９】
複数の大量書き込みによって書き込みバッファの輻輳が発生する場合、大量書き込みが所定のしきい値を超えるすべての論理パスについて前記情報単位ペーシング・パラメータがリセットされる、請求項１６記載のコンピューティング・インフラストラクチャを配備するための方法。
【請求項２０】
前記リモート・ホストが前記１次記憶制御装置からリモート記憶制御装置へのデータの拡張リモート・コピーを実行し、前記リモート・ホストが１００キロメートルを超える距離によって前記１次記憶制御装置から地理的に分離されている、請求項１６記載のコンピューティング・インフラストラクチャを配備するための方法。
【請求項２１】
１次記憶制御装置と、
前記１次記憶制御装置で、ファイバ・チャネル接続によりリモート・ホストから情報単位を受信するための手段であって、前記ファイバ・チャネル接続により永続情報単位ペーシングが実装される手段と、
前記１次記憶制御装置と前記リモート・ホストとの間の前記ファイバ・チャネル接続により確立された少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかに関する情報を維持するための手段であって、大量書き込みが、処理されるデータ情報単位の数が情報単位ペーシング・クレジットのデフォルト値を超える入出力（Ｉ／Ｏ）操作である手段と、
前記１次記憶制御装置により、前記１次記憶制御装置から前記リモート・ホストに送信される応答に含まれる情報単位ペーシング・パラメータを調整するための手段であって、前記調整が、前記少なくとも１つの論理パスにより前記１次記憶制御装置でいくつの大量書き込みが受信されたかについて維持される前記情報に基づいて行われる手段と、
を含むシステム。
【請求項２２】
前記情報単位ペーシング・パラメータが、前記１次記憶制御装置からのいずれの追加の応答も待たずに前記リモート・ホストが前記１次記憶制御装置に送信することができる情報単位の数を示し、前記少なくとも１つの論理パスに関する前記情報単位ペーシング・パラメータが、前記大量書き込みによって書き込みバッファの輻輳がまったく発生していない場合に、１６より大きいが２５６より小さい数に設定される、請求項２１記載のシステム。
【請求項２３】
前記情報単位がファイバ接続プロトコルにおけるチャネル・コマンド・ワードであり、前記受信したチャネル・コマンド・ワードがチャネル・コマンド・ワード・チェーンを開始し、
拡張リモート・コピー操作に関するサブシステム操作を定義するサブシステム操作定義コマンドを前記チャネル・コマンド・ワードが含むかどうかを判断するための手段と、
前記サブシステム操作定義コマンドに関連するレコード・セット読み取りコマンドの数を決定するための手段であって、レコード・セット読み取りコマンドが読み取り要求に対応する手段と、
次のチャネル・プログラムの始めに、より多くの情報単位を送信できるように、論理パスに関する前記情報単位ペーシング・パラメータ値を設定するための手段であって、同じ数またはより少ない数の前記レコード・セット読み取りコマンドを使用する場合、チェーン全体を直ちに送信することができる手段と、
をさらに含む、請求項２１記載のシステム。
【請求項２４】
複数の大量書き込みによって書き込みバッファの輻輳が発生する場合、大量書き込みが所定のしきい値を超えるすべての論理パスについて前記情報単位ペーシング・パラメータがリセットされる、請求項２１記載のシステム。
【請求項２５】
前記リモート・ホストが前記１次記憶制御装置からリモート記憶制御装置へのデータの拡張リモート・コピーを実行し、前記リモート・ホストが１００キロメートルを超える距離によって前記１次記憶制御装置から地理的に分離されている、請求項２１記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイバ・チャネル（fibre channel）通信における永続情報単位ペーシング・プロトコル（persistent information unit pacing protocol）の使用に関する方法、システム、および装置（article of manufacture）に関する。
【背景技術】
【０００２】
ファイバ・チャネルとは、米国規格協会によって策定されたデータ転送用アーキテクチャ規格の統合セットを指す。ファイバ接続（ＦＩＣＯＮ：Fibre Connection）は、ファイバ・チャネル・アーキテクチャのプロトコルであり、ＦＣ−ＳＢ−３という形式的名称で呼ぶこともできる。ＦＣ−ＳＢ−３の詳細については、２００３年３月２６日にAmerican National Standards for Information Technologyによって発行された「FIBRE CHANNEL Single-Byte Command Code Sets-3 Mapping Protocol(FC-SB-3)」のRev. 1.6という文献および２００７年９月２８日にAmerican National Standard for Information Technologyによって発行された「Fibre Channel Single-Byte Command Code Sets-3」のAMENDMENT 1 (FC-SB-3/AM1)、INCITS374-2003/AM1-2007という文献に記載されている。
【０００３】
チャネルとは、通信装置間の直接または交換Ｐｏｉｎｔ−ｔｏ−Ｐｏｉｎｔ接続である。ファイバ・チャネル・アーキテクチャでは、ＦＩＣＯＮチャネルは、ＦＣ−ＳＢ−３によって指定された機能を実行して、制御装置またはエミュレートされた制御装置により入出力（Ｉ／Ｏ）装置へのアクセスを可能にすることができる。ＦＩＣＯＮチャネルは、通信装置間でデータを転送するためにパケット交換に依存する可能性がある。
【０００４】
チャネル・コマンド・ワード（ＣＣＷ：channel command word）は、Ｉ／Ｏ要求を含む制御ブロックであり、パラメータとともに実行すべきコマンドを指定する特定のシステム・アーキテクチャの構造を指すことができる。チャネル・プログラムは、順次実行される１つまたは複数のチャネル・コマンド・ワードのシーケンスであって、特定のシーケンスのチャネル操作を制御するものである。ＦＩＣＯＮチャネルは、任意の書き込み操作に関する関連データとともに、一度に最高１６個のチャネル・コマンド・ワードを伝送することができ、チャネル・コマンド・ワードは「情報単位」と呼ぶことができる。１６個を超える情報単位が１つのチャネル・プログラム内に存在する場合、そのチャネル・プログラムが完了するまで最初の１６個の情報単位の伝送後に残りの情報単位を８個ずつのグループにして伝送することができる。１６個を超える追加の情報単位は、コマンド応答要求（ＣＲＲ：Command Response Request）に応答して受信側からのコマンド応答を受信した後でのみ送信することができる。残りの情報単位の伝送が８個ずつのグループにして行われることは慣例であるが、残りの情報単位の伝送は必ずしも８個ずつのグループにする必要がないことに留意されたい。
【０００５】
グローバル・ミラーＺ（ＧＭｚまたはｚＧＭ）とも呼ばれる拡張リモート・コピー（ＸＲＣ：Extended Remote Copy）は、ｚ／ＯＳ＊およびＯＳ／３９０＊オペレーティング・システムのために使用可能なコピー機能である。ＸＲＣは、リモート・ロケーションで非同期的にそのデータのコピーを維持し、１００キロメートルを超える距離などの長距離にわたって実装することができる。ＸＲＣは、ＩＢＭエンタープライズ・ストレージ・サーバ（ＥＳＳ：Enterprise Storage Server）で使用することができる。ＸＲＣの詳細については、２００４年７月にインターナショナル・ビジネス・マシーンズ社によって発行された「IBM TotalStorage Enterprise Storage Server: Implementing ESS CopyServices with IBM eServer zSeries」という文献に記載されている。
【０００６】
長距離ＸＲＣ構成は、リモート・ホストと１次サイト制御装置との間のファイバ・チャネル拡張技術を使用することができる。この拡張ファイバ・チャネルは、１次サイト制御装置からデータを読み取り、リモート・サイトの記憶域にバックアップ・データを保管するためにリモート・ホストが使用することができる。リモート・ホストは、サブシステム操作定義（ＤＳＯ：define subsystem operation）コマンドとそれに続く一連のレコード・セット読み取り（ＲＲＳ：read record set）コマンドと、最後にサブシステム機能実行（ＰＳＦ：PerformSubsystem Function）／サブシステム・データ読み取り（ＲＳＳＤ：Read SubSystemData）コマンド・セットとを含むコマンド・チェーンを１次サイト制御装置に発行し、次のチェーンに関するサイドファイル項目（side-file entry）の数を決定することができる。そのチェーン内のＲＲＳコマンドのカウントは、ＤＳＯコマンド・パラメータに示すことができる。特定のソリューションではこのカウントは約１５０ＣＣＷになる可能性がある。
【０００７】
ＦＩＣＯＮアーキテクチャにおいて「情報単位ペーシング」と呼ばれるフロー制御方法は、任意の時点で未完了（in flight）の情報単位が多くても１６個になるようにＦＩＣＯＮチャネルを制限することができる。チャネル・プログラムは、８番目の情報単位内にコマンド応答要求（ＣＲＲ）ビットを設定することにより、コマンド応答情報単位を要求することができる。チャネル・プログラムが制御装置からコマンド応答情報単位を受信すると、さらに８個の情報単位が送信される。これにより、１００キロメートルを超える距離などの長距離でデータ・レート・ドループ（data rate droop）が発生する可能性がある。というのは、制御装置は、ＦＩＣＯＮペーシング・プロトコルにより追加の情報単位を要求する前に最初のグループの１６個の情報単位を受信しなければならず、その結果、チャネルと制御装置のポート間の追加の往復通信が追加される。往復の回数は、チャネル・コマンド・ワード・チェーンのサイズによって決まる。１つのチャネル・コマンド・ワード・チェーン内に１５０個のチャネル・コマンド・ワードが存在する場合、最高１７回の往復が行われる可能性がある。１００キロメートルを超える距離などの長距離では、追加の往復通信のために相当なオーバヘッドが追加される可能性がある。
【０００８】
このため、いわゆる「スプーフィング（spoofing）」チャネル・エクステンダでは、それぞれのコマンドを検査して、そのコマンドがＤＳＯ／ＲＲＳコマンド・チェーンであることを確認するための機能を追加している。ＤＳＯ／ＲＲＳコマンド・チェーンである場合、リモート・チャネル・エクステンダは、ＲＲＳコマンドのＣＣＷチェーンを生成し、ローカル・エクステンダによって受信されることが予想されるコマンドをシミュレートすることができる。そのデータは、リモート・エクステンダによってローカル・エクステンダに出荷され、そこでＣＣＷチェーンは、それが制御装置内にある場合と同じように、受信されたデータについて実行される。これは、長距離を必要とする余分な往復によって発生したデータ・レート・ドループを回避するものである。しかし、チャネル・エクステンダ内のこの機能は、チャネル拡張のための比較的高価なソリューションにカスタマを限定する可能性がある。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】２００３年３月２６日にAmericanNational Standards for Information Technologyによって発行された「FIBRECHANNEL Single-Byte Command Code Sets-3 Mapping Protocol (FC-SB-3)」のRev. 1.6
【非特許文献２】２００７年９月２８日にAmericanNational Standard for Information Technologyによって発行された「FibreChannel Single-Byte Command Code Sets-3」のAMENDMENT 1(FC-SB-3/AM1)、INCITS 374-2003/AM1-2007
【非特許文献３】２００４年７月にインターナショナル・ビジネス・マシーンズ社によって発行された「IBM TotalStorage Enterprise Storage Server: Implementing ESS CopyServices with IBM eServer zSeries」
【発明の概要】
【発明が解決しようとする課題】
【００１０】
１次記憶制御装置がファイバ・チャネル接続によりリモート・ホストから情報単位を受信し、そのファイバ・チャネル接続により永続情報単位ペーシングが実装される方法、システム、および装置が提供される。１次記憶制御装置とリモート・ホストとの間のファイバ・チャネル接続により確立された少なくとも１つの論理パスにより１次記憶制御装置でいくつの大量書き込み（large write）が受信されたかに関する情報が維持され、大量書き込みは、処理されるデータ情報単位の数が情報単位ペーシング・クレジット（information unit pacing credit）のデフォルト値を超える入出力（Ｉ／Ｏ）操作である。１次記憶制御装置は、１次記憶制御装置からリモート・ホストに送信される応答に含まれる情報単位ペーシング・パラメータを調整し、その調整は少なくとも１つの論理パスにより１次記憶制御装置でいくつの大量書き込みが受信されたかについて維持される情報に基づいて行われる。
【課題を解決するための手段】
【００１１】
特定の諸実施形態では、情報単位ペーシング・パラメータは、１次記憶制御装置からのいずれの追加の応答も待たずにリモート・ホストが１次記憶制御装置に送信することができる情報単位の数を示し、少なくとも１つの論理パスに関する情報単位ペーシング・パラメータは、大量書き込みによって書き込みバッファの輻輳がまったく発生していない場合に、１６より大きいが２５６より小さい数に設定される。
【００１２】
他の諸実施形態では、情報単位はファイバ接続プロトコルにおけるチャネル・コマンド・ワードであり、受信したチャネル・コマンド・ワードがチャネル・コマンド・ワード・チェーンを開始する。拡張リモート・コピー操作に関するサブシステム操作を定義するサブシステム操作定義コマンドをそのチャネル・コマンド・ワードが含むかどうかについて判断が行われる。サブシステム操作定義コマンドに関連するレコード・セット読み取りコマンドの数が決定され、レコード・セット読み取りコマンドは読み取り要求に対応する。論理パスに関する情報単位ペーシング・パラメータ値は、次のチャネル・プログラムの始めに、より多くの情報単位を送信できるように設定され、同じ数またはより少ない数のレコード・セット読み取りコマンドを使用する場合、チェーン全体を直ちに送信することができる。
【００１３】
さらに他の諸実施形態では、複数の大量書き込みによって書き込みバッファの輻輳が発生する場合、大量書き込みが所定のしきい値を超えるすべての論理パスについて情報単位ペーシング・パラメータがリセットされる。
【００１４】
特定の諸実施形態では、リモート・ホストは１次記憶制御装置からリモート記憶制御装置へのデータの拡張リモート・コピーを実行し、リモート・ホストは１００キロメートルを超える距離によって１次記憶制御装置から地理的に分離されている。
【００１５】
次に、図面を参照すると、同様の参照番号は図面全体を通して対応する部分を表している。
【図面の簡単な説明】
【００１６】
【図１】特定の諸実施形態によるコンピューティング環境のブロック図である。
【図２】特定の諸実施形態により、リモート・ホストと１次記憶制御装置との間の通信を示すブロック図である。
【図３】特定の諸実施形態により、チャネルと制御装置との間の通信を示すブロック図である。
【図４】特定の諸実施形態により、ファイバ・チャネル接続に関連するデータ構造を示す図である。
【図５】特定の諸実施形態により、拡張リモート・コピーに関連するデータ構造を示す図である。
【図６】特定の諸実施形態により、操作環境でＩＵペーシング・パラメータがどのように設定されるかを示すブロック図である。
【図７】特定の諸実施形態により、ＩＵペーシング・パラメータを設定するための第１の操作を示す流れ図である。
【図８】ＩＵペーシング・パラメータを設定するための第２の操作を示す流れ図である。
【図９】コンピュータ・システムのアーキテクチャを示す図であり、特定の諸実施形態では、そのコンピュータ・システムのアーキテクチャにより、図１のコンピューティング環境の諸要素を実装することができる。
【発明を実施するための形態】
【００１７】
以下の説明では、本明細書の一部を形成し、いくつかの実施形態を示す添付図面を参照する。他の諸実施形態を使用することができ、構造上および操作上の変更を行うことができることは言うまでもない。
【００１８】
特定の模範的な諸実施形態の概要
永続ＩＵペーシング・プロトコルにより、チャネルは１６個を超える情報単位を一度に制御装置に送信することができ、その結果、長距離のコマンド関連データ・レート・ドループが緩和される。永続ＩＵペーシング・プロトコルを使用する特定の諸実施形態では、１６個を超える情報単位が特定の時点で未完了になり得るように、長距離リモート・コピー（ＸＲＣ）環境内の１次記憶制御装置がＦＩＣＯＮアーキテクチャ内の情報単位のフローを変更することができる。ファイバ・チャネル・ネットワークにおいてＦＩＣＯＮを使用する長距離リモート・コピー実装例では、リモート・ホストは、長距離リモート・コピー操作を実行して、１次記憶制御装置からリモート記憶制御装置にデータをコピーすることができる。１６個を超える情報単位が特定の時点で未完了になるようにすることにより、特定の諸実施形態は、任意の時点で未完了の情報単位が１６個以下になるようにチャネルが制限される状況と比較して、拡張リモート・コピーを実行するための時間を短縮することができる。
【００１９】
特定の諸実施形態は、以下の操作を実行することにより、ＦＩＣＯＮアーキテクチャによるＸＲＣ実装例における読み取りを妨害する可能性のある書き込み操作の輻輳制御を実装する。
（ｉ）ＬＷ（大量書き込み）カウントは論理パスごとに大量書き込みを追跡する。大量書き込みは、処理されるデータＩＵの数がデフォルトＩＵペーシング・クレジットを超えるＩ／Ｏ操作として定義される。
（ｉｉ）ＲＲＳサブオーダを含むＤＳＯが論理パス上で受信されるたびに、ＬＷカウントを減分する。ＬＷカウントがこの時点で０に達した場合、最大ペーシング・クレジットが２５５であることを条件として、その論理パスに関するペーシング・クレジットをＤＳＯコマンド・パラメータに示されているＲＲＳコマンドの数より３つ多い数に設定する。
（ｉｉｉ）チェーンの終わりに、そのチェーンに関する書き込みＩＵカウントがデフォルト・ペーシング・クレジット（または調整可能な値）を超える場合、ＬＷカウントを増分する。ＬＷカウントが最大値に達した場合、その論理パスを大量書き込みしきい値（ＬＷＴ：Large Write Threshold）リスト上に置く。極端に大きいＬＷチェーンを補償するために、そのチェーンに関するＬＷカウントをデフォルト・ペーシング・カウントで割った値だけ、ＬＷカウントを増分することができる。
（ｉｖ）Ｉ／Ｏ操作の終わりに、書き込みバッファ輻輳が発生している場合、ＬＷＴリスト上のすべての論理パスについてペーシング・カウントをリセットする。
（ｖ）ＬＷカウントは、０未満に減分することまたは選択された最大値より上に増分することはできない。
（ｖｉ）チェーンの始めに、その論理パスについて現在保管されているペーシング・クレジットをコマンド応答（ＣＭＲ）で使用し、そのペーシング・クレジットは、このＣＭＲを受信した後でそのチャネルが開始する次のチェーンについて効力を発する。
【００２０】
模範的な好ましい諸実施形態
図１は、１次記憶制御装置１０４およびリモート記憶制御装置１０６に結合されたリモート・ホスト１０２を使用するコンピューティング環境１００のブロック図を示している。図１は、１つのリモート・ホスト１０２と、１つの１次記憶制御装置１０４と、１つのリモート記憶制御装置１０６のみを示しているが、特定の代替諸実施形態では、複数の１次およびリモート記憶制御装置に複数のリモート・ホストを結合することができる。
【００２１】
リモート・ホスト１０２は、ファイバ・チャネル１０８などのデータ・インターフェース・チャネルまたは当技術分野で知られている任意の他のデータ・インターフェース・メカニズムにより１次記憶制御装置１０４に接続することができる。リモート・ホスト１０２は、パーソナル・コンピュータ、ワークステーション、サーバ、メインフレーム、ハンドヘルド・コンピュータ、電話機、ネットワーク家電など、当技術分野で現在知られている任意の適切なコンピュータ装置にすることができる。リモート・ホスト１０２は、ＩＢＭ  ＯＳ／３９０またはｚ／ＯＳオペレーティング・システムなど、当技術分野で知られている任意のオペレーティング・システムを含むことができる。
【００２２】
１次記憶制御装置１０４およびリモート記憶制御装置１０６は、複数の論理ボリュームを含むことができる。１次記憶制御装置１０４およびリモート記憶制御装置１０６は複数の物理記憶装置を制御することができ、そのそれぞれは１つまたは複数の物理ボリュームを含むことができる。
【００２３】
リモート・ホスト１０２はホスト・アプリケーション１１０を含むことができ、１次記憶制御装置１０４はコントローラ・アプリケーション１１２を含むことができる。ホスト・アプリケーション１１０は、１次記憶制御装置１０４からデータを読み取り、リモート記憶制御装置１０６にデータを保管するために、コントローラ・アプリケーション１１２とのインターフェースを取る。ホスト・アプリケーション１１０とコントローラ・アプリケーション１１２はファイバ・チャネル１０８により通信する。特定の諸実施形態では、ホスト・アプリケーション１１０はファイバ・チャネル１０８による拡張リモート・コピーを使用して、１次記憶制御装置１０４からリモート記憶制御装置１０６にデータをコピーする。
【００２４】
ファイバ・チャネル１０８によるリモート・ホスト１０２と１次記憶制御装置１０４との通信は、リモート・ホスト１０２に含まれるファイバ・チャネル・アダプタ１１４と、１次記憶制御装置１０４に含まれるファイバ・チャネル・アダプタ１１６によって使用可能にすることができる。リモート・ホスト１０２に含まれるファイバ・チャネル・アダプタ１１４はポート１１８を含み、１次記憶制御装置１０４に含まれるファイバ・チャネル・アダプタ１１６はポート１２０を含み、ポート１１８および１２０はファイバ・チャネルの専門用語ではＮポートと呼ぶことができる。ＦＩＣＯＮプロトコルによるファイバ・チャネル・ベースの通信は、リモート・ホスト１０２のポート１１８と１次記憶制御装置１０４のポート１２０との間で実行することができる。２つのファイバ・チャネル・アダプタ１１４、１１６間では、複数の論理パスを確立することができる。
【００２５】
したがって、図１は、拡張リモート・コピー操作を使用することにより、ホスト・アプリケーション１１０がＦＩＣＯＮプロトコルにより１次記憶制御装置１０４からリモート記憶制御装置１０６にデータをコピーするコンピューティング環境１００を示している。特定の諸実施形態では、リモート・ホスト１０２と１次記憶制御装置１０４との距離は、ファイバ・チャネル拡張ソリューションを使用することにより、ファイバ・チャネル・アーキテクチャによってサポートされる最大距離を超えることもできる。
【００２６】
図２は、コンピューティング環境１００で実装された特定の諸実施形態により、リモート・ホスト１０２と１次記憶制御装置１０４との間の通信を示すブロック図を示している。
【００２７】
リモート・ホスト１０２は、リモート・ホスト１０２と１次記憶制御装置１０４との間でＦＩＣＯＮプロトコルにより生成されたチャネルにより１つまたは複数のチャネル・コマンド・ワード４００を１つのシーケンスとして送信することができる。１次記憶制御装置１０４は、特定のチャネル・コマンド・ワード２００に応答してコマンド応答情報単位２０２を送信することができる。特定の諸実施形態では、コマンド応答情報単位２０２に含まれるＩＵペーシング・パラメータ２０８などのＩＵペーシング・パラメータを調整することにより、１次記憶制御装置１０４は、リモート・ホスト１０２と１次記憶制御装置１０４との間で未完了にすることができるチャネル・コマンド・ワードの数を変更することができる。
【００２８】
図３は、特定の諸実施形態により、コンピューティング環境１００で実装されたチャネル３００と制御装置３０２との間の通信を示すブロック図を示している。
【００２９】
特定の諸実施形態では、チャネル３００は、リモート・ホスト１０２の１つのエンティティであり、ポート１１８を含む。制御装置３０２は、記憶制御装置１０４の１つのエンティティであり、ポート１２０を含む。チャネル３００と制御装置３０２との間に論理パスを確立することができる。
【００３０】
特定の諸実施形態では、チャネルは、チャネル３００と制御装置３０２との間の論理パスの確立を要求する論理パス確立（ＥＬＰ：establish logical path）要求３０４を制御装置３０２に送信する。論理パス確立要求３０４を受信したことに応答して、制御装置３０２は、論理パス確立済み（ＬＰＥ：logical path established）応答３０６をチャネル３００に送信し、論理パスを確立することができる。
【００３１】
永続ＩＵペーシングがＦＩＣＯＮアーキテクチャにより実装される特定の諸実施形態では、論理パス確立要求３０４および論理パス確立済み応答３０６を使用することにより論理パスが確立されたときにＩＵペーシング・パラメータの値の保持に関するサポートを制御装置３０２が示した場合に、チャネル３００はその後のコマンド・チェーンのためにＩＵペーシング・パラメータの値を保持することができる。
【００３２】
図４は、特定の諸実施形態により、コンピューティング環境１００内でファイバ・チャネル１０８により実装されたファイバ接続に関連するデータ構造を示している。図４に示されているデータ構造はＦＩＣＯＮデータ構造４００と呼ばれる。
【００３３】
ＦＩＣＯＮデータ構造４００は、１つまたは複数のチャネル・コマンド・ワード４０２と、情報単位ペーシング・クレジット４０４と、情報単位ペーシング・パラメータ４０８を有するコマンド応答情報単位４０６とを含み、情報単位ペーシング・パラメータ４０８はＩＵペーシング・パラメータとも呼ばれ、情報単位ペーシング・クレジット４０４はＩＵペーシング・クレジットと呼ぶこともできる。ＦＩＣＯＮデータ構造４００は、論理パス確立要求３０４および論理パス確立済み応答３０６も含む。
【００３４】
チャネル・コマンド・ワード４０２は、Ｉ／Ｏ要求を含む制御ブロックである。たとえば、特定の諸実施形態では、チャネル・コマンド・ワード４０２は、ホスト・アプリケーション１１０からコントローラ・アプリケーション１１２への読み取り要求を含むことができ、読み取り要求は記憶制御装置１０４によって保管されたデータを読み取るための要求である。チャネル・コマンド・ワード４０２は、チャネル３００から制御装置３０２に送信することができる。チャネル・コマンド・ワード４０２は、情報単位と呼ぶこともできる。
【００３５】
リモート・ホスト１０２と記憶制御装置１０４との間のファイバ・チャネル通信に関する各チャネル３００はＩＵペーシング・クレジット４０４を提供するが、このペーシング・クレジットは、各チャネル・プログラムの始めにまたはチャネル・プログラムの実行を続けるための再接続中に初期設定することができる。ＩＵペーシング・クレジット４０４は、リモート・ホスト１０２が記憶制御装置１０４からコマンド応答情報単位４０６を受信する前に、リモート・ホスト１０２が記憶制御装置１０４に送信可能な情報単位の最大数である。
【００３６】
コマンド応答情報単位４０６は、特定の条件に応答して、記憶制御装置１０４からリモート・ホスト１０２に送信される情報単位である。たとえば、コマンド応答情報単位４０６は、特定のチャネル・コマンド・ワード４０２に応答して、記憶制御装置１０４からリモート・ホスト１０２に送信することができる。コマンド応答情報単位４０６に関連するＩＵペーシング・パラメータ４０８は、リモート・ホスト１０２がチャネルにより送信可能な情報単位の最大数を示すために、記憶制御装置１０４のポート１２０から送信することができる。ゼロというＩＵペーシング・パラメータ４０８は、ＩＵペーシング・クレジットの値をデフォルト値にリセットすることを示している。
【００３７】
チャネル・プログラムの始めにまたは再接続するたびに、チャネル３００はいくつかの情報単位を制御装置３０２に送信することができる。送信された情報単位の数は情報単位ペーシング・クレジット４０４の値を超えることはできず、情報単位ペーシング・クレジット４０４の値は情報単位ペーシング・クレジット値とも呼ばれる。
【００３８】
チャネル３００から制御装置３０２に論理パス確立要求３０４を送信して、チャネル３００によってサポートされる任意選択の特徴を示し、チャネル３００と制御装置３０２との間の論理パスの確立を要求することができる。制御装置３０２からの論理パス確立済み応答３０６は、論理パス確立要求の正常な完了と論理パスの確立を確認するものであり、チャネル３００と制御装置３０２との間で送信されるすべての情報単位について使用すべき任意選択の特徴を示す。
【００３９】
論理パス確立要求３０４は、論理パス確立パラメータ３０８と呼ばれる関連パラメータを有する論理パス確立機能を介して実装することができる。論理パス確立パラメータ３０８に含まれる永続ペーシング制御標識ビット３１０は、チャネル３００が永続ペーシングに関するサポートを提供するかどうか、すなわち、複数のコマンド・チェーンの全域で情報単位ペーシング・パラメータ４０８の値を保持することを示すことができ、１つのコマンド・チェーンは複数チャネル・コマンド・ワードのシーケンスである。永続ペーシングは、永続情報単位ペーシングと呼ぶこともできる。
【００４０】
論理パス確立済み応答３０６は、論理パス確立済みパラメータ３１２と呼ばれる関連パラメータを有する機能を介して実装することができる。論理パス確立済みパラメータ３１２に含まれる永続ペーシング制御応答標識ビット３１４は、制御装置３０２が永続ペーシングに関するサポートを提供するかどうかを示すことができる。
【００４１】
したがって、図４は、永続ペーシング制御標識ビット３０１と呼ばれる第１の標識と、永続ペーシング制御応答標識ビット３１４と呼ばれる第２の標識が、チャネル３００と制御装置３０２との間で確立された論理パスが永続ペーシングを使用可能にするかどうかを示す、特定の諸実施形態を示している。特定の諸実施形態では、第１の標識３１０と第２の標識３１４はファイバ・チャネル・プロトコルの機能強化として含まれ、そのファイバ・チャネル・プロトコルの機能強化は複数のコマンド・チェーンの全域で永続情報単位ペーシングをサポートする。
【００４２】
図５は、特定の諸実施形態により、コンピューティング環境１００で実装された拡張リモート・コピーに関連するデータ構造を示している。図５に示されているデータ構造はＸＲＣデータ構造２００と呼ばれる。
【００４３】
ＸＲＣデータ構造５００は、現行コマンド・チェーン内のいくつかのレコード・セット読み取り（ＲＲＳ）チャネル・コマンド・ワードを実行するための意図を通知するサブシステム操作を定義するサブシステム操作定義（ＤＳＯ）コマンド５０２を含むことができる。拡張リモート・コピー操作中に、ＤＳＯコマンド５０２は、リモート・ホスト１０２と１次記憶制御装置１０４との間の通信中のサブシステム操作を定義することができる。ＲＲＳコマンド５０４は、ＤＳＯコマンド５０２に関連する場合、リモート・ホスト１０２が読み取り要求を送信していることを１次記憶制御装置１０４に示す。
【００４４】
長距離ＸＲＣ構成は、リモート・ホスト１０２と１次記憶制御装置１０４との間でファイバ・チャネル拡張技術を使用することができる。拡張ファイバ・チャネルは、１次記憶制御装置１０４からデータを読み取り、そのデータをリモート記憶制御装置１０６の記憶域に保管するためにリモート・ホスト１０２が使用することができる。特定の諸実施形態では、１次記憶制御装置１０４から読み取られたデータは、リモート記憶制御装置１０６にバックアップ・データとして保管される。
【００４５】
特定の諸実施形態では、リモート・ホスト１０２は１次記憶制御装置１０４にコマンド・チェーンを発行し、そのコマンド・チェーンは、ＤＳＯコマンド５０２とそれに続く一連のレコード・セット読み取りコマンド５０４と、最後に追加のコマンド［たとえば、ＸＲＣで定義されたサブシステム機能実行（ＰＳＦ）コマンドおよびサブシステム・データ読み取り（ＲＳＳＤ）コマンド］とを含み、次のチェーンに関するサイドファイル項目の数を決定する。そのチェーン内のＲＲＳコマンド５０４のカウントは、ＤＳＯコマンド・パラメータに示され、特定の模範的な諸実施形態では、ＲＲＳコマンド５０４のカウントは１５０チャネル・コマンド・ワードを超える可能性がある。
【００４６】
したがって、図５は、読み取り操作がリモート・ホスト１０２によって要求されたことをＤＳＯコマンド５０２に関連するレコード・セット読み取りコマンド５０４が１次記憶制御装置１０４に示す、特定の諸実施形態を示している。このようなＤＳＯコマンド５０２は、拡張リモート・コピーを実装する諸実施形態ではリモート・ホスト１０２から１次記憶制御装置１０４に送信することができる。
【００４７】
図６は、特定の諸実施形態により、操作環境６００でＩＵペーシング・パラメータ４０８がどのように設定されるかを示すブロック図である。操作環境６００はコンピューティング環境１００で発生する可能性がある。
【００４８】
操作環境内では、リモート・ホスト１０２と１次記憶制御装置１０４との間でファイバ・チャネルによるＸＲＣ環境（参照番号６０２）が実用可能である。永続情報単位ペーシングは使用可能になっている（参照番号６０４）。しかし、レコード・セット読み取りコマンド５０４を有するＤＳＯコマンド５０２に加えて、妨害書き込みコマンド６０６もリモート・ホスト１０２から１次記憶制御装置１０４に送信される。妨害書き込みコマンド６０６は大量書き込みにすることもでき、大量単位（large unit）は、処理されるデータ情報単位の数がデフォルトＩＵペーシング・クレジットを超えるＩ／Ｏ操作として定義される。
【００４９】
操作環境６００では、ＩＵペーシング・パラメータ４０８は、ＸＲＣ環境のＤＳＯコマンド内のレコード・セット読み取りコマンド５０４の１つの機能として設定される（参照番号６０８）。したがって、永続ＩＵペーシングが使用可能になると、１６個を超える情報単位が同時に未完了になり得る。しかし、大量書き込みコマンド６０６は妨害と問題を引き起こす可能性がある。したがって、操作環境６００内では、処理可能な最大数の大量書き込みに基づいて大量書き込みの数が追跡され、大量書き込みが多すぎる論理パスについてＩＵペーシング・パラメータがリセットされる（参照番号６１０）。これは、ＩＵペーシング・パラメータをリセットすることにより、フロー制御中に妨害書き込みコマンドの数が制限されるような、書き込みコマンドの輻輳制御の一形式と見なすことができる。
【００５０】
図７は、特定の諸実施形態により、ＩＵペーシング・パラメータを設定するための第１の操作を示す流れ図を示している。第１の操作は、コントローラ・アプリケーション１１２およびホスト・アプリケーション１１０を介してコンピューティング環境１００のリモート・ホスト１０２および１次記憶制御装置１０４に実装することができる。
【００５１】
制御はブロック７００から始まり、そこでファイバ・チャネル１０８によりリモート・ホスト１０２と１次記憶制御装置１０４との間に形成されたチャネルはアイドル状態になっており、チャネル・コマンド・ワード・チェーンが始まる（参照番号７０２）。
【００５２】
永続ＩＵペーシングが使用可能になっているかどうかならびに最初に受信したコマンドがレコード・セット読み取りサブオーダを有するＤＳＯコマンドであるかどうかについて判断が行われる（ブロック７０４）。永続ＩＵペーシングが使用可能になっており、最初に受信したコマンドがＤＳＯコマンドである場合、大量書き込みカウントが減分されるが、ゼロを下回ることはできない（ブロック７０６）。大量書き込みカウントが０であるかどうかについて判断が行われ（ブロック７０８）、０である場合、大量書き込みによってバッファの輻輳が発生しているかどうかの判断が行われる（ブロック７１０）。輻輳が発生していない場合、ブロック７１２で、対応する論理パスに関するＩＵペーシング・パラメータはＤＳＯコマンド・パラメータに示されているレコード・セット読み取りコマンドの数より３つ多い数に設定される。しかし、ＩＵペーシング・パラメータは２５５を超える数に設定されることはない。
【００５３】
ブロック７０８で大量書き込みカウントが０ではないという判断が行われた場合、制御はブロック７１８に移行し、そこで対応する論理パスが大量書き込みしきい値リスト上にあるかどうかについて判断が行われる。大量書き込みしきい値リスト上にある場合、その論理パスは大量書き込みしきい値リストから除去される（ブロック７２０）。
【００５４】
図７に示されている通り、制御は、図７で提供された指示に従って、ブロック７０４、７２０、７１８、７１０、および７１２のいずれかからブロック７１４に移行することができる。ブロック７１４では、その論理パスに関する現行ＩＵペーシング・パラメータとともにコマンド応答情報単位が送信される。制御はブロック７１６に移行し、そこでコマンド・チェーン内の書き込み情報単位の数を追跡するために書き込みＩＵカウントを増分することによって書き込み情報単位を追跡しながら、コマンド・チェーンが実行される。Ｉ／Ｏ操作の終わりに、書き込みバッファ輻輳が発生している場合、大量書き込みしきい値リスト上のすべての論理パスについてペーシング・カウントがリセットされることに留意されたい。
【００５５】
図８は、ＩＵペーシング・パラメータを設定するための第２の操作を示す流れ図を示している。第２の操作は、コントローラ・アプリケーション１１２およびホスト・アプリケーション１１０を介してコンピューティング環境１００のリモート・ホスト１０２および１次記憶制御装置１０４に実装することができる。
【００５６】
制御はブロック８００から始まり、そこで１次記憶制御装置１０４はファイバ・チャネル接続１０８によりリモート・ホスト１０２から情報単位を受信し、永続情報単位ペーシングはファイバ・チャネル接続１０８により実装される。
【００５７】
制御はブロック８０２に移行し、そこで１次記憶制御装置１０４とリモート・ホスト１０２との間のファイバ・チャネル接続１０８により確立された少なくとも１つの論理パスにより１次記憶制御装置１０４でいくつの大量書き込みが受信されたかに関する情報が維持され、大量書き込みは、処理されるデータ情報単位の数が情報単位ペーシング・クレジットのデフォルト値を超える入出力（Ｉ／Ｏ）操作である。
【００５８】
ブロック８０４では、１次記憶制御装置１０４は、１次記憶制御装置１０４からリモート・ホスト１０２に送信される応答に含まれる情報単位ペーシング・パラメータ４０８を調整し、その調整は少なくとも１つの論理パスにより１次記憶制御装置１０４でいくつの大量書き込みが受信されたかについて維持される情報に基づいて行われる。
【００５９】
ブロック８０４から制御はブロック８０６およびブロック８０８に移行することができる。ブロック８０６では、少なくとも１つの論理パスに関する情報単位ペーシング・パラメータは、大量書き込みによって書き込みバッファの輻輳がまったく発生していない場合に、１６より大きいが２５６より小さい数に設定される。ブロック８０８では、複数の大量書き込みによって書き込みバッファの輻輳が発生している場合、情報単位ペーシング・パラメータは、大量書き込みが所定のしきい値を超えるすべての論理パスについてリセットされる。
【００６０】
特定の諸実施形態では、永続ＩＵペーシングが使用可能になっている間に大量書き込みに関する輻輳制御が実行されるように、ファイバ・チャネルによるＸＲＣ実装例が可能になる。このような大量書き込みは永続ペーシングのパフォーマンス上の恩恵を妨害する可能性があるので、常にＸＲＣ読み取り操作と同じパス上で大量書き込みを実行するようなアプリケーションを持たない方が好ましい。特定の諸実施形態の大量書き込み検出は、必要なときにある程度の期間の大量書き込みＩ／Ｏを可能にするように設計されている。
【００６１】
追加の実施形態の詳細
記載されている技法は、ソフトウェア、ファームウェア、マイクロコード、ハードウェア、またはこれらの任意の組み合わせを伴う方法、装置（apparatus）、または装置（article of manufacture）として実装することができる。本明細書で使用する「装置（article of manufacture）」という用語はある媒体に実装されたコードまたはロジックを指し、このような媒体は、ハードウェア・ロジック［たとえば、集積回路チップ、プログラマブル・ゲート・アレイ（ＰＧＡ）、特定用途向けＩＣ（ＡＳＩＣ）など］あるいは磁気記憶媒体（たとえば、ハード・ディスク・ドライブ、フレキシブル・ディスク、テープなど）、光学記憶装置（ＣＤ−ＲＯＭ、光ディスクなど）、揮発性および不揮発性メモリ・デバイス［たとえば、電気的消去可能プログラマブル読み取り専用メモリ（ＥＥＰＲＯＭ）、読み取り専用メモリ（ＲＯＭ）、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、フラッシュ、ファームウェア、プログラマブル・ロジックなど］などのコンピュータ可読媒体を含むことができる。コンピュータ可読媒体内のコードはプロセッサによってアクセスし実行される。コードまたはロジックがコード化されている媒体は、空間または光ファイバ、銅線などの伝送媒体を伝播する伝送信号も含むことができる。コードまたはロジックがコード化されている伝送信号は、無線信号、衛星伝送、電波、赤外線信号、Ｂｌｕｅｔｏｏｔｈなどをさらに含むことができる。コードまたはロジックがコード化されている伝送信号は、送信局によって送信し、受信局によって受信することができ、伝送信号にコード化されているコードまたはロジックは、受信局および送信局あるいは受信装置および送信装置のハードウェアまたはコンピュータ可読媒体にデコードし保管することができる。さらに、「装置（article of manufacture）」は、コードが実施され、処理され、実行される、ハードウェアおよびソフトウェア・コンポーネントの組み合わせを含むことができる。当然のことながら、当業者であれば、諸実施形態の範囲を逸脱せずに多くの変更を行うことができ、この装置が任意の情報伝送媒体を含むことができることを認識するであろう。たとえば、この装置は、機械によって実行されたときに結果的に操作が実行されることになる命令がそこに保管されている記憶媒体を含む。
【００６２】
特定の諸実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、またはハードウェアとソフトウェア両方の要素を含む実施形態の形を取ることができる。好ましい一実施形態では、本発明は、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むがこれらに限定されないソフトウェアで実装される。
【００６３】
さらに、特定の諸実施形態は、コンピュータまたは任意の命令実行システムによってあるいはコンピュータまたは任意の命令実行システムに関連して使用するためのプログラム・コードを提供するコンピュータ使用可能媒体またはコンピュータ可読媒体からアクセス可能なコンピュータ・プログラム（computer program product）の形を取ることができる。この説明のために、コンピュータ使用可能媒体またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによってあるいは命令実行システム、装置、またはデバイスに関連して使用するためのプログラムを収容、保管、伝達、伝播、または伝送することができる任意の装置にすることができる。この媒体は、電子、磁気、光学、電磁、赤外線、または半導体システム（あるいは装置またはデバイス）もしくは伝播媒体にすることができる。コンピュータ可読媒体の例としては、半導体またはソリッド・ステート・メモリ、磁気テープ、取り外し可能コンピュータ・ディスケット、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、剛性磁気ディスク、および光ディスクを含む。光ディスクの現行例としては、コンパクト・ディスク−読み取り専用メモリ（ＣＤ−ＲＯＭ）、書き換え可能なコンパクト・ディスク（ＣＤ−Ｒ／Ｗ）、およびＤＶＤを含む。
【００６４】
「特定の諸実施形態（certain embodiments）」、「一実施形態（an embodiment）」、「実施形態（embodiment）」、「諸実施形態（embodiments）」、「この実施形態（the embodiment）」、「これらの実施形態（the embodiments）」、「１つまたは複数の実施形態（one or moreembodiments）」、「いくつかの実施形態（some embodiments）」、および「１つの実施形態（one embodiment）」という用語は、特に明確な指定がない限り、１つまたは複数の（すべてではない）実施形態を意味する。「含む（including）」、「含む（comprising）」、「有する（having）」という用語およびその変形は、特に明確な指定がない限り、「含むが限定されない（including but not limited to）」ことを意味する。列挙されている項目のリストは、特に明確な指定がない限り、それらの項目のいずれかまたはすべてが互いに相容れないことを示すものではない。「a」、「an」、および「the」という用語は、特に明確な指定がない限り、「１つまたは複数」を意味する。
【００６５】
互いに連絡を取っている複数の装置は、特に明確な指定がない限り、互いに連続的に連絡を取っている必要はない。加えて、互いに連絡を取っている複数の装置は、直接あるいは１つまたは複数の仲介により間接的に連絡することができる。さらに、互いに連絡を取っている複数のコンポーネントを有する一実施形態に関する記述は、このようなコンポーネントがすべて必要であることを示すものではない。それどころか、多種多様な可能な諸実施形態を例示するために、種々の任意選択のコンポーネントが記載されている。
【００６６】
さらに、プロセス・ステップ、方法ステップ、アルゴリズムなどはある順番で記載することができるが、このようなプロセス、方法、およびアルゴリズムは代替順序で機能するように構成することができる。換言すれば、記載される可能性のあるステップの任意のシーケンスまたは順序は必ずしも、そのステップをその順序で実行しなければならないという要件を示すわけではない。本明細書に記載されているプロセスのステップは、どのような実用的な順序でも実行することができる。さらに、いくつかのステップは、一斉に、並行して、または同時に実行することができる。
【００６７】
単一の装置または物（article）が本明細書に記載されている場合、単一の装置／物の代わりに２つ以上の装置／物（それらが協働するかどうかにかかわらず）を使用できることは明らかであろう。同様に、２つ以上の装置または物が（それらが協働するかどうかにかかわらず）本明細書に記載されている場合、２つ以上の装置または物の代わりに単一の装置／物を使用できることは明らかであろう。ある装置の機能または特徴あるいはその両方は、このような機能／特徴を有するものとして明示的に記載されていない１つまたは複数の他の装置によって代わって実施することもできる。したがって、他の諸実施形態はこの装置そのものを含む必要はない。
【００６８】
図９は、模範的なコンピュータ・システム９００を示しており、特定の諸実施形態では、図１のコンピューティング環境１００のリモート・ホスト１０２、１次記憶制御装置１０４、およびリモート記憶制御装置１０６は、コンピュータ・システム９００のコンピュータ・アーキテクチャにより実装することができる。コンピュータ・システム９００は、システムと呼ぶこともでき、特定の諸実施形態ではプロセッサ９０４を含むことができる回路９０２を含むことができる。また、システム９００は、メモリ９０６（たとえば、揮発性メモリ・デバイス）および記憶域９０８も含むことができる。システム９００の特定の要素は、図１のリモート・ホスト１０２、１次記憶制御装置１０４、またはリモート記憶制御装置１０６で見つかるものもあれば、見つからないものもある。記憶域９０８は、不揮発性メモリ・デバイス（たとえば、ＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、フラッシュ、ファームウェア、プログラマブル・ロジックなど）、磁気ディスク・ドライブ、光ディスク・ドライブ、テープ・ドライブなどを含むことができる。記憶域９０８は、内部記憶装置、付加記憶装置、またはネットワーク・アクセス可能記憶装置、あるいはこれらの組み合わせを含むことができる。システム９００は、メモリ９０６内にロードして、プロセッサ９０４または回路９０２によって実行することができるコード９１２を含むプログラム・ロジック９１０を含むことができる。特定の諸実施形態では、コード９１２を含むプログラム・ロジック９１０は記憶域９０８に保管することができる。特定の他の諸実施形態では、プログラム・ロジック９１０は回路９０２に実装することができる。したがって、図９は他の諸要素から分離してプログラム・ロジック９１０を示しているが、プログラム・ロジック９１０はメモリ９０６または回路９０２あるいはその両方に実装することもできる。
【００６９】
特定の諸実施形態は、コンピュータ・システム内にコンピュータ可読コードを統合する自動処理または人によってコンピューティング・インフラストラクチャを配備するための方法を対象とすることができ、そのコードはコンピュータ・システムと組み合って、上記の諸実施形態の操作を実行できるようになっている。
【００７０】
図９に示されている操作のうちの少なくとも一部は並行してならびに順次、実行することができる。代替諸実施形態では、操作の一部は異なる順序で実行するか、変更または除去することもできる。
【００７１】
さらに、ソフトウェアおよびハードウェア・コンポーネントの多くは、例示のために別個のモジュールとして記載されている。このようなコンポーネントは、統合してより少ない数のコンポーネントにするか、分割してより大きい数のコンポーネントにすることもできる。さらに、特定のコンポーネントによって実行されるものとして記載されている特定の操作は他のコンポーネントによって実行することもできる。
【００７２】
図１〜図９に示されているかまたは参照されているデータ構造およびコンポーネントは、特定のタイプの情報を有するものとして記載されている。代替諸実施形態では、このデータ構造およびコンポーネントは、異なる構造にして、これらの図に示されているかまたは参照されているものより少ないフィールド、多いフィールド、または異なるフィールド、あるいは異なる機能を有することもできる。したがって、これらの実施形態に関する上記の説明は、例示および解説のために提示されたものである。網羅するためまたはこれらの実施形態を開示された正確な形式に限定するためのものではない。上記の教示を考慮すると、多くの変更および変形が可能である。
【００７３】
＊  ｚ／ＯＳ、ＯＳ／３９０、およびエンタープライズ・ストレージ・サーバは、インターナショナル・ビジネス・マシーンズ社の商標または登録商標である。
【図１】
2011509443.tif 000003
【図２】
2011509443.tif 000004
【図３】
2011509443.tif 000005
【図４】
2011509443.tif 000006
【図５】
2011509443.tif 000007
【図６】
2011509443.tif 000008
【図７】
2011509443.tif 000009
【図８】
2011509443.tif 000010
【図９】
2011509443.tif 000011
【国際調査報告】
2011509443.tif 000012
2011509443.tif 000013