JP4278445B2 - ネットワークシステム及びスイッチ - Google Patents
ネットワークシステム及びスイッチ Download PDFInfo
- Publication number
- JP4278445B2 JP4278445B2 JP2003172770A JP2003172770A JP4278445B2 JP 4278445 B2 JP4278445 B2 JP 4278445B2 JP 2003172770 A JP2003172770 A JP 2003172770A JP 2003172770 A JP2003172770 A JP 2003172770A JP 4278445 B2 JP4278445 B2 JP 4278445B2
- Authority
- JP
- Japan
- Prior art keywords
- storage device
- data
- switch
- read request
- address
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
Description
【発明の属する技術分野】
本発明は、記憶装置とコンピュータとを接続するネットワークに配置されたスイッチに関する。
【0002】
【従来の技術】
企業等で使用される記憶装置の記憶容量の増加に伴って、記憶装置間又は記憶装置とコンピュータとがファイバチャネル等のネットワークを介して接続された一つのシステムが構築されるようになってきた。この記憶装置等を接続するネットワーク又はネットワークによって接続されたシステム全体はストレージエリアネットワーク(以下SAN)と呼ばれる。
【0003】
一方、ネットワークでのデータの転送頻度を減らし、コンピュータが記憶装置に格納されたデータへアクセスする時間を短縮する技術としてネットワークキャッシュ技術がある。すなわち、ネットワーク上にデータを一時保存する記憶領域(以下「キャッシュ装置」)を用意し、コンピュータが記憶装置に格納されたデータをキャッシュ装置を介して読み出した場合に、その読み出したデータがキャッシュ装置に格納され、その後のそのデータへのアクセスにはキャッシュ装置が応答を返す。これにより、データへのアクセス時間が短縮される。
【0004】
SANにおいてネットワークキャッシュ技術を使用する例が特許文献1に開示されている。具体的には、SAN内にメタデータサーバと呼ばれるコンピュータを用意し、記憶装置へアクセスするコンピュータは最初にメタデータサーバにアクセスする。メタデータサーバは、アクセスすべきデータの位置をコンピュータに通知する。キャッシュが用いられる場合には、コンピュータにキャッシュを有する装置の位置が通知される。
【0005】
また、WWW等のインターネットで、ネットワーク上にキャッシュを有する装置を配置する技術として、トランスペアレントキャッシュと呼ばれる技術がある。本技術では、コンピュータから記憶装置へのデータのアクセス要求(以下「アクセスリクエスト」とも称する)を受取ったスイッチが、そのアクセスリクエストを一度キャッシュを有する計算機(以下「キャッシュサーバ」)に送る。キャッシュサーバが有するキャッシュにアクセスリクエストの対象となるファイルが存在する場合(以下「キャッシュヒット」)、キャッシュサーバは対象となったファイルをアクセスリクエストを発行したコンピュータに送信する。一方、対象となるデータがキャッシュに存在しない場合(以下「キャッシュミス」)は、キャッシュサーバが記憶装置にアクセスリクエストを送信してデータを取得し、取得したデータをアクセスリクエストを発行したコンピュータに送信する。
【0006】
【特許文献1】
特開2002−132455号公報
【0007】
【発明が解決しようとする課題】
上述したように、SANにおいてネットワークキャッシュ技術を用いれば、キャッシュヒットの場合には、要求されたデータを取得するまでの時間が短縮される。
【0008】
しかし、特許文献1に開示された技術では、SAN内にキャッシュ装置を設置できるものの、データのアクセスの為にメタデータサーバを必要とするなど、コンピュータの設定や動作を従来SANで使用されているデータアクセスのためのプロトコル、例えばSCSIプロトコルからメタデータサーバを使用するための専用のプロトコルに変更する必要がある。
【0009】
一方、トランスペアレントキャッシュの様にファイル単位でのネットワークキャッシュ技術を用いる場合、キャッシュヒットの判定処理が複雑であるためレスポンスを高速化することが難しい。
【0010】
具体的には、ファイル単位でキャッシュを行う場合、リード要求はファイルの名前などを指定したアクセス要求である。キャッシュサーバは、アクセス要求を受け取ると自身の記憶装置内に保持しているファイルと、そのファイルが記憶装置内のどのブロックに対応するかを記憶するメタデータと呼ばれるデータを読み出し、その中にリード要求が指定するファイルがあるか検索することでキャッシュヒットの判定が行われる。この検索処理は、名前が一致するか等を判定するため、SCSIのようなブロックアクセスのプロトコルがアクセス先の位置を指定するために用いる論理ブロックアドレスという数値の比較に比べて処理が複雑になる。
【0011】
本発明の目的は、SANにおいてコンピュータの設定を変更することなく、データに対するアクセスを高速化し、ネットワーク帯域を節約することである。
【0012】
【課題を解決するための手段】
上述の目的を達成するために、本発明のネットワークシステムは以下の構成を有する。即ち、計算機と、計算機と接続されるスイッチと、スイッチとネットワークを介して接続される第一の記憶装置と、スイッチとネットワークを介して接続される第二の記憶装置を有するネットワークシステムである。
【0013】
本ネットワークシステムにおいて、スイッチは外部からの指示に基づいて第一の記憶装置に格納されたデータを第二の記憶装置へ転送する。その後、計算機から第一の記憶装置に格納されたデータに対するアクセス要求を受けたスイッチは、そのアクセス要求を第二の記憶装置へのアクセス要求に変換し、変換したアクセス要求を第二の記憶装置へ転送する。その後、第二の記憶装置からデータを受信したスイッチは、そのデータが第一の記憶装置から送信されたデータとなるように変換して計算機に送信する。
【0014】
尚、スイッチに指示を与えるのはスイッチに接続される第二の計算機でも良い。又、スイッチは、第一の記憶装置に対応する仮想的な記憶装置を計算機に提供しても良い。この場合、計算機は、仮想的な記憶装置へアクセス要求を発行する。
【0015】
更に、本発明の別の態様としては、上述したスイッチと第二の記憶装置が一体となって一つの装置を構成していても良い。
【0016】
又、本発明の別の態様としては、スイッチがあらかじめ第一の記憶装置に格納されたデータを第二の記憶装置へ転送するのではなく、計算機からのアクセス要求に応じて、第一の記憶装置に格納されたデータを第二の記憶装置へ転送しても良い。更に本形態の場合、スイッチは第一の記憶装置に格納されたデータが第二の記憶装置に転送されたかどうかの情報を有し、その情報に基づいてアクセス要求を第一又は第二の記憶装置へ転送しても良い。更に、本形態において、スイッチが第一の記憶装置から第二の記憶装置へデータを転送する際に、第二の記憶装置の記憶容量を確認し、転送するデータを格納する分の記憶容量が第二の記憶装置に存在しない場合には、第二の記憶装置に格納されているデータを一定の基準、例えば計算機における使用頻度、に応じて消去し、そこにデータを転送する構成が考えられる。
【0017】
尚、スイッチの代わりに、第一又は第二の記憶装置がデータの転送を制御しても良い。
【0018】
【発明の実施の形態】
図1は、本発明を適用したコンピュータシステムの第1の実施形態を説明する図である。コンピュータシステムには、SAN101、ホスト105、記憶装置104a及び記憶装置104bが含まれる。ホスト105、記憶装置104a及び記憶装置104bは、SAN101を介して相互に接続されている。SAN101は、ホスト105、スイッチ102a、102b、102c及び後述するコピー管理スイッチ103を有する。
【0019】
以下、本実施形態においては、ホスト105は記憶装置104aに格納されたデータ(以下「マスタデータ」と称する)に対するリード要求を行うものとする。
【0020】
ホスト105は、CPU1051、メモリ1052及びSAN101へ接続するためのインタフェイス1053を有する計算機である。
【0021】
記憶装置104は、データを格納するメディア1043、SAN101へ接続するためのインタフェイス1044、ホスト105からの要求に応答するためのプログラムを実行するためのCPU1041及びメモリ1042を有する。尚、記憶装置104が有するメディア1043には、多種の例が考えられる。例えば、メディア1043として、複数のハードディスクドライブから構成されるディスクアレイを採用しても良い。また、記憶装置104は、ホスト105からデータのリード要求を受け取ると、要求に対応するデータをホスト105に送信し、最後に送信を完了したことを示すレスポンスを送信する。
【0022】
スイッチ102a、102b、102cおよび、コピー管理スイッチ103は、相互に接続情報を交換し、後述するルーティング処理に必要なルーティングテーブルを作成する。具体的には、各スイッチ間の通信の負荷(オーバーヘッド)を表す情報(以下「接続コスト」という)を交換する。接続コストは一般にスイッチ間の通信線の通信帯域が小さいほど大きくなる。ただし、管理者等は、後述する管理端末106を介して、接続コストを任意の値に設定することもできる。各スイッチは取得した全ての接続コストから、他の各スイッチへの最も接続コストの和が小さい経路を算出し、それらをルーティングテーブルとして記憶する。
【0023】
スイッチ102a、102b、102c及びコピー管理スイッチ103には、各スイッチに固有のSANドメインアドレスが割り振られている。また記憶装置104a、104b及びホスト105には、それぞれ固有のSANアドレスが割り振られる。ここで、SANアドレスは、SAN101に接続されるコンピュータ等の装置(以下「ノード」とも言う)と接続されるSAN101内のスイッチのSANドメインアドレス及びSANドメインアドレスで指定される集団(以下「ドメイン」)内部で固有のSANノードアドレスから構成されるアドレスである。
【0024】
各ノードは他のノードへフレームを送受信する時、フレームに送信元と送信先のSANアドレスを付加することで、自分と相手を指定する。スイッチ102a、102b、102c及びコピー管理スイッチ103は、ルーティングテーブル内でフレームの送信先のSANドメインアドレスを検索して、フレームのルーティングを行う。また、フレームの送信先のSANドメインアドレスが当該スイッチ102のSANドメインアドレスと一致している場合は、フレームの送信先のSANノードアドレスと一致するSANノードアドレスを持つ、当該スイッチ102に直接接続するノードへフレームを転送する。尚、フレームとは、SAN101で使用されるプロトコルにおけるデータ又はアクセスリクエストを転送する際の単位である。
【0025】
本実施形態では、接続コストが小さい、距離が短い又は記憶装置104bの方が記憶装置104aよりも高性能などの理由により、ホスト105から記憶装置104aへアクセスするよりも、記憶装置104bへアクセスするほうが、高速にアクセス出来るものとする。
【0026】
コピー管理スイッチ103には、管理端末106が接続されている。本実施形態のコンピュータシステムのユーザ又は管理者は、管理端末106を用いてコピー管理スイッチ103にマスタデータを記憶装置104bへコピーするよう指示する。この際管理者は、管理端末106を介して、マスタデータの位置とコピーされたデータ(以下「コピーデータ」と称する)の位置との対応を示す情報をコピー管理スイッチ103、具体的には、後述するコピー管理テーブル131に登録する。尚、管理者等は、管理端末106を介してホスト105から記憶装置104aへのアクセス頻度などの情報を収集し、マスタデータ全体ではなくアクセス頻度の高い一部の領域だけを記憶装置104bにコピーする旨、コピー管理スイッチ103に指示しても良い。
【0027】
また、スイッチ102a、102b、102c及びコピー管理スイッチ103はネーム管理を行う場合もある。例えばファイバチャネルスイッチは、ノードやポートに割り振られる、世界でユニークな不変の値であるワールドワイドネーム(以下「WWN」)から、SAN101内でユニークなポートのSANアドレスを検索するためのテーブルを有する。WWNには、SAS101に接続するポートに固有なWWPN(World Wide Port Name)と、ノードに固有なWWNN(World Wide Node Name)がある。複数の接続ポートを持つノードは、1つのWWNNと複数のWWPNを持つことができる。また、IPネットワーク上にSCSIプロトコルを流すiSCSIと呼ばれる規格でもiSNSと呼ばれるネーム管理用の体系が存在する。
【0028】
図2はコピー管理スイッチ103の構成を示す図である。コピー管理スイッチ103は、他のノードと接続するためのポート111、制御部112、管理端末106と接続するための管理ポート113、アドレス変換部114並びにルーティング処理及びスイッチング処理を行うスイッチング処理部115を有する。スイッチング処理部115は、ルーティング処理を行うためのルーティングテーブルを保持する。
【0029】
制御部112は、CPU1121、メモリ1122及び不揮発メモリ1123を有する。アドレス変換部114は、CPU1141及びメモリ1142を有する。尚、本図で開示された構成は実施の一例であり、同等の機能が達成できるならば他の構成であってもよい。
【0030】
図3は、コピー管理スイッチ103のメモリ1122、1142及び不揮発メモリ1123に格納されるプログラムやデータを示す図である。
【0031】
初期化処理プログラム121は、コピー管理スイッチ103の起動時にCPU1121で実行されるプログラムである。CPU1121は、初期化処理プログラム121を実行することで、他の各プログラムを不揮発メモリ1123からメモリ1122及びメモリ1142に読み出し、後述するコピー管理テーブル131を各アドレス変換部114が有するメモリ1142に読み出す。
【0032】
管理端末からの要求処理プログラム122、ルーティングプロトコル処理プログラム123及びネームサービス処理プログラム124は制御部112のメモリ1122に格納され、CPU1121で実行される。アドレス変換処理プログラム126はアドレス変換部114のメモリ1142に格納され、CPU1141で実行される。
【0033】
CPU1121は、管理端末からの要求処理プログラム122を実行することで、管理ポート113で受信される管理端末106からの要求に基づき、コピー管理テーブル131の内容を変更する。またCPU1121は、管理端末106からの要求処理プログラム122を実行することで、管理端末106からの要求に基づき、データのコピーを実行する。
【0034】
一方、CPU1121は、管理端末からの要求処理プログラム122を実行することで、一般的なスイッチで行われる管理を実行することができる。尚、管理ポート113で用いられるプロトコルは例えばTCP/IPなどがあるが、管理端末106と通信できるならば他のプロトコルが用いられても良い。
【0035】
CPU1121は、ルーティングプロトコル処理プログラム123を実行することで、他のスイッチ102とSAN101内における接続に関する情報(以下「接続情報」)を交換することでルーティングテーブルを作成し、スイッチング処理部115が有するメモリに、作成したルーティングテーブルを格納する。
【0036】
CPU1121は、ネームサービス処理プログラム124を実行することで、コピー管理スイッチ103に接続されているノードの情報をネームデータベース125に登録する一方、ノードからの検索要求に応答する。ノードからのネームデータベース125への検索要求を受け取るため、制御部112にはSANアドレスが割り振られている。
【0037】
アドレス変換部114のCPU1141は、アドレス変換処理プログラム126を実行して、ポート111がフレームを受信したことを契機に、コピー管理テーブル131に登録されている情報に基づいて、リード要求・リードデータなどの送信先・送信元SANアドレスを変換する。アドレス変換処理の詳細は後述する。尚、本実施形態ではアドレス変換処理をプログラムに基づいて実行するが、専用ハードウェアでアドレス変換処理を行っても良い。
【0038】
図4は、コピー管理テーブル131の構造を示す図である。コピー管理テーブル131は、複数のコピー管理エントリ132を有する。各コピー管理エントリ132には、一組のマスタデータとコピーデータの対応関係の情報が保持される。コピー管理エントリ132は、マスタデータを格納する記憶装置104を示すマスタSANアドレスが登録されるフィールド133、マスタデータが格納される記憶装置104内の論理ユニットを示す番号(以下「マスタLUN」)が登録されるフィールド134、論理ユニット内のマスタデータの先頭位置を示す論理ブロックアドレス(以下「マスタLBA」)が登録されるフィールド135、マスタデータのサイズを示すマスタLengthが登録されるフィールド136、コピー管理エントリ132に登録されたマスタデータに対応するコピーデータが格納された記憶装置104を示すコピーSANアドレスが登録されるフィールド137、コピーデータが格納される記憶装置104内の論理ユニットを示す番号(以下「コピーLUN」)が登録されるフィールド138及び論理ユニット内のコピーデータの先頭位置を示す論理ブロックアドレス(以下「コピーLBA」)が登録されるフィールド139を有する。尚、コピーデータのデータ長さはマスタデータと同じなので、コピーLengthを登録するフィールドは不要である。
【0039】
以下、本発明における各装置の動作の概要について説明する。
【0040】
本実施形態では、まず、管理者等の指示にしたがって、コピー管理スイッチ103がマスタデータが格納された記憶装置105aから記憶装置105bにマスタデータが転送され、コピーデータが作成される。この際、コピー管理テーブル131にマスタデータを格納する記憶装置105aとコピーデータを格納する記憶装置105bとの関係を示す情報が登録される。
【0041】
上述したコピー処理の終了後、コピー管理スイッチ103は、ホスト105からリード要求を受け取ると、リード要求が含まれるフレームが保持するアドレス情報が上述したマスタデータとコピーデータとの対応関係を示す情報に含まれているか否かを判断することで、リード要求に対応するデータがマスタデータで、かつマスタデータに対応するコピーデータが存在するか判定する。
【0042】
リード要求の対象となるマスタデータに対応するコピーデータが存在する場合、コピー管理スイッチ103は、ホスト105から受信した記憶装置104aに格納されたマスタデータへのリード要求を、そのコピーデータを格納する記憶装置104bに対するリード要求に変換する。具体的には、コピー管理スイッチ103は、リード要求に含まれるリクエスト受信先(記憶装置104a)を示すSANアドレスを、コピーデータが格納された記憶装置104bのSANアドレスに変更する。これによりネットワークの効率的な利用を行う。
【0043】
以下、コピーデータ作成の手順について説明する。システムの使用者又は管理者は管理端末106を介して、記憶装置104aのSANアドレス、マスタデータの記憶装置104a内部でのアドレスである論理ユニット番号(以下「LUN」)、論理ブロックアドレス(以下「LBA」)、マスタデータのLength、記憶装置104bのSANアドレス、データコピー先のLUN、LBAをコピー管理スイッチ603に送信する。
それらの情報を受信した制御部112は、マスタデータへのリード要求を記憶装置104aに送信する。
【0044】
次に、制御部112は、記憶装置104aから送られてきたリードデータをメモリ1122に格納する。続けて制御部112は、記憶装置104bにライト要求を送信し、メモリ1122に格納されているマスタデータを記憶装置104bに書き込む。このような処理によって、データのコピーが行われる。
【0045】
尚、上述のコピー動作は処理の一例であり、この方法に限定されるものではない。例えばメモリ1122の代わりにリードデータを格納する専用のバッファを制御部112に設けても良い。また、記憶装置104a自体がコピー処理を行っても良い。例えばSCSIプロトコルの規格には、EXTENDED COPYというコマンドがある。このコマンドを処理することができる記憶装置は、EXTENDED COPYコマンドを受け取ると、コマンドが指定する記憶装置の特定の領域を他の記憶装置の特定の領域にコピーする。
【0046】
したがって、マスタデータを保持する記憶装置104aがEXTENDED COPYコマンドを処理することができる場合、以下のようにしてもコピー処理を実行できる。
【0047】
制御部112は、マスタデータを保持する記憶装置104aにコピーを行うようEXTENDED COPYコマンドを送信する。記憶装置104aは、EXTENDED COPYコマンドで指定された記憶領域の内容を、記憶装置104bに転送する。指定された記憶領域に格納されたデータの転送が終了すると、記憶装置104aは、処理の終了をしめすレスポンスをEXTENDED COPYコマンドの送信元、ここではコピー管理スイッチ603へ送信し、コピー処理が完了する。
【0048】
次に、コピー処理完了後のコピー管理スイッチ103の動作について説明する。上述したように、ホスト105からフレームを受信したコピー管理スイッチ103は、アドレス変換部114でフレームの転送元あるいは転送先のアドレスを変換し、適切な装置へフレームを転送する。
【0049】
図5は、アドレス変換部114で実行されるアドレス変換処理の手順の一例を示すフローチャートである。
ポート111がフレームを受け取ると、CPU1141は、アドレス変換処理プログラム126の実行を開始する(ステップ151)。CPU1141は、ポート111で受信されたフレームが、ホスト105が発行した記憶装置104へのリード要求を含むフレームであるか否かを判定する(ステップ152)。
【0050】
フレームがリード要求を含む場合、CPU1141は、リード要求が要求するデータのコピーがコンピュータシステムに存在するか判定する。具体的には、CPU1141は、コピー管理エントリ132に含まれるフィールド133、フィールド134、フィールド135及びフィールド136に登録された情報で示される領域に、リード要求を含むフレームに格納されている送信先SANアドレス、LUN、LBA及びLengthで示される領域が含まれるという条件を満たすコピー管理エントリ132がコピー管理テーブル131に存在するか判定する(ステップ153)。
【0051】
ステップ153の条件に合致するコピー管理エントリ132が存在する場合、CPU1141は、そのコピー管理エントリ132を用いて、リード要求を含むフレームをコピーデータが格納されている記憶装置104へのリード要求を含むフレームに変換する。具体的には、CPU1141は、リード要求を含むフレームの送信先をフィールド137に登録された値に、LUNをフィールド138に登録された値に、LBAを(LBA+フィールド139に登録された値−フィールド135に登録された値)に変更する。
【0052】
ステップ152でフレームの内容がリード要求ではないと判断した場合、CPU1141は、フレームの内容がリード要求に対応して記憶装置104から転送されるデータ(以下「リードデータ」)又はレスポンスであるか判定する(ステップ155)。フレームの内容がリードデータ又はレスポンスである場合、CPU1141は、リードデータ又はレスポンスが、コピーデータが格納された記憶装置104bから送信されたものか判定する。具体的には、CPU1141は、フレームの送信元がフィールド137に登録された値と一致するコピー管理エントリ132がコピー管理テーブル131に存在するか判定する(ステップ156)。
【0053】
フレームがコピーデータが格納された記憶装置104bから送信されていた場合、CPU1141は、ステップ156で見つけたコピー管理エントリ132を用いて、フレームの送信元をフィールド133に登録されたマスタSANアドレスに変更する(ステップ157)。
【0054】
ステップ154及び157で説明される処理の終了後、CPU1141は、スイッチング処理部115に処理したフレームを送信する。尚、ステップ153及びステップ156で該当するコピー管理エントリ132が存在しない場合並びにステップ155でフレームがリードデータ及びレスポンスではないと判断された場合、CPU1141は、受信したフレームをそのままスイッチング処理部115に送信する(ステップ158)。
【0055】
本実施形態のコンピュータシステムの一連の動作をまとめると、次のようになる。
【0056】
システムの使用者又は管理者が管理端末106を介して、コピー管理スイッチ103にデータコピーを指示し、コピー管理テーブル131を登録する。
【0057】
図4には、スイッチ102cのSANドメインアドレスが4、記憶装置104aのSANノードアドレスが01、コピー管理スイッチ103のSANドメインアドレスが5、記憶装置104bのSANノードアドレスが02であり、長さ100000のマスタデータが記憶装置104aのLUN0のLBA0から格納されていて、マスタデータ全体を記憶装置104bのLUN5のLBA50000から始まる領域にコピーした場合のマスタデータとコピーデータの対応関係を示す情報がコピー管理エントリ132の各フィールドに登録された例が示されている。
【0058】
ホスト105が記憶装置104aへのリード要求を行う。リード要求に対応するフレームには、送信先である記憶装置104aのSANアドレス、LUN、LBA、Length及び送信元であるホスト105のSANアドレスが含まれる。
【0059】
リード要求は送信先のSANアドレスに基づいてルーティングされ、スイッチ102aを経由してコピー管理スイッチ103に届く。リード要求を受取ったコピー管理スイッチ103は、コピー管理テーブル131の情報とフレームの内容とを照合する。リード要求に対応するコピーデータが存在する場合、リード要求をコピーデータへのリード要求に変換し、記憶装置104bに変換されたフレームをルーティングする。
【0060】
リード要求を受取った記憶装置104bは、リード要求の対象であるコピーデータを読み出し、リード要求の送信元であるホスト105へリードデータを送信する。リードデータのフレームには、送信先であるホスト105のSANアドレス及び送信元である記憶装置104bのSANアドレスが含まれる。
【0061】
リードデータを受取ったコピー管理スイッチ103は、コピー管理テーブル131の情報に基づきリードデータの送信元を記憶装置104aに変更する。その後、リードデータは送信先のSANアドレスに基づいてルーティングされ、スイッチ102aを通りホスト105に届く。ホスト105は、リードデータを記憶装置104aから送信されたものとして受け取る。
【0062】
一連の動作により、記憶装置104aへのリード要求は、実際にはSAN101でより高速にアクセスできる記憶装置104bで処理されるので、レスポンスが高速になり、スイッチ102b、102cおよび記憶装置104aにかかる負荷を減らすことができる。
【0063】
図6は、本発明を適用したコンピュータシステムの第二の実施形態を示す図である。第一の実施形態とは、コピー管理スイッチ203が複数存在する点が異なっている。尚、他の構成については第一の実施形態と同一であるので、説明を省略する。
【0064】
また、本実施形態では、ホスト105から記憶装置104aへの最短経路は、ホスト105→スイッチ102a→コピー管理スイッチ203a→スイッチ102b→記憶装置104aとし、ホスト105から記憶装置104bへの最短経路はホスト105→スイッチ102a→コピー管理スイッチ203b→記憶装置104bとする。またホスト105から記憶装置104aの接続コストよりホスト105から記憶装置104bの接続コストの方が小さいものとする。
【0065】
システムの管理者又は利用者は、コピー管理スイッチ203a及び203bと接続される管理端末106を介して、記憶装置104aが保持するマスタデータを記憶装置104bにコピーする指示をコピー管理スイッチ203bに行い、マスタデータとコピーデータの対応を示す情報を、コピー管理スイッチ203a、203bが有するコピー管理テーブル231に登録する。
【0066】
また、コピー管理スイッチ203が有するメモリ1122には、第一の実施形態におけるプログラム等に加え、代理アドレステーブル241が格納される。さらに、CPU1141が実行するアドレス変換処理プログラム226の内容も第一の実施形態と異なる。
【0067】
また、不揮発メモリ1123に格納されるコピー管理テーブル231が有するコピー管理エントリ232は、第一の実施形態のコピー管理エントリ132の各フィールドに加え、ローカルフラグを登録するフィールド240を有する。
【0068】
ローカルフラグは、コピー管理スイッチ203が有するコピー管理エントリ232のマスタSANアドレス133に対応する記憶装置104と、当該コピー管理スイッチ203を含めた複数のコピー管理スイッチ203との間の接続関係を示すフラグである。具体的には、複数のコピー管理スイッチ203と記憶装置104との間に存在する機器の個数に応じて、値が設定される。以下、機器の個数が少ないことを「近い」と表現する。
【0069】
本実施形態では、コピー管理スイッチ203aよりコピー管理スイッチ203bの方が記憶装置104bの近くに接続されているので、管理端末106はコピー管理スイッチ203aにはローカルフラグを0に、コピー管理スイッチ203bにはローカルフラグを1にしたコピー管理エントリ232をコピー管理テーブル231に登録する。
【0070】
図7は、代理アドレステーブル241の構成を示す図である。代理アドレステーブル241は、データを要求するホスト105を示すSANアドレス(以下「ホストSANアドレス」)、マスタSANアドレス、及び本実施形態におけるアドレス変換処理で用いられる代理アドレス(以下「代理SANアドレス」)との対応関係を記録するためのテーブルである。
【0071】
代理アドレステーブル241は複数の代理アドレスエントリ242を有する。各代理アドレスエントリ242は、ホストSANアドレスが登録されるフィールド243、マスタSANアドレスが登録されるフィールド244及び代理SANアドレスが登録されるフィールド245を有する。代理アドレステーブル241の使用方法については後述する。
【0072】
図8は、本実施形態におけるCPU1141のアドレス変換処理の手順の一例を示すフローチャートである。
【0073】
ポート111がフレームを受信したら、CPU1141は、アドレス変換処理プログラム226の実行を開始する(ステップ251)。CPU1141は、受信したフレームの内容がリード要求か否かを判定する(ステップ252)。受信したフレームの内容がリード要求である場合、CPU1141は、リード要求が要求するデータのコピーがコンピュータシステム内に存在するか判定する。具体的には、CPU1141は、コピー管理エントリ132に含まれるフィールド133、フィールド134、フィールド135及びフィールド136に登録された情報で示される領域に、リード要求を含むフレームに格納されている送信先SANアドレス、LUN、LBA及びLengthで示される領域が含まれるという条件を満たすコピー管理エントリ132がコピー管理テーブル131に存在するか判定する(ステップ253)
ステップ253で示される条件に合致するコピー管理エントリ232が存在する場合、CPU1141は、ステップ253で見つけたコピー管理エントリ232を用いて、リード要求をコピーデータが格納される記憶装置104へのリード要求に変換する。具体的には、リード要求を含むフレームの送信先をフィールド137に登録されたコピーSANアドレスに、フレームのLUNをフィールド138に登録されたコピーLUNに、フレームのLBAを(LBA+フィールド139に登録されたコピーLBAの値−フィールド135に登録されたマスタLBAの値)に変更する(ステップ254)。
【0074】
ステップ253でフレームの送信先がコピー管理テーブル231に含まれていない場合及びフレームをコピーデータが格納されている記憶装置104へのリード要求に変換した場合、CPU1141は、リード要求がCPU1141が属するコピー管理スイッチ203に接続された記憶装置104へのものかどうか判定する。具体的には、まずリード要求の送信先のSANアドレス、LUN、LBA及びLengthで表される領域を、コピーSANアドレス137、コピーLUN138、コピーLBA139とマスタLength136で表される領域が含み、かつローカルフラグ240が1であるコピー管理エントリ232がコピー管理テーブル231に存在するか判定する(ステップ255)。
【0075】
ローカルフラグが1であるコピー管理エントリ232がある場合、CPU1141は、リード要求を含むフレームの送信元を変更する。これは、コピーデータへのリード要求と、コピーデータを保持する記憶装置104が保持するコピーデータ以外のデータへのリード要求とを区別できるようにするためである。具体的には、まずCPU1141は代理SANアドレスを生成する。代理SANアドレスは、当該コピー管理スイッチ203に割り振られたSANドメインアドレスを含み、他のいかなるノードのSANアドレスや、代理アドレステーブル241に保持される代理アドレスエントリ242のフィールド245に登録された代理SANアドレスと重複しないように決定される。
【0076】
次に、CPU1141は、代理アドレステーブル241内の使用されていない代理アドレスエントリ242に、リード要求を発行したホスト105に対応するホストSANアドレス、マスタSANアドレス及び代理アドレスとの対応関係を登録する。具体的には、ステップ255で見つかったコピー管理エントリ232を用いて、CPU11141は、リード要求の送信元であるホスト105を示すホストSANアドレスをフィールド243に、マスタSANアドレス133をフィールド244に、生成した代理SANアドレスをフィールド245に登録する。その後、CPU1141は、リード要求であるフレームの送信元を、生成した代理アドレスに変更する(ステップ256)。
【0077】
ステップ252で受信したフレームの内容がリード要求でないと判断した場合、CPU1141は、受信したフレームの内容がリードデータであるか判定する(ステップ257)。受信したフレームの内容がリードデータである場合、CPU1141は、
リードデータの送信先が当該コピー管理スイッチ203の生成した代理SANアドレスであるか判定する。具体的には、CPU1141は、リードデータの送信先を示すSANアドレスがフィールド245に登録された代理SANアドレスと一致する代理アドレスエントリ242が代理アドレステーブル241に存在するか判定する(ステップ258)。
【0078】
条件を満たす代理アドレスエントリ242が見つかった場合、CPU1141は、ステップ258で見つけた代理アドレスエントリ242に登録された情報を用いて、フレームの送信元をフィールド244に登録されたマスタSANアドレスに、送信先をフィールド243に登録されたホストSANアドレスに変更する(ステップ259)。
【0079】
ステップ257で受信したフレームの内容がリードデータでないと判断した場合、CPU1141は、受信したフレームの内容がレスポンスであるか判定する(ステップ260)。フレームの内容がレスポンスである場合、CPU1141は、フレームの送信先が当該コピー管理スイッチ203の生成した代理SANアドレスで示されるノードであるか判定する。具体的には、CPU1141は、フレームの送信先を示すSANアドレスがフィールド245に登録された代理SANアドレスと一致する代理アドレスエントリ242が代理アドレステーブル241に存在するか判定する(ステップ261)。
【0080】
ステップ261で条件を満たす代理アドレスエントリ242が見つかった場合、CPU1141は、見つかった代理アドレスエントリ242に登録された情報を用いて、フレームの送信元をフィールド244に登録されたマスタSANアドレスに、送信先をフィールド243に登録されたホストSANアドレスに変更する。また、CPU1141は、代理アドレスエントリ242を代理アドレステーブル241から消去する(ステップ262)。
【0081】
フレームの送信先がステップ255で示される条件を満たさない場合、ステップ258及び261でフレームの送信先が代理SANアドレスでない場合並びにステップ256、259及び262でフレームのアドレス変換が済んだ場合、CPU1141は、スイッチング処理部115へ処理したフレームを送信する(ステップ263)。
【0082】
本実施形態におけるコンピュータシステムの一連の動作をまとめると、次のようになる。
【0083】
システムの使用者又は管理者が管理端末106を介して、コピー管理スイッチ103にデータコピーを指示し、各コピー管理スイッチのコピー管理テーブル231へその情報を登録する。
【0084】
ホスト105が記憶装置104aへのリード要求を行う。リード要求は送信先である記憶装置104aのSANアドレス、LUN、LBA、Lengthと送信元であるホスト105のSANアドレスを含む。リード要求は送信先のSANアドレスに基づいてルーティングされ、スイッチ102aを経由してコピー管理スイッチ203aに届く。
【0085】
コピー管理スイッチ203aはリード要求を受け取ると、コピー管理テーブル231の情報と照合する。コピー管理スイッチ203aは、リード要求の送信先を記憶装置104bが保持するコピーデータへのリード要求に変換しルーティングする。ただし、記憶装置104bはコピー管理スイッチ203aに接続されていないので、代理アドレスは生成されず、送信元も変更されない。
【0086】
書き換えられたリード要求は送信先のSANアドレスに基づいてルーティングされ、コピー管理スイッチ203bに届く。リード要求を受取ったコピー管理スイッチ203bは、受取ったフレームの内容をコピー管理テーブル231の情報と照合する。その結果、コピー管理スイッチ203bは、代理SANアドレスを生成し、ホスト105のSANアドレス、マスタである記憶装置104aのSANアドレス及び代理SANアドレスの対応関係を代理アドレステーブル241の代理アドレスエントリ242に記録する。その後、コピー管理スイッチ203bは、リード要求の送信元を代理SANアドレスに変更してフレームをルーティングする。
【0087】
リード要求を受取った記憶装置104bは、リード要求に対応するコピーデータを読み出し、送信先を代理SANアドレスにしてリードデータをコピー管理スイッチ203bへ送信する。リードデータを含むフレームには、送信先である代理SANアドレスと送信元である記憶装置104bのSANアドレスが含まれる。
【0088】
リードデータのフレームがコピー管理スイッチ203bに届くと、コピー管理スイッチ203bは代理アドレステーブル241の情報に基づき、リードデータの送信元を記憶装置104aのSANアドレス、送信先をホスト105のSANアドレスに変更する。その後、リードデータを含むフレームは送信先のSANアドレスに基づいてルーティングされ、スイッチ102aを通りホスト105に届く。ホスト105はリードデータを記憶装置104aから送信されたものとして受け取る。
【0089】
一方、記憶装置104bからのレスポンスがコピー管理スイッチ203bに届くと、コピー管理スイッチ203bは、送信元を記憶装置104aのSANアドレス、送信先をホスト105のSANアドレスに変更しルーティングすると同時に、代理アドレステーブル241から対応関係を記録している代理アドレスエントリ242を消去する。ホスト105はレスポンスを記憶装置104aから送信されたレスポンスとして受け取る。
【0090】
本実施形態では、ホスト105とマスタデータを保持する記憶装置104aの経路上にコピー管理スイッチ203aが存在している。しかし第1の実施形態と異なり、コピー管理スイッチ203aにはコピーデータを保持する記憶装置104bは接続されていない。それでも、本実施形態では、リード要求はコピーデータを保持する記憶装置104bへのリード要求へ変換され、コピーデータを保持する記憶装置104bが接続しているコピー管理スイッチ203bに届き、コピーデータが記憶装置104aからのリードデータとしてホスト105に送信される。
【0091】
また、本実施形態では代理SANアドレスを用いることで、コピー管理スイッチ203によって変更されたリード要求と、元々コピーを保持する記憶装置104bへ発行されたリード要求などのコマンドとを区別することが可能である。そのため、コピーデータを有する記憶装置104bを通常の記憶装置104bとして用いることが可能になる。さらに、リード要求ごとに異なる代理SANアドレスを用いるので、複数の記憶装置104に保持されるマスタデータを一つの記憶装置104bにコピーして、コピーデータとして用いることが可能になる。
【0092】
尚、本実施形態では代理SANアドレスを用いて、記憶装置104からのリードデータを、そのアドレス情報を変換する必要のあるリードデータと、変換する必要のないリードデータを分類した。しかし、フレームにリード要求とリードデータとレスポンスの対応を認識できるような情報が付加されている場合は代理SANアドレスを用いず、その付加情報でリードデータを分類することもできる。例えば、ファイバチャネルプロトコルではエクスチェンジIDと呼ばれるIDが各フレームに付加されているので、この情報に基づいてリードデータ、レスポンスを分類することも可能である。
【0093】
図9は、本発明の第3の実施形態を適用したコンピュータシステムの構成例を示す図である。SAN101は、スイッチ102a、102b及びコピー管理スイッチ303を有する。また、ホスト105、記憶装置104a及び記憶装置104bがSAN101に接続されている。記憶装置104aにはマスタデータが格納されている。
【0094】
尚、本実施形態においても、ホスト105と記憶装置104aとの間の通信線の接続コストよりホスト105と記憶装置104bとの間の通信線の接続コストの方が小さいものとする。
【0095】
システムの使用者や管理者は、コピー管理スイッチ303に接続された管理端末106を介して、上述した他の実施形態と同様に、マスタデータのコピーを行い、マスタデータとコピーデータの対応関係の情報を、コピー管理スイッチ303のコピー管理テーブル231に記録し管理する。本実施例では、これらに加えて後述する仮想アドレステーブル341も記録し、管理する。
【0096】
コピー管理スイッチ303は、後述する方法を用いて、コピー管理スイッチ303に接続される装置に対して、仮想的な記憶装置104(以下「仮想記憶装置307」)が存在するかのように振舞う。
【0097】
以下、本実施形態においては、ホスト105はマスタデータが仮想記憶装置307に格納されていると判断して、仮想記憶装置307へリード要求を行う。これは、後述するコピー管理エントリ232a、232bが管理端末106によってコピー管理スイッチ303に登録されているため、コピー管理スイッチ303が仮想記憶装置307へのリード要求を、コピーデータの有無により記憶装置104aないし記憶装置104bへのリード要求に変換するからである。これによりネットワークの効率的な利用を行う。尚、ホスト105には仮想記憶装置307のWWNが設定されている。ホスト105はネームサービスを使って、仮想記憶装置307のWWNから仮想記憶装置307のSANアドレス(2つ)を知る。
【0098】
尚、本実施形態におけるコピー管理スイッチ303の構成は第1の実施形態のコピー管理スイッチ103と同様である。しかし、コピー管理スイッチ303が有するメモリに登録される情報等については、第二の実施形態と比較して、下記に示すような違いがある。
【0099】
第一に、CPU1121が初期化処理プログラム321を実行して、後述する仮想アドレステーブル341を不揮発メモリ1123から読み出し、仮想アドレステーブル341に記録されている仮想記憶装置307のアドレス情報をネームデータベース125に登録する点である。第二に、CPU1121が端末からの要求処理プログラム322を実行して、第2の実施形態における処理に加え、管理ポート113で受信される管理端末106からの要求に答え、不揮発メモリ1123に保持される仮想アドレステーブル341の変更を行う点である。
【0100】
図10は、仮想アドレステーブル341の内容を示す図である。仮想アドレステーブル341は、複数の仮想アドレスエントリ342を有する。仮想アドレスエントリ342は1つの仮想的なノード、例えば仮想記憶装置307に対応し、仮想的なノードのSANアドレス(以下「仮想SANアドレス」)及び仮想的なWWN(以下、「仮想WWPN」、「仮想WWNN」と称する)が、仮想アドレスエントリ342のエントリ343、344及び345に登録される。
【0101】
尚、本実施形態におけるコピー管理テーブル231、代理アドレステーブル241は第2の実施形態と同様のものを用いる。アドレス変換処理プログラム226も第2の実施形態と同様である。
【0102】
本実施形態におけるコンピュータシステムの一連の動作をまとめると、次のようになる。
【0103】
はじめに、システムの使用者や管理者が、コピー管理スイッチ303に接続された管理端末106を介して、記憶装置104aに格納されたマスタデータを記憶装置104bコピーする指示をコピー管理スイッチ303に行う。続けて、仮想アドレステーブル341とコピー管理テーブル231を設定する。スイッチ102aのSANドメインアドレスが4、コピー管理スイッチのSANドメインアドレスが5、記憶装置104aのSANアドレスが401、記憶装置104bのSANアドレスが501、仮想記憶装置307に割り当てるSANアドレスを502、WWPNを1234、WWNNを5678とし、マスタデータが記憶装置104aのLUN0、LBA0から始まる長さ100000の領域に格納されており、マスタデータの先頭から長さ50000の部分を記憶装置104bのLUN0、LBA0から始まる領域にコピーした場合のコピー管理テーブル231、コピー管理エントリ232a、232bと仮想アドレステーブル341、仮想アドレスエントリ342にセットされる値を図10、図11に示す。コピー管理エントリ232aは、仮想記憶装置307のLUN0、LBA0から始まる長さ50000の部分へのリード要求が、記憶装置104bへのリード要求に変換されることを示す。一方コピー管理エントリ232bは、仮想記憶装置307のLUN0,LBA50000から始まる長さ50000の部分へのリード要求が、記憶装置104aへのリード要求に変換されることを示す。
【0104】
設定終了後、ホスト105が仮想記憶装置307へのリード要求を発行する。リード要求のフレームには、送信先である仮想記憶装置307のSANアドレス、LUN、LBA、Length及び送信元であるホスト105のSANアドレスが含まれる。リード要求のフレームは、送信先のSANアドレスに基づいてルーティングされ、スイッチ102aを経由してコピー管理スイッチ303に届く。
【0105】
リード要求を受取ったコピー管理スイッチ303は、リード要求のフレームに含まれている情報をコピー管理テーブル231の情報と照合する。照合の結果、リード要求がコピー管理エントリ232aにヒットしたなら、コピー管理スイッチ303は、第二の実施形態と同様に、リード要求の送信先をコピーデータを有する記憶装置104bへのリード要求に変換し、代理アドレスを生成し、送信元を代理アドレスに変更して、そのリード要求のフレームを記憶装置104bに転送する。そして、コピー管理スイッチ303bは、ホスト105a、仮想記憶装置307及び代理アドレスの対応を代理アドレステーブル241の代理アドレスエントリ242に記録する。また、照合の結果、リード要求がコピー管理エントリ232bにヒットした場合は、リード要求を104aに格納されたマスタデータへのリード要求に変換し、同様の処理を行う。
【0106】
リード要求を受取った記憶装置104bは、指定されたデータを読み出し、送信先を代理SANアドレスに設定してリードデータを送信する。リードデータのフレームには送信先を示す代理SANアドレス及び送信元である記憶装置104bのSANアドレスが含まれる。
【0107】
リードデータのフレームを受信すると、コピー管理スイッチ303は代理アドレステーブル241の情報に基づき、リードデータのフレームの送信元を仮想記憶装置307のSANアドレス、送信先をホスト105のSANアドレスに変更する。リードデータは送信先のSANアドレスに基づいてルーティングされ、スイッチ102aを通りホスト105に届く。ホスト105は、リードデータを仮想記憶装置307から送信されたものとして受け取る。
【0108】
第1、第2の実施形態では、ホスト105とマスタデータを保持する記憶装置104aとの間のネットワークの経路(以下「パス」)上にコピー管理スイッチ103等があり、そのコピー管理スイッチ103等でリード要求のフレームが変更されていた。しかし本実施形態では、コピー管理スイッチ303が仮想記憶装置307を提供するため、ホスト105と記憶装置104aとの間のパス上には無いコピー管理スイッチ303に直接リード要求が到達する。
【0109】
また、本実施形態の一つとして、図12のような構成を取ることもできる。この構成では、記憶装置104aがコピー管理スイッチ303aに接続される。管理者等は、管理端末106を介してコピー管理スイッチ303a、303bのコピー管理テーブル231や仮想アドレステーブル341を設定し、それぞれのコピー管理スイッチが仮想記憶装置307を提供するようにする。
【0110】
この場合、ホスト105a、105bが各コピー管理スイッチ303のネームデータベースを参照したときに、仮想記憶装置307が複数のポートを持つノードとして認識されるように、コピー管理スイッチ303a、303bの仮想アドレステーブル341において、WWNNが等しい仮想アドレスエントリ342が登録される。
【0111】
ホスト105a、105bでは、アクセスすべき記憶装置104がWWNNで設定される。ホスト105a、105bはネームデータベースを参照し、アクセスすべき記憶装置104(実際には仮想化記憶装置307)の二つのSANアドレスを取得する。この場合、ホスト105は、どちらのSANアドレスを使用しても、仮想化記憶装置307にアクセスすることができる。これら複数のSANアドレスで示される複数のポートから一つを選択する方法としては、以下の二つが考えられる。
【0112】
一つは、ホスト105がスイッチ102ないしコピー管理スイッチ303からSAN101のトポロジ情報を取得できる場合、より接続コストの少ないポートを選択し、そのポートへリード要求を送信する。
【0113】
もう一つは、ホスト105がトポロジ情報が取得できない場合、ホスト105が両方のポートにリード要求を送信し、より速くアクセスできるポートを選択するという方法である。
【0114】
尚、上述の構成においては、マスタデータ全体を記憶装置104bにコピーしている際に記憶装置104bが故障した場合、コピー管理スイッチ303が記憶装置104の故障を検出できると仮定すると、コピー管理エントリ232を変更することで、無事な記憶装置104aへアクセス要求のルーティングが行われるようなフェイルセーフを行うことが可能である。
【0115】
コピー管理スイッチ303は、記憶装置104の故障をいくつかの方法で検出できる。例えば光ファイバを通信線として用いている場合、物理的な接続が切れることは、ポート111で光が消える形で検出できる。また記憶装置104bからのレスポンスにはエラー情報が含まれるため、ポート111においてレスポンスの内容を監視することによって、コピー管理スイッチ303が記憶装置104の故障を検出することも可能である。以下、フェイルセーフの例を説明する。
【0116】
記憶装置104bの故障を検出したコピー管理スイッチ303は、管理端末106に故障の発生を通知し、ユーザ等が管理端末106を介してコピー管理スイッチ303のコピー管理テーブル231を設定しなおす。例えば、図9の記憶装置104aが故障した場合、ユーザは、管理端末106を介してコピー管理スイッチ303のコピー管理エントリ232aを削除し、コピー管理エントリ232bのマスタLBA135bとコピーLBA139bを0にし、マスタLength136bを100000にする。
【0117】
これにより、コピー管理スイッチ303は、ホスト105から仮想記憶装置307へのリード要求を全て記憶装置104aにルーティングするようになる。第一及び第二の実施例でも同様のフェイルオーバ処理が可能である。
【0118】
また、図12の構成の場合は、送信したリード要求の結果がタイムアウトするか否かによって、ホスト105が選択するポートを切替えることでフェイルオーバを実現することができる。
【0119】
図13は、本発明の第4の実施形態を適用したコンピュータシステムの構成例を示す図である。本実施形態は、コピー管理スイッチ403a及び403bが、仮想スイッチ408を提供する点が第3の実施形態とは異なる。
【0120】
本実施形態におけるコピー管理スイッチ403の構成は第3の実施形態におけるコピー管理スイッチ103と同様であるが、コピー管理スイッチ403が有するメモリ1122に登録される情報等が、以下の点で第3の実施形態とは異なる。
【0121】
第一に、仮想アドレステーブル441に、第3の実施形態の仮想アドレステーブル341に加えて仮想ドメインアドレスを登録するエントリ446が追加される。エントリ446に登録される仮想ドメインアドレスは、仮想スイッチ408のSANドメインアドレスを示す。
【0122】
第二に、CPU1121がルーティングプロトコル処理プログラム422を実行して、エントリ446に登録された仮想ドメインアドレスで指定されるSANドメインアドレスを持つ仮想スイッチ408が接続されているという情報を他のスイッチと交換し、ルーティングテーブルを作成する点である。このとき、ルーティングの整合性を保つため、コピー管理スイッチ403aと仮想スイッチ408との間の接続コストとコピー管理スイッチ403bと仮想スイッチ408との間の接続コストは等しいように設定する。
【0123】
以下、本実施形態の処理の一連の流れを説明する。
【0124】
はじめに、システムの使用者や管理者が、コピー管理スイッチ403a、403bに接続された管理端末106を介して、記憶装置104aに格納されたマスタデータを記憶装置104bコピーする指示をコピー管理スイッチ403a(または403b)に行う。続けて、管理者等は、各コピー管理スイッチ403に登録された仮想アドレステーブル441とコピー管理テーブル231に情報を設定する。
【0125】
ここで、本実施形態では、コピー管理スイッチ403aのSANドメインアドレスが4、コピー管理スイッチ403bのSANドメインアドレスが5、仮想スイッチ408のSANドメインアドレスを8、記憶装置104aのSANアドレスが401、記憶装置104bのSANアドレスが501、仮想記憶装置307に割り当てるSANアドレスを801、WWPNを1234、WWNNを5678とし、マスタデータが記憶装置104aのLUN0、LBA0から始まる長さ100000の領域に格納されており、マスタデータの先頭から長さ50000の部分を記憶装置104bのLUN0、LBA0から始まる領域にコピーするものとする。
【0126】
また、ホスト105と各コピー管理スイッチ403との間の接続コストは以下のとおりであると仮定する。すなわち、ホスト105aに関しては、コピー管理スイッチ403bとの間の方がコピー管理スイッチ403aとの間より接続コストが小さく、ホスト105bに関しては、コピー管理スイッチ403aとの間の方がコピー管理スイッチ403bとの間より接続コストが小さい。
【0127】
ホスト105aが仮想記憶装置307にリード要求を発行すると、接続コストが最小となるルーティングによってリード要求はコピー管理スイッチ403bに到達し、その後は第3の実施形態と同様の処理が行われる。
【0128】
ホスト105bが仮想記憶装置307にリード要求を発行すると、リード要求はコピー管理スイッチ403aに到達し、第3の実施形態と同様の処理が行われる。
本実施形態により、ホスト105は、図12の構成のようにパスを選択しなくても、接続コストが小さいコピー管理スイッチ403にリード要求を送ることができる。これは、コピー管理スイッチ403a,403bと仮想スイッチ308の間の接続コストが等しいので、ホスト105から仮想スイッチ308のSANドメイン宛に送信されたフレームはホスト105の直近のコピー管理スイッチ403aないし403bにたどり着くからである。
【0129】
図14は、本発明の第5の実施形態を適用したコンピュータシステムの構成例を示す図である。本実施形態は、コピー管理スイッチ503が記憶装置104c及び104dを有する点が第一の実施形態と異なる。
【0130】
本実施形態においては、記憶装置104aがマスタデータを保持しており、ホスト105はマスタデータへリード要求を行う。また、本実施形態ではコピー管理スイッチ503がコピーデータを保持する。そして、ホスト105からマスタデータへのリード要求を受取ったコピー管理スイッチ503は、内部の記憶装置104c、104dに保持しているコピーデータを読み出して、ホスト105にリードデータを送信する。
【0131】
図15は、コピー管理スイッチ503の内部構成の具体例を示す図である。
コピー管理スイッチ503は、複数のポート5031及びポートプロセッサ5033を有するプロトコル変換部5032、ディスク制御部5035、ハードディスク5036、管理部5037及びこれらの構成部分を接続するスイッチ部5034を有する。ポートプロセッサ5033はCPU及びメモリを有し、管理部5037はCPU、メモリ及び記憶装置を有する。
【0132】
ディスク制御部5035は、ディスク制御部5035に接続された複数のハードディスクの記憶容量を一つ又は複数の論理的な記憶領域として他の装置に提供する。コピー管理スイッチ503は、自スイッチ503に含まれる複数のディスク制御部5035が提供する論理的な記憶領域をまとめて一つ又は複数の仮想的な記憶領域として、コピー管理スイッチ503に接続される装置に提供する。
【0133】
コピー管理スイッチ503は、ポート5031を介して、他のノードとコマンドやデータを送受信する。ポート5031を介してコマンド等を受信したプロトコル変換部5032は、受信したコマンドやデータのプロトコルを変換してスイッチ部5034に転送する。ここで、プロトコル変換部5032は、受信したコマンドがコピー管理スイッチ503の提供する仮想的な記憶領域に対するものか判別する。受信したコマンドが自記憶領域に対するものである場合、プロトコル変換部5032は、その記憶領域に対応するディスク制御部5035へコマンドを発行する。自記憶領域に対応しない場合、プロトコル変換部5032は、受け取ったフレームをそのままスイッチ部5034に転送する。
【0134】
コピー管理スイッチ503の提供する仮想的な記憶領域とディスク制御部5035が提供する論理的な記憶領域との対応関係を示す情報は管理部5037の記憶装置に格納される。またこの情報は、コピー管理スイッチ503の起動時に管理部5037のCPUによってポートプロセッサ5033が有するメモリに格納される。また、管理部5037は内部のメモリにネームデータベースを保持し、WWNN等の問い合わせに応答する処理を内部CPUにて実行する。
スイッチ部5034は、フレームのアドレス情報に基づきルーティング処理を行う。
【0135】
ディスク制御部5035は、提供する論理的な記憶領域と接続されている各ハードディスク5036が有する記憶領域との対応関係の情報を内部のメモリに保持している。ディスク制御部5035は、スイッチ部5034からコマンド(ここでは、フレームの内部にコマンドが格納されている)を受け取ると、メモリに保持された対応関係の情報を用いて、コマンドが指定する記憶領域に対応するハードディスク5036と、その内部での格納位置を決定する。そして対応するハードディスク5036へデータの読み出し等の命令を発行し、コマンドを処理する。
【0136】
尚、図15においてスイッチ部5034、ディスク管理部5035及び管理部5037が各々2個ずつ存在するのは、冗長性を持たせて信頼性を向上させるためであり、本発明においてこの構成が必須というわけでは無い。
【0137】
本実施形態のコピー管理スイッチ503において、プロトコル変換部5032のポートプロセッサ5033が有するメモリにアドレス変換処理プログラム126が格納される。アドレス変換処理プログラム126は、プロトコル変換部5032のポート5031がフレームを受信した場合、またフレームをスイッチ部5034から受信した場合にポートプロセッサ5033aで実行される。また、管理部5037内部のメモリには、第1の実施形態において説明したメモリ1122に格納される各プログラムが格納される。
【0138】
本実施形態のコンピュータシステムにおける処理の一連の流れを以下に示す。
まずホスト105は、記憶装置104aに保持されるマスタデータへリード要求を発行する。
【0139】
リード要求を受信したコピー管理スイッチ503のプロトコル変換部5032は、ポートプロセッサ5033においてアドレス変換処理プログラム126を実行し、じ受信したリード要求のフレームをコピーデータを格納した記憶領域へのリード要求のフレームに変換する。
【0140】
その後、プロトコル変換部5032は変換したリード要求の内容を確認する。本実施形態の場合、コピー管理スイッチ503の提供する記憶領域へのリード要求であるので、プロトコル変換部5032は、変換したリード要求のフレームをディスク管理部5035に対して送信する。
【0141】
スイッチ部5034を介してリード要求を受取ったディスク管理部5035は、受信したリード要求に従い、ハードディスク5036から指定されたデータを読み出し、読み出したリードデータをスイッチ部5034を介してプロトコル変換部5032へ送信する。
【0142】
リードデータを受信したプロトコル変換部5032は、ポートプロセッサ5033でアドレス変換処理プログラム126を実行し、リードデータの送信元を記憶装置104aのSANアドレスに変更し、その変更後のリードデータのフレームをポート5031を介してホスト105へ転送する。ホスト105は、リードデータを記憶装置104aから送信されたものとして受信する。
【0143】
このようにして、ホスト105から記憶装置104aに格納されたマスタデータへのリード要求は、コピー管理スイッチ503が提供する記憶領域に格納されたコピーデータを用いてコピー管理スイッチ503によって処理される。
【0144】
本実施形態では、コピー管理スイッチ503の提供する記憶領域をコピーデータの保持に用いた。しかし、本実施形態のコピー管理スイッチ503は、上述した第一から第四の実施形態で説明したコピー管理スイッチ103と同様の使用方法に使用することができる。
【0145】
次に、本発明の第六の実施形態について説明する。上述した第1〜5の実施形態では、マスタデータの全体又は決められた一部をコピーしていた。また、データのコピーは、管理者等の指示に基づいて、コピー管理テーブル131、231の設定と共に実行されていた。しかし、ここで説明する第6の実施形態では、後述するコピー管理スイッチ703が、ホスト105からのリード要求に応じて、マスタデータを格納した記憶装置104aから指定された記憶装置104bにリード要求の対象となったデータをコピーする。このように動作することで、記憶装置104bが有する記憶容量を効率よく使用出来る。
【0146】
第六の実施形態のコンピュータシステムの構成は、コピー管理スイッチ703がコピー管理スイッチ103と置き換わった以外は第1の実施形態と同じである。
【0147】
本実施形態では、コピー管理スイッチ703のメモリ1122、1142に格納される情報等が、第一の実施形態と以下の点で異なる。
第一に、CPU1121が初期化処理プログラム721を実行して、後述するコピー管理テーブル731の各コピー管理エントリ732のキャッシュインデックス737に対応するキャッシュテーブル741を作成する点である。
【0148】
第二に、CPU1121が端末からの要求処理プログラム722を実行して、コピー管理テーブル731の内容の変更に伴うキャッシュインデックス737の追加・削除に応じて、キャッシュテーブル741を追加・削除する処理を行う点である。
第三に、CPU1141がアドレス変換処理プログラム726を実行して、ポート111がフレームを受信した際に、リード要求に含まれるアドレス情報を判定してキャッシュ処理プログラム727の実行を制御部112に指示する点である。さらにCPU1141は、リードデータなどのアドレス情報の変換を行う。処理手順の詳細は後述する。
【0149】
第四に、CPU1121がキャッシュ処理プログラム727を実行し、キャッシュテーブル741を用いて、マスタデータへのリード要求に対応するコピーデータが存在するかどうかを判定し、存在するならばコピーデータが格納された記憶装置104(ここでは記憶装置104b)へリード要求を発行する。一方、コピーデータが存在しないならば、CPU1121は、リード要求が指定するマスタデータを記憶装置104aから記憶装置104bにコピーし、コピーデータをホスト105に送信する点である。処理手順の詳細は後述する。
【0150】
図16は、コピー管理テーブル731の構造を示す図である。コピー管理テーブル731は複数のコピー管理エントリ732を有する。各コピー管理エントリ732は、第一の実施形態とは異なり、マスタデータの格納位置とコピー先の格納位置の対応関係をSANアドレス及びLUNで管理する。具体的には、各コピー管理エントリ732は、マスタSANアドレスを登録するエントリ733、マスタLUNを登録するエントリ734、コピーSANアドレスを登録するエントリ735、コピーLUNを登録するエントリ736及びキャッシュインデックスの情報を登録するエントリ737から構成される。つまり、コピー管理エントリ732は、マスタデータが格納された記憶装置104a及びそのLUN並びにコピーデータの格納に用いる記憶装置104b及びそのLUNを指定する。
尚、キャッシュインデックスは、後述するキャッシュテーブル741を指定する為の情報である。
【0151】
図17は、キャッシュテーブル741の構造の一例を示す図である。キャッシュテーブル741は、コピー管理テーブル731で使用されているコピー管理エントリ732の数だけ存在し、エントリ737に登録されるキャッシュインデックスによってコピー管理テーブル731と関連付けられている。各キャッシュテーブル741は複数のキャッシュエントリ742を有する。各キャッシュテーブル741のキャッシュエントリ742の数はメモリ1122の容量などから設計時に決定されている。
【0152】
キャッシュエントリ742は、マスタLBAを登録するエントリ743、コピーLBAを登録するエントリ744、マスタLengthを登録するエントリ745、非アクセスカウンタを登録するエントリ746及び有効フラグを登録するエントリ747を有する。非アクセスカウンタはキャッシュ処理プログラム727で用いられるカウンタであり、その使われ方は後述する。有効フラグはその有効フラグが所属するキャッシュエントリ742が有効か無効かを示し、例えば1ならば有効で0なら無効であることを示す。
【0153】
つまり有効な(エントリ747に1が登録されている)キャッシュエントリ742は、マスタLBAから始まり長さがマスタLengthである記憶装置104aの記憶領域が、コピーLBAから始まる記憶装置104bの記憶領域にコピーされている事を示す。
【0154】
図18は、本実施形態におけるアドレス変換部114で実行される処理手順を示すフローチャートである。尚、本処理は、CPU1141がアドレス変換処理プログラム726を実行することによって行われる。
まず、ポート111でフレームを受け取ると、CPU1141は、アドレス変換処理プログラム726の実行を開始する(ステップ751)。
【0155】
次に、CPU1141は、受信したフレームの内容がリード要求か判定する(ステップ752)。受信したフレームの内容がリード要求である場合、CPU1141は、リード要求で要求されるデータが、コピー対象(すなわちマスタデータ)となっている記憶装置104のLUNに格納されたデータであるかを判定する。具体的には、CPU1141は、リード要求の送信先SANアドレス及びLUNが、エントリ733及び734に登録された値と一致するコピー管理エントリ732を探す(ステップ753)。
【0156】
ステップ753で条件を満たすコピー管理エントリ732が見つかった場合、CPU1141は、制御部112に対してキャッシュ処理プログラム727の実行を指示する。この際、CPU1141は、受信したフレームとステップ753で選択したコピー管理エントリ732に登録された情報を制御部112に送信する(ステップ754)。ステップ754での処理の終了後、CPU1141は処理を終了する。
【0157】
一方、ステップ752で受信したフレームの内容がリード要求ではないと判断された場合、CPU1141は、フレームがリードデータ、またはレスポンスであるか判定する(ステップ755)。フレームの内容がリードデータ又はレスポンスであった場合、CPU1141は、受信したフレームがコピーデータが格納された記憶装置104(ここでは104b)から送信されたものか判定する。具体的には、フレームの送信元がエントリ735に登録された値と一致するコピー管理エントリ732がコピー管理テーブル731に存在するか判定する(ステップ756)。
【0158】
ステップ756で条件を満たすコピー管理エントリ732がコピー管理テーブル731に存在する場合、CPU1141は、ステップ756で見つけたコピー管理エントリ732を用いて、フレームの送信元をエントリ733に登録されたマスタSANアドレスに変更する(ステップ757)。
【0159】
ステップ753でリード要求であるフレームの送信先がコピー管理テーブル731に存在しない場合、ステップ755でフレームがリードデータでもレスポンスでもないと判断された場合及びステップ756でフレームの送信元がコピー管理テーブル731に存在しなかった場合には、CPU1141は、スイッチング処理部115に処理したフレームを転送して処理を終了する(ステップ758)。
【0160】
図19は、ステップ754におけるアドレス変換部114の指示によって制御部112で実行される処理手順を説明する図である。本処理は、制御部112がキャッシュ処理プログラム727を実行することで行われる。
【0161】
アドレス変換部114の指示を受けた制御部112は、アドレス変換部114から受信したフレームの内容であるリード要求のLBA及びLengthで指定されるマスタデータを格納する記憶装置104aの記憶領域が、コピーデータが格納される記憶装置104bに格納されているかどうかを判定する。具体的には、CPU1121は、アドレス変換部114から転送されたコピー管理エントリ732のエントリ737に登録された値で指定されるキャッシュテーブル741に、リード要求のLBA及びLengthで指定される領域がエントリ743及びエントリ745で指定される領域に含まれ、かつ有効フラグが1であるキャッシュエントリ742が存在するか判定する(ステップ761)。
【0162】
ステップ761の条件を満たすキャッシュエントリ742が存在する場合、CPU1121は、ステップ761で使用されたキャッシュテーブル741に含まれる有効なキャッシュエントリ742の非アクセスカウンタ746を操作する。具体的には、CPU1121は、ステップ761の条件を満たすキャッシュエントリ742のエントリ746の値を0にセットし、他の全ての有効なキャッシュエントリ742のエントリ746に登録された値を1増やす(ステップ762)。
【0163】
その後、CPU1121は、コピーデータへのリード要求を生成する。具体的には、CPU1121は、アドレス変換部114から送信されたコピー管理エントリ732のエントリ735及び736に登録された値を各々送信先SANアドレスとLUNとする。更に、CPU1121は、ステップ761で見つかったキャッシュエントリ742に登録された情報を用いて、LBAを(リード要求で指定されるLBA+エントリ744に登録された値−エントリ743に登録された値)に、Lengthをエントリ745に登録された値にする(ステップ763)。その後、CPU1121は、スイッチング処理部115に処理したフレームを送信する(ステップ764)。
【0164】
一方、ステップ761の条件を満たすキャッシュエントリ742が存在しない場合、CPU1121は、コピー管理エントリ732が指定するコピーデータを格納する記憶装置104bの記憶領域にリード要求が指定するLengthのデータを格納できる分の空き領域が存在するかを判定する。また、CPU1121は、キャッシュテーブル741に、使われていないキャッシュエントリ742が存在するかを判定する。具体的には、CPU1121は、キャッシュテーブル741の有効な全てのキャッシュエントリ742の情報を用いて、記憶装置104bで使用されている記憶領域を判別し、それ以外の記憶領域でリード要求に含まれるLengthの値以上連続している記憶領域を記憶装置104bから探す(ステップ765)。
【0165】
有効ないずれのキャッシュエントリ742にも使用されておらず、リード要求のLength以上の長さの記憶領域が記憶装置104bに見つからない場合、もしくは全てのキャッシュエントリ742が有効なため、キャッシュエントリ742の更新が行えない場合、CPU1121は、キャッシュテーブル741が有する有効なキャッシュエントリ742のうち1つを削除すなわち無効化して記憶領域の空き領域を広げる。具体的には、CPU1121は、有効なキャッシュエントリ742の中で最もエントリ746に登録された値が大きいキャッシュエントリ742のエントリ747の値を0にする(ステップ766)。その後、CPU1121は、ステップ765の処理を繰り返す。
【0166】
有効ないずれのキャッシュエントリ742にも使用されておらず、リード要求のLength以上の長さの記憶領域が記憶装置104bに見つかり、さらに無効なキャッシュエントリ742が1つでもある場合、見つかったキャッシュエントリ742を更新し、リード要求が指定するマスタデータと、見つかった記憶装置104bの記憶領域の対応を登録する。そのため、まずマスタデータのコピーを行う。はじめに該当する記憶領域が見つかり、かつ無効なキャッシュエントリ742が1つでも見つかった場合、CPU1121は、リード要求で指定されるマスタデータを、マスタデータを保持する記憶装置104aから読み出す。具体的には、送信元を制御部112のSANアドレスにしたマスタデータのリード要求を作成し、スイッチング処理部115に送信する。その後、CPU1121は、マスタデータを保持する記憶装置から送られてくるリードデータを、メモリ1122に格納する(ステップ767)。
【0167】
その後、CPU1121は、メモリ1122に格納されたマスタデータを、ステップ765で見つけた記憶装置104bの記憶領域に転送する(ステップ768)。その後、CPU1121は、キャッシュテーブル741を更新する。具体的には、CPU1121は、ステップ765で見つかった無効なキャッシュエントリ742について、メモリ1122から転送されたデータが格納された記憶領域に対応するコピーLBAをエントリ744に、そのマスタデータの記憶領域に対応するマスタLBA及びマスタLengthをエントリ743及び745に登録し、かつそのキャッシュエントリ742のエントリ746の値を0、エントリ747の値を1にセットする(ステップ769)。その後、CPU1121は、ステップ763以降の処理を行う。
【0168】
本実施形態の一連の動作をまとめると、次のようになる。
【0169】
はじめに、システムの使用者や管理者が、コピー管理スイッチ703に接続された管理端末106を介して、記憶装置104aのあるLUNで指定される記憶領域に格納されたマスタデータを記憶装置104bのあるLUNで指定される記憶領域にコピーする設定をコピー管理テーブル731に行う。そして、この時点では、データは記憶装置104bにコピーされていない状態とする。つまり、コピー管理テーブル731のコピー管理エントリ732は存在するが、そのコピー管理エントリ732のキャッシュインデックス737に対応するキャッシュテーブル741のキャッシュエントリ742は全て無効になっている。これが初期状態となる。
【0170】
初期状態においてホスト105が記憶装置104aに保持されているマスタデータへのリード要求を発行すると、リード要求のフレームがコピー管理スイッチ703に到達する。
【0171】
フレームの受信を確認すると、アドレス変換部114はアドレス変換処理プログラム726を起動する。ここでは、アドレス変換部114は、リード要求がマスタデータへの要求であると判定し、制御部112へキャッシュ処理プログラム727の実行を指示する。
【0172】
指示を受けた制御部112は、リード要求で指定されるデータに対応するキャッシュエントリ742を探す。この時点でデータは一切記憶装置104bに転送されていないので、キャッシュエントリ742は見つからない。そこで制御部112は、記憶装置104aに対してリード要求を発行し、そのリードデータを記憶装置104bに転送する。また制御部112は、記憶装置104bに転送されたデータに対応するキャッシュエントリ742をキャッシュテーブル741に登録する。
【0173】
更に、制御部112は、受信したリード要求のフレームからホスト105を送信元にしたコピーデータへのリード要求のフレームを生成し、そのフレームをスイッチング処理部115に転送する。
【0174】
スイッチング処理部115はフレームを記憶装置104bに転送する。フレームを受取った記憶装置104bは、ホスト105を送信先としたリードデータのフレームをコピー管理スイッチ703に経由でホスト105へ送信する。
【0175】
リードデータのフレームを受取ったアドレス変換部114は、この場合、受信したフレームのリードデータがコピーデータだと判定する。アドレス変換部114は、リードデータの送信元を記憶装置104aに変更し、スイッチング処理部115に転送する。
スイッチング処理部115はリードデータをホスト105に転送する。リードデータは記憶装置104aから送信されたデータとしてホスト105に到達する。
【0176】
以上の流れにより、ホスト105からのリード要求によって記憶装置104bにコピーが作成され、キャッシュエントリ742がキャッシュテーブル741に作成される。
【0177】
その後、ホスト105が再び同じマスタデータへリード要求を発行すると、リード要求のフレームを受信した制御部112は、当該マスタデータに対応するキャッシュエントリ742を見つけることが出来る。この場合、制御部112は、リード要求のフレームに基づいてホスト105を送信元にしたコピーデータへのリード要求を生成し、スイッチング処理部115に転送する。
【0178】
このように、2度目のリード要求は記憶装置104bに格納されたコピーデータだけを用いて処理される。このためリード要求の処理が高速化される。また、本実施形態においては、実際にホストがアクセスするマスタデータのみがコピーされる。更に、非アクセスカウンタ746を用いて最も長い間アクセスされないコピーデータがキャッシュエントリ742から削除される。つまり、ホストからのアクセス頻度が高いデータのみが記憶装置104bに格納されることとなる。したがって、本実施形態では、記憶装置104bの記憶容量を効率的に使用できる。
【0179】
本実施形態でキャッシュエントリ742を削除するために用いた方法は、一般にLRU(Least Recently Used)と呼ばれる方法であるが、他の方法でも良い。また、本実施形態では、コピー管理装置は、ホスト105からのリード要求で指定されるマスタデータを記憶装置104aから読み出し、そのリードデータをメモリ1122に保存してからコピーデータを格納する記憶装置104bに転送した。しかし、ホスト105からのリード要求が指定するマスタデータだけでなく、その前後を含むデータを記憶装置104aから読み出しても良い。
【0180】
例えば、ホスト105からのリード要求が指定する記憶領域に対して、同じ先頭位置から始まりLengthをより長くした記憶領域からデータを読み出すとしても良い。こうすると、ホスト105が連続した領域へリード要求を行う場合に、次回のリード要求が記憶装置104bに存在する可能性が高くなる。また、SANアドレスとLUNで指定される記憶領域全体を読み出しても良い。
【0181】
また、記憶装置104aがSCSIのEXTENDED COPYコマンドを処理できる場合は、記憶装置104aに対するデータのリード要求を、記憶装置104aから記憶装置104bへのデータのコピー要求に置き換えても良い。さらに、マスタデータをコピーデータを格納する記憶装置104bに転送するための専用のバッファメモリを制御部112に用意しても良い。さらに、コピーを保持する記憶装置104bにリードデータを転送しながら同時にホスト105にリードデータを送信しても良い。
【0182】
【発明の効果】
本発明によれば、SANに接続された記憶装置に保持されたデータへのアクセスを高速化することができる。
また本発明によればSANを流れるデータを減らすことができるので、SANの負荷を減らすことができる。
【図面の簡単な説明】
【図1】本発明を適用したコンピュータシステムの第一の実施形態の構成を示す図である。
【図2】第1の実施形態のコピー管理スイッチの構成を示す図である。
【図3】第1の実施形態のコピー管理スイッチのメモリ構成を示す図である。
【図4】第1の実施形態のコピー管理テーブルの構成を示す図である。
【図5】第1の実施形態のアドレス変換処理のフローチャートである。
【図6】本発明を適用したコンピュータシステムの第二の実施形態の構成を示す図である。
【図7】第2の実施形態の代理アドレステーブルの構成を示す図である。
【図8】第2の実施形態のアドレス変換処理のフローチャートである。
【図9】本発明を適用したコンピュータシステムの第三の実施形態の構成を示す図である。
【図10】第3の実施形態の仮想アドレステーブルの構成を示す図である。
【図11】第3の実施形態におけるコピー管理テーブルの例を示す図である。
【図12】第3の実施形態においてコピー管理スイッチが複数ある構成例を示す図である。
【図13】本発明を適用したコンピュータシステムの第4の実施形態の構成を示す図である。
【図14】本発明を適用したコンピュータシステムの第5の実施形態の構成を示す図である。
【図15】コピー管理スイッチの構成例を示す図である。
【図16】第6の実施形態のコピー管理テーブルの構成を示す図である。
【図17】第6の実施形態のキャッシュテーブルの構成を示す図である。
【図18】第6の実施形態のアドレス変換処理のフローチャートである。
【図19】第6の実施形態のキャッシュ処理のフローチャートである。
【符号の説明】
101…ストレージエリアネットワーク、102…スイッチ、103…コピー管理スイッチ、104…記憶装置、105…ホスト、106…管理端末。
Claims (12)
- 計算機と、
前記計算機とネットワークを介して接続されるスイッチと、
前記スイッチとネットワークを介して接続される第一の記憶装置と、
前記スイッチとネットワークを介して接続される第二の記憶装置とを有し、
前記スイッチは、あらかじめ前記第一の記憶装置に格納されたデータを前記第二の記憶装置に転送し、
前記計算機は、前記第一の記憶装置に格納された第一のデータに対する第一の読み出し要求を発行し、
前記第二の記憶装置は、前記第一のデータの複製である第二のデータを有し、
前記スイッチは、前記第二の記憶装置が前記第二のデータを有するか否かの情報を有し、かつ、前記計算機から前記第一の読み出し要求を受信した場合、前記第一の読み出し要求に含まれる第一のアドレス情報を前記第二の記憶装置に対する第二のアドレス情報に変更し、前記変更した第二のアドレス情報を含む第二の読み出し要求を前記第二の記憶装置に送信し、
前記第二の記憶装置は、前記第二の読み出し要求に対応する前記第二のデータを前記スイッチに転送し、
前記第二のデータを受信した前記スイッチは、前記受信した前記第二のデータを、そのデータの送信元アドレスを前記第二のアドレス情報から前記第一のアドレス情報に変更して前記計算機に転送することを特徴とするネットワークシステム。 - 前記スイッチに接続される第二の計算機を有し、
前記スイッチは、前記第二の計算機からの指示に基づいて、前記第一の記憶装置に格納された前記第一のデータを前記第二の記憶装置へ転送することを特徴とする請求項1記載のネットワークシステム。 - 計算機と、
前記計算機とネットワークを介して接続されるスイッチと、
前記スイッチとネットワークを介して接続される第一の記憶装置と、
前記スイッチとネットワークを介して接続される第二の記憶装置とを有し、
前記スイッチは、あらかじめ前記第一の記憶装置に格納された第一のデータを前記第二の記憶装置に転送し、
前記スイッチは、前記計算機に前記第一の記憶装置に対応する仮想的な第三の記憶装置を提供し、
前記計算機は、前記第三の記憶装置に対する第三の読み出し要求を発行し、
前記第二の記憶装置は、前記第一のデータの複製である第二のデータを有し、
前記スイッチは、前記第二の記憶装置が前記第二のデータを有するか否かの情報を有し、かつ、前記計算機から前記第三の読み出し要求を受信した場合、前記第三の読み出し要求に含まれる第三のアドレス情報を前記第二の記憶装置に対する第二のアドレス情報に変更し、前記変更した第二のアドレス情報を含む第二の読み出し要求を前記第二の記憶装置に送信し、
前記第二の記憶装置は、前記第二の読み出し要求に対応する前記第二のデータを前記スイッチに転送し、
前記第二のデータを受信した前記スイッチは、前記受信した前記第二のデータを、そのデータの送信元アドレスを前記第二のアドレス情報から前記第三のアドレス情報に変更して前記計算機に転送することを特徴とするネットワークシステム。 - 前記仮想的な第三の記憶装置には、前記第二の記憶装置と同じドメインアドレスが割り振られていることを特徴とする請求項3記載のネットワークシステム。
- 計算機と、
前記計算機とネットワークを介して接続されるスイッチと、
前記スイッチとネットワークを介して接続される第一の記憶装置と、
前記スイッチとネットワークを介して接続される第二の記憶装置とを有し、
前記第二の記憶装置は、前記計算機及び前記第一の記憶装置とネットワークを介して接続されるスイッチ部と前記スイッチ部と内部ネットワークを介して接続される記憶部とを有し、
前記スイッチ部は、あらかじめ前記第一の記憶装置に格納された第一のデータを前記記憶部に転送し、
前記計算機は、前記第一の記憶装置に格納された前記第一のデータに対する第一の読み出し要求を発行し、
前記記憶部は、前記第一のデータの複製である第二のデータを有し、
前記スイッチは、前記記憶部が前記第二のデータを有するか否かの情報を有し、かつ、前記計算機から前記第一の読み出し要求を受信した場合、前記第一の読み出し要求に含まれる第一のアドレス情報を前記記憶部に対する第二のアドレス情報に変更し、前記変更した第二のアドレス情報を含む第二の読み出し要求を前記記憶部に送信し、
前記記憶部は、前記受信した第二の読み出し要求に対応する前記第二のデータを前記スイッチ部に転送し、
前記第二のデータを受信した前記スイッチ部は、前記受信した前記第二のデータを、そのデータの送信元アドレスを前記第二のアドレス情報から前記第一のアドレス情報に変更して前記計算機に転送することを特徴とするネットワークシステム。 - 計算機と、
前記計算機とネットワークを介して接続されるスイッチと、
前記スイッチとネットワークを介して接続される第一の記憶装置と、
前記スイッチとネットワークを介して接続される第二の記憶装置とを有し、
前記計算機は、前記第一の記憶装置に格納された第一のデータに対する第一の読み出し要求を発行し、
前記スイッチは、前記第二の記憶装置が前記第二のデータを有するか否かの情報を有し、かつ、前記計算機から前記第一の読み出し要求を受信したときに、前記第一のデータが前記第二の記憶装置に格納されている場合には、前記第一の読み出し要求に含まれる第一のアドレス情報を前記第二の記憶装置に対する第二のアドレス情報に変更し、前記変更した第二のアドレス情報を含む第二の読み出し要求を前記第二の記憶装置に送信し、前記第一のデータが前記第二の記憶装置に格納されていない場合には、前記第一の記憶装置へ前記第一の読み出し要求を変換せずに送信し、
前記第二の記憶装置は、前記第二の読み出し要求に対応する前記第二のデータを前記スイッチに転送し、
前記第二のデータを受信した前記スイッチは、前記受信した前記第二のデータを、そのデータの送信元アドレスを前記第二のアドレス情報から前記第一のアドレス情報に変更して前記計算機に転送することを特徴とするネットワークシステム。 - 前記スイッチは、前記第一の記憶装置に格納された第一のデータが前記第二の記憶装置に格納されていない場合に、前記第一の読み出し要求に応じて前記第一の記憶装置から転送された前記第一のデータを前記第二の記憶装置へ転送して前記情報を更新することを特徴とする請求項6記載のネットワークシステム。
- 前記スイッチは、前記第一の記憶装置から転送された第一のデータを前記第二の記憶装置へ転送する際に、前記第二の記憶装置に前記第一のデータを格納するだけの記憶容量が存在しない場合には、前記第二の記憶装置に格納された他のデータのうち、前記計算機に使用される頻度が少ないデータを削除して、前記第一のデータを前記第二の記憶装置へ転送し、前記情報を更新することを特徴とする請求項7記載のネットワークシステム。
- 前記第一のアドレス情報は、送信先アドレス、LUN、LBAであることを特徴とする請求項1、5または6のうちいずれか1項記載のネットワークシステム。
- 計算機、第一の記憶装置及び第二の記憶装置と接続されるスイッチであって、外部装置と接続されるポート部と、
前記ポート部が受信したコマンドやデータを振り分ける変換部と、
前記コマンドや前記データをアドレス情報に基づき中継するスイッチ部とを有し、
前記変換部は、前記第一の記憶装置に格納された第一のデータを前記第二の記憶装置へ予め転送し、前記計算機から、前記第一の記憶装置に格納された第一のデータに対する第一のアクセス要求を受信したときに、前記第一のアクセス要求に含まれる第一のアドレス情報を前記第二の記憶装置に対する第二のアドレス情報に変更して、前記第一のアクセス要求を前記第二の記憶装置への第二のアクセス要求に変換し、
前記スイッチ部は、前記第二のアドレス情報を含む第二のアクセス要求を前記ポートを介して前記第二の記憶装置に送信し、前記第二の記憶装置から、前記第二のアクセス要求に対応する前記第二のデータを受信し、
前記変換部は、前記スイッチ部が前記第二のデータを受信したときに、前記受信した前記第二のデータを、その送信元アドレスを前記第二のアドレス情報から前記第一のアドレス情報に変更して前記第一のデータとし、
前記スイッチ部は、送信元アドレスが前記第二のアドレス情報から前記第一のアドレス情報に変更された前記第一のデータを前記ポートを介して前記計算機に転送することを特徴とするスイッチ。 - 請求項10記載のスイッチであって、第二の計算機が接続されており、前記第二の計算機の指示に従って、前記変換部は、前記第一の記憶装置に格納された第一のデータを前記第二の記憶装置へ転送することを特徴とするスイッチ。
- 前記第一のアドレス情報は、送信先アドレス、LUN、LBAであることを特徴とする請求項10記載のスイッチ。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003172770A JP4278445B2 (ja) | 2003-06-18 | 2003-06-18 | ネットワークシステム及びスイッチ |
EP20030018489 EP1489524B1 (en) | 2003-06-18 | 2003-08-14 | Storage area network with a cache server |
US10/646,036 US7124169B2 (en) | 2003-06-18 | 2003-08-22 | Network system and its switches |
US11/407,167 US20060187908A1 (en) | 2003-06-18 | 2006-04-18 | Network system and its switches |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003172770A JP4278445B2 (ja) | 2003-06-18 | 2003-06-18 | ネットワークシステム及びスイッチ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005010969A JP2005010969A (ja) | 2005-01-13 |
JP4278445B2 true JP4278445B2 (ja) | 2009-06-17 |
Family
ID=33410941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003172770A Expired - Fee Related JP4278445B2 (ja) | 2003-06-18 | 2003-06-18 | ネットワークシステム及びスイッチ |
Country Status (3)
Country | Link |
---|---|
US (2) | US7124169B2 (ja) |
EP (1) | EP1489524B1 (ja) |
JP (1) | JP4278445B2 (ja) |
Families Citing this family (133)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7334046B1 (en) | 2002-08-05 | 2008-02-19 | Qlogic, Corporation | System and method for optimizing frame routing in a network |
US7397768B1 (en) | 2002-09-11 | 2008-07-08 | Qlogic, Corporation | Zone management in a multi-module fibre channel switch |
US8015266B1 (en) * | 2003-02-07 | 2011-09-06 | Netapp, Inc. | System and method for providing persistent node names |
JP2005018159A (ja) * | 2003-06-23 | 2005-01-20 | Fujitsu Ltd | ストレージシステム構築支援装置、ストレージシステム構築支援方法、およびストレージシステム構築支援プログラム |
US7646767B2 (en) | 2003-07-21 | 2010-01-12 | Qlogic, Corporation | Method and system for programmable data dependant network routing |
US7792115B2 (en) | 2003-07-21 | 2010-09-07 | Qlogic, Corporation | Method and system for routing and filtering network data packets in fibre channel systems |
US7894348B2 (en) | 2003-07-21 | 2011-02-22 | Qlogic, Corporation | Method and system for congestion control in a fibre channel switch |
US7684401B2 (en) | 2003-07-21 | 2010-03-23 | Qlogic, Corporation | Method and system for using extended fabric features with fibre channel switch elements |
US7352701B1 (en) | 2003-09-19 | 2008-04-01 | Qlogic, Corporation | Buffer to buffer credit recovery for in-line fibre channel credit extension devices |
US7966294B1 (en) * | 2004-01-08 | 2011-06-21 | Netapp, Inc. | User interface system for a clustered storage system |
US20100005531A1 (en) * | 2004-12-23 | 2010-01-07 | Kenneth Largman | Isolated multiplexed multi-dimensional processing in a virtual processing space having virus, spyware, and hacker protection features |
US7340167B2 (en) | 2004-04-23 | 2008-03-04 | Qlogic, Corporation | Fibre channel transparent switch for mixed switch fabrics |
US7930377B2 (en) | 2004-04-23 | 2011-04-19 | Qlogic, Corporation | Method and system for using boot servers in networks |
US7404020B2 (en) | 2004-07-20 | 2008-07-22 | Qlogic, Corporation | Integrated fibre channel fabric controller |
US8295299B2 (en) | 2004-10-01 | 2012-10-23 | Qlogic, Corporation | High speed fibre channel switch element |
US7411958B2 (en) * | 2004-10-01 | 2008-08-12 | Qlogic, Corporation | Method and system for transferring data directly between storage devices in a storage area network |
CN100342352C (zh) * | 2005-03-14 | 2007-10-10 | 北京邦诺存储科技有限公司 | 一种可扩充的高速存储网络缓存系统 |
US20060248194A1 (en) * | 2005-03-18 | 2006-11-02 | Riverbed Technology, Inc. | Connection forwarding |
JP4332126B2 (ja) | 2005-03-24 | 2009-09-16 | 富士通株式会社 | キャッシング制御プログラム、キャッシング制御装置およびキャッシング制御方法 |
AU2006239882B2 (en) | 2005-04-25 | 2009-10-29 | Network Appliance, Inc. | System and method for caching network file systems |
US7500134B2 (en) * | 2005-12-27 | 2009-03-03 | Emc Corporation | Virtual array failover |
US7697554B1 (en) | 2005-12-27 | 2010-04-13 | Emc Corporation | On-line data migration of a logical/virtual storage array by replacing virtual names |
US7685395B1 (en) | 2005-12-27 | 2010-03-23 | Emc Corporation | Spanning virtual arrays across multiple physical storage arrays |
US9348530B2 (en) * | 2005-12-27 | 2016-05-24 | Emc Corporation | Presentation of virtual arrays using n-port ID virtualization |
US7697515B2 (en) * | 2005-12-27 | 2010-04-13 | Emc Corporation | On-line data migration of a logical/virtual storage array |
JP4929808B2 (ja) * | 2006-04-13 | 2012-05-09 | 富士通株式会社 | ネットワーク機器接続装置およびネットワーク機器接続方法 |
US8619771B2 (en) | 2009-09-30 | 2013-12-31 | Vmware, Inc. | Private allocated networks over shared communications infrastructure |
US8892706B1 (en) | 2010-06-21 | 2014-11-18 | Vmware, Inc. | Private ethernet overlay networks over a shared ethernet in a virtual environment |
US8924524B2 (en) | 2009-07-27 | 2014-12-30 | Vmware, Inc. | Automated network configuration of virtual machines in a virtual lab data environment |
US8452928B1 (en) | 2006-06-29 | 2013-05-28 | Emc Corporation | Virtual array non-disruptive migration of extended storage functionality |
US8533408B1 (en) | 2006-06-29 | 2013-09-10 | Emc Corporation | Consolidating N-storage arrays into one storage array using virtual array non-disruptive data migration |
US7757059B1 (en) | 2006-06-29 | 2010-07-13 | Emc Corporation | Virtual array non-disruptive management data migration |
US8539177B1 (en) | 2006-06-29 | 2013-09-17 | Emc Corporation | Partitioning of a storage array into N-storage arrays using virtual array non-disruptive data migration |
US8583861B1 (en) | 2006-06-29 | 2013-11-12 | Emc Corporation | Presentation of management functionality of virtual arrays |
JP2008158733A (ja) * | 2006-12-22 | 2008-07-10 | Kddi Corp | ストレージエリアネットワークにおけるキャッシュ制御方法、スイッチ装置及びプログラム |
US9098211B1 (en) | 2007-06-29 | 2015-08-04 | Emc Corporation | System and method of non-disruptive data migration between a full storage array and one or more virtual arrays |
US9063896B1 (en) | 2007-06-29 | 2015-06-23 | Emc Corporation | System and method of non-disruptive data migration between virtual arrays of heterogeneous storage arrays |
US7836332B2 (en) * | 2007-07-18 | 2010-11-16 | Hitachi, Ltd. | Method and apparatus for managing virtual ports on storage systems |
US7970903B2 (en) * | 2007-08-20 | 2011-06-28 | Hitachi, Ltd. | Storage and server provisioning for virtualized and geographically dispersed data centers |
CN104113433B (zh) | 2007-09-26 | 2018-04-10 | Nicira股份有限公司 | 管理和保护网络的网络操作系统 |
JP5164628B2 (ja) * | 2008-03-24 | 2013-03-21 | 株式会社日立製作所 | ネットワークスイッチ装置、サーバシステム及びサーバシステムにおけるサーバ移送方法 |
US8195774B2 (en) | 2008-05-23 | 2012-06-05 | Vmware, Inc. | Distributed virtual switch for virtualized computer systems |
US8341308B2 (en) | 2008-06-09 | 2012-12-25 | International Business Machines Corporation | Method and apparatus for a fibre channel N-port ID virtualization protocol |
JP4576449B2 (ja) * | 2008-08-29 | 2010-11-10 | 富士通株式会社 | スイッチ装置およびコピー制御方法 |
US9525647B2 (en) | 2010-07-06 | 2016-12-20 | Nicira, Inc. | Network control apparatus and method for creating and modifying logical switching elements |
US8718070B2 (en) | 2010-07-06 | 2014-05-06 | Nicira, Inc. | Distributed network virtualization apparatus and method |
JP5505380B2 (ja) * | 2011-07-11 | 2014-05-28 | 富士通株式会社 | 中継装置及び中継方法 |
US9571386B2 (en) | 2013-07-08 | 2017-02-14 | Nicira, Inc. | Hybrid packet processing |
US9344349B2 (en) | 2013-07-12 | 2016-05-17 | Nicira, Inc. | Tracing network packets by a cluster of network controllers |
US9282019B2 (en) | 2013-07-12 | 2016-03-08 | Nicira, Inc. | Tracing logical network packets through physical network |
US9407580B2 (en) | 2013-07-12 | 2016-08-02 | Nicira, Inc. | Maintaining data stored with a packet |
US9426060B2 (en) | 2013-08-07 | 2016-08-23 | International Business Machines Corporation | Software defined network (SDN) switch clusters having layer-3 distributed router functionality |
US9952885B2 (en) | 2013-08-14 | 2018-04-24 | Nicira, Inc. | Generation of configuration files for a DHCP module executing within a virtualized container |
US9887960B2 (en) | 2013-08-14 | 2018-02-06 | Nicira, Inc. | Providing services for logical networks |
US9577845B2 (en) | 2013-09-04 | 2017-02-21 | Nicira, Inc. | Multiple active L3 gateways for logical networks |
US9503371B2 (en) | 2013-09-04 | 2016-11-22 | Nicira, Inc. | High availability L3 gateways for logical networks |
US9674087B2 (en) | 2013-09-15 | 2017-06-06 | Nicira, Inc. | Performing a multi-stage lookup to classify packets |
US9602398B2 (en) | 2013-09-15 | 2017-03-21 | Nicira, Inc. | Dynamically generating flows with wildcard fields |
US20150098475A1 (en) * | 2013-10-09 | 2015-04-09 | International Business Machines Corporation | Host table management in software defined network (sdn) switch clusters having layer-3 distributed router functionality |
US9785455B2 (en) | 2013-10-13 | 2017-10-10 | Nicira, Inc. | Logical router |
US10063458B2 (en) | 2013-10-13 | 2018-08-28 | Nicira, Inc. | Asymmetric connection with external networks |
US10193771B2 (en) | 2013-12-09 | 2019-01-29 | Nicira, Inc. | Detecting and handling elephant flows |
US9967199B2 (en) | 2013-12-09 | 2018-05-08 | Nicira, Inc. | Inspecting operations of a machine to detect elephant flows |
US9996467B2 (en) | 2013-12-13 | 2018-06-12 | Nicira, Inc. | Dynamically adjusting the number of flows allowed in a flow table cache |
US9569368B2 (en) | 2013-12-13 | 2017-02-14 | Nicira, Inc. | Installing and managing flows in a flow table cache |
US9286238B1 (en) * | 2013-12-31 | 2016-03-15 | Emc Corporation | System, apparatus, and method of cache management |
US9225597B2 (en) | 2014-03-14 | 2015-12-29 | Nicira, Inc. | Managed gateways peering with external router to attract ingress packets |
US9419855B2 (en) | 2014-03-14 | 2016-08-16 | Nicira, Inc. | Static routes for logical routers |
US9313129B2 (en) | 2014-03-14 | 2016-04-12 | Nicira, Inc. | Logical router processing by network controller |
US9590901B2 (en) | 2014-03-14 | 2017-03-07 | Nicira, Inc. | Route advertisement by managed gateways |
US9503321B2 (en) | 2014-03-21 | 2016-11-22 | Nicira, Inc. | Dynamic routing for logical routers |
US9647883B2 (en) | 2014-03-21 | 2017-05-09 | Nicria, Inc. | Multiple levels of logical routers |
US9893988B2 (en) | 2014-03-27 | 2018-02-13 | Nicira, Inc. | Address resolution using multiple designated instances of a logical router |
US9413644B2 (en) | 2014-03-27 | 2016-08-09 | Nicira, Inc. | Ingress ECMP in virtual distributed routing environment |
US9385954B2 (en) | 2014-03-31 | 2016-07-05 | Nicira, Inc. | Hashing techniques for use in a network environment |
US9985896B2 (en) | 2014-03-31 | 2018-05-29 | Nicira, Inc. | Caching of service decisions |
US10193806B2 (en) | 2014-03-31 | 2019-01-29 | Nicira, Inc. | Performing a finishing operation to improve the quality of a resulting hash |
US9742881B2 (en) | 2014-06-30 | 2017-08-22 | Nicira, Inc. | Network virtualization using just-in-time distributed capability for classification encoding |
US10020960B2 (en) | 2014-09-30 | 2018-07-10 | Nicira, Inc. | Virtual distributed bridging |
US10511458B2 (en) | 2014-09-30 | 2019-12-17 | Nicira, Inc. | Virtual distributed bridging |
US11178051B2 (en) | 2014-09-30 | 2021-11-16 | Vmware, Inc. | Packet key parser for flow-based forwarding elements |
US9768980B2 (en) | 2014-09-30 | 2017-09-19 | Nicira, Inc. | Virtual distributed bridging |
US10250443B2 (en) | 2014-09-30 | 2019-04-02 | Nicira, Inc. | Using physical location to modify behavior of a distributed virtual network element |
US10469342B2 (en) | 2014-10-10 | 2019-11-05 | Nicira, Inc. | Logical network traffic analysis |
US9787605B2 (en) | 2015-01-30 | 2017-10-10 | Nicira, Inc. | Logical router with multiple routing components |
US10038628B2 (en) | 2015-04-04 | 2018-07-31 | Nicira, Inc. | Route server mode for dynamic routing between logical and physical networks |
US10394573B2 (en) * | 2015-04-07 | 2019-08-27 | Avago Technologies International Sales Pte. Limited | Host bus adapter with built-in storage for local boot-up |
CN106155575A (zh) * | 2015-04-17 | 2016-11-23 | 伊姆西公司 | 用于扩展存储系统的高速缓存的方法和装置 |
US10348625B2 (en) | 2015-06-30 | 2019-07-09 | Nicira, Inc. | Sharing common L2 segment in a virtual distributed router environment |
US10129142B2 (en) | 2015-08-11 | 2018-11-13 | Nicira, Inc. | Route configuration for logical router |
US10075363B2 (en) | 2015-08-31 | 2018-09-11 | Nicira, Inc. | Authorization for advertised routes among logical routers |
US10095535B2 (en) | 2015-10-31 | 2018-10-09 | Nicira, Inc. | Static route types for logical routers |
US10333849B2 (en) | 2016-04-28 | 2019-06-25 | Nicira, Inc. | Automatic configuration of logical routers on edge nodes |
US10484515B2 (en) | 2016-04-29 | 2019-11-19 | Nicira, Inc. | Implementing logical metadata proxy servers in logical networks |
US10841273B2 (en) | 2016-04-29 | 2020-11-17 | Nicira, Inc. | Implementing logical DHCP servers in logical networks |
US10091161B2 (en) | 2016-04-30 | 2018-10-02 | Nicira, Inc. | Assignment of router ID for logical routers |
US10153973B2 (en) | 2016-06-29 | 2018-12-11 | Nicira, Inc. | Installation of routing tables for logical router in route server mode |
US10560320B2 (en) | 2016-06-29 | 2020-02-11 | Nicira, Inc. | Ranking of gateways in cluster |
US10454758B2 (en) | 2016-08-31 | 2019-10-22 | Nicira, Inc. | Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP |
US10341236B2 (en) | 2016-09-30 | 2019-07-02 | Nicira, Inc. | Anycast edge service gateways |
US10237123B2 (en) | 2016-12-21 | 2019-03-19 | Nicira, Inc. | Dynamic recovery from a split-brain failure in edge nodes |
US10742746B2 (en) | 2016-12-21 | 2020-08-11 | Nicira, Inc. | Bypassing a load balancer in a return path of network traffic |
US10212071B2 (en) | 2016-12-21 | 2019-02-19 | Nicira, Inc. | Bypassing a load balancer in a return path of network traffic |
US10616045B2 (en) | 2016-12-22 | 2020-04-07 | Nicira, Inc. | Migration of centralized routing components of logical router |
US10200306B2 (en) | 2017-03-07 | 2019-02-05 | Nicira, Inc. | Visualization of packet tracing operation results |
US10637800B2 (en) | 2017-06-30 | 2020-04-28 | Nicira, Inc | Replacement of logical network addresses with physical network addresses |
US10681000B2 (en) | 2017-06-30 | 2020-06-09 | Nicira, Inc. | Assignment of unique physical network addresses for logical network addresses |
US10608887B2 (en) | 2017-10-06 | 2020-03-31 | Nicira, Inc. | Using packet tracing tool to automatically execute packet capture operations |
US10374827B2 (en) | 2017-11-14 | 2019-08-06 | Nicira, Inc. | Identifier that maps to different networks at different datacenters |
US10511459B2 (en) | 2017-11-14 | 2019-12-17 | Nicira, Inc. | Selection of managed forwarding element for bridge spanning multiple datacenters |
US10931560B2 (en) | 2018-11-23 | 2021-02-23 | Vmware, Inc. | Using route type to determine routing protocol behavior |
US10797998B2 (en) | 2018-12-05 | 2020-10-06 | Vmware, Inc. | Route server for distributed routers using hierarchical routing protocol |
US10938788B2 (en) | 2018-12-12 | 2021-03-02 | Vmware, Inc. | Static routes for policy-based VPN |
CN109361714B (zh) * | 2018-12-18 | 2021-11-16 | 中国移动通信集团江苏有限公司 | 用户登录鉴权方法、装置、设备及计算机存储介质 |
US10873644B1 (en) * | 2019-06-21 | 2020-12-22 | Microsoft Technology Licensing, Llc | Web application wrapper |
US11095480B2 (en) | 2019-08-30 | 2021-08-17 | Vmware, Inc. | Traffic optimization using distributed edge services |
US11283699B2 (en) | 2020-01-17 | 2022-03-22 | Vmware, Inc. | Practical overlay network latency measurement in datacenter |
CN111488382A (zh) * | 2020-04-16 | 2020-08-04 | 北京思特奇信息技术股份有限公司 | 一种数据调用方法、系统及电子设备 |
US11606294B2 (en) | 2020-07-16 | 2023-03-14 | Vmware, Inc. | Host computer configured to facilitate distributed SNAT service |
US11616755B2 (en) | 2020-07-16 | 2023-03-28 | Vmware, Inc. | Facilitating distributed SNAT service |
US11611613B2 (en) | 2020-07-24 | 2023-03-21 | Vmware, Inc. | Policy-based forwarding to a load balancer of a load balancing cluster |
US11902050B2 (en) | 2020-07-28 | 2024-02-13 | VMware LLC | Method for providing distributed gateway service at host computer |
US11451413B2 (en) | 2020-07-28 | 2022-09-20 | Vmware, Inc. | Method for advertising availability of distributed gateway service and machines at host computer |
US11570090B2 (en) | 2020-07-29 | 2023-01-31 | Vmware, Inc. | Flow tracing operation in container cluster |
US11558426B2 (en) | 2020-07-29 | 2023-01-17 | Vmware, Inc. | Connection tracking for container cluster |
US11196628B1 (en) | 2020-07-29 | 2021-12-07 | Vmware, Inc. | Monitoring container clusters |
US11733920B2 (en) | 2020-09-10 | 2023-08-22 | Western Digital Technologies, Inc. | NVMe simple copy command support using dummy virtual function |
US11736436B2 (en) | 2020-12-31 | 2023-08-22 | Vmware, Inc. | Identifying routes with indirect addressing in a datacenter |
US11336533B1 (en) | 2021-01-08 | 2022-05-17 | Vmware, Inc. | Network visualization of correlations between logical elements and associated physical elements |
US11556268B2 (en) | 2021-04-22 | 2023-01-17 | Western Digital Technologies, Inc. | Cache based flow for a simple copy command |
US11687210B2 (en) | 2021-07-05 | 2023-06-27 | Vmware, Inc. | Criteria-based expansion of group nodes in a network topology visualization |
US11711278B2 (en) | 2021-07-24 | 2023-07-25 | Vmware, Inc. | Visualization of flow trace operation across multiple sites |
US11855862B2 (en) | 2021-09-17 | 2023-12-26 | Vmware, Inc. | Tagging packets for monitoring and analysis |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5511177A (en) * | 1991-11-21 | 1996-04-23 | Hitachi, Ltd. | File data multiplexing method and data processing system |
US5987506A (en) * | 1996-11-22 | 1999-11-16 | Mangosoft Corporation | Remote access and geographically distributed computers in a globally addressable storage environment |
US6112239A (en) * | 1997-06-18 | 2000-08-29 | Intervu, Inc | System and method for server-side optimization of data delivery on a distributed computer network |
US6415373B1 (en) * | 1997-12-24 | 2002-07-02 | Avid Technology, Inc. | Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner |
US6493750B1 (en) * | 1998-10-30 | 2002-12-10 | Agilent Technologies, Inc. | Command forwarding: a method for optimizing I/O latency and throughput in fibre channel client/server/target mass storage architectures |
US6542961B1 (en) * | 1998-12-22 | 2003-04-01 | Hitachi, Ltd. | Disk storage system including a switch |
US6779119B1 (en) * | 1999-06-30 | 2004-08-17 | Koninklijke Philips Electronics N.V. | Actual and perceived response time, user interface, and security via usage patterns |
JP3952640B2 (ja) * | 1999-09-07 | 2007-08-01 | 株式会社日立製作所 | データバックアップ方法、メインフレーム系ストレージシステムおよびメインフレームホストコンピュータ |
US20020103889A1 (en) * | 2000-02-11 | 2002-08-01 | Thomas Markson | Virtual storage layer approach for dynamically associating computer storage with processing hosts |
US6654795B1 (en) * | 2000-02-25 | 2003-11-25 | Brantley W. Coile | System and method for distribution of network file accesses over network storage devices |
US6691198B1 (en) * | 2000-03-30 | 2004-02-10 | Western Digital Ventures, Inc. | Automatically transmitting scheduling data from a plurality of storage systems to a network switch for scheduling access to the plurality of storage systems |
US6643795B1 (en) * | 2000-03-30 | 2003-11-04 | Hewlett-Packard Development Company, L.P. | Controller-based bi-directional remote copy system with storage site failover capability |
US6742020B1 (en) * | 2000-06-08 | 2004-05-25 | Hewlett-Packard Development Company, L.P. | System and method for managing data flow and measuring service in a storage network |
US6950871B1 (en) * | 2000-06-29 | 2005-09-27 | Hitachi, Ltd. | Computer system having a storage area network and method of handling data in the computer system |
US6766430B2 (en) * | 2000-07-06 | 2004-07-20 | Hitachi, Ltd. | Data reallocation among storage systems |
US6977927B1 (en) * | 2000-09-18 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Method and system of allocating storage resources in a storage area network |
US6721862B2 (en) * | 2000-10-11 | 2004-04-13 | Mcdata Corporation | Method and circuit for replicating data in a fiber channel network, or the like |
JP2002132455A (ja) | 2000-10-25 | 2002-05-10 | Hitachi Ltd | キャッシュマネジャー及びこれを含むコンピュータシステム |
US6985956B2 (en) * | 2000-11-02 | 2006-01-10 | Sun Microsystems, Inc. | Switching system |
US6477618B2 (en) * | 2000-12-28 | 2002-11-05 | Emc Corporation | Data storage system cluster architecture |
US6857059B2 (en) * | 2001-01-11 | 2005-02-15 | Yottayotta, Inc. | Storage virtualization system and methods |
US6779082B2 (en) * | 2001-02-05 | 2004-08-17 | Ulysses Esd, Inc. | Network-based disk redundancy storage system and method |
US7499877B2 (en) | 2001-02-21 | 2009-03-03 | American Management Systems | Method and apparatus for dynamically maintaining and executing data definitions and/or business rules for an electronic procurement system |
US20040233910A1 (en) * | 2001-02-23 | 2004-11-25 | Wen-Shyen Chen | Storage area network using a data communication protocol |
DE60212599D1 (de) * | 2001-03-01 | 2006-08-03 | Storeage Networking Technologi | Sicherheit für ein san (storage area network) |
US7096269B2 (en) * | 2001-03-30 | 2006-08-22 | Hitachi, Ltd. | Path selection methods for storage based remote copy |
JP4009434B2 (ja) * | 2001-04-18 | 2007-11-14 | 株式会社日立製作所 | 磁気ディスク装置間結合装置 |
US6876656B2 (en) * | 2001-06-15 | 2005-04-05 | Broadcom Corporation | Switch assisted frame aliasing for storage virtualization |
US7343410B2 (en) * | 2001-06-28 | 2008-03-11 | Finisar Corporation | Automated creation of application data paths in storage area networks |
US7440994B2 (en) * | 2001-07-06 | 2008-10-21 | Intel Corporation | Method and apparatus for peer-to-peer services to shift network traffic to allow for an efficient transfer of information between devices via prioritized list |
US6996668B2 (en) * | 2001-08-06 | 2006-02-07 | Seagate Technology Llc | Synchronized mirrored data in a data storage device |
EP1595363B1 (en) * | 2001-08-15 | 2016-07-13 | The Board of Governors for Higher Education State of Rhode Island and Providence Plantations | Scsi-to-ip cache storage device and method |
US7404000B2 (en) * | 2001-09-28 | 2008-07-22 | Emc Corporation | Protocol translation in a storage system |
US6976134B1 (en) * | 2001-09-28 | 2005-12-13 | Emc Corporation | Pooling and provisioning storage resources in a storage network |
US7200144B2 (en) * | 2001-10-18 | 2007-04-03 | Qlogic, Corp. | Router and methods using network addresses for virtualization |
US7139809B2 (en) * | 2001-11-21 | 2006-11-21 | Clearcube Technology, Inc. | System and method for providing virtual network attached storage using excess distributed storage capacity |
US6826666B2 (en) * | 2002-02-07 | 2004-11-30 | Microsoft Corporation | Method and system for transporting data content on a storage area network |
JP4220166B2 (ja) * | 2002-02-19 | 2009-02-04 | 株式会社日立製作所 | ストレージエリアネットワークシステムのアクセス制御方法 |
US6947981B2 (en) * | 2002-03-26 | 2005-09-20 | Hewlett-Packard Development Company, L.P. | Flexible data replication mechanism |
US7788324B2 (en) * | 2002-03-29 | 2010-08-31 | Atto Technology, Inc. | Method and system for improving the efficiency and ensuring the integrity of a data transfer |
JP2003316522A (ja) * | 2002-04-26 | 2003-11-07 | Hitachi Ltd | 計算機システムおよび計算機システムの制御方法 |
US7509645B2 (en) * | 2002-10-17 | 2009-03-24 | Intel Corporation | Methods and apparatus for load balancing storage nodes in a distributed network attached storage system |
US7277431B2 (en) * | 2002-10-31 | 2007-10-02 | Brocade Communications Systems, Inc. | Method and apparatus for encryption or compression devices inside a storage area network fabric |
US7263593B2 (en) * | 2002-11-25 | 2007-08-28 | Hitachi, Ltd. | Virtualization controller and data transfer control method |
US6957303B2 (en) * | 2002-11-26 | 2005-10-18 | Hitachi, Ltd. | System and managing method for cluster-type storage |
JP2004192105A (ja) * | 2002-12-09 | 2004-07-08 | Hitachi Ltd | 記憶装置の接続装置およびそれを含むコンピュータシステム |
JP4252301B2 (ja) * | 2002-12-26 | 2009-04-08 | 株式会社日立製作所 | 記憶システム及びそのデータバックアップ方法 |
-
2003
- 2003-06-18 JP JP2003172770A patent/JP4278445B2/ja not_active Expired - Fee Related
- 2003-08-14 EP EP20030018489 patent/EP1489524B1/en not_active Expired - Fee Related
- 2003-08-22 US US10/646,036 patent/US7124169B2/en not_active Expired - Lifetime
-
2006
- 2006-04-18 US US11/407,167 patent/US20060187908A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP1489524B1 (en) | 2012-11-14 |
US20060187908A1 (en) | 2006-08-24 |
US7124169B2 (en) | 2006-10-17 |
JP2005010969A (ja) | 2005-01-13 |
US20050008016A1 (en) | 2005-01-13 |
EP1489524A1 (en) | 2004-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4278445B2 (ja) | ネットワークシステム及びスイッチ | |
US20190075163A1 (en) | Apparatus including an i/o interface and a network interface and related method of use | |
US20190278719A1 (en) | Primary Data Storage System with Data Tiering | |
JP4510028B2 (ja) | 複数読み出しストリームのための適応先読み技術 | |
US8255477B2 (en) | Systems and methods for implementing content sensitive routing over a wide area network (WAN) | |
US7380059B2 (en) | Methods and systems of cache memory management and snapshot operations | |
JP4297747B2 (ja) | ストレージ装置 | |
US8874850B1 (en) | Hierarchically tagged cache | |
JP5047165B2 (ja) | 仮想化ネットワークストレージシステム、ネットワークストレージ装置及びその仮想化方法 | |
US7389382B2 (en) | ISCSI block cache and synchronization technique for WAN edge device | |
US10296255B1 (en) | Data migration techniques | |
US20130232215A1 (en) | Virtualized data storage system architecture using prefetching agent | |
JP2007207007A (ja) | ストレージシステム、ストレージコントローラ及び計算機システム | |
JP2010097359A (ja) | ファイル管理方法および階層管理ファイルシステム | |
JPH1185710A (ja) | サーバ装置およびファイル管理方法 | |
KR20120078535A (ko) | Sas 확장기 접속 라우팅 기술들 | |
US8756338B1 (en) | Storage server with embedded communication agent | |
US11327653B2 (en) | Drive box, storage system and data transfer method | |
WO2013091192A1 (zh) | 提供多设备镜像和条带功能的磁盘缓存方法、设备和系统 | |
JP2003296035A (ja) | ストレージ装置及びストレージ方法 | |
JP3776496B2 (ja) | データ記憶システム | |
US6549988B1 (en) | Data storage system comprising a network of PCs and method using same | |
JP2004334481A (ja) | 仮想化情報管理装置 | |
JP4607937B2 (ja) | キャッシュ方法及びキャッシュ装置 | |
JP3848268B2 (ja) | 計算機システム、計算機装置、計算機システムにおけるデータアクセス方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051227 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060420 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081111 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090113 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20090113 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090129 |
|
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: 20090225 |
|
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: 20090310 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120319 Year of fee payment: 3 |
|
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: 20120319 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130319 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130319 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |