JP2004318743A - ファイル移送装置 - Google Patents
ファイル移送装置 Download PDFInfo
- Publication number
- JP2004318743A JP2004318743A JP2003115183A JP2003115183A JP2004318743A JP 2004318743 A JP2004318743 A JP 2004318743A JP 2003115183 A JP2003115183 A JP 2003115183A JP 2003115183 A JP2003115183 A JP 2003115183A JP 2004318743 A JP2004318743 A JP 2004318743A
- Authority
- JP
- Japan
- Prior art keywords
- file
- computer
- transfer
- network
- packet
- 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.)
- Pending
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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99956—File allocation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【解決手段】ファイルサーバがクライアント付近のファイルサーバを検索し、発見したファイルサーバへファイルを移送する。クライアントは移送先ファイルサーバへ当該ファイルをアクセスする。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、ネットワークを介して複数の計算機(コンピュータ)が接続されたシステム(以下「ネットワークシステム」)において、あるコンピュータがネットワークを介して他のコンピュータに接続された記憶装置内のデータにアクセスする技術に関する。
【0002】
【従来の技術】
従来のネットワークシステムにおいて、他のコンピュータの記憶装置内のファイルに対してアクセス(読み出し(read)および書き込み(write))を要求するコンピュータを、クライアントコンピュータ(以下、単にクライアント)と呼び、クライアントからの要求に応じて自ディスク装置内のファイルをアクセスし、その結果(readデータや、正常にwriteが行われたかどうかなど)を応答するコンピュータをファイルサーバコンピュータ(以下、単にファイルサーバもしくはサーバ)と呼ぶ。
【0003】
クライアントがネットワークを介してファイルサーバが管理するファイルにアクセスする技術として、NFS(Network File System)がある。以下、他のコンピュータが管理するファイルの読み出し又は書き込み(以下まとめて「アクセス」)を要求するコンピュータをクライアントと称する。また、クライアントからの要求に応じて、記憶装置に格納されたファイルをアクセスし、その結果(読み出したデータ、データの書き込みの完了報告等)をクライアントに応答するコンピュータをファイルサーバ又はサーバと称する。更に、ファイルとは、ユーザやコンピュータで実行されるアプリケーションプログラムが使用するデータの纏まりを指す。
【0004】
NFSでは、クライアントはサーバに対してRPC(Remote Procedure Call:遠隔手続き呼び出し)要求メッセージパケットを送信してアクセスを要求する。一方、サーバは、RPC応答メッセージパケットを返送してクライアントからの要求に応答する。
【0005】
NFSのプロトコル設計は基本的にステートレス(サーバ・クライアント内に状態を保持しない)の方針に基づいているので、クライアントは、サーバから読み出したファイルをクライアントが有する記憶装置に一時的に保存(以下「キャッシュ」)しない。このため、クライアントが、サーバが管理するファイルをアクセスする場合には、かならずファイルサーバとの交信が発生する。
【0006】
一方、ファイルサーバが管理するファイルをクライアント自身又はクライアント付近のサーバにキャッシュする技術として、分散ファイルシステム(DFS:Distributed File System)及びプロキシ(proxy:代理)サーバがある。
【0007】
DFSでは、クライアントが、サーバから読み出したファイルのデータを自身の記憶装置にキャッシュする。
【0008】
また、プロキシサーバは、クライアントとサーバの間(多くはクライアントと同一のネットワーク上)に設置される。クライアントはサーバへファイルのアクセスを要求する際に、プロキシサーバへアクセス要求を送信する。プロキシサーバはクライアントに成り代わってサーバからファイルを読み出し、そのファイルをクライアントへ送信する。この際、プロキシサーバは取得したファイルをプロキシサーバ内にキャッシュする。
【0009】
これ以降、クライアントから再び同一ファイルのアクセス要求がプロキシサーバへ送信された場合、プロキシサーバはサーバへアクセスすることなく、プロキシサーバ内にキャッシュされたファイルをクライアントに送信する。
【0010】
更に、主となるファイルサーバと副となるファイルサーバを備え、主ファイルサーバの記憶容量が不足したとき、主ファイルサーバのファイルを副ファイルサーバへ移動し、移動されたファイルに対してクライアントからアクセス要求があった場合には、主ファイルサーバが副ファイルサーバからファイルを転送してもらうシステムが特許文献1に開示されている。
【0011】
【特許文献1】
特開平6−243074号公報
【0012】
【発明が解決しようとする課題】
NFSでは、クライアントがサーバのファイルをキャッシュしないため、クライアントが、サーバが管理するファイルへアクセスする時には、常にクライアント・サーバ間で要求パケットおよび応答パケットが往復する。このため、遠隔地にあるファイルサーバが管理するファイルをクライアントがアクセスする場合、サーバからのパケットがクライアントに到着するまでの遅延時間(レイテンシ)が増大し、クライアントのユーザに対するレスポンス性能が低下する。
【0013】
一方、DFS又はプロキシサーバのように、クライアント又はその近隣サーバにファイルをキャッシュすれば、パケット到着までのレイテンシの増加を抑えることができる。しかし、この「キャッシュ方式」には、以下の問題がある。
【0014】
「キャッシュ方式」では、サーバ内にあるファイル(元ファイル)に加え、元ファイルの複製がクライアント等に複数個作成されるので、両者の同期を取る、即ち、データの内容を一致させる処理(「一貫性制御処理」)が必要となる。特に元ファイルと複製とが保存されているコンピュータとの間の距離が長いほど本処理の実行に時間がかかる。更に、ファイルが頻繁にクライアントによって更新される場合は、頻繁に本処理を行う必要があり、「キャッシュ方式」を導入したことによるレイテンシの増加抑制の効果が減少してしまう。
【0015】
また、プロキシサーバでは、上述の一貫性制御は行われない。したがって、最新のファイルを得たい場合には、クライアントは、再度プロキシサーバにファイルのアクセス要求を指示しなければならず、レイテンシの増大は抑制できない。
【0016】
一方、特許文献1に記載された「移送(migration)方式」では、一貫性制御が不要である。しかし、ファイルの格納場所が移送前後で変化するので、移送されたファイルに対するクライアントのアクセス性能が移送元よりも移送先の方が悪ければ、ネットワークシステムの性能は低下してしまう。特に、特許文献1はファイルサーバの容量不足を解消することを目的としており、アクセス性能を向上させることは考慮されていない。したがって、特許文献1では、クライアントから主ファイルサーバまでの距離よりも副ファイルサーバまでの距離のほうが遠くなって、レイテンシが増大する可能性について考慮されていない。
【0017】
特に、複数のクライアントから頻繁にアクセスされるファイルがどのファイルサーバに移送されるべきか否かは、そのファイルをアクセスする複数のクライアントがネットワークにどのように分布しているかの情報に基づいて行われることが重要であるが、従来技術では、この点について全く考慮されていない。
【0018】
本発明の目的は、クライアントが遠隔地にあるファイルサーバが管理するファイルへアクセスする際に、ファイルの一貫性を保ちつつ一貫性制御のオーバヘッドをなくし、さらに、ネットワークのトラフィックを削減することである。
【0019】
【課題を解決するための手段】
上記課題を解決するために、第一のサーバが、自ディスク装置内のファイルに対するアクセスを行うクライアントが属するネットワークの位置情報を検査し、ファイルの移送先となるサーバの候補を決定する。そして、アクセスを行うクライアントのネットワーク、もしくは、その周辺のネットワーク上の、不特定多数のサーバへ、ファイルを移送するサーバを調べるための移送先検索パケットを送信する。移送先検索パケットを受信した第二のサーバは、ファイルの移送の受け入れに関する移送許可パケットを第一のサーバに対して送信する。第一のサーバは、移送許可パケットの内容を検査し、第二のサーバがファイルを移送するのに適していることが分かれば、第二のサーバに対してファイルを移送する。
【0020】
更に、第一のサーバは、ファイルを移送したことを示す移送通知パケットを、アクセスを行うクライアントのネットワーク、もしくは、その周辺のネットワークに送信するため、クライアントは、移送したファイルに対するアクセスを、第二のサーバに対して行う。
【0021】
【発明の実施の形態】
図1は、本発明を適用したネットワークシステムの一実施形態を示す図である。本ネットワークシステムは、3台のファイルサーバ105、具体的には、ファイルサーバ105A、105B及び105C、並びに3台のクライアント103、具体的には、クライアント103A、103B及び103Cを有する。ファイルサーバ105A、ファイルサーバ105B、クライアント103A及びクライアント103Bは、通信線(ここではローカルエリアネットワーク。以下「LAN」)101A(以下「LAN1」)を介して相互に接続されている。ファイルサーバ105C及びクライアント103Cは、LAN101B(以下「LAN2」)を介して相互に接続されている。
【0022】
また、本例では、LAN1及びLAN2は、インターネットやWANといった広域ネットワーク104により相互に接続されている。更に、LAN1にはネットワークマスク100.0.0.0/24が、LAN2には、ネットワークマスク200.0.0.0/24が与えられている。尚、本実施形態では通信線101としてLANを一例としてあげたが、他の通信線を用いても構わない。
【0023】
また、本明細書では、インターネットプロトコルバージョン4(以下IPv4)技術で用いられるアドレス表記をネットワークマスク等の表記に用いる。ここで、本実施形態のネットワークに接続されるコンピュータ等の機器には、それぞれ固有の32bitのIPアドレス(例えば”100.0.0.1”)が割り振られる。また、ネットワークマスクの表記、例えばLAN1に割り振られたネットワークマスク”100.0.0.0/24”の表記は、LAN1に接続されたコンピュータに、いずれも上位24bit共通のIPアドレスが割り振られている、すなわち、LAN1に接続されるコンピュータに、”100.0.0.0”〜”100.0.0.255”の範囲のIPアドレスが割り振られることを示している。したがって、LAN1に接続される機器は、LAN1に割り振られたネットワークマスクによって一つのグループ(以下「ネットワークグループ」)として識別されることになる。
【0024】
各ファイルサーバ105は計算機であり、CPU117、メモリ101、ネットワークインターフェイス117、ディスクIOインターフェイス118、及びディスク装置119を有する。CPU117、メモリ101、ネットワークインターフェイス117及びディスクIOインターフェイス118は、接続線を介して相互に接続されている。また、ディスク装置119は、ディスクIOインターフェイス118を介してCPU117等と接続されている。更に、ファイルサーバ105は、ネットワークインターフェイス117を介してLAN101と接続される。
【0025】
尚、ファイルサーバ105自身はディスク装置119を有さない構成としても良い。この場合、ファイルサーバ105はディスクIOインターフェース118の替わりにネットワークインターフェイスを有し、ファイルサーバ105は、このインターフェース及びネットワークを介して別筐体の記憶装置システムに接続されている構成とする。ここで使用されるインターフェース及びネットワークには、例えば、ファイバチャネルプロトコルが使用される。あるいは、ファイルサーバ105は、ファイルシステム機能に特化したネットワークアタッチドストレージ(NAS)でも良い。
【0026】
更に、ファイルサーバ105は、ディスク装置119を有し、かつ別筐体の記憶装置システムに接続するためのネットワークインターフェイスを有する構成としても良い。
【0027】
ここで、記憶装置システムとは、記憶媒体及び制御部を有する記憶装置である。記憶媒体には、磁気ディスク又は光ディスク等が使用される。また、記憶装置システムには、冗長構成を有するディスクアレイも含まれる。尚、ファイルサーバ105が有するディスク装置119は、単体のハードディスクドライブでも、ディスクアレイ、DVD等でも良い。
【0028】
メモリ101には、ファイルシステムプログラム120、ノード・パス名変換テーブル121及びアクセス統計テーブル122が格納される。図では、テーブルの情報やプログラムは丸で囲んで示している。これらのプログラムやテーブルは、電源オフ時にはファイルサーバ105が有する不揮発性記憶媒体(ディスク装置119やROMなど)に格納されている。ファイルサーバ105は、これらのテーブルやプログラムを使用する際に、不揮発性記憶媒体からメモリ101にこれらのプログラム等を読み出す。ファイルシステムプログラム120等のプログラムは、フロッピー(登録商標)ディスクやDVDの記憶媒体、ネットワーク等の通信回線あるいは無線通信等を介してファイルサーバ105のディスク装置119又はメモリ101にインストールされる。
【0029】
CPU116は、ファイルシステムプログラム120を実行し、LAN101等に接続された他のファイルサーバ105等とのパケット通信、ディスク装置119へのアクセス、メモリ101内のデータの更新、等を行う。
【0030】
また、各クライアント103もファイルサーバ同様に、CPU116、メモリ111、ネットワークインターフェイス117を有する計算機である。尚、本実施形態では、クライアント103はディスク装置119の替わりにROM装置110を有する。クライアント103をファイルサーバ105と同じ構成とすることもできる。クライアント103は、ネットワークインターフェイス116を介してLAN101と接続される。
【0031】
クライアント103のメモリ111には、アプリケーションプログラム113、ファイルシステムプログラム114及びノード・パス名変換テーブル115が格納される。これらのプログラム等は、電源オフ時には、ROM装置110に格納されている。
【0032】
クライアント103のCPU116は、ファイルシステムプログラム114を実行し、LAN101を介してファイルサーバ105のディスク装置119に格納されているファイルにアクセスする。また、クライアント103のCPU116は、アプリケーションプログラム113を実行して、クライアントを使用する人が所望するサービスを提供する。
【0033】
本実施形態のファイルシステムプログラム114、120によって実現されるファイルシステムは、UNIX(登録商標)その他の一般的なOSに採用されているように、論理的な木構造の元にファイルを管理する階層型のファイルシステムである。具体的には、ルート・ディレクトリを根とし、ディレクトリの下にファイルもしくはディレクトリを配するデータ構造が用いられる。本実施形態では、ファイルシステムで管理されるファイルを、「/doc/misc/readme.txt」のように、ディレクトリ名の連接とファイル名を区切り文字(”/”)で区切った文字列(以下、「ファイルのパス名」)により表す。
【0034】
図2は、本実施形態のクライアント103とサーバ105間でやり取りされるアクセス要求および応答パケットの例を示す図である。LAN101での通信は、所定の通信プロトコルに基づくパケットによるデータ送受信でおこなわれる。クライアント103は、図2のA及びBに示す読み出し(以下「read」)及び書き込み(以下「write」)要求パケットをファイルサーバ105へ送信する。ファイルサーバ105は、図2のC及びDに示すread/write返答パケットをLAN101を介してクライアント103へ返信する。
【0035】
図2Aは、クライアントA(送り元フィールド値に100.0.0.1のクライアントAのIPアドレスが格納されている)がファイルサーバC(宛先フィールドが200.0.0.101)に対して、ファイル”/doc/misc/sample.log”(要求パス名)の先頭から4096byte目(オフセット)から1024byte(サイズ)をread要求(要求種別)するパケットである。
【0036】
図2Bは、クライアントA(送り元)がファイルサーバC(宛先)に対して、ファイル”/doc/misc/sample.log”(要求パス名)の先頭から4096byte目(オフセット)から1024byte(サイズ)にデータ本体(データフィールドに格納)をwrite要求(要求種別)するパケットである。
【0037】
図2Cは、サーバC(送り元)がクライアントA(宛先)に、read応答(要求種別)を返すパケットである。ファイル”/doc/misc/sample.log”(要求パス名)の先頭から4096byte目(オフセット)から1024byte(サイズ)をデータフィールドに格納して返答している。
【0038】
図2Dは、サーバC(送り元)がクライアントA(宛先)に、write応答(要求種別)を返すパケットである。ファイル”/doc/misc/sample.log”(要求パス名)の先頭から4096byte目(オフセット)から1024byte(サイズ)が正常に書き込まれたことを返答している。
【0039】
各ファイルサーバ105のCPU116は、ファイルシステムプログラム120を実行することで、クライアント103からのアクセスを監視し、その結果をアクセス統計テーブル122に格納する。
【0040】
図3は、アクセス統計テーブル122の例を示す図である。アクセス統計テーブル122には、クライアント103からアクセスされたファイルのパス名を登録するエントリ601、要求元となるクライアント103が所属するネットワークグループに共通するネットワークマスクを登録するエントリ602、ネットワークまでの距離(ただし、主にホップ数(中間ルータの数)や、遅延時間、通信料金、信頼性などにより算出される距離であり、物理的な距離を意味しない。)が登録されるエントリ603、そのネットワークグループに属するクライアント103からのアクセス回数を登録するエントリ604及びそのネットワークグループに属するクライアント103から最初にアクセスがあった時刻を記録するエントリ605を有する。また、本テーブル122には、ファイル毎にこれらの情報が登録される。
【0041】
ここで、本発明の動作の概要を簡単に説明すると、ファイルサーバがアクセス統計テーブルの内容を確認し、移送対象となるファイルを探し出し、次に移送先となるファイルサーバを決定し、ファイルの格納位置情報を変更し、その後に、ファイルの実体を移行する。以下、動作の手順を追って説明する。
【0042】
図4は、サーバ105が、アクセス統計テーブル122を更新する際の処理手順の例を示した図である。尚、本処理手順は、ファイルサーバ105が、クライアント103からのファイルアクセス要求を受信したときに実行される。
【0043】
クライアント103からファイルアクセス要求を受信したサーバ105は(ステップ701)、まず、自身のメモリ101内のアクセス統計テーブル122に、アクセス要求を受けたファイルのエントリが既に存在するかどうかを調べる(ステップ702)。
【0044】
アクセス統計テーブル122にアクセス要求を受けたファイルのエントリが存在しなければ、サーバ105は、アクセス統計テーブル122に新たにエントリを作成し、エントリ601に、アクセス要求を受けたファイルのパス名を登録する(ステップ703)。
【0045】
アクセス統計テーブル122にアクセス要求を受けたファイルのエントリが既に存在する場合、サーバ105は、存在するファイルに対応するエントリ602に登録されたネットワークマスクに対応するネットワーク101が、ファイルアクセスを要求したクライアント103が属するネットワークグループのネットワーク101と一致するか検査する。具体的には、アクセス要求パケットに含まれる宛先(サーバ)エントリに登録されたアドレスの上位24Bit(ただし、24は、マスクビット長の例。)とエントリ602に登録されたネットワークマスクの値とを比較する(ステップ704)。
【0046】
アクセス要求元であるクライアント103が属するネットワークグループに対応するネットワーク101と登録されたネットワークマスクに対応するネットワーク101とが異なる場合及びステップ703にて新たにファイルのエントリを作成した場合、サーバ105は、アクセス要求の対象となるファイルに対応するエントリ602に、クライアント103が属するネットワークグループのネットワークマスクを登録する。また、サーバ105は、アクセス要求の対象となるファイルに対応するエントリ603に、クライアント103が属するネットワークグループとサーバ105が属するネットワークグループとの間の距離(ここではクライアント103が属するネットワークグループとサーバ105が属するネットワークグループとの間に存在する、ネットワークを仲介する中間ルータ数)を登録する。尚、インターネットの場合、各装置間の距離(ホップ数)はICMPパケット等を用いて算出することができる。
【0047】
さらに、サーバ105は、アクセス対象のファイルに対応するエントリ604に値「1」を設定し、エントリ605に、現在時刻(ここでは、テーブルに値を設定するときの時刻)を設定する(705)。
【0048】
ステップ704でアクセス要求元のクライアント103が属するネットワークグループがアクセス統計テーブル122に登録されたネットワークグループと同一であると判断した場合、サーバ105は、アクセス要求のあったファイルに対応するエントリ604に登録された値を1増分(インクリメント)する(ステップ706)。ステップ705又はステップ706の処理を実行したサーバ105は、アクセス統計テーブルの更新処理を終了する。
【0049】
現在時刻が「2002/9/1 10:00:00」から0.300秒後の場合、図3で例示したアクセス統計テーブル122の1行目は、ファイルサーバ105のファイル”/doc/misc/record.out”に対して、LAN1(100.0.0.0/24)のネットワークグループに属するクライアント103(サーバ105との間の距離は5)から、0.300秒間(「現在時刻−アクセス開始時刻」にて算出)に連続して120回のアクセスが発生したことを示している。
【0050】
ここで、仮にクライアント103Cがファイルサーバ105Cのファイル”/doc/misc/record.out”に対してread要求を発行すると、クライアント103Cの属するネットワークグループ(ここではLAN2)は、その前に登録されていたネットワークグループ(ここでは、LAN1)とは異なるので、図3の第一行目の内容は、図4で示した処理により、”/doc/misc/record.out”, ”200.0.0.0/24”, ”1”, ”1”, ”現在時刻”と書き換えられる。
【0051】
各ファイルサーバ105は、一定時間毎にアクセス統計テーブル122の内容を検査し、ファイルサーバ105が管理するファイルに対して、特定のネットワークグループに属する任意のクライアント103からのアクセス(以下「ネットワークグループからのアクセス」と称する)が集中(詳細は後述)しているかどうかを確認する。もしそのようなファイルが見つかったときは、ファイルサーバ105は、そのファイルを移送すべきファイルの候補として選定する。
【0052】
図5は、サーバ105がアクセス統計テーブル122の内容を確認して移送すべきファイルの候補を選択するまでの処理手順の例を示すフローチャートである。本処理は、ファイルサーバ105が、ファイルシステムプログラム120を実行することによって一定時間毎に実行される。
【0053】
ファイルシステムプログラム120を実行するファイルサーバ105Cは(ステップ801)、アクセス統計テーブル122の内容を確認し、予め定められた条件を満たすファイルが存在するかどうかを確認する。尚、本実施形態では、移送候補となるファイルとして、クライアント103が属するネットワークグループとファイルサーバ105が属するネットワークグループとの間の距離が2以上、あるネットワークグループからのアクセス回数が10回以上、かつ、アクセス開始時刻から現在時刻まで1時間以上経過している(その間、他のネットワークグループからのアクセスはない)ファイルが検出されるよう、条件が設定される(ステップ802)。(ただしこれらの閾値はファイルシステムプログラムにあらかじめ設定するほか、ユーザにより再設定する。)
条件を満たすファイルがある場合、サーバ105Cは、そのファイルを移送候補として選択する。例えば、現在時刻が仮に2002/9/2 11:00:05(2002年9月2日 11時00分05秒)ならば、図3のアクセス統計テーブル122の例では、ファイル”/doc/misc/record.out”が条件に適合している。このため、ファイル”/doc/misc/record.out”が移送候補として選定される(ステップ803)。
【0054】
移送候補となるファイルを選定したら、ファイルサーバ105Cは、次に、選定されたファイルを集中的にアクセスしているネットワークグループに属するファイルサーバ105へ、選定されたファイルを移送しようと試みる。上記の例では、ファイルサーバ105Cは、選定されたファイル”/doc/misc/record.out”を、アクセスを行っているネットワークグループ(ここではLAN1)に属するファイルサーバ105Aまたは105BをLAN1から検索する。具体的には、ファイルサーバ105Cは、移送先検索パケットをLAN1に接続されている機器に対してブロードキャストする。ここで、ブロードキャストとは、指定したネットワークに属する不特定の機器(ノード)を受信先としたパケットの送信を指す(ステップ804)。
【0055】
図6は、移送先検索パケットの例を示す図である。移送先検索パケットは、移送元となるファイルサーバ105C(以下「移送元ファイルサーバ」)が、ファイルを特定のネットワークグループのいずれかのファイルサーバ105Aまたは105Bへ移送することが可能かどうか判断するために発行する。すなわち、移送先となるファイルサーバ105Aまたは105B(以下「移動先ファイルサーバ」)を検索するために発行される。
【0056】
移送先検索パケットの「宛先ネットワーク」は移送先検索パケットのブロードキャスト先ネットワークマスクを格納する。「送り元サーバ」は本パケットの発行元ノードのIPアドレスを格納する。「移送ID」は一連の移送手続きを他の移送手続きと区別するために移送元ファイルサーバが付ける識別番号である。「移送元サーバ」は移送元サーバのIPアドレスである。
【0057】
移送先検索パケットは、要求容量フィールドを有する。同フィールドには、移送元ファイルサーバが移送するファイル(以下「移送ファイル」)を格納するために、移送先ファイルサーバ105Aまたは105Bに確保すべき記憶容量が設定される。具体的には、移送ファイルのサイズ(もしくはファイルサイズが拡大することを見越してそれ以上の値)が設定される。
【0058】
移送先検索パケットを受け取ったLAN1のネットワークグループに属するファイルサーバ105Aと105Bは、指定された移送ファイルを受け入れることができるかどうかを判定し、その結果を移送元ファイルサーバに送信する。
【0059】
図7は、移送先検索パケットを受信したサーバ105Aと105Bが実行する移送受け入れ判定処理のフローチャートを示す図である。本処理は、ファイルサーバ105Aと105Bがファイルシステムプログラム120を実行することによって行われる。
【0060】
移送先検索パケットを受け取ったファイルサーバ105Aと105Bは、移送許可パケットを作成する。図8は、移送許可パケットの具体例を示す図である。ファイルサーバ105Aと105Bは、移送許可パケットの管理者フィールドに、サーバを管理する管理者の管理者ID(本例では”foo”)を設定する。さらに、なりすましを防止し、管理者が本物であることを示すために、ファイルサーバ105は、暗号化された管理者署名(本例では”oekdigke”)を管理者署名フィールドに設定する(ステップ1002)。
【0061】
次に、ファイルサーバ105Aと105Bは、移送ファイルを受け入れることが可能かどうかを判定するために、自らが有するディスク装置119の空き容量を検査する。ファイルサーバ105Aと105Bは、ディスク装置119に移送先検索パケットで指定された要求容量以上の空き容量が存在する場合は、移送ファイルを受け入れることができると判断する。ディスク装置119に移送先検索パケットで指定された要求容量以上の空き容量が存在しない場合は、ファイルサーバ105A,105Bは、移送ファイルを受け入れることができないと判断する(ステップ1003)。
【0062】
移送ファイルを受け入れることができる場合、ファイルサーバ105A,105Bは、作成した移送許可パケットの応答フィールドに受け入れ許可を示す数値、ここでは1を設定する。また、ファイルサーバ105A,105Bは、移送許可パケットの許可容量フィールドに、ディスク装置119の記憶容量の空き容量を示す値をセットする。さらに、ファイルサーバ105A,105Bは、移送ファイルを受け入れるためのディレクトリ(本例では、ディレクトリ”/200.0.0.101/”)をディスク装置119に作成し、移送許可パケットの移送先パス名フィールドに作成したディレクトリのパス名を示す情報をセットする(ステップ1004)。
【0063】
移送ファイルを受け入れることができない場合、ファイルサーバ105A、105Bは、作成した移送許可パケットの応答フィールドに、転送受け入れの不可を示す値、ここでは0を設定する(ステップ1005)。
【0064】
本実施形態では、移送先ファイルサーバの候補であるLAN1のネットワークグループに属するファイルサーバ105A及び105Bが、それぞれ図8A、Bに示した移送許可パケットを移送元ファイルサーバ105Cへ返送したとする。
【0065】
ファイルサーバ105A及び105Bから移送許可パケットを受信したファイルサーバ105Cは、受信した移送許可パケットの内容を比較して、移送先ファイルサーバを決定する。
【0066】
図9は、移送元となるファイルサーバ105、ここではファイルサーバ105Cが、移送先ファイルサーバの決定する際の処理手順を示すフローチャートである。本処理は、移送許可パケットを受信したときに、ファイルサーバ105Cがファイルシステムプログラム120を実行することによって実行される。
【0067】
まず、ある移送許可パケットを受信したファイルサーバ105Cは、他の移送許可パケットの到着を一定時間待つ(ステップ1302)。もし、移送先検索パケットをブロードキャストした後、一つも移送許可パケットを受信しない場合、ファイルサーバ105Cは受け入れ先無しとみなして何もしない。また、一定時間経過後に到着した移送許可パケットは無視される。その後、ファイルサーバ105Cは、その一定期間内に到着した移送許可パケットの中から、移送許可パケットの応答フィールドに移送許可を示す1が登録されている移送許可パケットを選択する(ステップ1303)。
【0068】
その後、ファイルサーバ105Cは、選択された移送許可パケットの中から、その管理者IDフィールドに登録された管理者IDがファイルサーバ105Cの管理者と同一の管理者IDであり、かつ管理者署名フィールドに登録されている暗号署名に基づいてその管理者IDが本物であると認証できた移送許可パケットを選択する。尚、移送許可パケットを送信したファイルサーバ105A、105Bの管理者が移送元ファイルサーバの管理者と同じでなければ、そのサーバ105は信頼できないとみなして移送先ファイルサーバとしなくても良い。ただし、管理者が異なる場合でも、あらかじめ許容される複数の管理者名が移送元ファイルサーバに登録され、移送許可パケットに登録された管理者がその複数の管理者に含まれる場合には、移送元ファイルサーバがファイルの移送を行う態様としても良い(ステップ1304、1305)。
【0069】
その後、ファイルサーバ105Cは、選択された移送許可パケットの中から、確保容量フィールドに登録された記憶容量が最大のものを選択する(ステップ1306)。その結果、ファイルサーバ105Cは、選択された移送許可パケットを発行したファイルサーバ105Aを移送先ファイルサーバとして選択する(本例では、ファイルサーバAを選択したとする)。尚、ステップ1306で条件に合致する移送許可パケットとして複数の移送許可パケットが残った場合には、ファイルサーバ105Cは、そのうちのひとつをランダムに選択する。本実施形態では、図8A、Bの移送許可パケットを受け取ったファイルサーバ105Cは、空き容量が最大のファイルサーバ105Aを移送先ファイルサーバとして選択する(ステップ1307)。
【0070】
上述した各ステップにおいて、条件に一致する移送許可パケットが見つからなかった場合は、ファイルサーバ105Cは、移送先ファイルサーバ無しとして、以下に述べる移送先ファイルサーバの指名処理は行わない。すなわち、ファイルサーバ105Cは、ファイルの移送をおこなわない(ステップ1308)。
【0071】
移送先ファイルサーバを決定した、移送元ファイルサーバ105Cは、ファイルシステムプログラム120を実行して、ノード・パス名変換テーブル121を更新する。この更新により、移送ファイルを管理するファイルサーバ105が、移送元ファイルサーバ105Cから移送先ファイルサーバ105Aへと変更される。
【0072】
図10は、ノード・パス名変換テーブル121の例を示す図である。ノード・パス名変換テーブル121には、移送ファイルの移送元と移送先ファイルサーバに関する情報が関連付けて登録される。ファイルサーバ105は、このテーブルを検索して、ファイルが移送されているかどうか及び移送されている場合にはその移送先についての情報を取得することが出来る。
【0073】
移送先ファイルサーバを決定した移送元ファイルサーバ105Cは、ノード・パス名変換テーブル121に、決定された移送先ファイルサーバに対応する新たなエントリ(行)を追加し、移送元のノード及びパス名フィールド、移動先のノード及びパス名フィールドに値をセットする。尚、「移送ID」は一連の移送手続きを他の移送手続きと区別するために移送元ファイルサーバが付ける識別番号である。移送元ファイルサーバが移送先検索パケット内に設定する。
【0074】
移送元のノードフィールドには、自ファイルサーバ105(この場合105C)のIPアドレス(本例では200.0.0.101)がセットされる。移送元のパス名フィールドには、移送ファイルのパス(本例では”/doc/misc/record.out”)がセットされる。
【0075】
移送先のノードフィールドには、選択された移送許可パケットの移送先サーバフィールドに登録された値(本例では100.0.0.101)がセットされる。移送先のパス名フィールドには、選択された移送許可パケットの移送先パス名フィールドに登録された値(本例では”/200.0.0.101/doc/misc/record.out”)がセットされる。
【0076】
その結果、ノード・パス名変換テーブル121の新たなエントリには、”200.0.0.101”の”/doc/misc/record.out”としてファイルサーバ105Aに管理されていたファイルが、”100.0.0.101”の”/200.0.0.101/doc/misc/record.out”に移送されたことを示す情報が登録されることになる。
【0077】
ノード・パス名変換テーブル121を更新したファイルサーバ105Cは、ファイルサーバ105Aが移送先ファイルサーバとして選択され、ファイルがファイルサーバ105Aへ移送されたことをクライアント103及びファイルサーバ105へ通知するために、移送先ファイルサーバが属するネットワークグループのネットワークであるLAN1へ移送通知パケットをブロードキャストする(ステップ1309)。
【0078】
尚、移送通知パケットがブロードキャストされる時点で、実際にファイルが移送されていても、移送されていなくても良い。ファイルが移送されていない場合、そのファイルの移送は、クライアント103から移送ファイルに対するアクセス要求があったタイミングで、移送先ファイルサーバの要求に基づいて行われても良い。このようにすることによって、移送が必要なファイル(移送ファイルとして決定されても、実際にその後アクセス要求がなければ、移送する必要はない)のみ移送することができ、移送ファイルの移送によるネットワーク101の負荷の増加を最小限に抑えることができる。
【0079】
また、実際のファイルの移送を、移送通知パケットのブロードキャスト後で、アクセス要求とは無関係な任意の時点にすることもできる。例えば、ネットワーク101のトラフィックが少ない時を見計らってファイルの移送が行われても良い。一方、移送通知パケットをブロードキャストする前に、移送ファイルが実際に移送されても良い。この場合、アクセス要求があった際に行われる移送元ファイルサーバでの処理量が少なくなるというメリットがある。
【0080】
図11は、移送通知パケットの例を示す図である。同図の移送通知パケットには、移送元ファイルサーバに関する情報と移送先ファイルサーバに関する情報が含まれる。本図の移送通知パケットは、”200.0.0.101”の”/doc/misc/record.out”としてファイルサーバ105Aが管理していたファイルが、ファイルサーバ105C(”100.0.0.101”)の”/200.0.0.101/doc/misc/record.out”に移送されたことを示している。
【0081】
移送通知パケットを受信したファイルサーバ105Aおよびクライアント103Aは、移送元ファイルサーバ(ここではファイルサーバ105C)が行ったのと同様に、ノード・パス名変換テーブル115、121に新たなエントリ(行)を追加し、移送元のノード及びパス名フィールド、移送先のノード及びパス名フィールドに値をセットする。
【0082】
次に、移送ファイルをクライアント103Aがアクセスする場合の動作について説明する。
【0083】
図12は、クライアント103におけるアクセス変換処理の手順を示すフローチャートである。本処理は、クライアント103がファイルシステムプログラム114を実行することで実行される。本実施形態では、クライアント103Aが、ファイルサーバ105Cが管理するファイル(パス名”/doc/misc/record.out”)にアクセスする例を示す。ここで、クライアント103Aのアプリケーションプログラム113は、ファイルの移送の有無について関知しないため、ファイルサーバ105Cが管理するファイル”/doc/misc/record.out”を、移送の有無を問わず、そのままアクセスしようとする。
【0084】
アプリケーションプログラム113の実行によってアクセス要求パケットを作成したクライアント103Aは、作成されたアクセス要求(ここではファイルサーバ105Cが管理するファイル”/doc/misc/record.out”)に基づいてノード・パス名変換テーブル115を参照し、アクセスしようとするファイルが同テーブル115の移送元フィールドに存在するかどうかを確認する(ステップ1602)。
【0085】
アクセス要求の対象となるファイルを有するファイルサーバ105Cがノード・パス名変換テーブル115の移送元フィールドに存在しなければ、クライアント103Aは、そのままファイルサーバ105、ここではファイルサーバ105Cへアクセス要求パケットを発行する(ステップ1604)。
【0086】
アクセス要求の対象となるファイルを有するファイルサーバ105Cがノード・パス名変換テーブル115の移送元フィールドに存在する場合、そのファイルは別のファイルサーバ105Aへ移送されているので、クライアント103Aは、アクセス要求パケットの送付先を移送先ファイルサーバへに変換してアクセス要求パケットを発行する。本実施形態では、アクセスしようとするファイル(”/doc/misc/record.out”)がテーブル115の移送元フィールドに存在するため、クライアント103Aは、ファイルへのアクセス要求の発行先を、テーブル115の移送先フィールドに記述されたファイルサーバ(IPアドレス:100.0.0.101)105Aの「200.0.0.101/doc/misc/record.out」に変換してアクセス要求パケットを発行する。
【0087】
図13は、変換前と変換後のアクセス要求パケットの例を示す図である。クライアント103Aにおける変換により、宛先(サーバ)フィールドがノード・パス名変換テーブル115の移送先ノードフィールドに登録された値(100.0.0.101)に変換され、要求パス名フィールドがテーブル115の移送先パス名フィールドに登録された値(/200.0.0.101/doc/misc/record.out)に変換される(ステップ1603、1604)。
【0088】
次に、移送ファイルに対するアクセス要求を受けた移送先ファイルサーバ105Aの動作を説明する。
【0089】
図14は、アクセス要求を受け付けた移送先ファイルサーバ105Aの処理手順を示すフローチャートである。
【0090】
アクセス要求パケット(本例では、図13の変換後のアクセス要求パケット)を受け付けた移送先ファイルサーバ105Aは、アクセス要求パケットの要求パス名フィールドに記されたファイル(本例では、パス名が”/200.0.0.101/doc/misc/record.out”)が既に自分のディスク装置119に格納されているかどうかを検査する(ステップ1802)。
【0091】
既にディスク装置119にファイル”/200.0.0.101/doc/misc/record.out”が存在する場合、そのファイルは移送済みなので、ファイルサーバ105Aは、そのままファイルにアクセスし、そのアクセス結果に基づいて返答パケットを生成し、クライアント103Aへ応答パケットを送信し(ステップ1807)、手続きを完了する。
【0092】
一方、ファイル”/200.0.0.101/doc/misc/record.out”がディスク装置119に格納されていない場合、ファイルサーバ105Aは、そのファイルのパス名がノード・パス名変換テーブル121の移送先フィールドに存在するかどうかを確認する(ステップ1803)。
【0093】
ノード・パス名変換テーブル121の移送先フィールドにファイルのパス名が存在しない場合、そのファイルはシステムのどのファイルサーバ105A,105B,105Cにも存在しないので、ファイルサーバ105Aは、クライアント103Aにファイルが存在しないことを示すエラーを送信し(ステップ1804)、手続きを完了する。
【0094】
ノード・パス名変換テーブル121の移送先フィールドにファイルのパス名が存在する場合、そのファイルはまだ移送元ファイルサーバ105Cから移送先ファイルサーバである本ファイルサーバ105Aに移送されていないことになる。そこで、ファイルサーバ105Aは、ノード・パス名変換テーブル121の移送元フィールドを参照し、ファイルのパス名に対応する移送元ファイルサーバC(200.0.0.101)及びファイルのパス名(”/doc/misc/record.out”)を取得する。更に、ファイルサーバ105Aは、取得した移送元ファイルサーバ105Cへファイルのread要求パケットを発行する。さらに、ファイルサーバ105Aは、移送元ファイルサーバ105Cに格納されている移送ファイルを削除する要求パケットも発行する。尚、read要求パケット及び移送ファイルの削除を要求する要求パケットを受信した移送元ファイルサーバ105Cは、read要求パケットで指定されるファイルを、read要求パケットを発行したファイルサーバ105Aへ送信し、その送信したファイルをディスク装置119から削除する。尚、移送元ファイルサーバ105Cにread要求パケットで指定されるファイルが存在しない場合、移送元ファイルサーバ105Cは、read要求パケットを発行したファイルサーバ105Aにエラーを報告する(ステップ1805)。
【0095】
移送元ファイルサーバからread応答パケットが返信されると、ファイルサーバ105Aは、受信したread応答パケットに含まれるファイルのデータを、自ディスク装置119に格納する。このときのファイルのパス名は、ノード・パス名変換テーブル121の移送先のパス名フィールドに格納された値(”/200.0.0.101/doc/misc/record.out”)が用いられる(ステップ1806)。
【0096】
最後に、ファイルサーバ105Aは、ディスク装置119に格納したファイル”/200.0.0.101/doc/misc/record.out”へアクセスし、クライアント103Aへ応答パケットを送信し(ステップ1807)、応答処理を完了する。
【0097】
次に、移送先通知パケットを受信しなかったクライアント103(例としてクライアント103C)が、移送済みの移送ファイル(”/doc/misc/record.out”)にアクセスする動作について説明する。
【0098】
移送通知パケットは、ある条件を満たしたアクセス要求元のクライアント103が属するネットワークグループのネットワーク101へブロードキャストされるため、その他のネットワークグループ(ここでは例としてLAN2)に属するクライアント103Cには、ファイル(例として、ファイルサーバ105Cの”/doc/misc/record.out”)が移送先ファイルサーバ(例としてファイルサーバ105A)へ移送されたことが通知されない。また、本発明が適用されないクライアントがネットワーク101に多数属する環境でも、ファイルは全てのクライアントから正常にアクセスできなければならない。
【0099】
図15は、ファイルが移送されたことを知らないクライアント103Cがファイルサーバ105C(この場合、ファイルサーバ105Cは移送元ファイルサーバとなる)にアクセス要求パケットを発行した時の、ファイルサーバ105Cの応答処理の手順を示すフローチャートである。
【0100】
アクセス要求パケット(本例では、図16の変換前要求パケット)を受信したファイルサーバ105Cは、アクセス要求パケットの要求パス名フィールドに登録されたファイル”/doc/misc/record.out”が自ディスク装置119に格納されているかどうかを検査する(ステップ1902)。
【0101】
ファイル”/doc/misc/record.out”が自ディスク装置119に格納されている場合、ファイルサーバ105Cは、そのファイルにアクセスし、その結果に基づいて返答パケットを生成し、クライアント103Cへ応答パケットを送信し(ステップ1903)、応答処理を完了する。
【0102】
ファイル”/doc/misc/record.out”が自ディスク装置119に格納されていない場合、ファイルサーバ105Cは、そのファイルのパス名がノード・パス名変換テーブル121(本例では、図10のテーブル121をファイルサーバ105Cが有しているとする)の移送元フィールドに存在するかどうかを確認する(ステップ1904)。ノード・パス名変換テーブル121の移送元フィールドにそのファイルのパス名が存在しない場合、そのファイルはネットワークシステムのどこにも存在しないので、ファイルサーバ105Cは、クライアント103Cへファイルが存在しないことを示すエラーを送信し(ステップ1905)、応答処理を完了する。
【0103】
ノード・パス名変換テーブル121の移送元フィールドにファイルのパス名が存在する場合、そのファイルは既に移送先ファイルサーバへ移送されていることになる(図10では、ファイル”/doc/misc/record.out”の移送先ファイルサーバは、200.0.0.101の”/doc/misc/record.out ”となる)。そこで、ファイルサーバ105Cは、ノード・パス名変換テーブル121において、検索されたファイルのパス名に対応する移送先フィールドを参照し、移送先ファイルサーバ(100.0.0.101)及び移送先でのファイルのパス名(”/200.0.0.101/doc/misc/record.out”)の情報を取得する。
【0104】
次に、ファイルサーバ105Cは、クライアント103Cから受信したアクセス要求パケット(図16の変換前要求パケット)の宛先フィールドと要求パス名フィールド(/doc/misc/record.out)に登録された値を、上記処理で得た移送先ファイルサーバ(100.0.0.101)とパス名(/200.0.0.101/doc/misc/record.out)へ変更し、さらに、送元フィールドに自分のアドレス(200.0.0.101)をセットする(図16の変換後要求パケットを参照)。
【0105】
そして、ファイルサーバ105Cは、作成した変換後要求パケットを、移送先ファイルサーバ(本例ではファイルサーバ105A)へ送信する。変換後要求パケットを受信した移送先ファイルサーバは、その内容で指定されるファイルを読み出して応答パケット(本例では図17の変換前応答パケット)を作成し、ファイルサーバ105Cへ返信する(ステップ1906)。
【0106】
移送先ファイルサーバより応答パケットを受信したファイルサーバ105Cは、その応答パケットの内容を次のように変換する。応答パケットの宛先フィールドの値(200.0.0.101)を、read要求パケットを発行したクライアント103Cのアドレス(200.0.0.1)に、送元フィールドの値をファイルサーバ105Cのアドレス(200.0.0.101)に、応答パス名フィールドの値をクライアント103Cから受信した変換前要求パケットの要求パス名フィールドに登録された値に変換する(図17の変換後応答パケットを参照)。
【0107】
変換終了後、ファイルサーバ105Cは、変換して作成した応答パケットを、クライアント103Cへ送信する(ステップ1907)。
【0108】
最後に、ファイルサーバ105Cは、クライアント103Cに対して、次回以降の同ファイルへのアクセスはファイルサーバ105Aに対して行うように指示するため、移送通知パケットをクライアント103Cに送信し(ステップ1908)、応答処理を完了する。
【0109】
移送通知パケットを受信したクライアント103Cでは、以下の二つの処理のうち、いずれか一つが行われる。クライアント103Cが移送通知パケットを認識できる場合、クライアント103Cは、ファイルサーバ105Cから送信された移送通知パケットを受信し、その内容に従ってノード・パス名変換テーブル115を更新する。この処理の結果、移送ファイルへのアクセスは、クライアント103内で移送先ファイルへのアクセスに変換されるようになるため、以後のクライアント103の移送ファイルへのアクセス要求の発行は移送先ファイルサーバに対して直接行なわれる。
【0110】
一方、クライアント103が移送通知パケットを認識することが出来ない場合、クライアント103において移送通知パケットは無視される。したがって、クライアント103からの移送ファイルへのアクセス要求は、引き続き移送元であるファイルサーバ105Cに対して発行される。しかし、ファイルサーバ105Cは、クライアント103からの要求を上記と同様の方法で変換し、移送先ファイルサーバへ代理アクセスを実施するため、クライアント103は従来通りの方法によるファイルアクセスの実行が可能である。
【0111】
次に、移送ファイルを移送元ファイルサーバへ返還する方法について説明する。ファイルアクセス要求元となるクライアント103は、時間の経過と共に変化する可能性がある。このため、一旦他のファイルサーバ105へ移送したファイルも、移送元ファイルサーバへ返還した方がアクセス性能が向上する場合がある。
【0112】
ファイル移送後も、ファイルサーバ105、特に移送先ファイルサーバはアクセス統計テーブル122にファイルアクセスに関する統計情報を引き続き収集し続ける。
【0113】
移送先ファイルサーバは、一定時間毎にアクセス統計テーブル122(本例では図18)を検査し、移送ファイルを返還べきかどうかを以下の方法により検査する。具体的には、移送ファイルが移送元ファイルサーバが属するネットワークグループから集中してアクセスされているかどうかを検査する。
【0114】
図19は、移送ファイルの返還処理のうち、返還対象となる移送ファイル(以下、「返還対象ファイル」)を決定する処理手順を示すフローチャートである。本処理は移送先ファイルサーバが、ファイルシステムプログラム120を実行することで、一定時間間隔毎に実施される。
【0115】
本処理の実行を開始した移送先ファイルサーバは、特定の条件に合致するファイルをアクセス統計テーブル122から検索する。本例においては、移送先ファイルサーバは、所定の時間、例えば、本処理の開始から1時間前の間に特定のネットワークグループのみから閾値以上の頻度(本例では10回以上)でアクセスが行われたファイルをアクセス統計テーブル122から抽出する。尚、これらの閾値はファイルシステムプログラムにあらかじめ設定するほか、ユーザにより再設定する。本例においては、本処理を開始した時刻が2002/10/1 9:00:00以降ならば、図18のアクセス統計テーブル122に登録されているファイル”/200.0.0.101/doc/misc/record.out”が上述した条件に適合する(ステップ2302)。
【0116】
次に、移送先ファイルサーバは、抽出されたファイルがノード・パス名変換テーブル121(本例では図10に示す内容が登録されているとする)の移送先のパス名フィールドに登録されているかどうかを検査する(ステップ2303)。
【0117】
抽出されたファイルがノード・パス名変換テーブル121に登録されていれば、そのファイルは移送ファイルであることがわかる。この場合、移送先ファイルサーバは、抽出されたファイルに対応する距離フィールドに登録された値(=5)と、そのファイルの移送元ファイルサーバと要求元ネットワークフィールドに登録されたネットワーク(ここではLAN2)との間の距離(=同一ネットワーク内なので0)を比較する。本処理により、ファイルに集中的にアクセスするネットワークグループと移送先ファイルサーバが属するネットワークグループとの距離が、ファイルに集中的にアクセスするネットワークグループと移送元ファイルサーバが属するネットワークグループとの間の距離よりも大きいかどうかを判定することができる(ステップ2304)。
【0118】
距離フィールドに登録された値の方が大きい場合、すなわち、移送ファイルに集中的にアクセスするネットワークグループと移送先ファイルサーバが属するネットワークグループとの間の距離が、移送ファイルに集中的にアクセスするネットワークグループと移送元ファイルサーバが属するネットワークグループとの間の距離より大きい場合、移送先ファイルサーバは、検索された移送ファイルを返還対象ファイルとして選定する。これは、移送元ファイルサーバへ移送ファイルを返還した方が、ネットワーク間の距離が小さくなり、システムのアクセス性能が向上するからである。
【0119】
返還対象ファイルを選定すると、移送先ファイルサーバは、続いて、返還要請パケット(図20に返還要請パケットの例を示す)を作成する。移送先ファイルサーバは、返還要請パケット作成の際、ノード・パス名変換テーブル121の各エントリに登録されている値を参照して返還要請パケットの各フィールドに値を登録する。その後、移送先ファイルサーバは、移送元ファイルサーバへ返還要請パケットを送信する(ステップ2305)。
【0120】
尚、上述した処理においてファイルが条件を満たさない場合、移送先ファイルサーバは、返還処理を行わずに処理を終了する。
【0121】
図21は、先に決定された返還対象ファイルの返還処理の手順を示すフローチャートである。
【0122】
返還要請パケットを受信した移送元ファイルサーバは、返還要請パケットを送信した移送先ファイルサーバ(以下「返還元サーバ」)に対して、返還要請パケットの返還元パス名フィールドに登録されたファイルのread要求を発行する(ステップ2502)。返還元サーバよりファイルを受信した移送元ファイルサーバは、取得したファイルを、返還要請パケットの返還先パス名で指定されたファイル名で自ディスク装置119に格納する(ステップ2503)。さらに、移送元ファイルサーバは、返還元サーバに対して、返還元パス名フィールドで指定されるファイルの削除要求を発行する(ステップ2504)。その後、移送元ファイルサーバは、該サーバが有するノード・パス名変換テーブル121から、返還を受けたファイルのエントリを削除し(ステップ2505)、ファイルの返還処理を完了する。
【0123】
尚、返還処理の完了以後に、クライアント103が移送先ファイルサーバに対してアクセス要求を発行した場合、クライアント103は移送先ファイルサーバよりファイルが存在しない旨のエラー応答を受信する。この場合、クライアント103は、該クライアント103のノード・パス名変換テーブル115からエラー応答を受信したファイルのエントリを削除し、移送元ファイルサーバへ再度アクセス要求パケットを発行する。
【0124】
第一の実施形態では、「ファイル」を移送の単位として扱った。次に、第一の実施形態の応用として、複数のファイルを下層に含む「ディレクトリ」を移送の単位として扱う第二の実施形態について説明する。
【0125】
ファイルシステムにおいては、ディレクトリの配下には、複数のファイルが配されている。第二の実施形態においては、移送したいディレクトリを移送ディレクトリとして指定することにより、同ディレクトリに含まれる全てのファイルの移送を行うことが出来る。
【0126】
尚、以下に説明するアクセス統計テーブル122の検査手順以外の処理手順は、第一の実施形態と同じ手順であるので、説明を省略する。以下、第二の実施形態におけるアクセス統計テーブル122の検査手順を説明する。
【0127】
図22は、第二の実施形態において、ファイルサーバ105がアクセス統計テーブル122の内容を検査する手順を示すフローチャートである。本処理は、ファイルサーバ105がファイルシステムプログラム120を実行することで、一定時間毎に実行される。
【0128】
ファイルサーバ105は、一定時間毎にアクセス統計テーブル122を検査し、ディレクトリ下のファイルへのアクセスが特定のネットワークグループから集中しておこなわれているかどうかを検査する。もしそのようなディレクトリが見つかったときは、そのディレクトリを移送ディレクトリの候補として選定する。
【0129】
ファイルサーバ105は、まず、アクセス統計テーブル122(図23に示したテーブルであるとする)の中から、ファイルサーバ105が属するネットワークグループとアクセスするネットワークグループとの間の距離が2以上、アクセス回数が10回以上、かつアクセス開始時刻から現在時刻まで一定時間(例として1時間)以上経過している(その間、他のネットワークグループからのアクセスはない)ファイルを検索する。本ステップにより発見されるファイルを(d)とする。本例では、”/doc/misc/record.out”が該当する(ステップ2602)。尚、検索の条件は本例に限られない。ただしこれらの閾値はファイルシステムプログラムにあらかじめ設定するほか、ユーザにより再設定する。
【0130】
アクセス統計テーブル122に(d)が存在した場合、ファイルサーバ105は、当該ファイルを含むディレクトリ(図23の例では”/doc/misc/”)を認識し(d1)とする。また、当該ファイルに対応する要求元ネットワークフィールドに登録されたネットワークを認識し(N)(図23の例では、”100.0.0.0/24”)とする(ステップ2603)。
【0131】
次に、ファイルサーバ105は、アクセス統計テーブル122の全エントリの中から、ファイルが(d1)の配下でかつ要求元ネットワークフィールドに登録されているネットワークが(N)以外のエントリを検索する。これを(e)とする(図23では該当するファイルはない)(ステップ2605)。
【0132】
(e)が存在する場合、(d1)には異なるネットワークグループからアクセスされるファイルが混在していることになる。このため、(d1)配下のファイルを全て移送することはシステムの性能低下を招く。したがって、ファイルサーバ105はディレクトリである(d1)の移送をあきらめ、(d)を移送ファイルの候補として選択する(ステップ2608)。
【0133】
(e)が存在しない場合、(d1)配下のファイルはネットワーク(N)以外のネットワークグループからアクセスを受けていないため、ファイルサーバ105は、(d1)を移送ディレクトリの候補として選択することができる。
【0134】
しかし、(d1)よりも1階層上位のディレクトリ(図23の例では”/doc/”)を移送ディレクトリの候補として選択できる可能性もある。このため、ファイルサーバ105は、次に、(d1)を新たな(d)、(d1)の上位階層のディレクトリを新たな(d1)として(ステップ2607)、ステップ2604以降の処理を再度実施する。すなわち、アクセス統計テーブル122の全エントリの中から、新たな(d1)配下のファイルで、要求元ネットワークフィールドに登録されているネットワークが(N)以外のエントリを検索する。検索の結果得られるファイルのエントリを(e)とする(図23では”doc/memo.txt”が該当する)。
【0135】
ファイルサーバ105は、上記処理を繰り返し、エントリ(e)が見つかった時点で処理の繰り返しを中止する。そして、中止時までに選択された移送ディレクトリの候補(またはファイル)(d)を移送ディレクトリの候補とし(ステップ2608)、処理を終了する。
【0136】
尚、ディレクトリ単位で移送する第二の実施形態においても、第一の実施形態の図14に示すように、移送先ファイルサーバがクライアント103からのアクセス要求を受けてからファイルの実体を移送するため、必要なデータのみがその都度ネットワーク101上で転送される。つまり、移送ディレクトリに含まれる移送ファイル全てを同時に移送しない。このため、ネットワーク101のトラフィックを分散させ、また、ファイルサーバ105の負荷を分散させる効果がある。
【0137】
次の第三の実施形態について説明する。第一の実施形態では、移送元ファイルサーバは、ファイルに集中的にアクセスするネットワークグループに含まれるファイルサーバ105の中から、移送先サーバを選択した。このため、ファイルに集中的にアクセスするネットワークグループに含まれるファイルサーバ105の中に条件(空き容量が指定量以上かつ、管理者が移送元サーバと同一、など)が適合するファイルサーバ105が存在しない場合、第一の実施形態においては、移送元ファイルサーバは移送を行わないこととした。
【0138】
しかし、以下に示す第三の実施形態では、ファイルに集中的にアクセスするネットワークグループに含まれるファイルサーバ105に、条件に適合するファイルサーバ105が見つからなかった場合に、他のネットワークグループに条件に適合するファイルサーバ105が存在すれば、移送元ファイルサーバは、次善の策としてそのファイルサーバ105へファイルの移送をおこなう。
【0139】
図23は、第三の実施形態のシステム構成を示す図である。本実施形態のシステムは、2つのネットワークLAN1、LAN3がインターネットやWANを介して接続され、LAN2はインターネット104を介してLAN3と接続されている。LAN2とLAN1とはLAN3を経由してのみ接続されている。
【0140】
第三の実施形態での処理は、以下に説明する移送先ファイルサーバの選択手順を除き、第一の実施形態での処理手続きと同じであるので、それらの処理については説明を省略する。以下に、第三の実施形態の移送先ファイルサーバの選択方法を説明する。
【0141】
図25は、第三の実施形態における、ファイルサーバ105における移送先ファイルサーバ選択処理の手順を示すフローチャートである。本処理は、移送元ファイルサーバが移送ファイルの候補を選定したときに実行される。以下、図24において、移送元ファイルサーバがファイルサーバ105Cである場合で説明する。
【0142】
移送ファイルの候補を選定した移送元ファイルサーバは、アクセス統計テーブル122から、移送ファイルの候補へアクセスを行うネットワークグループに対応するネットワーク(100.0.0.0/24:LAN1)へ移送先検索パケットをブロードキャストする(ステップ3002)。
【0143】
移送元ファイルサーバは、返送された移送許可パケットの内容を確認し、予め指定された条件を満たすかどうか判定する。本例においては、LAN1に接続されたファイルサーバ105A及び105Bから移送許可パケットが返送され、移送元ファイルサーバは、これらの移送許可パケットが条件(空き容量が指定量以上かつ、管理者が移送元サーバと同一、など)に適合するかどうかを検査する(ステップ3003)。
【0144】
いずれの移送許可パケットも条件に適合しない場合、移送元ファイルサーバは、移送先検索パケットをブロードキャストするネットワークの対象を拡大する。具体的には、移送元ファイルサーバは、先に移送先検索パケットをブロードキャストしたネットワーク(LAN1)について、ネットワークマスクビットを短縮(例では、マスクビットを24bit(255.255.255.0)から16bit(255.255.0.0)に短縮)し、LAN1と同じ上位16ビットのアドレスを有するLAN3(100.0.1.0/24)に移送先検索パケットをブロードキャストする(ステップ3004、3005)。
【0145】
その結果、ネットワークLAN3に属するファイルサーバ105D(100.0.1.102)から移送許可パケットが移送元ファイルサーバに返送される。その後、移送元ファイルサーバは、ファイルサーバ105Dからの移送許可パケットが条件に適合するかどうか検査する(ステップ3006)。ファイルサーバ105Dからの移送許可パケットが条件と適合している場合、移送元ファイルサーバは、ファイルサーバ105Dを移送先ファイルサーバとして選択する(ステップ3007)。条件に適合するファイルサーバ105が無ければ、移送元ファイルサーバは、移送先ファイルサーバ無し判断して、ファイルの移送は行わない(ステップ3008)。
【0146】
第三の実施形態によれば、移送元ファイルサーバは、アクセスを集中して行うネットワークグループに移送先ファイルサーバが見つからない場合にも、次善の策として、アクセスを集中して行うネットワークグループとは別のネットワークグループに属するファイルサーバ105へファイルを移送することができる。
【0147】
【発明の効果】
本発明によれば、クライアントから遠隔地にあるファイルサーバが管理するファイルへのアクセス性能を向上させることができる。また、キャッシュ方式に比べ一貫性制御が不要なため、ネットワークに余分なトラフィックを発生させることも無い。
【図面の簡単な説明】
【図1】システムの概要を示す図。
【図2】アクセス要求パケットの例を示す図。
【図3】アクセス統計テーブルの例を示す図。
【図4】アクセス統計テーブルの更新処理の手順を示すフローチャート。
【図5】移送ファイルの候補を決定する処理手順の例を示すフローチャート。
【図6】移送先検索パケットの例を示す図。
【図7】移送受け入れ判定処理の手順の例を示すフローチャート。
【図8】移送許可パケットの例を示す図。
【図9】移送先ファイルサーバの選択手順の例を示すフローチャート。
【図10】ノード・パス名変換テーブルの例を示す図。
【図11】移送通知パケットの例を示す図。
【図12】アクセス変換処理の手順を示すフローチャート。
【図13】変換前/変換後のアクセス要求パケットの例を示す図。
【図14】移送先ファイルサーバの処理手順の例を示すフローチャート。
【図15】移送元ファイルサーバの処理手順の例を示すフローチャート。
【図16】移送元ファイルサーバによる要求パケットの変換例を示す図。
【図17】移送元ファイルサーバによる応答パケットの変換例を示す図。
【図18】アクセス統計テーブルの例を示す図。
【図19】返還するファイルを決定する処理手順を示すフローチャート。
【図20】返還要請パケットの例を示す図。
【図21】ファイルの返還処理の手順の例を示すフローチャート。
【図22】移送対象の候補となるディレクトを決定する処理手順の例を示す図。
【図23】アクセス統計テーブルの例を示す図。
【図24】第三の実施形態のシステムの全体を示す図。
【図25】移送先サーバの選択処理の手順を示すフローチャート。
【符号の説明】
101…LAN、103…クライアント、105…ファイルサーバ、109…CPU、110…ROM装置、111…メモリ、112…ネットワークインターフェイス、119…ディスク装置。
Claims (13)
- 第一のネットワークと、前記第一のネットワークに接続される第一の計算機と、前記第一のネットワークに接続される第二のネットワークと、前記第二のネットワークに接続される第二の計算機と第三の計算機とから構成される情報処理システムにおいて、
前記第一の計算機は、前記第一のネットワークと接続するための通信インタフェースと、データを格納するディスク装置と、前記ディスク装置とデータの送受信を行うためのディスクインタフェースと、前記第一の計算機を制御するCPUと、データと前記CPUを動作させるためのプログラムを格納するメモリを備え、
前記プログラムは、前記第三の計算機からの前記ディスク装置に格納されるファイルへのアクセス状況を記録する部分と、前記アクセス状況に応じて前記ファイルを前記第二の計算機への移送候補とする部分と、前記第二の計算機へ前記ファイルの移送の受け入れの可否を問い合わせる移送許可パケットを送信する部分と、前記移送許可パケットに対する応答パケットを前記第二の計算機から受信する部分と、前記第二の計算機に前記ファイルを移送する部分を備える、情報処理システム。 - 前記メモリは、前記第三の計算機がアクセスするファイルのパスを、前記第三の計算機のアクセス状況を表す情報と対応付けて格納し、
前記プログラムは、前記アクセス状況を表す情報が所定の条件を満たした場合に、当該情報に対応するファイルを移送候補とする部分を備える、請求項1記載の情報処理システム。 - 前記プログラムは、前記ファイルを前記第二の計算機に移送したことを示す移送通知パケットを、前記第二のネットワークへ送信する部分を備える、請求項2記載の情報処理システム。
- 前記第三の計算機は、データとプログラムを格納するメモリを備え、
当該プログラムは、前記移送通知パケットを受信する部分と、当該パケットに応じて前記第二の計算機に対して前記ファイルのアクセスを行う部分を備える、請求項3記載の情報処理システム。 - 前記第一のネットワークは、更に第三のネットワークに接続され、
前記プログラムは、前記第二のネットワークにファイルを移送すべき計算機が存在しなかった場合、前記移送先検索パケットを前記第三のネットワークに送信する部分を備える、請求項1記載の情報処理システム。 - 第一のネットワークに接続される第一の計算機が有するファイルをアクセスし、前記第一のネットワークと通信できる第二のネットワークに接続される第二の計算機であって、
前記第二の計算機は、前記第ニのネットワークと接続するためのインタフェースと、前記第ニの計算機を制御するCPUと、データと前記CPUを動作させるためのプログラムを格納するメモリを備え、
前記第一の計算機から前記ファイルを移送した先である第三の計算機へのパス名を前記インタフェースから受信した後は、前記パス名を用いて、前記インタフェースから前記ファイルへアクセスする、第二の計算機。 - 前記第三の計算機は、前記第二のネットワークに接続される、請求項6記載の第二の計算機。
- 前記メモリは、前記第一の計算機へのパス名と、前記第三の計算機へのパス名を対応付けて格納しており、
前記CPUは、前記メモリを参照して、前記第三の計算機への前記パス名を用いて、前記インタフェースから前記ファイルへアクセスする、請求項6記載の第二の計算機。 - 第二の計算機と第三の計算機が属する第二のネットワークと通信できる第一のネットワークに接続され、前記第三の計算機からファイルをアクセスされる第一の計算機であって、
前記第一の計算機は、前記第一のネットワークと接続するための通信インタフェースと、前記第一の計算機の制御を行うCPUと、データを格納するディスク装置と、前記ディスク装置にデータの送受信を行うためのディスクインタフェースと、データと前記CPUを動作させるためのプログラムを格納するメモリを備え、
前記プログラムは、前記第三の計算機からの前記ディスク装置に格納されるファイルへのアクセス状況を記録する部分と、前記アクセス状況に応じて前記ファイルを前記第二の計算機への移送候補とする部分と、前記第二の計算機へ前記ファイルの移送の受け入れの可否を問い合わせる移送許可パケットを送信する部分と、前記移送許可パケットに対する応答パケットを前記第二の計算機から受信する部分と、前記第二の計算機に前記ファイルを移送する部分を備える、第一の計算機。 - 第一のネットワークに接続される第一の計算機からデータを受信し、前記第一のネットワークと通信できる第二のネットワークに接続される第二の計算機であって、
前記第二の計算機は、前記第二のネットワークと接続するための通信インタフェースと、前記第二の計算機の制御を行うCPUと、データを格納するディスク装置と、前記ディスク装置にデータの送受信を行うためのディスクインタフェースと、データと前記CPUを動作させるためのプログラムを格納するメモリを備え、
前記プログラムは、前記第一の計算機からファイルの移送の受け入れに関する移送許可パケットを受信する部分と、前記移送許可パケットに対する応答パケットを作成する部分と、前記第一の計算機に前記移送許可パケットを送信する部分を備える、第二の計算機。 - 第一のネットワークに接続される第一の計算機が有するファイルをアクセスし、前記第一のネットワークと通信できる第二のネットワークに接続される第二の計算機が有するメモリに格納されるプログラムであって、
前記プログラムは、前記第一の計算機から前記ファイルを移送した先である第三の計算機へのパス名を前記第ニのネットワークと接続するためのインタフェースから受信した後は、前記パス名を用いて、前記インタフェースから前記ファイルへアクセスする部分を備える、プログラム。 - 第二の計算機と第三の計算機が属する第二のネットワークと通信できる第一のネットワークに接続され、前記第三の計算機からファイルをアクセスされる第一の計算機が有するメモリに格納されるプログラムであって、
前記プログラムは、前記第三の計算機からの前記第一の計算機が有するファイルへのアクセス状況を記録する部分と、前記アクセス状況に応じて前記ファイルを前記第二の計算機への移送候補とする部分と、前記第二の計算機へ前記ファイルの移送の受け入れの可否を問い合わせる移送許可パケットを送信する部分と、前記移送許可パケットに対する応答パケットを前記第二の計算機から受信する部分と、前記第二の計算機に前記ファイルを移送する部分を備える、プログラム。 - 第一のネットワークに接続される第一の計算機からデータを受信し、前記第一のネットワークと通信できる第二のネットワークに接続される第二の計算機が有するメモリに格納されるプログラムであって、
前記プログラムは、前記第一の計算機からファイルの移送の受け入れに関する移送許可パケットを受信する部分と、前記移送許可パケットに対する応答パケットを作成する部分と、前記第一の計算機に前記移送許可パケットを送信する部分を備える、プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003115183A JP2004318743A (ja) | 2003-04-21 | 2003-04-21 | ファイル移送装置 |
US10/645,699 US7472143B2 (en) | 2003-04-21 | 2003-08-20 | File migration device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003115183A JP2004318743A (ja) | 2003-04-21 | 2003-04-21 | ファイル移送装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004318743A true JP2004318743A (ja) | 2004-11-11 |
Family
ID=33157075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003115183A Pending JP2004318743A (ja) | 2003-04-21 | 2003-04-21 | ファイル移送装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7472143B2 (ja) |
JP (1) | JP2004318743A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007115140A (ja) * | 2005-10-21 | 2007-05-10 | Hitachi Ltd | ストレージシステム、及びストレージスシステムの制御方法 |
JP2007187513A (ja) * | 2006-01-12 | 2007-07-26 | Oki Electric Ind Co Ltd | 位置推定システム |
JP2010507876A (ja) * | 2006-10-26 | 2010-03-11 | アリババ グループ ホールディング リミテッド | ネットワークデータストレージシステムおよびそのデータアクセス方法 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7769722B1 (en) | 2006-12-08 | 2010-08-03 | Emc Corporation | Replication and restoration of multiple data storage object types in a data network |
US20050125456A1 (en) * | 2003-12-09 | 2005-06-09 | Junichi Hara | File migration method based on access history |
US7398428B2 (en) * | 2004-09-07 | 2008-07-08 | Hewlett-Packard Development Company, L.P. | Diagnostic tool with ethernet capability |
JP4451293B2 (ja) | 2004-12-10 | 2010-04-14 | 株式会社日立製作所 | 名前空間を共有するクラスタ構成のネットワークストレージシステム及びその制御方法 |
US8126856B2 (en) * | 2005-05-26 | 2012-02-28 | Hewlett-Packard Development Company, L.P. | File access management system |
US20070038697A1 (en) * | 2005-08-03 | 2007-02-15 | Eyal Zimran | Multi-protocol namespace server |
US20070055703A1 (en) * | 2005-09-07 | 2007-03-08 | Eyal Zimran | Namespace server using referral protocols |
US20070061465A1 (en) * | 2005-09-15 | 2007-03-15 | Hostway Corporation | Host migration system |
US7818454B2 (en) * | 2005-09-15 | 2010-10-19 | Hostway Corporation | Host migration system |
US20070088702A1 (en) * | 2005-10-03 | 2007-04-19 | Fridella Stephen A | Intelligent network client for multi-protocol namespace redirection |
US8275750B2 (en) * | 2006-11-08 | 2012-09-25 | International Business Machines Corporation | Method to efficiently use the disk space while unarchiving |
US8706833B1 (en) | 2006-12-08 | 2014-04-22 | Emc Corporation | Data storage server having common replication architecture for multiple storage object types |
US7818535B1 (en) | 2007-06-30 | 2010-10-19 | Emc Corporation | Implicit container per version set |
US8285758B1 (en) | 2007-06-30 | 2012-10-09 | Emc Corporation | Tiering storage between multiple classes of storage on the same container file system |
US7631155B1 (en) | 2007-06-30 | 2009-12-08 | Emc Corporation | Thin provisioning of a file system and an iSCSI LUN through a common mechanism |
US7694191B1 (en) | 2007-06-30 | 2010-04-06 | Emc Corporation | Self healing file system |
US9298417B1 (en) * | 2007-07-25 | 2016-03-29 | Emc Corporation | Systems and methods for facilitating management of data |
US20090150414A1 (en) * | 2007-12-07 | 2009-06-11 | Brocade Communications Systems, Inc. | Detecting need to access metadata during file operations |
WO2009123614A1 (en) * | 2008-03-31 | 2009-10-08 | Hewlett-Packard Development Company, L.P. | Updating retrieval codes in response to file transfers |
US7503047B1 (en) * | 2008-04-08 | 2009-03-10 | International Business Machines Corporation | System and method for enhancing the sharing of application libraries between different JVM's and systems with a dynamic relocation based on usage patterns |
US8676760B2 (en) * | 2008-08-05 | 2014-03-18 | International Business Machines Corporation | Maintaining data integrity in data servers across data centers |
US7937453B1 (en) | 2008-09-24 | 2011-05-03 | Emc Corporation | Scalable global namespace through referral redirection at the mapping layer |
US20120124168A1 (en) * | 2009-12-18 | 2012-05-17 | Paul Boerger | Server migration method |
US8037345B1 (en) | 2010-03-31 | 2011-10-11 | Emc Corporation | Deterministic recovery of a file system built on a thinly provisioned logical volume having redundant metadata |
US8775732B1 (en) * | 2011-04-29 | 2014-07-08 | Symantec Corporation | Method and system for passing information to disk arrays for efficient storage management |
US20130124674A1 (en) * | 2011-11-15 | 2013-05-16 | Hitachi, Ltd. | Computer system and data migration method |
CN102841931A (zh) * | 2012-08-03 | 2012-12-26 | 中兴通讯股份有限公司 | 分布式文件***的存储方法及装置 |
US9135263B2 (en) * | 2013-01-18 | 2015-09-15 | Sonatype, Inc. | Method and system that routes requests for electronic files |
US9305071B1 (en) * | 2013-09-30 | 2016-04-05 | Emc Corporation | Providing virtual storage processor (VSP) mobility with induced file system format migration |
WO2016047096A1 (ja) * | 2014-09-24 | 2016-03-31 | 日本電気株式会社 | アプリケーションサーバ、クラウド装置、記憶媒体アクセス監視方法およびコンピュータ・プログラムが格納されているコンピュータ読み取り可能な記憶媒体 |
US9697083B2 (en) * | 2014-11-21 | 2017-07-04 | International Business Machines Corporation | Using geographical location information to provision multiple target storages for a source device |
US11971855B2 (en) * | 2020-05-19 | 2024-04-30 | EMC IP Holding Company LLC | Supporting multiple operations in transaction logging for a cloud-enabled file system |
CN114466000B (zh) * | 2021-12-22 | 2023-10-10 | 天翼云科技有限公司 | 一种cdn网关回源方法及装置 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0789332B2 (ja) | 1988-02-02 | 1995-09-27 | 日本電気株式会社 | ファイルのマイグレーション・リコール方式 |
JPH0391041A (ja) | 1989-09-04 | 1991-04-16 | Nec Corp | ファイルの自動マイグレーション方式 |
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5367698A (en) | 1991-10-31 | 1994-11-22 | Epoch Systems, Inc. | Network file migration system |
JPH06243074A (ja) | 1993-02-18 | 1994-09-02 | Fuji Xerox Co Ltd | ファイルサービスシステム |
JP3572641B2 (ja) | 1993-09-10 | 2004-10-06 | 住友電気工業株式会社 | ファイルサーバの選択システム |
US6226785B1 (en) * | 1994-09-30 | 2001-05-01 | Apple Computer, Inc. | Method and apparatus for storing and replaying creation history of multimedia software or other software content |
US5564037A (en) | 1995-03-29 | 1996-10-08 | Cheyenne Software International Sales Corp. | Real time data migration system and method employing sparse files |
US5680640A (en) * | 1995-09-01 | 1997-10-21 | Emc Corporation | System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state |
US6256675B1 (en) * | 1997-05-06 | 2001-07-03 | At&T Corp. | System and method for allocating requests for objects and managing replicas of objects on a network |
US6366988B1 (en) | 1997-07-18 | 2002-04-02 | Storactive, Inc. | Systems and methods for electronic data storage management |
US6026414A (en) * | 1998-03-05 | 2000-02-15 | International Business Machines Corporation | System including a proxy client to backup files in a distributed computing environment |
US6442601B1 (en) * | 1999-03-25 | 2002-08-27 | International Business Machines Corporation | System, method and program for migrating files retrieved from over a network to secondary storage |
US6477522B1 (en) | 1999-06-10 | 2002-11-05 | Gateway, Inc. | Dynamic performance based server selection |
US7143144B2 (en) * | 1999-11-30 | 2006-11-28 | Ricoh Company, Ltd. | System, method and computer readable medium for certifying release of electronic information on an internet |
US7406106B2 (en) * | 2000-04-07 | 2008-07-29 | Broadcom Corporation | Method of sharing information among a plurality of stations in a frame-based communications network |
DE10112751B4 (de) * | 2000-11-16 | 2006-01-12 | Fujitsu Ltd., Kawasaki | Gerät und Verfahren zum Einstellen einer Umgebung eines Client in einem Client/Server-System und Programm-Aufzeichnungsmedium dafür |
US6957433B2 (en) * | 2001-01-08 | 2005-10-18 | Hewlett-Packard Development Company, L.P. | System and method for adaptive performance optimization of data processing systems |
US6889232B2 (en) | 2001-02-15 | 2005-05-03 | Microsoft Corporation | System and method for data migration |
US7028079B2 (en) | 2001-05-25 | 2006-04-11 | Lenovo (Singapore) Pte, Ltd. | Method and apparatus for the automatic migration of applications and their associated data and configuration files |
AU2002322223A1 (en) * | 2001-07-25 | 2003-02-17 | Hyperchip Inc. | Apparatus and method for establishing tunnel routes to protect paths established in a data network |
US6718435B2 (en) * | 2001-08-14 | 2004-04-06 | International Business Machines Corporation | Method and system for migrating data in a raid logical drive migration |
US7447731B2 (en) * | 2001-12-17 | 2008-11-04 | International Business Machines Corporation | Method and apparatus for distributed application execution |
US7178050B2 (en) * | 2002-02-22 | 2007-02-13 | Bea Systems, Inc. | System for highly available transaction recovery for transaction processing systems |
JP2004280283A (ja) * | 2003-03-13 | 2004-10-07 | Hitachi Ltd | 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法 |
-
2003
- 2003-04-21 JP JP2003115183A patent/JP2004318743A/ja active Pending
- 2003-08-20 US US10/645,699 patent/US7472143B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007115140A (ja) * | 2005-10-21 | 2007-05-10 | Hitachi Ltd | ストレージシステム、及びストレージスシステムの制御方法 |
JP2007187513A (ja) * | 2006-01-12 | 2007-07-26 | Oki Electric Ind Co Ltd | 位置推定システム |
JP2010507876A (ja) * | 2006-10-26 | 2010-03-11 | アリババ グループ ホールディング リミテッド | ネットワークデータストレージシステムおよびそのデータアクセス方法 |
US8953602B2 (en) | 2006-10-26 | 2015-02-10 | Alibaba Group Holding Limited | Network data storing system and data accessing method |
Also Published As
Publication number | Publication date |
---|---|
US7472143B2 (en) | 2008-12-30 |
US20040210583A1 (en) | 2004-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004318743A (ja) | ファイル移送装置 | |
KR102301353B1 (ko) | 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 | |
US11388251B2 (en) | Providing access to managed content | |
US11194719B2 (en) | Cache optimization | |
US10230819B2 (en) | Translation of resource identifiers using popularity information upon client request | |
US7437479B2 (en) | Position identifier management apparatus and method, mobile computer, and position identifier processing method | |
US8086634B2 (en) | Method and apparatus for improving file access performance of distributed storage system | |
JP4696089B2 (ja) | 分散ストレージシステム | |
US20050240574A1 (en) | Pre-fetching resources based on a resource lookup query | |
US7734820B1 (en) | Adaptive caching for a distributed file sharing system | |
US7802014B2 (en) | Method and system for class-based management of dynamic content in a networked environment | |
US8370583B2 (en) | Network memory architecture for providing data based on local accessibility | |
US6424992B2 (en) | Affinity-based router and routing method | |
US8073972B2 (en) | System and method for location discovery based on DNS | |
US20160277497A1 (en) | Facilitating access to remote cloud services | |
US20160065665A1 (en) | Request routing using a popularity identifier at a dns nameserver | |
US6760756B1 (en) | Distributed virtual web cache implemented entirely in software | |
CN101997785A (zh) | 网关***及控制方法 | |
JPH1185710A (ja) | サーバ装置およびファイル管理方法 | |
US20120191769A1 (en) | Site-aware distributed file system access from outside enterprise network | |
US20150106468A1 (en) | Storage system and data access method | |
JP4573732B2 (ja) | サーバント装置 | |
US20110282923A1 (en) | File management system, method, and recording medium of program | |
JP4327869B2 (ja) | 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法 | |
US20150019755A1 (en) | Data-centric communications system, node, and data forwarding method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051219 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060420 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080812 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080909 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081110 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081202 |