(57)【要約】      （修正有）【課題】ＮＡＳコントローラとストレージシステムから成るデータ複製システムに関する。【解決手段】ＮＡＳシステムは、ボリュームのスナップショットを取得後、ボリューム内のリファーラル情報を変更し、スナップショット取得後の一貫性を確保するための更なる方法として、ＮＡＳシステムはクライアントがスナップショットボリューム内のリファーラルにアクセスする時クライアントが適切なボリュームにアクセスできるように、リファーラル管理テーブルに基づいて変更したリファーラル情報を返信する。ＮＡＳシステムのボリュームがリモート配置したＮＡＳシステムにリモートコピーにより複製された後、リモート配置したＮＡＳシステムは、クライアントが複製されたボリューム内のリファーラルにアクセスする時適切なボリュームにアクセスできるように、リファーラル管理テーブルに基づいて変更したリファーラル情報を返信する。【選択図】図１
2007183913.tif 000002
【特許請求の範囲】
【請求項１】
ａ．第二のデータを指示する第一のリファーラルを含む第一のデータを保存し、第三のデータを生成するために該第一のデータを複製することができる第一のストレージシステムと、
ｂ．前記第二のデータを保存し、第四のデータを生成するために該第二のデータを複製することができる第二のストレージシステムと、
から成り、前記第一のデータの複製時に前記第三のデータの第二のリファーラルが前記第四のデータを指示するように修正されることを特徴とする計算機システム。
【請求項２】
請求項１に於いて、前記第一及び第二のストレージシステムはネットワーク接続ストレージシステムであることを特徴とする計算機システム。
【請求項３】
請求項２に於いて、
前記第三のデータは前記第一のデータのスナップショットから成り、
前記第三のデータは前記第一のストレージシステムに置かれ、
前記第四のデータは前記第二のデータのスナップショットから成り、
前記第四のデータは前記第二のストレージシステムに置かれている、
ことを特徴とする計算機システム。
【請求項４】
請求項１に於いて更に、前記第三のデータを保存する第三のストレージシステムと前記第四のデータを保存する第四のストレージシステムから成り、前記第一のデータと前記第二のデータがリモートコピーによって複製されることを特徴とする計算機システム。
【請求項５】
請求項１に於いて、前記第二のリファーラルが前記第一のストレージシステムによって修正されることを特徴とする計算機システム。
【請求項６】
請求項１に於いて、前記第一と第二のストレージシステムはファイルサーバシステムであることを特徴とする計算機システム。
【請求項７】
請求項１に於いて、前記第一と第二の各リファーラルは、前記第二のデータに対応するターゲットストレージシステムとターゲットパスの情報を含むリファーラルファイルから成ることを特徴とする計算機システム。
【請求項８】
請求項７に於いて、前記第二のリファーラルは、前記リファーラルファイルの前記ターゲットストレージシステムと前記ターゲットパスを変更することにより修正されることを特徴とする計算機システム。
【請求項９】
請求項７に於いて更に、クライアントが前記第二のリファーラルファイルにアクセスを要求した時刻での修正したリファーラル情報を形成するために使用される、リファーラル管理テーブルから成ることを特徴とする計算機システム。
【請求項１０】
請求項９に於いて、形成するステップは、
前記要求が複製されたボリュームの前記第二のリファーラルファイルに向けられているかを決定するステップと、
前記要求が複製されたデータに向けられているならば、前記第二のリファーラルファイルに対応する前記リファーラル管理テーブル内のエントリーを検索するステップと、
前記第二のリファーラルファイルに対応する前記リファーラル管理テーブル内に前記エントリーが見つかったならば、応答を形成するために該リファーラル管理テーブルの情報を使用するステップと、
前記要求が複製されたボリュームの前記第二のリファーラルファイルに向けられていないならば、或いは該第二のリファーラルファイルに対応する前記リファーラル管理テーブル内の前記エントリーが見つからないならば、前記応答を形成するために該第二のリファーラルファイルの情報を使用するステップと、
から成ることを特徴とする計算機システム。
【請求項１１】
請求項１に於いて更に、前記第一のストレージシステムと前記第二のストレージシステムに複製命令を送信することができる管理ホストから成ることを特徴とする計算機システム。
【請求項１２】
請求項１０に於いて、前記管理ホストは前記第一のストレージシステムと前記第二のストレージシステムから収集したリファーラル情報を含むグローバルネームスペース管理テーブルを維持することを特徴とする計算機システム。
【請求項１３】
請求項１０に於いて、前記第一のストレージシステムと前記第二のストレージシステムに保存されたデータは、前記グローバルネームスペース管理テーブルに従って複製されることを特徴とする計算機システム。
【請求項１４】
請求項１０に於いて、前記複製命令はブロードキャストにより送信されることを特徴とする計算機システム。
【請求項１５】
請求項１０に於いて、前記複製命令はリダイレクトにより送信されることを特徴とする計算機システム。
【請求項１６】
第三のデータを生成するために、第二のデータを指示する第一のリファーラルを含む第一のデータを複製するステップと、
第四のデータを生成するために前記第二のデータを複製するステップと、
前記第四のデータを指示するように前記第三のデータの第二のリファーラルを修正するステップと、
から成ることを特徴とする、第一のデータと第二のデータを複製するためにコンピュータで実行される方法。
【請求項１７】
請求項１６に於いて、各リファーラルはリファーラルファイルから成り、該リファーラルを修正するステップは該リファーラルファイルのリファーラル情報を修正するステップから成ることを特徴とするコンピュータで実行される方法。
【請求項１８】
請求項１７に於いて、前記リファーラルファイルは前記第二のデータに対応するターゲットストレージシステムとターゲットパスの情報を含むことを特徴とするコンピュータで実行される方法。
【請求項１９】
請求項１６に於いて、各リファーラルはリファーラル管理テーブル内のエントリーから成り、前記修正するステップは該リファーラル管理テーブルの該エントリーに基づいてリファーラル情報を修正するステップから成ることを特徴とするコンピュータで実行される方法。
【請求項２０】
請求項１６に於いて、各リファーラルはリファーラルファイルから成り、前記修正するステップは前記第二のリファーラルファイルの要求時に新たなリファーラル情報を形成するステップから成ることを特徴とするコンピュータで実行される方法。
【請求項２１】
請求項２０に於いて、形成するステップは、
前記要求が複製されたボリュームのリファーラルファイルに向けられているかを決定するステップと、
前記要求が複製されたデータに向けられているならば、前記リファーラルファイルに対応する前記リファーラル管理テーブル内のエントリーを検索するステップと、
前記リファーラルファイルに対応する前記リファーラル管理テーブル内に前記エントリーが見つかったならば、応答を形成するために該リファーラル管理テーブルの情報を使用するステップと、
前記要求が複製されたボリュームの前記リファーラルファイルに向けられていないならば、或いは該リファーラルファイルに対応する前記リファーラル管理テーブル内の前記エントリーが見つからないならば、前記応答を形成するために該リファーラルファイルの情報を使用するステップと、
から成ることを特徴とするコンピュータで実行される方法。
【請求項２２】
請求項１６に於いて、複製するステップは、前記第一のデータを含むボリュームのスナップショットを作成するステップと、前記第二のデータを含むボリュームのスナップショットを作成するステップと、から成ることを特徴とするコンピュータで実行される方法。
【請求項２３】
請求項１６に於いて、スナップショットを作成するステップは、スナップショット命令のブロードキャストにより開始することを特徴とするコンピュータで実行される方法。
【請求項２４】
請求項１６に於いて、スナップショットを作成するステップは、スナップショット命令のリダイレクトにより遂行されることを特徴とするコンピュータで実行される方法。
【請求項２５】
請求項１６に於いて、複製するステップは、前記第一のデータを含むボリュームのリモートコピーを作成するステップと、前記第二のデータを含むボリュームのリモートコピーを作成するステップと、から成ることを特徴とするコンピュータで実行される方法。
【請求項２６】
一つ以上のプロセッサによって実行される時、該一つ以上のプロセッサに第一のデータと第二のデータの複製方法を遂行させる一つ以上の命令のシーケンスを具体化するコンピュータ読み取り可能媒体に於いて、該方法は、
第三のデータを生成するために、第二のデータを指示する第一のリファーラルを含む第一のデータを複製するステップと、
第四のデータを生成するために前記第二のデータを複製するステップと、
前記第四のデータを指示するように前記第三のデータの第二のリファーラルを修正するステップと、
から成ることを特徴とするコンピュータ読み取り可能媒体。
【請求項２７】
請求項２６に於いて、各リファーラルはリファーラルファイルから成り、該リファーラルを修正するステップは該リファーラルファイルのリファーラル情報を修正するステップから成ることを特徴とするコンピュータ読み取り可能媒体。
【請求項２８】
請求項２７に於いて、前記リファーラルファイルは前記第二のデータに対応するターゲットストレージシステムとターゲットパスの情報を含むことを特徴とするコンピュータ読み取り可能媒体。
【請求項２９】
請求項２６に於いて、各リファーラルはリファーラル管理テーブル内のエントリーから成り、前記修正するステップは該リファーラル管理テーブルの該エントリーのリファーラル情報を修正するステップから成ることを特徴とするコンピュータ読み取り可能媒体。
【請求項３０】
請求項２６に於いて、各リファーラルはリファーラルファイルから成り、前記修正するステップは前記第二のリファーラルファイルの要求時に新たなリファーラル情報を形成するステップから成ることを特徴とするコンピュータ読み取り可能媒体。
【請求項３１】
請求項３０に於いて、形成するステップは、
前記要求が複製されたボリュームのリファーラルファイルに向けられているかを決定するステップと、
前記要求が複製されたデータに向けられているならば、前記リファーラルファイルに対応する前記リファーラル管理テーブル内のエントリーを検索するステップと、
前記リファーラルファイルに対応する前記リファーラル管理テーブル内に前記エントリーが見つかったならば、応答を形成するために該リファーラル管理テーブルの情報を使用するステップと、
前記要求が複製されたボリュームの前記リファーラルファイルに向けられていないならば、或いは該リファーラルファイルに対応する前記リファーラル管理テーブル内の前記エントリーが見つからないならば、前記応答を形成するために該リファーラルファイルの情報を使用するステップと、
から成ることを特徴とするコンピュータ読み取り可能媒体。
【請求項３２】
請求項２６に於いて、複製するステップは、前記第一のデータを含むボリュームのスナップショットを作成するステップと、前記第二のデータを含むボリュームのスナップショットを作成するステップと、から成ることを特徴とするコンピュータ読み取り可能媒体。
【請求項３３】
請求項２６に於いて、スナップショットを作成するステップは、スナップショット命令のブロードキャストにより開始することを特徴とするコンピュータ読み取り可能媒体。
【請求項３４】
請求項２６に於いて、スナップショットを作成するステップは、スナップショット命令のリダイレクトにより遂行されることを特徴とするコンピュータ読み取り可能媒体。
【請求項３５】
請求項２６に於いて、複製するステップは、前記第一のデータを含むボリュームのリモートコピーを作成するステップと、前記第二のデータを含むボリュームのリモートコピーを作成するステップと、から成ることを特徴とするコンピュータ読み取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
０００１    本発明は一般にコンピュータストレージシステムに関し、更に具体的にはＮＦＳ第４版の機能を持つ、ファイルサーバ又はネットワーク接続ストレージ（ＮＡＳ）システムに関する。
【背景技術】
【０００２】
０００２    従来、複数のホストでファイルを共有するために、ＮＦＳ第２版又は第３版のようなプロトコルが使用されてきている。ＮＦＳ第２版と第３版では、ファイルシステムのネームスペース（ディレクトリ・トリー）は各サーバ内で構築される。したがって、或るサーバの或るファイルシステムが新たなサーバに移行される時、クライアントは、新たなサーバに移行したファイルシステムにアクセスするために、要求を送信するターゲットを自ら変更しなければならない。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
０００３    近年ＮＦＳ第４版が提案され開発中であり、いくつかのプラットフォーム上で実装されつつある。ＮＦＳ第４版では、リファーラルを用いてファイルシステムのネームスペースを複数のファイルサーバにわたって構築することができる。リファーラルはファイルシステムの新たなロケーションをクライアントに知らせる属性である。古いサーバの或るファイルシステムを新たなサーバに移行する時、及びクライアントが古いサーバの当該ファイルシステムにアクセスする時、クライアントは、新たなサーバにアクセス要求をリダイレクトできるように、当該ファイルシステムの新たなロケーションについて通知を受ける。したがって、クライアントは当該ファイルシステムが別のサーバに移行された後でさえも、透過的に（当該ファイルシステムの新たなロケーションを気にすることなく）当該ファイルシステムにアクセスすることが可能になる。この機能は「グローバルネームスペース」と呼ばれ、この機能を持つファイルシステムは「グローバルファイルシステム」と呼ばれる。
【０００４】
０００４    一方、原データが破壊するような状況に備えて、スナップショット又はリモートコピーのようなデータ複製技術が使用されている。スナップショットはファイルサーバ又はネットワーク接続ストレージ（ＮＡＳ）システム内のボリューム又は各ファイル及びディレクトリの或る時点のコピーを取得する技術であり、リモートコピーはリモート配置されたファイルサーバ又はＮＡＳシステムにボリュームの同期又は非同期コピーを維持する技術である。
【０００５】
０００５    これらの技術がリファーラルを含むボリューム及びリファーラルが示すファイルシステムを含むボリュームを複製する時、リファーラルは複製されたファイルシステムを含むボリュームを示すように変更されなければならない。しかしながら、従来の複製技術は原ボリュームの正確なイメージを作成するので、複製されたデータを含むボリュームのリファーラルは依然として原ボリュームを示している。したがって、従来通りに複製されたデータを含むボリュームにアクセスしようとするクライアントは、当該ボリュームのリファーラルによって原ボリュームに誤ってリダイレクトされてしまうことになる。
【課題を解決するための手段】
【０００６】
０００６    本発明の方法論は従来のデータ複製技術に関連する、上述の一つ以上の問題点及びその他の問題点を実質的に取り除く方法とシステムに向けられる。
【０００７】
０００７    本発明概念の一つの態様はコンピュータ化データ複製システムである。本発明のシステムは第一のデータを保存する第一のストレージシステムを有し、第一のデータは第二のデータを指示する第一のリファーラルを含んでいる。第一のストレージシステムは第三のデータを生成するために第一のデータを複製できる。本発明のシステムは更に第二のデータを保存する第二のストレージシステムを有し、第二のストレージシステムは第四のデータを生成するために第二のデータを複製できる。本発明の態様によれば、第一のデータの複製時に第三のデータの第二のリファーラルは第四のデータを指示するように修正される。
【０００８】
０００８    本発明概念の別の態様は第一のデータと第二のデータを複製する方法を遂行するコンピュータ命令を具体化する方法とコンピュータプログラムプロダクトである。本発明の方法によれば、第一のデータは第三のデータを生成するために複製され、第一のデータは第二のデータを指示する第一のリファーラルを含んでいる。第二のデータは第四のデータを生成するために複製される。本発明の態様によれば、第三のデータの第二のリファーラルは第四のデータを指示するように修正される。
【０００９】
０００９    本発明に関する更なる態様が、一部は以下の説明で示され、一部は説明から明らかであり、或いは本発明の実施によって知得できるであろう。本発明の態様は以下の詳細な説明と添付の特許請求範囲に於いて特に示される、要素と各種要素の組み合わせ及び態様によって実現でき、達成できる。
【００１０】
００１０    当然のことながら、前述の説明と以下の説明の両者は典型的なものであり、説明のためのものに過ぎず、請求項に記載された発明又はその出願をどんな方法であろうと制限することを意図するものでない。
【発明を実施するための最良の形態】
【００１１】
００４４    以下の本発明の詳細な説明に於いて、添付図面が参照され、図中では同じ機能要素は同じような数字で示される。上記の添付図面は本発明の原理に合致した特定の実施例や実現方法を説明の目的で示すものであって、限定するために示すものでない。これらの実現方法は当業者が本発明を実施できるように十分詳細に記述されており、本発明の範囲と精神を逸脱せずに、他の実現方法が使用でき構造変更及び（又は）各種要素の置換が可能であることは明らかである。したがって以下の詳細な説明は限定した考え方で解釈されるべきでない。更に、記述されるような本発明の各種実施例は汎用コンピュータ上で動作するソフトウェアの形式で、又は専用のハードウェア、或いはソフトウェアとハードウェアの組み合わせの形式で実現可能である。
【００１２】
００４５    本発明概念の一つの態様は複製の後、ＮＦＳ第4版のリファーラルを使用して複数のファイルサーバ又はＮＡＳシステムにわたって構築されるグローバルネームスペースの一貫性を維持するシステムと方法である。
【００１３】
００４６    ここで記述される本発明のシステムの実施例はＮＡＳコントローラとストレージシステムから成る。
【００１４】
００４７    第一の実施例に於いて、ＮＡＳシステムがボリュームのスナップショットを取得した後に、ＮＡＳシステムはボリューム内のリファーラル情報を変更する。更にスナップショットを取得後の一貫性を確保する別な方法として、ＮＡＳシステムはクライアントがスナップショットボリューム内のリファーラルにアクセスする時に適切なボリュームにアクセスできるように、リファーラル管理テーブルに基づいて変更されたリファーラル情報を返信する。
【００１５】
００４８    第二の実施例に於いて、ＮＡＳシステムのボリュームがリモートコピーによりリモート配置されたＮＡＳシステムに複製された後に、リモート配置されたＮＡＳシステムはクライアントが複製されたボリューム内のリファーラルにアクセスする時に適切なボリュームにアクセスできるように、リファーラル管理テーブルに基づいて変更されたリファーラル情報を返信する。
【実施例１】
【００１６】
００５０    システム構成：
００５１    図１は第一の実施例の方法と装置が適用されるシステムの構成例を示す。このシステムは複数のＮＡＳシステム１０１と１２２、管理ホスト１１３、及び一つ以上のＮＡＳクライアント１２０から構成される。
【００１７】
００５２    各ＮＡＳシステム１０１と１２２はＮＡＳコントローラ１０２とストレージシステム１０３から成る。ＮＡＳコントローラ１０２はバス１０８を経由して相互接続されるＣＰＵ１０４、メモリ１０５、ネットワークアダプタ１０６、及びストレージアダプタ１０７から成る。これらのコンポーネントはバスを経由してお互いに接続されている。
【００１８】
００５３    ストレージシステム１０３はディスクコントローラ１０９、キャッシュメモリ１１０、ディスクドライブ１１１、及びストレージインタフェース１１２から成る。これらのコンポーネントはバス１３１を経由して相互接続されている。ＮＡＳコントローラ１０２とストレージシステム１０３はストレージアダプタ１０７とストレージインタフェース１１２を経由してお互いに接続されている。ここでストレージインタフェース１１２にはファイバチャネル又はＳＣＳＩのようなインタフェースが使用できる。そのような構成では、ストレージアダプタ１０７としてホストバスアダプタ（ＨＢＡ）が使用される。更に、ストレージシステム１０３を外部に配置し、これらのインタフェースを経由してＮＡＳコントローラ１０２に接続することもできる。ＮＡＳシステム１０１はネットワークアダプタ１０６を経由して管理ホスト１１３とＮＡＳクライアント１２０に接続される。本発明を実現するプログラムのいくつかは、ＮＡＳコントローラ１０２のＣＰＵ１０４を使用してＮＡＳシステム１０１上で動作する。
【００１９】
００５４    管理ホスト１１３はバス１１８を経由して相互接続されたＣＰＵ１１４、メモリ１１５、ネットワークアダプタ１１６、ストレージアダプタ１１７、及びストレージシステム１１９から成る。管理ホスト１１３はネットワークアダプタ１１６を経由してＮＡＳシステム１０１と１２２に接続される。ストレージシステム１１９はストレージシステム１０３と同じコンポーネントを持ち、外部に配置して接続することができる。本発明を実現するプログラムのいくつかはＣＰＵ１１４を使用して管理ホスト１１３上で動作する。
【００２０】
００５５    各ＮＡＳクライアント１２０は管理ホスト１１３と同じコンポーネントから成る。
【００２１】
００５６    ＮＡＳシステム１０１と１２２、管理ホスト１１３、及びＮＡＳクライアント１２０はＬＡＮ１２１を経由してお互いに接続される。ネットワーク上でＮＡＳシステム１  １０１はホスト名「ｎａｓ１」を持ち、ＮＡＳシステム２  １２２はホスト名「ｎａｓ２」を持つ。
【００２２】
００５７    機能ダイアグラム：
００５８    図２は第一の実施例のシステムの機能ダイアグラムを示す。
【００２３】
００５９    各ＮＡＳシステム１０１と１２２のＮＡＳコントローラ１０２にはＮＦＳｖ４サーバ２０１、ローカルファイルシステム２０２、スナップショットマネージャ２０３、及びボリュームマネージャ２０４が存在する。ＮＡＳクライアント１２０はＮＦＳｖ４クライアント２０８を実行する。
【００２４】
００６０    ＮＦＳｖ４サーバ２０１はローカルファイルシステム２０２がマウントするボリュームにＮＦＳ第４版プロトコルを経由してファイルをエクスポートする（ファイルにアクセス可能にする）。更に、通常のＮＦＳ第４版プロトコルと異なり、ＮＦＳｖ４サーバ２０１はリファーラル管理テーブル１６０１に基づいて変更したリファーラル情報を必要時に返信する。
【００２５】
００６１    ローカルファイルシステム２０２はＮＦＳｖ４サーバ２０１からファイルＩ／Ｏ要求を受信し、ボリュームマネージャ２０４に適切なブロックＩ／Ｏ要求を発行する。
【００２６】
００６２    スナップショットマネージャ２０３は管理ホスト１１３又は他のＮＡＳシステムからの命令に従って、ボリュームのスナップショットを取得するようにボリュームマネージャ２０４に命令する。更にスナップショットマネージャ２０３は管理ホスト１１３からの命令に従ってスナップショットボリュームのリファーラルを検索し、管理ホスト１１３にリファーラル情報を返信する。スナップショットマネージャ２０３は又、スナップショットボリュームのリファーラルを検索し、必要時にリファーラルを変更する。更に、スナップショットマネージャ２０３は必要時に図３に示すリファーラル管理テーブル１６０１を管理する。このテーブルは列１６０２の各リファーラルに対して、新たなターゲット情報１６０３並びに新たなパス情報１６０４を含んでいる。
【００２７】
００６３    ボリュームマネージャ２０４はストレージシステム１０３の一つ以上のディスクドライブ１１１を使用して、ローカルファイルシステムデータ２０６を含む一つ以上のボリューム２０５を生成する。更に、スナップショットマネージャ２０３からの命令に従って、ボリュームマネージャ２０４はボリューム２０５を使用して指定されたボリュームのスナップショットイメージを作成する。
【００２８】
００６４    管理ホスト１１３にはスナップショット命令モジュール２０７が存在する。
【００２９】
００６５    スナップショット命令モジュール２０７はＮＡＳシステム１０１と１２２からリファーラル情報を収集し、図４に示すグローバルネームスペース管理テーブル１１０１を管理する。更にスナップショット命令モジュール２０７はＮＡＳシステム１０２と１２２にボリュームのスナップショットイメージを取得するように命令する。
【００３０】
００６６    グローバルファイルシステムとグローバルネームスペース：
００６７    グローバルファイルシステムは複数のファイルサーバ又はＮＡＳシステムにわたって構築されるファイルシステムである。グローバルファイルシステムに於いて、ファイルシステムのネームスペース（ディレクトリ・トリー）は複数のファイルサーバ又はＮＡＳシステムに跨って広がっている。複数のファイルサーバ又はＮＡＳシステムに広がるネームスペースはグローバルネームスペースと呼ばれる。グローバルネームスペースの機能によって、クライアントはファイルやディレクトリが別のファイルサーバ又はＮＡＳシステムに移行された時でさえもファイルサーバ又はＮＡＳシステムの物理ロケーションを気にすることなくファイルやディレクトリにアクセスできる。
【００３１】
００６８    ＮＦＳ第４版プロトコルに於いて、この機能はリファーラルを導入することで実現できる。以下に詳細な説明がなされる。
【００３２】
００６９    ローカルファイルシステムデータ構造：
００７０    ローカルファイルシステムは、それにより各ファイルサーバ又はＮＡＳシステムが自らのファイルやディレクトリを管理するファイルシステムである。各ファイルサーバ又はＮＡＳシステムは異なったファイルシステムを使用できる。
【００３３】
００７１    図５はローカルファイルシステム２０２に必要なデータがボリューム２０５に保存される方法を示す。ブートセクター３０１は通常、必要な場合にシステムをブートするプログラムを保存するために使用される。ローカルファイルシステム２０２はブートセクター３０１のデータを変更しない。本発明に於いて、ブートセクター３０１はボリュームが複製されたデータを含むか否かを示すために使用できる。残りのボリュームはローカルファイルシステム２０２によって使用される。
【００３４】
００７２    ローカルファイルシステム２０２は残りのボリュームをブロックグループ３０２に分割する。各ブロックグループ３０２はスーパーブロック３０３、ブロックグループデスクリプタ３０４、データブロックビットマップ３０５、アイノードビットマップ３０６、アイノードテーブル３０７、及びデータブロック３０８を含む。
【００３５】
００７３    スーパーブロック３０３はブロックグループ３０２のロケーション情報を保存するために使用される。各ブロックグループ３０２はスーパーブロック３０３と同じコピーを持つ。ブロックグループデスクリプタ３０４はブロックグループ３０２の管理情報を保存する。データブロックビットマップ３０５はどのデータブロック３０８が使用中かを示す。同様に、アイノードビットマップ３０６はアイノードテーブル３０７のどのアイノード３０９が使用中かを示す。
【００３６】
００７４    図６はアイノードテーブル３０７の各アイノード３０９がどんな種類のデータを持つかを示す。各アイノードは以下に示すような各ファイル又はディレクトリの属性を保存する：
００７５    アイノード番号２６０１：アイノード固有の番号
００７６    ファイルタイプ２６０２：アイノードが何に対して使用されるか（ファイル、ディレクトリ、等）
００７７    ファイルサイズ２６０３：ファイルのサイズ
００７８    アクセス許可２６０４：ユーザ（オーナー）、グループ、他に対するアクセス許可を表わすビットストリング
００７９    ユーザＩＤ２６０５：ファイルを所有するユーザのＩＤ番号
００８０    グループＩＤ２６０６：ユーザ（オーナー）が属するグループのＩＤ番号
００８１    生成時刻２６０７：ファイルが生成された時刻
００８２    最終修正時刻２６０８：ファイルが修正された時刻
００８３    最終アクセス時刻２６０９：ファイルが最後にアクセスされた時刻
００８４    ブロックポインタ２６１０：実際のデータが保存されるデータブロックのポインタ
００８５    図７はアイノード３０９とデータブロック３０８間の論理関係を示す。各アイノード３０９はファイル又はディレクトリを示すために使用できる。図７に示すように、アイノードデータ構造はアイノード番号４０９を含む。アイノードがファイルを示すならば（即ちそのファイルタイプフィールド４１０がアイノード４０４と４０７のように「ファイル」であるならば）、これらのアイノードにより指示されたデータブロック４０６と４０８はそれぞれ、対応するファイルの実際のデータを含む。ファイルが複数（例えば１０個）のデータブロック３０８に保存されるならば、１０個のデータブロック３０８のアドレスがブロックポインタ２６１０に記録される。各ブロックポインタ４１１はボリューム２０５の論理ブロックアドレス（ＬＢＡ）として表わされる。アイノードがディレクトリを示すならば（即ちそのファイルタイプフィールドが図７のアイノード４０１と４０３のように「ディレクトリ」であるならば）ブロックポインタ２６１０（図７の要素４１１）により指示されたデータブロック３０８（図７のブロック４０２と４０５）は対応するディレクトリにアイノード番号２６０１及びすべてのファイル名とディレクトリ名のリストを保存する。
【００３７】
００８６    ＮＦＳｖ４を使用してボリュームのファイルにアクセス：
００８７    ここで、ＮＡＳクライアント１２０がＮＡＳシステム１  １０１のファイルにアクセスする方法が図８に示す状況を例として説明される。この例ではすべてのファイル５０６とディレクトリ５０２−５０５は一つのボリューム５０１内で一つのＮＡＳシステム１  １０１内にあるので、ボリュームにリファーラルは存在しない。
【００３８】
００８８    図９はＮＡＳクライアント１２０がファイル「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ／ｒｅａｄｍｅ」にアクセスするためにＮＡＳシステム１  １０１に発行する操作を示す。ＮＦＳ第４版プロトコルは、サーバのファイル又はディレクトリを「ファイルハンドル（ｆｉｌｅｈａｎｄｌｅ又はｆｈ）」でクライアントに参照させている。更に、ＮＦＳ第４版プロトコルはクライアントがサーバに送信する複数のファイル操作を単一の要求にグループ化するのを可能にする、ＣＯＭＰＯＵＮＤ  ＲＰＣ手順と呼ばれる機能を持つ。ＮＦＳ第４版では、作業は操作を経て達成される。操作はＣＯＭＰＯＵＮＤ手順の一部を形成するファイルシステム動作である。サーバは次に操作の応答を単一の応答にグループ化する。サーバ上では最初のエラー又は最後の操作となるまで評価が進行する。ここで最後の操作とはサーバがすべての操作に対して評価済という応答を返信する操作をいう。
【００３９】
００８９    ＮAＳクライアント１２０によって発行される第一のＣＯＭＰＯＵＮＤ６０１はＰＵＴＲＯＯＴＨＦ、ＬＯＯＫＵＰ、ＧＥＴＡＴＴＲ、及びＧＥＴＦＨ操作を含む。各操作後の（  ）内の内容はＮＡＳクライアント１２０により提供される操作の引き数（アーギュメント）或いはＮＡＳシステム１  １０１により返信される値を示す。
【００４０】
００９０    ＰＵＴＲＯＯＴＦＨ操作はサーバに、「現時点の」ファイルハンドルをサーバのファイル・トリーのＲＯＯＴに設定するように命令する。ＲＯＯＴファイルハンドルはＮＦＳ第４版プロトコルに於ける特別なファイルハンドルの一つである。ＲＯＯＴファイルハンドルはＮＦＳサーバのファイルシステムネームスペースの「概念上の」ルートである。クライアントはＰＵＴＲＯＯＴＦＨ操作を利用することにより、ＲＯＯＴファイルハンドルを使用するか又はＲＯＯＴファイルハンドルから開始する。一旦このＰＵＴＲＯＯＴＦＨ操作が使用されると、クライアントは次いでＬＯＯＫＵＰ操作によりサーバのファイル・トリー全体の精査が可能になる。
【００４１】
００９１    ＬＯＯＫＵＰ操作はサーバに、サーバ上の指定されたファイル名又はディレクトリ名を調べて、当該ファイル又はディレクトリのファイルハンドルを返信するように命令する。
【００４２】
００９２    ＧＥＴＡＴＴＲ操作はファイルタイプ又はファイルサイズのような現時点のファイルハンドルにより指定される対象ファイルシステムの属性を取得する。
【００４３】
００９３    ＧＥＴＦＨ操作は現時点のファイルハンドルを取得する。
【００４４】
００９４    ＮＡＳクライアント１２０により発行される第一のＣＯＭＰＯＵＮＤ６０１に応答して、ＮＡＳシステム１  １０１はクライアントに「／ｅｘｐｏｒｔ１」のファイルハンドルを返信する（図９の６０２参照）。
【００４５】
００９５    ＮＡＳクライアント１２０により発行される第二のＣＯＭＰＯＵＮＤ６０３はＰＵＴＦＨ、ＯＰＥＮ、ＧＥＴＦＨ、及びＲＥＡＤ操作を含んでいる。
【００４６】
００９６    ＰＵＴＦＨ操作は現時点のファイルハンドルを、操作の引き数として提供されるファイルハンドル（この場合「／ｅｘｐｏｒｔ１」のファイルハンドルがクライアントによって提供される）に置き換える。
【００４７】
００９７    ＯＰＥＮ操作はサーバに、操作の引き数として提供されるファイルハンドル（この場合、「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ／ｒｅａｄｍｅ」のファイルハンドルが提供される）によりファイルを開くように命令する。
【００４８】
００９８    ＲＥＡＤ操作はサーバに、ファイルを読み出してデータをクライアントに返信するように命令する。
【００４９】
００９９    ＮＡＳクライアント１２０により発行される第二のＣＯＭＰＯＵＮＤ６０３に応答して、ＮＡＳシステム１  １０１は「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ／ｒｅａｄｍｅ」のデータを返信する（図９の６０４参照）。
【００５０】
０１００    ＮＦＳｖ４を使用してリファーラルを持つボリュームのファイルにアクセスする：
０１０１    次に、図１０に示す状況を例にとり、ファイルシステムにリファーラルが存在する場合にＮＡＳクライアント１２０がＮＡＳシステム1  １０１のファイルにアクセスする方法が説明される。この例に於いて、ＮＡＳシステム１  １０１の「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ」下にあるファイルとディレクトリはＮＡＳシステム２  １２２の「／ｅｘｐｏｒｔ２」７０３に移行されてしまっており（例えば図１０のファイル７０４参照）、「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ」７０２は今やリファーラル７０２に置き換えられてしまっている。ファイルとディレクトリがＮＡＳシステム２  １２２（そのホスト名は「ｎａｓ２」である）の「／ｅｘｐｏｒｔ２」７０３に移行されていることを示すリファーラル情報を表現するために、「ｎａｓ２：／ｅｘｐｏｒｔ２」のような表現を使用することにする。
【００５１】
０１０２    図１１はＮＡＳシステム１  １０１の「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ／」がＮＡＳシステム２  １２２の「／ｅｘｐｏｒｔ２」７０３に移行され、「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ」７０２がリファーラル７０２に置き換えられてしまった場合に、ＮＡＳクライアント１２０がファイル「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ／ｒｅａｄｍｅ」にアクセスするためにＮＡＳシステム１  １０１に発行することができる、典型的な操作要求を示す。ＮＡＳクライアント１２０によって発行される第一のＣＯＭＰＯＵＮＤ８０１及びＮＡＳシステム１からＣＯＭＰＯＵＮＤ８０１への応答８０２は図９に示す例のそれら６０１と６０２と同じである。ＣＯＭＰＯＵＮＤ８０３に応答してＮＡＳシステム１  １０１は、「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ」はもうＮＡＳシステム１  １０１に存在しないので応答８０４でエラーコード「ＮＦＳ４ＥＲＲ＿ＭＯＶＥＤ」を返信し、「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ／ｒｅａｄｍｅ」のＯＰＥＮ操作は失敗する。
【００５２】
０１０３    エラーコード「ＮＦＳ４ＥＲＲ＿ＭＯＶＥＤ」を受信後、ＮＡＳクライアント１２０はどのディレクトリ下で移行されたかを決定するために別のＣＯＭＰＯＵＮＤ８０５を発行する。ＣＯＭＰＯＵＮＤ８０５への応答８０６で、ＮＡＳシステム１  １０１は再び「ＮＦＳ４ＥＲＲ＿ＭＯＶＥＤ」を返信する。しかしながら、同時に「／ｅｘｐｏｒｔ１／ｕｓｒ／ｓｒｃ」のＧＥＴＡＴＴＲ操作に応答して、ＮＡＳシステム１  １０１は「ｆｓ＿ｌｏｃａｔｉｏｎｓ」を返信する。「ｆｓ＿ｌｏｃａｔｉｏｎｓ」はリファーラル情報を含む構造である。この場合、「ｆｓ＿ｌｏｃａｔｉｏｎｓ」はリファーラル情報「ｎａｓ２：／ｅｘｐｏｒｔ２」を含む。この情報を参照して、ＮＡＳクライアント１２０はどのロケーションに操作をリダイレクトしなければならないかを決定することができる。この場合、ＮＡＳクライアント１２０は求めるファイルが「ｎａｓ２：／ｅｘｐｏｒｔ２」にあると決定できる。したがって、ＮＡＳクライアント１２０はＮＡＳシステム２  １２２のファイル「／ｅｘｐｏｒｔ２／ｒｅａｄｍｅ」にアクセスするために別のＣＯＭＰＯＵＮＤ８０７と８０９を発行する。ＣＯＭＰＯＵＮＤ８０７と８０９に応答して、ＮＡＳシステム２  １２２は応答８０８と８１０を発行する。
【００５３】
０１０４    リファーラルの実現方法の例：
０１０５    図１２はリファーラルの実現方法の例を示す。この例では、リファーラルはリファーラルファイルとして実現される。更に、この例はディレクトリ「ｓｒｃ」下のファイルシステム（又はファイルとディレクトリ）がＮＡＳシステム２  １２２に移行される場合を示す。
【００５４】
０１０６    図１２はそのファイルとサブディレクトリ情報を含むデータブロック９０２を指示するルートディレクトリアイノード９０１を示す。サブディレクトリ「ｕｓｒ」に対応するエントリーはリファーラルファイル「ｓｒｃ」を含むデータブロック９０４を指示するディレクトリタイプのアイノード９０３に関連付けられている。
【００５５】
０１０７    リファーラルファイル「ｓｒｃ」のアイノードに於いて、ファイルタイプフィールドは項目９０５にあるように「リファーラル」を示す。アイノードのブロックポインタ２６１０により指示されるデータブロック９０６はターゲット９０７とパス９０８から成る新たなロケーションのリストを保存する。ターゲット９０７はディレクトリ「ｓｒｃ」下にあるファイルシステム或いはファイルとディレクトリが移行されるＮＡＳシステムのホスト名を示し、パス９０８は移行されたデータがＮＡＳシステム内で保存されるディレクトリのパスを示す。この例に於いて、行９０９は「ｓｒｃ」下のファイルとディレクトリが「ｎａｓ２：／ｅｘｐｏｒｔ２」に移行されていることを示す。
【００５６】
０１０８    スナップショット：
０１０９    スナップショットはファイルサーバ又はＮＡＳシステム内のボリュームの或る時点のコピーを取得するメカニズムである。スナップショットメカニズムを実施するには各種の方法がある。ミラーリングは最も広く知られた実現方法の一つである。
【００５７】
０１１０    ミラーリング法に於いて、原ボリュームと同じサイズを持つボリューム（シャドウボリューム）が用意され、シャドウボリュームは原ボリュームと関連付けられる。シャドウボリュームが原ボリュームと関連付けられた直後に、原ボリュームのすべてのデータはシャドウボリュームにコピーされる（初期コピー）。初期コピーが完了後は、原ボリュームへのすべての書き込みＩ／Ｏは、シャドウボリュームにも適用される。或る時刻に於けるデータイメージが維持される必要がある時、書き込みＩ／Ｏのシャドウボリュームへの適用は停止される（原ボリュームとシャドウボリュームを分離する）。
【００５８】
０１１１    スナップショットイメージでのグローバルネームスペースの不一致（第一の実施例で解決される問題点）：
０１１２    図１３はリファーラルを含む各ボリュームのスナップショットが取得される時に何が起こるかを説明している。この状況では、ボリューム５０１のスナップショットが取得され、ＮＡＳシステム１  １０１の「／ｓｎａｐ１」にマウントされ、殆ど同時にボリューム１  ７０１のスナップショットが取得されＮＡＳシステム２  １２２上でマウントポイント１００７にて「／ｓｎａｐ２」にマウントされる。ＮＡＳシステム１  １０１上に結果として得られるスナップショット１００１は原ボリューム５０１のディレクトリ５０２−５０４に対応するディレクトリ１００２−１００４を持つ。ＮＡＳシステム２  １２２のスナップショットボリューム１００５は「ｒｅａｄｍｅ」ファイル１００８を含む。
【００５９】
０１１３    スナップショット１００１は原ボリュームと全く同じイメージなので、スナップショットボリュームのリファーラル１００６は矢印１００９が示すように、依然として「ｎａｓ２：／ｅｘｐｏｒｔ２」を示している。しかしながら、スナップショットボリュームのリファーラル１００６は、リファーラルがグローバルファイルシステムのスナップショットイメージにあるので、矢印１０１０が示すように「ｎａｓ２：／ｓｎａｐ２」を示さなければならない。したがって、スナップショットボリューム１００１のリファーラル１００６の情報は、リファーラル１００６が「ｎａｓ２：／ｓｎａｐ２」を示すように、矢印１０１１が示す通りに変更されなければならない。
【００６０】
０１１４    グローバルネームスペース管理テーブル：
０１１５    管理ホスト１１３はＮＡＳシステム１０１と１２２に、ボリュームのスナップショットを取得するように命令する。どのＮＡＳシステムにグローバルファイルシステムのスナップショットを維持するように命令しなければならないか決定するために、管理ホスト１１３は図４に示すグローバルネームスペース管理テーブル１１０１を管理する。
【００６１】
０１１６    グローバルネームスペース管理テーブル１１０１はＮＡＳシステムのグローバルファイルシステム形成内容を示す。グローバルネームスペースのパス１１０２、ターゲット１１０３、及びパス１１０４の列が存在する。ターゲット１１０３はグローバルファイルシステムの一部分を管理するＮＡＳシステムのホスト名を示し、パス１１０４は当該一部分を管理するＮＡＳシステム内のパス（マウントポイント）を示す。
【００６２】
０１１７    行１１０５と１１０６は図１０に記述される状況を示す。行１１０５はグローバルファイルシステムの／（ルート）がホスト名「ｎａｓ１」を持つＮＡＳシステムにより管理され、そのＮＡＳシステムのローカルパスは「／ｅｘｐｏｒｔ１」であることを示す。行１１０６はグローバルファイルシステム内の「／ｕｓｒ／ｓｒｃ」下のファイルとディレクトリがホスト名「ｎａｓ２」を持つＮＡＳシステムにより管理され、そのＮＡＳシステムのローカルパスは「／ｅｘｐｏｒｔ２」であることを示す。
【００６３】
０１１８    グローバルネームスペース管理テーブルに必要な情報を収集するフローダイアグラム：
０１１９    図１４は管理ホスト１１３がＮＡＳシステム１０１と１２２からグローバルネームスペース管理テーブル１１０１を作成するために情報を収集するフローダイアグラムを示す。
【００６４】
０１２０    ステップ１２０１：管理ホスト１１３はＬＡＮ１２１に接続されたすべてのＮＡＳシステム１０１と１２２に対してリファーラル情報要求をブロードキャストする。
【００６５】
０１２１    ステップ１２０２：管理ホスト１１３からリファーラル情報要求を受信後、各ＮＡＳシステム１０１と１２２はそれぞれ自身がエクスポートしたボリューム内のリファーラルを検索する。
【００６６】
０１２２    ステップ１２０３：各ＮＡＳシステム１０１と１２２はそれぞれ自身がエクスポートしたボリュームにリファーラルファイルが存在するかチェックする。
【００６７】
０１２３    ステップ１２０４：ＮＡＳシステムが自らエクスポートしたボリュームにリファーラルファイルが見つからないならば、リファーラル情報としてヌル（空文字）を設定する。
【００６８】
０１２４    ステップ１２０５：もしＮＡＳシステムが自らエクスポートしたボリュームにリファーラルファイルを見つけた場合は、リファーラルファイルからリファーラル情報を取り出す。
【００６９】
０１２５    ステップ１２０６：ＮＡＳシステムは管理ホスト１１３にリファーラル情報を返信する。
【００７０】
０１２６    ステップ１２０７：すべてのＮＡＳシステム１０１と１２２からリファーラル情報を受信後、管理ホスト１１３はグローバルネームスペース管理テーブル１１０１を作成する。
【００７１】
０１２７    図１５は各ＮＡＳシステム１０１と１２２が管理ホスト１１３に返信するリファーラル情報に関するテーブル２９０１を示す。各ＮＡＳシステム１０１と１２２は自身のホスト名２９０２、ローカルエクスポートしたディレクトリ２９０３、リファーラルファイルのローカルロケーション２９０４、リファーラルファイルが示すターゲットホスト名２９０５、リファーラルファイルが示すターゲットホストのリファーラルパス２９０６を返信する。行２９０７はＮＡＳシステム１０１が管理ホスト１１３に返信するリファーラル情報を示す。ＮＡＳシステム１０１は図１３に示すようにそのボリューム内にリファーラルファイル７０２を持つので、リファーラルファイルからリファーラル情報を取り出して、その情報を管理ホスト１１３に返信する。一方、ＮＡＳシステム１２２はそのボリューム内にリファーラルファイルを持たないので、行２９０８に示すように自身のホスト名２９０２とそのローカルエクスポートしたディレクトリ２９０３以外はヌルで満たしたリファーラル情報を返信する。
【００７２】
０１２８    ＮＡＳシステム１０１と１２２から返信されたリファーラル情報により管理ホスト１１３はＮＡＳシステム１  １０１がグローバルファイルシステムのルートの一つを管理していることを知ることができる。というのはその他のリファーラル情報はＮＡＳシステム１  １０１内のローカルエクスポートしたディレクトリであることを示しているからである。
【００７３】
０１２９    スナップショットを命令するフローダイアグラム：
０１３０    管理ホスト１１３がＮＡＳシステムにグローバルファイルシステムのスナップショットを取得するように命令する時、スナップショットイメージはグローバルファイルシステムを構成するすべてのＮＡＳシステム上で殆ど同時に取得されなければならない。したがって、すべてのＮＡＳシステムに殆ど同時にスナップショットを取得するように命令する方法が必要になる。
【００７４】
０１３１    ここで二つの方法が記述される。
【００７５】
０１３２    １．命令ブロードキャスト：  
０１３３    第一の方法は図１６に記述するように、管理ホスト１１３がすべてのＮＡＳシステムにグローバルファイルシステムのスナップショットを取得するように命令２７０１と２７０２を送信するというものである。
【００７６】
０１３４    図１７は管理ホスト１１３がこの方法によってスナップショットを取得するようにＮＡＳシステムに命令するフローダイアグラムを示す。
【００７７】
０１３５    ステップ１３０１：管理ホスト１１３はグローバルネームスペース管理テーブル１１０１からすべてのホスト名とパスを取り出す。
【００７８】
０１３６    ステップ１３０２：管理ホスト１１３は、ステップ１３０１でグローバルネームスペース管理テーブル１１０１内で見つかったホスト名を持つすべてのホストに対してＰＲＥＰＡＲＥ  ＳＮＡＰＳＨＯＴ要求を送信する。この要求は「／ｅｘｐｏｒｔ１」又は「／ｅｘｐｏｒｔ２」のようなスナップショットを取得するターゲットボリュームを含んでいる。
【００７９】
０１３７    ステップ１３０３：管理ホスト１１３からＰＲＥＰＡＲＥ  ＳＮＡＰＳＨＯＴ要求を受信後、各ＮＡＳシステム１０１と１２２はスナップショットボリュームとスナップショットボリュームのランダムマウントポイントを用意する。ここでランダムマウントポイントはＮＡＳシステム内に既に存在するマウントポイントと同じであってはならない。
【００８０】
０１３８    ステップ１３０４：各ＮＡＳシステム１０１と１２２はステップ１３０３で決定されたランダムマウントポイントを管理ホスト１１３に返信する。
【００８１】
０１３９    ステップ１３０５：管理ホスト１１３はＰＲＥＰＡＲＥ  ＳＮＡＰＳＨＯＴ要求を送信したすべてのＮＡＳシステムから応答を受信するまで待機する。管理ホスト１１３はグローバルネームスペース管理テーブル１１０１にスナップショットボリュームのマウントポイントを追加する。図１３に示す例では、グローバルネームスペース管理テーブル１１０１は図１８のテーブル１４０１となる。テーブル１１０１の列１１０２、１１０３、及び１１０４はテーブル１４０１の列１４０２、１４０３、及び１４０４に対応する。テーブル１４０１の新たな列１４０５はスナップショットパスの情報を含む。行１４０６と１４０７は典型的なネームスペース情報を含む。
【００８２】
０１４０    ステップ１３０６：管理ホスト１１３はステップ１３０１でホスト名がグローバルネームスペース管理テーブル１１０１内で見つかったすべてのホストに対してＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求を送信する。ＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求は図１９に示す情報３００１を含んでいる。スナップショットボリュームに対して各ＮＡＳシステムによって決定される対象ボリューム３００２とスナップショットマウントポイント３００３が存在する。更に、ＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求は、スナップショットが取得されマウントされた後、スナップショットボリュームのリファーラルファイルがそれに変更されるべきリファーラル情報を含む。対象リファーラルファイル３００４、新たなターゲット３００５及び新たなパス３００６が存在する。２よりも多い個数のリファーラルが変更されなければならないならば、他のリファーラルファイルの情報が列３００４、３００５及び３００６に追加される。図１９で行３００７はＮＡＳシステム１  １０１に送信されるＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求に含まれる情報を示し、行３００８はＮＡＳシステム２  １２２に送信される情報を示す。
【００８３】
０１４１    ステップ１３０７：管理ホスト１１３からＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求を受信後、各ＮＡＳシステム１０１と１２２はスナップショットを取得し、指定されたマウントポイントにスナップショットボリュームをマウントする。
【００８４】
０１４２    ステップ１３０８：各ＮＡＳシステム１０１と１２２に於いて、新たなリファーラル情報がＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求に含まれるかチェックされる。新たなリファーラル情報が含まれないならば、各ＮＡＳシステム１０１と１２２はプロセスを終了する。
【００８５】
０１４３    ステップ１３０９：新たなリファーラル情報がＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求に含まれているならば、ＮＡＳシステムは指定されたリファーラルファイルのリファーラル情報を要求で指定された新たなリファーラル情報に変更する。
【００８６】
０１４４    ２．命令リダイレクト：
０１４５    第二の方法は、管理ホスト１１３がグローバルファイルシステムのルートを持つＮＡＳシステム（ここではこのＮＡＳシステムをルートＮＡＳシステムと呼ぶことにし、この場合はＮＡＳシステム１  １０１がそれに相当する）のみに命令し（２８０１にて）、次いでルートＮＡＳシステムはルートＮＡＳシステムのリファーラルが示す他のＮＡＳシステムに命令を（２８０２にて）リダイレクトする、というものである。この第二の方法は図２０に記述されている。
【００８７】
０１４６    図２１は管理ホスト１１３がルートＮＡＳシステムに、命令リダイレクト経由でスナップショットを取得するように命令するフローダイアグラムを示す。
【００８８】
０１４７    ステップ１５０１：管理ホスト１１３はグローバルファイルシステムのルートを持つＮＡＳシステム（この場合、ＮＡＳシステム１がそれに相当する）のホスト名とこのＮＡＳシステム内のパスを見つける。
【００８９】
０１４８    ステップ１５０２：管理ホスト１１３はＮＡＳシステム１  １０１に「ＰＲＥＰＡＲＥ  ＳＮＡＰＳＨＯＴ」要求を送信する。この要求は「／ｅｘｐｏｒｔ１」のようなスナップショットを取得するターゲットボリュームを含んでいる。
【００９０】
０１４９    ステップ１５０４：「ＰＲＥＰＡＲＥ  ＳＮＡＰＳＨＯＴ」要求を受信後、ＮＡＳシステム１  １０１はスナップショットボリュームとスナップショットボリュームのランダムマウントポイントを用意する。ここで、ランダムマウントポイントはＮＡＳシステム１  １０１内に既に存在するマウントポイントと同じであってはいけない。
【００９１】
０１５０    ステップ１５０５：ＮＡＳシステム１  １０１は管理ホスト１１３に、決定したマウントポイントを返信する。
【００９２】
０１５１    ステップ１５０６：ＮＡＳシステム１  １０１からマウントポイントを受信後、管理ホスト１１３はＮＡＳシステム１  １０１にＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求を送信する。
【００９３】
０１５２    ステップ１５０８：管理ホスト１１３からＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求を受信後、ＮＡＳシステム１  １０１はスナップショットターゲットボリュームのリファーラルファイルを検索する。
【００９４】
０１５３    ステップ１５０９：ＮＡＳシステム１  １０１はターゲットボリューム内にリファーラルファイルが見つかるかチェックする。リファーラルファイルが見つからないならば、次にステップ１５１４に進む。
【００９５】
０１５４    ステップ１５１０：リファーラルファイルが見つかったならば、ＮＡＳシステム１  １０１はリファーラルファイルがターゲットとして示すＮＡＳシステムに、ＰＲＥＰＡＲＥ  ＳＮＡＰＳＨＯＴ要求を送信する。この場合、ＮＡＳシステム２  １２２に要求を送信する。
【００９６】
０１５５    ステップ１５１１：ＮＡＳシステム１  １０１からＰＲＥＰＡＲＥ  ＳＮＡＰＳＨＯＴ要求を受信後、ＮＡＳシステム２  １２２はステップ１５０３からステップ１５０５までと同じステップを処理し、ＮＡＳシステム１  １０１にランダムマウントポイントを返信する。
【００９７】
０１５６    ステップ１５１２：ＮＡＳシステム２  １２２からランダムマウントポイントを受信後、ＮＡＳシステム１  １０１はＮＡＳシステム２  １２２にＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求を送信する。
【００９８】
０１５７    ステップ１５１３：ＮＡＳシステム１  １０１からＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求を受信後、ＮＡＳシステム２  １２２はステップ１５０７からステップ１５１５までと同じステップを処理する。
【００９９】
０１５８    ステップ１５１４：ＮＡＳシステム１  １０１は指定されたターゲットボリュームのスナップショットを取得し、指定されたマウントポイントにスナップショットボリュームをマウントする。
【０１００】
０１５９    ステップ１５１５：ＮＡＳシステム１  １０１はスナップショットボリュームにリファーラルファイルが存在するならばリファーラルファイルがＮＡＳシステム２  １２２のスナップショットボリュームを示すように、リファーラルファイルを変更する。リファーラルファイルがそれに変更されるべきターゲットとパスはステップ１５１０でＰＲＥＰＡＲＥ  ＳＮＡＰＳＨＯＴ要求を送信するターゲットホストとして取り出され、ランダムマウントポイントがＰＲＥＰＡＲＥ  ＳＮＡPＳＨＯＴ要求に応答してＮＡＳシステム２  １２２から受信される。
【０１０１】
０１６０    リファーラルファイルを変更せずに新たなリファーラル情報を形成：
０１６１    図１７と図２１に記述されたフローダイアグラムに於いて、ＮＡＳシステムはステップ１３０９とステップ１５１５でリファーラルファイルのリファーラル情報を自ら変更する。しかしながら、リファーラルファイルを自ら変更せずにリファーラル情報を変更する方法がある。それは次の方法、即ちＮＡＳシステムは図３に示すリファーラル管理テーブル１６０１を維持し、クライアントがリファーラルファイルにアクセスしようとする時刻の新たなリファーラル情報を返信するという方法、で実現できる。
【０１０２】
０１６２    （リファーラルファイルを変更せずに）リファーラル情報を形成するフローダイアグラム：
０１６３    図２２はＮＡＳシステムが、クライアントからスナップショットボリュームのリファーラルファイルへのアクセス要求を受信した時に、新たなリファーラル情報を形成するフローダイアグラムを示す。
【０１０３】
０１６４    ステップ１７０１：ＮＡＳシステムはクライアントがアクセスしようとしているリファーラルファイルがスナップショットボリュームにあるか否かチェックする。あるならば、ステップ１７０２に進む。なければ、ステップ１７０５に進む。
【０１０４】
０１６５    ステップ１７０２：ＮＡＳシステムはリファーラルファイルのパスとファイル名をキーとして使用してリファーラル管理テーブル１６０１内で対応するレコードを検索する。
【０１０５】
０１６６    ステップ１７０３：ステップ１７０２で対応するレコードがリファーラル管理テーブル１６０１内で見つけられたかがチェックされる。見つかっていたならば、ステップ１７０４に進む。見つからなければ、ステップ１７０５に進む。
【０１０６】
０１６７    ステップ１７０４：リファーラルファイルの対応するレコードが存在するならば、ＮＡＳシステムはクライアントへの応答を形成するためにリファーラル管理テーブル１６０１の情報を使用する。
【０１０７】
０１６８    ステップ１７０５：クライアントがアクセスしようとしているリファーラルファイルがスナップショットボリューム内にないならば、或いはリファーラル管理テーブル１６０１にリファーラルファイルの対応するレコードが存在しないならば、ＮＡＳシステムはクライアントへの応答を形成するためにリファーラルファイルの情報を使用する。
【０１０８】
０１６９    ステップ１７０６：ＮＡＳシステムはクライアントに応答を返信する。
【実施例２】
【０１０９】
０１７１    システム構成：
０１７２    図２３は第二の実施例の方法と装置が適用されるシステムの構成例を示す。このシステムは複数のローカルサイトＮＡＳシステム１８０１と１８０２、複数のリモートサイトＮＡＳシステム１８０６と１８０７、管理ホスト１８０３、ＮＦＳｖ４クライアントソフトウェア１９０７を実行する一つ以上のローカルサイトＮＡＳクライアント１８０４、及び一つ以上のリモートサイトＮＡＳクライアント１８０８から構成される。
【０１１０】
０１７３    各ＮＡＳシステム１８０１、１８０２、１８０６及び１８０７は第一の実施例のＮＡＳシステム１０１と１２２と同じコンポーネントを持つ。
【０１１１】
０１７４    管理ホスト１８０３は第一の実施例の管理ホスト１１３と同じコンポーネントを持つ。
【０１１２】
０１７５    各ＮＡＳクライアント１８０４と１８０８は第一の実施例のＮＡＳクライアント１２０と同じコンポーネントを持つ。
【０１１３】
０１７６    ローカルサイトＮＡＳシステム１８０１と１８０２、管理ホスト１８０３、及びローカルサイトＮＡＳクライアント１８０４はローカルサイトＬＡＮ１８０５を経由して相互に接続されており、リモートサイトＮＡＳシステム１８０６と１８０７、及びリモートサイトＮＡＳクライアント１８０８はリモートサイトＬＡＮ１８０９を経由して相互に接続されている。更に、ローカルサイトＬＡＮ１８０５とリモートサイトＬＡＮ１８０９は、ローカルサイトＮＡＳシステム１８０１と１８０２がリモートサイトＮＡＳシステム１８０６と１８０７にデータを転送できるようにＷＡＮ１８１０を経由して相互に接続されている。ネットワーク上でローカルサイトＮＡＳシステム１  １８０１はホスト名「ｎａｓ１」を持ち、ローカルサイトＮＡＳシステム２  １８０２はホスト名「ｎａｓ２」を持つ。更にネットワーク上でリモートサイトＮＡＳシステム１  １８０６はホスト名「ｎａｓ３」を持ち、リモートサイトＮＡＳシステム２はホスト名「ｎａｓ４」を持つ。  
０１７７    ここでローカルサイトとリモートサイト間のリモートコピーのための基本的な構成ができ上がっているものと仮定する。ローカルサイトＮＡＳシステム１  １８０１はリモートサイトＮＡＳシステム１８０６に関連付けられ、ローカルサイトＮＡＳシステム１８０２はリモートサイトＮＡＳシステム１８０７に関連付けられる。
【０１１４】
０１７８    機能ダイアグラム：
０１７９    図２４は第二の実施例のシステムの機能ダイアグラムを示す。
【０１１５】
０１８０    各ＮＡＳシステム１８０１、１８０２、１８０６、及び１８０７のＮＡＳコントローラ１０２にはＮＦＳｖ４サーバ１９０１、ローカルファイルシステム１９０２、リモートコピーマネージャ１９０３、及びボリュームマネージャ１９０４が存在する。
【０１１６】
０１８１    ＮＦＳｖ４サーバ１９０１はローカルファイルシステム１９０２がマウントするボリュームにＮＦＳ第４版プロトコルを経由してファイルをエクスポートする（ファイルをアクセス可能にする）。更に、通常のＮＦＳ第４版プロトコルと異なり、ＮＦＳｖ４サーバ１９０１は図２５に示すリファーラル管理テーブル２３０１に基づいて変更したリファーラル情報を返信する。
【０１１７】
０１８２    ローカルファイルシステム１９０２はＮＦＳｖ４サーバ１９０１からファイルＩ／Ｏ要求を受信し、ボリュームマネージャ１９０４に適切なブロックＩ／Ｏ要求を発行する。
【０１１８】
０１８３    リモートコピーマネージャ１９０３は管理ホスト１８０３又は他のローカルサイトＮＡＳシステム１８０１又は１８０２からの命令に従って、関連付けられたリモートサイトＮＡＳシステム上でボリュームのリモートコピーを設定する。更に、リモートコピーマネージャ１９０３は管理ホスト１８０３からの命令に従ってボリュームのリファーラルを検索し、管理ホスト１８０３にリファーラル情報を返信する。更に、リモートコピーマネージャ１９０３は図２５に示すリファーラル管理テーブル２３０１を管理する。このテーブルは列２３０２の各リファーラルファイルに対して列２３０３に新たなターゲット情報並びに列２３０４に新たなパス情報を含んでいる。
【０１１９】
０１８４    ボリュームマネージャ１９０４はストレージシステム１０３の一つ以上のディスクドライブ１１１を使用して一つ以上のボリューム１９０５を生成する。
【０１２０】
０１８５    管理ホスト１８０３にはリモートコピー命令モジュール１９０６Ａが存在する。
【０１２１】
０１８６    リモートコピー命令モジュール１９０６AはローカルサイトＮＡＳシステム１８０１と１８０２からリファーラル情報を収集し、図２６に示すグローバルネームスペース管理テーブル２１０１を管理する。テーブル２１０１はグローバルネームスペースパス列２１０２、ターゲットストレージシステム列２１０３、ターゲットパス列２１０４、リモートコピーターゲットストレージシステム列２１０５、並びにリモートコピーパス列２１０６を含む。更に、リモートコピー命令モジュール１９０６AはローカルサイトＮＡＳシステム１８０１と１８０２に、関連付けられたリモートサイトＮＡＳシステム１８０６又は１８０７上でボリュームのリモートコピーを設定するように命令する。
【０１２２】
０１８７    リモートコピー：
０１８８    リモートコピーはリモート配置したファイルサーバ又はＮＡＳシステム上でボリュームの同期又は非同期のコピーを維持するメカニズムである。
【０１２３】
０１８９    リモートコピーメカニズムでは原ボリューム（プライマリボリューム）と同じサイズを持つボリューム（セカンダリボリューム）がリモート配置したファイルサーバ又はＮＡＳシステム上に用意され、セカンダリボリュームはプライマリボリュームと関連付けられる。セカンダリボリュームがプライマリボリュームと関連付けられた後、プライマリボリュームのすべてのデータはセカンダリボリュームにコピーされる（初期コピー）。初期コピーが完了後、プライマリボリュームへのすべての書き込みＩ／Ｏはセカンダリボリュームに送信され、適用される。
【０１２４】
０１９０    リモートコピーメカニズムを実現するには各種方法がある。サーバベースのブロックリモートコピーはリモートコピーメカニズムの広く知られた実現方法の一つである。サーバベースのブロックリモートコピーの例としてＮＡＳシステムのＮＡＳコントローラのリモートコピー機能を遂行する方法がある。この方法では、ＮＡＳコントローラのボリュームマネージャはプライマリボリュームに適用されるすべての書き込みブロックＩ／Ｏを、ＷＡＮを経由してリモート配置したＮＡＳシステム上のセカンダリボリュームに転送する。
【０１２５】
０１９１    リモートコピーイメージでのグローバルネームスペースの不一致（第二の実施例で解決される問題点）：
０１９２    図２７はリファーラルを含む各ボリュームのリモートコピーイメージが設定される時に何が起こるかを説明している。この状況では、ローカルサイトＮＡＳシステム１  １８０１のボリューム１  ５０１のリモートコピーイメージはリモートサイトＮＡＳシステム１  １８０６上で設定されマウントポイント２００２にて「／ｃｏｐｙ１」にマウントされ、殆ど同時にローカルサイトＮＡＳシステム２  １８０２のボリューム１  ７０１のリモートコピーイメージはリモートサイトＮＡＳシステム２  １８０７のボリューム１  ２００５として設定されマウントポイント２００７にて「／ｃｏｐｙ２」にマウントされる。リモートコピーボリューム２００１はターゲットボリューム５０１のディレクトリ５０３−５０４に対応するディレクトリ２００３と２００４を含んでいる。ボリューム１  ２００５は「ｒｅａｄｍｅ」ファイル２００８を含む。
【０１２６】
０１９３    リモートコピーはリモートサイトＮＡＳシステム１８０６と１８０７のボリューム１  ５０１とボリューム１  ７０１とで全く同じイメージを作成するので、ボリューム２００１のリファーラルは矢印２００９が示すように、依然として「ｎａｓ２：／ｅｘｐｏｒｔ２」を示している。しかしながら、スナップショットボリュームのリファーラル２００６は、リファーラルがグローバルファイルシステムのリモートコピーイメージにあるので、矢印２０１０が示すように「ｎａｓ４：／ｃｏｐｙ２」を示さなければならない。したがって、リモートコピーボリュームのリファーラル２００６の情報は、リファーラル２００６が「ｎａｓ４：／ｃｏｐｙ２」を示すように、矢印２０１１が示す通りに変更されなければならない。
【０１２７】
０１９４    グローバルネームスペース管理テーブル：
０１９５    管理ホスト１８０３はローカルサイトＮＡＳシステム１８０１と１８０２に、ボリュームのリモートコピーを設定するように命令する。どのローカルサイトＮＡＳシステムにグローバルファイルシステムのリモートコピーイメージを維持するように命令しなければならないか決定するために、管理ホスト１８０３は図４に示すグローバルネームスペース管理テーブル１１０１（第一の実施例と同じテーブル）を管理する。
【０１２８】
０１９６    グローバルネームスペース管理テーブルに必要な情報を収集するフローダイアグラム：
０１９７    フローダイアグラムは第一の実施例に対する図１４と同じである。
【０１２９】
０１９８    リモートコピーを設定するフローダイアグラム：
０１９９    管理ホスト１８０３がローカルサイトＮＡＳシステムにグローバルファイルシステムのリモートコピーを設定するように命令する時、リモートコピーイメージはグローバルファイルシステムを構成するすべてのローカルサイトＮＡＳシステム上で設定されなければならない。したがって、すべてのローカルサイトＮＡＳシステムにリモートコピーを設定するように命令する方法が必要になる。
【０１３０】
０２００    ここで二つの方法が記述される。
【０１３１】
０２０１    １．命令ブロードキャスト：
０２０２    第一の方法は管理ホスト１８０３がすべてのローカルサイトＮＡＳシステムにリモートコピーを設定するように命令するというものである。この方法は第一の実施例で図１６に記述したものと同様である。
【０１３２】
０２０３    ステップ２２０１：管理ホスト１８０３はグローバルネームスペース管理テーブル１１０１からすべてのホスト名とパスを取り出す。
【０１３３】
０２０４    ステップ２２０２：管理ホスト１８０３はステップ２２０１でグローバルネームスペース管理テーブル１１０１内で見つかったホスト名を持つすべてのホストに対してＰＲＥＰＡＲＥ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を送信する。この要求は「／ｅｘｐｏｒｔ１」又は「／ｅｘｐｏｒｔ２」のようなスナップショットを取得するターゲットボリュームを含んでいる。
【０１３４】
０２０５    ステップ２２０３：管理ホスト１８０３からＰＲＥＰＡＲＥ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を受信後、各ローカルサイトＮＡＳシステム１８０１と１８０２はこの要求を各ローカルサイトＮＡＳシステム１８０１と１８０２が関連付けられたリモートサイトＮＡＳシステム１８０６と１８０７に転送する。
【０１３５】
０２０６    ステップ２２０４：各ローカルサイトＮＡＳシステム１８０１と１８０２から転送されたＰＲＥＰＡＲＥ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を受信後、各リモートサイトＮＡＳシステム１８０６と１８０７はリモートコピーボリュームとリモートコピーボリュームのランダムマウントポイントを用意する。ここで、ランダムマウントポイントは各リモートサイトＮＡＳシステム１８０６と１８０７内に既に存在するマウントポイントと同じであってはならない。
【０１３６】
０２０７    ステップ２２０５：各リモートサイトＮＡＳシステム１８０６と１８０７は各ローカルサイトＮＡＳシステム１８０１と１８０２にランダムマウントポイントを返信する。
【０１３７】
０２０８    ステップ２２０６：各リモートサイトＮＡＳシステム１８０６と１８０７から応答を受信後、各ローカルサイトＮＡＳシステム１８０１と１８０２はこの応答を管理ホスト１８０３に転送し、更に、管理ホスト１８０３にリモートコピーターゲット（リモートサイトＮＡＳシステム１８０６又は１８０７）のホスト名を送信する。
【０１３８】
０２０９    ステップ２２０７：管理ホスト１８０３はＰＲＥＰＡＲＥ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を送信したすべてのローカルサイトＮＡＳシステムから返信メッセージを受信するまで待機する。管理ホスト１８０３はグローバルネームスペース管理テーブル１１０１にリモートコピーボリュームのマウントポイントを追加する。図２７に示す例では、グローバルネームスペース管理テーブル１１０１は図２６のテーブル２１０１になる。
【０１３９】
０２１０    ステップ２２０８：管理ホスト１８０３はステップ２２０１でホスト名がグローバルネームスペース管理テーブル１１０１内で見つかったすべてのホストに対してＳＥＴＵＰ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を送信する。ＳＥＴＵＰ  ＲＥＭＯＴＥ  ＣＯＰＹ要求は図２８に示す新たなリファーラル情報３１０１を含んでいる。このテーブルには対象リファーラルファイル３１０２、新たなターゲット３１０３、及びセカンダリボリューム内の対象リファーラルファイルがそのように変更されるべき新たなパス３１０４が存在する。２よりも多い個数のリファーラルファイルが変更されなければならないならば、行が追加されて残りのリファーラルファイルの情報が追加される。図２８で行３１０５はローカルサイトＮＡＳシステム１８０１に送信されるＳＥＴＵＰ  ＲＥＭＯＴＥ  ＣＯＰＹ要求に含まれる情報を示し、行３１０６はローカルサイトＮＡＳシステム１８０２に送信される情報を示す。
【０１４０】
０２１１    ステップ２２０９：管理ホスト１８０３から「ＳＥＴＵＰ  ＲＥＭＯＴＥ  ＣＯＰＹ」要求を受信後、各ローカルサイトＮＡＳシステム１８０１と１８０２は自らと、それに関連付けられたリモートサイトＮＡＳシステムとの間でリモートコピーを設定する。
【０１４１】
０２１２    ステップ２２１０：各ローカルサイトＮＡＳシステム１８０１と１８０２は各リモートサイトＮＡＳシステム１８０６と１８０７に対して設定が完了したという通知を送信する。この通知は管理ホスト１８０３から送信された新たなリファーラル情報を含んでいる。
【０１４２】
０２１３    ステップ２２１１：各ローカルサイトＮＡＳシステム１８０１と１８０２から通知を受信後、各リモートサイトＮＡＳシステム１８０６と１８０７は送信された新たなリファーラル情報に基づいて図２５に示すリファーラル管理テーブル２３０１を作成する。
【０１４３】
０２１４    ２．命令リダイレクト：
０２１５    第二の方法は管理ホスト１８０３がグローバルファイルシステムのルートを持つローカルサイトＮＡＳシステム（ここではルートローカルサイトNＡＳシステムと呼ぶことにする）のみに命令し、次いでルートローカルサイトＮＡＳシステムはルートローカルサイトＮＡＳシステムのリファーラルが示す他のローカルサイトＮＡＳシステムに命令をリダイレクトする、というものである。この第二の方法は第二の実施例の図２０に記述したものと類似している。
【０１４４】
０２１６    ステップ２５０１：管理ホスト１８０３はグローバルファイルシステムのルートを持つＮＡＳシステム（この場合、ローカルサイトＮＡＳシステム１  １８０１がそれに相当する）のホスト名とこのＮＡＳシステム内のパスを見つける。
【０１４５】
０２１７    ステップ２５０２：管理ホスト１８０３はローカルサイトＮＡＳシステム１  １８０１にＰＲＥＰＡＲＥ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を送信する。この要求は「／ｅｘｐｏｒｔ１」のようなリモートコピーを設定するターゲットボリュームを含んでいる。
【０１４６】
０２１８    ステップ２５０４：ＰＲＥＰＡＲＥ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を受信後、ローカルサイトＮＡＳシステム１  １８０１はこの要求をローカルサイトＮＡＳシステム１８０１が関連付けられたリモートサイトＮＡＳシステム１８０６に転送する。
【０１４７】
０２１９    ステップ２５０５：リモートサイトＮＡＳシステム１８０６は図２９に示すステップ２２１２からステップ２２０５までと同じステップを処理する。
【０１４８】
０２２０    ステップ２５０７：ローカルサイトＮＡＳシステム１８０１は管理ホスト１８０３に応答を転送する。更に、ローカルサイトＮＡＳシステム１８０１は管理ホスト１８０３にリモートコピーターゲット（リモートサイトＮＡＳシステム１  １８０６）のホスト名を送信する。
【０１４９】
０２２１    ステップ２５０８：管理ホスト１８０３はローカルサイトＮＡＳシステム１  １８０１にＳＥＴＵＰ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を送信する。この要求はリモートコピーを設定するターゲットボリュームを含んでいる。
【０１５０】
０２２２    ステップ２５１０：ローカルサイトＮＡＳシステム１  １８０１は指定されたボリュームのリファーラルファイルを検索する。
【０１５１】
０２２３    ステップ２５１１：ローカルサイトＮＡＳシステム１  １８０１はリファーラルファイルが指定されたボリューム内で見つかるかチェックする。リファーラルファイルが見つからないならば、ステップ２５１６に進む。
【０１５２】
０２２４    ステップ２５１２：ローカルサイトＮＡＳシステム１  １８０１はリファーラルファイルのターゲットにＰＲＥＰＡＲＥ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を送信する。図２７に示す例では、ローカルサイトＮＡＳシステム１  １８０１はローカルサイトＮＡＳシステム２  １８０２にこの要求を送信する。
【０１５３】
０２２５    ステップ２５１３：ローカルサイトＮＡＳシステム２  １８０２はステップ２５０３からステップ２５０７までと同じステップを処理し、ローカルサイトＮＡＳシステム１  １８０１にランダムマウントポイントとリモートコピーターゲットのホスト名を返信する。
【０１５４】
０２２６    ステップ２５１４：ローカルサイトＮＡＳシステム１  １８０１はリファーラルファイルのターゲットにＳＥＴＵＰ  ＲＥＭＯＴＥ  ＣＯＰＹ要求を送信する。図２７に示す例では、ローカルサイトＮＡＳシステム１  １８０１はローカルサイトＮＡＳシステム２  １８０２にその要求を送信する。
【０１５５】
０２２７    ステップ２５１５：ローカルサイトＮＡＳシステム２  １８０２はステップ２５０９から終了のステップまでと同じステップを処理する。
【０１５６】
０２２８    ステップ２５１６：ローカルサイトＮＡＳシステム１  １８０１は自らとリモートサイトＮＡＳシステム１  １８０６との間でリモートコピーを設定する。
【０１５７】
０２２９    ステップ２５１７：ローカルサイトＮＡＳシステム１８０１はリモートサイトＮＡＳシステム１８０６に設定が完了したという通知を送信する。この通知はステップ２５１２でローカルサイトＮＡＳシステム２  １８０２に送信されたＰＲＥＰＡＲＥ  ＲＥＭＯＴＥ  ＣＯＰＹ要求への応答から知ることができる新たなリファーラル情報を含んでいる。
【０１５８】
０２３０    ステップ２５１８：リモートサイトＮＡＳシステム１８０６は図２９のステップ２２１３からステップ２２１１までと同じステップを処理する。
【０１５９】
０２３１    新たなリファーラル情報を形成するフローダイアグラム：
０２３２    リモートサイトＮＡＳシステムは図２９と図３０に記述されたプロセスの間に図２５に示すリファーラル管理テーブル２３０１を作成する。リモートサイトＮＡＳシステムは、クライアントからセカンダリボリュームのリファーラルファイルへのアクセス要求を受信した時、リファーラル管理テーブル２３０１に基づいて新たなリファーラル情報を形成する。
【０１６０】
０２３３    図３１は、リモートサイトＮＡＳシステムが、クライアントからセカンダリボリュームのリファーラルファイルへのアクセス要求を受信した時、新たなリファーラル情報を形成するフローダイアグラムを示す。
【０１６１】
０２３４    ステップ２４０１：リモートサイトＮＡＳシステムは、クライアントがアクセスしようとしているリファーラルファイルがセカンダリボリュームにあるか否かチェックする。
【０１６２】
０２３５    ステップ２４０２：セカンダリボリュームにあるならば、リモートサイトＮＡＳシステムはリファーラルファイルのパスとファイル名をキーとして使用してリファーラル管理テーブル２３０１内の対応するレコードを検索する。ＹＥＳならば、ステップ２４０２に進む。ＮＯならば、ステップ２４０５に進む。
【０１６３】
０２３６    ステップ２４０３：リファーラル管理テーブル２３０１に対応するレコードが存在するかチェックがなされる。ＹＥＳならばステップ２４０４に進み、ＮＯならばステップ２４０５に進む。
【０１６４】
０２３７    ステップ２４０４：リファーラルファイルに対応するレコードが存在するならば、リモートサイトＮＡＳシステムはクライアントへの応答を形成するためにリファーラル管理テーブル２３０１の情報を使用する。
【０１６５】
０２３８    ステップ２４０５：クライアントがアクセスしようとしているリファーラルファイルがセカンダリボリュームにないならば、又はリファーラル管理テーブル２３０１にリファーラルファイルに対応するレコードが存在しないならば、リモートサイトＮＡＳシステムはクライアントへの応答を形成するためにリファーラルファイルの情報を使用する。
【０１６６】
０２３９    ステップ２４０６：リモートサイトＮＡＳシステムはクライアントに応答を返信する。
【０１６７】
０２４０    本発明の使用法
０２４１    本発明はＮＦＳ第４版サーバとして動作する機能を持つファイルサーバ又はネットワーク接続ストレージ（ＮＡＳ）システムで使用される。当業者には明らかなように、本発明概念はデータ複製機能を持つ多種多様な他のストレージシステムでも使用可能である。
【０１６８】
０２４２    図３２は本発明の方法論の実施例が実現できるコンピュータ／サーバシステム３２００の実施例を示すブロックダイアグラムである。このシステム３２００はコンピュータ／サーバプラットフォーム３２０１、周辺デバイス３２０２及びネットワークリソース３２０３を含んでいる。
【０１６９】
０２４３    コンピュータプラットフォーム３２０１は、コンピュータプラットフォーム３２０１の各種部分を跨って、及びそれらの間で情報を通信するデータバス３２０４又は他の通信メカニズム、及びバス３２０４に接続され情報を処理し他の計算業務やコントロール業務を遂行するためのプロセッサ３２０５を含むことができる。コンピュータプラットフォーム３２０１は更に各種情報並びにプロセッサ３２０５により実行される命令を保存するためにバス３２０４に接続された、ランダムアクセスメモリ（ＲＡＭ）又は他の動的ストレージデバイスのような揮発性ストレージ３２０６を含む。揮発性ストレージ３２０６は、プロセッサ３２０５により命令を実行する間の一時的な変数又は他の中間情報を保存するために使用できる。コンピュータプラットフォーム３２０１は更に基本的入出力システム（ＢＩＯＳ）のようなプロセッサ３２０５の静的な情報や命令並びに各種システム構成パラメータを保存するためにバス３２０４に接続された、リードオンリーメモリ（ＲＯＭ又はＥＰＲＯＭ）３２０７又は他の静的なストレージデバイスを含むことができる。磁気ディスク、光ディスク、或いは半導体フラッシュメモリデバイスのような永続的ストレージデバイス３２０８が提供され、情報と命令を保存するために、バス３２０４に接続される。
【０１７０】
０２４４    コンピュータプラットフォーム３２０１はコンピュータプラットフォーム３２０１のシステム管理者又はユーザに情報を表示するためバス３２０４を経由して陰極線管（ＣＲＴ）、プラズマディスプレイ、或いは液晶ディスプレイ（ＬＣＤ）のようなディスプレイ３２０９に接続することができる。英数字及びその他のキーを含む入力デバイス３２１０がプロセッサ３２０５に情報を通信しコマンドを選択するためにバス３２０４に接続される。別のタイプのユーザ入力デバイスとして、プロセッサ３２０５に方向情報を通信しコマンドを選択するため、及びディスプレイ３２０９上のカーソルの動きをコントロールするための、マウスやトラックボール、又はカーソル方向キーのようなカーソルコントロールデバイス３２１１がある。この入力デバイスは一般的に、第一の軸（例えばＸ）と第二の軸（例えばＹ）の二つの軸に二つの自由度を持ち、デバイスが平面内の位置を指定することを可能にする。
【０１７１】
０２４５    外部ストレージデバイス３２１２はバス３２０４を経由してコンピュータプラットフォーム３２０１に接続でき、コンピュータプラットフォーム３２０１の追加の又は取り外し可能な記憶容量を提供する。コンピュータシステム３２００の実施例に於いて、外部の取り外し可能なストレージデバイス３２１２は他のコンピュータシステムとのデータ交換を容易にするために使用されても良い。
【０１７２】
０２４６    本発明はここで記述された技術を実現するためのコンピュータシステム３２００の使用法に関する。或る実施例では本発明のシステムはコンピュータプラットフォーム３２０１のような機械上に常駐することができる。本発明の一実施例によればここで記述された技術は、揮発性メモリ３２０６に含まれる一つ以上の命令の一つ以上のシーケンスを実行するプロセッサ３２０５に応答して、コンピュータシステム３２００によって遂行される。そのような命令は永続的ストレージデバイス３２０８のような別のコンピュータ読み取り可能媒体から揮発性メモリ３２０６へと読み込むことができる。揮発性メモリ３２０６に含まれる命令のシーケンスの実行は、ここで記述されたプロセスステップをプロセッサ３２０５に遂行させる。別の実施例では、本発明を実現するために配線接続された回路をソフトウェア命令の代りに又はソフトウェア命令との組み合わせで使用することができる。したがって、本発明の実施例はハードウェア回路とソフトウェアのいかなる特定の組み合わせにも限定されない。
【０１７３】
０２４７    ここで使われる「コンピュータ読み取り可能媒体」という用語は、実行のためにプロセッサ３２０５に命令を提供することに関与する任意の媒体を表わす。コンピュータ読み取り可能媒体は、ここで記述された任意の方法及び（又は）技術を実行する命令を移送することができる、機械で読み取り可能な媒体のほんの一例である。そのような媒体は不揮発性媒体、揮発性媒体、及び伝送媒体を含むが、これらに限定されない多くの形態をとることができる。不揮発性媒体は、例えば、ストレージデバイス３２０８のような光又は磁気ディスクを含む。揮発性媒体は揮発性ストレージ３２０６のような動的メモリを含む。伝送媒体はデータバス３２０４を構成するワイヤを含んで、同軸ケーブル、銅ワイヤや光ファイバを含む。伝送媒体は電波や赤外線データ通信の間に生ずるような音波や光波の形態をとることもできる。
【０１７４】
０２４８    コンピュータ読み取り可能媒体の一般的な形態は、例えばフロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープ、又は任意の他の磁気媒体、ＣＤ−ＲＯＭ、任意の他の光媒体、パンチカード、紙テープ、任意の他の開孔パターンを持つ物理媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシュ−ＥＰＲＯＭ、フラッシュドライブ、メモリカード、任意の他のメモリチップ又はカートリッジ、以下に記述する搬送波、又はコンピュータが読み取ることができる任意の他の媒体を含む。
【０１７５】
０２４９    コンピュータ読み取り可能媒体の各種形態は、プロセッサ３２０５に一つ以上の命令の一つ以上のシーケンスを実行のために移送することに携わることができる。例えば命令は最初にリモートコンピュータから磁気ディスクに移送することができる。或いは、リモートコンピュータは命令をその動的メモリにロードし、モデムを用いて電話線上で命令を送信することができる。コンピュータシステム３２００にあるモデムは電話線上のデータを受信でき、データを赤外線信号に変換する赤外線トランスミッタを使用できる。赤外線検出器は赤外線信号に移送されたデータを受信でき、適切な回路によりデータバス３２０４上にデータを置くことができる。バス３２０４は揮発性ストレージ３２０６にデータを移送し、プロセッサ３２０５はその揮発性ストレージから命令を取り出して実行する。揮発性メモリ３２０６により受信した命令は状況に応じてプロセッサ３２０５による実行の前か後のどちらかに永続的ストレージデバイス３２０８に保存することができる。命令は又、当該技術分野で公知の各種ネットワークデータ通信プロトコルを用いてインターネット経由でコンピュータプラットフォーム３２０１にダウンロードできる。
【０１７６】
０２５０    コンピュータプラットフォーム３２０１は又、データバス３２０４に接続されたネットワークインタフェースカード３２１３のような通信インタフェースを含む。通信インタフェース３２１３はローカルネットワーク３２１５に接続されたネットワークリンク３２１４に接続する双方向データ通信を提供する。例えば、通信インタフェース３２１３は対応するタイプの電話線へのデータ通信接続を提供するための統合サービスディジタルネットワーク（ＩＳＤＮ）カード又はモデムであっても良い。別の例として、通信インタフェース３２１３は互換ＬＡＮへのデータ通信接続を提供するためのローカルエリアネットワークインタフェースカード（ＬＡＮ  ＮＩＣ）であっても良い。公知の８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ及びブルートゥースのような無線リンクも又ネットワークの実現方法として使用できる。任意のそのような実現方法に於いて通信インタフェース３２１３は各種タイプの情報を表わすディジタルデータストリームを移送する電気的、電磁気的或いは光学的信号を送受信する。
【０１７７】
０２５１    ネットワークリンク３２１４は一般的に一つ以上のネットワークを通して他のネットワークリソースへのデータ通信を提供する。例えば、ネットワークリンク３２１４はローカルネットワーク３２１５を通してホストコンピュータ３２１６又はネットワークストレージ／サーバ３２２２への接続を提供することができる。これに加えて又はこれに代って、ネットワークリンク３２１４はゲートウェイ／ファイアウォール３２１７を通して広域又はインターネットのようなグローバルネットワーク３２１８に接続できる。このようにして、コンピュータプラットフォーム３２０１はリモートネットワークストレージ／サーバ３２１９のような、インターネット３２１８上のどこかに置かれたネットワークリソースにアクセスできる。一方、コンピュータプラットフォーム３２０１は又、ローカルエリアネットワーク３２１５及び（又は）インターネット３２１８上のどこかに置かれたクライアントによりアクセスできる。ネットワーククライアント３２２０と３２２１はプラットフォーム３２０１に類似のコンピュータプラットフォームに基づいて自ら実行されるようにしても良い。
【０１７８】
０２５２    ローカルネットワーク３２１５とインターネット３２１８の両者はディジタルデータストリームを移送する電気的、電磁気的又は光学的信号を使用する。コンピュータプラットフォーム３２０１に及びコンピュータプラットフォーム３２０１からディジタルデータを移送する各種ネットワークを通る信号及びネットワークリンク３２１４上と通信インタフェース３２１３を通る信号は情報を運ぶ搬送波の典型的な形態である。
【０１７９】
０２５３    コンピュータプラットフォーム３２０１は、インターネット３２１８とＬＡＮ３２１５を含む各種ネットワーク、ネットワークリンク３２１４及び通信インタフェース３２１３を通して、プログラムコードを含むメッセージやデータを送・受信できる。システム３２０１がネットワークサーバとして動作するインターネットの例では、システムはクライアント３２２０と（又は）３２２１上で動作するアプリケーションプログラムのためにインターネット３２１８、ゲートウェイ／ファイアウォール３２１７、ローカルエリアネットワーク３２１５及び通信インタフェース３２１３を通して要求されたコード又はデータを伝送することも考えられる。同様にシステム３２０１は他のネットワークリソースからコードを受信することができる。
【０１８０】
０２５４    受信したコードは受信したままでプロセッサ３２０５により実行され、そして（又は）その後の実行のためにそれぞれ永続的又は揮発性ストレージデバイス３２０８と３２０６、又は他の不揮発性ストレージに保存される。このようにして、コンピュータシステム３２０１は搬送波の形態でアプリケーションコードを取得することができる。
【０１８１】
０２５５    本発明はいかなる特定のファイアウォールシステムにも限定されないことに注目願いたい。本発明のポリシーベースのコンテンツ処理システムは、三種のファイアウォール動作モード、すなわちＮＡＴモード、ルーテッドモード、透過モードのうちの任意のものが使用できる。
【０１８２】
０２５６    最後に、当然のことながら、ここで記述したプロセスや技術はいかなる特定の装置にも本質的に関係せず、コンポーネントの適当な組み合わせにより実現することが可能である。更に種々のタイプの汎用デバイスがここで記述された技術に従って使用できる。ここで記述された方法ステップを遂行するために専用の装置を構築するのも又有利であると分かるかもしれない。本発明は特定の例との関係で記述されてきたが、これらの例はすべての点で限定するよりも説明に役立つことを意図している。当業者はハードウェア、ソフトウェア、とファームウェアの多くの異なった組み合わせが、本発明を実施するのに相応しいことを理解するであろう。例えば記述されたソフトウェアはアセンブラー、Ｃ／Ｃ＋＋、パール、シェル、ＰＨＰ、Ｊａｖａ（登録商標）、等のような広範囲の多様なプログラム言語又はスクリプト言語で実施できる。
【０１８３】
０２５７    更に、ここに開示された本発明の明細書と実施を検討することにより本発明の他の実現方法が当業者には明らかになるであろう。記述した実施例の多様な態様と（又は）コンポーネントは、データ複製機能を持つコンピュータ化したストレージシステム内で単独で又は任意の組み合わせで使用できる。本明細書と例は典型的なものとしてのみ考慮されるべきものと意図されており、本発明の真の範囲と精神は以下の特許請求項によって示されている。
【図面の簡単な説明】
【０１８４】
【図１】００１２    図１は本発明概念の第一の実施例による典型的なシステム構成を示す。
【図２】００１３    図２は本発明概念の第一の実施例による典型的なモジュール構成を示す。
【図３】００１４    図３はリファーラル管理テーブルの典型的な実施例を示す。
【図４】００１５    図４はグローバルネームスペース管理テーブルの典型的な実施例を示す。
【図５】００１６    図５はファイルシステムデータの典型的なレイアウトを示す。
【図６】００１７    図６は典型的なアイノード情報を示す。
【図７】００１８    図７はファイルシステム構造の典型的な実施例を示す。
【図８】００１９    図８は典型的なファイル配置を示す。
【図９】００２０    図９はＮＦＳｖ４プロトコルを使用したファイルの読み出しを示す。
【図１０】００２１    図１０はファイルシステムの一部が移行された後の典型的なファイル配置を示す。
【図１１】００２２    図１１はファイルシステムの一部が移行される場合の、ＮＦＳｖ4プロトコルを使用したファイルの読み出しを示す。
【図１２】００２３    図１２はリファーラルファイルの典型的な実施例を示す。
【図１３】００２４    図１３はリファーラルを有するボリュームのスナップショットの典型的な実施例である。
【図１４】００２５    図１４はリファーラル情報を収集する典型的なフローダイアグラムを示す。
【図１５】００２６    図１５はＮＡＳシステムが管理ホストに返信するリファーラル情報を示す。
【図１６】００２７    図１６は命令ブロードキャスト経由でスナップショットを命令するプロセスの典型的な実施例を示す。
【図１７】００２８    図１７は命令ブロードキャストによってスナップショットを取得するプロセスのフローダイアグラムを示す。
【図１８】００２９    図１８はスナップショットを用意した後のグローバルネームスペース管理テーブルの典型的な実施例を示す。
【図１９】００３０    図１９はＴＡＫＥ  ＳＮＡＰＳＨＯＴ要求の典型的な実施例に含まれる情報を示す。
【図２０】００３１    図２０は命令リダイレクト経由のスナップショット命令を示す。
【図２１】００３２    図２１は命令リダイレクトによってスナップショットを取得するフローダイアグラムを示す。
【図２２】００３３    図２２は新たなリファーラル情報の形成の典型的なプロセスを示す。
【図２３】００３４    図２３は本発明概念の第二の実施例による典型的なシステム構成を示す。
【図２４】００３５    図２４は本発明概念の第二の実施例による典型的なモジュール構成を示す。
【図２５】００３６    図２５はリモートサイトＮＡＳシステム１のリファーラル管理テーブルの典型的な実施例を示す。
【図２６】００３７    図２６はリモートコピーを用意した後のグローバルネームスペース管理テーブルの典型的な実施例を示す。
【図２７】００３８    図２７はリファーラルを含むボリュームのリモートコピーを取得するプロセスの典型的な実施例を示す。
【図２８】００３９    図２８はＳＥＴＵＰ  ＲＥＭＯＴＥ  ＣＯＰＹ要求の典型的な実施例に含まれる情報を示す。
【図２９】００４０    図２９は命令ブロードキャストによってリモートコピーを設定するプロセスの典型的な実施例のフローダイアグラムを示す。
【図３０】００４１    図３０は命令リダイレクトによってリモートコピーを設定するプロセスの典型的な実施例のフローダイアグラムを示す。
【図３１】００４２    図３１はリファーラル情報の典型的な形成を示す。
【図３２】００４３    図３２は本発明のシステムが実現できるコンピュータプラットフォームの典型的な実施例を示す。
【図１】
2007183913.tif 000003
【図２】
2007183913.tif 000004
【図３】
2007183913.tif 000005
【図４】
2007183913.tif 000006
【図５】
2007183913.tif 000007
【図６】
2007183913.tif 000008
【図７】
2007183913.tif 000009
【図８】
2007183913.tif 000010
【図９】
2007183913.tif 000011
【図１０】
2007183913.tif 000012
【図１１】
2007183913.tif 000013
【図１２】
2007183913.tif 000014
【図１３】
2007183913.tif 000015
【図１４】
2007183913.tif 000016
【図１５】
2007183913.tif 000017
【図１６】
2007183913.tif 000018
【図１７】
2007183913.tif 000019
【図１８】
2007183913.tif 000020
【図１９】
2007183913.tif 000021
【図２０】
2007183913.tif 000022
【図２１】
2007183913.tif 000023
【図２２】
2007183913.tif 000024
【図２３】
2007183913.tif 000025
【図２４】
2007183913.tif 000026
【図２５】
2007183913.tif 000027
【図２６】
2007183913.tif 000028
【図２７】
2007183913.tif 000029
【図２８】
2007183913.tif 000030
【図２９】
2007183913.tif 000031
【図３０】
2007183913.tif 000032
【図３１】
2007183913.tif 000033
【図３２】
2007183913.tif 000034
【外国語明細書】
2007183913000001.pdf