(57)【要約】      （修正有）【課題】ストレージネットワーク環境においてＳＣＳＩターゲットから受信されたＳＣＳＩエラー応答をカスタマイズする。【解決手段】ＳＣＳＩイニシエータが送信したＳＣＳＩコマンドが、ＳＣＳＩ−ＡＴＡブリッジによって受信される。受信されたＳＣＳＩコマンドは翻訳され、ＡＴＡコマンドが与えられる。その後、ＡＴＡコマンドはＡＴＡドライブに送信される。ＡＴＡコマンドはＡＴＡドライブによって実行される。実行中に、エラーが生じる場合には、ＡＴＡドライブによって、ＳＣＳＩ−ＡＴＡブリッジにＡＴＡエラー応答が送信される。受信されたＡＴＡエラー応答はＳＣＳＩエラー応答に翻訳される。その後、ＳＣＳＩ−ＡＴＡブリッジは、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手する。さらに、カスタマイズされたＳＣＳＩエラー応答はＳＣＳＩイニシエータに送信される。【選択図】図１
2011233127.tif 000002
【特許請求の範囲】
【請求項１】
ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするための方法であって、
ＳＣＳＩ−ＡＴＡブリッジによって、ＳＣＳＩイニシエータからＳＣＳＩコマンドを受信するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、ＡＴＡコマンドをＡＴＡドライブに送信するステップと、
ＡＴＡドライブによって、ＡＴＡコマンドを実行するステップと、
ＡＴＡドライブがＡＴＡコマンドを成功裏に実行したか否かを判断するステップと、
成功しなかったと判断された場合には、ＡＴＡドライブによって、ＳＣＳＩ−ＡＴＡブリッジにＡＴＡエラー応答を送信するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＡＴＡエラー応答をＳＣＳＩエラー応答に翻訳するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信するステップと
を含んでいることを特徴とする方法。
【請求項２】
請求項１記載の方法において、該方法は更に、
成功したと判断される場合に、ＡＴＡドライブによって、ＡＴＡコマンドの実行成功を示す通知をＳＣＳＩ−ＡＴＡブリッジに送信するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、ＡＴＡコマンドの実行成功を示す通知を翻訳するステップと、
関連する実行成功応答をＳＣＳＩイニシエータに送信するステップと
を含んでいることを特徴とする方法。
【請求項３】
請求項１記載の方法において、ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手するステップは、
ＳＣＳＩエラー応答に関連付けられるインスタンスＩＤを求めるステップと、
第１エラールックアップテーブルを用いて、求められたインスタンスＩＤに関連付けられるエラーインデックスを求めるステップと、
第２エラールックアップテーブルを用いて、求められたエラーインデックスに関連付けられたカスタマイズされたＳＣＳＩエラー応答を抽出するステップと
を含んでいることを特徴とする方法。
【請求項４】
請求項３記載の方法において、該方法は更に、
第１エラールックアップテーブルにおいて関連するエラーインデックスが見つけられなかった場合には、デフォルトエラーインデックスを用いて、第２エラールックアップテーブルからカスタマイズされたＳＣＳＩエラー応答を抽出するステップ
を含んでいることを特徴とする方法。
【請求項５】
請求項１記載の方法において、ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップは、
ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＳＣＳＩコマンドにエラーがあるか否かを判断するステップと、
エラーがあると判断された場合に、ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手すると共に、ＳＣＳＩ−ＡＴＡブリッジによって、該カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信するステップと、
エラーがないと判断された場合には、ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップと
を含んでいることを特徴とする方法。
【請求項６】
請求項５記載の方法において、該方法は更に、
ＳＣＳＩイニシエータによって受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作を実行するステップ
を含んでいることを特徴とする方法。
【請求項７】
請求項５記載の方法において、ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップは、
ＳＣＳＩ−ＡＴＡブリッジによって受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳できるか否かを判断するステップと、
翻訳できると判断した場合に、ＳＣＳＩ−ＡＴＡブリッジによって受信されたＳＣＳＩコマンドを翻訳してＡＴＡコマンドを提供すると共に、ＳＣＳＩ−ＡＴＡブリッジによって、ＡＴＡコマンドをＡＴＡドライブに送信するステップと、
翻訳できないと判断した場合に、ＳＣＳＩ−ＡＴＡブリッジで受信されたＳＣＳＩコマンドを実行し、該実行に失敗した場合に、ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手し、ＳＣＳＩ−ＡＴＡブリッジによって、該カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信するステップと
を含んでいることを特徴とする方法。
【請求項８】
ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするための非一時的なコンピュータ可読記憶媒体であって、該コンピュータ可読記憶媒体は、コンピュータデバイスによって実行されるときに、該コンピュータデバイスに方法を実行させる命令を記憶しており、該方法は、
ＳＣＳＩ−ＡＴＡブリッジによって、ＳＣＳＩイニシエータからＳＣＳＩコマンド受信するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、ＡＴＡコマンドをＡＴＡドライブに送信するステップと、
ＡＴＡドライブによって、ＡＴＡコマンドを実行するステップと、
ＡＴＡドライブによってＡＴＡコマンドを実行することが成功したか否かを判断するステップと、
成功しなかったと判断した場合に、ＡＴＡドライブによって、ＡＴＡエラー応答をＳＣＳＩ−ＡＴＡブリッジに送信するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＡＴＡエラー応答をＳＣＳＩエラー応答に翻訳するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信するステップと
を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
【請求項９】
請求項８記載の非一時的なコンピュータ可読記憶媒体において、方法は更に、
成功したと判断された場合に、ＡＴＡドライブによって、ＡＴＡコマンドの実行成功を示す通知を前記ＳＣＳＩ−ＡＴＡブリッジに送信するステップと、
ＳＣＳＩ−ＡＴＡブリッジによって、ＡＴＡコマンドの実行成功を示す通知を翻訳するステップと、
関連する実行成功応答をＳＣＳＩイニシエータに送信するステップと
を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
【請求項１０】
請求項８記載の非一時的なコンピュータ可読記憶媒体において、ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手するステップは、
ＳＣＳＩエラー応答に関連付けられるインスタンスＩＤを決定するステップと、
第１エラールックアップテーブルを用いて、決定されたインスタンスＩＤに関連付けられるエラーインデックスを決定するステップと、
第２エラールックアップテーブルを用いて、決定されたエラーインデックスに関連付けられるカスタマイズされたＳＣＳＩエラー応答を抽出するステップと
を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
【請求項１１】
請求項１０記載の非一時的なコンピュータ可読記憶媒体において、方法は更に、
第１エラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合に、デフォルトエラーインデックスを用いて、第２エラールックアップテーブルからカスタマイズされたＳＣＳＩエラー応答を抽出するステップ
を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
【請求項１２】
請求項８記載の非一時的なコンピュータ可読記憶媒体において、ＳＣＳＩ−ＡＴＡブリッジによって受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップは、
ＳＣＳＩ−ＡＴＡブリッジによって受信されたＳＣＳＩコマンドにエラーがあるか否かを判断するステップと、
エラーがあると判断された場合に、ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手すると共に、ＳＣＳＩ−ＡＴＡブリッジによって、該カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信するステップと、
エラーがないと判断された場合に、ＳＣＳＩ−ＡＴＡブリッジによって受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップと
を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
【請求項１３】
請求項１２記載の非一時的なコンピュータ可読記憶媒体において、方法は更に、
ＳＣＳＩイニシエータによって、受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作を実行するステップ
を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
【請求項１４】
請求項１２記載の非一時的なコンピュータ可読記憶媒体において、ＳＣＳＩ−ＡＴＡブリッジによって受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップは、
ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳できるか否かを判断するステップと、
翻訳できると判断した場合に、ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＳＣＳＩコマンドを翻訳してＡＴＡコマンドを提供すると共に、ＳＣＳＩ−ＡＴＡブリッジによって、ＡＴＡコマンドをＡＴＡドライブに送信するステップと、
翻訳できないと判断した場合に、ＳＣＳＩ−ＡＴＡブリッジで受信されたＳＣＳＩコマンドを実行し、該実行に失敗した場合に、ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手し、ＳＣＳＩ−ＡＴＡブリッジによって、該カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信するステップと
を含んでいることを特徴とする非一時的なコンピュータ可読記憶媒体。
【請求項１５】
ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするためのシステムであって、
１又は複数のＳＣＳＩイニシエータと、
ＡＴＡドライブと、
１又は複数のＳＣＳＩイニシエータ及びＡＴＡドライブの間に接続されたＳＣＳＩ−ＡＴＡブリッジとを備え、該ＳＣＳＩ−ＡＴＡブリッジは、
該ＳＣＳＩ−ＡＴＡブリッジに動作可能に接続され、コマンド処理モジュール及びエラールックアップテーブルを含んでいるメモリであって、コマンド処理モジュールはコマンド翻訳モジュール及びインスタンスＩＤジェネレータを含んでおり、
該メモリは、
コマンド処理モジュールによって、１又は複数のＳＣＳＩイニシエータのうちの１つからＳＣＳＩコマンドを受信することができる命令、
コマンド翻訳モジュールによって、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供することができる命令、
コマンド処理モジュールによって、ＡＴＡコマンドをＡＴＡドライブに送信することができる命令、
ＡＴＡドライブによって、ＡＴＡコマンドを実行することができる命令、
ＡＴＡドライブによって、ＡＴＡコマンドを実行するのに成功したか否かを判断することができる命令、
成功しなかったと判断した場合に、ＡＴＡドライブによって、ＡＴＡエラー応答をコマンド処理モジュールに送信することができる命令、
コマンド処理モジュールによって、受信されたＡＴＡエラー応答をＳＣＳＩエラー応答に翻訳することができる命令、
コマンド翻訳モジュールによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手することができる命令、及び
コマンド処理モジュールによって、カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信することができる命令
を有していることを特徴とするシステム。
【請求項１６】
請求項１５記載のシステムにおいて、コマンド処理モジュールはさらに、
成功したと判断された場合に、ＡＴＡコマンドの実行成功に関連付けられる通知をコマンド処理モジュールに送信することができる命令、
コマンド処理モジュールによって、ＡＴＡコマンドの実行成功を示す通知を翻訳することができる命令、及び
関連する実行成功応答をＳＣＳＩイニシエータに送信することができる命令
を有していることを特徴とするシステム。
【請求項１７】
請求項１５記載のシステムにおいて、コマンド処理モジュールは、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手することができる命令を有し、該命令により、
インスタンスＩＤジェネレータを用いて、ＳＣＳＩエラー応答に関連付けられるインスタンスＩＤを求めるステップと、
第１エラールックアップテーブルを用いて、求められたインスタンスＩＤに関連付けられるエラーインデックスを求めるステップと、
第２エラールックアップテーブルを用いて、求められたエラーインデックスに関連付けられる前記カスタマイズされたＳＣＳＩエラー応答を抽出するステップと
が実行されることを特徴とするシステム。
【請求項１８】
請求項１７記載のシステムにおいて、コマンド処理モジュールはさらに、
第１エラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合に、デフォルトエラーインデックスを用いて、第２エラールックアップテーブルからカスタマイズされたＳＣＳＩエラー応答を抽出することができる命令
を有していることを特徴とするシステム。
【請求項１９】
請求項１５記載のシステムにおいて、コマンド処理モジュールは、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供することができる命令を有し、該命令により、
受信されたＳＣＳＩコマンドにエラーがあるか否かを判断するステップと、
エラーがあると判断した場合に、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手すると共に、該エラー応答をＳＣＳＩイニシエータに送信するステップと、
エラーがないと判断した場合に、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップ
を実行することを特徴とするシステム。
【請求項２０】
請求項１９記載のシステムにおいて、コマンド処理モジュールはさらに、
ＳＣＳＩイニシエータによって、受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作を実行することができる命令
を有することを特徴とするシステム。
【請求項２１】
請求項１５記載のシステムにおいて、コマンド処理モジュールは、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供することができる命令を有し、該命令により、
受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳できるか否かを判断するステップと、
翻訳できると判断した場合に、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供すると共に、ＡＴＡコマンドをＡＴＡドライブに送信するステップと、
翻訳できないと判断した場合に、受信されたＳＣＳＩコマンドを実行し、該実行に失敗する場合に、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手すると共に、該カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信するステップと
を実行することを特徴とするシステム。
【請求項２２】
ストレージネットワーク環境においてＳＣＳＩターゲットから受信されたＳＣＳＩエラー応答をカスタマイズするためのシステムであって、
１又は複数のＳＣＳＩイニシエータと、
１又は複数のＡＴＡドライバと、
１又は複数のＳＣＳＩイニシエータ及び１又は複数のＡＴＡドライバの間に接続されたホストバスアダプタ（ＨＢＡ）コントローラと
を備え、該ＨＢＡコントローラは、
ＨＢＡコントローラに動作可能に接続されたメモリを備え、該メモリはＳＣＳＩ−ＡＴＡ翻訳（ＳＡＴ）モジュールを含み、該ＳＡＴモジュールはコマンド処理モジュール及びエラールックアップテーブルを含み、コマンド処理モジュールはコマンド翻訳モジュール及びインスタンスＩＤジェネレータを含み、
コマンド処理モジュールは、
コマンド処理モジュールによって、１又は複数のＳＣＳＩイニシエータのうちの１つからＳＣＳＩコマンドを受信することができる命令、
コマンド翻訳モジュールによって、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供することができる命令、
コマンド処理モジュールによって、１又は複数のＡＴＡドライブのうちの１つにＡＴＡコマンドを送信することができる命令、
１又は複数のＡＴＡドライブの前記の１つによって、ＡＴＡコマンドを実行することができる命令、
１又は複数のＡＴＡドライブのうちの前記１つによって、ＡＴＡコマンドを実行するのに成功したか否かを判断することができる命令、
成功しなかったと判断する場合に、１又は複数のＡＴＡドライブのうちの前記１つによって、コマンド処理モジュールにＡＴＡエラー応答を送信することができる命令、
コマンド処理モジュールによって、受信されたＡＴＡエラー応答をＳＣＳＩエラー応答に翻訳することができる命令、
コマンド翻訳モジュールによって、前記エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手することができる命令、及び
コマンド処理モジュールによって、１又は複数のＳＣＳＩイニシエータのうちの前記１つに、カスタマイズされたＳＣＳＩエラー応答を送信することができる命令
を有していることを特徴とするシステム。
【請求項２３】
請求項２２記載のシステムにおいて、コマンド処理モジュールはさらに、
成功したと判断された場合に、ＡＴＡコマンドの実行成功を示す通知を送信することができる命令、
ＡＴＡコマンドの実行成功を示す通知を翻訳することができる命令、及び
関連する実行成功応答をＳＣＳＩイニシエータに送信するができる命令
を有することを特徴とするシステム。
【請求項２４】
請求項２２記載のシステムにおいて、コマンド処理モジュールは、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手することができる命令を有し、該命令は、
インスタンスＩＤジェネレータを用いて、ＳＣＳＩエラー応答に関連付けられるインスタンスＩＤを決定するステップと、
第１エラールックアップテーブルを用いて、決定されたインスタンスＩＤに関連付けられるエラーインデックスを決定するステップと、
第２エラールックアップテーブルを用いて、決定されたエラーインデックスに関連付けられたカスタマイズされたＳＣＳＩエラー応答を抽出するステップ
を実行することを特徴とするシステム。
【請求項２５】
請求項２４記載のシステムにおいて、コマンド処理モジュールは、
第１エラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合に、デフォルトエラーインデックスを用いて、第２エラールックアップテーブルからカスタマイズされたＳＣＳＩエラー応答を抽出することができる命令
を有していることを特徴とするシステム。
【請求項２６】
請求項２２記載のシステムにおいて、コマンド処理モジュールは、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供することができる命令を有し、該命令は、
受信されたＳＣＳＩコマンドにエラーがあるか否かを判断するステップと、
エラーがあると判断した場合に、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手すると共に、該エラー応答をＳＣＳＩイニシエータに送信するステップと、
エラーがないと判断した場合に、ＳＣＳＩ−ＡＴＡブリッジによって、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供するステップと
を有していることを特徴とするシステム。
【請求項２７】
請求項２６記載のシステムにおいて、コマンド処理モジュールはさらに、
ＳＣＳＩイニシエータによって、受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作を実行することができる命令
を有していることを特徴とするシステム。
【請求項２８】
請求項２２記載のシステムにおいて、コマンド処理モジュールは、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供することができる命令を有し、該命令は、
受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳することができるか否かを判断するステップと、
翻訳できると判断した場合に、受信されたＳＣＳＩコマンドを翻訳して、ＡＴＡコマンドを提供すると共に、ＡＴＡコマンドを１又は複数のＡＴＡドライブのうちの前記１つに送信するステップと、
翻訳できないと判断した場合に、受信されたＳＣＳＩコマンドを実行し、該実行に失敗した場合に、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手すると共に、該カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信するステップと
実行することを特徴とするシステム。
【請求項２９】
ストレージネットワーク環境においてＳＣＳＩターゲットから受信されたＳＣＳＩエラー応答をカスタマイズするためのシステムであって、
１又は複数のＳＣＳＩイニシエータと、
１又は複数のＳＣＳＩイニシエータに接続されるＳＣＳＩドライブと
を備え、該ＳＣＳＩドライブはメモリを含み、該メモリはＳＣＳＩドライブに動作可能に接続され、メモリはコマンド処理モジュール及びエラールックアップテーブルを含み、コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスＩＤジェネレータを含み、コマンド処理モジュールは、
コマンド処理モジュールによって、１又は複数のＳＣＳＩイニシエータのうちの１つからＳＣＳＩコマンドを受信することができる命令、
ＳＣＳＩドライブによって、ＳＣＳＩコマンドを実行することができる命令、
ＳＣＳＩドライブによって、ＳＣＳＩコマンドを実行するのに成功したか否かを判断することができる命令、
成功しなかったと判断する場合には、ＳＣＳＩドライブによって、ＳＣＳＩエラー応答を生成することができる命令、
コマンド処理モジュールによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手することができる命令、及び
コマンド処理モジュールによって、カスタマイズされたＳＣＳＩエラー応答を１又は複数のＳＣＳＩイニシエータのうちの前記１つに送信することができる命令
を有していることを特徴とするシステム。
【請求項３０】
請求項２９記載のシステムにおいて、コマンド処理モジュールはさらに、
成功したと判断する場合には、実行成功応答を前記１又は複数のＳＣＳＩイニシエータのうちの前記１つに送信することができる命令
を有していることを特徴とするシステム。
【請求項３１】
請求項２９記載のシステムにおいて、コマンド処理モジュールは、カスタマイズされたＳＣＳＩエラー応答を入手することができる命令を有し、該命令は、
インスタンスＩＤジェネレータを用いて、ＳＣＳＩエラー応答に関連付けられるインスタンスＩＤを決定するステップと、
第１エラールックアップテーブルを用いて、求められたインスタンスＩＤに関連付けられるエラーインデックスを求めるステップと、
第２エラールックアップテーブルを用いて、求められたエラーインデックスに関連付けられるカスタマイズされたＳＣＳＩエラー応答を抽出するステップと
を実行することを特徴とするシステム。
【請求項３２】
請求項３１記載のシステムにおいて、コマンド処理モジュールはさらに、
第１エラールックアップテーブルにおいて関連するエラーインデックスが見つけられなかった場合に、デフォルトエラーインデックスを用いて、第２エラールックアップテーブルからカスタマイズされたＳＣＳＩエラー応答を抽出することができる命令
を有していることを特徴とするシステム。
【請求項３３】
請求項３２記載のシステムにおいて、コマンド処理モジュールはさらに、
１又は複数のＳＣＳＩイニシエータのうちの前記１つによって、受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作を実行することができる命令
を有していることを特徴とするシステム。
【請求項３４】
ストレージネットワーク環境においてＳＣＳＩターゲットから受信されたＳＣＳＩエラー応答をカスタマイズするためのシステムであって、
１又は複数のＳＣＳＩイニシエータと、
１又は複数のＳＣＳＩイニシエータに接続されたＳＣＳＩエンクロージャと
を備え、該ＳＣＳＩエンクロージャはメモリを含み、該メモリはＳＣＳＩエンクロージャに動作可能に接続され、メモリはコマンド処理モジュール及びエラールックアップテーブルを含み、コマンド処理モジュールはコマンド翻訳モジュール及びインスタンスＩＤジェネレータを含み、メモリは、
コマンド処理モジュールによって、１又は複数のＳＣＳＩイニシエータのうちの１つからＳＣＳＩコマンドを受信することができる命令、
ＳＣＳＩエンクロージャによって、ＳＣＳＩコマンドを実行することができる命令、
ＳＣＳＩエンクロージャによって、ＳＣＳＩコマンドを実行するのに成功したか否かを判断することができる命令、
成功しなかったと判断した場合に、ＳＣＳＩエンクロージャによって、ＳＣＳＩエラー応答を生成することができる命令、
コマンド処理モジュールによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手することができる命令、及び
コマンド処理モジュールによって、カスタマイズされたＳＣＳＩエラー応答を１又は複数のＳＣＳＩイニシエータのうちの前記１つに送信することができる命令
を有していることを特徴とするシステム。
【請求項３５】
請求項３４記載のシステムにおいて、コマンド処理モジュールはさらに、
成功したと判断した場合に、実行成功応答を１又は複数のＳＣＳＩイニシエータのうちの前記１つに送信することができる命令
を有していることを特徴とするシステム。
【請求項３６】
請求項３４記載のシステムにおいて、コマンド処理モジュールは、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手することができる命令を有し、該命令は、
インスタンスＩＤジェネレータを用いて、ＳＣＳＩエラー応答に関連付けられたインスタンスＩＤを決定するステップと、
第１エラールックアップテーブルを用いて、決定されたインスタンスＩＤに関連付けられるエラーインデックスを決定するステップと、
第２エラールックアップテーブルを用いて、決定されたエラーインデックスに関連付けられるカスタマイズされたＳＣＳＩエラー応答を抽出するステップと
を実行することを特徴とするシステム。
【請求項３７】
請求項３６記載のシステムにおいて、コマンド処理モジュールはさらに、
ダイエラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合に、デフォルトエラーインデックスを用いて、第２エラールックアップテーブルからカスタマイズされたエラー情報を抽出することができる命令
を有していることを特徴とするシステム。
【請求項３８】
請求項３７記載のシステムにおいて、コマンド処理モジュールはさらには、
ＳＣＳＩイニシエータによって受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作を実行することができる命令を
有していることを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージネットワーク環境において、ＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするためのシステム及び方法に関する。
【背景技術】
【０００２】
スモール・コンピュータ・システム・インターフェース（ＳＣＳＩ）は、コンピュータとデータ記憶デバイスとの間でデータを転送するための１組の標準的なＳＣＳＩコマンドを使用するコンピュータプロトコルである。典型的には、コンピュータが、データ記憶デバイスに向けられるＳＣＳＩコマンドを起動する。データ記憶デバイスは、ＳＣＳＩ−ＡＴＡブリッジを介して存在する（behind）アドバンスド・テクノロジ・アタッチメント（ＡＴＡ）ディスクドライブとすることができる。そのようなストレージネットワーク環境において、ＳＣＳＩイニシエータが、ＳＣＳＩ−ＡＴＡブリッジにＳＣＳＩコマンドを送信する。その際、ＳＣＳＩ−ＡＴＡブリッジは、受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳し、その後、そのＡＴＡコマンドをＡＴＡターゲットに送信する。その後、ＡＴＡターゲットはＡＴＡコマンドを実行し、ＳＣＳＩ−ＡＴＡブリッジを通して、関連する入力／出力データ転送を実行する。上記の接続形態において、ＳＣＳＩ−ＡＴＡブリッジは、基本的に、ＳＣＳＩターゲットの一種である。
【０００３】
ＳＣＳＩターゲットがＳＣＳＩコマンドを受信した後に、ＳＣＳＩターゲットにおいてコマンドを処理する際にエラーが生じる場合には、関連するＳＣＳＩターゲットによって、ＳＣＳＩイニシエータにエラー応答が送信される。このエラー応答は、ＳＣＳＩターゲットからＳＣＳＩイニシエータに返送される検査条件応答である。さらに、その検査条件に応答して、ＳＣＳＩイニシエータは、ＳＣＳＩターゲットからエラー情報を入手するために用いられるＳＣＳＩ要求センスコマンドを送信する。その際、ＳＣＳＩターゲットは１組のＳＣＳＩセンスデータを用いてＳＣＳＩ要求センスコマンドに応答し、そのデータは典型的には３つのフィールド、すなわち、センスキー、追加センスコード（ＡＳＣ）及び追加センスコード修飾子（ＡＳＱＣ）を含み、それによりエラーについての詳細を細かく分類してＳＣＳＩイニシエータに与える。その後、ＳＣＳＩイニシエータは、受信された１組のＳＣＳＩセンスデータに基づいて措置を講じる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ストレージネットワーク環境では、典型的には、数世代のＳＣＳＩイニシエータ及びＳＣＳＩターゲットが使用される。１つの世代のＳＣＳＩイニシエータによって解釈されるエラー応答が、別の世代のＳＣＳＩイニシエータによって正しく解釈されない場合がある。このような状況において、ＳＣＳＩイニシエータがＳＣＳＩターゲットによって送信されるエラー応答を解釈することができない場合には、ＳＣＳＩイニシエータによって、必要とされる動作が実行されない場合があり、この結果として、厳しい且つ／又は不要なエラー回復動作が行われることがあり、それによりストレージネットワーク性能が著しく低下する可能性がある。
【課題を解決するための手段】
【０００５】
以下の本発明の概要は、発明の本質及び内容を簡単に示す発明の概要を要求する米国特許法施行規則第１．７３規則に準拠するために提供される。それは、特許請求の範囲又は意味を解釈又は限定するために用いられないという了解の下で提出されるものである。
【０００６】
ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするシステム及び方法が開示される。一態様では、ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするための一方法において、ＳＣＳＩ−ＡＴＡブリッジによって、ＳＣＳＩイニシエータからＳＣＳＩコマンドが受信される。受信されたＳＣＳＩコマンドは、ＳＣＳＩ−ＡＴＡブリッジによって翻訳され、ＡＴＡコマンドが与えられる。その後、そのＡＴＡコマンドは、ＳＣＳＩ−ＡＴＡブリッジによって、ＡＴＡドライブに送信される。そのＡＴＡコマンドは、ＡＴＡドライブによって実行される。
【０００７】
さらに、ＡＴＡドライブによって、ＡＴＡコマンドを実行するのに成功したか否かが判断される。成功しなかったと判断される場合には、ＡＴＡドライブによって、ＳＣＳＩ−ＡＴＡブリッジにＡＴＡエラー応答が送信される。受信されたＡＴＡエラー応答は、ＳＣＳＩ−ＡＴＡブリッジによって、ＳＣＳＩエラー応答に翻訳される。ＳＣＳＩ−ＡＴＡブリッジによって、エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答が入手される。さらに、カスタマイズされたＳＣＳＩエラー応答は、ＳＣＳＩ−ＡＴＡブリッジによって、ＳＣＳＩイニシエータに送信される。
【０００８】
別の実施態様では、ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするための非一時的なコンピュータ可読記憶媒体が、コンピュータデバイスによって実行されるときに、そのコンピュータデバイスに上記のような方法を実行させる命令（インストラクション）を有する。
【０００９】
さらに別の実施態様では、ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするためのシステムが、１又は複数のＳＣＳＩイニシエータと、ＡＴＡドライブと、１又は複数のＳＣＳＩイニシエータ及びＡＴＡドライブの間に接続されるＳＣＳＩ−ＡＴＡブリッジとを含む。ＳＣＳＩ−ＡＴＡブリッジは、ＳＣＳＩ−ＡＴＡブリッジに動作可能に接続されるメモリを含む。メモリは、コマンド処理モジュール及びエラールックアップテーブルを含む。コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスＩＤジェネレータを含み、上記のような方法を実行することができる命令を有する。
【００１０】
さらに別の実施態様では、ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするためのシステムが、１又は複数のＳＣＳＩイニシエータと、１又は複数のＡＴＡドライブと、１又は複数のＳＣＳＩイニシエータ及び１又は複数のＡＴＡドライブの間に接続されるホストバスアダプタ（ＨＢＡ）コントローラとを含む。ＨＢＡコントローラは、ＨＢＡコントローラに動作可能に接続されるメモリを含む。メモリは、ＳＣＳＩ−ＡＴＡ翻訳（ＳＡＴ）モジュールを含み、ＳＡＴモジュールは、コマンド処理モジュール及びエラールックアップテーブルを含む。コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスＩＤジェネレータを含み、上記のような方法を実行することができる命令を有する。
【００１１】
さらに別の実施態様では、ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするためのシステムが、１又は複数のＳＣＳＩイニシエータと、１又は複数のＳＣＳＩイニシエータに接続されるＳＣＳＩドライブとを含む。ＳＣＳＩドライブは、ＳＣＳＩドライブに動作可能に接続されるメモリを含む。メモリは、コマンド処理モジュール及びエラールックアップテーブルを含む。コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスＩＤジェネレータを含み、上記のような方法を実行することができる命令を有する。
【００１２】
別の実施態様では、ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするためのシステムが、１又は複数のＳＣＳＩイニシエータと、１又は複数のＳＣＳＩイニシエータに接続されるＳＣＳＩエンクロージャとを含む。ＳＣＳＩエンクロージャは、ＳＣＳＩエンクロージャに動作可能に接続されるメモリを含む。メモリは、コマンド処理モジュール及びエラールックアップテーブルを含む。コマンド処理モジュールは、コマンド翻訳モジュール及びインスタンスＩＤジェネレータを含み、上記のような方法を実行することができる命令を有する。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態による、ストレージネットワーク環境のブロック図である。
【図２】本発明の一実施形態による、エラールックアップテーブルを示す図である。
【図３】本発明の一実施形態による、ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするための方法のフロー図である。
【図４】本発明の別の実施形態による、ストレージネットワーク環境のブロック図である。
【図５】本発明の他の実施形態による、ストレージネットワーク環境のブロック図である。
【図６】本発明の別の実施形態による、ストレージネットワーク環境のブロック図である。
【発明を実施するための形態】
【００１４】
ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするためのシステム及び方法が開示される。本発明の実施形態の以下の詳細な説明では、本明細書の一部を形成し、本発明を実施することができる具体的な実施形態が例示される添付の図面が参照される。これらの実施形態は、当業者が本発明を実施できるようにするほど十分に詳しく説明されるが、本発明の範囲から逸脱することなく、他の実施形態が用いられる場合があること、及び変更が加えられる場合があることは理解されたい。それゆえ、以下の詳細な説明は、限定する意味に解釈されるべきではなく、本発明の範囲は添付の特許請求の範囲によって規定される。
【００１５】
図１は、本発明の一実施形態による、ストレージネットワーク環境１００のブロック図を示す。詳細には、図１のシステムは、ストレージネットワーク環境１００におけるＳＣＳＩエラー応答をカスタマイズするためのものである。該システムは、ＳＣＳＩイニシエータ１０５Ａ〜Ｎと、ＡＴＡドライブ１１０と、ＳＣＳＩ−ＡＴＡブリッジ１１５とを含む。ＳＣＳＩ−ＡＴＡブリッジ１１５は、ＳＣＳＩイニシエータ１０５Ａ〜ＮとＡＴＡドライブ１１０との間に接続され、メモリ１２０と、フラッシュメモリ１１５と、プロセッサ１６５とを含む。メモリ１２０は、ＳＣＳＩ−ＡＴＡブリッジ１１５に動作可能に接続され、コマンド処理モジュール１２５及びエラールックアップテーブル１４０を含む。コマンド処理モジュール１２５は、コマンド翻訳モジュール１３０及びインスタンスＩＤジェネレータ１３５を含む。エラールックアップテーブル１４０は、図１に示されるように、第１エラールックアップテーブル１４５及び第２エラールックアップテーブル１５０を含む。
【００１６】
動作時に、ＳＣＳＩ−ＡＴＡブリッジ１１５のコマンド処理モジュール１２５は、ＳＣＳＩイニシエータ１０５Ａから、ＡＴＡドライブ１１０に送信するためのＳＣＳＩコマンドを受信する。受信されたＳＣＳＩコマンドは、ＳＣＳＩ−ＡＴＡブリッジ１１５内のコマンド翻訳モジュール１３０によってＡＴＡコマンドに翻訳される。そして、ＡＴＡコマンドは、実行するためにＡＴＡドライブ１１０に送信される。ＡＴＡコマンドの実行中に、エラーが生じた場合には、コマンド処理モジュール１２５にＡＴＡエラー応答が送信される。コマンド処理モジュール１２５は、受信されたＡＴＡエラー応答をＳＣＳＩエラー応答に翻訳する。
【００１７】
本発明の一実施形態によれば、コマンド処理モジュール１２５は、エラールックアップテーブル１４０においてＳＣＳＩエラー応答を検索することによって、カスタマイズされたＳＣＳＩエラー応答を入手する。１つの例示的な実施態様では、ＳＣＳＩエラー応答に関連付けられたインスタンス識別子（ＩＤ）が、インスタンスＩＤジェネレータ１３５によって求められる。その後、第１エラールックアップテーブル１４５を用いて、インスタンスＩＤに関連付けられたエラーインデックスが求められる。さらに、第２エラールックアップテーブル１５０を用いて、エラーインデックスに関連付けられたカスタマイズされたＳＣＳＩエラー応答が抽出される。第１エラールックアップテーブル１４５において、関連するエラーインデックスが見つけられない場合には、デフォルトエラーインデックスを用いて、第２エラールックアップテーブル１５０から、カスタマイズされたＳＣＳＩエラー応答を抽出する。
【００１８】
ストレージネットワーク環境１００の起動中にコンフィグレーション（環境設定）データ１６０をロードする間、エラールックアップテーブル１４０がフラッシュメモリ１５５からメモリ１２０の中にロードされることに留意されたい。カスタマイズされたＳＣＳＩエラー応答が入手されると、コマンド処理モジュール１２５は、カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータ１０５Ａに送信する。さらに、ＳＣＳＩイニシエータ１０５Ａは、受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作を実行する。
【００１９】
ＡＴＡドライブ１１０によるＡＴＡコマンドの実行中にエラーが生じない場合には、ＡＴＡコマンドの実行成功を表す通知がコマンド処理モジュール１２５に送信される。コマンド翻訳モジュール１３０は、ＡＴＡコマンドの実行成功を示す通知を翻訳して、実行成功応答がＳＣＳＩイニシエータ１０５Ａに送信される。
【００２０】
本発明の別の実施形態によれば、コマンド処理モジュール１２５によってＳＣＳＩコマンドが受信されるときに、ＳＣＳＩコマンドにエラーがあるか否かが判断される。エラーがあると判断される場合には、エラールックアップテーブル１４０を用いて、カスタマイズされたＳＣＳＩエラー応答が入手され、ＳＣＳＩイニシエータ１０５Ａに送信される。エラーがないと判断される場合には、コマンド翻訳モジュール１３０によって、受信されたＳＣＳＩコマンドが翻訳されて、ＡＴＡコマンドが提供される。
【００２１】
本発明のさらに別の実施形態によれば、コマンド処理モジュール１２５によってＳＣＳＩコマンドが受信された場合、ＳＣＳＩコマンドをＡＴＡコマンドに翻訳できるか否かが判断される。翻訳できると判断される場合には、受信されたＳＣＳＩコマンドが翻訳され、ＡＴＡコマンドが与えられ、ＡＴＡドライブ１１０に送信される。翻訳できないと判断される場合には、受信されたＳＣＳＩコマンドが実行され、実行に失敗した場合には、エラールックアップテーブル１４０を用いて、カスタマイズされたＳＣＳＩエラー応答が入手される。その後、カスタマイズされたＳＣＳＩエラー応答はＳＣＳＩイニシエータ１５０Ａに送信される。
【００２２】
図２は、本発明の一実施形態によるエラールックアップテーブルを示す。詳細には、図２は、第１エラールックアップテーブル２０２及び第２エラールックアップテーブル２０４を用いて、カスタマイズされたＳＣＳＩエラー応答を入手することを示す。１つの例示的な実施態様では、ストレージネットワーク環境において、ＳＣＳＩターゲットからＳＣＳＩエラー応答が受信されたとき、ＳＣＳＩエラー応答に関連付けられるインスタンスＩＤが求められる。求められたインスタンスＩＤを用いて、第１エラールックアップテーブル２０２を検索し、関連するエラーインデックスが求められる。
【００２３】
図２に示されるように、第１エラールックアップテーブル２０２は、インスタンスＩＤ（ＩＮＳＴ  ＩＤ）と、各インスタンスＩＤに関連付けられる変更エラーインデックス（ＥＲＲＯＲ  ＩＤＸ）とを示すテーブルを含む。インスタンスＩＤは、ＳＣＳＩエラー応答がＳＣＳＩイニシエータに送信されたインスタンスを表す。第１エラールックアップテーブル２０２の第１エントリは、通常、特殊エントリと呼ばれ、第１エラールックアップテーブル２０２内に存在するエントリの数を含む。デフォルト設定によれば、特殊エントリは、第１エラールックアップテーブル２０２内の唯一のエントリである。第１エラールックアップテーブル２０２にエントリが追加されるのに応じて、特殊エントリは、第１エラールックアップテーブル２０２内のエントリの全数を指示するように変更される。
【００２４】
その後、第２エラールックアップテーブル２０４において、関連するエラーインデックス(ERROR IDX)が検索され、カスタマイズされたＳＣＳＩエラー応答が抽出される。第１エラールックアップテーブル２０２において、関連するエラーインデックスが見つけられない場合には、デフォルトエラーインデックスを用いて、第２エラールックアップテーブル２０４から、カスタマイズされたＳＣＳＩエラー応答を抽出する。
【００２５】
図２に示されるように、第２エラールックアップテーブル２０４は、センス情報（たとえば、センスキー（ＳＫＹ）、追加センスコード（ＡＳＣ）及び追加センスコード修飾子（ＡＳＱＣ））を含む。第２エラールックアップテーブル２０４内のインデックスはエラーインデックス−「ｅｒｒｏｒＩｄｘ」と呼ばれる。「ｅｒｒｏｒＩｄｘ」はエラーのクラスを指定し、各「ｅｒｒｏｒＩｄｘ」はセンスキー、ＡＳＣ及びＡＳＣＱの固有の組み合わせに関連付けられる。
【００２６】
コンフィグレーションデータ更新方法を用いて、第２エラールックアップテーブル２０４内の所与のクラスのエラー（ｅｒｒｏｒｌｄｘ）のためのセンスキー、ＡＳＣ及びＡＳＣＱを置き換えることができる。第２エラールックアップテーブル２０４は、デフォルトに対して、又は所与のインスタンスＩＤの場合に置き換えられたｅｒｒｏｒｌｄｘに対して検索され、対応するセンスキー、ＡＳＣ及びＡＳＣＱが、検査条件応答とともにＳＣＳＩイニシエータに送出される。ＳＣＳＩイニシエータによって受信されカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作が実行される。
【００２７】
コンフィグレーションデータ更新方法を用いて、インスタンスＩＤが非デフォルトｅｒｒｏｒｌｄｘに関連付けられるように、第１エラールックアップテーブル２０２にエントリが追加される。このように、そのエラーの対応するインスタンスのためのＳＣＳＩエラー応答として、対応するセンスキー、ＡＳＣ、ＡＳＣＱ（それらはデフォルトではない）が送出される。
【００２８】
図３は、本発明の一実施形態による、ストレージネットワーク環境においてＳＣＳＩターゲットから受信されるＳＣＳＩエラー応答をカスタマイズするための方法３００のフロー図である。ＳＣＳＩターゲットは、ＳＣＳＩ−ＡＴＡブリッジ、ＳＣＳＩドライブ、ＳＡＴモジュールを有するＳＣＳＩホストバスアダプタ（ＨＢＡ）、ＳＣＳＩエンクロージャ等を含む場合がある。ステップ３０２において、ストレージネットワーク環境の起動時に、フラッシュメモリからＳＣＳＩターゲットのメモリにエラールックアップテーブルをロードする。ステップ３０４において、ストレージネットワーク環境内のＳＣＳＩイニシエータから、ＳＣＳＩコマンドが受信されたか否かを調べる。ＳＣＳＩコマンドが受信されたと判断される場合には、方法３００はステップ３０６に移行し、そうでない場合には、方法３００は再度ステップ３０４を実行する。ステップ３０６において、受信されたＳＣＳＩコマンドを、ＡＴＡコマンドに翻訳する。
【００２９】
ステップ３０８において、ＡＴＡコマンドをＡＴＡドライブに送信する。ステップ３１０において、ＡＴＡドライブによって、ＡＴＡコマンドを実行する。ステップ３１２において、ＡＴＡドライブによってＡＴＡコマンドを実行するのに成功したか否かを判断する。ＡＴＡコマンドを実行するのに成功したと判断される場合には、ステップ３１４が実行され、そうでない場合には、ステップ３１６が実行される。ステップ３１４において、実行成功応答を、ＳＣＳＩイニシエータに送信する。たとえば、ＡＴＡドライブは、ＡＴＡコマンドの実行成功を示す通知をＳＣＳＩターゲットに送信する。その後、実行成功の通知は、ＳＣＳＩイニシエータに送信するための実行成功応答に翻訳される。
【００３０】
ステップ３１６において、ＡＴＡドライブによって、ＳＣＳＩターゲットにＡＴＡエラー応答を送信する。ステップ３１８において、ＳＣＳＩターゲットによって、ＡＴＡエラー応答をＳＣＳＩエラー応答に翻訳する。ステップ３２０において、ＳＣＳＩエラー応答に関連付けられたインスタンスＩＤを求める。ステップ３２２において、第１エラールックアップテーブルを用いて、インスタンスＩＤに関連付けられたエラーインデックスを求める。ステップ３２４において、第２エラールックアップテーブルを用いて、求められたエラーインデックスに関連付けられたカスタマイズされたＳＣＳＩエラー応答を抽出する。
【００３１】
ステップ３２２において、第１エラールックアップテーブルにおいて関連するエラーインデックスが見つけられない場合には、デフォルトエラーインデックスを用いて、第２エラールックアップテーブルからカスタマイズされたＳＣＳＩエラー応答を抽出する。ステップ３２６において、カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータに送信する。受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、ＳＣＳＩイニシエータは、エラー回復動作を実行する。
【００３２】
一実施形態では、ステップ３０６において、受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳中に、ＳＣＳＩターゲットによって、受信されたＳＣＳＩコマンドにエラーがあるか否かが判断される。エラーがあると判断される場合には、ＳＣＳＩターゲットによって、第１エラールックアップテーブル及び第２エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答を入手する。さらに、カスタマイズされたＳＣＳＩエラー応答はＳＣＳＩイニシエータに送信される。エラーがないと判断された場合には、ＳＣＳＩターゲットによって、受信されたＳＣＳＩコマンドが翻訳されて、ＡＴＡコマンドが提供される。
【００３３】
本発明の別の実施形態では、ステップ３０６において、受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳中に、ＳＣＳＩターゲットによって、受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳できるか否かが判断される。翻訳できると判断される場合には、ＳＣＳＩターゲットによって、受信されたＳＣＳＩコマンドが翻訳され、ＡＴＡコマンドが提供される。その後、ＳＣＳＩターゲットによって、ＡＴＡコマンドがＡＴＡドライブに送信される。受信されたＳＣＳＩコマンドをＡＴＡコマンドに翻訳できないと判断される場合には、受信されたＳＣＳＩコマンドが実行される。実行に失敗する場合には、ＳＣＳＩターゲットによって、第１エラールックアップテーブル及び第２エラールックアップテーブルを用いて、カスタマイズされたＳＣＳＩエラー応答が入手される。その後、ＳＣＳＩターゲットによって、カスタマイズされたＳＣＳＩエラー応答がＳＣＳＩイニシエータに送信される。
【００３４】
図４は、別の実施形態による、ストレージネットワーク環境４００のブロック図を示す。詳細には、図４のシステムは、ストレージネットワーク環境４００においてＳＣＳＩエラー応答をカスタマイズするためのシステムである。該システムは、ＳＣＳＩイニシエータ１０５Ａ〜Ｎと、ＡＴＡドライブ１１０Ａ〜Ｎと、ＨＢＡコントローラ４０５とを含む。ＨＢＡコントローラ４０５は、ＳＣＳＩイニシエータ１０５Ａ〜ＮとＡＴＡドライブ１１０Ａ〜Ｎとの間に接続され、メモリ１２０と、フラッシュメモリ１５５と、プロセッサ１６５とを含む。ＨＢＡコントローラ４０５は、２つ以上のＡＴＡドライブがＨＢＡコントローラ４０５に接続されるのを容易にする。また、ＨＢＡコントローラ４０５は、図４に示されるように、ＲＡＩＤエンジン及び他のＳＣＳＩモジュール４１０も含む。
【００３５】
メモリ１２０は、ＳＣＳＩ−ＡＴＡブリッジ１１５に動作可能に接続され、ＳＡＴモジュール４１５を含む。ＳＡＴモジュール４１５は、ＳＣＳＩコマンドをＡＴＡコマンドに翻訳することをイネーブルし、コマンド処理モジュール１２５及びエラールックアップテーブル１４０を含む。コマンド処理モジュール１２５は、コマンド翻訳モジュール１３０及びインスタンスＩＤジェネレータ１３５を含む。エラールックアップテーブル１４０は、図４に示されるように、第１エラールックアップテーブル１４５及び第２エラールックアップテーブル１５０を含む。
図４に示されるシステムの動作方法は、図１において説明されたシステムの動作に類似している。
【００３６】
図５は、本発明の別の実施形態による、ストレージネットワーク環境５００のブロック図を示す。詳細には、図５のシステムは、ストレージネットワーク環境５００においてＳＣＳＩエラー応答をカスタマイズするためのシステムである。図５に示されるように、該システムは、ＳＣＳＩドライブ５０５に接続されたＳＣＳＩイニシエータ１０５Ａ〜Ｎを含む。ＳＣＳＩドライブ５０５は、メモリ１２０と、フラッシュメモリ１５５と、プロセッサ１６５とを含む。メモリ１２０は、ＳＣＳＩドライブ５０５に動作可能に接続され、コマンド処理モジュール１２５及びエラールックアップテーブル１４０を含む。コマンド処理モジュール１２５は、インスタンスＩＤジェネレータ１３５を含む。エラールックアップテーブル１４０は、図５に示されるように、第１エラールックアップテーブル１４５及び第２エラールックアップテーブル１５０を含む。
【００３７】
動作時に、コマンド処理モジュール１２５は、ＳＣＳＩドライブ５０５によって実行するためのＳＣＳＩコマンドを、ＳＣＳＩイニシエータ１０５Ａから受信する。ＳＣＳＩコマンドの実行中に、エラーが生じる場合には、ＳＣＳＩドライブ５０５によって、ＳＣＳＩエラー応答が生成される。
【００３８】
本発明の一実施形態によれば、コマンド処理モジュール１２５は、エラールックアップテーブル１４０においてＳＣＳＩエラー応答を検索することによって、カスタマイズされたＳＣＳＩエラー応答を入手する。１つの例示的な実施態様では、インスタンスＩＤジェネレータ１３５によって、ＳＣＳＩエラー応答に関連付けられるインスタンスＩＤが求められる。その後、第１エラールックアップテーブル１４５を用いて、インスタンスＩＤに関連付けられるエラーインデックスが求められる。さらに、第２エラールックアップテーブル１５０を用いて、エラーインデックスに関連付けられるカスタマイズされたＳＣＳＩエラー応答が抽出される。第１エラールックアップテーブル１４５において、関連するエラーインデックスが見つけられない場合には、デフォルトエラーインデックスを用いて、第２エラールックアップテーブル１５０からカスタマイズされたＳＣＳＩエラー応答を抽出する。
【００３９】
ストレージネットワーク環境５００の起動中にコンフィグレーションデータ１６０をロードする間に、エラールックアップテーブル１４０がフラッシュメモリ１５５からメモリ１２０の中にロードされる。カスタマイズされたＳＣＳＩエラー応答が入手されると、コマンド処理モジュール１２５は、カスタマイズされたＳＣＳＩエラー応答をＳＣＳＩイニシエータ１０５Ａに送信する。さらに、ＳＣＳＩイニシエータ１０５Ａは、受信されたカスタマイズされたＳＣＳＩエラー応答に基づいて、エラー回復動作を実行する。ＳＣＳＩドライブ５０５によるＳＣＳＩコマンドの実行中にエラーが生じない場合には、実行成功応答がＳＣＳＩイニシエータ１０５Ａに送信される。
【００４０】
図６は、本発明の別の実施形態による、ストレージネットワーク環境６００のブロック図を示す。詳細には、図６のシステムは、ストレージネットワーク６００においてＳＣＳＩエラー応答をカスタマイズするためのシステムである。図６に示されるように、該システムは、ＳＣＳＩエンクロージャ６０５に接続されるＳＣＳＩイニシエータ１０５Ａ〜Ｎを含む。ＳＣＳＩエンクロージャ６０５は、メモリ１２０と、フラッシュメモリ１５５と、プロセッサ１６５とを含む。メモリ１２０は、ＳＣＳＩエンクロージャ６０５に動作可能に接続され、コマンド処理モジュール１２５及びエラールックアップテーブル１４０を含む。コマンド処理モジュール１２５は、インスタンスＩＤジェネレータ１３５を含む。エラールックアップテーブル１４０は、図６に示されるように、第１エラールックアップテーブル１４５及び第２エラールックアップテーブル１５０を含む。
【００４１】
図６に示されるシステムの動作方法は、図５に示されるシステムの動作に類似している。さらに、一実施形態では、非一時的なコンピュータ可読記憶媒体が、コンピュータデバイスによって実行されるときに、コンピュータデバイスに図１〜図６において示される１又は複数の方法を実行させることができる命令（インストラクション）を記憶している。
【００４２】
種々の実施形態において、図１〜図６に示される方法及びシステムは、エラールックアップテーブルを用いて、ＡＴＡドライブ及びＳＣＳＩターゲットによって生成されるエラー応答をカスタマイズし、ストレージネットワーク環境において、ＳＣＳＩイニシエータが任意の種類のエラーを解釈し、必要とされる動作を実行することができるようにする。ストレージネットワーク環境において、任意の世代のＳＣＳＩイニシエータ及びＳＣＳＩターゲットを一緒に使用することができる。上記の方法及びシステムは、ＳＣＳＩイニシエータに、ＳＣＳＩターゲットが任意の種類のエラーに応答することができる良好なテスティングフレームワークを提供する。
【００４３】
具体的な実施形態例を参照しながら本発明を説明したが、種々の実施形態の広範な精神及び範囲から逸脱することなく、これらの実施形態に対する種々の変更及び変形を行なうことができることは明らかであろう。さらに、本明細書において記述される種々のデバイス、モジュール等は、ハードウエア回路、たとえば、相補形金属酸化膜半導体に基づく論理回路、ファームウエア、ソフトウエアを用いて、且つ／又はハードウエア、ファームウエア及び／又は機械可読媒体において具現されるソフトウエアの任意の組み合わせを用いて、使用可能し、動作させることができる。たとえば、トランジスタ、論理ゲート、及び特定用途向け集積回路のような電気回路を用いて、種々の電気的構造及び方法を具現することもできる。
【図１】
2011233127.tif 000003
【図２】
2011233127.tif 000004
【図３】
2011233127.tif 000005
【図４】
2011233127.tif 000006
【図５】
2011233127.tif 000007
【図６】
2011233127.tif 000008
【外国語明細書】
2011233127000001.pdf