Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4139975B2 - Information processing apparatus, file management method, and program - Google Patents
[go: Go Back, main page]

JP4139975B2 - Information processing apparatus, file management method, and program - Google Patents

Information processing apparatus, file management method, and program Download PDF

Info

Publication number
JP4139975B2
JP4139975B2 JP2007200938A JP2007200938A JP4139975B2 JP 4139975 B2 JP4139975 B2 JP 4139975B2 JP 2007200938 A JP2007200938 A JP 2007200938A JP 2007200938 A JP2007200938 A JP 2007200938A JP 4139975 B2 JP4139975 B2 JP 4139975B2
Authority
JP
Japan
Prior art keywords
file
open state
message
server
token
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
Application number
JP2007200938A
Other languages
Japanese (ja)
Other versions
JP2007323668A (en
Inventor
航 桂島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2007200938A priority Critical patent/JP4139975B2/en
Publication of JP2007323668A publication Critical patent/JP2007323668A/en
Application granted granted Critical
Publication of JP4139975B2 publication Critical patent/JP4139975B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ファイルサーバ間のファイルマイグレーションを行う装置に関する。   The present invention relates to an apparatus for performing file migration between file servers.

近年、安価で高速なネットワークの普及に伴い、様々な情報システムにおいて、ネットワークを通してファイルサービスを提供するサーバが広く用いられるようになっている。このファイルサービスを提供するサーバはファイルサーバと呼ばれる。また、ファイルサービスの例としては、NFS、CIFSなどが挙げられる。   In recent years, with the widespread use of inexpensive and high-speed networks, servers that provide file services through the network are widely used in various information systems. A server that provides this file service is called a file server. Examples of file services include NFS and CIFS.

利用者がファイルサーバによるサービスを円滑に利用できるように、ファイルサーバの運用業務がシステム管理者により行われている。ファイルサーバの運用業務の中で重要なものの1つとして、ファイルサーバ間でのファイルのマイグレーションがある。ファイルマイグレーションとは、ファイルサーバ間でファイルを移動する行為である。例えば、システム管理者の指示により、管理目的でファイルを移動する場合が該当する。   The operation of the file server is performed by the system administrator so that the user can smoothly use the service provided by the file server. One of the important operations in file server operations is file migration between file servers. File migration is an act of moving a file between file servers. For example, this corresponds to a case where a file is moved for management purposes in accordance with an instruction from a system administrator.

ファイルマイグレーションの目的には、例えば以下に示すものである。
(1) 空き容量の有効活用
空き容量の少ないファイルサーバから空き容量の多いファイルサーバにファイルを移動することで、ファイルサーバの記憶容量を有効に活用する。
(2) 処理容量の有効活用
処理容量に対して多いアクセスを受けてレスポンスが悪くなっているファイルサーバから、処理容量に対してアクセスが少ないファイルサーバにファイルを移動することで、ファイルサーバの処理容量を有効に活用する。
(3) ファイルサーバのリプレース
古いファイルサーバから新しいファイルサーバにファイルを移動して、古くなったファイルサーバを新しいファイルサーバにリプレースする。
The purpose of file migration is as follows, for example.
(1) Effective utilization of free capacity By moving files from a file server with little free capacity to a file server with large free capacity, the storage capacity of the file server is effectively utilized.
(2) Effective use of processing capacity File server processing by moving a file from a file server that receives a large amount of access to the processing capacity and has a poor response to a file server that has less access to the processing capacity Make effective use of capacity.
(3) Replace the file server Move the file from the old file server to the new file server, and replace the old file server with the new file server.

また、ファイルサーバ間のファイルマイグレーションを行う従来の方法として、クライアントとサーバの間に存在する装置(以下、中間装置と称す)を用いる方法がある。   Further, as a conventional method for performing file migration between file servers, there is a method using an apparatus (hereinafter referred to as an intermediate apparatus) existing between a client and a server.

まず、システム管理者が中間装置にファイルマイグレーションを指示する。指示を受けた中間装置は、その指示に従ってファイルサーバ間でのファイルのマイグレーションを行う。   First, the system administrator instructs the intermediate device to perform file migration. Upon receiving the instruction, the intermediate device performs file migration between the file servers in accordance with the instruction.

なお、ここで、「クライアントとサーバとの間に存在する」とは、物理的あるいは論理的な通信のルートとしてクライアントとサーバの中間に存在することを意味する。すなわち、クライアントからの要求が中間装置を経由してサーバに届き、またサーバからの応答が中間装置を経由してクライアントに届くことを意味している。   Here, “exists between the client and the server” means that it exists between the client and the server as a physical or logical communication route. That is, this means that a request from the client reaches the server via the intermediate device, and a response from the server reaches the client via the intermediate device.

中間装置は、ファイルサーバ間でのファイルのマイグレーションを以下の2つのステップに沿って実行する。
(ステップ1) 複製
ファイル・アクセス・プロトコルを使って、移動元ファイルサーバにあるファイルを移動先ファイルサーバに一貫性のとれた状態で複製する。ここで、一貫性のとれた状態とは、ファイルに対する一連の処理が完結しており、データ間に矛盾が無いことを指す。例えば、ファイルの一部が変更前の状態で複製され、他の一部が変更後の状態で複製されると、一貫性がとれなくなる可能性がある。
(ステップ2) アクセスの切り替え
クライアント上のユーザがアクセスするファイルサーバを移動元から移動先に切り替える。
The intermediate device performs file migration between the file servers along the following two steps.
(Step 1) Replication Replicate the file on the migration source file server to the migration destination file server in a consistent manner using the file access protocol. Here, the consistent state means that a series of processing for the file is completed and there is no contradiction between the data. For example, if a part of a file is duplicated in a state before the change and another part is duplicated in a state after the change, consistency may not be achieved.
(Step 2) Access switching The file server accessed by the user on the client is switched from the source to the destination.

また、中間装置によるファイルマイグレーションの利点として、以下の2つが挙げられる。   Further, there are the following two advantages of file migration by the intermediate device.

(1) 「複製」の際、複製物の一貫性をとるためにサーバ間通信を行う必要がない。その理由は、ファイルのデータ更新などの処理はクライアントからサーバへの要求により行われるので、中間装置が、要求や応答をモニターし、また一時的に遮断して、複製物間の一貫性をとることができるからである。   (1) During “replication”, there is no need to perform server-to-server communication to ensure consistency of the duplicate. The reason for this is that processing such as file data update is performed by a request from the client to the server, so the intermediate device monitors the request and response, and temporarily shuts off to ensure consistency between copies. Because it can.

一般にサーバ間通信に用いられるプロトコルは、クライアントとサーバの間に用いられるファイルサービスプロトコルとは異なるものであり、サーバ間通信を行うためには、ファイルサーバがそのサーバ間通信のプロトコルを別に備えている必要がある。中間装置がファイルマイグレーションを行うこととすれば、ファイルサーバはサーバ間通信を行う必要が無い。   Generally, the protocol used for server-to-server communication is different from the file service protocol used between the client and the server. In order to perform server-to-server communication, the file server has a separate protocol for server-to-server communication. Need to be. If the intermediate device performs file migration, the file server does not need to perform server-to-server communication.

(2) サーバの位置情報やファイルの識別子の変化をクライアントに意識させることなく、「アクセスの切り替え」を行うことができる。その理由は、中間装置が、要求や応答を転送するときにサーバの位置情報やファイルの識別子を付け替えることにより、「アクセスの切り替え」が可能だからである。   (2) “Access switching” can be performed without making the client aware of changes in server location information and file identifiers. The reason is that the “intermediate device” can perform “access switching” by changing the server location information and file identifier when transferring a request or response.

従来技術として、上述の中間装置を用いたファイルマイグレーション方法が提案されている(非特許文献1参照)。なお、非特許文献1ではNASスイッチが中間装置である。   As a conventional technique, a file migration method using the above-described intermediate device has been proposed (see Non-Patent Document 1). In Non-Patent Document 1, the NAS switch is an intermediate device.

従来の中間装置は、複数のサーバの公開ディレクトリを基とする統合ディレクトリのツリー構造を擬似ファイルシステム上に構成して管理している。そして、中間装置は、擬似ファイルシステム上の統合ディレクトリツリーのツリー構造を保持したまま、いずれかのサーバの公開ディレクトリのファイルを別のサーバへコピーする。次に、中間装置は、擬似ファイルシステムのツリー構造のマッピングを変更することによって、クライアントに対してデータの移動を隠蔽して統合ディレクトリツリーの構成を不変としたまま、ユーザからコピー先のファイルへのアクセスを可能にする。これにより、中間装置は、サーバの記憶装置における容量不足や、一部のサーバにおけるファイルアクセス処理の過負荷を緩和する。   A conventional intermediate apparatus manages a tree structure of an integrated directory based on a public directory of a plurality of servers on a pseudo file system. Then, the intermediate device copies the file in the public directory of one of the servers to another server while maintaining the tree structure of the integrated directory tree on the pseudo file system. Next, the intermediate device changes the tree structure mapping of the pseudo file system to hide the data movement from the client and keep the integrated directory tree structure unchanged, from the user to the copy destination file. To allow access. As a result, the intermediate device relieves the capacity shortage in the storage device of the server and the overload of the file access processing in some servers.

サーバ間のデータ移動に伴い、各ディレクトリやファイルなどのオブジェクトに対応するオブジェクトIDも変更する必要がある。中間装置は、データ移動前と後のオブジェクトIDの変更履歴を管理し、クライアントおよびサーバにおいてオブジェクトIDの変更による不具合が生じないようにすることにより、データの移動の操作をクライアントから隠蔽する。すなわち、中間装置がサーバ間でデータを複製した後、ツリー構造のマッピングを変更することによりユーザのアクセスを切り替えている。   As data moves between servers, it is necessary to change object IDs corresponding to objects such as directories and files. The intermediate device manages the change history of the object ID before and after the data movement, and hides the operation of the data movement from the client by preventing the trouble caused by the change of the object ID in the client and the server. That is, after the intermediate device replicates data between servers, the user access is switched by changing the mapping of the tree structure.

この従来技術によれば、中間装置が一貫性をとってデータを複製するので、複製物の一貫性をとるためのサーバ間通信が必要がない。また、中間装置がユーザからのメッセージの転送先を切り替えることによりアクセスの切り替えを行うので、移動に伴う、オブジェクトIDのようなファイル識別子の変化をクライアントに意識させることが無い。   According to this prior art, since the intermediate device replicates data in a consistent manner, there is no need for server-to-server communication for ensuring the consistency of replicated items. In addition, since the intermediate apparatus switches the access by switching the transfer destination of the message from the user, the client is not made aware of the change of the file identifier such as the object ID accompanying the movement.

また、別の従来技術の一例が、特許文献1に記載されている。特許文献1に記載された分散情報処理システムでは、クライアント上のアプリケーションプログラムが使用するサーバ上のファイルとの接続情報をサーバが磁気ディスクに保存している。そして、サーバは、クライアントからの要求に応じて、アプリケーションとファイルとの接続状態を磁気ディスク内の情報を用いて復活させる。
山川、石川、菊池,「NASスイッチ:NFSサーバの仮想化統合技術の開発」,電子情報通信学会技術研究報告Vol.102,No.275,pp13−18 特許第3343949号公報
Another example of the prior art is described in Patent Document 1. In the distributed information processing system described in Patent Document 1, the server stores connection information with files on the server used by application programs on the client on a magnetic disk. Then, in response to a request from the client, the server restores the connection state between the application and the file using information in the magnetic disk.
Yamakawa, Ishikawa, Kikuchi, “NAS Switch: Development of Virtualization Integration Technology for NFS Server”, IEICE Technical Report Vol. 102, no. 275, pp13-18 Japanese Patent No. 3343949

通常、ファイルマイグレーションは、ファイルサーバがオフラインの状態で行われる。つまり、クライアントからのファイルサーバの利用を一時的に停止し、その間にファイルマイグレーションを行うのが一般的である。   Normally, file migration is performed while the file server is offline. That is, it is common to temporarily stop using the file server from the client and perform file migration during that time.

しかし、ファイルサーバをオフライン状態にすることは、システムの内外に多大な影響を与えることがある。企業のシステムであれば、企業に大きな損失を与えることにつながることもある。また、業務等への影響を最小限にするために、夜間や休日にファイルマイグレーションを行うことがあるが、その場合にはシステム管理者の負担が大きくなる。   However, taking a file server offline can have a significant impact on the inside and outside of the system. If it is a company system, it may lead to a large loss for the company. In addition, in order to minimize the influence on business and the like, file migration may be performed at night or on holidays, which increases the burden on the system administrator.

このような様々な理由から、ファイルマイグレーションはファイルサーバがオンラインの状態で行うことができることが好ましい。オンラインとは、ユーザがそのファイルサーバのファイルサービスを利用できる状態にあることをいう。つまり、電源が投入されており、通信ネットワークに接続されており、また、ユーザがアクセスするのに必要な、ソフトウェアに対する各種設定がされた状態である。   For these various reasons, it is preferable that the file migration can be performed while the file server is online. Online means that the user can use the file service of the file server. That is, the power is turned on, the communication network is connected, and various settings for the software necessary for the user to access are made.

オンライン状態のファイルサーバでは、ユーザがファイルにアクセスするとき、データや状態に矛盾が発生するのを防止するために排他処理が行われる。ファイル・アクセス・プロトコルによって排他処理にも様々な方式がある。   In an online file server, when a user accesses a file, exclusive processing is performed to prevent inconsistency in data and status. There are various types of exclusion processing depending on the file access protocol.

排他処理の例として、オンライン状態のファイルサーバ内のファイルにユーザがアクセスする際、排他ロックをかけるというものがある。排他ロックは、所定のユーザ以外のユーザによるファイルへのアクセスを禁止するものである。   As an example of exclusive processing, there is a method in which an exclusive lock is applied when a user accesses a file in an online file server. The exclusive lock prohibits access to a file by a user other than a predetermined user.

その中で強制ロック方式は、ユーザが排他ロックの取り決めを守るか否かによらず、排他ロックの影響を受ける方式をである。例えば、ロックの取り決めを守らないユーザであっても、そのファイルにかけられた排他ロックの種類に基づきアクセスを拒絶される。また、排他ロックの範囲として、ファイル全体をロックする他、バイトレンジロックのように部分的にロックするものもある。   Among them, the forced lock method is a method that is affected by the exclusive lock regardless of whether or not the user observes the exclusive lock agreement. For example, even a user who does not follow the lock agreement is denied access based on the type of exclusive lock placed on the file. Also, as an exclusive lock range, there is a range in which the entire file is locked and a partial lock such as byte range lock is available.

強制ロック方式のファイル・アクセス・プロトコルの例としては、CIFS(Common Internet File System)、NFSv4(Network File System Version 4)が挙げられる。   Examples of the forced lock file access protocol include CIFS (Common Internet File System) and NFSv4 (Network File System Version 4).

また、いずれかのユーザがファイルをオープンしている状態(以下、オープン状態と称す)がファイルサーバによって管理されている場合がある。オープン状態の例としては、(1)ファイル全体に排他ロックがかけられる場合、(2)バイトレンジロックのように部分的な排他ロックがかけられる場合、(3)ファイルポインタのオフセットが管理される場合などが挙げられる。上述のCIFSおよびNFSv4ではオープン状態が管理される。   In some cases, a state where any user opens a file (hereinafter referred to as an open state) is managed by the file server. As an example of the open state, (1) when an exclusive lock is applied to the entire file, (2) when a partial exclusive lock is applied like a byte range lock, (3) an offset of the file pointer is managed. Cases. In the above-described CIFS and NFSv4, the open state is managed.

また、排他処理として、ファイルをオープンする際にアクセスの許可を受けた証としてバイナリ形式の識別子(以下トークンとする)がファイルサーバからユーザに渡されるというものがある。上述のCIFSではトークンが用いられる。   In addition, as an exclusive process, a binary identifier (hereinafter referred to as a token) is passed from a file server to a user as a proof of access permission when opening a file. In the above-described CIFS, a token is used.

排他処理が行われるオンライン状態では、ファイルマイグレーションに様々な困難がある。   In the online state where exclusive processing is performed, there are various difficulties in file migration.

強制ロック方式の排他処理が行われている場合、ユーザによって排他ロックされているファイルを中間装置は移動元サーバから移動先サーバへ複製できない。これは、ユーザによってファイルに排他ロックがかけられていると、中間装置の読み出し要求が移動元サーバに拒絶されるからである。   When the forced lock type exclusion process is performed, the intermediate device cannot copy the file that is exclusively locked by the user from the migration source server to the migration destination server. This is because if the file is locked exclusively by the user, the read request from the intermediate device is rejected by the source server.

また、各ファイルサーバがオープン状態を管理している場合、中間装置が、ファイルへのアクセスを移動元サーバから移動先サーバへ切り替えると、移動元サーバでのオープン状態が移動先サーバでは無効になる。オープン状態が無効となると、他のユーザからのアクセスが可能になるので、本来禁止されるべきアクセスによりデータが書き換えられることがある。また、移動元サーバでセットされていたファイルポインタのオフセットがクリアされるため、アプリケーションが意図する範囲と異なる部分にデータを書き込んでしてしまうことがある。このように、ファイルをオープン状態がファイルサーバによって管理されている場合、中間装置がユーザからのアクセスの切り替えを行うと、ファイルが破壊されてしまう可能性がある。   In addition, when each file server manages the open state, if the intermediate device switches access to the file from the source server to the destination server, the open state at the source server becomes invalid on the destination server. . When the open state becomes invalid, access from other users becomes possible, and data may be rewritten by access that should be prohibited. In addition, since the offset of the file pointer set on the source server is cleared, data may be written in a portion different from the range intended by the application. As described above, when the open state of the file is managed by the file server, the file may be destroyed if the intermediate device switches access from the user.

また、ファイルをオープンする際にファイルサーバからユーザにトークンが渡されている場合、中間装置がアクセスを切り替えると、移動元サーバからトークンを渡されているアプリケーションは、そのトークンにより移動先サーバにアクセスしようとする。しかし、移動元サーバから渡されたトークンは移動先サーバでは無効となる。そのため、アクセスの切り替えの前後で同じトークンを使い続けようとするアプリケーションはエラーを受けてファイルへのアクセスに失敗し、異常終了することとなる。   In addition, when a token is passed from the file server to the user when opening the file, when the intermediate device switches access, the application that has passed the token from the source server accesses the destination server using that token. try to. However, the token passed from the source server becomes invalid on the destination server. Therefore, an application that tries to continue using the same token before and after the access switching receives an error, fails to access the file, and ends abnormally.

本発明の目的は、オンラインのファイルサーバ間でもファイルを正常にマイグレーションすることが可能な装置を提供することである。   An object of the present invention is to provide an apparatus capable of normally migrating files between online file servers.

上記目的を達成するために、本発明の情報処理装置は、ファイルを記憶する複数のサーバと該サーバにアクセスするクライアントとの通信にて経由される情報処理装置であって、
前記ファイルの各々のオープン状態情報を管理するオープン状態情報管理手段と、
前記サーバ間でファイルの複製を作成した後に該ファイルへのアクセスを該複製に切り替えるファイル複製手段と、
前記ファイルへのアクセスが前記複製に切り替わった後、該複製への最初のアクセスの前に、前記オープン状態情報管理手段に問合せて前記オープン状態情報を取得し、移動元サーバにおいて前記ファイルがオープンされていれば、オープン状態を移動先サーバに再現するオープン状態再現手段とを有している。
In order to achieve the above object, an information processing apparatus of the present invention is an information processing apparatus that is routed through communication between a plurality of servers that store files and a client that accesses the server,
Open state information management means for managing the open state information of each of the files;
File replication means for switching access to the file to the replication after creating a replication of the file between the servers;
After the access to the file is switched to the copy, before the first access to the copy, the open state information management unit is queried to acquire the open state information, and the file is opened on the source server. If so, open state reproducing means for reproducing the open state on the destination server is provided.

本発明によれば、各ファイルのオープン状態を管理しており、ファイルの複製を作成し、クライアントからのアクセスを複製に切り替えると、最初のアクセスの前に、ファイルのオープン状態を移動先サーバに再現するので、情報処理装置は、オープン状態が管理される方式のファイル・アクセス・プロトコルにおいてオープン状態を継続させてファイルマイグレーションを行うことができ、オンライン状態でファイルマイグレーションを行ってもファイル破壊やアプリケーションの異常終了を引き起こさない。   According to the present invention, the open state of each file is managed. When a copy of a file is created and the access from the client is switched to the copy, the open state of the file is transferred to the destination server before the first access. Because it reproduces, the information processing device can perform file migration by continuing the open state in the file access protocol in which the open state is managed. Does not cause abnormal termination.

本発明の実施形態について図面を参照して詳細に説明する。   Embodiments of the present invention will be described in detail with reference to the drawings.

(第1の実施形態)
図1は、本発明の第1の実施形態によるクライアント・サーバ・システムの構成を示すブロック図である。
(First embodiment)
FIG. 1 is a block diagram showing the configuration of a client server system according to the first embodiment of the present invention.

図1を参照すると、第1の実施形態のクライアント・サーバ・システムは、少なくとも1つ(図1では2つ)のクライアント11と、少なくとも1つ(図1では2つ)のサーバ14と、中間装置101とを有している。クライアント11、サーバ14および中間装置101は、それぞれコンピュータで構成され、ネットワーク12に接続されている。ネットワーク12は、LAN(Local Area Network)、MAN(Metropolitan Area Network)、WAN(Wide Area Network)あるいはインターネット等である。   Referring to FIG. 1, the client server system according to the first embodiment includes at least one (two in FIG. 1) client 11, at least one (two in FIG. 1) server 14, and an intermediate Device 101. The client 11, the server 14, and the intermediate device 101 are each configured by a computer and connected to the network 12. The network 12 is a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), or the Internet.

