(57)【要約】【課題】上位の装置からリンクダウンした記憶装置にリンクダウン前と同様にアクセスする。【解決手段】ストレージ装置内で制御装置と記憶装置との間に配置される中継装置は、第１接続部と、第２接続部と、検出部と、転送部とを備える。第１接続部は、記憶装置と接続される。検出部は、第１接続部のリンクダウンを検出する。転送部は、検出部が第１接続部のリンクダウンを検出したとき、第１接続部に接続されていた記憶装置のアドレスと、第２接続部に記憶装置が接続され、第２接続部がリンクアップしたとき、第２接続部に接続された記憶装置のアドレスとの一致を判定する。転送部は、第１接続部に接続されていた記憶装置のアドレスと、第２接続部に接続された記憶装置のアドレスとが一致する場合、制御装置から第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、第２接続部を介してデータを転送する。【選択図】図２
2015162037.tif 000002
【特許請求の範囲】
【請求項１】
ストレージ装置内で制御装置と記憶装置との間に配置される中継装置であって、
記憶装置と接続される第１接続部と、
第２接続部と、
前記第１接続部のリンクダウンを検出する検出部と、
前記検出部が前記第１接続部のリンクダウンを検出したとき、前記第１接続部に接続されていた記憶装置のアドレスと、前記第２接続部に記憶装置が接続され、前記第２接続部がリンクアップしたとき、前記第２接続部に接続された記憶装置のアドレスと、が一致する場合、前記制御装置から前記第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、前記第２接続部を介してデータを転送する転送部と、
を備えることを特徴とする中継装置。
【請求項２】
前記中継装置は、さらに、
前記第１接続部を識別する第１識別子と、前記記憶装置のアドレスとを関連付けた情報を記憶する第１記憶部と、
第２記憶部と、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されている場合、前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた前記第１識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書き込む書込部と、
前記書込部が前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書き込んだとき、前記リンクダウンした第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部から削除する削除部と、
を備え、
前記転送部は、
前記制御装置から第１識別子が付与されたアクセス要求が与えられたとき、前記第１記憶部を参照し、前記第１識別子に対応する接続部を介してデータを転送する
ことを特徴とする請求項１に記載の中継装置。
【請求項３】
前記書込部は、さらに、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部がリンクダウンした順番を示すリンクダウン順とを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されていない場合、前記第２記憶部に記憶されているリンクダウン順で指定される順番と関連付けられた第１識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書き込み、
前記削除部は、
前記書込部が前記第２記憶部に記憶されているリンクダウン順で指定される順番と関連付けられた第１識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書き込んだとき、前記リンクダウンした第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部から削除する
ことを特徴とする請求項２に記載の中継装置。
【請求項４】
前記書込部は、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部を識別する第２識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書込み、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されているとき、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記第２記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第１識別子に書き換える
ことを特徴とする請求項２または３に記載の中継装置。
【請求項５】
前記書込部は、さらに、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部がリンクダウンした順番を示すリンクダウン順とを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されていない場合、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記第２記憶部に記憶したリンクダウン順で指定される順番と関連付けられた第１識別子に書き換える
ことを特徴とする請求項４に記載の中継装置。
【請求項６】
前記書込部は、さらに、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置の特徴を示す特徴情報とを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されていない場合、前記第２記憶部に記憶されている特徴情報の中から前記第２接続部に接続された記憶装置の特徴情報に少なくとも一部が一致する特徴情報を抽出し、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記抽出された特徴情報に関連付けられた第１識別子に書き換える
ことを特徴とする請求項４に記載の中継装置。
【請求項７】
記憶装置を配置するボードと、制御装置と前記ボードとの間に設置される中継装置とを備えるストレージ装置であって、
前記ボードは、
前記中継装置が備える第１ポートが接続された第１コネクタと、第２コネクタとを点対称の位置に配置した複数のスロット
を備え、
前記中継装置は、
前記第１コネクタと接続された第１ポートと、
第２ポートと、
前記第１コネクタに接続された第１ポートのリンクダウンを検出する検出部と、
前記検出部が前記第１ポートのリンクダウンを検出したとき、前記リンクダウンした第１ポートに接続されていた記憶装置のアドレスと、前記第２コネクタに記憶装置が接続され、かつ前記記憶装置が前記第２ポートと接続され、前記第２ポートがリンクアップしたとき、前記第２ポートに接続された記憶装置のアドレスと、が一致する場合、前記制御装置から前記第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、前記第２接続部を介してデータを転送する転送部と、
を備える
ことを特徴とするストレージ装置 。
【請求項８】
ストレージ装置内で制御装置と記憶装置との間に配置される中継装置の制御をするコンピュータに実行させる中継プログラムであって、
前記中継装置が備える前記記憶装置と接続された第１接続部のリンクダウンを検出し、
前記検出部が前記第１接続部のリンクダウンを検出したとき、前記リンクダウンした第１接続部に接続されていた記憶装置のアドレスと、前記中継装置が備える第２接続部に記憶装置が接続され、前記第２接続部がリンクアップしたとき、前記第２接続部に接続された記憶装置のアドレスと、が一致する場合、前記制御装置から前記第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、前記第２接続部を介してデータを転送する
処理をコンピュータに実行させる中継プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータを中継する技術に関する。
【背景技術】
【０００２】
ストレージ装置において、複数の記憶装置を搭載する場合、制御装置から送信されたデータを各記憶装置に転送する中継装置が用いられている。記憶装置は、例えば、ＳＡＳ（Ｓｅｒｉａｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ）に対応したＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などのドライブである。制御装置は、例えば、ＣＭ（Ｃｏｎｔｒｏｌ  Ｍｏｄｕｌｅ）などである。中継装置は、例えば、エクスパンダなどである。
【０００３】
ホストコンピュータは、記憶装置にアクセスするとき、ＬＵＮ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）番号を付与したアクセス要求を制御装置に送信する。ホストコンピュータとは、例えば、サーバ等の情報処理装置である。アクセス要求とは、例えば、データの書込み、およびデータの読み出しなどの要求である。そして、ホストコンピュータは、記憶装置にアクセス要求を送信することにより、記憶装置へのデータの書込み、および記憶装置からのデータの読み出しを実行する。以下の説明では、ホストコンピュータのことを、単にホストとも言う。
【０００４】
制御装置は、例えば、メモリを備える。また、メモリには、例えば、中継装置が備える接続部を識別する識別子と、ＬＵＮ番号とを関連付けて格納した管理テーブルが記憶される。接続部は、例えば、ＰＨＹ（Ｐｈｙｓｉｃ  Ｌａｙｅｒ）などである。ＰＨＹは、ＳＡＳ規格の物理ポートである。識別子は、例えば、ＰＨＹ番号である。ＰＨＹ番号は、ＰＨＹのポート番号である。
【０００５】
制御装置は、ホストからＬＵＮ番号が付与されたアクセス要求を受信すると、管理テーブルを検索し、ＬＵＮ番号に関連付けられた第１識別子を抽出する。そして、制御装置は、抽出した第１識別子を付与したアクセス要求を中継装置に送信する。
【０００６】
中継装置は、制御装置から第１識別子が付与されたアクセス要求を受信すると、第１識別子で識別される第１接続部を介して記憶装置にアクセス要求を転送する。
【０００７】
以上により、ホストは、記憶装置にアクセスし、記憶装置へのデータの書込み、および記憶装置からのデータの読み出しを実行する。
【０００８】
関連する他の技術として、ＳＡＳエクスパンダは、ＳＡＳ  ＰＨＹに結合された対応するＳＡＳリンク上でＳＡＳデバイスとの信号の送受信を行うために、ＳＡＳ  ＰＨＹを含む。ＳＡＳエクスパンダは、ＳＡＳリンク上の通信に関する障害検出パラメータを提供する状態レジスタを含む。マイクロプロセッサは、ＳＡＳエクスパンダのマイクロプロセッサは障害検出パラメータに基づいて、ＳＡＳリンクのうちの１つで障害のある通信を識別する技術が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１１−１７５４２１号公報
【特許文献２】特開２００６−５９２０１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
前述した中継技術の中継装置は、第１接続部と記憶装置とがリンクダウンしたとき、リンクダウンした記憶装置を中継装置の余剰の接続部である第２接続部に接続し、第２接続部をリンクアップする。このとき、ホストや制御装置などの上位の装置は、記憶装置が接続されている接続部を識別する識別子に基づいて記憶装置を識別しているので、リンクダウンした記憶装置にリンクダウン前と同様にアクセスすることができないという問題がある。
【００１１】
本発明は、一側面として、上位の装置からリンクダウンした記憶装置にリンクダウン前と同様にアクセスする技術を提供する。
【課題を解決するための手段】
【００１２】
本明細書で開示するストレージ装置内で制御装置と記憶装置との間に配置される中継装置のひとつに、第１接続部と、第２接続部と、検出部と、転送部とを備える中継装置がある。第１接続部は、記憶装置と接続される。検出部は、第１接続部のリンクダウンを検出する。転送部は、検出部が第１接続部のリンクダウンを検出したとき、第１接続部に接続されていた記憶装置のアドレスと、第２接続部に記憶装置が接続され、第２接続部がリンクアップしたとき、第２接続部に接続された記憶装置のアドレスとの一致を判定する。転送部は、第１接続部に接続されていた記憶装置のアドレスと、第２接続部に接続された記憶装置のアドレスとが一致する場合、制御装置から第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、第２接続部を介してデータを転送する。
【発明の効果】
【００１３】
１実施態様によれば、上位の装置からリンクダウンした記憶装置にリンクダウン前と同様にアクセスすることができる。
【図面の簡単な説明】
【００１４】
【図１】ストレージシステムの一実施例を示すブロック図である。
【図２】中継装置の一実施例を示す機能ブロック図である。
【図３】ベースボードの一実施例を示すブロック図である。
【図４】記憶装置の実装を説明する図（その１）である。
【図５】記憶装置の実装を説明する図（その２）である。
【図６】記憶装置と第２接続部との接続の一例を示す図である。
【図７】ストレージ装置が起動したときの第１テーブルの一例を示す図である。
【図８】ストレージ装置が起動したときの第２テーブルの一例を示す図である。
【図９】第１接続部がリンクダウンしたときの第１テーブルの一例を示す図である。
【図１０】第１接続部がリンクダウンしたときの第２テーブルの一例を示す図である。
【図１１】中継装置と記憶装置との接続を示す図（その１）である。
【図１２】ストレージ装置が起動したときの第１テーブルおよび第２テーブルの一例を示す図である。
【図１３】中継装置と記憶装置との接続を示す図（その２）である。
【図１４】第１接続部がリンクダウンしたときの第１テーブルおよび第２テーブルの一例を示す図である。
【図１５】中継装置と記憶装置との接続を示す図（その３）である。
【図１６】第２接続部がリンクアップしたときの第１テーブルの一例を示す図である。
【図１７】第２接続部がリンクアップしたときの第１テーブルおよび第２テーブルの一例を示す図である。
【図１８】中継装置と記憶装置との接続を示す図（その４）である。
【図１９】中継装置と記憶装置との接続を示す図（その５）である。
【図２０】第１接続部がリンクダウンしたときの第１テーブルおよび第２テーブルの一例を示す図である。
【図２１】中継装置と記憶装置との接続を示す図（その６）である。
【図２２】第２接続部がリンクアップしたときの第１テーブルの一例を示す図である。
【図２３】第２接続部がリンクアップしたときの第１テーブルおよび第２テーブルの一例を示す図である。
【図２４】中継装置と記憶装置との接続を示す図（その７）である。
【図２５】第２接続部がリンクアップしたときの第１テーブルの一例を示す図である。
【図２６】第２接続部がリンクアップしたときの第１テーブルおよび第２テーブルの一例を示す図である。
【図２７】ストレージ装置が起動したときの第２テーブルの一例を示す図である。
【図２８】中継装置と記憶装置との接続を示す図（その８）である。
【図２９】第２接続部がリンクアップしたときの第１テーブルおよび第２テーブルの一例を示す図である。
【図３０】第２接続部がリンクアップしたときの第１テーブルおよび第２テーブルの一例を示す図である。
【図３１】中継装置と記憶装置との接続を示す図（その９）である。
【図３２】第２接続部がリンクアップしたときの第１テーブルの一例を示す図である。
【図３３】第２接続部がリンクアップしたときの第１テーブルおよび第２テーブルの一例を示す図である。
【図３４】第１接続部がリンクダウンしたときの第２テーブルの一例を示す図である。
【図３５】第１接続部がリンクダウンしたときの第２テーブルの一例を示す図である。
【図３６】第２接続部がリンクアップしたときの第１テーブルの一例を示す図である。
【図３７】第２接続部がリンクアップしたときの第１テーブルの一例を示す図である。
【図３８】第２接続部がリンクアップしたときの第２テーブルの一例を示す図である。
【図３９】中継装置の処理を示すフローチャート（その１）である。
【図４０】中継装置の処理を示すフローチャート（その２）である。
【図４１】中継装置の処理を示すフローチャート（その３）である。
【図４２】中継装置の処理を示すフローチャート（その４）である。
【図４３】中継装置の処理を示すフローチャート（その５）である。
【図４４】エクスパンダの一実施例を示すブロック図である。
【発明を実施するための形態】
【００１５】
［実施形態］
実施形態の中継装置について説明する。
【００１６】
図１は、ストレージシステムの一実施例を示すブロック図である。
図１を参照して、実施形態の中継装置が搭載されるストレージシステムについて説明する。
【００１７】
ストレージシステム１は、例えば、ホスト１００と、ストレージ装置２００とを備える。ホスト１００とストレージ装置２００とは、例えば、ネットワークで接続される。
【００１８】
ストレージ装置２００は、ＣＥ（Ｃｏｎｔｒｏｌｌｅｒ  Ｅｎｃｌｏｓｕｒｅ）３００と、ＤＥ（Ｄｒｉｖｅ  Ｅｎｃｌｏｓｕｒｅ）４００とを備える。ＣＥ３００とＤＥ４００とは、例えば、通信ケーブルで接続される。通信ケーブルとは、例えば、ＳＡＳケーブルである。ＣＥ３００は、例えば、制御装置３１０と、制御装置３２０とを備える。ＤＥ４００は、中継装置４１０と、中継装置４２０と、記憶装置４３１〜４３ｎとを備える。
【００１９】
以下の説明では、制御装置３１０と、制御装置３２０とは、同じ構成であるため、制御装置３１０の説明をして制御装置３２０の説明を省略する。また、中継装置４１０と、中継装置４２０とは、同じ構成であるため、中継装置４１０の説明をして中継装置４２０の説明を省略する。そして、制御装置３１０と制御装置３２０とを、特に区別しないときには、制御装置３３０と言う。中継装置４１０と中継装置４２０とを、特に区別しないときには、中継装置２と言う。記憶装置４３１〜４３ｎを特に区別しないときには、記憶装置４と言う。ホスト１００とＣＥ３００とをまとめてあらわすときには、上位の装置とも言う。
【００２０】
ホスト１００は、例えば、ホスト１００側で各記憶装置４を識別するときに用いられる識別番号であるＬＵＮ番号を記憶している。記憶装置４にアクセスするとき、ユーザからのＬＵＮ番号の入力を受け付ける。そして、ホスト１００は、入力されたＬＵＮ番号を付与したアクセス要求を制御装置３１０に送信する。ＬＵＮ番号は、例えば、記憶装置４に接続された中継装置４１０の接続部（物理ポート）の識別子（ポート番号）に基づいて生成される。また、ホスト１００は、例えば、制御装置３１０を介して実行される記憶装置４との通信に障害が生じたとき、ユーザから入力されたＬＵＮ番号を付与したアクセス要求を、制御装置３２０に送信しても良い。なお、中継装置４１０と中継装置４２０とは、それぞれ同じ識別子で識別される接続部を有するものとする。したがって、ユーザは、所定のＬＵＮ番号を入力することにより、中継装置４１０と中継装置４２０とのどちらを介して通信をしているのかを意識せずに、所定の記憶装置４にアクセスすることができる。
【００２１】
制御装置３１０は、制御回路３１１と、メモリ３１２と、ホストＩＦ３１３と、記憶ＩＦ３１４とを備える。制御装置３１０は、例えば、ＣＭ（Ｃｏｎｔｒｏｌ  Ｍｏｄｕｌｅ）である。
【００２２】
制御回路３１１は、制御装置３１０全体の制御をする。そして、制御回路３１１は、例えば、ＣＰＵ、マルチコアＣＰＵ、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）およびＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）などである。
【００２３】
メモリ３１２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、およびＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの半導体メモリである。ＲＯＭは、例えば、ファームウェアを記憶する。そして、ＲＡＭは、例えば、制御回路３１１のワークエリアとして使用される。また、ＳＲＡＭは、例えば、送受信するデータを一時的に記憶するキャッシュとして使用される。
【００２４】
ホストＩＦ３１３は、例えば、ネットワークを介してホスト１００との通信をするためのインターフェイスである。
【００２５】
記憶ＩＦ３１４は、例えば、通信ケーブルを介してＤＥ４００との通信をするためのインターフェイスである。
【００２６】
制御装置３１０は、例えば、ストレージ装置２００の起動時に、中継装置４１０から中継装置４１０に接続された各記憶装置４のアドレスと、各記憶装置４が接続された接続部を識別する識別子とを取得して、関連付けて管理テーブルに格納する。管理テーブルは、例えば、メモリ３１２に記憶される。
【００２７】
そして、制御装置３１０は、例えば、ホスト１００からの要求に応じて、管理テーブルに格納した識別子を用いてＬＵＮ番号を生成し、生成したＬＵＮ番号をホスト１００に通知する。また、制御回路３１１は、例えば、生成したＬＵＮ番号を識別子と関連付けて管理テーブルに格納する。
【００２８】
制御回路３１１は、ホスト１００からＬＵＮ番号が付与されたアクセス要求が与えられたとき、管理テーブルを検索し、管理テーブルにＬＵＮ番号に対応する識別子がある場合、対応する識別子を付与したアクセス要求を中継装置４１０に送信する。そして、中継装置４１０は、制御回路３１１から、識別子が付与されたアクセス要求が与えられたとき、与えられた識別子に対応する接続部にアクセス要求を転送する。以上により、ストレージシステム１では、ホスト１００から記憶装置４にアクセス要求を通知する。
【００２９】
中継装置４１０は、例えば、後述するエクスパンダである。そして、中継装置４１０は、複数の記憶装置４と接続され、制御装置３１０と各記憶装置４との間の通信を中継する。
【００３０】
図２は、中継装置の一実施例を示す機能ブロック図である。
図２を参照して、中継装置２について説明する。
【００３１】
中継装置２は、例えば、制御部１０と、第１記憶部２０と、第２記憶部３０と、送受信部４０とを備える。中継装置２は、例えば、後述するエクスパンダである。
【００３２】
制御部１０は、検出部１１と、書込部１２と、削除部１３と、転送部１４と、出力部１５とを含む。第１記憶部２０は、第１テーブル２１を記憶する。第２記憶部３０は、第２テーブル３１を記憶する。また、送受信部４０は、第１接続部４１〜４ｎと、第２接続部５１、５２とを含む。以下の説明において、第１接続部４１〜４ｎを特に区別しないときには、第１接続部４ｍと言う。また、第２接続部５１、５２を特に区別しないときには、第２接続部５ｍと言う。
【００３３】
検出部１１は、第１接続部４ｍのリンクダウンを検出する。リンクダウンとは、例えば、接続部と接続部に接続された記憶装置４とが通信できない状態のことを言う。また、リンクアップとは、例えば、接続部と接続部に接続された記憶装置４とが通信できる状態のことを言う。以下の説明では、接続部と記憶装置４とがリンクダウンすることを、単に、接続部がリンクダウンする、または記憶装置４がリンクダウンするとも言う。さらに、接続部と記憶装置４とがリンクアップすることを、単に、接続部がリンクアップする、または記憶装置４がリンクアップするとも言う。
【００３４】
書込部１２は、リンクダウンした第１接続部４ｍを識別する第１識別子と、リンクダウンした記憶装置４のアドレスとを関連付けて第２テーブルに書き込む。また、書込部１２は、第２接続部５ｍがリンクアップしたとき、リンクアップした記憶装置４のアドレスが第２テーブル３１に格納されているか否かを判定する。そして、書込部１２は、リンクアップした記憶装置４のアドレスが第２テーブルに格納されているとき、そのアドレスに関連付けられた第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む。
【００３５】
上述した、第２テーブル３１においてリンクアップした記憶装置４のアドレスに関連付けられた第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む処理について、さらに詳細に述べる。
【００３６】
書込部１２は、リンクダウンした第１接続部４ｍを識別する第１識別子と、リンクダウンした記憶装置４のアドレスとを関連付けて第２テーブル３１に書き込む。さらに、書込部１２は、第２接続部５ｍがリンクアップしたとき、リンクアップした第２接続部５ｍを識別する第２識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書込む。また、書込部１２は、リンクアップした記憶装置４のアドレスが第２テーブル３１に格納されているか否かを判定する。書込部１２は、リンクアップした記憶装置４のアドレスが第２テーブル３１に格納されているとき、第１テーブル２１から、リンクアップした記憶装置４のアドレスに関連付けられた第２識別子を抽出する。そして、書込部１２は、抽出した第１テーブル２１に格納された第２識別子を、第２テーブル３１に格納されたリンクアップした記憶装置４のアドレスに関連付けられた第１識別子に書き換える。
【００３７】
以上により、書込部１２は、第２テーブル３１においてリンクアップした記憶装置４のアドレスに関連付けられた第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む。これにより、第１テーブル２１には、リンクダウン前と同じ第１識別子が、同じ記憶装置４に関連付けられて格納される。したがって、上位の装置は、リンクダウンした記憶装置にリンクダウン前と同様にアクセスすることができる。
【００３８】
書込部１２は、さらに、リンクダウンした第１接続部４ｍを識別する第１識別子と、リンクダウンした第１接続部４ｍがリンクダウンした順番を示すリンクダウン順とを関連付けて第２テーブル３１に書き込む。そして、書込部１２は、第２接続部５ｍがリンクアップしたとき、リンクアップした記憶装置４のアドレスが第２テーブル３１に格納されているか否かを判定する。書込部１２は、リンクアップした記憶装置４のアドレスが第２テーブルに格納されていないとき、第２テーブル３１に格納されているリンクダウン順で指定される順番と関連付けられた第１識別子を取得する。そして、書込部１２は、取得した第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む。
【００３９】
上述した、リンクダウン順で指定される順番と関連付けられた第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む処理について、さらに詳細に述べる。
【００４０】
書込部１２は、リンクダウンした第１接続部４ｍを識別する第１識別子と、リンクダウンした第１接続部４ｍがリンクダウンした順番を示すリンクダウン順とを関連付けて第２テーブル３１に書き込む。そして、書込部１２は、第２接続部５ｍがリンクアップしたとき、リンクアップした記憶装置４のアドレスが第２テーブル３１に格納されているか否かを判定する。書込部１２は、リンクアップした記憶装置４のアドレスが第２テーブルに格納されていないとき、第１テーブル２１からリンクアップした記憶装置４のアドレスに関連付けられた第２識別子を抽出する。そして、書込部１２は、抽出した第１テーブルに格納された第２識別子を、第２テーブルにおいてリンクダウン順で指定される順番と関連付けられた第１識別子に書き換える。リンクダウン順で指定される順番とは、例えば、リンクダウン順の中で最後にリンクダウンしたことを示す順番でも良い。また、リンクダウン順で指定される順番とは、例えば、リンクダウン順の中で最初にリンクダウンしたことを示す順番でも良い。
【００４１】
以上により、書込部１２は、リンクダウン順で指定される順番と関連付けられた第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む。これにより、ユーザがリンクダウン順にしたがって、故障した記憶装置４と同等の特徴を持つ他の記憶装置４を第２接続部５ｍに接続すると、故障した記憶装置４の第１識別子が接続した他の記憶装置４に関連付けられる。したがって、上位の装置は、リンクダウン前と同様にストレージ装置２００を運用することができる。
【００４２】
書込部１２は、さらに、リンクダウンした第１接続部４ｍを識別する第１識別子と、リンクダウンした第１接続部４ｍに接続された記憶装置４の特徴を示す特徴情報とを関連付けて第２テーブル３１に書き込む。また、書込部１２は、第２接続部５ｍがリンクアップしたとき、リンクアップした記憶装置４のアドレスが第２テーブル３１に記憶されているか否かを判定する。書込部１２は、リンクアップした記憶装置４のアドレスが第２テーブル３１に記憶されていないとき、第２テーブル３１に記憶されている特徴情報の中から第２接続部５ｍに接続された記憶装置４の特徴情報に少なくとも一部が一致する特徴情報を抽出する。そして、書込部１２は、第１テーブル２１に格納したリンクアップした記憶装置４のアドレスに関連付けられた第２識別子を、抽出された特徴情報に関連付けられた第１識別子に書き換える。特徴情報とは、例えば、記憶装置４の型格、容量、回転数などの識別情報や性能情報を含む情報である。なお、特徴とは型格、容量、回転数などのパラメータのことである。
【００４３】
上述した、第１テーブル２１に格納したリンクアップした記憶装置４のアドレスに関連付けられた第２識別子を、抽出された特徴情報に関連付けられた第１識別子に書き換える処理について、さらに詳細に述べる。以下の説明では、特徴情報が複数の特徴を含むものとして説明する。
【００４４】
書込部１２は、記憶装置４が有する複数種類の特徴の中で、記憶装置４の変更によりストレージ装置２００の運用に与える影響が大きい種類の特徴から順番に、第２接続部５ｍに接続された記憶装置４が有する特徴と一致する特徴を特徴情報の中から検索する。そして、書込部１２は、第２テーブル３１に格納された一つの種類の特徴で一致する特徴が一つのとき、第１テーブル２１に格納したリンクアップした記憶装置のアドレスに関連付けられた第２識別子を、一致する特徴に関連付けられた第１識別子に書き換える。
【００４５】
影響が大きい種類の特徴から順番に検索するとは、例えば、特徴情報に型格、容量、および回転数が含まれるとき、記憶装置４の型格と一致する型格を検索し、記憶装置４の容量と一致する容量を検索し、記憶装置４の回転数と一致する回転数を検索する処理である。
【００４６】
記憶装置４の型格は、変更により違う番号になると、種類の違う記憶装置４が接続されたことを示すので、変更によりストレージ装置２００の運用に与える影響が最も大きいと考えられる。また、記憶装置４の容量は、変更により少なくなると、変更前の記憶装置４に記憶されていたデータを記憶できないことがあるので、変更によりストレージ装置２００の運用に与える影響が回転数よりも大きいと考えられる。記憶装置４の回転数は、変更により遅くなると、変更前の記憶装置４に比べて、データの書き込みや読み出しのスループットが低下する。ただし、記憶装置４の回転数は、変更により遅くなっても、変更前の記憶装置４に記憶されていたデータを記憶することはできるので、変更によりストレージ装置２００の運用に与える影響が容量よりも小さいと考えられる。なお、変更によりストレージ装置２００の運用に与える影響の大小関係は、ユーザにより適宜設定されても良い。
【００４７】
以上により、書込部１２は、第１テーブル２１に格納したリンクアップした記憶装置４のアドレスに関連付けられた第２識別子を、抽出された特徴情報に関連付けられた第１識別子に書き換える。これにより、ユーザが故障した記憶装置４と同等の特徴を持つ他の記憶装置４を第２接続部５ｍに接続すると、故障した記憶装置４の第１識別子が接続した他の記憶装置４に関連付けられる。したがって、上位の装置は、リンクダウン前と同様にストレージ装置２００を運用することができる。
【００４８】
削除部１３は、書込部１２がリンクダウンした第１接続部４ｍを識別する第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込むまで待機する。そして、削除部１３は、第１テーブル２１への書込部１２による書き込みが完了すると、リンクダウンした第１接続部４ｍを識別する第１識別子と、リンクダウンした記憶装置４のアドレスとを関連付けたレコードを第１テーブル２１から削除する。
【００４９】
転送部１４は、制御装置３１０から第１識別子が付与されたアクセス要求が与えられたとき、第１テーブル２１を参照し、第１識別子に対応する接続部を介してデータを転送する。
【００５０】
すなわち、転送部１４は、検出部１１が第１接続部４ｍのリンクダウンを検出したとき、リンクダウンした記憶装置４のアドレスと、第２接続部５ｍがリンクアップしたとき、第２接続部５ｍに接続された記憶装置４のアドレスとが一致するか否かを判定する。そして、転送部１４は、一致判定した２つのアドレスが一致するとき、制御装置３１０から第１接続部４ｍを識別する第１識別子が付与されたアクセス要求が与えられた場合、第２接続部５ｍを介してデータを転送する。
【００５１】
出力部１５は、第２テーブル３１に記憶されたリンクダウンした第１接続部４ｍを識別する第１識別子と、リンクダウンした第１接続部４ｍがリンクダウンした順番を示すリンクダウン順とを関連付けた情報を出力する。これにより、ユーザは、リンクダウン順を確認し、リンクダウン順にしたがって、第２接続部５ｍと記憶装置４とをリンクアップすることができる。
【００５２】
第１テーブル２１は、第１接続部４ｍを識別する第１識別子、または第２接続部５ｍを識別する第２識別子と、記憶装置４のアドレスや特徴情報とを関連付けて記憶する。
【００５３】
第２テーブル３１は、第１接続部４ｍを識別する第１識別子、または第２接続部５ｍを識別する第２識別子と、記憶装置４のアドレス、特徴情報、およびリンクダウン順とを関連付けて記憶する。
【００５４】
第１接続部４ｍは、例えば、中継装置２と記憶装置４との間でリンクダウンが発生する前に、記憶装置４が接続されている物理ポートである。
【００５５】
第２接続部５ｍは、例えば、中継装置２と記憶装置４との間でリンクダウンが発生する前に、記憶装置４が接続されていない物理ポートである。中継装置２は、第２接続部５ｍを２つだけではなく、１以上の任意の数の第２接続部５ｍを備えても良い。以下の説明では、第２接続部５ｍが２つであるものとして説明する。
【００５６】
図３は、ベースボードの一実施例を示すブロック図である。
図３を参照して、記憶装置４が搭載されるベースボードについて説明する。以下の説明では、ベースボードのことを、単にボードとも言う。
【００５７】
ボード３は、複数のスロット６０と、第３接続部（第３ポート）７１〜７４とを備える。以下の説明において、第３接続部７１〜７４を特に区別しないときには、第３接続部７０と言う。
【００５８】
スロット６０は、第１コネクタ６１と、第２コネクタ６２とを点対称の位置に配置する。
【００５９】
第１コネクタ６１には、中継装置２が備える第１接続部４ｍ（第１ポート）と、電源６が接続される。
【００６０】
第２コネクタ６２には、電源６が接続される。
第３接続部７０は、第２接続部５ｍ（第２ポート）と接続される。
【００６１】
図４、図５は、記憶装置の実装を説明する図である。
図４を参照して、ストレージ装置２００の起動前に、記憶装置４をボード３に実装する処理について説明する。
【００６２】
記憶装置４は、ドングル５を介してボード３に接続される。
ドングル５は、第３コネクタ８１と、第４コネクタ８２と、第４接続部（第４ポート）８３とを備える。
【００６３】
第３コネクタ８１は、記憶装置４の図示しないコネクタと接続される。
第４コネクタ８２は、ボード３上のスロット６０に配置された第１コネクタおよび第２コネクタと接続される。
【００６４】
そして、ストレージ装置２００の起動前において、記憶装置４は、それぞれドングル５を介して第１コネクタ６１に接続される。
【００６５】
図５を参照して、記憶装置４がリンクダウンしたとき、ユーザが記憶装置４をボード３に実装する処理について説明する。
【００６６】
第１接続部４ｍと記憶装置４とがリンクダウンすると、ユーザは、第１コネクタ６１から記憶装置４とドングル５とを取り外し、記憶装置４を１８０度回転させて記憶装置４とドングル５とを第２コネクタ６２に接続する。ボード３では、第１コネクタ６１と第２コネクタ６２とが点対象の位置に配置されているので、リンクダウンした記憶装置４を、リンクダウン前に接続されていたスロット６０に再度実装することができる。
【００６７】
そして、ユーザは、通信ケーブル９１で第４接続部８３と第３接続部７０とを接続する。これにより、例えば、記憶装置４が記憶装置４Ｅであるとき、図６に示すように、記憶装置４Ｅは、第４接続部８３と第３接続部７４とを介して第２接続部５２に接続されてリンクアップする。
【００６８】
また、記憶装置４がリンクダウンしたとき、ユーザが他の記憶装置４をボード３に実装する処理について説明する。
【００６９】
第１接続部４ｍと記憶装置４とがリンクダウンすると、ユーザは、他の記憶装置４とドングル５とを第２コネクタ６２に接続する。そして、ユーザは、通信ケーブル９１で第４接続部８３と第３接続部７４とを接続する。これにより、例えば、他の記憶装置４が記憶装置４Ｅであるとき、図６に示すように、記憶装置４Ｅは、第４接続部８３と第３接続部７４とを介して第２接続部５２に接続されてリンクアップする。
【００７０】
（実施形態１）
図７〜図１０を参照して、実施形態１の中継装置２の概要を説明する。以下の説明において、第１テーブル２１と第２テーブル３１とに格納されている０〜６１は、第１識別子であるものとする。そして、第１テーブル２１と第２テーブル３１とに格納されている０〜６１は、それぞれ第１接続部４１〜４ｎ（ｎ＝６１）を識別する。また、６２、６３は、第２識別子であるものとする。そして、第１テーブル２１と第２テーブル３１とに格納されている６２、６３は、それぞれ第２接続部５１、５２を識別する。
【００７１】
中継装置２は、電源６がオン状態となり、ストレージ装置２００が起動して、複数の第１接続部４ｍと複数の記憶装置４とがリンクアップすると、各記憶装置４から記憶装置４のアドレスや特徴情報を取得する。そして、中継装置２は、図７に示すように、取得したアドレスと特徴情報とを、各記憶装置４が接続された第１接続部４ｍを識別する第１識別子に関連付けて第１テーブル２１に格納する。さらに、中継装置２は、図７に示すように、第１テーブル２１に第２接続部５ｍを識別する第２識別子を格納する。なお、中継装置２による記憶装置４のアドレスや特徴情報の取得は、例えば、記憶装置４がリンクアップしたとき、記憶装置４が中継装置２に通知するＩＤＥＮＴＩＦＹフレームを受信することにより行なわれても良い。
【００７２】
また、中継装置２は、ストレージ装置２００が起動すると、図８に示すように、第２テーブル３１に第１接続部４ｍの第１識別子と、第２接続部５ｍの第２識別子とを格納する。
【００７３】
中継装置２は、第１コネクタ６１に故障が発生すると、第１接続部４ｍと記憶装置４とのリンクダウンを検出する。中継装置２は、例えば、第１識別子１で識別される第１接続部４２のリンクダウンを検出すると、図９に示すように、第１テーブル２１から第１識別子１に関連付けられたアドレスと特長情報とを削除する。
【００７４】
また、中継装置２は、例えば、第１接続部４２がリンクダウンすると、図１０に示すように、リンクダウンした第１接続部４２の第１識別子と、リンクダウンした記憶装置４のアドレスと、リンクダウン順とを関連付けて第２テーブル３１に格納する。リンクダウン順は、例えば、最後にリンクダウンした第１接続部４ｍが１となり、最後から２番目にリンクダウンした第１接続部４ｍが２となり、最後から３番目にリンクダウンした第１接続部４ｍが３となるように更新される。
【００７５】
そして、中継装置２は、第２接続部５ｍがリンクアップしたとき、接続された記憶装置４のアドレスを第２テーブル３１から検索する。中継装置２は、接続された記憶装置４のアドレスが第２テーブル３１にあるとき、第１テーブル２１において、そのアドレスに関連付けられた第１識別子に第２接続部５ｍの第２識別子を書き換える。中継装置２は、接続された記憶装置４のアドレスが第２テーブル３１にないとき、第１テーブル２１において、リンクダウン順１に関連付けられた第１識別子に第２接続部５ｍの第２識別子を書き換える。
【００７６】
図１１〜図１８を参照して、第１接続部４２がリンクダウンしたとき、第１接続部４ｍの第１コネクタ６１に接続された記憶装置４を、第２コネクタ６２に接続し、第２接続部５２をリンクアップしたときに、中継装置２が実行する処理について説明する。
【００７７】
中継装置２は、例えば、図１１に示すように、ユーザにより第１接続部４１が記憶装置４Ａ、第１接続部４２が記憶装置４Ｂ、および第１接続部４３が記憶装置４Ｃに接続される。そして、電源６がオン状態となり、ストレージ装置２００が起動すると、中継装置２は、記憶装置４から記憶装置４のアドレスと特徴情報とを取得する。中継装置２は、図１２（ａ）に示すように、取得した記憶装置４のアドレスと、特長情報と、第１識別子とを関連付けて第１テーブル２１に格納する。さらに、中継装置２は、図１２（ｂ）に示すように、第２テーブル３１に第１接続部４ｍの第１識別子と、第２接続部５ｍの第２識別子とを格納する。なお、図１２（ａ）において、特徴情報の表記を書略しているが、第１テーブル２１には、複数の特徴を含む特長情報が記憶されているものとする。以下の説明における第１テーブル２１においても、同様であるものとする。
【００７８】
中継装置２は、図１３に示すように、第１接続部４２と記憶装置４Ｂとがリンクダウンすると、図１４（ａ）に示すように、第１テーブル２１の第１接続部４２を識別する第１識別子１に関連付けられたアドレスと特徴情報とを削除する。また、中継装置２は、図１４（ｂ）に示すように、第２テーブル３１に第１接続部４２の第１識別子１と、リンクダウンした記憶装置４ＢのアドレスＢと、リンクダウン順１とを関連付けて第２テーブル３１に格納する。
【００７９】
中継装置２において、図１５に示すように、ユーザにより記憶装置４Ｂが第２コネクタ６２に接続され、第２接続部５２が第３接続部７２と通信ケーブル９１とを介して記憶装置４Ｂに接続さると、第２接続部５２と記憶装置４Ｂとはリンクアップする。すると、中継装置２は、図１６に示すように、第１テーブル２１の第２接続部５２を識別する第２識別子６３に、リンクアップした記憶装置４ＢのアドレスＢを関連付けて格納する。
【００８０】
そして、中継装置２は、図１４（ｂ）の第２テーブル３１に、リンクアップした記憶装置４ＢのアドレスＢがあるか否かを検索する。
【００８１】
中継装置２は、図１４（ｂ）の第２テーブル３１からリンクアップした記憶装置４ＢのアドレスＢを抽出すると、図１７（ａ）に示すように、リンクダウンした記憶装置４Ｂの第１識別子１に対応するレコードを削除する。
【００８２】
さらに、中継装置２は、図１７（ａ）に示すように、第１テーブル２１において、リンクアップした記憶装置４ＢのアドレスＢに関連付けられた第２識別子６３を、図１４（ｂ）で抽出したアドレスＢに関連付けられた第１識別子１に変更する。
【００８３】
また、中継装置２は、図１７（ｂ）に示すように、第２テーブル３１の第１識別子１に対応するレコードを削除する。さらに、中継装置２は、図１７（ｂ）に示すように、第２テーブル３１の第２識別子６３を、図１４（ｂ）で抽出したアドレスＢに関連付けられた第１識別子１に変更する。
【００８４】
以上により、中継装置２において、第２接続部５２は、第１識別子１で識別されるようになる。そして、リンクアップした記憶装置４Ｂは、図１８に示すように、第１識別子１で識別される接続部に接続されることになる。したがって、上位の装置は、リンクダウン前と同様に記憶装置４Ｂにアクセスすることができる。
【００８５】
図１９〜図２６を参照して、第１接続部４２と記憶装置４Ｂがリンクダウンしたとき、他の記憶装置４αを、第２コネクタ６２に接続し、第２接続部５１をリンクアップするときの中継装置２の処理について説明する。また、第１接続部４３と記憶装置４Ｃがリンクダウンしたとき、他の記憶装置４βを、第２コネクタ６２に接続し、第２接続部５２をリンクアップするときの中継装置２の処理について説明する。以下の説明では、第１接続部４２がリンクダウンし、その後に第１接続部４３がリンクダウンしたものとして説明する。
【００８６】
中継装置２は、図１９に示すように、第１コネクタ６１の故障などにより、第１接続部４２と記憶装置４Ｂ、および第１接続部４３と記憶装置４Ｃとがリンクダウンする。すると、中継装置２は、図２０（ａ）に示すように、第１テーブル２１の第１接続部４２を識別する第１識別子１と、第１接続部４３を識別する第１識別子２とに関連付けられたアドレスと特徴情報とを削除する。
【００８７】
また、中継装置２は、図２０（ｂ）に示すように、第２テーブル３１に第１接続部４２の第１識別子１と、リンクダウンした記憶装置４ＢのアドレスＢと、リンクダウン順とを関連付けて第２テーブル３１に格納する。さらに、中継装置２は、図２０（ｂ）に示すように、第２テーブル３１に第１接続部４２の第１識別子２と、リンクダウンした記憶装置４ＣのアドレスＣと、リンクダウン順とを関連付けて第２テーブル３１に格納する。ここで、リンクダウン順は、第１接続部４２がリンクダウンし、その後に第１接続部４３がリンクダウンしたため、先にリンクダウンした第１接続部４２を識別する第１識別子１に関連付けられたリンクダウン順が２となっている。
【００８８】
中継装置２は、図２１に示すように、ユーザにより記憶装置４βが第２コネクタ６２に接続され、第２接続部５２が第３接続部７２と通信ケーブル９１とを介して記憶装置４βに接続されると、第２接続部５２と記憶装置４βとはリンクアップする。すると、中継装置２は、図２２に示すように、第１テーブル２１の第２接続部５２を識別する第２識別子６３に、リンクアップした記憶装置４βのアドレスβを関連付けて格納する。
【００８９】
そして、中継装置２は、図２０（ｂ）の第２テーブル３１に、リンクアップした記憶装置４βのアドレスβがあるか否かを検索する。
【００９０】
中継装置２は、図２０（ｂ）の第２テーブル３１にリンクアップした記憶装置４のアドレスβがないと判定する。そして、中継装置２は、図２３（ａ）に示すように、第１テーブル２１の第２識別子６３を、図２０（ｂ）の第２テーブル３１のリンクダウン順１に関連付けられた第１識別子２に置き換える。また、中継装置２は、図２３（ａ）に示すように、第１テーブル２１からアドレスと特徴情報とを削除した第１識別子２に対応するレコードを削除する。
【００９１】
さらに、中継装置２は、図２３（ｂ）に示すように、第２テーブル３１の第２識別子６３を、図２０（ｂ）の第２テーブル３１のリンクダウン順１に関連付けられた第１識別子２に置き換える。また、中継装置２は、図２３（ｂ）に示すように、リンクダウン順１に関連付けられたレコードを削除する。そして、中継装置２は、図２３（ｂ）に示すように、第１識別子１に関連付けられたリンクダウン順を１に変更する。
【００９２】
中継装置２は、図２４に示すように、ユーザにより記憶装置４αが第２コネクタ６２に接続され、第２接続部５１が第３接続部７１と通信ケーブル９２とを介して記憶装置４αに接続されると、第２接続部５１と記憶装置４αとはリンクアップする。すると、中継装置２は、図２５に示すように、第１テーブル２１の第２接続部５１を識別する第２識別子６２に、リンクアップした記憶装置４αのアドレスαを関連付けて格納する。
【００９３】
そして、中継装置２は、図２３（ｂ）の第２テーブル３１に、リンクアップした記憶装置４αのアドレスαがあるか否かを検索する。
【００９４】
中継装置２は、図２３（ｂ）の第２テーブル３１にリンクアップした記憶装置４のアドレスαがないと判定する。そして、中継装置２は、図２６（ａ）に示すように、第１テーブル２１の第２識別子６２を、図２３（ｂ）の第２テーブル３１のリンクダウン順１に関連付けられた第１識別子１に置き換える。また、中継装置２は、図２６（ａ）に示すように、アドレスと特徴情報とを削除した第１識別子１に対応するレコードを削除する。
【００９５】
さらに、中継装置２は、図２６（ｂ）に示すように、第２テーブル３１の第２識別子６２を、図２３（ｂ）の第２テーブル３１のリンクダウン順１に関連付けられた第１識別子１に置き換える。そして、中継装置２は、図２６（ｂ）に示すように、リンクダウン順１に関連付けられたレコードを削除する。
【００９６】
以上により、書込部１２は、リンクダウン順で指定される順番と関連付けられた第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む。これにより、ユーザがリンクダウン順にしたがって、故障した記憶装置４と同等の特徴を持つ他の記憶装置４を第２接続部５ｍに接続したとき、故障した記憶装置４の第１識別子が接続した他の記憶装置４に関連付けられる。したがって、上位の装置は、リンクダウン前と同様にストレージ装置２００を運用することができる。
【００９７】
（実施形態２）
ユーザが、リンクダウン順にしたがって記憶装置４を接続するとき、記憶装置４を接続する順番を間違えた場合、各記憶装置４の識別子が互い違いになる。このような、ユーザの操作に起因する問題を回避するため、実施形態２の中継装置２では、特徴情報を格納した第２テーブル３１を用いる。以下に、特徴情報を格納した第２テーブル３１を用いた中継処理について説明する。
【００９８】
中継装置２は、第１接続部４ｍがリンクダウンしたとき、リンクダウンした記憶装置４のアドレスと、特徴情報とを取得する。そして、中継装置２は、図２７に示すように、記憶装置４の変更によりストレージ装置２００の運用に与える影響が大きい種類の特徴から順番に並べて、第２テーブル３１に取得した特徴情報を格納する。
【００９９】
中継装置２は、記憶装置４がリンクアップしたとき、記憶装置４のアドレスと同じアドレスが第２テーブル３１にない場合、ストレージ装置２００の運用に与える影響が大きい特徴から順に、第２テーブル３１に格納されている特徴を記憶装置４の特徴と比較する。中継装置２は、第２テーブル３１から記憶装置４の特徴と一致する特徴が抽出されると、第１テーブル２１において、リンクアップした中継装置２のアドレスに関連付けられた第２識別子を、抽出された特徴に関連付けられた第１識別子に置き換える。
【０１００】
図２８〜図３３を参照して、ユーザが記憶装置４の接続順を間違えたときに、中継装置２で実行される処理を説明する。以下の説明では、第１接続部４２がリンクダウンし、その後に第１接続部４３がリンクダウンしたものとする。なお、リンクダウン順にしたがった記憶装置４の接続は、図１９〜図２６を参照して説明した手順であるものとする。
【０１０１】
中継装置２は、図２８に示すように、ユーザにより記憶装置４αが第２コネクタ６２に接続され、第２接続部５２が第３接続部７２と通信ケーブル９１とを介して記憶装置４αに接続されると、第２接続部５２と記憶装置４αとはリンクアップする。すると、中継装置２は、図２９（ａ）に示すように、第１テーブル２１の第２接続部５２を識別する第２識別子６３に、リンクアップした記憶装置４αのアドレスαを関連付けて格納する。
【０１０２】
そして、中継装置２は、リンクダウンした記憶装置４の識別子と、アドレスと、リンクダウン順とが関連付けて格納された図２９（ｂ）の第２テーブル３１に、リンクアップした記憶装置４のアドレスαがあるか否かを検索する。
【０１０３】
中継装置２は、図２９（ｂ）の第２テーブル３１にリンクアップした記憶装置４のアドレスαがないと判定する。そして、中継装置２は、図３０（ａ）に示すように、第１テーブル２１の第２識別子６３を、図２９（ｂ）の第２テーブル３１のリンクダウン順１に関連付けられた第１識別子２に置き換える。また、中継装置２は、図３０（ａ）に示すように、アドレスと特徴情報とを削除した第１識別子２に対応するレコードを削除する。
【０１０４】
さらに、中継装置２は、図３０（ｂ）に示すように、第２テーブル３１の第２識別子６３を、図３０（ｂ）の第２テーブル３１のリンクダウン順１に関連付けられた第１識別子２に置き換える。そして、中継装置２は、図３０（ｂ）に示すように、リンクダウン順１に関連付けられたレコードを削除する。そして、中継装置２は、図３０（ｂ）に示すように、第１識別子１に関連付けられたリンクダウン順を１に変更する。
【０１０５】
次に、中継装置２は、図３１に示すように、ユーザにより記憶装置４βが第２コネクタ６２に接続され、第２接続部５１が第３接続部７１と通信ケーブル９２とを介して記憶装置４βに接続されると、第２接続部５１と記憶装置４βとはリンクアップする。すると、中継装置２は、図３２に示すように、第１テーブル２１の第２接続部５１を識別する第２識別子６２に、リンクアップした記憶装置４βのアドレスβを関連付けて格納する。
【０１０６】
そして、中継装置２は、図３０（ｂ）の第２テーブル３１に、リンクアップした記憶装置４のアドレスβがあるか否かを検索する。
【０１０７】
中継装置２は、図３０（ｂ）の第２テーブル３１にリンクアップした記憶装置４のアドレスβがないと判定する。そして、中継装置２は、図３３（ａ）に示すように、第１テーブル２１の第２識別子６２を、図３０（ｂ）の第２テーブル３１のリンクダウン順１に関連付けられた第１識別子１に置き換える。また、中継装置２は、図３３（ａ）に示すように、アドレスと特徴情報とを削除した第１識別子１に対応するレコードを削除する。
【０１０８】
さらに、中継装置２は、図３３（ｂ）に示すように、第２テーブル３１の第２識別子６２を、図３０（ｂ）の第２テーブル３１のリンクダウン順１に関連付けられた第１識別子１に置き換える。そして、中継装置２は、図３３（ｂ）に示すように、リンクダウン順１に関連付けられたレコードを削除する。
【０１０９】
以上のように、ユーザの手順ミスにより、リンクダウン順に記憶装置４α、記憶装置４βがボード３に接続されないとき、記憶装置４の識別子がテレコになってしまい、上位の装置は、リンクダウン前と同様にストレージ装置２００を運用することができなくなる。
【０１１０】
このような問題を解決するために、特徴情報を格納した第２テーブル３１を用いた中継処理について説明する。
【０１１１】
図７、図１９、図２８、図３４〜図３８を参照して、第２テーブル３１に特徴情報を格納したときの中継装置２の処理を説明する。以下の説明では、第１接続部４２がリンクダウンし、その後に第１接続部４３がリンクダウンしたものとする。
【０１１２】
中継装置２は、図１９に示すように、第１接続部４２がリンクダウンすると、図７に示す第１テーブル２１から記憶装置４ＢのアドレスＢおよび特徴情報を取得する。そして、中継装置２は、図３４に示すように、取得したアドレスおよび特徴情報と、リンクダウン順とを、第１接続部４２を識別する第１識別子１に関連付けて第２テーブルに格納する。また、中継装置２は、図３６に示すように、第１テーブル２１から第１識別子１に関連付けられたアドレスと特長情報とを削除する。
【０１１３】
さらに、中継装置２は、図１９に示すように、第１接続部４３がリンクダウンすると、第１テーブル２１から記憶装置４ＣのアドレスＣおよび特徴情報とを取得する。そして、中継装置２は、図３５に示すように、取得したアドレスおよび特徴情報と、リンクダウン順とを、第１接続部４３を識別する第１識別子２に関連付けて第２テーブルに格納する。そして、中継装置２は、図３６に示すように、第１テーブル２１から第１識別子２に関連付けられたアドレスと特長情報とを削除する。
【０１１４】
中継装置２は、図２８に示すように、ユーザにより記憶装置４αが第２コネクタ６２に接続され、第２接続部５２が第３接続部７２と通信ケーブル９１とを介して記憶装置４αに接続さると、第２接続部５２と記憶装置４αとはリンクアップする。
【０１１５】
すると、中継装置２は、記憶装置４αのアドレスαおよび特長情報を取得し、図３６に示すように、第１テーブル２１の第２接続部５２を識別する第２識別子６３に、取得したアドレスαおよび特長情報を関連付けて格納する。
【０１１６】
そして、中継装置２は、図３５の第２テーブル３１に、リンクアップした記憶装置４αのアドレスαがあるか否かを検索する。
【０１１７】
中継装置２は、図３５の第２テーブル３１からリンクアップした記憶装置４αのアドレスαが抽出されないので、図３５からリンクアップした記憶装置４αの特徴と一致する特徴を検索する。
【０１１８】
まず、中継装置２は、型格の運用に与える影響が最も大きいので、記憶装置４αの型格と一致する型格を、図３５の第２テーブル３１から検索する。中継装置２は、記憶装置４αの型格ａａａａが第２テーブル３１から抽出されないので、図３５の第２テーブル３１から、容量の運用に与える影響が次に大きいので、記憶装置４αの容量と一致する容量を検索する。この結果、中継装置２は、記憶装置４αの容量６００ＧＢと一致する容量６００ＧＢを第２テーブル３１から抽出する。そして、中継装置２は、図３７に示すように、第１テーブル２１の第２識別子６３を、第２テーブル３１の容量６００ＧＢに関連付けられた第１識別子１に書き換える。また、中継装置２は、図３７に示すように、第１テーブル２１からアドレスと特徴情報とを削除した第１識別子１に対応するレコードを削除する。
【０１１９】
そして、中継装置２は、図３８に示すように、第２テーブル３１の第１識別子１に関連付けられたレコードを削除する。さらに、中継装置２は、図３８に示すように、第２テーブル３１の第２識別子６３を第１識別子１に書き換える。中継装置２は、同様の処理を繰り返すことにより、リンクアップした記憶装置４と、第１識別子とを関連付ける。
【０１２０】
以上により、中継装置２は、記憶装置４の特徴に基づいて自動的に第１識別子をリンクアップした記憶装置４に関連付けるので、ユーザが記憶装置４を接続する順番を間違えることにより、各記憶装置４の識別子がテレコになると言う問題を回避することができる。
【０１２１】
図３９〜図４３は、中継装置の処理を示すフローチャートである。
図３９〜図４３を参照して、中継装置２の処理を説明する。以下の説明において、特徴情報は、型格および容量であるものとする。また、型格は、容量よりも、運用に与える影響が大きいものとする。
【０１２２】
図３９を参照して説明する。
電源６がオン状態となり、ストレージ装置２００が起動すると（Ｓ１０１）、中継装置２は、接続された各記憶装置４からアドレスと特徴情報とを取得する。そして、中継装置２は、中継装置２が備える第１接続部４ｍの第１識別子と、接続された記憶装置４のアドレスと、接続された記憶装置４の特徴情報とを、関連付けた第１テーブル２１を生成する。また、中継装置２は、第１テーブル２１に第２接続部５ｍの識別子を格納する（Ｓ１０２）。
【０１２３】
さらに、中継装置２は、中継装置２が備える第１接続部４ｍと第２接続部５ｍとの識別子を格納した第２テーブル３１を生成する（Ｓ１０３）。
【０１２４】
そして、中継装置２は、ホスト１００と記憶装置４との間でデータの中継処理を開始する（Ｓ１０４）。中継装置２は、例えば、制御装置３３０から第１識別子が付与されたアクセス要求が与えられたとき、第１テーブル２１を参照し、第１識別子に対応する接続部を介してデータを転送する。
【０１２５】
中継装置２は、第１接続部４ｍがリンクダウンしたか否かを判定する（Ｓ１０５）。中継部は、第１接続部４ｍがリンクダウンしていないとき（Ｓ１０５にてＮｏ）、ストレージ装置２００に供給される電源６がオフ状態となるまで、Ｓ１０５の処理を繰り返し実行する（Ｓ１０６にてＮｏ）。
【０１２６】
中継装置２は、第１接続部４ｍがリンクダウンしていないとき（Ｓ１０５にてＮｏ）、ストレージ装置２００に供給される電源６がオフ状態となると（Ｓ１０６にてＹｅｓ）、中継処理を終了する。なお、中継装置２は、Ｓ１０６に限らず、電源６がオフ状態となったとき、他の処理の途中に中継処理を終了しても良い。
【０１２７】
Ｓ１０５において、中継装置２は、第１接続部４ｍがリンクダウンしたと判定すると（Ｓ１０５にてＹｅｓ）、第１テーブル２１上のリンクダウンした第１接続部４ｍに対応するレコードのアドレスと特徴情報とを削除する（Ｓ１０７）。
【０１２８】
中継装置２は、第２テーブル３１上のリンクダウンした第１接続部４ｍに対応するレコードを更新する（Ｓ１０８）。中継装置２は、例えば、リンクダウンした第１接続部４ｍに接続されていた記憶装置４のアドレスと特徴情報とを、第２テーブル３１に記憶する。そして、中継装置２は、Ｓ２０１の処理を実行する。
【０１２９】
図４０を参照して説明する。
中継装置２は、さらに、他の第１接続部４ｍがリンクダウンしたか否かを判定する（Ｓ２０１）。中継装置２は、第１接続部４ｍがリンクダウンしていないとき（Ｓ２０１にてＮｏ）、第２接続部５ｍがリンクアップしたか否かを判定する（Ｓ２０２）。
【０１３０】
中継部は、第２接続部５ｍがリンクアップしていないとき（Ｓ２０２にてＮｏ）、ストレージ装置２００に供給される電源６がオフ状態でない場合（Ｓ２０３にてＮｏ）、Ｓ２０１の処理を実行する。
【０１３１】
中継部は、第２接続部５ｍがリンクアップしていないとき（Ｓ２０２にてＮｏ）、ストレージ装置２００に供給される電源６がオフ状態となると（Ｓ２０３にてＹｅｓ）、処理を終了する。なお、中継装置２は、Ｓ２０３に限らず、電源６がオフ状態となったとき、他の処理の途中に中継処理を終了しても良い。
【０１３２】
Ｓ２０１において、中継装置２は、第１接続部４ｍがリンクダウンすると（Ｓ２０１にてＹｅｓ）、Ｓ１０７の処理を実行する。
【０１３３】
Ｓ２０２において、中継装置２は、第２接続部５ｍがリンクアップしたとき（Ｓ２０２）、第１テーブル２１上のリンクアップした第２接続部５ｍに対応するレコードを更新する（Ｓ２０４）。そして、中継装置２は、Ｓ３０１の処理を実行する。中継装置２は、例えば、リンクアップした第２接続部５ｍに接続されていた記憶装置４のアドレスと特徴情報とを、第１テーブル２１のリンクアップした第２接続部５ｍの第２識別子に関連付けて格納する。
【０１３４】
図４１を参照して説明する。
中継装置２は、リンクアップした記憶装置４のアドレスと一致するアドレスを第２テーブル３１から検索する（Ｓ３０１）。そして、中継装置２は、リンクアップした記憶装置４のアドレスと一致するアドレスが第２テーブル３１にあるとき（Ｓ３０２にてＹｅｓ）、第２テーブル３１から一致したアドレスに関連付けられている第１識別子を抽出する（Ｓ３０３）。
【０１３５】
そして、中継装置２は、第１テーブル２１上の第１識別子に関連するレコードを削除する（Ｓ３０４）。
【０１３６】
さらに、中継装置２は、第１テーブル２１上のリンクアップした第２接続部５ｍに対応する第２識別子を、抽出した第１識別子に書き換える（Ｓ３０５）。そして、中継装置２は、Ｓ４０１の処理を実行する。
【０１３７】
図４２を参照して説明する。
中継装置２は、第２テーブル３１上のリンクアップした第２接続部５ｍに対応する第２識別子を抽出した第１識別子に書き換える（Ｓ４０１）。
【０１３８】
中継装置２は、第２テーブル３１上の第１識別子を抽出したレコードを削除する（Ｓ４０２）。
【０１３９】
中継装置２は、第２テーブル３１の他のレコードに、リンクダウンした第１接続部４ｍの情報が格納されているか否かを判定する（Ｓ４０３）。
【０１４０】
中継装置２は、第２テーブル３１の他のレコードに、リンクダウンした第１接続部４ｍの情報が格納されているとき（Ｓ４０３にてＹｅｓ）、Ｓ２０１の処理を実行する。
【０１４１】
中継装置２は、第２テーブル３１の他のレコードに、リンクダウンした第１接続部４ｍの情報が格納されていないとき（Ｓ４０３にてＮｏ）、Ｓ１０４の処理を実行する。
【０１４２】
図４１を参照して説明する。
Ｓ３０２において、中継装置２は、リンクアップした記憶装置４のアドレスと一致するアドレスが第２テーブル３１にないとき（Ｓ３０２にてＮｏ）、リンクアップした記憶装置４のアドレス以外の特徴と一致する特徴を第２テーブル３１から検索する（Ｓ３０６）。
【０１４３】
そして、中継装置２は、リンクアップした記憶装置４の型格と一致する型格が第２テーブル３１にあるとき（Ｓ３０７にてＹｅｓ）、第２テーブル３１から一致した型格に関連付けられている第１識別子を抽出する（Ｓ３０８）。そして、中継装置２は、Ｓ３０４の処理を実行する。
【０１４４】
中継装置２は、リンクアップした記憶装置４の型格と一致する型格が第２テーブル３１にないとき（Ｓ３０７にてＮｏ）、Ｓ５０１の処理を実行する。
【０１４５】
図４３を参照して説明する。
そして、中継装置２は、リンクアップした記憶装置４の容量と一致する容量が第２テーブル３１にあるとき（Ｓ５０１にてＹｅｓ）、第２テーブル３１から一致した容量に関連付けられている第１識別子を抽出する（Ｓ５０２）。そして、中継装置２は、Ｓ３０４の処理を実行する。
【０１４６】
中継装置２は、リンクアップした記憶装置４の容量と一致する容量が第２テーブル３１にないとき（Ｓ５０１にてＮｏ）、エラーモードが設定されているか否かを判定する（Ｓ５０３）。なお、エラーモードとは、例えば、リンクアップした記憶装置４のアドレスや特徴情報と一致する情報が第２テーブル３１にないとき、ユーザに通知するためのモードであり、適宜ユーザにより適用の有無を設定されるモードである。
【０１４７】
中継装置２は、エラーモードが設定されているとき（Ｓ５０３にてＹｅｓ）、ユーザに通知する（Ｓ５０４）。そして、中継装置２は、中継処理を終了する。
【０１４８】
また、中継装置２は、エラーモードが設定されていないとき（Ｓ５０３にてＮｏ）、第２テーブル３１からリンクダウン順１に対応する第１識別子を抽出する（Ｓ５０５）。そして、中継装置２は、Ｓ３０４の処理を実行する。
【０１４９】
図４４は、エクスパンダの一実施例を示すブロック図である。
エクスパンダ５００は、制御回路５０１と、記憶装置５０２と、クロスバー５０３と、物理ポート６０１〜６０ｎとを備える。そして、制御回路５０１と、記憶装置５０２と、クロスバー５０３とは、バス５０４を介して接続されている。
【０１５０】
制御回路５０１は、エクスパンダ５００全体の制御をするコンピュータ（プロセッサ）である。そして、制御回路５０１は、例えば、ＣＰＵ、マルチコアＣＰＵ、ＦＰＧＡおよびＰＬＤなどである。制御回路５０１は、例えば、図２において、制御部１０として機能する。なお、第１記憶部２０に記憶される第１テーブル２１と、第２記憶部３０に記憶される第２テーブル３１とは、例えば、ＣＰＵ、ＦＰＧＡ、およびＰＬＤのキャッシュに記憶されても良い。
【０１５１】
記憶装置５０２は、各種データを記憶する。そして、記憶装置５０２は、例えば、ＲＯＭおよびＲＡＭなどの半導体メモリなどで構成される。記憶装置５０２は、例えば、図２において、第１記憶部２０や第２記憶部３０として機能する。そして、記憶装置５０２は、例えば、図２に示す、第１テーブル２１と、第２テーブル３１とを記憶しても良い。
【０１５２】
また、ＲＯＭは、ブートプログラムなどのプログラム、ＯＳ、アプリケーションプログラム、ファームウェアなどのプログラム、および各種データを記憶している。ＲＡＭは、制御回路５０１のワークエリアとして使用される。
【０１５３】
記憶装置５０２は、例えば、制御回路５０１を、制御部１０として機能させる中継プログラムを記憶する。
【０１５４】
中継処理をするとき、中継装置２は、例えば、記憶装置５０２に記憶された中継プログラムをＲＡＭに読み出す。そして、ＲＡＭに読み出された中継プログラムを制御回路５０１で実行することにより、中継装置２は、中継処理を実行する。
【０１５５】
クロスバー５０３は、制御回路５０１に制御され、データの転送に用いる物理ポート６０１〜６０ｎを切替える。
【０１５６】
物理ポート６０１〜６０ｎは、図２において、送受信部４０として機能する。
以上のように、実施形態の中継装置２は、第１接続部４ｍのリンクダウンを検出したとき、リンクダウンした記憶装置４のアドレスと、第２接続部５ｍがリンクアップしたとき、第２接続部５ｍに接続された記憶装置４のアドレスとが一致するか否かを判定する。そして、中継装置２は、一致判定した２つのアドレスが一致するとき、制御装置３１０から第１接続部４ｍを識別する第１識別子が付与されたアクセス要求が与えられた場合、第２接続部５ｍを介してデータを転送する。したがって、上位の装置は、リンクダウンした記憶装置にリンクダウン前と同様にアクセスすることができる。
【０１５７】
実施形態の中継装置２は、リンクダウンした第１接続部４ｍを識別する第１識別子と、リンクダウンした記憶装置４のアドレスとを関連付けて第２テーブル３１に書き込む。そして、中継装置２は、第２テーブル３１においてリンクアップした記憶装置４のアドレスに関連付けられた第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む。これにより、第１テーブル２１には、リンクダウン前と同じ第１識別子が、同じ記憶装置４に関連付けられて格納される。したがって、上位の装置は、リンクダウンした記憶装置にリンクダウン前と同様にアクセスすることができる。
【０１５８】
実施形態の中継装置２は、リンクダウン順で指定される順番と関連付けられた第１識別子と、リンクアップした記憶装置４のアドレスとを関連付けて第１テーブル２１に書き込む。これにより、ユーザがリンクダウン順にしたがって、故障した記憶装置４と同等の特徴を持つ他の記憶装置４を第２接続部５ｍに接続すると、故障した記憶装置４の第１識別子が接続した他の記憶装置４に関連付けられる。したがって、上位の装置は、リンクダウン前と同様にストレージ装置２００を運用することができる。
【０１５９】
実施形態の中継装置２は、第１テーブル２１に格納したリンクアップした記憶装置４のアドレスに関連付けられた第２識別子を、リンクアップした記憶装置４の特徴情報に関連付けられた第１識別子に書き換える。これにより、ユーザが故障した記憶装置４と同等の特徴を持つ他の記憶装置４を第２接続部５ｍに接続すると、故障した記憶装置４の第１識別子が接続した他の記憶装置４に関連付けられる。したがって、上位の装置は、リンクダウン前と同様にストレージ装置２００を運用することができる。
【０１６０】
なお、本実施形態は、以上に述べた実施形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
【０１６１】
以上記載した各実施例を含む実施形態に関し、さらに以下の付記を開示する。なお、本発明は、以下の付記に限定されるものではない。
（付記１）
ストレージ装置内で制御装置と記憶装置との間に配置される中継装置であって、
記憶装置と接続される第１接続部と、
第２接続部と、
前記第１接続部のリンクダウンを検出する検出部と、
前記検出部が前記第１接続部のリンクダウンを検出したとき、前記第１接続部に接続されていた記憶装置のアドレスと、前記第２接続部に記憶装置が接続され、前記第２接続部がリンクアップしたとき、前記第２接続部に接続された記憶装置のアドレスと、が一致する場合、前記制御装置から前記第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、前記第２接続部を介してデータを転送する転送部と、
を備えることを特徴とする中継装置。
（付記２）
前記中継装置は、さらに、
前記第１接続部を識別する第１識別子と、前記記憶装置のアドレスとを関連付けた情報を記憶する第１記憶部と、
第２記憶部と、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されている場合、前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた前記第１識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書き込む書込部と、
前記書込部が前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書き込んだとき、前記リンクダウンした第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部から削除する削除部と、
を備え、
前記転送部は、
前記制御装置から第１識別子が付与されたアクセス要求が与えられたとき、前記第１記憶部を参照し、前記第１識別子に対応する接続部を介してデータを転送する
ことを特徴とする付記１に記載の中継装置。
（付記３）
前記書込部は、さらに、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部がリンクダウンした順番を示すリンクダウン順とを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されていない場合、前記第２記憶部に記憶されているリンクダウン順で指定される順番と関連付けられた第１識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書き込み、
前記削除部は、
前記書込部が前記第２記憶部に記憶されているリンクダウン順で指定される順番と関連付けられた第１識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書き込んだとき、前記リンクダウンした第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部から削除する
ことを特徴とする付記２に記載の中継装置。
（付記４）
前記書込部は、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部を識別する第２識別子と、前記リンクアップした第２接続部に接続された記憶装置のアドレスとを関連付けた情報を前記第１記憶部に書込み、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されているとき、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記第２記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第１識別子に書き換える
ことを特徴とする付記２または３に記載の中継装置。
（付記５）
前記書込部は、さらに、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部がリンクダウンした順番を示すリンクダウン順とを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されていない場合、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記第２記憶部に記憶したリンクダウン順で指定される順番と関連付けられた第１識別子に書き換える
ことを特徴とする付記４に記載の中継装置。
（付記６）
前記書込部は、
前記第２接続部がリンクアップしたとき、前記第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されていない場合、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記第２記憶部に記憶したリンクダウン順の中で最後にリンクダウンしたことを示す順番と関連付けられた第１識別子に変更する
ことを特徴とする付記５に記載の中継装置。
（付記７）
前記書込部は、
前記第２接続部がリンクアップしたとき、前記第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されていない場合、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記第２記憶部に記憶したリンクダウン順の中で最初にリンクダウンしたことを示す順番と関連付けられた第１識別子に書き換える
ことを特徴とする付記５に記載の中継装置。
（付記８）
前記書込部は、さらに、
前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部に接続された記憶装置の特徴を示す特徴情報とを関連付けた情報を前記第２記憶部に書き込み、前記第２接続部がリンクアップしたとき、前記リンクアップした第２接続部に接続された記憶装置のアドレスが前記第２記憶部に記憶されていない場合、前記第２記憶部に記憶されている特徴情報の中から前記第２接続部に接続された記憶装置の特徴情報に少なくとも一部が一致する特徴情報を抽出し、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記抽出された特徴情報に関連付けられた第１識別子に書き換える
ことを特徴とする付記４に記載の中継装置。
（付記９）
前記特徴情報は、
記憶装置が有する複数種類の特徴を含み、
前記書込部は、
前記記憶装置が有する複数種類の特徴の中で、記憶装置の変更によりストレージ装置の運用に与える影響が大きい種類の特徴から順番に、前記第２接続部に接続された記憶装置が有する特徴と一致する特徴を前記第２記憶部に記憶されている特徴情報の中から検索し、一つの種類の特徴で一致する特徴が一つのとき、前記第１記憶部に記憶した前記リンクアップした第２接続部に接続された記憶装置のアドレスに関連付けられた第２識別子を、前記一致する特徴に関連付けられた第１識別子に書き換える
ことを特徴とする付記８に記載の中継装置。
（付記１０）
前記中継装置は、さらに、
前記第２記憶部に記憶された前記リンクダウンした第１接続部を識別する第１識別子と、前記リンクダウンした第１接続部がリンクダウンした順番を示すリンクダウン順とを関連付けた情報を出力する出力部
を備えることを特徴とする付記３〜５のいずれか一つに記載の中継装置。
（付記１１）
記憶装置を配置するボードと、制御装置と前記ボードとの間に設置される中継装置とを備えるストレージ装置であって、
前記ボードは、
前記中継装置が備える第１ポートが接続された第１コネクタと、第２コネクタとを点対称の位置に配置した複数のスロット
を備え、
前記中継装置は、
前記第１コネクタと接続された第１ポートと、
第２ポートと、
前記第１コネクタに接続された第１ポートのリンクダウンを検出する検出部と、
前記検出部が前記第１ポートのリンクダウンを検出したとき、前記リンクダウンした第１ポートに接続されていた記憶装置のアドレスと、前記第２コネクタに記憶装置が接続され、かつ前記記憶装置が前記第２ポートと接続され、前記第２ポートがリンクアップしたとき、前記第２ポートに接続された記憶装置のアドレスと、が一致する場合、前記制御装置から前記第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、前記第２接続部を介してデータを転送する転送部と、
を備える
ことを特徴とするストレージ装置。
（付記１２）
前記ストレージ装置は、さらに、前記記憶装置と前記ボードとの間に接続されるドングルを備え、
前記ボードは、さらに、
前記第２ポートと接続された第３ポート
を備え、
前記ドングルは、
前記記憶装置と接続される第３コネクタと、
前記ボードの第１コネクタおよび第２コネクタと接続される第４コネクタと、
前記第３ポートと接続される第４ポートと、
を備え、
前記記憶装置は、
リンクアップするとき、前記ドングルが備える第３コネクタと第４コネクタとを介して前記ボードが備える第２コネクタに接続され、かつ前記ボードが備える第３ポートと前記ドングルが備える第４ポートとを介して前記中継装置が備える第２ポートに接続される
ことを特徴とする付記１１に記載のストレージ装置。
（付記１３）
ストレージ装置内で制御装置と記憶装置との間に配置される中継装置のコンピュータによって実行される中継方法であって、
前記コンピュータは、
前記中継装置が備える前記記憶装置と接続された第１接続部のリンクダウンを検出し、
前記検出部が前記第１接続部のリンクダウンを検出したとき、前記リンクダウンした第１接続部に接続されていた記憶装置のアドレスと、前記中継装置が備える第２接続部に記憶装置が接続され、前記第２接続部がリンクアップしたとき、前記第２接続部に接続された記憶装置のアドレスと、が一致する場合、前記制御装置から前記第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、前記第２接続部を介してデータを転送する
ことを特徴とする中継方法。
（付記１４）
ストレージ装置内で制御装置と記憶装置との間に配置される中継装置の制御をするコンピュータに実行させる中継プログラムであって、
前記中継装置が備える前記記憶装置と接続された第１接続部のリンクダウンを検出し、
前記検出部が前記第１接続部のリンクダウンを検出したとき、前記リンクダウンした第１接続部に接続されていた記憶装置のアドレスと、前記中継装置が備える第２接続部に記憶装置が接続され、前記第２接続部がリンクアップしたとき、前記第２接続部に接続された記憶装置のアドレスと、が一致する場合、前記制御装置から前記第１接続部を識別する第１識別子が付与されたアクセス要求が与えられたとき、前記第２接続部を介してデータを転送する
処理をコンピュータに実行させる中継プログラム。
【符号の説明】
【０１６２】
１  ストレージシステム
２  中継装置
３  ボード
４  記憶装置
５  ドングル
６  電源
１０  制御部
１１  検出部
１２  書込部
１３  削除部
１４  転送部
１５  出力部
２０  第１記憶部
３０  第２記憶部
４０  送受信部
６０  スロット
９１、９２  通信ケーブル
１００  ホスト
２００  ストレージ装置
５００  エクスパンダ
５０１  制御回路
５０２  記憶装置
５０３  クロスバー
５０４  バス
６０１〜６０ｎ  物理ポート
【図１】
2015162037.tif 000003
【図２】
2015162037.tif 000004
【図３】
2015162037.tif 000005
【図４】
2015162037.tif 000006
【図５】
2015162037.tif 000007
【図６】
2015162037.tif 000008
【図７】
2015162037.tif 000009
【図８】
2015162037.tif 000010
【図９】
2015162037.tif 000011
【図１０】
2015162037.tif 000012
【図１１】
2015162037.tif 000013
【図１２】
2015162037.tif 000014
【図１３】
2015162037.tif 000015
【図１４】
2015162037.tif 000016
【図１５】
2015162037.tif 000017
【図１６】
2015162037.tif 000018
【図１７】
2015162037.tif 000019
【図１８】
2015162037.tif 000020
【図１９】
2015162037.tif 000021
【図２０】
2015162037.tif 000022
【図２１】
2015162037.tif 000023
【図２２】
2015162037.tif 000024
【図２３】
2015162037.tif 000025
【図２４】
2015162037.tif 000026
【図２５】
2015162037.tif 000027
【図２６】
2015162037.tif 000028
【図２７】
2015162037.tif 000029
【図２８】
2015162037.tif 000030
【図２９】
2015162037.tif 000031
【図３０】
2015162037.tif 000032
【図３１】
2015162037.tif 000033
【図３２】
2015162037.tif 000034
【図３３】
2015162037.tif 000035
【図３４】
2015162037.tif 000036
【図３５】
2015162037.tif 000037
【図３６】
2015162037.tif 000038
【図３７】
2015162037.tif 000039
【図３８】
2015162037.tif 000040
【図３９】
2015162037.tif 000041
【図４０】
2015162037.tif 000042
【図４１】
2015162037.tif 000043
【図４２】
2015162037.tif 000044
【図４３】
2015162037.tif 000045
【図４４】
2015162037.tif 000046