JP5073799B2 - ストレージネットワーク環境においてscsiターゲットから受信されるscsiエラー応答をカスタマイズするためのシステム及び方法 - Google Patents

ストレージネットワーク環境においてscsiターゲットから受信されるscsiエラー応答をカスタマイズするためのシステム及び方法 Download PDF

Info

Publication number
JP5073799B2
JP5073799B2 JP2010196949A JP2010196949A JP5073799B2 JP 5073799 B2 JP5073799 B2 JP 5073799B2 JP 2010196949 A JP2010196949 A JP 2010196949A JP 2010196949 A JP2010196949 A JP 2010196949A JP 5073799 B2 JP5073799 B2 JP 5073799B2
Authority
JP
Japan
Prior art keywords
scsi
error
ata
command
received
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.)
Expired - Fee Related
Application number
JP2010196949A
Other languages
English (en)
Other versions
JP2011233127A (ja
Inventor
ニレシュ・ゴーヴァンデ
ラケシュ・ヴェルマ
ヴィシャル・タッカー
ダン・メイヤー
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.)
LSI Corp
Original Assignee
LSI Logic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LSI Logic Corp filed Critical LSI Logic Corp
Publication of JP2011233127A publication Critical patent/JP2011233127A/ja
Application granted granted Critical
Publication of JP5073799B2 publication Critical patent/JP5073799B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Bus Control (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、ストレージネットワーク環境において、SCSIターゲットから受信されるSCSIエラー応答をカスタマイズするためのシステム及び方法に関する。
スモール・コンピュータ・システム・インターフェース(SCSI)は、コンピュータとデータ記憶デバイスとの間でデータを転送するための1組の標準的なSCSIコマンドを使用するコンピュータプロトコルである。典型的には、コンピュータが、データ記憶デバイスに向けられるSCSIコマンドを起動する。データ記憶デバイスは、SCSI−ATAブリッジを介して存在する(behind)アドバンスド・テクノロジ・アタッチメント(ATA)ディスクドライブとすることができる。そのようなストレージネットワーク環境において、SCSIイニシエータが、SCSI−ATAブリッジにSCSIコマンドを送信する。その際、SCSI−ATAブリッジは、受信されたSCSIコマンドをATAコマンドに翻訳し、その後、そのATAコマンドをATAターゲットに送信する。その後、ATAターゲットはATAコマンドを実行し、SCSI−ATAブリッジを通して、関連する入力/出力データ転送を実行する。上記の接続形態において、SCSI−ATAブリッジは、基本的に、SCSIターゲットの一種である。
SCSIターゲットがSCSIコマンドを受信した後に、SCSIターゲットにおいてコマンドを処理する際にエラーが生じる場合には、関連するSCSIターゲットによって、SCSIイニシエータにエラー応答が送信される。このエラー応答は、SCSIターゲットからSCSIイニシエータに返送される検査条件応答である。さらに、その検査条件に応答して、SCSIイニシエータは、SCSIターゲットからエラー情報を入手するために用いられるSCSI要求センスコマンドを送信する。その際、SCSIターゲットは1組のSCSIセンスデータを用いてSCSI要求センスコマンドに応答し、そのデータは典型的には3つのフィールド、すなわち、センスキー、追加センスコード(ASC)及び追加センスコード修飾子(ASQC)を含み、それによりエラーについての詳細を細かく分類してSCSIイニシエータに与える。その後、SCSIイニシエータは、受信された1組のSCSIセンスデータに基づいて措置を講じる。
しかしながら、ストレージネットワーク環境では、典型的には、数世代のSCSIイニシエータ及びSCSIターゲットが使用される。1つの世代のSCSIイニシエータによって解釈されるエラー応答が、別の世代のSCSIイニシエータによって正しく解釈されない場合がある。このような状況において、SCSIイニシエータがSCSIターゲットによって送信されるエラー応答を解釈することができない場合には、SCSIイニシエータによって、必要とされる動作が実行されない場合があり、この結果として、厳しい且つ/又は不要なエラー回復動作が行われることがあり、それによりストレージネットワーク性能が著しく低下する可能性がある。
以下の本発明の概要は、発明の本質及び内容を簡単に示す発明の概要を要求する米国特許法施行規則第1.73規則に準拠するために提供される。それは、特許請求の範囲又は意味を解釈又は限定するために用いられないという了解の下で提出されるものである。
ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするシステム及び方法が開示される。一態様では、ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするための一方法において、SCSI−ATAブリッジによって、SCSIイニシエータからSCSIコマンドが受信される。受信されたSCSIコマンドは、SCSI−ATAブリッジによって翻訳され、ATAコマンドが与えられる。その後、そのATAコマンドは、SCSI−ATAブリッジによって、ATAドライブに送信される。そのATAコマンドは、ATAドライブによって実行される。
さらに、ATAドライブによって、ATAコマンドを実行するのに成功したか否かが判断される。成功しなかったと判断される場合には、ATAドライブによって、SCSI−ATAブリッジにATAエラー応答が送信される。受信されたATAエラー応答は、SCSI−ATAブリッジによって、SCSIエラー応答に翻訳される。SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答が入手される。さらに、カスタマイズされたSCSIエラー応答は、SCSI−ATAブリッジによって、SCSIイニシエータに送信される。
別の実施態様では、ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするための非一時的なコンピュータ可読記憶媒体が、コンピュータデバイスによって実行されるときに、そのコンピュータデバイスに上記のような方法を実行させる命令(インストラクション)を有する。
さらに別の実施態様では、ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするためのシステムが、1又は複数のSCSIイニシエータと、ATAドライブと、1又は複数のSCSIイニシエータ及びATAドライブの間に接続されるSCSI−ATAブリッジとを含む。SCSI−ATAブリッジは、SCSI−ATAブリッジに動作可能に接続されるメモリを含む。メモリは、コマンド処理モジュール及びエラールックアップテーブルを含む。コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスIDジェネレータを含み、上記のような方法を実行することができる命令を有する。
さらに別の実施態様では、ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするためのシステムが、1又は複数のSCSIイニシエータと、1又は複数のATAドライブと、1又は複数のSCSIイニシエータ及び1又は複数のATAドライブの間に接続されるホストバスアダプタ(HBA)コントローラとを含む。HBAコントローラは、HBAコントローラに動作可能に接続されるメモリを含む。メモリは、SCSI−ATA翻訳(SAT)モジュールを含み、SATモジュールは、コマンド処理モジュール及びエラールックアップテーブルを含む。コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスIDジェネレータを含み、上記のような方法を実行することができる命令を有する。
さらに別の実施態様では、ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするためのシステムが、1又は複数のSCSIイニシエータと、1又は複数のSCSIイニシエータに接続されるSCSIドライブとを含む。SCSIドライブは、SCSIドライブに動作可能に接続されるメモリを含む。メモリは、コマンド処理モジュール及びエラールックアップテーブルを含む。コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスIDジェネレータを含み、上記のような方法を実行することができる命令を有する。
別の実施態様では、ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするためのシステムが、1又は複数のSCSIイニシエータと、1又は複数のSCSIイニシエータに接続されるSCSIエンクロージャとを含む。SCSIエンクロージャは、SCSIエンクロージャに動作可能に接続されるメモリを含む。メモリは、コマンド処理モジュール及びエラールックアップテーブルを含む。コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスIDジェネレータを含み、上記のような方法を実行することができる命令を有する。
本発明の一実施形態による、ストレージネットワーク環境のブロック図である。 本発明の一実施形態による、エラールックアップテーブルを示す図である。 本発明の一実施形態による、ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするための方法のフロー図である。 本発明の別の実施形態による、ストレージネットワーク環境のブロック図である。 本発明の他の実施形態による、ストレージネットワーク環境のブロック図である。 本発明の別の実施形態による、ストレージネットワーク環境のブロック図である。
ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするためのシステム及び方法が開示される。本発明の実施形態の以下の詳細な説明では、本明細書の一部を形成し、本発明を実施することができる具体的な実施形態が例示される添付の図面が参照される。これらの実施形態は、当業者が本発明を実施できるようにするほど十分に詳しく説明されるが、本発明の範囲から逸脱することなく、他の実施形態が用いられる場合があること、及び変更が加えられる場合があることは理解されたい。それゆえ、以下の詳細な説明は、限定する意味に解釈されるべきではなく、本発明の範囲は添付の特許請求の範囲によって規定される。
図1は、本発明の一実施形態による、ストレージネットワーク環境100のブロック図を示す。詳細には、図1のシステムは、ストレージネットワーク環境100におけるSCSIエラー応答をカスタマイズするためのものである。該システムは、SCSIイニシエータ105A〜Nと、ATAドライブ110と、SCSI−ATAブリッジ115とを含む。SCSI−ATAブリッジ115は、SCSIイニシエータ105A〜NとATAドライブ110との間に接続され、メモリ120と、フラッシュメモリ115と、プロセッサ165とを含む。メモリ120は、SCSI−ATAブリッジ115に動作可能に接続され、コマンド処理モジュール125及びエラールックアップテーブル140を含む。コマンド処理モジュール125は、コマンド翻訳モジュール130及びインスタンスIDジェネレータ135を含む。エラールックアップテーブル140は、図1に示されるように、第1エラールックアップテーブル145及び第2エラールックアップテーブル150を含む。
動作時に、SCSI−ATAブリッジ115のコマンド処理モジュール125は、SCSIイニシエータ105Aから、ATAドライブ110に送信するためのSCSIコマンドを受信する。受信されたSCSIコマンドは、SCSI−ATAブリッジ115内のコマンド翻訳モジュール130によってATAコマンドに翻訳される。そして、ATAコマンドは、実行するためにATAドライブ110に送信される。ATAコマンドの実行中に、エラーが生じた場合には、コマンド処理モジュール125にATAエラー応答が送信される。コマンド処理モジュール125は、受信されたATAエラー応答をSCSIエラー応答に翻訳する。
本発明の一実施形態によれば、コマンド処理モジュール125は、エラールックアップテーブル140においてSCSIエラー応答を検索することによって、カスタマイズされたSCSIエラー応答を入手する。1つの例示的な実施態様では、SCSIエラー応答に関連付けられたインスタンス識別子(ID)が、インスタンスIDジェネレータ135によって求められる。その後、第1エラールックアップテーブル145を用いて、インスタンスIDに関連付けられたエラーインデックスが求められる。さらに、第2エラールックアップテーブル150を用いて、エラーインデックスに関連付けられたカスタマイズされたSCSIエラー応答が抽出される。第1エラールックアップテーブル145において、関連するエラーインデックスが見つけられない場合には、デフォルトエラーインデックスを用いて、第2エラールックアップテーブル150から、カスタマイズされたSCSIエラー応答を抽出する。
ストレージネットワーク環境100の起動中にコンフィグレーション(環境設定)データ160をロードする間、エラールックアップテーブル140がフラッシュメモリ155からメモリ120の中にロードされることに留意されたい。カスタマイズされたSCSIエラー応答が入手されると、コマンド処理モジュール125は、カスタマイズされたSCSIエラー応答をSCSIイニシエータ105Aに送信する。さらに、SCSIイニシエータ105Aは、受信されたカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作を実行する。
ATAドライブ110によるATAコマンドの実行中にエラーが生じない場合には、ATAコマンドの実行成功を表す通知がコマンド処理モジュール125に送信される。コマンド翻訳モジュール130は、ATAコマンドの実行成功を示す通知を翻訳して、実行成功応答がSCSIイニシエータ105Aに送信される。
本発明の別の実施形態によれば、コマンド処理モジュール125によってSCSIコマンドが受信されるときに、SCSIコマンドにエラーがあるか否かが判断される。エラーがあると判断される場合には、エラールックアップテーブル140を用いて、カスタマイズされたSCSIエラー応答が入手され、SCSIイニシエータ105Aに送信される。エラーがないと判断される場合には、コマンド翻訳モジュール130によって、受信されたSCSIコマンドが翻訳されて、ATAコマンドが提供される。
本発明のさらに別の実施形態によれば、コマンド処理モジュール125によってSCSIコマンドが受信された場合、SCSIコマンドをATAコマンドに翻訳できるか否かが判断される。翻訳できると判断される場合には、受信されたSCSIコマンドが翻訳され、ATAコマンドが与えられ、ATAドライブ110に送信される。翻訳できないと判断される場合には、受信されたSCSIコマンドが実行され、実行に失敗した場合には、エラールックアップテーブル140を用いて、カスタマイズされたSCSIエラー応答が入手される。その後、カスタマイズされたSCSIエラー応答はSCSIイニシエータ150Aに送信される。
図2は、本発明の一実施形態によるエラールックアップテーブルを示す。詳細には、図2は、第1エラールックアップテーブル202及び第2エラールックアップテーブル204を用いて、カスタマイズされたSCSIエラー応答を入手することを示す。1つの例示的な実施態様では、ストレージネットワーク環境において、SCSIターゲットからSCSIエラー応答が受信されたとき、SCSIエラー応答に関連付けられるインスタンスIDが求められる。求められたインスタンスIDを用いて、第1エラールックアップテーブル202を検索し、関連するエラーインデックスが求められる。
図2に示されるように、第1エラールックアップテーブル202は、インスタンスID(INST ID)と、各インスタンスIDに関連付けられる変更エラーインデックス(ERROR IDX)とを示すテーブルを含む。インスタンスIDは、SCSIエラー応答がSCSIイニシエータに送信されたインスタンスを表す。第1エラールックアップテーブル202の第1エントリは、通常、特殊エントリと呼ばれ、第1エラールックアップテーブル202内に存在するエントリの数を含む。デフォルト設定によれば、特殊エントリは、第1エラールックアップテーブル202内の唯一のエントリである。第1エラールックアップテーブル202にエントリが追加されるのに応じて、特殊エントリは、第1エラールックアップテーブル202内のエントリの全数を指示するように変更される。
その後、第2エラールックアップテーブル204において、関連するエラーインデックス(ERROR IDX)が検索され、カスタマイズされたSCSIエラー応答が抽出される。第1エラールックアップテーブル202において、関連するエラーインデックスが見つけられない場合には、デフォルトエラーインデックスを用いて、第2エラールックアップテーブル204から、カスタマイズされたSCSIエラー応答を抽出する。
図2に示されるように、第2エラールックアップテーブル204は、センス情報(たとえば、センスキー(SKY)、追加センスコード(ASC)及び追加センスコード修飾子(ASQC))を含む。第2エラールックアップテーブル204内のインデックスはエラーインデックス−「errorIdx」と呼ばれる。「errorIdx」はエラーのクラスを指定し、各「errorIdx」はセンスキー、ASC及びASCQの固有の組み合わせに関連付けられる。
コンフィグレーションデータ更新方法を用いて、第2エラールックアップテーブル204内の所与のクラスのエラー(errorldx)のためのセンスキー、ASC及びASCQを置き換えることができる。第2エラールックアップテーブル204は、デフォルトに対して、又は所与のインスタンスIDの場合に置き換えられたerrorldxに対して検索され、対応するセンスキー、ASC及びASCQが、検査条件応答とともにSCSIイニシエータに送出される。SCSIイニシエータによって受信されカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作が実行される。
コンフィグレーションデータ更新方法を用いて、インスタンスIDが非デフォルトerrorldxに関連付けられるように、第1エラールックアップテーブル202にエントリが追加される。このように、そのエラーの対応するインスタンスのためのSCSIエラー応答として、対応するセンスキー、ASC、ASCQ(それらはデフォルトではない)が送出される。
図3は、本発明の一実施形態による、ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするための方法300のフロー図である。SCSIターゲットは、SCSI−ATAブリッジ、SCSIドライブ、SATモジュールを有するSCSIホストバスアダプタ(HBA)、SCSIエンクロージャ等を含む場合がある。ステップ302において、ストレージネットワーク環境の起動時に、フラッシュメモリからSCSIターゲットのメモリにエラールックアップテーブルをロードする。ステップ304において、ストレージネットワーク環境内のSCSIイニシエータから、SCSIコマンドが受信されたか否かを調べる。SCSIコマンドが受信されたと判断される場合には、方法300はステップ306に移行し、そうでない場合には、方法300は再度ステップ304を実行する。ステップ306において、受信されたSCSIコマンドを、ATAコマンドに翻訳する。
ステップ308において、ATAコマンドをATAドライブに送信する。ステップ310において、ATAドライブによって、ATAコマンドを実行する。ステップ312において、ATAドライブによってATAコマンドを実行するのに成功したか否かを判断する。ATAコマンドを実行するのに成功したと判断される場合には、ステップ314が実行され、そうでない場合には、ステップ316が実行される。ステップ314において、実行成功応答を、SCSIイニシエータに送信する。たとえば、ATAドライブは、ATAコマンドの実行成功を示す通知をSCSIターゲットに送信する。その後、実行成功の通知は、SCSIイニシエータに送信するための実行成功応答に翻訳される。
ステップ316において、ATAドライブによって、SCSIターゲットにATAエラー応答を送信する。ステップ318において、SCSIターゲットによって、ATAエラー応答をSCSIエラー応答に翻訳する。ステップ320において、SCSIエラー応答に関連付けられたインスタンスIDを求める。ステップ322において、第1エラールックアップテーブルを用いて、インスタンスIDに関連付けられたエラーインデックスを求める。ステップ324において、第2エラールックアップテーブルを用いて、求められたエラーインデックスに関連付けられたカスタマイズされたSCSIエラー応答を抽出する。
ステップ322において、第1エラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合には、デフォルトエラーインデックスを用いて、第2エラールックアップテーブルからカスタマイズされたSCSIエラー応答を抽出する。ステップ326において、カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信する。受信されたカスタマイズされたSCSIエラー応答に基づいて、SCSIイニシエータは、エラー回復動作を実行する。
一実施形態では、ステップ306において、受信されたSCSIコマンドをATAコマンドに翻訳中に、SCSIターゲットによって、受信されたSCSIコマンドにエラーがあるか否かが判断される。エラーがあると判断される場合には、SCSIターゲットによって、第1エラールックアップテーブル及び第2エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手する。さらに、カスタマイズされたSCSIエラー応答はSCSIイニシエータに送信される。エラーがないと判断された場合には、SCSIターゲットによって、受信されたSCSIコマンドが翻訳されて、ATAコマンドが提供される。
本発明の別の実施形態では、ステップ306において、受信されたSCSIコマンドをATAコマンドに翻訳中に、SCSIターゲットによって、受信されたSCSIコマンドをATAコマンドに翻訳できるか否かが判断される。翻訳できると判断される場合には、SCSIターゲットによって、受信されたSCSIコマンドが翻訳され、ATAコマンドが提供される。その後、SCSIターゲットによって、ATAコマンドがATAドライブに送信される。受信されたSCSIコマンドをATAコマンドに翻訳できないと判断される場合には、受信されたSCSIコマンドが実行される。実行に失敗する場合には、SCSIターゲットによって、第1エラールックアップテーブル及び第2エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答が入手される。その後、SCSIターゲットによって、カスタマイズされたSCSIエラー応答がSCSIイニシエータに送信される。
図4は、別の実施形態による、ストレージネットワーク環境400のブロック図を示す。詳細には、図4のシステムは、ストレージネットワーク環境400においてSCSIエラー応答をカスタマイズするためのシステムである。該システムは、SCSIイニシエータ105A〜Nと、ATAドライブ110A〜Nと、HBAコントローラ405とを含む。HBAコントローラ405は、SCSIイニシエータ105A〜NとATAドライブ110A〜Nとの間に接続され、メモリ120と、フラッシュメモリ155と、プロセッサ165とを含む。HBAコントローラ405は、2つ以上のATAドライブがHBAコントローラ405に接続されるのを容易にする。また、HBAコントローラ405は、図4に示されるように、RAIDエンジン及び他のSCSIモジュール410も含む。
メモリ120は、SCSI−ATAブリッジ115に動作可能に接続され、SATモジュール415を含む。SATモジュール415は、SCSIコマンドをATAコマンドに翻訳することをイネーブルし、コマンド処理モジュール125及びエラールックアップテーブル140を含む。コマンド処理モジュール125は、コマンド翻訳モジュール130及びインスタンスIDジェネレータ135を含む。エラールックアップテーブル140は、図4に示されるように、第1エラールックアップテーブル145及び第2エラールックアップテーブル150を含む。
図4に示されるシステムの動作方法は、図1において説明されたシステムの動作に類似している。
図5は、本発明の別の実施形態による、ストレージネットワーク環境500のブロック図を示す。詳細には、図5のシステムは、ストレージネットワーク環境500においてSCSIエラー応答をカスタマイズするためのシステムである。図5に示されるように、該システムは、SCSIドライブ505に接続されたSCSIイニシエータ105A〜Nを含む。SCSIドライブ505は、メモリ120と、フラッシュメモリ155と、プロセッサ165とを含む。メモリ120は、SCSIドライブ505に動作可能に接続され、コマンド処理モジュール125及びエラールックアップテーブル140を含む。コマンド処理モジュール125は、インスタンスIDジェネレータ135を含む。エラールックアップテーブル140は、図5に示されるように、第1エラールックアップテーブル145及び第2エラールックアップテーブル150を含む。
動作時に、コマンド処理モジュール125は、SCSIドライブ505によって実行するためのSCSIコマンドを、SCSIイニシエータ105Aから受信する。SCSIコマンドの実行中に、エラーが生じる場合には、SCSIドライブ505によって、SCSIエラー応答が生成される。
本発明の一実施形態によれば、コマンド処理モジュール125は、エラールックアップテーブル140においてSCSIエラー応答を検索することによって、カスタマイズされたSCSIエラー応答を入手する。1つの例示的な実施態様では、インスタンスIDジェネレータ135によって、SCSIエラー応答に関連付けられるインスタンスIDが求められる。その後、第1エラールックアップテーブル145を用いて、インスタンスIDに関連付けられるエラーインデックスが求められる。さらに、第2エラールックアップテーブル150を用いて、エラーインデックスに関連付けられるカスタマイズされたSCSIエラー応答が抽出される。第1エラールックアップテーブル145において、関連するエラーインデックスが見つけられない場合には、デフォルトエラーインデックスを用いて、第2エラールックアップテーブル150からカスタマイズされたSCSIエラー応答を抽出する。
ストレージネットワーク環境500の起動中にコンフィグレーションデータ160をロードする間に、エラールックアップテーブル140がフラッシュメモリ155からメモリ120の中にロードされる。カスタマイズされたSCSIエラー応答が入手されると、コマンド処理モジュール125は、カスタマイズされたSCSIエラー応答をSCSIイニシエータ105Aに送信する。さらに、SCSIイニシエータ105Aは、受信されたカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作を実行する。SCSIドライブ505によるSCSIコマンドの実行中にエラーが生じない場合には、実行成功応答がSCSIイニシエータ105Aに送信される。
図6は、本発明の別の実施形態による、ストレージネットワーク環境600のブロック図を示す。詳細には、図6のシステムは、ストレージネットワーク600においてSCSIエラー応答をカスタマイズするためのシステムである。図6に示されるように、該システムは、SCSIエンクロージャ605に接続されるSCSIイニシエータ105A〜Nを含む。SCSIエンクロージャ605は、メモリ120と、フラッシュメモリ155と、プロセッサ165とを含む。メモリ120は、SCSIエンクロージャ605に動作可能に接続され、コマンド処理モジュール125及びエラールックアップテーブル140を含む。コマンド処理モジュール125は、インスタンスIDジェネレータ135を含む。エラールックアップテーブル140は、図6に示されるように、第1エラールックアップテーブル145及び第2エラールックアップテーブル150を含む。
図6に示されるシステムの動作方法は、図5に示されるシステムの動作に類似している。さらに、一実施形態では、非一時的なコンピュータ可読記憶媒体が、コンピュータデバイスによって実行されるときに、コンピュータデバイスに図1〜図6において示される1又は複数の方法を実行させることができる命令(インストラクション)を記憶している。
種々の実施形態において、図1〜図6に示される方法及びシステムは、エラールックアップテーブルを用いて、ATAドライブ及びSCSIターゲットによって生成されるエラー応答をカスタマイズし、ストレージネットワーク環境において、SCSIイニシエータが任意の種類のエラーを解釈し、必要とされる動作を実行することができるようにする。ストレージネットワーク環境において、任意の世代のSCSIイニシエータ及びSCSIターゲットを一緒に使用することができる。上記の方法及びシステムは、SCSIイニシエータに、SCSIターゲットが任意の種類のエラーに応答することができる良好なテスティングフレームワークを提供する。
具体的な実施形態例を参照しながら本発明を説明したが、種々の実施形態の広範な精神及び範囲から逸脱することなく、これらの実施形態に対する種々の変更及び変形を行なうことができることは明らかであろう。さらに、本明細書において記述される種々のデバイス、モジュール等は、ハードウエア回路、たとえば、相補形金属酸化膜半導体に基づく論理回路、ファームウエア、ソフトウエアを用いて、且つ/又はハードウエア、ファームウエア及び/又は機械可読媒体において具現されるソフトウエアの任意の組み合わせを用いて、使用可能し、動作させることができる。たとえば、トランジスタ、論理ゲート、及び特定用途向け集積回路のような電気回路を用いて、種々の電気的構造及び方法を具現することもできる。

Claims (38)

  1. ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするための方法であって、
    SCSI−ATAブリッジによって、SCSIイニシエータからSCSIコマンドを受信するステップと、
    SCSI−ATAブリッジによって、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップと、
    SCSI−ATAブリッジによって、ATAコマンドをATAドライブに送信するステップと、
    ATAドライブによって、ATAコマンドを実行するステップと、
    ATAドライブがATAコマンドを成功裏に実行したか否かを判断するステップと、
    成功しなかったと判断された場合には、ATAドライブによって、SCSI−ATAブリッジにATAエラー応答を送信するステップと、
    SCSI−ATAブリッジによって、受信されたATAエラー応答をSCSIエラー応答に翻訳するステップと、
    SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手するステップと、
    SCSI−ATAブリッジによって、カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信するステップと
    を含んでいることを特徴とする方法。
  2. 請求項1記載の方法において、該方法は更に、
    成功したと判断される場合に、ATAドライブによって、ATAコマンドの実行成功を示す通知をSCSI−ATAブリッジに送信するステップと、
    SCSI−ATAブリッジによって、ATAコマンドの実行成功を示す通知を翻訳するステップと、
    関連する実行成功応答をSCSIイニシエータに送信するステップと
    を含んでいることを特徴とする方法。
  3. 請求項1記載の方法において、SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手するステップは、
    SCSIエラー応答に関連付けられるインスタンスIDを求めるステップと、
    第1エラールックアップテーブルを用いて、求められたインスタンスIDに関連付けられるエラーインデックスを求めるステップと、
    第2エラールックアップテーブルを用いて、求められたエラーインデックスに関連付けられたカスタマイズされたSCSIエラー応答を抽出するステップと
    を含んでいることを特徴とする方法。
  4. 請求項3記載の方法において、該方法は更に、
    第1エラールックアップテーブルにおいて関連するエラーインデックスが見つけられなかった場合には、デフォルトエラーインデックスを用いて、第2エラールックアップテーブルからカスタマイズされたSCSIエラー応答を抽出するステップ
    を含んでいることを特徴とする方法。
  5. 請求項1記載の方法において、SCSI−ATAブリッジによって、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップは、
    SCSI−ATAブリッジによって、受信されたSCSIコマンドにエラーがあるか否かを判断するステップと、
    エラーがあると判断された場合に、SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手すると共に、SCSI−ATAブリッジによって、該カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信するステップと、
    エラーがないと判断された場合には、SCSI−ATAブリッジによって、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップと
    を含んでいることを特徴とする方法。
  6. 請求項5記載の方法において、該方法は更に、
    SCSIイニシエータによって受信されたカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作を実行するステップ
    を含んでいることを特徴とする方法。
  7. 請求項5記載の方法において、SCSI−ATAブリッジによって、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップは、
    SCSI−ATAブリッジによって受信されたSCSIコマンドをATAコマンドに翻訳できるか否かを判断するステップと、
    翻訳できると判断した場合に、SCSI−ATAブリッジによって受信されたSCSIコマンドを翻訳してATAコマンドを提供すると共に、SCSI−ATAブリッジによって、ATAコマンドをATAドライブに送信するステップと、
    翻訳できないと判断した場合に、SCSI−ATAブリッジで受信されたSCSIコマンドを実行し、該実行に失敗した場合に、SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手し、SCSI−ATAブリッジによって、該カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信するステップと
    を含んでいることを特徴とする方法。
  8. ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするための非一時的なコンピュータ可読記憶媒体であって、該コンピュータ可読記憶媒体は、コンピュータデバイスによって実行されるときに、該コンピュータデバイスに方法を実行させる命令を記憶しており、該方法は、
    SCSI−ATAブリッジによって、SCSIイニシエータからSCSIコマンド受信するステップと、
    SCSI−ATAブリッジによって受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップと、
    SCSI−ATAブリッジによって、ATAコマンドをATAドライブに送信するステップと、
    ATAドライブによって、ATAコマンドを実行するステップと、
    ATAドライブによってATAコマンドを実行することが成功したか否かを判断するステップと、
    成功しなかったと判断した場合に、ATAドライブによって、ATAエラー応答をSCSI−ATAブリッジに送信するステップと、
    SCSI−ATAブリッジによって、受信されたATAエラー応答をSCSIエラー応答に翻訳するステップと、
    SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手するステップと、
    SCSI−ATAブリッジによって、カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信するステップと
    を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
  9. 請求項8記載の非一時的なコンピュータ可読記憶媒体において、方法は更に、
    成功したと判断された場合に、ATAドライブによって、ATAコマンドの実行成功を示す通知を前記SCSI−ATAブリッジに送信するステップと、
    SCSI−ATAブリッジによって、ATAコマンドの実行成功を示す通知を翻訳するステップと、
    関連する実行成功応答をSCSIイニシエータに送信するステップと
    を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
  10. 請求項8記載の非一時的なコンピュータ可読記憶媒体において、SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手するステップは、
    SCSIエラー応答に関連付けられるインスタンスIDを決定するステップと、
    第1エラールックアップテーブルを用いて、決定されたインスタンスIDに関連付けられるエラーインデックスを決定するステップと、
    第2エラールックアップテーブルを用いて、決定されたエラーインデックスに関連付けられるカスタマイズされたSCSIエラー応答を抽出するステップと
    を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
  11. 請求項10記載の非一時的なコンピュータ可読記憶媒体において、方法は更に、
    第1エラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合に、デフォルトエラーインデックスを用いて、第2エラールックアップテーブルからカスタマイズされたSCSIエラー応答を抽出するステップ
    を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
  12. 請求項8記載の非一時的なコンピュータ可読記憶媒体において、SCSI−ATAブリッジによって受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップは、
    SCSI−ATAブリッジによって受信されたSCSIコマンドにエラーがあるか否かを判断するステップと、
    エラーがあると判断された場合に、SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手すると共に、SCSI−ATAブリッジによって、該カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信するステップと、
    エラーがないと判断された場合に、SCSI−ATAブリッジによって受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップと
    を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
  13. 請求項12記載の非一時的なコンピュータ可読記憶媒体において、方法は更に、
    SCSIイニシエータによって、受信されたカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作を実行するステップ
    を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
  14. 請求項12記載の非一時的なコンピュータ可読記憶媒体において、SCSI−ATAブリッジによって受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップは、
    SCSI−ATAブリッジによって、受信されたSCSIコマンドをATAコマンドに翻訳できるか否かを判断するステップと、
    翻訳できると判断した場合に、SCSI−ATAブリッジによって、受信されたSCSIコマンドを翻訳してATAコマンドを提供すると共に、SCSI−ATAブリッジによって、ATAコマンドをATAドライブに送信するステップと、
    翻訳できないと判断した場合に、SCSI−ATAブリッジで受信されたSCSIコマンドを実行し、該実行に失敗した場合に、SCSI−ATAブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手し、SCSI−ATAブリッジによって、該カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信するステップと
    を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
  15. ストレージネットワーク環境においてSCSIターゲットから受信されるSCSIエラー応答をカスタマイズするためのシステムであって、
    1又は複数のSCSIイニシエータと、
    ATAドライブと、
    1又は複数のSCSIイニシエータ及びATAドライブの間に接続されたSCSI−ATAブリッジとを備え、該SCSI−ATAブリッジは、
    該SCSI−ATAブリッジに動作可能に接続され、コマンド処理モジュール及びエラールックアップテーブルを含んでいるメモリであって、コマンド処理モジュールはコマンド翻訳モジュール及びインスタンスIDジェネレータを含んでおり、
    該メモリは、
    コマンド処理モジュールによって、1又は複数のSCSIイニシエータのうちの1つからSCSIコマンドを受信することができる命令、
    コマンド翻訳モジュールによって、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供することができる命令、
    コマンド処理モジュールによって、ATAコマンドをATAドライブに送信することができる命令、
    ATAドライブによって、ATAコマンドを実行することができる命令、
    ATAドライブによって、ATAコマンドを実行するのに成功したか否かを判断することができる命令、
    成功しなかったと判断した場合に、ATAドライブによって、ATAエラー応答をコマンド処理モジュールに送信することができる命令、
    コマンド処理モジュールによって、受信されたATAエラー応答をSCSIエラー応答に翻訳することができる命令、
    コマンド翻訳モジュールによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手することができる命令、及び
    コマンド処理モジュールによって、カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信することができる命令
    を有していることを特徴とするシステム。
  16. 請求項15記載のシステムにおいて、コマンド処理モジュールはさらに、
    成功したと判断された場合に、ATAコマンドの実行成功に関連付けられる通知をコマンド処理モジュールに送信することができる命令、
    コマンド処理モジュールによって、ATAコマンドの実行成功を示す通知を翻訳することができる命令、及び
    関連する実行成功応答をSCSIイニシエータに送信することができる命令
    を有していることを特徴とするシステム。
  17. 請求項15記載のシステムにおいて、コマンド処理モジュールは、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手することができる命令を有し、該命令により、
    インスタンスIDジェネレータを用いて、SCSIエラー応答に関連付けられるインスタンスIDを求めるステップと、
    第1エラールックアップテーブルを用いて、求められたインスタンスIDに関連付けられるエラーインデックスを求めるステップと、
    第2エラールックアップテーブルを用いて、求められたエラーインデックスに関連付けられる前記カスタマイズされたSCSIエラー応答を抽出するステップと
    が実行されることを特徴とするシステム。
  18. 請求項17記載のシステムにおいて、コマンド処理モジュールはさらに、
    第1エラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合に、デフォルトエラーインデックスを用いて、第2エラールックアップテーブルからカスタマイズされたSCSIエラー応答を抽出することができる命令
    を有していることを特徴とするシステム。
  19. 請求項15記載のシステムにおいて、コマンド処理モジュールは、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供することができる命令を有し、該命令により、
    受信されたSCSIコマンドにエラーがあるか否かを判断するステップと、
    エラーがあると判断した場合に、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手すると共に、該エラー応答をSCSIイニシエータに送信するステップと、
    エラーがないと判断した場合に、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップ
    を実行することを特徴とするシステム。
  20. 請求項19記載のシステムにおいて、コマンド処理モジュールはさらに、
    SCSIイニシエータによって、受信されたカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作を実行することができる命令
    を有することを特徴とするシステム。
  21. 請求項15記載のシステムにおいて、コマンド処理モジュールは、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供することができる命令を有し、該命令により、
    受信されたSCSIコマンドをATAコマンドに翻訳できるか否かを判断するステップと、
    翻訳できると判断した場合に、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供すると共に、ATAコマンドをATAドライブに送信するステップと、
    翻訳できないと判断した場合に、受信されたSCSIコマンドを実行し、該実行に失敗する場合に、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手すると共に、該カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信するステップと
    を実行することを特徴とするシステム。
  22. ストレージネットワーク環境においてSCSIターゲットから受信されたSCSIエラー応答をカスタマイズするためのシステムであって、
    1又は複数のSCSIイニシエータと、
    1又は複数のATAドライバと、
    1又は複数のSCSIイニシエータ及び1又は複数のATAドライバの間に接続されたホストバスアダプタ(HBA)コントローラと
    を備え、該HBAコントローラは、
    HBAコントローラに動作可能に接続されたメモリを備え、該メモリはSCSI−ATA翻訳(SAT)モジュールを含み、該SATモジュールはコマンド処理モジュール及びエラールックアップテーブルを含み、コマンド処理モジュールはコマンド翻訳モジュール及びインスタンスIDジェネレータを含み、
    コマンド処理モジュールは、
    コマンド処理モジュールによって、1又は複数のSCSIイニシエータのうちの1つからSCSIコマンドを受信することができる命令、
    コマンド翻訳モジュールによって、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供することができる命令、
    コマンド処理モジュールによって、1又は複数のATAドライブのうちの1つにATAコマンドを送信することができる命令、
    1又は複数のATAドライブの前記の1つによって、ATAコマンドを実行することができる命令、
    1又は複数のATAドライブのうちの前記1つによって、ATAコマンドを実行するのに成功したか否かを判断することができる命令、
    成功しなかったと判断する場合に、1又は複数のATAドライブのうちの前記1つによって、コマンド処理モジュールにATAエラー応答を送信することができる命令、
    コマンド処理モジュールによって、受信されたATAエラー応答をSCSIエラー応答に翻訳することができる命令、
    コマンド翻訳モジュールによって、前記エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手することができる命令、及び
    コマンド処理モジュールによって、1又は複数のSCSIイニシエータのうちの前記1つに、カスタマイズされたSCSIエラー応答を送信することができる命令
    を有していることを特徴とするシステム。
  23. 請求項22記載のシステムにおいて、コマンド処理モジュールはさらに、
    成功したと判断された場合に、ATAコマンドの実行成功を示す通知を送信することができる命令、
    ATAコマンドの実行成功を示す通知を翻訳することができる命令、及び
    関連する実行成功応答をSCSIイニシエータに送信するができる命令
    を有することを特徴とするシステム。
  24. 請求項22記載のシステムにおいて、コマンド処理モジュールは、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手することができる命令を有し、該命令は、
    インスタンスIDジェネレータを用いて、SCSIエラー応答に関連付けられるインスタンスIDを決定するステップと、
    第1エラールックアップテーブルを用いて、決定されたインスタンスIDに関連付けられるエラーインデックスを決定するステップと、
    第2エラールックアップテーブルを用いて、決定されたエラーインデックスに関連付けられたカスタマイズされたSCSIエラー応答を抽出するステップ
    を実行することを特徴とするシステム。
  25. 請求項24記載のシステムにおいて、コマンド処理モジュールは、
    第1エラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合に、デフォルトエラーインデックスを用いて、第2エラールックアップテーブルからカスタマイズされたSCSIエラー応答を抽出することができる命令
    を有していることを特徴とするシステム。
  26. 請求項22記載のシステムにおいて、コマンド処理モジュールは、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供することができる命令を有し、該命令は、
    受信されたSCSIコマンドにエラーがあるか否かを判断するステップと、
    エラーがあると判断した場合に、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手すると共に、該エラー応答をSCSIイニシエータに送信するステップと、
    エラーがないと判断した場合に、SCSI−ATAブリッジによって、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供するステップと
    を有していることを特徴とするシステム。
  27. 請求項26記載のシステムにおいて、コマンド処理モジュールはさらに、
    SCSIイニシエータによって、受信されたカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作を実行することができる命令
    を有していることを特徴とするシステム。
  28. 請求項22記載のシステムにおいて、コマンド処理モジュールは、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供することができる命令を有し、該命令は、
    受信されたSCSIコマンドをATAコマンドに翻訳することができるか否かを判断するステップと、
    翻訳できると判断した場合に、受信されたSCSIコマンドを翻訳して、ATAコマンドを提供すると共に、ATAコマンドを1又は複数のATAドライブのうちの前記1つに送信するステップと、
    翻訳できないと判断した場合に、受信されたSCSIコマンドを実行し、該実行に失敗した場合に、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手すると共に、該カスタマイズされたSCSIエラー応答をSCSIイニシエータに送信するステップと
    実行することを特徴とするシステム。
  29. ストレージネットワーク環境においてSCSIターゲットから受信されたSCSIエラー応答をカスタマイズするためのシステムであって、
    1又は複数のSCSIイニシエータと、
    1又は複数のSCSIイニシエータに接続されるSCSIドライブと
    を備え、該SCSIドライブはメモリを含み、該メモリはSCSIドライブに動作可能に接続され、メモリはコマンド処理モジュール及びエラールックアップテーブルを含み、コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスIDジェネレータを含み、コマンド処理モジュールは、
    コマンド処理モジュールによって、1又は複数のSCSIイニシエータのうちの1つからSCSIコマンドを受信することができる命令、
    SCSIドライブによって、SCSIコマンドを実行することができる命令、
    SCSIドライブによって、SCSIコマンドを実行するのに成功したか否かを判断することができる命令、
    成功しなかったと判断する場合には、SCSIドライブによって、SCSIエラー応答を生成することができる命令、
    コマンド処理モジュールによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手することができる命令、及び
    コマンド処理モジュールによって、カスタマイズされたSCSIエラー応答を1又は複数のSCSIイニシエータのうちの前記1つに送信することができる命令
    を有していることを特徴とするシステム。
  30. 請求項29記載のシステムにおいて、コマンド処理モジュールはさらに、
    成功したと判断する場合には、実行成功応答を前記1又は複数のSCSIイニシエータのうちの前記1つに送信することができる命令
    を有していることを特徴とするシステム。
  31. 請求項29記載のシステムにおいて、コマンド処理モジュールは、カスタマイズされたSCSIエラー応答を入手することができる命令を有し、該命令は、
    インスタンスIDジェネレータを用いて、SCSIエラー応答に関連付けられるインスタンスIDを決定するステップと、
    第1エラールックアップテーブルを用いて、求められたインスタンスIDに関連付けられるエラーインデックスを求めるステップと、
    第2エラールックアップテーブルを用いて、求められたエラーインデックスに関連付けられるカスタマイズされたSCSIエラー応答を抽出するステップと
    を実行することを特徴とするシステム。
  32. 請求項31記載のシステムにおいて、コマンド処理モジュールはさらに、
    第1エラールックアップテーブルにおいて関連するエラーインデックスが見つけられなかった場合に、デフォルトエラーインデックスを用いて、第2エラールックアップテーブルからカスタマイズされたSCSIエラー応答を抽出することができる命令
    を有していることを特徴とするシステム。
  33. 請求項32記載のシステムにおいて、コマンド処理モジュールはさらに、
    1又は複数のSCSIイニシエータのうちの前記1つによって、受信されたカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作を実行することができる命令
    を有していることを特徴とするシステム。
  34. ストレージネットワーク環境においてSCSIターゲットから受信されたSCSIエラー応答をカスタマイズするためのシステムであって、
    1又は複数のSCSIイニシエータと、
    1又は複数のSCSIイニシエータに接続されたSCSIエンクロージャと
    を備え、該SCSIエンクロージャはメモリを含み、該メモリはSCSIエンクロージャに動作可能に接続され、メモリはコマンド処理モジュール及びエラールックアップテーブルを含み、コマンド処理モジュールはコマンド翻訳モジュール及びインスタンスIDジェネレータを含み、メモリは、
    コマンド処理モジュールによって、1又は複数のSCSIイニシエータのうちの1つからSCSIコマンドを受信することができる命令、
    SCSIエンクロージャによって、SCSIコマンドを実行することができる命令、
    SCSIエンクロージャによって、SCSIコマンドを実行するのに成功したか否かを判断することができる命令、
    成功しなかったと判断した場合に、SCSIエンクロージャによって、SCSIエラー応答を生成することができる命令、
    コマンド処理モジュールによって、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手することができる命令、及び
    コマンド処理モジュールによって、カスタマイズされたSCSIエラー応答を1又は複数のSCSIイニシエータのうちの前記1つに送信することができる命令
    を有していることを特徴とするシステム。
  35. 請求項34記載のシステムにおいて、コマンド処理モジュールはさらに、
    成功したと判断した場合に、実行成功応答を1又は複数のSCSIイニシエータのうちの前記1つに送信することができる命令
    を有していることを特徴とするシステム。
  36. 請求項34記載のシステムにおいて、コマンド処理モジュールは、エラールックアップテーブルを用いて、カスタマイズされたSCSIエラー応答を入手することができる命令を有し、該命令は、
    インスタンスIDジェネレータを用いて、SCSIエラー応答に関連付けられたインスタンスIDを決定するステップと、
    第1エラールックアップテーブルを用いて、決定されたインスタンスIDに関連付けられるエラーインデックスを決定するステップと、
    第2エラールックアップテーブルを用いて、決定されたエラーインデックスに関連付けられるカスタマイズされたSCSIエラー応答を抽出するステップと
    を実行することを特徴とするシステム。
  37. 請求項36記載のシステムにおいて、コマンド処理モジュールはさらに、
    ダイエラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合に、デフォルトエラーインデックスを用いて、第2エラールックアップテーブルからカスタマイズされたエラー情報を抽出することができる命令
    を有していることを特徴とするシステム。
  38. 請求項37記載のシステムにおいて、コマンド処理モジュールはさらには、
    SCSIイニシエータによって受信されたカスタマイズされたSCSIエラー応答に基づいて、エラー回復動作を実行することができる命令を
    有していることを特徴とするシステム。
JP2010196949A 2010-04-28 2010-09-02 ストレージネットワーク環境においてscsiターゲットから受信されるscsiエラー応答をカスタマイズするためのシステム及び方法 Expired - Fee Related JP5073799B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/768,754 2010-04-28
US12/768,754 US8020031B1 (en) 2010-04-28 2010-04-28 System and method for customizing a SCSI error response received from a SCSI target in a storage network environment

Publications (2)

Publication Number Publication Date
JP2011233127A JP2011233127A (ja) 2011-11-17
JP5073799B2 true JP5073799B2 (ja) 2012-11-14

Family

ID=44544902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010196949A Expired - Fee Related JP5073799B2 (ja) 2010-04-28 2010-09-02 ストレージネットワーク環境においてscsiターゲットから受信されるscsiエラー応答をカスタマイズするためのシステム及び方法

Country Status (6)

Country Link
US (1) US8020031B1 (ja)
EP (1) EP2383651A3 (ja)
JP (1) JP5073799B2 (ja)
KR (1) KR101284403B1 (ja)
CN (1) CN102236591B (ja)
TW (1) TWI431468B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9983992B2 (en) * 2013-04-30 2018-05-29 WMware Inc. Trim support for a solid-state drive in a virtualized environment
US10101945B1 (en) 2013-05-29 2018-10-16 EMC IP Holding Company LLC Method and apparatus for enhancing command burst tolerance
US9716611B1 (en) * 2013-05-29 2017-07-25 EMC IP Holding Company LLC Method and apparatus for enhancing link anomaly tolerance in a SCSI system
WO2015115281A1 (ja) * 2014-01-29 2015-08-06 京セラドキュメントソリューションズ株式会社 画像形成装置及び画像形成方法
CN106161132B (zh) * 2015-04-17 2019-10-01 伊姆西公司 用于对存储网络进行测试的装置和方法
CN104933005A (zh) * 2015-07-02 2015-09-23 广州慧存电子科技有限公司 一种多功能硬盘接口转换器

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3284327B2 (ja) * 1993-12-28 2002-05-20 株式会社日立製作所 遠隔制御システム
US6115771A (en) * 1998-03-31 2000-09-05 Lsi Logic Corporation Method and system for converting computer peripheral equipment to SCSI-compliant devices
US7664903B2 (en) * 2002-02-25 2010-02-16 Solid Access Technologies LLC Control unit with PCI and SCSI buses and computing system with electronic semiconductor disk
JP2004178535A (ja) * 2002-11-25 2004-06-24 Hagiwara Sys-Com:Kk ストレージコントローラー、ストレージカード、磁気ディスクドライブ
US7500047B1 (en) * 2004-12-03 2009-03-03 Crossroads Systems, Inc. System and method for processing commands
TW200801897A (en) * 2006-06-29 2008-01-01 Ibm Single system board with automatic feature selection based on installed configuration selection unit

Also Published As

Publication number Publication date
EP2383651A2 (en) 2011-11-02
TW201137599A (en) 2011-11-01
TWI431468B (zh) 2014-03-21
CN102236591A (zh) 2011-11-09
KR20110120187A (ko) 2011-11-03
EP2383651A3 (en) 2011-11-30
CN102236591B (zh) 2014-02-26
JP2011233127A (ja) 2011-11-17
US8020031B1 (en) 2011-09-13
KR101284403B1 (ko) 2013-07-09

Similar Documents

Publication Publication Date Title
JP5073799B2 (ja) ストレージネットワーク環境においてscsiターゲットから受信されるscsiエラー応答をカスタマイズするためのシステム及び方法
US7870302B2 (en) Method for automatically identifying an operating system for a USB device
EP3660686B1 (en) Method and device for transmitting data processing request
EP3859528A2 (en) Method and apparatus for handling memory failure, electronic device and storage medium
CN103455363B (zh) 一种虚拟机的指令处理方法、装置及物理主机
US9292411B2 (en) Wireless debugging and updating of firmware
US20180295028A1 (en) Method and apparatus of configuring and maintaining smart wifi device, device and computer storage medium
CN101680932A (zh) 具有用于验证外部接口的功能性的自测试特征的集成电路
CN103365753A (zh) 用于对目标系统执行调试过程的调试设备和方法
KR102836295B1 (ko) 융합된 커맨드들의 원자적 프로세싱 방법 및 메모리 장치
CN109388526B (zh) 一种控制电路及复位操作的方法
US9792168B2 (en) System and method for cloud remediation of a client with a non-bootable storage medium
CN109032897A (zh) 数据调度方法、主机以及固态硬盘
US8855799B2 (en) Automated mass production method and system thereof
US10762029B2 (en) Electronic apparatus and detection method using the same
WO2018072640A1 (zh) 接口控制命令的处理方法及调制解调器Modem设备
CN116974636A (zh) 多路互联系统及其总线接口初始化方法、装置
EP2930616B1 (en) Device and method for generating application package
CN116541277A (zh) 接口的测试方法、装置、设备及介质
CN114721900A (zh) 连接关系的建立方法、主板、装置、设备和存储介质
US20120110211A1 (en) Management of detected devices coupled to a host machine
CN110825572A (zh) I2c设备地址的探测方法、装置、系统及电子设备
US20150370729A1 (en) Bridge decoder for a vehicle infotainment system
CN118964270B (en) Serial port communication method, device, server, electronic equipment and storage medium
CN117555430A (zh) 一种针对kvm的otg键盘鼠标液晶触摸映射的方法

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120724

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120822

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150831

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

LAPS Cancellation because of no payment of annual fees