クライアント11は少なくとも1つのユーザ11aに利用され、またクライアント11は少なくとも1つのリダイレクタ11bを有している。ユーザとは、ファイルサービスを利用するプログラム、または仮想的なアイデンティティを表す。   The client 11 is used by at least one user 11a, and the client 11 has at least one redirector 11b. A user represents a program using a file service or a virtual identity.

ユーザ11aは、サーバ14に記憶されているファイルにリダイレクタ11bを介してアクセスする。リダイレクタ11bはそのアクセスをリダイレクトする。   The user 11a accesses a file stored in the server 14 via the redirector 11b. The redirector 11b redirects the access.

サーバ14は、クライアント11によってアクセスされるファイルを記憶し、管理し、各クライアント11にファイルサービスを提供する。ファイルサービスの例としては、NFS、CIFSなどが挙げられる。   The server 14 stores and manages files accessed by the clients 11 and provides file services to the clients 11. Examples of file services include NFS and CIFS.

中間装置101は、ファイルサービスを利用するクライアント11とファイルサービスを提供するサーバ14との中間に位置する。クライアント11からサーバ14への要求と、サーバ14からクライアント11への応答とは必ず中間装置101を通る。クライアント11からサーバ14への要求は、何らかの処理を要求するメッセージ信号である。サーバ14からクライアント11への応答は、要求に対して応答するメッセージ信号である。   The intermediate device 101 is located between the client 11 that uses the file service and the server 14 that provides the file service. Requests from the client 11 to the server 14 and responses from the server 14 to the client 11 always pass through the intermediate device 101. The request from the client 11 to the server 14 is a message signal that requests some processing. The response from the server 14 to the client 11 is a message signal that responds to the request.

一例として、中間装置101は、物理的にクライアント11とサーバ14の間に位置すればよい。図1では、中間装置101は物理的にはクライアント11とサーバ14との間に位置していない。しかし、論理的には中間装置101はクライアント11とサーバ14の間に配置されており、クライアント11からサーバ14への全ての要求、およびサーバ14からクライアント11への全ての応答は中間装置101を経由する。   As an example, the intermediate device 101 may be physically located between the client 11 and the server 14. In FIG. 1, the intermediate device 101 is not physically located between the client 11 and the server 14. However, logically, the intermediate device 101 is arranged between the client 11 and the server 14, and all requests from the client 11 to the server 14 and all responses from the server 14 to the client 11 are sent to the intermediate device 101. Via.

このように、クライアント11からサーバ14への全ての要求が経由する中間装置101は、具体的には、例えばプロキシサーバ、ゲートウェイ、透過プロキシサーバ、ロードバランサーなどである。   As described above, the intermediate device 101 through which all requests from the client 11 to the server 14 pass is specifically a proxy server, a gateway, a transparent proxy server, a load balancer, or the like.

例えば、各クライアント11が中間装置101をプロキシサーバまたはゲートウェイとして設定すればよい。また、中間装置101を透過プロキシサーバとするには、クライアント11からサーバ14へのパケットが必ず中間装置101を通るようにルーティング規則を設定すればよい。中間装置101をロードバランサーとするには、中間装置101を仮想サーバとしてクライアントに見せればよい。   For example, each client 11 may set the intermediate device 101 as a proxy server or a gateway. In order to make the intermediate device 101 a transparent proxy server, a routing rule may be set so that a packet from the client 11 to the server 14 always passes through the intermediate device 101. In order to use the intermediate device 101 as a load balancer, the intermediate device 101 may be shown to the client as a virtual server.

図2は、第1の実施形態の中間装置101の構成を示すブロック図である。図2を参照すると、本実施形態の中間装置101は、パケット処理手段110、メッセージフォワード手段120、ファイル複製手段130、および排他ロック状態情報管理手段140を有している。   FIG. 2 is a block diagram illustrating a configuration of the intermediate apparatus 101 according to the first embodiment. Referring to FIG. 2, the intermediate apparatus 101 of this embodiment includes a packet processing unit 110, a message forward unit 120, a file duplication unit 130, and an exclusive lock state information management unit 140.

パケット処理手段110は、ネットワーク12を介してクライアント11およびサーバ14からパケットを受信すると、パケットに含まれるメッセージを上位手段に出力し、また上位手段から出力されたメッセージをパケット化して、ネットワーク12を介してクライアント11またはサーバ14に送信する。ここでは、メッセージを、ファイル・アクセス・プロトコルに基づく要求や応答の総称として用いる。   When the packet processing unit 110 receives a packet from the client 11 and the server 14 via the network 12, the packet processing unit 110 outputs a message included in the packet to the upper unit, packetizes the message output from the upper unit, and configures the network 12. To the client 11 or the server 14. Here, the message is used as a general term for requests and responses based on the file access protocol.

メッセージフォワード手段120は、パケット処理手段110からメッセージを受けると、フォワーディングテーブル(不図示)を参照して転送先を調べ、それを宛先に設定してメッセージをパケット処理手段110に送る。フォワーディングテーブルとは、メッセージに含まれるサーバ識別子とメッセージの転送先サーバがマッピングされたテーブルである。サーバ識別子は、例えばIPアドレスである。   When the message forwarding unit 120 receives a message from the packet processing unit 110, the message forwarding unit 120 refers to a forwarding table (not shown), checks the forwarding destination, sets it as the destination, and sends the message to the packet processing unit 110. The forwarding table is a table in which a server identifier included in a message and a message transfer destination server are mapped. The server identifier is, for example, an IP address.

また、排他ロック状態情報管理手段140における排他ロック状態の管理のために、メッセージフォワード手段120は、メッセージが排他ロックの要求もしくは応答であれば、そのメッセージのコピーを排他ロック状態情報管理手段140に送る。   In addition, in order to manage the exclusive lock state in the exclusive lock state information management unit 140, the message forward unit 120 sends a copy of the message to the exclusive lock state information management unit 140 if the message is a request or response for the exclusive lock. send.

また、ファイルマイグレーション中は、ファイル複製手段130における複製済ファイルの更新の監視を可能にするために、メッセージフォワード手段120は、メッセージが更新系の要求あるいは応答であれば、そのメッセージのコピーをファイル複製手段130に送る。更新系の要求とは、ファイルのデータを更新する処理の要求であり、更新系の応答とは更新系の要求に対する応答である。   In addition, during file migration, in order to enable monitoring of the update of the replicated file in the file replication means 130, the message forward means 120, if the message is an update request or response, copies the message to the file Send to the duplicating means 130. An update request is a request for processing to update file data, and an update response is a response to an update request.

ファイル複製手段130は、システム管理者によるファイルマイグレーションの指示を受けると、その指示に基づいて動作を開始する。動作を開始したファイル複製手段130は、サーバ14間でファイルの複製を行う。ファイルの複製をしている間に、メッセージフォワード手段120から更新系の要求あるいは応答のメッセージのコピーを受けると、複製済のファイルに更新があるか否か調べる。複製済のファイルに更新があれば、複製の処理をやり直す必要があるからである。   When receiving a file migration instruction from the system administrator, the file copying unit 130 starts an operation based on the instruction. The file duplicating means 130 that has started the operation duplicates the files between the servers 14. When a copy of an update request or response message is received from the message forwarding means 120 while the file is being copied, it is checked whether the copied file has an update. This is because if the copied file is updated, it is necessary to redo the copying process.

また、ファイル複製手段130は、複製しようとしたファイルに排他ロックがかかっていれば、排他ロック状態情報管理手段140に問い合わせて排他ロック状態情報を入手する。そして、ファイル複製手段130は、排他ロック状態情報に含まれる所有者情報に基づいて排他ロックの所有者になりすますことにより、ファイルの読み出しを可能にする。なお、ここで、所有者とは、ファイルに排他ロックをかけているユーザもしくはユーザ上のプロセスのことをいう。所有者は、排他ロックをかけたファイルにアクセスすることができる。   Further, if the file to be duplicated has an exclusive lock, the file duplicating unit 130 inquires the exclusive lock state information managing unit 140 to obtain the exclusive lock state information. Then, the file duplicating means 130 makes it possible to read the file by impersonating the owner of the exclusive lock based on the owner information included in the exclusive lock state information. Here, the owner means a user or a process on the user who has placed an exclusive lock on the file. The owner can access the file with the exclusive lock.

複製が完了すると、ファイル複製手段130は、クライアントからのアクセスを切り替えるためにフォワーディングテーブルを書き換える。   When the copying is completed, the file copying unit 130 rewrites the forwarding table in order to switch access from the client.

排他ロック状態情報管理手段140は、各ファイルの排他ロックの状態を管理しており、メッセージフォワード手段120から排他ロック要求もしくは応答のメッセージのコピーを受けると排他ロック状態情報を更新する。排他ロック要求は、ファイルに排他ロックをかけること、または解除することを要求するメッセージである。排他ロック応答は、それに対する応答のメッセージである。排他ロック状態情報は、各ファイルに排他ロックがかかっているか否かや、排他ロックをかけているユーザあるいはクライアントを示す情報である。   The exclusive lock status information management unit 140 manages the exclusive lock status of each file, and updates the exclusive lock status information when receiving a copy of the exclusive lock request or response message from the message forward unit 120. The exclusive lock request is a message requesting that an exclusive lock be placed on or released from the file. The exclusive lock response is a message of a response to the exclusive lock response. The exclusive lock status information is information indicating whether or not each file has an exclusive lock, and a user or client that has applied the exclusive lock.

また、排他ロック状態情報管理手段140は、ファイル複製手段130から問い合わせを受けると、記録している排他ロック状態情報を送る。   Further, upon receiving an inquiry from the file copying unit 130, the exclusive lock state information management unit 140 sends the recorded exclusive lock state information.

次に、本実施形態のクライアント・サーバ・システムの動作例について説明する。なお、ここでは、ファイル複製手段130は、システム管理者の指示に基づいて動作を開始するものとする。また、ファイル複製手段130は、他の手段の処理による割り込みを許容する。他の処理による割り込みがあると、ファイル複製手段130はスリープして、その処理が終了するのを待つ。   Next, an operation example of the client server system of this embodiment will be described. Here, it is assumed that the file copying unit 130 starts to operate based on an instruction from the system administrator. In addition, the file duplicating unit 130 allows interruption by processing of other units. If there is an interruption due to another process, the file copying unit 130 sleeps and waits for the process to end.

