JP4139975B2 - Information processing apparatus, file management method, and program - Google Patents
Information processing apparatus, file management method, and program Download PDFInfo
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 12
- 238000007726 management method Methods 0.000 title claims 9
- 238000013508 migration Methods 0.000 claims description 81
- 230000005012 migration Effects 0.000 claims description 81
- 230000004044 response Effects 0.000 claims description 81
- 238000000034 method Methods 0.000 claims description 70
- 230000010076 replication Effects 0.000 claims description 29
- 238000004891 communication Methods 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 13
- 238000012546 transfer Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 description 77
- 230000008569 process Effects 0.000 description 51
- 230000000903 blocking effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000007958 sleep Effects 0.000 description 2
- 230000006378 damage Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
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に記載された分散情報処理システムでは、クライアント上のアプリケーションプログラムが使用するサーバ上のファイルとの接続情報をサーバが磁気ディスクに保存している。そして、サーバは、クライアントからの要求に応じて、アプリケーションとファイルとの接続状態を磁気ディスク内の情報を用いて復活させる。
通常、ファイルマイグレーションは、ファイルサーバがオフラインの状態で行われる。つまり、クライアントからのファイルサーバの利用を一時的に停止し、その間にファイルマイグレーションを行うのが一般的である。 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)
クライアント11は少なくとも1つのユーザ11aに利用され、またクライアント11は少なくとも1つのリダイレクタ11bを有している。ユーザとは、ファイルサービスを利用するプログラム、または仮想的なアイデンティティを表す。
The
ユーザ11aは、サーバ14に記憶されているファイルにリダイレクタ11bを介してアクセスする。リダイレクタ11bはそのアクセスをリダイレクトする。
The user 11a accesses a file stored in the
サーバ14は、クライアント11によってアクセスされるファイルを記憶し、管理し、各クライアント11にファイルサービスを提供する。ファイルサービスの例としては、NFS、CIFSなどが挙げられる。
The
中間装置101は、ファイルサービスを利用するクライアント11とファイルサービスを提供するサーバ14との中間に位置する。クライアント11からサーバ14への要求と、サーバ14からクライアント11への応答とは必ず中間装置101を通る。クライアント11からサーバ14への要求は、何らかの処理を要求するメッセージ信号である。サーバ14からクライアント11への応答は、要求に対して応答するメッセージ信号である。
The
一例として、中間装置101は、物理的にクライアント11とサーバ14の間に位置すればよい。図1では、中間装置101は物理的にはクライアント11とサーバ14との間に位置していない。しかし、論理的には中間装置101はクライアント11とサーバ14の間に配置されており、クライアント11からサーバ14への全ての要求、およびサーバ14からクライアント11への全ての応答は中間装置101を経由する。
As an example, the
このように、クライアント11からサーバ14への全ての要求が経由する中間装置101は、具体的には、例えばプロキシサーバ、ゲートウェイ、透過プロキシサーバ、ロードバランサーなどである。
As described above, the
例えば、各クライアント11が中間装置101をプロキシサーバまたはゲートウェイとして設定すればよい。また、中間装置101を透過プロキシサーバとするには、クライアント11からサーバ14へのパケットが必ず中間装置101を通るようにルーティング規則を設定すればよい。中間装置101をロードバランサーとするには、中間装置101を仮想サーバとしてクライアントに見せればよい。
For example, each
図2は、第1の実施形態の中間装置101の構成を示すブロック図である。図2を参照すると、本実施形態の中間装置101は、パケット処理手段110、メッセージフォワード手段120、ファイル複製手段130、および排他ロック状態情報管理手段140を有している。
FIG. 2 is a block diagram illustrating a configuration of the
パケット処理手段110は、ネットワーク12を介してクライアント11およびサーバ14からパケットを受信すると、パケットに含まれるメッセージを上位手段に出力し、また上位手段から出力されたメッセージをパケット化して、ネットワーク12を介してクライアント11またはサーバ14に送信する。ここでは、メッセージを、ファイル・アクセス・プロトコルに基づく要求や応答の総称として用いる。
When the
メッセージフォワード手段120は、パケット処理手段110からメッセージを受けると、フォワーディングテーブル(不図示)を参照して転送先を調べ、それを宛先に設定してメッセージをパケット処理手段110に送る。フォワーディングテーブルとは、メッセージに含まれるサーバ識別子とメッセージの転送先サーバがマッピングされたテーブルである。サーバ識別子は、例えばIPアドレスである。
When the
また、排他ロック状態情報管理手段140における排他ロック状態の管理のために、メッセージフォワード手段120は、メッセージが排他ロックの要求もしくは応答であれば、そのメッセージのコピーを排他ロック状態情報管理手段140に送る。
In addition, in order to manage the exclusive lock state in the exclusive lock state
また、ファイルマイグレーション中は、ファイル複製手段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
また、ファイル複製手段130は、複製しようとしたファイルに排他ロックがかかっていれば、排他ロック状態情報管理手段140に問い合わせて排他ロック状態情報を入手する。そして、ファイル複製手段130は、排他ロック状態情報に含まれる所有者情報に基づいて排他ロックの所有者になりすますことにより、ファイルの読み出しを可能にする。なお、ここで、所有者とは、ファイルに排他ロックをかけているユーザもしくはユーザ上のプロセスのことをいう。所有者は、排他ロックをかけたファイルにアクセスすることができる。
Further, if the file to be duplicated has an exclusive lock, the
複製が完了すると、ファイル複製手段130は、クライアントからのアクセスを切り替えるためにフォワーディングテーブルを書き換える。
When the copying is completed, the
排他ロック状態情報管理手段140は、各ファイルの排他ロックの状態を管理しており、メッセージフォワード手段120から排他ロック要求もしくは応答のメッセージのコピーを受けると排他ロック状態情報を更新する。排他ロック要求は、ファイルに排他ロックをかけること、または解除することを要求するメッセージである。排他ロック応答は、それに対する応答のメッセージである。排他ロック状態情報は、各ファイルに排他ロックがかかっているか否かや、排他ロックをかけているユーザあるいはクライアントを示す情報である。
The exclusive lock status
また、排他ロック状態情報管理手段140は、ファイル複製手段130から問い合わせを受けると、記録している排他ロック状態情報を送る。
Further, upon receiving an inquiry from the
次に、本実施形態のクライアント・サーバ・システムの動作例について説明する。なお、ここでは、ファイル複製手段130は、システム管理者の指示に基づいて動作を開始するものとする。また、ファイル複製手段130は、他の手段の処理による割り込みを許容する。他の処理による割り込みがあると、ファイル複製手段130はスリープして、その処理が終了するのを待つ。
Next, an operation example of the client server system of this embodiment will be described. Here, it is assumed that the
ファイル複製手段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
マイグレーションフラグは、ファイル複製手段130が、メッセージフォワード手段120にファイルマイグレーション中であることを知らせるためのフラグである。メッセージフォワード手段120は、ファイルマイグレーション中には通常時と異なる動作をするために本フラグを用いる。
The migration flag is a flag for the
フォワード遮断フラグは、ファイル複製手段130が、メッセージフォワード手段120によるメッセージのフォワードを遮断するためのフラグである。ファイル複製手段130がファイルの複製を終えて複製対象の一貫性をチェックする際に、メッセージのフォワードは遮断される必要がある。そのために本フラグが用いられる。
The forward blocking flag is a flag for the
なお、これらのフラグは、メッセージフォワード手段120とファイル複製手段130が連携動作をするための通信を行う方法の一例である。ファイル複製手段130にフラグを設ける他に、要求と応答をやりとりする方法や、フラグを管理する第三者的な手段を設ける方法、第三者的な手段が要求と応答を中継する方法などがある。また、これら複数の手段を1つの手段にまとめて実装することにより通信を無くすこともできる。
Note that these flags are an example of a method for performing communication for the message
図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
まず、パケット処理手段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
また、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
図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
まず、メッセージフォワード手段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
次に、メッセージフォワード手段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
ステップ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
ステップ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
図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
移動元に属するファイルがマイグレーション対象のファイルである。ファイル複製手段130はこれらを移動先に複製する。指示は、例えば、サーバServer1のボリュームShare1をサーバServer2のボリュームShare2に移動するというようなものとなる。この場合は、ファイル複製手段130は、ボリュームShare1に属するファイルをボリュームShare2に移動する。この例ではボリューム単位の移動であるが、ディレクトリ単位の移動、ファイル単位の移動、またサーバ単位の移動という指定も考えられる。
The file belonging to the migration source is the migration target file. The
処理を開始したファイル複製手段130は、マイグレーションフラグをONにする(ステップAC2)。次に、ファイル複製手段130は、移動元のファイルを移動先に複製する(ステップAC3)。ステップAC3の処理の詳細については図6のフローチャートを用いて後述する。
The
次に、ファイル複製手段130は、クライアントからのアクセスを移動元から移動先に切り替える(ステップAC4)。ステップAC4の処理の詳細については図9のフローチャートを用いて後述する。
Next, the
最後に、ファイル複製手段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
同期状態管理ツリーを作成するために、ファイル複製手段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
まず、ファイル複製手段130は、マイグレーション対象に更新がされているか否かを調べる(ステップAD3)。ステップAD3の処理の詳細については図7を用いて後述する。
First, the
次に、ファイル複製手段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
選択したファイルが排他ロックされていれば、ファイル複製手段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
この排他ロックの情報には、排他ロックの種類、排他ロックの範囲、排他ロックの所有者に関する情報が含まれている。排他ロックの種類および範囲に関する情報によって、ファイル内の排他ロックがかかっている範囲が示されている。排他ロックの所有者に関する情報は、排他ロックされているファイルを複製する際に利用される。 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
また、複製しようとするファイルが排他ロックされているものであれば、ファイル複製手段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
排他ロックの所有者はファイル・アクセス・プロトコルによって異なるが、一般的には、クライアント、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
図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
メッセージがあれば、ファイル複製手段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
メッセージが対象とするファイルがマイグレーション対象であるか否かを確認するには、そのファイルが同期状態管理ツリーで管理されているか否かを調べればよい。 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
ステップAE2の判定で、メッセージの対象がマイグレーション対象であれば、ファイル複製手段130は、メッセージが要求、成功応答、失敗応答のいずれであるかを調べる(ステップAE3)。
If it is determined in step AE2 that the message target is a migration target, the
メッセージが要求であれば、ファイル複製手段130は、同期状態管理ツリーのファイルに更新チェックを付与する(ステップAE4)。この時点では、要求が成功するか失敗するか分からず、ファイルが更新されるとは限らない。そのため、まだ複製済か否かを決定できず、更新チェックを付与するに留めてある。
If the message is a request, the
メッセージが成功応答であれば、ファイル複製手段130は、更新チェックが付与されている、対象ファイルを複製済でない状態に戻す(ステップAE5)。つまり、複製をやり直すことになる。
If the message is a successful response, the
メッセージが失敗応答であれば、ファイル複製手段130は更新チェックを破棄する(ステップAE6)。
If the message is a failure response, the
図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
一貫性のとれていないファイルがなければ、ファイル複製手段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
図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
図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
排他ロック状態情報管理手段140は、まず、メッセージフォワード手段120からのデータ受信か、ファイル複製手段130からの問合せかを判定する(ステップAH2)。
The exclusive lock state
メッセージフォワード手段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
メッセージ番号を保持するのは、後に応答があったとき、どの要求に対する応答かを調べるためである。排他ロック要求の情報を保持するのは、要求にしか含まれない情報があり、成功応答を受けたときに、これらの情報を記録するためである。 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
ステップ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
本実施の形態によれば、メッセージフォワード手段120は、フォワーディングテーブルに従ってファイルサーバ14とクライアント11の間のメッセージを転送すると共に監視しており、排他ロックの要求または応答があれば、その内容を排他ロック状態情報管理手段140に通知し、ファイルマイグレーション中に更新系の要求または応答があれば、その内容をファイル複製手段130に通知する。
According to this embodiment, the message forwarding means 120 transfers and monitors a message between the
排他ロック状態情報管理手段140は、メッセージフォワード手段120からの通知に基づいて各ファイルの排他ロックの有無および排他ロックの所有者の情報を含む排他ロック状態を管理している。
Based on the notification from the message
ファイル複製手段130は、ファイルマイグレーションにおいて複製を作成する際に、排他ロック状態情報管理手段140から排他ロック状態を取得し、排他ロックがかかっていればその排他ロックの所有者になりすましてファイルの複製を作成し、また、ファイルマイグレーション中に複製済のファイルが更新されたことをメッセージフォワード手段120からの通知によって知ると、そのファイルの複製をやり直し、一貫性がとれた状態でファイルの複製が完了すると、フォワーディングテーブルを更新することにより、クライアントからのアクセスの、メッセージフォワード手段120による転送先を切り替える。
When creating a copy in file migration, the
そのため、中間装置101は、メッセージから認識される排他ロック状態の情報を利用してファイルを読み出し、メッセージから認識されるファイルの更新の情報を利用して一貫性のとれた状態でファイルの複製を行うことができるので、オンライン状態であっても、また排他ロックがかかっていても、正常にファイルマイグレーションを行うことができる。
Therefore, the
なお、本実施形態では、中間装置101が物理的に独立した形態で存在する例を示したが、本発明はそれに限定されない。中間装置101は論理的にクライアント11とファイルサーバ14の中間に存在する限り、物理的にどのような形態をとってもよい。
In the present embodiment, an example in which the
例えば、中間装置101は、いずれかのファイルサーバ14の内部に構成されてもよい。その場合、クライアント11とファイルサーバ14の通信は、中間装置101を内部に有するファイルサーバ14を経由することとなる。また、中間装置101は、いずれかのクライアント11の内部に構成されてもよい。その場合、クライアント11とファイルサーバ14の通信は、中間装置101を内部に有するクライアント11を経由することとなる。
For example, the
また、本実施形態では、ファイル・アクセス・プロトコルとして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
図11は、第2の実施形態の中間装置102の構成を示すブロック図である。図11を参照すると、本実施形態の中間装置102は、パケット処理手段110、メッセージフォワード手段121、ファイル複製手段131、オープン状態情報管理手段150、およびオープン状態再現手段160を有している。
FIG. 11 is a block diagram illustrating a configuration of the
パケット処理手段110は第1の実施形態と同じである。 The packet processing means 110 is the same as that in the first embodiment.
メッセージフォワード手段121は、パケット処理手段110からメッセージを受けると、フォワーディングテーブル(不図示)を参照して転送先を調べ、それを宛先に設定してメッセージをパケット処理手段110に送る。
When the
また、オープン状態情報管理手段150におけるオープン状態情報の管理のために、メッセージフォワード手段121は、メッセージがオープン状態を変化させる要求もしくは応答であれば、そのメッセージのコピーをオープン状態情報管理手段150に送る。
Further, in order to manage the open state information in the open state
また、ファイルマイグレーション中は、ファイル複製手段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
さらに、メッセージフォワード手段121は、オープン状態が再現された状態を利用して送られるべきメッセージをオープン状態再現手段160に送る。メッセージフォワード手段120がメッセージをオープン状態再現手段160に送るのは、オープン状態が再現された状態を利用して代理転送してもらうためである。
Further, the
ファイル複製手段131は、システム管理者によるファイルマイグレーションの指示を受けると、その指示に基づいて動作を開始する。動作を開始したファイル複製手段131は、サーバ14間でファイルの複製を行う。ファイルを複製している間に、メッセージフォワード手段121から更新系メッセージのコピーを受けると、複製済のファイルに更新があるか否か調べる。複製済のファイルに更新があれば、複製の処理をやり直す必要があるからである。
When receiving a file migration instruction from the system administrator, the
また、ファイルの複製が完了すると、ファイル複製手段131は、オープン状態再現フラグをONにした後、フォワーディングテーブルを書き換えて、クライアントからのアクセスを切り替える。
When the file duplication is completed, the
オープン状態情報管理手段150は、メッセージフォワード手段120からオープン状態情報を変更する要求もしくは応答のメッセージのコピーを受けると、その内容に基づいてオープン状態情報を管理する。
When the open state
また、オープン状態再現手段160から問い合わせを受けると、オープン状態情報管理手段150は、管理しているオープン状態情報をオープン状態再現手段160に送る。
When receiving an inquiry from the open
オープン状態再現手段160は、メッセージフォワード手段121からオープン状態再現要求を受けると、オープン状態を再現する。また、オープン状態を再現した後に、再現されたオープン状態で送られるべきメッセージをメッセージフォワード手段121から受けると、トークンを付け替えてパケット処理手段110に送る(代理転送)。
When the open
次に、本実施形態のクライアント・サーバ・システムの動作例について説明する。なお、ここでは、ファイル複製手段131は、システム管理者の指示に基づいて動作を開始するものとする。また、ファイル複製手段130は、他の手段の処理による割り込みを許容する。他の処理による割り込みがあると、ファイル複製手段131はスリープして、その処理が終了するのを待つ。
Next, an operation example of the client server system of this embodiment will be described. Here, it is assumed that the
ファイル複製手段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
マイグレーションフラグとフォワード遮断フラグは、第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
オープン状態再現フラグは、ファイルの複製とアクセスの切り替えが終了した時点で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
また、他の例として、オープン状態再現フラグを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
なお、これらのフラグは、メッセージフォワード手段121とファイル複製手段131が連携動作をするために通信を行う方法の一例である。ファイル複製手段131にフラグを設ける他に、要求と応答をやりとりする方法や、フラグを管理する第三者的な手段を設ける方法、第三者的な手段が要求と応答を中継する方法などがある。また、これら複数の手段を1つの手段にまとめて実装することにより通信を無くすこともできる。
Note that these flags are an example of a method in which the
図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
まず、メッセージフォワード手段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
また、プロトコルによっては、応答にコマンドの種類が含まれていない。この場合、要求を受けたときにメッセージに含まれるメッセージ番号を記録しておき、応答を受けたときにメッセージ番号を照合してコマンドの種類を判断すればよい。 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
ステップ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
オープン状態再現フラグが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
また、そのファイルがオープン状態を再現する必要のあるものか否かを、同期状態管理ツリーを参照して確認する。この同期状態管理ツリーは第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
ステップ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
次に、メッセージフォワード手段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
ステップ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
図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
次に、ファイル複製手段131は、移動元のファイルを移動先に複製する(ステップBC3)。次に、ファイル複製手段131は、クライアントのアクセスを移動元から移動先に切り替える(ステップBC4)。最後に、ファイル複製手段131は、マイグレーションフラグをOFFにして(ステップBC5)、処理を終了する。
Next, the
以上、ステップ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
次に、ファイル複製手段131は、同期状態管理ツリーにリストアップされている全てのファイルが複製済であり、かつ更新チェックが付されていない状態になるまでステップBD3〜ステップBD5の処理を繰り返す(ステップBD2)。
Next, the
まず、ファイル複製手段131は、マイグレーション対象に更新がされているか否か調べる(ステップBD3)。ステップのBD3の処理の詳細は図7に示した第1の実施形態のと同じである。
First, the
次に、ファイル複製手段131は、同期状態管理ツリー内のファイルの中から複製済でないものを1つ選択する(ステップBD4)。次に、ファイル複製手段131は、選択したファイルを移動先に複製する(ステップBD5)。この際に、ファイル複製手段131は、ファイルの複製が済むと、同期状態管理ツリー上、そのファイルを複製済の状態にする。なお、図15に示されたフローでは特徴的な部分以外を簡略化しているため、ファイル・アクセス・プロトコルが強制ロック方式でありファイルに排他ロックがかかっている場合にマイグレーションが終了しない処理となっているが、第1の実施形態のステップAD5〜AD7のようにして、これを解決してもよい。
Next, the
同期状態管理ツリーに複製ができていないファイルがなくなると、ファイル複製手段131は、ステップBD2のループを脱してフォワード遮断フラグをONにする(ステップBD6)。
When there are no more unreplicated files in the synchronization state management tree, the
最後に、ファイル複製手段131は、マイグレーション対象の中に一貫性がとれていないものがないか確かめて(ステップBD7)、処理を終了する。ステップBD7の処理の詳細については、図8に示した第1の実施形態と同じである。
Finally, the
図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
図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
オープン状態情報管理手段150は、まず、メッセージフォワード手段121からのデータ受信か、オープン状態再現手段160からの問合せかを判定する(ステップBF2)。
The open state
メッセージフォワード手段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
失敗応答のメッセージであれば、オープン状態情報管理手段150は、保持していた情報を破棄して(ステップBF6)、処理を終了する。
If the message is a failure response message, the open state
ステップ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
なお、ファイル・アクセス・プロトコルによっては、ファイルをオープンした際にサーバから渡されたトークンだけでなく、ユーザが認証された際に渡されたトークン、ボリュームにアクセスする許可を受けた際に渡されたトークンなどの様々なトークンを使わなければオープン状態を識別できない。この場合、各トークンの組み合わせ毎に、オープン状態情報を記述しておけばよい。 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
図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
メッセージフォワード手段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
ステップ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
ステップ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
少なくとも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
次に、オープン状態再現手段160は、ファイルオープンの許可を受けた際に移動先サーバから渡されたトークンと、オープン状態を再現する前に移動元サーバからユーザに渡されていたトークンとを対応付け、その対応付け情報をオープン状態再現テーブルに記述する(ステップBH3)。
Next, the open
なお、ファイル・アクセス・プロトコルによっては、ファイルをオープンした際にサーバから渡されたトークンだけでなく、ユーザが認証された際に渡されたトークン、ボリュームにアクセスする許可を受けた際に渡されたトークンなどの様々なトークンを使わなければオープン状態を識別できない。この場合、他のトークンもオープン状態再現テーブルに記述する。 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
オープン状態情報管理手段150は、メッセージフォワード手段121からの通知に基づいて、各ファイルのオープン状態をトークンと関連付けて記録することによりオープン状態情報を管理しており、オープン状態再現手段160から問い合わせを受けると、管理しているオープン状態情報をオープン状態再現手段160に通知する。
Based on the notification from the message
ファイル複製手段131は、ファイルマイグレーションにおいてファイルの複製を作成し、ファイルマイグレーション中に複製済のファイルが更新されたことをメッセージフォワード手段121からの通知によって知ると、そのファイルの複製をやり直し、一貫性がとれた状態でファイルの複製が完了すると、フォワーディングテーブルを更新することにより、クライアントからのアクセスの、メッセージフォワード手段121による転送先を切り替える。
When the
オープン状態再現手段160は、メッセージフォワード手段121からオープン状態再現要求を受けると、オープン状態情報管理手段150に問い合わせてオープン状態を再現し、トークンの対応付け情報をオープン状態再現テーブルに記録し、オープン状態を再現した後に、オープン状態が再現された状態で送られるべきメッセージのトークンをオープン状態再現テーブルに従って付け替えて、メッセージフォワード手段121の代理として転送する。
When the open
そのため、中間装置102は、一貫性のとれた状態でファイルの複製を行い、オープン状態を再現してから、クライアントのアクセスを切り替えることができるので、オープン状態が管理される方式のファイル・アクセス・プロトコルにおいてオープン状態を継続させてファイルマイグレーションを行うことができ、オンライン状態でファイルマイグレーションを行ってもファイル破壊やアプリケーションの異常終了を引き起こさない。
Therefore, the
なお、本実施形態では、オープン状態再現フラグがファイルサーバ毎に設定される例を示したが、必ずしもファイルサーバ毎でなくてもよく、例えばマイグレーション毎、あるいはファイル毎に設定されることとしてもよい。 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.
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
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.
前記クライアントと前記サーバとの間のメッセージの転送を中継し、該メッセージがオープン状態を変更する要求もしくは応答であるかを調査し、該メッセージがオープン状態を変更する要求もしくは応答である場合には該メッセージのコピーを生成するステップと、
前記メッセージのコピーに基づいて前記ファイルの各々のオープン状態情報を管理するステップと、
前記サーバ間でファイルの複製を作成して、該ファイルへのアクセスを該複製に切り替えるステップと、
前記ファイルへのアクセスが前記複製に切り替わった後、前記オープン状態情報において、移動元サーバにおける前記ファイルがオープンされていれば、オープン状態を移動先サーバに再現するステップとを有するファイル管理方法。 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.
前記ファイルが前記クライアント上のユーザによって前記移動元サーバにてオープンされたときに該移動元サーバから該ユーザに渡されていた第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.
前記クライアントと前記サーバとの間のメッセージの転送を中継し、該メッセージがオープン状態を変更する要求もしくは応答であるかを調査し、該メッセージがオープン状態を変更する要求もしくは応答である場合には該メッセージのコピーを生成する手順と、
前記メッセージのコピーに基づいて前記ファイルの各々のオープン状態情報を管理する手順と、
前記サーバ間でファイルの複製を作成して、該ファイルへのアクセスを該複製に切り替える手順と、
前記ファイルへのアクセスが前記複製に切り替わった後、前記オープン状態情報において、移動元サーバにおける前記ファイルがオープンされていれば、オープン状態を移動先サーバに再現する手順とを、コンピュータに実行させるためのファイル管理プログラム。 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.
前記ファイルが前記クライアント上のユーザによって前記移動元サーバにてオープンされたときに該移動元サーバから該ユーザに渡されていた第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.
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)
| 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 |
-
2007
- 2007-08-01 JP JP2007200938A patent/JP4139975B2/en not_active Expired - Fee Related
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 |