ファイル複製手段130以外は、データの入力や、問い合わせを受けて処理を開始するものとし、処理の途中で他の処理による割り込みを許容しない。   Other than the file duplicating means 130, processing is started upon receipt of data input or inquiry, and interruption by other processing is not permitted during the processing.

また、メッセージフォワード手段120とファイル複製手段130の連携動作を可能にするために、ファイル複製手段130には、マイグレーションフラグとフォワード遮断フラグの2つのフラグが設けられている。   Further, in order to enable the cooperative operation of the message forward unit 120 and the file duplicating unit 130, the file duplicating unit 130 is provided with two flags, a migration flag and a forward blocking flag.

マイグレーションフラグは、ファイル複製手段130が、メッセージフォワード手段120にファイルマイグレーション中であることを知らせるためのフラグである。メッセージフォワード手段120は、ファイルマイグレーション中には通常時と異なる動作をするために本フラグを用いる。   The migration flag is a flag for the file duplication unit 130 to notify the message forward unit 120 that the file migration is in progress. The message forwarding unit 120 uses this flag during file migration in order to perform an operation different from the normal operation.

フォワード遮断フラグは、ファイル複製手段130が、メッセージフォワード手段120によるメッセージのフォワードを遮断するためのフラグである。ファイル複製手段130がファイルの複製を終えて複製対象の一貫性をチェックする際に、メッセージのフォワードは遮断される必要がある。そのために本フラグが用いられる。   The forward blocking flag is a flag for the file copying unit 130 to block the message forwarding by the message forwarding unit 120. When the file duplication unit 130 finishes duplicating the file and checks the consistency of the duplication target, the message forwarding needs to be blocked. For this purpose, this flag is used.

なお、これらのフラグは、メッセージフォワード手段120とファイル複製手段130が連携動作をするための通信を行う方法の一例である。ファイル複製手段130にフラグを設ける他に、要求と応答をやりとりする方法や、フラグを管理する第三者的な手段を設ける方法、第三者的な手段が要求と応答を中継する方法などがある。また、これら複数の手段を1つの手段にまとめて実装することにより通信を無くすこともできる。   Note that these flags are an example of a method for performing communication for the message forward unit 120 and the file duplicating unit 130 to perform a cooperative operation. In addition to providing a flag in the file duplicating means 130, there are a method for exchanging requests and responses, a method for providing third-party means for managing flags, a method for relaying requests and responses by third-party means, and the like. is there. Further, communication can be eliminated by collectively mounting these plural units into one unit.

図3は、第1の実施形態のパケット処理手段の動作を示すフローチャートである。図3を参照すると、パケット処理手段110は、ネットワーク12あるいは上位手段からデータを受信すると(ステップAA1)、処理を開始する。上位手段とは、メッセージフォワード手段120やファイル複製手段130である。   FIG. 3 is a flowchart showing the operation of the packet processing means of the first embodiment. Referring to FIG. 3, when the packet processing unit 110 receives data from the network 12 or the host unit (step AA1), the packet processing unit 110 starts processing. The high-order means are the message forward means 120 and the file copy means 130.

まず、パケット処理手段110は、受けたデータがどこからのものかを調べる(ステップAA2)。受けたデータがネットワーク12からのパケットであれば、パケット処理手段110は、そのパケットからメッセージ部分を取得する(ステップAA3)。1つのパケットに複数のメッセージが入っている場合があるが、その場合には複数のメッセージが取り出される。パケット処理手段110は、上位手段に各メッセージを送って(ステップAA4)、処理を終了する。   First, the packet processing means 110 checks where the received data is from (step AA2). If the received data is a packet from the network 12, the packet processing means 110 acquires a message part from the packet (step AA3). There are cases where a plurality of messages are contained in one packet. In such a case, a plurality of messages are extracted. The packet processing means 110 sends each message to the higher-level means (step AA4) and ends the processing.

また、1つのメッセージが複数のパケットにフラグメント化されている場合があるが、その場合、パケット処理手段110は、メッセージを構成するデータが揃ってから上位手段にメッセージを送る。   In some cases, one message is fragmented into a plurality of packets. In this case, the packet processing means 110 sends the message to the higher-order means after the data composing the message is prepared.

ステップAA2の判定でデータが上位手段からであれば、パケット修理手段110は、メッセージをパケット化してネットワーク12に送り(ステップAA5)、終了する。   If it is determined in step AA2 that the data is from the host unit, the packet repair unit 110 packetizes the message and sends it to the network 12 (step AA5), and the process ends.

図4は、第1の実施形態のメッセージフォワード手段の動作を示すフローチャートである。図4を参照すると、メッセージフォワード手段120は、パケット処理手段110からメッセージを受信すると(ステップAB1)、処理を開始する。   FIG. 4 is a flowchart showing the operation of the message forwarding unit of the first embodiment. Referring to FIG. 4, when the message forward unit 120 receives a message from the packet processing unit 110 (step AB1), it starts processing.

まず、メッセージフォワード手段120は、フォワード遮断フラグがONか否かを調べる(ステップAB2)。フォワード遮断フラグがOFFであれば、メッセージフォワード手段120は、ステップAB4の処理に移行する。フォワード遮断フラグがONであれば、メッセージフォワード手段120は、一旦他の手段の処理に戻して、フォワード遮断フラグがOFFになるまで待つ(ステップAB3)。   First, the message forward means 120 checks whether or not the forward cutoff flag is ON (step AB2). If the forward blocking flag is OFF, the message forward means 120 proceeds to the process of step AB4. If the forward cutoff flag is ON, the message forward means 120 once returns to the processing of other means and waits until the forward cutoff flag becomes OFF (Step AB3).

ステップAB2〜AB3の処理は、ファイル複製手段130が、移動元と移動先の間でファイルの一貫性がとれているか否かを確認する際などに、クライアントとサーバ間の通信を遮断するために設けられている。   Steps AB2 to AB3 are performed in order to block communication between the client and the server when the file duplicating unit 130 confirms whether or not the file is consistent between the migration source and the migration destination. Is provided.

次に、メッセージフォワード手段120は、マイグレーションフラグがONか否か調べる(ステップAB4)。マイグレーションフラグがOFFであれば、メッセージフォワード手段120はステップAB7の処理に移行する。マイグレーションフラグがONであれば、メッセージフォワード手段120は、メッセージが更新系の要求あるいは応答か否かを調べる(ステップAB5)。   Next, the message forward means 120 checks whether the migration flag is ON (step AB4). If the migration flag is OFF, the message forward means 120 proceeds to the process at step AB7. If the migration flag is ON, the message forward means 120 checks whether the message is an update request or response (step AB5).

メッセージが更新系の要求でも応答でもなければ、メッセージフォワード手段120は、ステップAB7の処理に移行する。メッセージが更新系の要求あるいは応答であれば、ファイルフォワード手段120は、ファイル複製手段130にメッセージのコピーを送る(ステップAB6)。   If the message is neither an update request nor a response, the message forward means 120 proceeds to the process of step AB7. If the message is an update request or response, the file forwarding means 120 sends a copy of the message to the file duplicating means 130 (step AB6).

ステップAB4〜AB6の処理は、マイグレーション対象のファイルに更新がされたか否かをファイル複製手段130が確認できるようにするための処理である。   The processes in steps AB4 to AB6 are processes for enabling the file duplicating unit 130 to confirm whether or not the migration target file has been updated.

ステップAB5の処理において、メッセージが更新系の要求もしくは応答か否かの判断はメッセージに含まれるコマンドの種類に基づいて行う。コマンドの種類は、メッセージ内にシンボリックに示されている場合や、番号のようにバイナリ形式で示されている場合がある。いずれの場合もプロトコルの仕様に従って判断すればよい。更新系コマンドの例としては、ファイルを更新するコマンド、属性を更新するコマンド、名前空間を更新するコマンドなどがある。   In the process of step AB5, whether or not the message is an update request or response is determined based on the type of command included in the message. The command type may be symbolically indicated in the message or may be indicated in binary form, such as a number. In either case, the determination may be made according to the protocol specifications. Examples of update commands include a file update command, an attribute update command, and a name space update command.

また、プロトコルによっては応答にコマンドの種類が含まれていない。この場合、要求を受けたときにメッセージに含まれるメッセージ番号を記録しておき、応答を受けたときにメッセージ番号を照合することにより更新系か否か判断すればよい。   In addition, depending on the protocol, the type of command is not included in the response. In this case, when a request is received, the message number included in the message is recorded, and when a response is received, the message number is checked to determine whether or not the update system is used.

次に、メッセージフォワード手段120は、メッセージが排他ロック要求もしくは応答であるか否か調べる(ステップAB7)。排他ロック要求もしくは応答でなければ、メッセージフォワード手段120は、ステップAB9の処理に移行する。メッセージが排他ロック要求もしくは応答であれば、メッセージフォワード手段120は、排他ロック状態情報管理手段140にメッセージのコピーを送る(ステップAB8)。   Next, the message forward means 120 checks whether or not the message is an exclusive lock request or a response (step AB7). If it is not an exclusive lock request or a response, the message forward means 120 moves to the process of step AB9. If the message is an exclusive lock request or a response, the message forward means 120 sends a copy of the message to the exclusive lock state information management means 140 (step AB8).

ステップAB7〜AB8の処理は、排他ロック状態情報管理手段140が排他ロック状態情報を記録するのを可能にするために設けられている。   Steps AB7 to AB8 are provided to enable the exclusive lock state information management unit 140 to record the exclusive lock state information.

ステップAB7の判定では、メッセージが排他ロック要求もしくは応答であるか否かは、メッセージに含まれるコマンドの種類とパラメータから判断できる。コマンドの種類とパラメータは、メッセージ内にシンボリックに示されている場合や、番号のようにバイナリ形式で示されている場合がある。いずれも場合もプロトコルの仕様に従って判断すればよい。   In step AB7, whether or not the message is an exclusive lock request or a response can be determined from the type of command and parameters included in the message. The command type and parameter may be symbolically indicated in the message or in binary form, such as a number. In either case, the determination may be made according to the protocol specifications.

また、プロトコルによっては応答にコマンドの種類とパラメータが含まれていない。この場合、要求を受けたときにメッセージに含まれるメッセージ番号を記録しておき、応答を受けたときにメッセージ番号を照合することにより判断すればよい。   Depending on the protocol, the response does not include the command type and parameters. In this case, the message number included in the message is recorded when the request is received, and the determination is made by checking the message number when receiving the response.

最後に、メッセージフォワード手段120は、フォワーディングテーブルを参照して転送先を調べ、それを宛先に設定してメッセージをパケット処理手段110に送る(ステップAB9)。この場合、フォワーディングテーブルには、メッセージの送付先IPアドレスと転送先のIPアドレスの対応がマッピングされている。また、サーバ識別子ではなく、ボリューム識別子やファイル識別子とメッセージの転送先サーバをマッピングすることとしてもよい。この場合、ボリューム単位、もしくはファイル単位でどのサーバに転送すればよいのかを中間装置101が管理することになる。また、サーバ識別子、ボリューム識別子、ファイル識別子の組み合わせと、メッセージの転送サーバの対応をマッピングすることももちろん可能である。   Finally, the message forwarding means 120 refers to the forwarding table, checks the forwarding destination, sets it as the destination, and sends the message to the packet processing means 110 (step AB9). In this case, the correspondence between the message destination IP address and the forwarding IP address is mapped in the forwarding table. Further, instead of a server identifier, a volume identifier or file identifier may be mapped to a message transfer destination server. In this case, the intermediate apparatus 101 manages to which server the data should be transferred in volume units or file units. It is of course possible to map the correspondence between the server identifier, the volume identifier, and the file identifier and the message transfer server.

図5は、第1の実施形態のファイル複製手段の動作を示すフローチャートである。図5を参照すると、ファイル複製手段130は、システム管理者によるマイグレーション開始の指示を受けて(ステップAC1)、処理を開始する。システム管理者は、その指示の際に移動元と移動先を併せて指定する。   FIG. 5 is a flowchart showing the operation of the file duplicating means of the first embodiment. Referring to FIG. 5, the file copying unit 130 receives a migration start instruction from the system administrator (step AC1) and starts processing. The system administrator specifies the movement source and the movement destination at the time of the instruction.

移動元に属するファイルがマイグレーション対象のファイルである。ファイル複製手段130はこれらを移動先に複製する。指示は、例えば、サーバServer1のボリュームShare1をサーバServer2のボリュームShare2に移動するというようなものとなる。この場合は、ファイル複製手段130は、ボリュームShare1に属するファイルをボリュームShare2に移動する。この例ではボリューム単位の移動であるが、ディレクトリ単位の移動、ファイル単位の移動、またサーバ単位の移動という指定も考えられる。   The file belonging to the migration source is the migration target file. The file duplicating unit 130 duplicates these to the destination. The instruction is, for example, to move the volume Share1 of the server Server1 to the volume Share2 of the server Server2. In this case, the file duplicating unit 130 moves a file belonging to the volume Share1 to the volume Share2. In this example, the movement is performed in units of volumes. However, it is also possible to specify movement in units of directories, movement in units of files, or movement in units of servers.

処理を開始したファイル複製手段130は、マイグレーションフラグをONにする(ステップAC2)。次に、ファイル複製手段130は、移動元のファイルを移動先に複製する(ステップAC3)。ステップAC3の処理の詳細については図6のフローチャートを用いて後述する。   The file duplicating unit 130 that has started the processing sets the migration flag to ON (step AC2). Next, the file duplicating unit 130 duplicates the source file to the destination (step AC3). Details of the process of step AC3 will be described later with reference to the flowchart of FIG.

次に、ファイル複製手段130は、クライアントからのアクセスを移動元から移動先に切り替える(ステップAC4)。ステップAC4の処理の詳細については図9のフローチャートを用いて後述する。   Next, the file copying unit 130 switches the access from the client from the movement source to the movement destination (step AC4). Details of the process of step AC4 will be described later with reference to the flowchart of FIG.

最後に、ファイル複製手段130は、マイグレーションフラグをOFFに戻して(ステップAC5)、処理を終了する。   Finally, the file duplicating means 130 returns the migration flag to OFF (step AC5) and ends the process.

図6は、第1の実施形態のファイル複製手段が移動元のファイルを移動先に複製する動作を示すフローチャートである。図6を参照すると、ファイル複製手段130は、まず、同期状態管理ツリーを作成する(ステップAD1)。同期状態管理ツリーとは、マイグレーション対象のディレクトリツリーを記述したものである。さらに、同期状態管理ツリーには、そのディレクトリツリーを構成する各ファイルが複製済か否かが記述されている。   FIG. 6 is a flowchart showing an operation in which the file duplicating unit of the first embodiment duplicates the source file to the destination. Referring to FIG. 6, the file copying unit 130 first creates a synchronization state management tree (step AD1). The synchronization state management tree describes a directory tree to be migrated. Further, the synchronization status management tree describes whether each file constituting the directory tree has been copied or not.

同期状態管理ツリーを作成するために、ファイル複製手段130は、ディレクトリツリー構成を知るための要求をサーバに送る。例えば、プロトコルがNFSであればREADDIRやREADDIRPLUS、プロトコルがCIFSであればFINDFIRSTといったような要求をサーバに送る。また、各ファイルが複製済か否かについては、この時点では複製の処理を開始していないので全て複製済でないと記述する。   In order to create the synchronization state management tree, the file replication means 130 sends a request for knowing the directory tree configuration to the server. For example, a request such as READDIR or READDIRPLUS is sent to the server if the protocol is NFS, and FINDFIRST is sent to the server if the protocol is CIFS. Whether each file has already been copied is described as not having already been copied since the copy process has not started at this point.

次に、ファイル複製手段130は、同期状態管理ツリーにリストアップされている全てのファイルが複製済であり、かつ更新チェックが付されていない状態になるまでステップAD3〜ステップAD7の処理を繰り返す(ステップAD2)。更新チェックの付与と削除については図7を用いて後述する。   Next, the file duplicating unit 130 repeats the processing from step AD3 to step AD7 until all the files listed in the synchronization state management tree have been duplicated and are not checked for update ( Step AD2). The addition and deletion of the update check will be described later with reference to FIG.

まず、ファイル複製手段130は、マイグレーション対象に更新がされているか否かを調べる(ステップAD3)。ステップAD3の処理の詳細については図7を用いて後述する。   First, the file duplicating unit 130 checks whether or not the migration target has been updated (step AD3). Details of the processing in step AD3 will be described later with reference to FIG.

次に、ファイル複製手段130は、同期状態管理ツリー内のファイルの中から複製済でないものを1つ選択する(ステップAD4)。次に、ファイル複製手段130は、選択したファイルが排他ロックされているか否か、排他ロック状態情報管理手段140に問い合わせて確認する(ステップAD5)。   Next, the file duplicating means 130 selects one of the files in the synchronization state management tree that has not been duplicated (step AD4). Next, the file duplicating unit 130 checks whether or not the selected file is exclusively locked by inquiring to the exclusive lock state information managing unit 140 (step AD5).

選択したファイルが排他ロックされていれば、ファイル複製手段130は、ステップAD7の処理に移行する。ファイルが排他ロックされていなければ、ファイル複製手段130は、ファイル複製手段130は排他ロック状態情報管理手段140から排他ロック状態情報を入手する(ステップAD6)。   If the selected file is locked exclusively, the file duplicating means 130 proceeds to the process of step AD7. If the file is not exclusively locked, the file duplicating unit 130 obtains the exclusive lock state information from the exclusive lock state information managing unit 140 (step AD6).

この排他ロックの情報には、排他ロックの種類、排他ロックの範囲、排他ロックの所有者に関する情報が含まれている。排他ロックの種類および範囲に関する情報によって、ファイル内の排他ロックがかかっている範囲が示されている。排他ロックの所有者に関する情報は、排他ロックされているファイルを複製する際に利用される。   This exclusive lock information includes information on the type of exclusive lock, the range of the exclusive lock, and the owner of the exclusive lock. The range related to the exclusive lock in the file is indicated by the information on the type and range of the exclusive lock. Information regarding the owner of the exclusive lock is used when a file that is exclusively locked is copied.

次に、ファイル複製手段130は、選択したファイルを移動先に複製する(ステップAD7)。この際、ファイル複製手段130は、ファイルの複製が済むと、同期状態管理ツリー上、そのファイルを複製済の状態にする。   Next, the file duplicating means 130 duplicates the selected file to the movement destination (step AD7). At this time, when the file duplication unit 130 finishes duplicating the file, the file duplication unit 130 puts the file into a duplicated state on the synchronization state management tree.

また、複製しようとするファイルが排他ロックされているものであれば、ファイル複製手段130は、ステップAD6の処理により入手した排他ロック状態情報を用いる。つまり、ファイル複製手段130は、排他ロック状態情報に含まれている排他ロックの所有者の情報を用いて所有者になりすまし、複製を行う。   If the file to be duplicated is exclusively locked, the file duplicating means 130 uses the exclusive lock status information obtained by the process of step AD6. That is, the file duplicating unit 130 performs duplication by impersonating the owner using information on the owner of the exclusive lock included in the exclusive lock state information.

排他ロックの所有者はファイル・アクセス・プロトコルによって異なるが、一般的には、クライアント、TCPコネクションなどのトランスポート、ユーザ、またはユーザ上のプロセス、もしくはこれらの組み合わせなどである。   The owner of the exclusive lock differs depending on the file access protocol, but is generally a client, a transport such as a TCP connection, a user, a process on the user, or a combination thereof.

同期状態管理ツリーに複製ができていないファイルがなくなると、ファイル複製手段130は、ステップAD2のループを脱してフォワード遮断フラグをONにする(ステップAD8)。   When there are no more unreplicated files in the synchronization state management tree, the file replication means 130 exits the loop of step AD2 and turns on the forward blocking flag (step AD8).

最後に、ファイル複製手段130は、マイグレーション対象の中に一貫性がとれていないものがないか確かめて(ステップAD9)、処理を終了する。ステップAD9の処理の詳細については図8のフローチャートを用いて後述する。   Finally, the file duplicating unit 130 confirms whether there is any inconsistent migration target (step AD9), and ends the process. Details of the process of step AD9 will be described later with reference to the flowchart of FIG.

図7は、第1の実施形態のファイル複製手段が、マイグレーション対象に更新がされているか否か調べる動作を示すフローチャートである。図7を参照すると、ファイル複製手段130は、まず、メッセージフォワード手段120からのメッセージがあるか否かを判定する(ステップAE1)。メッセージがなければ、ファイル複製手段130はそのまま処理を終了する。   FIG. 7 is a flowchart showing an operation of checking whether the file duplicating unit of the first embodiment has been updated to the migration target. Referring to FIG. 7, the file duplicating unit 130 first determines whether there is a message from the message forwarding unit 120 (step AE1). If there is no message, the file duplicating means 130 ends the process as it is.

メッセージがあれば、ファイル複製手段130は、そのメッセージの対象とするファイルがマイグレーション対象か否か判定する(ステップAE2)。   If there is a message, the file duplicating means 130 determines whether or not the file targeted by the message is a migration target (step AE2).

メッセージが対象とするファイルは、メッセージに含まれるファイル識別子によって知ることができる。ファイル識別子は、メッセージ内にシンボリックに示されている場合や、ファイルサーバ14からのトークンのようにバイナリ形式で示されている場合がある。パス名のようにシンボリックに示されていれば、ファイル識別子から容易にファイルを識別できる。トークンとしてバイナリ形式で示されている場合には、そのトークンがどのファイルに相当するかをなんらかの方法で知る必要がある。トークンは、オープンが成功したときにサーバからの応答によりクライアントに渡されるものなので、一例として、中間装置はオープンの要求と応答を監視すればトークンとパス名の対応関係を知ることができる。例えば、オープンの要求に含まれるパス名を一旦保持しておき、成功応答に含まれるトークンと関係づけして記録すればよい。   The file targeted by the message can be known from the file identifier included in the message. The file identifier may be symbolically indicated in the message or may be indicated in a binary format such as a token from the file server 14. If it is symbolically shown as a path name, the file can be easily identified from the file identifier. If the token is shown in binary format, you need to know in some way what file the token corresponds to. Since the token is passed to the client by the response from the server when the opening is successful, as an example, the intermediate device can know the correspondence between the token and the path name by monitoring the opening request and response. For example, the path name included in the open request may be temporarily stored and recorded in association with the token included in the success response.

メッセージが対象とするファイルがマイグレーション対象であるか否かを確認するには、そのファイルが同期状態管理ツリーで管理されているか否かを調べればよい。   In order to confirm whether or not the file targeted by the message is a migration target, it is only necessary to check whether or not the file is managed by the synchronization status management tree.

ステップAE2の判定で、メッセージの対象がマイグレーション対象でなければ、ファイル複製手段130は処理を終了する。   If it is determined in step AE2 that the message target is not the migration target, the file copying unit 130 ends the process.

ステップAE2の判定で、メッセージの対象がマイグレーション対象であれば、ファイル複製手段130は、メッセージが要求、成功応答、失敗応答のいずれであるかを調べる(ステップAE3)。   If it is determined in step AE2 that the message target is a migration target, the file duplicating unit 130 checks whether the message is a request, a success response, or a failure response (step AE3).

メッセージが要求であれば、ファイル複製手段130は、同期状態管理ツリーのファイルに更新チェックを付与する(ステップAE4)。この時点では、要求が成功するか失敗するか分からず、ファイルが更新されるとは限らない。そのため、まだ複製済か否かを決定できず、更新チェックを付与するに留めてある。   If the message is a request, the file replication unit 130 adds an update check to the file in the synchronization state management tree (step AE4). At this point, it is not known whether the request will succeed or fail, and the file may not be updated. For this reason, it is still impossible to determine whether or not the copy has been completed, and only an update check is given.

メッセージが成功応答であれば、ファイル複製手段130は、更新チェックが付与されている、対象ファイルを複製済でない状態に戻す(ステップAE5)。つまり、複製をやり直すことになる。   If the message is a successful response, the file duplicating unit 130 returns the target file to which the update check is given to a state where it has not been duplicated (step AE5). In other words, duplication is performed again.

メッセージが失敗応答であれば、ファイル複製手段130は更新チェックを破棄する(ステップAE6)。   If the message is a failure response, the file replication unit 130 discards the update check (step AE6).

図8は、第1の実施形態のファイル複製手段がマイグレーション対象の中に一貫性がとれていないものが無いか確認する動作を示すフローチャートである。図8を参照すると、ファイル複製手段130は、まず、マイグレーション対象で一貫性がとれていないファイルがあるか否かを調べる(ステップAF1)。一貫性のチェック方法は、例えば、ファイルの更新時刻を比較する方法、ファイルのデータのチェックサムを比較する方法などがある。   FIG. 8 is a flowchart showing an operation in which the file duplicating unit according to the first embodiment confirms whether there is any inconsistent migration target. Referring to FIG. 8, the file duplicating unit 130 first checks whether there is a file that is inconsistent in the migration target (step AF1). Examples of the consistency check method include a method of comparing file update times and a method of comparing checksums of file data.

一貫性のとれていないファイルがなければ、ファイル複製手段130は、処理を終了する。一貫性のとれていないファイルがあれば、ファイル複製手段130は、フォワード遮断フラグをOFFにし、ステップAD2の複製のループ、すなわちステップAD2の処理に戻る(ステップAF2)。   If there is no inconsistent file, the file duplicating means 130 ends the process. If there is an inconsistent file, the file duplicating unit 130 turns off the forward blocking flag and returns to the duplication loop of step AD2, that is, the process of step AD2 (step AF2).

図9は、図2のファイル複製手段がクライアントからのアクセスを移動元から移動先に切り替える動作を示すフローチャートである。図9を参照すると、ファイル複製手段130は、まず、移動元へのアクセスが移動先に移るようにフォワーディングテーブルを書き換える(ステップAG1)。次に、ファイル複製手段130は、フォワード遮断フラグをOFFにして(ステップAG2)、処理を終了する。   FIG. 9 is a flowchart showing the operation of switching the access from the client from the movement source to the movement destination by the file duplicating means of FIG. Referring to FIG. 9, the file duplicating unit 130 first rewrites the forwarding table so that access to the movement source moves to the movement destination (step AG1). Next, the file duplicating unit 130 turns off the forward blocking flag (step AG2) and ends the process.

図10は、排他ロック状態情報管理手段の動作を示すフローチャートである。図10を参照すると、排他ロック状態情報管理手段140は、メッセージフォワード手段120からのデータ、あるいはファイル複製手段130からの問い合わせを受けると(ステップAH1)、処理を開始する。   FIG. 10 is a flowchart showing the operation of the exclusive lock state information management means. Referring to FIG. 10, upon receiving data from the message forwarding unit 120 or an inquiry from the file duplicating unit 130 (Step AH1), the exclusive lock state information managing unit 140 starts processing.

排他ロック状態情報管理手段140は、まず、メッセージフォワード手段120からのデータ受信か、ファイル複製手段130からの問合せかを判定する(ステップAH2)。   The exclusive lock state information management unit 140 first determines whether the data is received from the message forward unit 120 or an inquiry from the file replication unit 130 (step AH2).

メッセージフォワード手段120からのデータ受信であれば、排他ロック状態情報管理手段140は、そのデータが要求のメッセージか、成功応答のメッセージか、あるいは失敗応答のメッセージかを調べる(ステップAH3)。   If the data is received from the message forward means 120, the exclusive lock state information management means 140 checks whether the data is a request message, a success response message, or a failure response message (step AH3).

要求のメッセージであれば、排他ロック状態情報管理手段140は、排他ロック要求の情報およびメッセージ番号を一旦保持して(ステップAH4)、処理を終了する。   If the message is a request message, the exclusive lock state information management unit 140 once holds the information and message number of the exclusive lock request (step AH4), and ends the process.

メッセージ番号を保持するのは、後に応答があったとき、どの要求に対する応答かを調べるためである。排他ロック要求の情報を保持するのは、要求にしか含まれない情報があり、成功応答を受けたときに、これらの情報を記録するためである。   The message number is held in order to check which request is responded when there is a response later. The information on the exclusive lock request is retained because there is information included only in the request, and this information is recorded when a success response is received.

成功応答のメッセージであれば、排他ロック状態情報管理手段140は、保持していた排他ロック要求の情報を記録することにより排他ロック状態情報を更新して(ステップAH5)、処理を終了する。失敗応答のメッセージであれば、排他ロック状態情報管理手段140は、保持していた排他ロック要求の情報を破棄して(ステップAH6)、処理を終了する。   If the message is a success response message, the exclusive lock state information management unit 140 updates the exclusive lock state information by recording the held exclusive lock request information (step AH5), and ends the process. If the message is a failure response message, the exclusive lock state information management unit 140 discards the held exclusive lock request information (step AH6) and ends the process.

ステップAH5およびステップAH6において、応答がどの要求に対応するものかは、メッセージ番号で判断すればよい。   In step AH5 and step AH6, it can be determined from the message number to which request the response corresponds.

記録する排他ロックの情報には、排他ロックの種類、排他ロックの範囲、および排他ロックの所有者に関する情報が含まれる。   The information on the exclusive lock to be recorded includes information on the type of exclusive lock, the range of the exclusive lock, and the owner of the exclusive lock.

排他ロックの種類は、ファイル単位の排他ロックなのか、バイトレンジのような部分的な排他ロックなのかの情報である。排他ロックの範囲は、部分的な排他ロックがファイルのどの範囲にかかっているのかを示す情報である。   The type of exclusive lock is information indicating whether it is an exclusive lock for each file or a partial exclusive lock such as a byte range. The exclusive lock range is information indicating in which range of the file the partial exclusive lock is applied.

排他ロックの所有者は、ファイル・アクセス・プロトコルによって異なるが、一般的には、クライアント、コネクション、ユーザ、プロセス、もしくはこれらの組み合わせなどである。   The owner of the exclusive lock varies depending on the file access protocol, but is generally a client, a connection, a user, a process, or a combination thereof.

排他ロックの種類および範囲に関する情報は、ファイルに排他ロックがかかっているか、また、どの範囲に排他ロックがかかっているかを判断するのに利用される。排他ロックがファイルの一部のみにかかっている場合には、その部分を複製するときだけ、排他ロックの所有者になりすませばよいからである。排他ロックの所有者に関する情報は、排他ロックされているファイルを複製する際に利用される。   Information regarding the type and range of the exclusive lock is used to determine whether the file is locked exclusively and to which range the exclusive lock is locked. This is because when the exclusive lock is applied only to a part of the file, it is only necessary to impersonate the owner of the exclusive lock only when the part is copied. Information regarding the owner of the exclusive lock is used when a file that is exclusively locked is copied.

ステップAH2の判定でファイル複製手段130からの問合せであれば、排他ロック状態情報管理手段140は、そのファイルに排他ロックがかかっていれば排他ロック状態情報をファイル複製手段に送り(ステップAH7)、処理を終了する。   If it is an inquiry from the file duplicating unit 130 in the determination in step AH2, the exclusive lock state information managing unit 140 sends the exclusive lock state information to the file duplicating unit if the file is locked (step AH7). The process ends.

本実施の形態によれば、メッセージフォワード手段120は、フォワーディングテーブルに従ってファイルサーバ14とクライアント11の間のメッセージを転送すると共に監視しており、排他ロックの要求または応答があれば、その内容を排他ロック状態情報管理手段140に通知し、ファイルマイグレーション中に更新系の要求または応答があれば、その内容をファイル複製手段130に通知する。   According to this embodiment, the message forwarding means 120 transfers and monitors a message between the file server 14 and the client 11 according to the forwarding table, and if there is a request or response for an exclusive lock, the content is exclusive. The lock status information management unit 140 is notified, and if there is an update request or response during file migration, the contents are notified to the file duplication unit 130.

排他ロック状態情報管理手段140は、メッセージフォワード手段120からの通知に基づいて各ファイルの排他ロックの有無および排他ロックの所有者の情報を含む排他ロック状態を管理している。   Based on the notification from the message forward unit 120, the exclusive lock state information management unit 140 manages the exclusive lock state including the presence / absence of the exclusive lock of each file and the owner of the exclusive lock.

ファイル複製手段130は、ファイルマイグレーションにおいて複製を作成する際に、排他ロック状態情報管理手段140から排他ロック状態を取得し、排他ロックがかかっていればその排他ロックの所有者になりすましてファイルの複製を作成し、また、ファイルマイグレーション中に複製済のファイルが更新されたことをメッセージフォワード手段120からの通知によって知ると、そのファイルの複製をやり直し、一貫性がとれた状態でファイルの複製が完了すると、フォワーディングテーブルを更新することにより、クライアントからのアクセスの、メッセージフォワード手段120による転送先を切り替える。   When creating a copy in file migration, the file replication unit 130 acquires the exclusive lock state from the exclusive lock state information management unit 140, and if the exclusive lock is applied, the file replication unit 130 impersonates the owner of the exclusive lock and copies the file. If the notification from the message forwarding means 120 indicates that the copied file has been updated during file migration, the file is copied again and the file copy is completed in a consistent state. Then, the forwarding destination by the message forwarding means 120 for the access from the client is switched by updating the forwarding table.

そのため、中間装置101は、メッセージから認識される排他ロック状態の情報を利用してファイルを読み出し、メッセージから認識されるファイルの更新の情報を利用して一貫性のとれた状態でファイルの複製を行うことができるので、オンライン状態であっても、また排他ロックがかかっていても、正常にファイルマイグレーションを行うことができる。   Therefore, the intermediate apparatus 101 reads the file using the information on the exclusive lock state recognized from the message, and copies the file in a consistent state using the information on the update of the file recognized from the message. Therefore, file migration can be performed normally even in an online state or when an exclusive lock is applied.

なお、本実施形態では、中間装置101が物理的に独立した形態で存在する例を示したが、本発明はそれに限定されない。中間装置101は論理的にクライアント11とファイルサーバ14の中間に存在する限り、物理的にどのような形態をとってもよい。   In the present embodiment, an example in which the intermediate apparatus 101 exists in a physically independent form has been described, but the present invention is not limited thereto. As long as the intermediate device 101 exists logically between the client 11 and the file server 14, it may take any physical form.

例えば、中間装置101は、いずれかのファイルサーバ14の内部に構成されてもよい。その場合、クライアント11とファイルサーバ14の通信は、中間装置101を内部に有するファイルサーバ14を経由することとなる。また、中間装置101は、いずれかのクライアント11の内部に構成されてもよい。その場合、クライアント11とファイルサーバ14の通信は、中間装置101を内部に有するクライアント11を経由することとなる。   For example, the intermediate device 101 may be configured inside any one of the file servers 14. In that case, the communication between the client 11 and the file server 14 goes through the file server 14 having the intermediate device 101 therein. Further, the intermediate device 101 may be configured inside any one of the clients 11. In this case, communication between the client 11 and the file server 14 is via the client 11 having the intermediate device 101 therein.

また、本実施形態では、ファイル・アクセス・プロトコルとしてCIFSおよびNFSv4を例として、ユーザが排他ロックの所有者となることとしたが、本発明はそれに限定されない。ファイル・アクセス・プロトコルに応じてファイルにアクセスする主体は様々であり、そのため排他ロックの所有者も様々である。
(第2の実施形態)
第2の実施形態によるクライアント・サーバ・システムは図1に示した第1の実施形態と同様の構成である。ただし、本実施形態では、図1における中間装置101の代わりに中間装置102が設けられている。
In this embodiment, CIFS and NFSv4 are taken as examples of file access protocols, and the user is the owner of the exclusive lock. However, the present invention is not limited to this. There are various subjects that access the file according to the file access protocol, and therefore, the owner of the exclusive lock also varies.
(Second Embodiment)
The client server system according to the second embodiment has the same configuration as that of the first embodiment shown in FIG. However, in this embodiment, an intermediate device 102 is provided instead of the intermediate device 101 in FIG.

図11は、第2の実施形態の中間装置102の構成を示すブロック図である。図11を参照すると、本実施形態の中間装置102は、パケット処理手段110、メッセージフォワード手段121、ファイル複製手段131、オープン状態情報管理手段150、およびオープン状態再現手段160を有している。   FIG. 11 is a block diagram illustrating a configuration of the intermediate apparatus 102 according to the second embodiment. Referring to FIG. 11, the intermediate apparatus 102 according to the present embodiment includes a packet processing unit 110, a message forward unit 121, a file duplication unit 131, an open state information management unit 150, and an open state reproduction unit 160.

パケット処理手段110は第1の実施形態と同じである。   The packet processing means 110 is the same as that in the first embodiment.

メッセージフォワード手段121は、パケット処理手段110からメッセージを受けると、フォワーディングテーブル(不図示)を参照して転送先を調べ、それを宛先に設定してメッセージをパケット処理手段110に送る。   When the message forwarding unit 121 receives a message from the packet processing unit 110, the message forwarding unit 121 refers to a forwarding table (not shown), checks the forwarding destination, sets it as the destination, and sends the message to the packet processing unit 110.

また、オープン状態情報管理手段150におけるオープン状態情報の管理のために、メッセージフォワード手段121は、メッセージがオープン状態を変化させる要求もしくは応答であれば、そのメッセージのコピーをオープン状態情報管理手段150に送る。   Further, in order to manage the open state information in the open state information management unit 150, the message forward unit 121 sends a copy of the message to the open state information management unit 150 if the message is a request or response for changing the open state. send.

また、ファイルマイグレーション中は、ファイル複製手段131における複製済ファイルの更新の監視を可能にするために、メッセージフォワード手段121は、メッセージが更新系の要求もしくは応答であれば、そのメッセージのコピーをファイル複製手段131に送る。   Further, during file migration, in order to enable monitoring of the update of the replicated file in the file replication means 131, the message forward means 121, if the message is an update request or response, copies the message to the file Send to the duplicating means 131.

また、ファイルマイグレーション終了後は、メッセージフォワード手段121は、オープン状態を再現する必要があるか否か調べ、必要があれば、オープン状態再現手段160にオープン状態再現要求を送り、オープン状態の再現を指示する。   Further, after the file migration is completed, the message forward unit 121 checks whether or not it is necessary to reproduce the open state, and if necessary, sends an open state reproduction request to the open state reproduction unit 160 to reproduce the open state. Instruct.

さらに、メッセージフォワード手段121は、オープン状態が再現された状態を利用して送られるべきメッセージをオープン状態再現手段160に送る。メッセージフォワード手段120がメッセージをオープン状態再現手段160に送るのは、オープン状態が再現された状態を利用して代理転送してもらうためである。   Further, the message forwarding unit 121 sends a message to be sent using the state in which the open state is reproduced to the open state reproduction unit 160. The message forward means 120 sends the message to the open state reproduction means 160 because the message is forwarded by proxy using the state where the open state is reproduced.

ファイル複製手段131は、システム管理者によるファイルマイグレーションの指示を受けると、その指示に基づいて動作を開始する。動作を開始したファイル複製手段131は、サーバ14間でファイルの複製を行う。ファイルを複製している間に、メッセージフォワード手段121から更新系メッセージのコピーを受けると、複製済のファイルに更新があるか否か調べる。複製済のファイルに更新があれば、複製の処理をやり直す必要があるからである。   When receiving a file migration instruction from the system administrator, the file copying unit 131 starts an operation based on the instruction. The file duplicating means 131 that has started the operation duplicates the files between the servers 14. If a copy of the update message is received from the message forwarding means 121 while the file is being copied, it is checked whether the copied file has an update. This is because if the copied file is updated, it is necessary to redo the copying process.

また、ファイルの複製が完了すると、ファイル複製手段131は、オープン状態再現フラグをONにした後、フォワーディングテーブルを書き換えて、クライアントからのアクセスを切り替える。   When the file duplication is completed, the file duplication unit 131 turns on the open state reproduction flag and then rewrites the forwarding table to switch the access from the client.

オープン状態情報管理手段150は、メッセージフォワード手段120からオープン状態情報を変更する要求もしくは応答のメッセージのコピーを受けると、その内容に基づいてオープン状態情報を管理する。   When the open state information management unit 150 receives a copy of a request or response message for changing the open state information from the message forward unit 120, the open state information management unit 150 manages the open state information based on the content.

また、オープン状態再現手段160から問い合わせを受けると、オープン状態情報管理手段150は、管理しているオープン状態情報をオープン状態再現手段160に送る。   When receiving an inquiry from the open state reproduction unit 160, the open state information management unit 150 sends the managed open state information to the open state reproduction unit 160.

オープン状態再現手段160は、メッセージフォワード手段121からオープン状態再現要求を受けると、オープン状態を再現する。また、オープン状態を再現した後に、再現されたオープン状態で送られるべきメッセージをメッセージフォワード手段121から受けると、トークンを付け替えてパケット処理手段110に送る(代理転送)。   When the open state reproduction unit 160 receives the open state reproduction request from the message forward unit 121, the open state reproduction unit 160 reproduces the open state. When the message to be sent in the reproduced open state is received from the message forward unit 121 after reproducing the open state, the token is replaced and sent to the packet processing unit 110 (proxy transfer).

次に、本実施形態のクライアント・サーバ・システムの動作例について説明する。なお、ここでは、ファイル複製手段131は、システム管理者の指示に基づいて動作を開始するものとする。また、ファイル複製手段130は、他の手段の処理による割り込みを許容する。他の処理による割り込みがあると、ファイル複製手段131はスリープして、その処理が終了するのを待つ。   Next, an operation example of the client server system of this embodiment will be described. Here, it is assumed that the file copying unit 131 starts to operate based on an instruction from the system administrator. In addition, the file duplicating unit 130 allows interruption by processing of other units. If there is an interruption due to another process, the file copying unit 131 sleeps and waits for the process to end.

ファイル複製手段131以外は、データの入力や、問い合わせを受けて処理を開始するものとし、処理の途中で他の処理による割り込みを許容しない。   Other than the file duplicating means 131, processing is started upon receipt of data input or inquiry, and interruption by other processing is not permitted during the processing.

また、メッセージフォワード手段121とファイル複製手段131の連携動作を可能にするために3つのフラグを設けている。   In addition, three flags are provided to enable the message forwarding unit 121 and the file copying unit 131 to cooperate.

マイグレーションフラグとフォワード遮断フラグは、第1の実施形態と同様のフラグである。オープン状態再現フラグは、ファイル複製手段131が、メッセージフォワード手段121に、オープン状態を再現する必要があるか否か知らせるためのフラグであり、ここではファイルサーバ毎に設定されることとする。   The migration flag and the forward cutoff flag are the same flags as in the first embodiment. The open state reproduction flag is a flag for the file duplication unit 131 to notify the message forward unit 121 whether or not it is necessary to reproduce the open state, and is set here for each file server.

オープン状態再現フラグは、ファイルの複製とアクセスの切り替えが終了した時点でONとなり、それにより、そのファイルサーバについてはオープン状態の再現を行う動作モードに移行する。オープン状態を再現する必要がある場合には、メッセージフォワード手段121は、通常時と異なる動作をするために本フラグを用いる。   The open state reproduction flag is turned on when the file duplication and the access switching are completed, so that the file server shifts to an operation mode in which the open state is reproduced. When it is necessary to reproduce the open state, the message forward means 121 uses this flag to perform an operation different from the normal time.

なお、本実施形態では、オープン状態再現フラグをOFFにするタイミングは限定されないが、例えば、再現したオープン状態を用いるクライアントがいなくなった時点でOFFにすることとしてもよい。クライアントとの間のTCPコネクションが全て切断されたとき、逆にサーバとの間のTCPコネクションが全て切断されたとき、中間装置102はオープン状態再現フラグをOFFにすればよい。   In this embodiment, the timing for turning off the open state reproduction flag is not limited. For example, it may be turned off when there are no clients using the reproduced open state. When all the TCP connections with the client are disconnected, or conversely when all the TCP connections with the server are disconnected, the intermediate apparatus 102 may set the open state reproduction flag to OFF.

また、他の例として、オープン状態再現フラグをOFFにするまでの時間をシステム管理者が予め設定しておくこととしてもよい。例えば、オープン状態再現フラグがONになった後に1ヶ月経過したら本フラグをOFFにしてオープン状態の再現を行わなくすることを管理者が予め設定しておく。中間装置102は、その時間が経過したら自動的に本フラグをOFFにする。   As another example, the system administrator may set the time until the open state reproduction flag is turned off in advance. For example, when one month has elapsed after the open state reproduction flag is turned on, the administrator sets in advance that this flag is turned off and the open state is not reproduced. The intermediate device 102 automatically turns off this flag when the time has elapsed.

なお、これらのフラグは、メッセージフォワード手段121とファイル複製手段131が連携動作をするために通信を行う方法の一例である。ファイル複製手段131にフラグを設ける他に、要求と応答をやりとりする方法や、フラグを管理する第三者的な手段を設ける方法、第三者的な手段が要求と応答を中継する方法などがある。また、これら複数の手段を1つの手段にまとめて実装することにより通信を無くすこともできる。   Note that these flags are an example of a method in which the message forwarding unit 121 and the file duplicating unit 131 perform communication in order to perform a cooperative operation. In addition to providing a flag in the file duplicating means 131, there are a method for exchanging requests and responses, a method for providing third-party means for managing flags, a method for relaying requests and responses by third-party means, and the like. is there. Further, communication can be eliminated by collectively mounting these plural units into one unit.

図12は、第2の実施形態のメッセージフォワード手段の動作を示すフローチャートである。図12を参照すると、メッセージフォワード手段121は、パケット処理手段110からメッセージを受けると、あるいはオープン状態再現手段160から問合せを受けると(ステップBA1)、処理を開始する。   FIG. 12 is a flowchart showing the operation of the message forwarding means of the second exemplary embodiment. Referring to FIG. 12, when the message forwarding unit 121 receives a message from the packet processing unit 110 or receives an inquiry from the open state reproduction unit 160 (step BA1), the message forwarding unit 121 starts processing.

まず、メッセージフォワード手段121は、メッセージまたは問合せがどこからのものか調べる(ステップBA2)。   First, the message forwarding means 121 checks where the message or inquiry is from (step BA2).

パケット処理手段110からのメッセージであれば、メッセージフォワード手段121は、図4に示したステップAB2〜AB6の処理を行う(ステップBA3)。これは第1の実施形態と同じ動作である。   If the message is from the packet processing means 110, the message forwarding means 121 performs the processing of steps AB2 to AB6 shown in FIG. 4 (step BA3). This is the same operation as in the first embodiment.

次に、メッセージフォワード手段121は、メッセージがオープン状態を変更する要求もしくは応答であるか否かを調べる(ステップBA4)。メッセージがオープン状態を変更する要求もしくは応答でなければ、メッセージフォワード手段121はステップBA6の処理に移行する。   Next, the message forwarding means 121 checks whether or not the message is a request or response for changing the open state (step BA4). If the message is not a request or response for changing the open state, the message forward means 121 proceeds to the process of step BA6.

メッセージがオープン状態を変更する要求もしくは応答であれば、メッセージフォワード手段121は、オープン状態情報管理手段150にメッセージのコピーを送る(ステップBA5)。メッセージがオープン状態を変更する要求もしくは応答であるか否かは、メッセージに含まれるコマンドの種類から判断できる。コマンドの種類は、メッセージ内にシンボリックに示されている場合や、番号のようにバイナリ形式で示されている場合がある。いずれも場合もプロトコルの仕様に従って判断すればよい。オープン状態を変更するコマンドの例としては、オープン、クローズ、ロック、アンロック、デリートなどがある。   If the message is a request or response for changing the open state, the message forward unit 121 sends a copy of the message to the open state information management unit 150 (step BA5). Whether or not the message is a request or response for changing the open state can be determined from the type of command included in the message. The command type may be symbolically indicated in the message or may be indicated in binary form, such as a number. In either case, the determination may be made according to the protocol specifications. Examples of commands that change the open state include open, close, lock, unlock, and delete.

また、プロトコルによっては、応答にコマンドの種類が含まれていない。この場合、要求を受けたときにメッセージに含まれるメッセージ番号を記録しておき、応答を受けたときにメッセージ番号を照合してコマンドの種類を判断すればよい。   In addition, depending on the protocol, the type of command is not included in the response. In this case, the message number included in the message is recorded when a request is received, and the type of command is determined by checking the message number when receiving a response.

最後に、メッセージフォワード手段121は、オープン状態再現手段160もしくはパケット処理手段110にメッセージを送り(ステップBA6)、処理を終了する。ステップBA6の処理の詳細については図13のフローチャートを用いて後述する。   Finally, the message forward unit 121 sends a message to the open state reproduction unit 160 or the packet processing unit 110 (step BA6), and the process is terminated. Details of the process of step BA6 will be described later with reference to the flowchart of FIG.

ステップBA2の判定で、オープン状態再現手段160からの問合せであれば、メッセージフォワード手段121は、パケット処理手段110にメッセージを送り(ステップBA7)、処理を終了する。   If it is determined in step BA2 that the query is from the open state reproducing means 160, the message forward means 121 sends a message to the packet processing means 110 (step BA7), and the process is terminated.

図13は、第2の実施形態のメッセージフォワード手段がオープン状態再現手段もしくはパケット処理手段にメッセージを送る動作を示すフローチャートである。図13を参照すると、メッセージフォワード手段121は、まず、オープン状態再現フラグがONか否か調べる(ステップBB1)。   FIG. 13 is a flowchart showing an operation in which the message forwarding unit according to the second embodiment sends a message to the open state reproducing unit or the packet processing unit. Referring to FIG. 13, the message forwarding means 121 first checks whether or not the open state reproduction flag is ON (step BB1).

オープン状態再現フラグがOFFであれば、メッセージフォワード手段121は、フォワーディングテーブルを参照して転送先を調べ、それを宛先に設定してメッセージをパケット処理手段110に送り(ステップBB7)、処理を終了する。   If the open state reproduction flag is OFF, the message forward unit 121 refers to the forwarding table to check the forwarding destination, sets it as the destination, sends the message to the packet processing unit 110 (step BB7), and ends the processing. To do.

オープン状態再現フラグがONであれば、メッセージフォワード手段121は、メッセージが対象とするファイルがオープン状態を再現する必要のあるものか否か調べる(ステップBB2)。   If the open state reproduction flag is ON, the message forward means 121 checks whether or not the file targeted by the message needs to reproduce the open state (step BB2).

メッセージが対象とするファイルは、メッセージに含まれるファイル識別子によって知ることができる。ファイル識別子は、パス名のようにメッセージ内にシンボリックに示されている場合や、ファイルサーバ14からのトークンのようにバイナリ形式で示されている場合がある。パス名のようにシンボリックに示されていれば、ファイル識別子から容易にファイルを識別できる。トークンとしてバイナリ形式で示されている場合には、そのトークンがどのファイルに相当するかをなんらかの方法で知る必要がある。トークンは、オープンが成功したときにサーバからの応答によりクライアントに渡されるものなので、一例として、中間装置はオープンの要求と応答を監視すればパス名とトークンの対応関係を知ることができる。   The file targeted by the message can be known from the file identifier included in the message. The file identifier may be symbolically indicated in the message such as a path name, or may be indicated in a binary format such as a token from the file server 14. If it is symbolically shown as a path name, the file can be easily identified from the file identifier. If the token is shown in binary format, you need to know in some way what file the token corresponds to. Since the token is passed to the client by a response from the server when the opening is successful, as an example, the intermediate device can know the correspondence between the path name and the token by monitoring the open request and response.

また、そのファイルがオープン状態を再現する必要のあるものか否かを、同期状態管理ツリーを参照して確認する。この同期状態管理ツリーは第1の実施形態のものと異なり、各ファイルがオープン状態を再現済か否かも記述されている。そのファイルが同期状態管理ツリーで管理されており、かつ、そのオープン状態が再現済でなければ、そのファイルはオープン状態を再現する必要がある。   Also, it is checked whether or not the file needs to reproduce the open state with reference to the synchronization state management tree. Unlike the first embodiment, this synchronization state management tree also describes whether or not each file has been reproduced in the open state. If the file is managed in the synchronization state management tree and the open state has not been reproduced, the file needs to be reproduced.

ファイルが同期状態管理ツリーで管理されていることは、そのファイルがマイグレーション対象であったことを意味するので、ステップBB2の判定でYES(すなわち、メッセージが対象とするファイルがオープン状態を再現する必要がある)となるのは、マイグレーション対象であり、複製が終わっているが、まだオープン状態を再現していないファイルがメッセージの対象となっているときである。   The fact that the file is managed in the synchronization status management tree means that the file was a migration target. Therefore, the determination in step BB2 is YES (that is, the file targeted by the message needs to reproduce the open state). Is a migration target, when the file has been copied, but the file that has not been reproduced yet is the target of the message.

ステップBB2の判定で、メッセージが対象とするファイルがオープン状態を再現する必要がなければ、メッセージフォワード手段121はステップBB4の処理に移行する。   If it is determined in step BB2 that the file targeted by the message does not need to reproduce the open state, the message forward unit 121 proceeds to the process in step BB4.

ステップBB2の判定で、メッセージが対象とするファイルがオープン状態を再現する必要があれば、メッセージフォワード手段121は、オープン状態再現要求をオープン状態再現手段160に送り(ステップBB3)、再現の処理が終了するまで待つ。   If it is determined in step BB2 that the file targeted by the message needs to reproduce the open state, the message forward unit 121 sends an open state reproduction request to the open state reproduction unit 160 (step BB3), and the reproduction process is performed. Wait for it to finish.

次に、メッセージフォワード手段121は、メッセージが、再現されたオープン状態を利用するものか否か(すなわち、透過に転送されるべきメッセージか否か)調べる(ステップBB4)。   Next, the message forwarding means 121 checks whether or not the message uses the reproduced open state (that is, whether or not the message should be transmitted transparently) (step BB4).

このステップ(ステップBB4)は、再現されたオープン状態を利用するメッセージについては、移動元サーバからクライアントに渡されたトークンを、中間装置が移動先サーバから取得したトークンに変換するために設けられている。   This step (step BB4) is provided for converting the token passed from the source server to the client into the token acquired by the intermediate device from the destination server for the message using the reproduced open state. Yes.

メッセージがどのオープン状態を利用するかは、メッセージに含まれる、ファイルをオープンした際にサーバから渡されたトークンによって識別できる。通常、トークンは、メッセージの中にファイル識別子として実装される。このトークンがオープン状態再現テーブルに記述されているか否かにより、再現されたオープン状態を利用するものか否かを判定できる。オープン状態再現テーブルとは、移動先サーバから渡されたトークンと、移動元サーバから渡された再現する前のトークンとを対応付けているテーブルである。   The open state used by the message can be identified by a token included in the message and passed from the server when the file is opened. Usually, tokens are implemented as file identifiers in messages. Whether this token is described in the open state reproduction table can determine whether or not the reproduced open state is used. The open state reproduction table is a table in which the token passed from the destination server and the token before reproduction passed from the source server are associated with each other.

なお、ファイル・アクセス・プロトコルによっては、ファイルをオープンした際にサーバから渡されたトークンだけでなく、ユーザが認証された際に渡されたトークン、ファイルの存在するボリュームにアクセスする許可を受けた際に渡されたトークンなどの様々なトークンを使わなければオープン状態を識別できない。この場合、他のトークンもオープン状態再現テーブルに記述しておけば、メッセージにて利用されるオープン状態が再現されたものか否かを判断できる。   Depending on the file access protocol, not only the token passed from the server when the file was opened, but also the token passed when the user was authenticated and permission to access the volume on which the file exists were received. The open state cannot be identified without using various tokens such as the token passed at the time. In this case, if other tokens are also described in the open state reproduction table, it can be determined whether or not the open state used in the message has been reproduced.

ステップBB4の判定で、メッセージが再現されたオープン状態を利用するのでなければ、メッセージフォワード手段121は、フォワーディングテーブルを参照して転送先を調べ、それを宛先に設定してメッセージをパケット処理手段110に送る(ステップBB6)。   If it is determined in step BB4 that the open state in which the message is reproduced is not used, the message forwarding unit 121 refers to the forwarding table to check the forwarding destination, sets it as the destination, and sends the message to the packet processing unit 110. (Step BB6).

ステップBB4の判定で、メッセージが再現されたオープン状態を利用するのであれば、メッセージフォワード手段121は、メッセージをオープン状態再現手段160に送り(ステップBB5)、処理を終了する。   If it is determined in step BB4 that the open state in which the message is reproduced is used, the message forward unit 121 sends the message to the open state reproduction unit 160 (step BB5), and ends the process.

図14は、第2の実施形態のファイル複製手段の動作を示すフローチャートである。図14を参照すると、ファイル複製手段131は、システム管理者からマイグレーション開始の指示を受けて(ステップBC1)、処理を開始する。処理を開始したファイル複製手段131は、まず、マイグレーションフラグをONにする(ステップBC2)。   FIG. 14 is a flowchart showing the operation of the file duplicating means of the second embodiment. Referring to FIG. 14, the file copying unit 131 receives a migration start instruction from the system administrator (step BC1), and starts processing. The file duplicating means 131 that has started the processing first turns on the migration flag (step BC2).

次に、ファイル複製手段131は、移動元のファイルを移動先に複製する(ステップBC3)。次に、ファイル複製手段131は、クライアントのアクセスを移動元から移動先に切り替える(ステップBC4)。最後に、ファイル複製手段131は、マイグレーションフラグをOFFにして(ステップBC5)、処理を終了する。   Next, the file duplicating unit 131 duplicates the migration source file to the migration destination (step BC3). Next, the file copying unit 131 switches the client access from the movement source to the movement destination (step BC4). Finally, the file copying unit 131 sets the migration flag to OFF (Step BC5) and ends the process.

以上、ステップBC1〜ステップBC5は、図5に示した第1の実施形態のフローチャートと同様である。ただし、ステップBC3およびステップBC4の詳細の動作は第1の実施形態と異なる。ステップBC3の詳細については図15を、ステップBC4の詳細については図16をそれぞれ用いて後述する。   The steps BC1 to BC5 are the same as those in the flowchart of the first embodiment shown in FIG. However, detailed operations of Step BC3 and Step BC4 are different from those of the first embodiment. Details of step BC3 will be described later with reference to FIG. 15, and details of step BC4 will be described later with reference to FIG.

図15は、第2の実施形態のファイル複製手段が移動元のファイルを移動先に複製する動作を示すフローチャートである。図15を参照すると、ファイル複製手段131は、まず、同期状態管理ツリーを作成する(ステップBD1)。同期状態管理ツリーとは、マイグレーション対象のディレクトリツリーを記述したものである。また、同期状態管理ツリーには、そのディレクトリツリーを構成する各ファイルが複製済か否か記述されている。さらに、第2の実施形態の同期状態管理ツリーは第1の実施形態のものと異なり、さらに、各ファイルがオープン状態を再現済か否かが記述されている。   FIG. 15 is a flowchart showing an operation in which the file duplicating unit of the second embodiment duplicates a source file to a destination. Referring to FIG. 15, the file replication unit 131 first creates a synchronization state management tree (step BD1). The synchronization state management tree describes a directory tree to be migrated. Also, the synchronization status management tree describes whether or not each file constituting the directory tree has been copied. Further, the synchronization state management tree of the second embodiment is different from that of the first embodiment, and further describes whether each file has reproduced the open state.

次に、ファイル複製手段131は、同期状態管理ツリーにリストアップされている全てのファイルが複製済であり、かつ更新チェックが付されていない状態になるまでステップBD3〜ステップBD5の処理を繰り返す(ステップBD2)。   Next, the file duplicating unit 131 repeats the processing from step BD3 to step BD5 until all the files listed in the synchronization state management tree have been duplicated and are not checked for update ( Step BD2).

まず、ファイル複製手段131は、マイグレーション対象に更新がされているか否か調べる(ステップBD3)。ステップのBD3の処理の詳細は図7に示した第1の実施形態のと同じである。   First, the file copying unit 131 checks whether or not the migration target has been updated (step BD3). The details of the processing of BD3 in the step are the same as those in the first embodiment shown in FIG.

次に、ファイル複製手段131は、同期状態管理ツリー内のファイルの中から複製済でないものを1つ選択する(ステップBD4)。次に、ファイル複製手段131は、選択したファイルを移動先に複製する(ステップBD5)。この際に、ファイル複製手段131は、ファイルの複製が済むと、同期状態管理ツリー上、そのファイルを複製済の状態にする。なお、図15に示されたフローでは特徴的な部分以外を簡略化しているため、ファイル・アクセス・プロトコルが強制ロック方式でありファイルに排他ロックがかかっている場合にマイグレーションが終了しない処理となっているが、第1の実施形態のステップAD5〜AD7のようにして、これを解決してもよい。   Next, the file copying unit 131 selects one file that has not been copied from the files in the synchronization state management tree (step BD4). Next, the file duplicating unit 131 duplicates the selected file to the destination (step BD5). At this time, when the file duplication unit 131 finishes duplicating the file, the file duplicating unit 131 puts the file into a duplicated state on the synchronization state management tree. Since the flow shown in FIG. 15 is simplified except for the characteristic part, the migration does not end when the file access protocol is the compulsory lock method and the file has an exclusive lock. However, this may be solved as in steps AD5 to AD7 of the first embodiment.

同期状態管理ツリーに複製ができていないファイルがなくなると、ファイル複製手段131は、ステップBD2のループを脱してフォワード遮断フラグをONにする(ステップBD6)。   When there are no more unreplicated files in the synchronization state management tree, the file replication unit 131 exits the loop of step BD2 and turns on the forward blocking flag (step BD6).

最後に、ファイル複製手段131は、マイグレーション対象の中に一貫性がとれていないものがないか確かめて(ステップBD7)、処理を終了する。ステップBD7の処理の詳細については、図8に示した第1の実施形態と同じである。   Finally, the file copying unit 131 confirms whether there is any inconsistent migration target (step BD7) and ends the process. Details of the processing in step BD7 are the same as those in the first embodiment shown in FIG.

図16は、第2の実施形態のファイル複製手段がクライアントからのアクセスを移動元から移動先に切り替える動作を示すフローチャートである。図16を参照すると、ファイル複製手段131は、まず、移動元へのアクセスが移動先に移るようにフォワーディングテーブルを書き換える(ステップBE1)。次に、ファイル複製手段131は、オープン状態再現フラグをONにする(ステップBE2)。最後に、ファイル複製手段131は、フォワード遮断フラグをOFFにして(ステップBE3)、処理を終了する。   FIG. 16 is a flowchart illustrating an operation in which the file copying unit according to the second embodiment switches the access from the client from the movement source to the movement destination. Referring to FIG. 16, the file duplicating unit 131 first rewrites the forwarding table so that the access to the movement source moves to the movement destination (step BE1). Next, the file duplicating means 131 turns on the open state reproduction flag (step BE2). Finally, the file duplicating unit 131 turns off the forward blocking flag (step BE3) and ends the process.

図17は、第2の実施形態のオープン状態情報管理手段の動作を示すフローチャートである。図17を参照すると、オープン状態情報管理手段150は、メッセージフォワード手段121からのデータ、あるいはオープン状態再現手段160からの問合せを受けると(ステップBF1)、処理を開始する。   FIG. 17 is a flowchart showing the operation of the open state information management unit of the second embodiment. Referring to FIG. 17, when the open state information management unit 150 receives data from the message forward unit 121 or an inquiry from the open state reproduction unit 160 (step BF1), the open state information management unit 150 starts processing.

オープン状態情報管理手段150は、まず、メッセージフォワード手段121からのデータ受信か、オープン状態再現手段160からの問合せかを判定する(ステップBF2)。   The open state information management unit 150 first determines whether data is received from the message forward unit 121 or an inquiry from the open state reproduction unit 160 (step BF2).

メッセージフォワード手段121からのデータ受信であれば、オープン状態情報管理手段150は、そのデータが要求のメッセージか、成功応答のメッセージか、失敗応答のメッセージかを調べる(ステップBF3)。   If the data is received from the message forwarding means 121, the open state information management means 150 checks whether the data is a request message, a success response message, or a failure response message (step BF3).

要求のメッセージであれば、オープン状態情報管理手段150は、そのメッセージからオープン状態を変化させる要求の情報とメッセージ番号を一旦保持し(ステップBF4)、処理を終了する。   If it is a request message, the open state information management means 150 once holds the information and message number of the request for changing the open state from the message (step BF4), and ends the processing.

メッセージ番号を保持するのは、後に応答があったとき、どの要求に対する応答かを調べるためである。オープン状態を変化させる要求の情報を保持するのは、要求にしか含まれない情報があり、成功応答を受けたとき、すなわち要求が受け入れられたときに、これらの情報を記録するためである。要求にしか含まれない情報の例としては、ロックの種類、ロックの範囲、ファイルポインタなどがある。   The message number is held in order to check which request is responded when there is a response later. The information of the request that changes the open state is retained because there is information included only in the request, and when the success response is received, that is, when the request is accepted, the information is recorded. Examples of information included only in the request include a lock type, a lock range, and a file pointer.

成功応答のメッセージであれば、オープン状態情報管理手段150は、保持していた情報からオープン状態の情報を記録して(ステップBF5)、処理を終了する。   If the message is a success response message, the open state information management unit 150 records the open state information from the held information (step BF5), and ends the process.

失敗応答のメッセージであれば、オープン状態情報管理手段150は、保持していた情報を破棄して(ステップBF6)、処理を終了する。   If the message is a failure response message, the open state information management unit 150 discards the stored information (step BF6) and ends the process.

ステップBF5およびステップBF6において、応答がどの要求に対応するものかは、メッセージ番号で判断すればよい。   In step BF5 and step BF6, it can be determined from the message number to which request the response corresponds.

記録するオープン状態情報には、ファイル全体にかけるロック、バイトレンジロックのような部分的ロック、ファイルポインタのオフセットの状態に関する情報が含まれる。   The open state information to be recorded includes information on a lock applied to the entire file, a partial lock such as a byte range lock, and a file pointer offset state.

オープン状態情報管理手段150は、オープン状態を識別可能に管理するため、メッセージに付与されたトークン毎にオープン状態情報を記録する。通常、トークンは、メッセージの中にファイル識別子として実装される。   The open state information management unit 150 records the open state information for each token given to the message in order to manage the open state in an identifiable manner. Usually, tokens are implemented as file identifiers in messages.

なお、ファイル・アクセス・プロトコルによっては、ファイルをオープンした際にサーバから渡されたトークンだけでなく、ユーザが認証された際に渡されたトークン、ボリュームにアクセスする許可を受けた際に渡されたトークンなどの様々なトークンを使わなければオープン状態を識別できない。この場合、各トークンの組み合わせ毎に、オープン状態情報を記述しておけばよい。   Note that, depending on the file access protocol, not only the token passed from the server when the file was opened, but also the token passed when the user was authenticated, passed when permission to access the volume was received. The open state cannot be identified without using various tokens such as a token. In this case, the open state information may be described for each token combination.

ステップBF2の判定で、オープン状態再現手段160からの問合せであれば、オープン状態情報管理手段150は、オープン状態情報をオープン状態再現手段160に送り(ステップBF7)、処理を終了する。   If it is determined in step BF2 that the query is from the open state reproduction unit 160, the open state information management unit 150 sends the open state information to the open state reproduction unit 160 (step BF7), and the process is terminated.

図18は、第2の実施形態のオープン状態再現手段の動作を示すフローチャートである。図18を参照すると、オープン状態再現手段160は、メッセージフォワード手段121もしくはパケット処理手段110からのデータを受けて(ステップBG1)、処理を開始する。まず、オープン状態再現手段160は、どこからデータを受けたのかを調べる(ステップBG2)。   FIG. 18 is a flowchart showing the operation of the open state reproducing means of the second embodiment. Referring to FIG. 18, the open state reproduction unit 160 receives data from the message forward unit 121 or the packet processing unit 110 (step BG1), and starts processing. First, the open state reproduction means 160 checks where data has been received (step BG2).

メッセージフォワード手段121からのデータ受信であれば、オープン状態再現手段160は、データの内容を確かめる(ステップBG3)。   If the data is received from the message forward means 121, the open state reproduction means 160 confirms the contents of the data (step BG3).

データの内容がメッセージであれば、オープン状態再現手段160は、メッセージのトークンを付け替えてパケット処理手段110に送る(ステップBG4)ことにより代理転送して処理を終了する。この際に、オープン状態再現テーブルを参照し、移動元サーバからクライアントに渡されたトークンを、移動先サーバからクライアントの代理としての中間装置102に渡されたトークンに付け替える。   If the content of the data is a message, the open state reproducing unit 160 replaces the token of the message and sends it to the packet processing unit 110 (step BG4) to complete the processing by proxy transfer. At this time, with reference to the open state reproduction table, the token passed from the migration source server to the client is replaced with the token passed from the migration destination server to the intermediate apparatus 102 acting as a proxy for the client.

ステップBG3の判定で、データの内容がオープン状態再現要求であれば、オープン状態再現手段160は、オープン状態を再現して(ステップBG5)、処理を終了する。ステップBG5の処理の詳細は図19のフローチャートを用いて後述する。   If it is determined in step BG3 that the content of the data is an open state reproduction request, the open state reproduction unit 160 reproduces the open state (step BG5) and ends the process. Details of the process of step BG5 will be described later with reference to the flowchart of FIG.

ステップBG2の判定で、パケット処理手段110からのデータ受信であれば、データ内容のメッセージのトークンを付け替えて、BG4の処理と逆方向に、メッセージフォワード手段121に送って(ステップBG6)、処理を終了する。   If it is determined in step BG2 that the data is received from the packet processing means 110, the token of the data content message is replaced and sent to the message forward means 121 in the opposite direction to the processing of BG4 (step BG6). finish.

図19は、第2の実施形態のオープン状態再現手段がオープン状態を再現する動作を示すフローチャートである。図19を参照すると、まず、オープン状態再現手段160は、オープン状態管理手段150に、メッセージに含まれているファイル識別子を用いて、メッセージが対象としているファイルのオープン状態情報を問い合わせる(ステップBH1)。オープン状態再現手段160は、どのユーザもそのファイルに対してオープン状態を設定していない旨の応答をオープン状態管理手段150から受けると、これ以降の処理を行わずに終了する。また、1つのファイルに複数のユーザのオープン状態が設定されている場合がある。   FIG. 19 is a flowchart illustrating an operation in which the open state reproducing unit according to the second embodiment reproduces the open state. Referring to FIG. 19, first, the open state reproduction unit 160 inquires of the open state management unit 150 about the open state information of the file targeted by the message, using the file identifier included in the message (step BH1). . When the open state reproduction unit 160 receives a response from the open state management unit 150 that no user has set an open state for the file, the open state reproduction unit 160 ends without performing the subsequent processing. In some cases, the open state of a plurality of users is set in one file.

少なくとも1つのオープン状態情報が設定されている旨の応答を受けると、オープン状態再現手段160は、オープン状態情報を再現する(ステップBH2)。その際、オープン状態再現手段160は、各オープン状態を1つずつ再現していく。オープン状態再現手段160は、オープン状態を再現する際に移動先サーバのファイルをオープンするが、ファイルオープンの許可を受けると移動先サーバからトークンを渡される。   When receiving a response indicating that at least one open state information is set, the open state reproducing means 160 reproduces the open state information (step BH2). At that time, the open state reproduction means 160 reproduces each open state one by one. The open state reproduction unit 160 opens the file of the movement destination server when reproducing the open state. When the open state reproduction unit 160 receives permission to open the file, a token is passed from the movement destination server.

次に、オープン状態再現手段160は、ファイルオープンの許可を受けた際に移動先サーバから渡されたトークンと、オープン状態を再現する前に移動元サーバからユーザに渡されていたトークンとを対応付け、その対応付け情報をオープン状態再現テーブルに記述する(ステップBH3)。   Next, the open state reproduction unit 160 associates the token passed from the migration destination server when the file open permission is received with the token passed from the migration source server to the user before reproducing the open state. And the correspondence information is described in the open state reproduction table (step BH3).

なお、ファイル・アクセス・プロトコルによっては、ファイルをオープンした際にサーバから渡されたトークンだけでなく、ユーザが認証された際に渡されたトークン、ボリュームにアクセスする許可を受けた際に渡されたトークンなどの様々なトークンを使わなければオープン状態を識別できない。この場合、他のトークンもオープン状態再現テーブルに記述する。   Note that, depending on the file access protocol, not only the token passed from the server when the file was opened, but also the token passed when the user was authenticated, passed when permission to access the volume was received. The open state cannot be identified without using various tokens such as a token. In this case, other tokens are also described in the open state reproduction table.

本実施形態によれば、メッセージフォワード手段121は、フォワーディングテーブルに従ってファイルサーバ14とクライアント11の間のメッセージを転送すると共に監視しており、オープン状態を変化させる要求または応答があれば、その内容をオープン状態情報管理手段150に通知し、ファイルマイグレーション中に更新系の要求または応答があれば、その内容をファイル複製手段131に通知する。また、メッセージフォワード手段121は、ファイルマイグレーション終了後にオープン状態を再現する必要があるか否か調べ、必要があれば、オープン状態再現手段160にオープン状態再現要求を送る。また、メッセージフォワード手段121は、オープン状態が再現された状態で送られるべきメッセージがあれば、パケット処理手段110では無く、代理転送してもらうためにオープン状態再現手段160に送る。   According to the present embodiment, the message forwarding means 121 transfers and monitors a message between the file server 14 and the client 11 according to the forwarding table, and if there is a request or response that changes the open state, the content is displayed. The open state information management unit 150 is notified, and if there is an update request or response during file migration, the contents are notified to the file duplication unit 131. Further, the message forward unit 121 checks whether or not it is necessary to reproduce the open state after the file migration is completed, and if necessary, sends an open state reproduction request to the open state reproduction unit 160. In addition, if there is a message to be sent in a state in which the open state is reproduced, the message forward unit 121 sends it to the open state reproduction unit 160 instead of the packet processing unit 110 for proxy transfer.

オープン状態情報管理手段150は、メッセージフォワード手段121からの通知に基づいて、各ファイルのオープン状態をトークンと関連付けて記録することによりオープン状態情報を管理しており、オープン状態再現手段160から問い合わせを受けると、管理しているオープン状態情報をオープン状態再現手段160に通知する。   Based on the notification from the message forward unit 121, the open state information management unit 150 manages the open state information by recording the open state of each file in association with the token, and sends an inquiry from the open state reproduction unit 160. When received, it notifies the open state reproduction means 160 of the managed open state information.

ファイル複製手段131は、ファイルマイグレーションにおいてファイルの複製を作成し、ファイルマイグレーション中に複製済のファイルが更新されたことをメッセージフォワード手段121からの通知によって知ると、そのファイルの複製をやり直し、一貫性がとれた状態でファイルの複製が完了すると、フォワーディングテーブルを更新することにより、クライアントからのアクセスの、メッセージフォワード手段121による転送先を切り替える。   When the file duplicating unit 131 creates a copy of the file in the file migration and knows from the notification from the message forwarding unit 121 that the copied file has been updated during the file migration, the file duplicating unit 131 performs the duplication of the file again and makes it consistent. When the copying of the file is completed in a state where it is removed, the forwarding table by the message forwarding means 121 is switched for the access from the client by updating the forwarding table.

オープン状態再現手段160は、メッセージフォワード手段121からオープン状態再現要求を受けると、オープン状態情報管理手段150に問い合わせてオープン状態を再現し、トークンの対応付け情報をオープン状態再現テーブルに記録し、オープン状態を再現した後に、オープン状態が再現された状態で送られるべきメッセージのトークンをオープン状態再現テーブルに従って付け替えて、メッセージフォワード手段121の代理として転送する。   When the open state reproduction unit 160 receives the open state reproduction request from the message forward unit 121, the open state reproduction unit 160 inquires the open state information management unit 150 to reproduce the open state, records the token association information in the open state reproduction table, and opens the open state. After reproducing the state, the token of the message to be sent in the state in which the open state is reproduced is changed according to the open state reproduction table and transferred as a proxy for the message forward unit 121.

そのため、中間装置102は、一貫性のとれた状態でファイルの複製を行い、オープン状態を再現してから、クライアントのアクセスを切り替えることができるので、オープン状態が管理される方式のファイル・アクセス・プロトコルにおいてオープン状態を継続させてファイルマイグレーションを行うことができ、オンライン状態でファイルマイグレーションを行ってもファイル破壊やアプリケーションの異常終了を引き起こさない。   Therefore, the intermediate device 102 can copy the file in a consistent state, reproduce the open state, and then switch the access of the client. The file can be migrated by keeping the open state in the protocol, and file migration in the online state does not cause file destruction or abnormal termination of the application.

なお、本実施形態では、オープン状態再現フラグがファイルサーバ毎に設定される例を示したが、必ずしもファイルサーバ毎でなくてもよく、例えばマイグレーション毎、あるいはファイル毎に設定されることとしてもよい。   In this embodiment, an example in which the open state reproduction flag is set for each file server is shown. However, the open state reproduction flag is not necessarily set for each file server. For example, the open state reproduction flag may be set for each migration or for each file. .

オープン状態再現フラグがファイル毎に設定される場合、複製が完了したときにフラグがONになる。ただし、フラグがONとなるのはオープン状態を再現する必要があるファイルのみであり、言い換えれば、移動元サーバでオープン状態が設定されていたファイルのみである。また、ユーザが移動元サーバに設定していたオープン状態を利用しなくなったらフラグをOFFにすることができる。例えば、ユーザによって使用されていたクライアントからのTCPコネクションが切断されたことで、オープン状態が利用されなくなったことを認識すればよい。また、単純にフラグがONになってから所定の期間が経過したことでフラグをOFFにすることとしてもよい。   When the open state reproduction flag is set for each file, the flag is turned ON when replication is completed. However, the flag is turned on only for files that need to be reproduced in the open state, in other words, only the files for which the open state has been set on the source server. Further, the flag can be turned OFF when the open state set in the source server by the user is no longer used. For example, it is only necessary to recognize that the open state is not used because the TCP connection from the client used by the user is disconnected. Alternatively, the flag may be turned OFF when a predetermined period has elapsed since the flag was turned ON.

本発明の第1の実施形態によるクライアント・サーバ・システムの構成を示すブロック図である。It is a block diagram which shows the structure of the client server system by the 1st Embodiment of this invention. 第1の実施形態の中間装置101の構成を示すブロック図である。It is a block diagram which shows the structure of the intermediate | middle apparatus 101 of 1st Embodiment. 第1の実施形態のパケット処理手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the packet processing means of 1st Embodiment. 第1の実施形態のメッセージフォワード手段の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the message forwarding means of 1st Embodiment. 第1の実施形態のファイル複製手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the file replication means of 1st Embodiment. 第1の実施形態のファイル複製手段が移動元のファイルを移動先に複製する動作を示すフローチャートである。It is a flowchart which shows the operation | movement which the file replication means of 1st Embodiment replicates the movement origin file to a movement destination. 第1の実施形態のファイル複製手段が、マイグレーション対象に更新がされているか否か調べる動作を示すフローチャートである。It is a flowchart which shows the operation | movement which the file replication means of 1st Embodiment checks whether it is updated by the migration object. 第1の実施形態のファイル複製手段がマイグレーション対象の中に一貫性がとれていないものが無いか確認する動作を示すフローチャートである。It is a flowchart which shows the operation | movement which the file replication means of 1st Embodiment confirms that there is no inconsistency in a migration object. 図2のファイル複製手段がクライアントからのアクセスを移動元から移動先に切り替える動作を示すフローチャートである。FIG. 3 is a flowchart showing an operation in which the file duplicating unit in FIG. 排他ロック状態情報管理手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of an exclusive lock state information management means. 第2の実施形態の中間装置102の構成を示すブロック図である。It is a block diagram which shows the structure of the intermediate | middle apparatus 102 of 2nd Embodiment. 第2の実施形態のメッセージフォワード手段の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the message forwarding means of 2nd Embodiment. 第2の実施形態のメッセージフォワード手段がオープン状態再現手段もしくはパケット処理手段にメッセージを送る動作を示すフローチャートである。It is a flowchart which shows the operation | movement which the message forwarding means of 2nd Embodiment sends a message to an open state reproduction means or a packet processing means. 第2の実施形態のファイル複製手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the file replication means of 2nd Embodiment. 第2の実施形態のファイル複製手段が移動元のファイルを移動先に複製する動作を示すフローチャートである。It is a flowchart which shows the operation | movement which the file replication means of 2nd Embodiment replicates the file of a movement origin to a movement destination. 第2の実施形態のファイル複製手段がクライアントからのアクセスを移動元から移動先に切り替える動作を示すフローチャートである。It is a flowchart which shows the operation | movement which the file replication means of 2nd Embodiment switches the access from a client from a movement origin to a movement destination. 第2の実施形態のオープン状態情報管理手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the open state information management means of 2nd Embodiment. 第2の実施形態のオープン状態再現手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the open state reproduction means of 2nd Embodiment. 第2の実施形態のオープン状態再現手段がオープン状態を再現する動作を示すフローチャートである。It is a flowchart which shows the operation | movement in which the open state reproduction means of 2nd Embodiment reproduces an open state.

符号の説明Explanation of symbols

11 クライアント
11a ユーザ
11b リダイレクタ
12 ネットワーク
14 サーバ
101 中間装置
110 パケット処理手段
120,121 メッセージフォワード手段
130,131 ファイル複製手段
140 排他ロック状態情報管理手段
150 オープン状態情報管理手段
160 オープン状態再現手段
AA1〜AA5,AB1〜AB9,AC1〜AC5,AD1〜AD9,AE1〜AE6,AF1〜AF2,AG1〜AG2,AH1〜AH7,BA1〜BA7,BB1〜BB6,BC1〜BC5,BD1〜BD7,BE1〜BE3,BF1〜BF7,BG1〜BG6,BH1〜BH3 ステップ
11 Client 11a User 11b Redirector 12 Network 14 Server 101 Intermediate device 110 Packet processing means 120, 121 Message forward means 130, 131 File replication means 140 Exclusive lock state information management means 150 Open state information management means 160 Open state reproduction means AA1 to AA5 , AB1 to AB9, AC1 to AC5, AD1 to AD9, AE1 to AE6, AF1 to AF2, AG1 to AG2, AH1 to AH7, BA1 to BA7, BB1 to BB6, BC1 to BC5, BD1 to BD7, BE1 to BE3, BF1 ~ BF7, BG1 ~ BG6, BH1 ~ BH3 Step

Claims (12)

ファイルを記憶する複数のサーバと該サーバにアクセスするクライアントとの通信にて経由される情報処理装置であって、
前記クライアントと前記サーバとの間のメッセージの転送を中継し、該メッセージがオープン状態を変更する要求もしくは応答であるかを調査し、該メッセージがオープン状態を変更する要求もしくは応答である場合には該メッセージのコピーを送るメッセージフォワード手段と、
前記メッセージフォワード手段から送られたメッセージのコピーに基づいて前記ファイルの各々のオープン状態情報を管理するオープン状態情報管理手段と、
前記サーバ間でファイルの複製を作成した後に該ファイルへのアクセスを該複製に切り替えるファイル複製手段と、
前記ファイルへのアクセスが前記複製に切り替わった後、前記オープン状態情報管理手段に問合せて前記オープン状態情報を取得し、移動元サーバにおいて前記ファイルがオープンされていれば、オープン状態を移動先サーバに再現するオープン状態再現手段とを有する情報処理装置。
An information processing apparatus that is routed through communication between a plurality of servers that store files and a client that accesses the server,
Relay the message transfer between the client and the server, investigate whether the message is a request or response to change the open state, and if the message is a request or response to change the open state Message forwarding means for sending a copy of the message;
Open state information management means for managing each open state information of the file based on a copy of the message sent from the message forward means ;
File replication means for switching access to the file to the replication after creating a replication of the file between the servers;
After the access to the file is switched to the copy, before Symbol in contact open state information management means acquires the open state information, if it is the open file in the source server, the destination server to open An information processing apparatus having open state reproduction means for reproducing the information.
記オープン状態情報管理手段は、オープン状態を変化させる要求メッセージに含まれる情報を前記メッセージフォワード手段から受けて保持し、該要求メッセージによる要求が受け入れられた旨の応答メッセージに含まれる情報を受けると、前記オープン状態情報を更新する、請求項1記載の情報処理装置。 Before Symbol open state information management means receives and holds the information contained in the request message for changing the open state from the message forward unit receives the information request by the request message is included in the response message that the accepted The information processing apparatus according to claim 1, wherein the open state information is updated. 前記オープン状態再現手段は、前記移動元サーバにてオープンされていた前記ファイルの移動先サーバ上の前記複製をオープンして前記移動先サーバから第1のトークンを取得し、該ファイルが前記クライアント上のユーザによって前記移動元サーバにてオープンされたときに該移動元サーバから該ユーザに渡されていた第2のトークンと前記第1のトークンとの対応を記録することによりオープン状態を再現する、請求項1または2に記載の情報処理装置。 The open state reproduction means opens the copy on the movement destination server of the file that has been opened on the movement source server, acquires a first token from the movement destination server, and the file is on the client. Reproducing the open state by recording the correspondence between the second token and the first token that were passed from the source server to the user when the user was opened at the source server by The information processing apparatus according to claim 1 or 2. 前記オープン状態再現手段は、オープン状態を再現するとき、前記ユーザが認証されたときに前記移動元サーバから前記ユーザに渡された第3のトークン、または前記ファイルの存在するボリュームにアクセスしたときに前記移動元サーバから前記ユーザに渡された第4のトークンと、それらに対応する前記移動先サーバから渡されたトークンとの対応をさらに記録する、請求項3記載の情報処理装置。 When the open state reproduction means reproduces the open state, when the user is authenticated, when the third token passed from the source server to the user or the volume where the file exists is accessed The information processing apparatus according to claim 3, further recording a correspondence between a fourth token passed from the source server to the user and a token passed from the destination server corresponding to the fourth token. ファイルを記憶する複数のサーバと該サーバにアクセスするクライアントとの通信にて経由される情報処理装置において前記サーバの前記ファイルを管理するファイル管理方法であって、
前記クライアントと前記サーバとの間のメッセージの転送を中継し、該メッセージがオープン状態を変更する要求もしくは応答であるかを調査し、該メッセージがオープン状態を変更する要求もしくは応答である場合には該メッセージのコピーを生成するステップと、
前記メッセージのコピーに基づいて前記ファイルの各々のオープン状態情報を管理するステップと、
記サーバ間でファイルの複製を作成して、該ファイルへのアクセスを該複製に切り替えるステップと、
前記ファイルへのアクセスが前記複製に切り替わった後、前記オープン状態情報において、移動元サーバにおける前記ファイルがオープンされていれば、オープン状態を移動先サーバに再現するステップとを有するファイル管理方法。
A file management method for managing the file of the server in an information processing apparatus that is routed through communication between a plurality of servers that store files and a client that accesses the server,
Relay the message transfer between the client and the server, investigate whether the message is a request or response to change the open state, and if the message is a request or response to change the open state Generating a copy of the message;
A step of managing an open state information of each of the file based on a copy of the message,
Create a copy of files between previous SL server, the steps of switching the access to the file in said replication,
After the access to the file is switched to the copy, before Symbol open state information, the mobile if the file is opened in the original server, the file management method and a step of reproducing the open state to the destination server.
オープン状態を変化させる要求メッセージがあると、該要求メッセージに含まれる情報を保持
該要求メッセージによる要求が受け入れられた旨の応答メッセージを受けると前記オープン状態情報を更新する、請求項5記載のファイル管理方法。
When there is a request message for changing the open state, holds the information included in the request message,
To update the open state information and receiving a response message indicating that the request by the request message has been accepted, the file management method according to claim 5, wherein.
前記移動元サーバにてオープンされていた前記ファイルの移動先サーバ上の前記複製をオープンして前記移動先サーバから第1のトークンを取得し、
前記ファイルが前記クライアント上のユーザによって前記移動元サーバにてオープンされたときに該移動元サーバから該ユーザに渡されていた第2のトークンと前記第1のトークンとの対応を記録することによりオープン状態を再現する、請求項5または6に記載のファイル管理方法。
Open the copy on the destination server of the file that was opened on the source server to obtain a first token from the destination server;
By recording the correspondence between the second token and the first token passed from the source server to the user when the file is opened at the source server by the user on the client The file management method according to claim 5, wherein the open state is reproduced.
オープン状態を再現するとき、前記ユーザが認証されたときに前記移動元サーバから前記ユーザに渡された第3のトークン、または前記ファイルの存在するボリュームにアクセスしたときに前記移動元サーバから前記ユーザに渡された第4のトークンと、それらに対応する前記移動先サーバから渡されたトークンとの対応をさらに記録する、請求項7記載のファイル管理方法。 When reproducing the open state, when the user is authenticated, the third token passed from the migration source server to the user, or the user from the migration source server when accessing the volume in which the file exists is accessed. The file management method according to claim 7, further recording a correspondence between the fourth token passed to the token and the token passed from the destination server corresponding to the fourth token. ファイルを記憶する複数のサーバと該サーバにアクセスするクライアントとの通信にて経由される情報処理装置に、前記サーバの前記ファイルを管理させるためのファイル管理プログラムであって、
前記クライアントと前記サーバとの間のメッセージの転送を中継し、該メッセージがオープン状態を変更する要求もしくは応答であるかを調査し、該メッセージがオープン状態を変更する要求もしくは応答である場合には該メッセージのコピーを生成する手順と、
前記メッセージのコピーに基づいて前記ファイルの各々のオープン状態情報を管理する手順と、
記サーバ間でファイルの複製を作成して、該ファイルへのアクセスを該複製に切り替える手順と、
前記ファイルへのアクセスが前記複製に切り替わった後、前記オープン状態情報において、移動元サーバにおける前記ファイルがオープンされていれば、オープン状態を移動先サーバに再現する手順とを、コンピュータに実行させるためのファイル管理プログラム。
A file management program for causing an information processing device to communicate via a plurality of servers storing files and a client accessing the server to manage the files of the server,
Relay the message transfer between the client and the server, investigate whether the message is a request or response to change the open state, and if the message is a request or response to change the open state Generating a copy of the message;
A step of managing an open state information of each of the file based on a copy of the message,
Create a copy of the files between the previous SL server, and the procedure for switching access to the file to the plurality made,
After the access to the file is switched to the copy, before Symbol open state information, if the file is opened in the source server, and a procedure to reproduce the open state to the destination server, causes the computer to execute File management program for.
オープン状態を変化させる要求メッセージがあると、該要求メッセージに含まれる情報を保持
該要求メッセージによる要求が受け入れられた旨の応答メッセージを受けると前記オープン状態情報を更新する、請求項9記載のファイル管理プログラム。
When there is a request message for changing the open state, holds the information included in the request message,
10. The file management program according to claim 9 , wherein the open state information is updated when a response message indicating that the request by the request message has been accepted is received.
前記移動元サーバにてオープンされていた前記ファイルの移動先サーバ上の前記複製をオープンして前記移動先サーバから第1のトークンを取得し、
前記ファイルが前記クライアント上のユーザによって前記移動元サーバにてオープンされたときに該移動元サーバから該ユーザに渡されていた第2のトークンと前記第1のトークンとの対応を記録することによりオープン状態を再現する、請求項9または10に記載のファイル管理プログラム。
Open the copy on the destination server of the file that was opened on the source server to obtain a first token from the destination server;
By recording the correspondence between the second token and the first token passed from the source server to the user when the file is opened at the source server by the user on the client The file management program according to claim 9 or 10, which reproduces an open state.
オープン状態を再現するとき、前記ユーザが認証されたときに前記移動元サーバから前記ユーザに渡された第3のトークン、または前記ファイルの存在するボリュームにアクセスしたときに前記移動元サーバから前記ユーザに渡された第4のトークンと、それらに対応する前記移動先サーバから渡されたトークンとの対応をさらに記録する、請求項11記載のファイル管理プログラム。 When reproducing the open state, when the user is authenticated, the third token passed from the migration source server to the user, or the user from the migration source server when accessing the volume in which the file exists is accessed. The file management program according to claim 11, further recording a correspondence between the fourth token passed to, and the token passed from the destination server corresponding to the fourth token.
JP2007200938A 2007-08-01 2007-08-01 Information processing apparatus, file management method, and program Expired - Fee Related JP4139975B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007200938A JP4139975B2 (en) 2007-08-01 2007-08-01 Information processing apparatus, file management method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007200938A JP4139975B2 (en) 2007-08-01 2007-08-01 Information processing apparatus, file management method, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003182804A Division JP4022764B2 (en) 2003-06-26 2003-06-26 Information processing apparatus, file management method, and program

Publications (2)

Publication Number Publication Date
JP2007323668A JP2007323668A (en) 2007-12-13
JP4139975B2 true JP4139975B2 (en) 2008-08-27

Family

ID=38856369

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007200938A Expired - Fee Related JP4139975B2 (en) 2007-08-01 2007-08-01 Information processing apparatus, file management method, and program

Country Status (1)

Country Link
JP (1) JP4139975B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5733124B2 (en) 2011-09-12 2015-06-10 富士通株式会社 Data management apparatus, data management system, data management method, and program

Also Published As

Publication number Publication date
JP2007323668A (en) 2007-12-13

Similar Documents

Publication Publication Date Title
JP4022764B2 (en) Information processing apparatus, file management method, and program
US12086059B2 (en) Methods for managing storage operations for multiple hosts coupled to dual-port solid-state disks and devices thereof
US7383463B2 (en) Internet protocol based disaster recovery of a server
JP5026145B2 (en) Failover method for remotely mirrored cluster file server
US7386598B2 (en) Computer system with virtualization function
US9128626B2 (en) Distributed virtual storage cloud architecture and a method thereof
US5845061A (en) Redundant client server system
CN101449559B (en) Distributed memory
US7240197B1 (en) Method and apparatus for encryption and decryption in remote data storage systems
US20050216523A1 (en) File management method in a distributed storage system
JP5584910B2 (en) Distributed storage
JP2004334574A (en) Storage operation management program, operation management method, and management computer
JP4278452B2 (en) Computer system
US20050278383A1 (en) Method and apparatus for keeping a file system client in a read-only name space of the file system
JP2005182683A (en) Data transfer method, system, and program
JP4287092B2 (en) File management system and file management method
EP4437427B1 (en) Fast database scaling utilizing a decoupled storage and compute architecture
CN107566195A (en) Mirror image warehouse processing method and system
JP2004334481A (en) Virtualization information management device
JP4139975B2 (en) Information processing apparatus, file management method, and program
US7568078B2 (en) Epoch-based MUD logging
JP2006003962A (en) Network storage system
US12461832B2 (en) Durable handle management for failover in distributed file servers
EP1860846B1 (en) Method and devices for managing distributed storage
CN118349181A (en) Method for redirecting IO path of containerized block storage

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080331

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: 20080514

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: 20080527

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4139975

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120620

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120620

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130620

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees