JP2007042115A - Switching method, device and program - Google Patents

Switching method, device and program Download PDF

Info

Publication number
JP2007042115A
JP2007042115A JP2006229195A JP2006229195A JP2007042115A JP 2007042115 A JP2007042115 A JP 2007042115A JP 2006229195 A JP2006229195 A JP 2006229195A JP 2006229195 A JP2006229195 A JP 2006229195A JP 2007042115 A JP2007042115 A JP 2007042115A
Authority
JP
Japan
Prior art keywords
server
client
data
information
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006229195A
Other languages
Japanese (ja)
Inventor
Satoshi Yamakawa
聡 山川
Jun Ishikawa
潤 石川
Takashi Torii
隆史 鳥居
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 JP2006229195A priority Critical patent/JP2007042115A/en
Publication of JP2007042115A publication Critical patent/JP2007042115A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a service to complete the data migration work when executing data migration work among a plurality of storage devices without stopping a service related to the storage device. <P>SOLUTION: A file access control part 102 comprises a transaction ID control table 125, a server information control table 126, a special object ID control table 127, and a moving object status control table 130 for controlling an object group which performs movement processing. When an object and a directory tree structure of each server composing an integrated directory tree which is composed on a pseudo file system are being copied to another server in the movement processing, the transfer processing of a file access request from a client such as read and write to an object to be moved is changed according to the state of the object movement processing, thereby hiding from the client the fact that the data are being moved. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、クライアントとサーバとの間に論理的に配置されるスイッチ装置に関し、特に、ネットワークを介してファイル処理を実行するリモートファイルシステムが実装されたクライアント・サーバ・システムにおいて、クライアントに透過なシングルシステムイメージ(SSI)の提供や負荷分散などのネットワークトラフィック制御を行うスイッチ装置に関する。 The present invention relates to a switch device that is logically arranged between a client and a server, and in particular, in a client / server system in which a remote file system that executes file processing via a network is implemented, it is transparent to the client. The present invention relates to a switch device that performs network traffic control such as provision of a single system image (SSI) and load distribution.

ネットワークを介したクライアント・サーバ・システムを実現する方法としては、RFC(request for comments) 1094やRFC 1813に記載されたネットワークファイルシステム(NFS;network file system)プロトコルを使用する方法が有名である。このNFSプロトコルは、NFSを実装するクライアントに、ネットワークを介した遠隔地にあるサーバに対するファイルの作成や消去、読み書き、移動等の、ファイルシステムとしての基本的な動作や、他のクライアントとのファイル共有などの利便性を提供する。NFSプロトコルでは、クライアントは、サーバ上のファイルなどのオブジェクトを識別するためのオブジェクトIDを使用し、リモートプロシージャコール(RPC)などのアプリケーションインターフェースを介してサーバにアクセスを行う。例えば、NFSでは、オブジェクトIDとして、ファイルハンドルとよばれるものがある。 As a method for realizing a client server system via a network, a method using a network file system (NFS) protocol described in RFC (request for comments) 1094 or RFC 1813 is well known. This NFS protocol allows a client that implements NFS to perform basic operations as a file system, such as file creation, deletion, read / write, and transfer to a server at a remote location via a network, and files with other clients. Provide convenience such as sharing. In the NFS protocol, a client uses an object ID for identifying an object such as a file on the server, and accesses the server via an application interface such as a remote procedure call (RPC). For example, in NFS, there is an object ID called a file handle.

(レイヤ4−7スイッチ)ネットワークファイルシステムの実装は、いわゆるIP(Internet Protocol)ネットワークのOSI(開放型システム間相互接続;open systems interconection)参照モデルに準拠したものが多く、OSIモデルのレイヤ3まで(物理層、データリンク層、ネットワーク層)の情報を利用して通常のルータなどの経路制御が行われることは広く知られている。さらに、近年では、OSI参照モデルのレイヤ4からレイヤ7まで(トランスポート層、セッション層、プレゼンテーション層、アプリケーション層)の情報を利用して、さらにさまざまな利便性を提供しようという動きが盛んになっている。 (Layer 4-7 switch) Many implementations of the network file system are based on the so-called IP (Internet Protocol) network OSI (open systems interconection) reference model, up to layer 3 of the OSI model. It is widely known that route control of a normal router or the like is performed using information of (physical layer, data link layer, network layer). Furthermore, in recent years, there has been an active movement to provide various conveniences using information from the layer 4 to the layer 7 (transport layer, session layer, presentation layer, application layer) of the OSI reference model. ing.

レイヤ4情報を利用して送られてくるパケットのプロトコルの種類を判別し、プロトコルごとに対応するサーバへ振り分けるネットワークスイッチ装置は、ウェブ(web)ホスティングサービスなどで広く利用されている。さらに、最近では、レイヤ7情報を利用したウェブコンテンツごとのサーバ振り分けを実現するネットワークスイッチ装置が製品として発表されている。これらの技術の主な目的は、サーバの負荷分散や、サーバへのアクセスポリシーの制御(例えば、利用者の認証を行うSSL(secure socket layer)処理の単一サーバでの実行、年齢別の閲覧制限などである。SSL処理を行う場合には、負荷分散等の目的のためのサーバの切り換えは禁止される。)である。なお、スイッチ装置は、論理的なパケット・スイッチとして動作する。 2. Description of the Related Art A network switch device that discriminates the protocol type of a packet transmitted using layer 4 information and distributes it to a server corresponding to each protocol is widely used in a web hosting service or the like. Furthermore, recently, a network switch device that realizes server distribution for each web content using layer 7 information has been announced as a product. The main purpose of these technologies is server load balancing and server access policy control (for example, SSL (secure socket layer) processing to authenticate users on a single server, browsing by age) (For example, when SSL processing is performed, server switching for the purpose of load distribution is prohibited.) The switch device operates as a logical packet switch.

図42は、ウェブスイッチの機能を示すブロック図である。ウェブスイッチ900は、パケット処理部903と、HTTP(hypertext transfer protocol)処理部902とを備えている。パケット処理部903で受信したパケット処理を行った後、HTTP処理部902は、レイヤ4からレイヤ7に関する情報の収集を行い、レイヤ7に分類されるURL(uniform resource locator)に関する情報を取り出す。さらに、HTTP処理部902は、取り出したURLに関する情報に基づいて、このURLを扱うべきサーバを、その所在はもとより、負荷分散などのポリシーも考慮して検索、特定する。そして、HTTP処理部902は、そのサーバへパケットが転送されるように、グローバルアドレスからローカルアドレスの変換(NAT(network address translator)型変換)や、後述する仮想IPクラスタリングによるMAC(media access control)アドレスの書き換えを行うことによって、元パケットのMACアドレスやIPアドレスを変換し、その変換に伴うチェックサムなどのセキュリティの矛盾を訂正する。パケット処理部903は、書き換えおよび訂正されたパケットをネットワーク上に送出する。 FIG. 42 is a block diagram showing the function of the web switch. The web switch 900 includes a packet processing unit 903 and an HTTP (hypertext transfer protocol) processing unit 902. After the packet processing received by the packet processing unit 903, the HTTP processing unit 902 collects information on the layer 7 from the layer 4 and extracts information on a URL (uniform resource locator) classified into the layer 7. Furthermore, the HTTP processing unit 902 searches for and specifies a server that should handle this URL based on the information about the extracted URL, taking into account not only the location but also a policy such as load distribution. Then, the HTTP processing unit 902 converts a global address to a local address (NAT (network address translator) type conversion) or MAC (media access control) by virtual IP clustering described later so that the packet is transferred to the server. By rewriting the address, the MAC address or IP address of the original packet is converted, and security inconsistencies such as a checksum accompanying the conversion are corrected. The packet processing unit 903 sends the rewritten and corrected packet over the network.

また、上述したスイッチ装置の以外にも、負荷分散等の目的のためのさまざまな技術が公開されている。そのような技術として広く知られるものに、例えば、各ネットワークエリアに分散配置した各DNS(ドメインネームサーバ)が1つのドメイン名に複数のIPアドレスを対応させ、ラウンドロビン方式でIPアドレスを選択してクライアントへ伝えるという方法がある。 In addition to the switch device described above, various techniques for purposes such as load distribution have been disclosed. For example, each DNS (domain name server) distributed in each network area associates a plurality of IP addresses with a single domain name, and selects IP addresses in a round-robin manner. There is a way to tell the client.

(仮想IPクラスタリング)ところで、仮想IPアドレスをクラスタアドレスとして定義し、複数のサーバにIPエイリアスとしてこの仮想IPアドレスを設定し、スイッチとしての役割を有するコーディネータが、MACアドレスの書き換えによりパケットを適切なサーバへリダイレクトして負荷分散を行う方法が知られている。このような方法では、各サーバが、仮想IPアドレスをIPエイリアスとして設定しているので、クライアントからはあたかも1つのサーバが応答したように見える。この方法では、コーディネータを介さずに、直接対応したサーバからクライアントへ応答を返すことができる。応答を直接返す方法は、パケットがコーディネータを復路も通過する方法と比べ、ボトルネックが生じにくくなるという利点がある。この方法、およびこの方法に若干の改良を加えた方法は、現在、リナックス(Linux)などのOS(オペレーティングシステム)を用いたクラスタリングシステムの一構成法として広く普及しているものである。 (Virtual IP clustering) By the way, a virtual IP address is defined as a cluster address, this virtual IP address is set as an IP alias in a plurality of servers, and a coordinator having a role as a switch appropriately sets a packet by rewriting the MAC address. There is known a method of performing load distribution by redirecting to a server. In such a method, since each server sets a virtual IP address as an IP alias, it seems as if one server responded to the client. In this method, a response can be returned from the directly corresponding server to the client without using a coordinator. The method of returning a response directly has an advantage that a bottleneck is less likely to occur than a method in which a packet also passes through the coordinator on the return path. This method and a method obtained by slightly improving this method are currently widely used as a configuration method of a clustering system using an OS (operating system) such as Linux.

また、特許文献1には、LAN(ローカルエリアネットワーク;local area network)などのネットワーク上に分散した複数のファイルサーバの台数やストレージ装置の接続状態をクライアントに意識させないで済むようにする別の方法が開示されている。図43に示すように、この方法を実行するクライアント・サーバ・システムでは、ネットワーク2上に分散して構築され、互いにサーバ間専用結線7によって接続され、マルチキャストアドレスを共有する複数のファイルサーバ3を備えている。そして、各ファイルサーバ3にまたがって動作する仮想分散ファイルシステム4が実装されている。このシステムを構成する、各ファイルサーバ3上のモジュールは、クライアント1からマルチキャストされたファイル操作要求を受信すると、仮想分散ファイルシステム4と全ローカルファイルシステム6とのマッピングテーブルを利用して、自サーバが上記要求を処理可能な最適なサーバであるか否かを判断し、その判断結果に基づいて要求されたファイル操作を他のファイルサーバ3と重複することなく処理する。こうすることによって、ネットワーク上に分散した複数のファイルサーバ3を、クライアント1からは単一のサーバとして扱うことができるようになるため、サーバ3の台数やストレージ装置の接続状態をクライアント1に意識させない仮想分散ファイルサーバシステムを提供することができる。
特開2001−51890号公報
Further, Patent Document 1 discloses another method for preventing the client from being aware of the number of file servers distributed on a network such as a LAN (local area network) or the connection state of storage devices. Is disclosed. As shown in FIG. 43, in the client / server system that executes this method, a plurality of file servers 3 that are constructed in a distributed manner on the network 2 and are connected to each other by a dedicated connection 7 between servers and share a multicast address. I have. A virtual distributed file system 4 that operates across the file servers 3 is implemented. When the module on each file server 3 constituting this system receives a multicast file operation request from the client 1, it uses its mapping table between the virtual distributed file system 4 and all local file systems 6 to Is the optimal server capable of processing the request, and the requested file operation is processed based on the determination result without duplication with other file servers 3. By doing so, a plurality of file servers 3 distributed on the network can be handled as a single server from the client 1, so that the client 1 is aware of the number of servers 3 and the connection status of the storage devices. A virtual distributed file server system can be provided.
JP 2001-51890 A

しかし、分散型のネットワークを介したファイルシステムサービスに上述した従来技術を適用した場合には、以下に示す問題点が発生する。 However, when the above-described prior art is applied to a file system service via a distributed network, the following problems occur.

(1) レイヤ4−7スイッチを用いる方法も、仮想IPクラスタリングを用いる方法も、パケットのリダイレクションにあたって書き換える内容がMACアドレスもしくはIPアドレスに限定されている。そのため、NFSのファイルハンドルなどのオブジェクトIDをクライアントがキャッシュに保管する実装のプロトコルにおいて、管理者が負荷分散や容量分散の目的という本来クライアントに対して通知する必要のない操作を行う場合、例えば、クライアントに一度割り当てたサーバから別のサーバへオブジェクトを移動するような場合には、クライアントが、古いサーバのオブジェクトIDをパケット内に含めてサーバにアクセスしてしまう。したがって、スイッチが新しいサーバにそのパケットを転送しても、新しいサーバはそのパケット内のオブジェクトIDを判読できずに、クライアントにエラーを返してしまう。すなわち、負荷分散型ネットワークを介したファイルシステムサービスにおいては、従来の負荷分散の方法を適用しても、クライアントに対する透過性を実現することができない。 (1) In both the method using the layer 4-7 switch and the method using virtual IP clustering, the contents to be rewritten in the packet redirection are limited to the MAC address or the IP address. Therefore, in an implementation protocol in which an object ID such as an NFS file handle is stored in a cache by the client, when an administrator performs an operation that does not need to be notified to the client for the purpose of load distribution or capacity distribution, for example, When moving an object from a server once assigned to a client to another server, the client accesses the server by including the object ID of the old server in the packet. Therefore, even if the switch forwards the packet to the new server, the new server cannot read the object ID in the packet and returns an error to the client. In other words, in a file system service via a load balancing network, even if a conventional load balancing method is applied, transparency to the client cannot be realized.

(2) IPエイリアスの設定や仮想分散ファイルシステムの導入を行う際には、ユーザがすでに利用しているファイルサーバに対する改造が必須となるので、既存のクライアント・サーバのファイルシステムが稼動している場合にその構成を活かしたまま提供される利便性を得るためには、負荷分散という目的のみを解決する場合でも、煩雑なインストール作業が発生してしまう。 (2) When an IP alias is set or a virtual distributed file system is installed, the file server already used by the user must be modified, so the existing client / server file system is in operation. In order to obtain the convenience provided by utilizing the configuration in some cases, even when only the purpose of load distribution is solved, complicated installation work occurs.

本発明の目的は、クライアントおよびサーバが標準のネットワークを介したファイルシステムサービスプロトコル(例えば、NFS)さえサポートしていれば、それらの既存システムに手を加えることなく、複数のサーバを統合管理してクライアントにシングルシステムイメージ(SSI;single system image)のファイルサービスを提供し、負荷分散、容量割り当て等の管理目的によるオブジェクトの再配置をユーザから隠蔽してSSIを維持するなどの利便性を実現することができるスイッチ方法及び装置を提供することである。 An object of the present invention is to manage a plurality of servers in an integrated manner without modifying the existing systems as long as the client and server support only a file system service protocol (for example, NFS) via a standard network. Provides single system image (SSI) file services to clients, and hides the relocation of objects for management purposes such as load balancing and capacity allocation from the user to maintain SSI. It is an object of the present invention to provide a switch method and apparatus that can be used.

上記課題を解決するために、本発明のスイッチ方法は、少なくとも1つのクライアントと少なくとも1つのオブジェクトを管理する少なくとも1つのサーバとの間に論理的に配置されたスイッチ装置における、前記クライアントから送信された前記オブジェクトに関する要求を、当該オブジェクトを管理する前記サーバに転送し、当該要求に対する前記サーバからの応答を前記要求の送信元であるクライアントに転送するスイッチ方法において、転送する応答に、前記オブジェクトを識別するために前記サーバで生成された元オブジェクトIDが含まれている場合には、前記元オブジェクトIDに対応するオブジェクトを管理するサーバを他のサーバから識別するためのサーバ識別情報を挿入することによって前記元オブジェクトIDを情報付帯オブジェクトIDに書き換える段階と、転送する要求に、前記情報付帯オブジェクトIDが含まれている場合には、前記情報付帯オブジェクトIDを前記元オブジェクトIDに復元する段階と、前記サーバのアドレス情報と前記サーバ識別情報との組み合わせを管理するテーブルを参照して、転送する要求の情報付帯オブジェクトIDに含まれる前記サーバ識別情報に対応するサーバのアドレス情報を求め、当該アドレス情報に基づいて当該要求の転送先を決定する段階と、を備えることを特徴とする。 In order to solve the above-mentioned problem, the switching method of the present invention is transmitted from the client in a switching device logically arranged between at least one client and at least one server managing at least one object. In the switching method of transferring a request related to the object to the server that manages the object and transferring a response from the server to the client that is a transmission source of the request, the object is included in the response to be transferred. If the original object ID generated by the server for identification is included, server identification information for identifying the server that manages the object corresponding to the original object ID from other servers is inserted. Information on the original object ID by Rewriting to the band object ID, and if the request to be transferred includes the information incidental object ID, restoring the information incidental object ID to the original object ID; the server address information; By referring to a table managing combinations with server identification information, server address information corresponding to the server identification information included in the information supplementary object ID of the request to be transferred is obtained, and the request is transferred based on the address information. Determining a destination.

また、本発明の別のスイッチ方法は、少なくとも1つのクライアントと少なくとも1つのオブジェクトを管理する少なくとも1つのサーバとの間に論理的に配置されたスイッチ装置における、前記クライアントから送信された前記オブジェクトに関する要求を、当該オブジェクトを管理する前記サーバに転送し、当該要求に対する前記サーバからの応答を前記要求の送信元であるクライアントに転送するスイッチ方法において、前記オブジェクトIDと、当該元オブジェクトIDに対応するオブジェクトを管理するサーバを他のサーバから識別するためのサーバ識別情報との組み合わせを管理する第1のテーブルを参照して、要求に含まれるオブジェクトIDに対応するサーバ識別情報を求める段階と、前記サーバのアドレス情報と前記サーバ識別情報との組み合わせを管理する第2のテーブルを参照して、当該サーバ識別情報に対応するサーバのアドレス情報を求める段階と、当該アドレス情報に基づいて当該要求の転送先を決定する段階と、を備えることを特徴とする。 Another switching method of the present invention relates to the object transmitted from the client in a switching device logically arranged between at least one client and at least one server managing at least one object. In the switching method in which a request is transferred to the server that manages the object, and a response from the server to the request is transferred to a client that is a transmission source of the request, the object ID corresponds to the original object ID. Obtaining server identification information corresponding to the object ID included in the request with reference to a first table managing a combination of server identification information for identifying the server managing the object from other servers; Server address information and the server Referring to a second table for managing a combination with identification information, obtaining a server address information corresponding to the server identification information, determining a transfer destination of the request based on the address information, It is characterized by providing.

本発明のスイッチ装置は、少なくとも1つのクライアントと、少なくとも1つのオブジェクトを管理する少なくとも1つのサーバとの間に論理的に配置され、前記クライアントから送信された前記オブジェクトに関する要求を、当該オブジェクトを管理する前記サーバに転送し、当該要求に対する前記サーバからの応答を前記要求の送信元であるクライアントに転送するスイッチ装置において、転送する応答に、前記オブジェクトを識別するために前記サーバで生成された元オブジェクトIDが含まれている場合には、前記元オブジェクトIDに対応するオブジェクトを管理するサーバを他のサーバから識別するためのサーバ識別情報を挿入することによって前記元オブジェクトIDを情報付帯オブジェクトIDに書き換え、転送する要求に、前記情報付帯オブジェクトIDが含まれている場合には、前記情報付帯オブジェクトIDを前記元オブジェクトIDに復元するオブジェクトID書き換え手段と、前記サーバのアドレス情報と前記サーバ識別情報との組み合わせを管理するテーブルと、該テーブルを参照して、転送する要求の情報付帯オブジェクトIDに含まれる前記サーバ識別情報に対応するサーバのアドレス情報を求め、当該アドレス情報に基づいて当該要求の転送先を決定する転送手段とを備えることを特徴とする。 The switch device according to the present invention is logically arranged between at least one client and at least one server that manages at least one object, and manages requests related to the object transmitted from the client. In the switch device that forwards the request to the server and forwards the response from the server to the client that is the transmission source of the request, the source generated by the server to identify the object in the forwarded response If the object ID is included, the server ID information for identifying the server that manages the object corresponding to the source object ID from other servers is inserted into the source object ID. For requests to rewrite and forward A table for managing a combination of object ID rewriting means for restoring the information incidental object ID to the original object ID and the server address information and the server identification information when the information incidental object ID is included; Transfer means for obtaining address information of the server corresponding to the server identification information included in the information incidental object ID of the request to be transferred with reference to the table and determining a transfer destination of the request based on the address information It is characterized by providing.

本発明のスイッチ装置では、オブジェクトを管理するサーバとそのオブジェクトのオブジェクトIDとを対応付けすることができるスイッチを備え、そのスイッチが、クライアントに送信するオブジェクトIDに、そのオブジェクトを管理するサーバの識別情報を付与する。このようにすれば、次にクライアントがそのオブジェクトにアクセスしようとするときにクライアントが送信する要求中のオブジェクトIDに、そのオブジェクトを管理するサーバ識別情報が含まれるようになるため、スイッチ装置は、要求に含まれるサーバ識別情報から、転送先のサーバを決定することができるようになる。したがって、本発明のスイッチ装置を適用すれば、クライアント側で、オブジェクトを管理するサーバを特定する必要がなくなるため、クライアントに対する透過性を実現することができる。 The switch device of the present invention includes a switch that can associate a server that manages an object with an object ID of the object, and the switch identifies the server that manages the object in the object ID transmitted to the client. Give information. In this way, since the server ID information for managing the object is included in the object ID in the request sent by the client when the client next tries to access the object, the switch device It becomes possible to determine the transfer destination server from the server identification information included in the request. Therefore, when the switch device of the present invention is applied, it is not necessary to specify a server that manages objects on the client side, so that transparency to the client can be realized.

また、本発明のスイッチ装置を適用しても、クライアントおよびサーバの処理を変更する必要はない。したがって、クライアントおよびサーバが標準のネットワークを介したファイルシステムサービスプロトコルさえサポートしていれば、既存システムに手を加えることなく、複数のサーバを統合管理してクライアントにSSIのファイルサービスを提供することができる。 Even if the switch device of the present invention is applied, it is not necessary to change the processing of the client and the server. Therefore, as long as the client and server support only the file system service protocol via the standard network, the SSI file service is provided to the client by integrating and managing a plurality of servers without modifying the existing system. Can do.

本発明のスイッチ装置では、前記サーバ識別情報には、オブジェクトが公開される単位である共有オブジェクト単位を識別するための共有オブジェクト単位識別情報が含まれる。このようにすれば、サーバ単位よりもさらに分解能が高い共有オブジェクト単位でのきめ細かい転送管理を実現することが可能となる。 In the switch device of the present invention, the server identification information includes shared object unit identification information for identifying a shared object unit that is a unit in which an object is disclosed. In this way, it is possible to realize fine transfer management in units of shared objects having a higher resolution than in units of servers.

また、本発明のスイッチ装置では、前記要求および前記応答を関連づけ、前記要求および前記応答を前記クライアントおよび前記サーバで区別するために付与されているトランザクションIDとクライアントのアドレス情報との組み合わせを管理する第2のテーブルと、転送する応答に含まれるトランザクションIDに対応するアドレス情報を、前記第2のテーブルを参照して求め、当該アドレス情報に基づいて当該応答の転送先を決定する第2の転送手段とをさらに備えていてもよい。 In the switching device of the present invention, the request and the response are associated with each other, and a combination of a transaction ID and a client address information assigned to distinguish the request and the response between the client and the server is managed. A second transfer for obtaining address information corresponding to a transaction ID included in a response to be transferred and a second table with reference to the second table, and determining a transfer destination of the response based on the address information And a means.

また、本発明では、前記要求および前記応答を関連づけ、前記クライアントと前記サーバの組み合わせを一意に特定するのに利用可能なOSIモデル第4層以下のタグ情報とクライアントのアドレス情報との組み合わせを管理する分類テーブルと、応答を転送すべきクライアントのアドレス情報を、前記タグ情報と前記分類テーブルを参照して求め、当該アドレス情報に基づいて当該応答の転送先を決定する第3の転送手段とをさらに設けてもよく、あるいは、前記要求および前記応答を関連づけ、前記クライアントと前記サーバの組み合わせを一意に特定するのに利用可能なサーバとの通信セッション・ポート番号とクライアントのアドレス情報との組み合わせを管理する分類テーブルと、応答を転送すべきクライアントのアドレス情報を、前記ポート番号と前記分類テーブルを参照して求め、当該アドレス情報に基づいて当該応答の転送先を決定する第3の転送手段とをさらに設けてもよい。 In the present invention, the request and the response are associated with each other, and the combination of the tag information in the OSI model layer 4 and below and the client address information that can be used to uniquely identify the combination of the client and the server is managed. And a third transfer means for obtaining address information of a client to which a response is to be transferred with reference to the tag information and the classification table, and determining a transfer destination of the response based on the address information. Further, a combination of a communication session port number and a client address information that can be used for associating the request and the response and uniquely identifying the combination of the client and the server is provided. The classification table to manage and the address information of the client to which the response should be forwarded Determined with reference to the classification table and the port number may be further provided with a third transfer means for determining the transfer destination of the response based on the address information.

このように分類テーブルと第3の転送手段とを設けることにより、ハードウエア処理が可能なOSIモデル第4層以下のタグ情報を用いることができるようになり、より高速に処理を行うことができるようになる。 By providing the classification table and the third transfer means in this way, tag information in the OSI model layer 4 or lower capable of hardware processing can be used, and processing can be performed at higher speed. It becomes like this.

本発明では、前記オブジェクトID書き換え手段は、前記元オブジェクトIDを前記情報付帯オブジェクトに書き換える際のアルゴリズムを識別するためのアルゴリズム識別情報と前記元オブジェクトIDに復元するための復元情報との組み合わせを管理する第3のテーブルと、前記サーバ識別情報および前記アルゴリズム識別情報を前記元オブジェクトIDに挿入して前記情報付帯オブジェクトIDに書き換えるとともに、前記アルゴリズム識別情報と前記復元情報とを前記第3のテーブルに登録する応答処理手段と、前記情報付帯オブジェクトIDに含まれるアルゴリズム識別情報に対応する復元情報を前記第3のテーブルを参照して求め、当該復元情報に基づいて前記情報付帯オブジェクトIDを前記元オブジェクトIDに復元する要求処理手段とを備えていてもよく、前記復元情報は、前記元オブジェクトIDから削除されたデータと、該データの位置が含んでいてもよい。 In the present invention, the object ID rewriting means manages a combination of algorithm identification information for identifying an algorithm for rewriting the original object ID into the information-accompanying object and restoration information for restoring the original object ID. And the server identification information and the algorithm identification information are inserted into the original object ID to rewrite the information-accompanying object ID, and the algorithm identification information and the restoration information are stored in the third table. Response processing means to register, restoration information corresponding to the algorithm identification information included in the information supplementary object ID is obtained with reference to the third table, and the information supplementary object ID is determined based on the restoration information. Need to restore to ID It may comprise a processing means, the reconstruction information, and data deleted from the source object ID, may contain the location of the data.

さらに、前記応答処理手段は、前記元オブジェクトIDのデータ長が固定長である場合には、前記元オブジェクトIDの一部を削除し、削除した位置に前記アルゴリズム識別情報と前記サーバ識別情報とを挿入することによって前記情報付帯オブジェクトIDを生成し、前記元オブジェクトIDのデータ長が可変長であって、前記元オブジェクトIDと前記アルゴリズム識別情報と前記サーバ識別情報とのデータ長の和が最大データ長を越えない場合には、前記元オブジェクトIDに前記アルゴリズム識別情報と前記サーバ識別情報とを追加することによって前記情報付帯オブジェクトIDを生成し、前記元オブジェクトIDと前記アルゴリズム識別情報と前記サーバ識別情報とのデータ長の和が最大データ長を越える場合には、前記元オブジェクトIDの一部を削除し、削除した位置に前記アルゴリズム識別情報と前記サーバ識別情報とを挿入することによって前記情報付帯オブジェクトIDを生成するようにしてもよい。 Further, when the data length of the original object ID is a fixed length, the response processing means deletes a part of the original object ID, and adds the algorithm identification information and the server identification information to the deleted position. The information-attached object ID is generated by inserting, the data length of the original object ID is variable, and the sum of the data lengths of the original object ID, the algorithm identification information, and the server identification information is the maximum data If the length does not exceed the length, the information identification object ID is generated by adding the algorithm identification information and the server identification information to the original object ID, and the original object ID, the algorithm identification information, and the server identification If the sum of the data length and the information exceeds the maximum data length, the original object Remove some-object ID, may generate the information adding object ID by inserting deleted the algorithm identification information to the location and with said server identification information.

さらに、本発明のスイッチ装置は、全ての要求および応答に含まれる情報付帯オブジェクトIDにおける前記アルゴリズム識別情報および前記サーバ識別情報の挿入位置やデータ長が同一であるのが望ましい。このようにすれば、オブジェクトIDに含まれる情報を抽出および検索するのに要する時間を短縮することができる。 Furthermore, it is desirable that the switch device of the present invention has the same insertion position and data length of the algorithm identification information and the server identification information in the information incidental object ID included in all requests and responses. In this way, the time required for extracting and searching for information included in the object ID can be shortened.

また、本発明の他のスイッチ装置では、前記サーバより公開されたオブジェクトのディレクトリツリーを組み合わせ、1つの統合ディレクトリツリーとして管理する擬似ファイルシステムをさらに備え、前記統合ディレクトリツリーにおける各共有オブジェクト単位のディレクトリツリーのつなぎ目に相当するオブジェクトのオブジェクトIDと当該オブジェクトIDに関連し、複数の送信先に渡るアクセスを必要とする命令情報との組み合わせを管理する第4のテーブルと、転送する要求に含まれるオブジェクトIDと命令情報との組み合わせが、前記第4のテーブルにエントリされている場合には、当該要求を、前記各送信先に転送する要求に分割し、前記各送信先から受信した全ての応答を、前記クライアントに転送する応答に合成するファイルシステム補完手段とをさらに備える。 The switch device according to the present invention further includes a pseudo file system that combines a directory tree of objects published from the server and manages the object directory tree as a single integrated directory tree, and each shared object unit directory in the integrated directory tree. A fourth table for managing a combination of an object ID corresponding to a joint of the tree and instruction information related to the object ID and requiring access to a plurality of transmission destinations, and an object included in the request to be transferred If the combination of ID and command information is entered in the fourth table, the request is divided into requests to be transferred to the destinations, and all responses received from the destinations are Synthesize the response to forward to the client Further comprising a file system complementing means.

本発明のスイッチ装置では、擬似ファイルシステムの統合ディレクトリツリーを参照して、複数のサーバあるいは複数のファイルシステムを結合しているツリー部分のみの名前解決処理を行い、その他のツリー部分についてはサーバに処理を任せる。このようにすれば、名前解決処理の負荷を、スイッチとサーバとの間で分散することができる。なお、検索処理の効率化から、前記第4のテーブルに登録されるオブジェクトIDは、要求に含まれるオブジェクトIDと同じ前記情報付帯オブジェクトIDであるのが望ましい。 In the switching device of the present invention, referring to the integrated directory tree of the pseudo file system, name resolution processing is performed only on a plurality of servers or a tree portion connecting a plurality of file systems, and other tree portions are handled by the server. Leave processing. In this way, the load of name resolution processing can be distributed between the switch and the server. In order to improve the efficiency of search processing, it is desirable that the object ID registered in the fourth table is the same information ID object ID as the object ID included in the request.

また、本発明の他のスイッチ装置では、前記サーバが公開するオブジェクトが移動したときの、移動前における当該オブジェクトの移動元オブジェクトIDと、移動後における当該オブジェクトの移動先オブジェクトIDと、移動先のサーバの識別情報である移動先サーバ識別情報との組み合わせを管理する第5のテーブルと、所定の基準に基づいて前記オブジェクトを前記擬似ファイルシステムによって管理されている統合ディレクトリツリーを参照して移動させるとともに、当該オブジェクトの移動元オブジェクトIDと、移動先オブジェクトIDと、移動先サーバ識別情報とを前記第5のテーブルにエントリするデータ移動処理手段と、転送する要求に含まれるオブジェクトIDが前記第5のテーブルの移動元オブジェクトIDと一致する場合には、前記第5のテーブルを参照し、当該オブジェクトIDを当該移動元オブジェクトIDに対応する移動先オブジェクトIDに変更し、当該移動元オブジェクトIDに対応するサーバ識別情報に基づいて送信先のサーバを決定する移動隠蔽手段とをさらに備える。 In another switch device of the present invention, when an object disclosed by the server moves, a source object ID of the object before the movement, a destination object ID of the object after the movement, and a destination A fifth table for managing a combination of destination server identification information, which is server identification information, and the object are moved with reference to the integrated directory tree managed by the pseudo file system based on a predetermined criterion. In addition, data movement processing means for entering the movement source object ID, movement destination object ID, and movement destination server identification information of the object in the fifth table, and the object ID included in the transfer request are the fifth object ID. Matches the source object ID of the table The fifth table is referred to, the object ID is changed to the movement destination object ID corresponding to the movement source object ID, and the transmission destination is determined based on the server identification information corresponding to the movement source object ID. And moving concealment means for determining the server.

本発明のスイッチ装置では、移動元オブジェクトID、移動先オブジェクトID、移動先サーバとを対応付け可能な移動隠蔽手段を備えているので、負荷分散、容量割り当て等の管理目的によるオブジェクトの再配置をユーザから隠蔽してSSIを維持するなどの利便性を実現することができる。 The switch device according to the present invention includes a movement concealment unit that can associate the movement source object ID, the movement destination object ID, and the movement destination server, so that the objects can be rearranged for management purposes such as load distribution and capacity allocation. Convenience such as concealing from the user and maintaining SSI can be realized.

また、本発明のスイッチ装置では、前記第5のテーブルには、移動元オブジェクトIDとして、前記情報付帯オブジェクトIDがエントリされるのが処理の効率化の観点から見て望ましい。 In the switch device according to the present invention, it is desirable that the information-attached object ID is entered in the fifth table as the movement source object ID from the viewpoint of improving processing efficiency.

また、前記オブジェクトID書き換え手段は、情報付帯オブジェクトIDに、データが移動したことを示すデータ移動フラグを組み込み、転送する要求に含まれるオブジェクトIDが前記第5のテーブルの移動元オブジェクトIDと一致する場合には、前記データ移動フラグを真に設定し、前記移動隠蔽手段は、前記データ移動フラグが真である場合に限って、前記第5のテーブルを検索するのが処理の効率化の観点から見て望ましい。 Further, the object ID rewriting means incorporates a data movement flag indicating that the data has moved into the information incidental object ID, and the object ID included in the transfer request matches the movement source object ID of the fifth table. In this case, the data movement flag is set to true, and the movement concealing means searches the fifth table only when the data movement flag is true from the viewpoint of improving processing efficiency. Desirable to see.

さらに、前記第5のテーブルでは、1回のデータ移動を1世代として付与される世代番号ごとにテーブルが作成され、前記オブジェクトID書き換え手段は、転送する要求に含まれるオブジェクトIDが前記第5のテーブルの移動元オブジェクトIDと一致する場合には、前記情報付帯オブジェクトIDに前記世代番号を組み込み、前記移動隠蔽手段は、前記第5のテーブルにおける各テーブルのうち、前記世代番号が付与されたテーブルだけを検索するのが処理の効率化の観点から見て望ましい。 Further, in the fifth table, a table is created for each generation number assigned with one data movement as one generation, and the object ID rewriting means sets the object ID included in the transfer request to the fifth number. If it matches the source object ID of the table, the generation number is incorporated in the information-attached object ID, and the movement concealing means is a table to which the generation number is assigned among the tables in the fifth table. It is desirable to search only from the viewpoint of improving processing efficiency.

本発明のさらに別のスイッチ装置は、前記サーバが公開しているオブジェクト群を別のサーバへ移動する処理を行う際、移動する全てのオブジェクトの移動処理の進行状態と、クライアントから移動処理中に要求された更新情報と、移動前における当該オブジェクトの移動元オブジェクトIDと、移動後における当該オブジェクトの移動先オブジェクトIDと、移動先のサーバの識別情報である移動先サーバ識別情報との組み合わせを管理する第6のテーブルと、前記擬似ファイルシステムを参照し、所定の基準に基づいて前記オブジェクトを移動させるとともに、移動処理の進行状態と、コピー処理中の更新ログと、当該オブジェクトの移動元IDと、移動先オブジェクトIDと、移動先サーバ識別情報とを前記第6のテーブルにエントリする移動処理管理手段と、を備え、移動処理を実行している際に、クライアントからの移動対象オブジェクトへの要求を転送する方法を、前記第6のテーブルに登録されている進行状態と前記要求の内容により転送先を変更して、移動処理中であることが隠蔽されるようにする。 Still another switch device according to the present invention, when performing the process of moving the object group disclosed by the server to another server, the progress state of the movement process of all moving objects, and during the movement process from the client Manages the combination of requested update information, source object ID of the object before movement, destination object ID of the object after movement, and destination server identification information that is identification information of the destination server The sixth table is referred to, the pseudo file system is referred to, the object is moved based on a predetermined criterion, the progress of the movement process, the update log during the copy process, and the movement source ID of the object , The destination object ID and the destination server identification information are entered in the sixth table. A moving process management means, and a method of transferring a request from the client to the object to be moved when the moving process is being executed, and a progress state registered in the sixth table and the request The transfer destination is changed in accordance with the contents of, so that the movement processing is being concealed.

この構成を採用することにより、管理者によるサーバ間でのオブジェクト再配置作業時においても、ユーザへは再配置作業を隠蔽させることで、システム停止や、ファイルアクセスサービス停止を発生させずに管理作業を実行することを可能にする。 By adopting this configuration, even when an object is relocated between servers by an administrator, the relocation work is hidden from the user, so that management work can be performed without causing a system or file access service stop. Makes it possible to execute

この場合、前記移動処理中のオブジェクト群に対し、移動先へのデータのコピーが終了した前記オブジェクト群の一部オブジェクトの前記第6のテーブルの移動処理の進行状態の情報を移動終了と共に、前記疑似ファイルシステムにおけるマッピング情報を、移動元のオブジェクトから移動先のオブジェクトに変更する、マッピング情報変更手段を備えるようにしてもよい。また、前記マッピング情報変更手段により、移動先オブジェクトにマッピングが変更され、移動終了となったオブジェクトに対し、移動元オブジェクトに関連付けられたオブジェクトIDによる要求であるかを、前記第6のテーブルにより判別し、該当する移動元オブジェクトIDを移動先オブジェクトIDへ書き換えて転送する、オブジェクトID書き換え手段を備えるようにしてもよい。 In this case, with respect to the object group being moved, information on the progress status of the movement process of the sixth table of the partial object of the object group for which data copying to the movement destination has ended is performed along with the movement end, You may make it provide the mapping information change means to change the mapping information in a pseudo file system from the movement origin object to the movement destination object. In addition, the mapping information changing means determines whether the request is based on the object ID associated with the source object for the object whose mapping has been changed to the destination object and has been moved. Then, an object ID rewriting unit that rewrites and transfers the corresponding movement source object ID to the movement destination object ID may be provided.

さらに、前記移動処理中にコピーが終了したオブジェクトに対し、クライアントからデータの書き込み要求がきた場合、移動元、および移動先へ書き込み要求を転送し、同期を維持するようにしてもよく、前記移動処理中にコピー処理中のオブジェクトに対し、クライアントからのデータの書き込み要求が来た場合、書き込みデータの位置を前記第6のテーブルに更新情報として登録した後、書き込み要求を移動元に転送し、前記コピー処理終了後に、前記更新情報を参照して、移動元から更新部分のデータを読み出し、移動先のオブジェクトへ書き込みを行うようにしてもよく、前記移動処理中にコピー処理中のオブジェクトに対し、クライアントからのデータの書き込み要求が来た場合、書き込み要求に含まれる更新データおよび、書き込みデータの位置を第6のテーブルに更新情報として登録した後、書き込み要求を移動元へ転送し、前記コピー処理終了後に、前記更新情報を用いて、移動先のオブジェクトへ書き込みを行うようにしてもよい。 Furthermore, when a client receives a data write request for an object that has been copied during the move process, the write request may be transferred to the move source and the move destination to maintain synchronization. When a data write request is received from the client for the object being copied during processing, the write data position is registered in the sixth table as update information, and then the write request is transferred to the source. After the copy process is completed, the update information may be referred to, the update part data may be read from the move source, and written to the move destination object. For the object being copied during the move process, When the client receives a data write request, the update data included in the write request and the write After the copy data is registered as update information in the sixth table, the write request is transferred to the movement source, and after the copy process is completed, the update information is used to write to the movement destination object. Also good.

本発明においてオブジェクトIDとは、典型的にはNFSにおけるファイルハンドルであるが、これに限定されるものではなく、ネットワークを介在することができる任意のファイルシステムにおいて、オブジェクトを識別するものであればいずれのものも含まれる。また、ファイルシステムとしても、NFSに限定されるものではなく、他のファイルシステムにも本発明は適用可能である。   In the present invention, the object ID is typically a file handle in NFS, but is not limited to this. Any object system can be used as long as it identifies an object in any file system that can intervene in a network. Any are included. Also, the file system is not limited to NFS, and the present invention can be applied to other file systems.

以上述べたように、本発明のスイッチ装置は以下に示す効果を有する。   As described above, the switch device of the present invention has the following effects.

(1) クライアントおよびサーバが標準のネットワークを介したファイルシステムサービスプロトコル(例えばNFS)さえサポートしていれば、それらの既存システムに手を加えることなく、複数のサーバを統合管理してクライアントにSSIのファイルサービスを実現できることにある。本発明のスイッチ装置の実装にあたっては、本発明のスイッチ装置を論理的にクライアントとサーバの間に配置するのみで、IPエイリアスの設定や仮想分散ファイルシステムの導入などのクライアントおよびサーバの処理の変更が不要であるからである。   (1) As long as the client and server support only a file system service protocol (for example, NFS) via a standard network, a plurality of servers can be integratedly managed and the SSI can be managed by the client without modifying those existing systems. The file service can be realized. When implementing the switch device of the present invention, the switch device of the present invention is logically arranged between the client and the server, and the client and server processing changes such as the IP alias setting and the introduction of the virtual distributed file system. This is because is unnecessary.

(2) 管理者が負荷や容量分散の目的という本来クライアントに対して通知する必要のない操作、例えばクライアントに一度割り当てたサーバから別のサーバへオブジェクトを移動するような場合に、クライアントに対して透過的に処理を実行することができ、クライアントに提示したSSIの一貫性を維持することができる。本発明のスイッチ装置は、リモートファイルシステムにおいてディレクトリやファイルなどのオブジェクトを特定するためのオブジェクトIDとそのオブジェクトを処理するサーバを対応付けし、オブジェクトをクライアント透過に移動させた場合の新旧オブジェクトIDの変換などを行い、その結果に基づきクライアントからの要求を適切なサーバへ、またサーバからのオブジェクトIDを含む応答を適切なクライアントへ振り分けることができるからである。   (2) Operations that the administrator originally does not need to notify the client of the purpose of load or capacity distribution, for example, when moving an object from a server once assigned to the client to another server The processing can be executed transparently, and the consistency of the SSI presented to the client can be maintained. The switch device according to the present invention associates an object ID for specifying an object such as a directory or a file in a remote file system with a server that processes the object, and the old and new object IDs when the object is moved transparently to the client. This is because conversion or the like is performed, and based on the result, a request from the client can be distributed to an appropriate server, and a response including the object ID from the server can be distributed to an appropriate client.

(3) 大量のオブジェクトIDを、検索操作を介さずに処理して、パケットを適切なサーバへ転送することが可能であり、高速化、およびハードウエア実装に有利となる。クライアントに渡すオブジェクトIDを、サーバが発行した元オブジェクトIDから情報付帯オブジェクトIDへ書き換えるためである。   (3) A large amount of object IDs can be processed without going through a search operation, and the packet can be transferred to an appropriate server, which is advantageous for speeding up and hardware implementation. This is because the object ID passed to the client is rewritten from the original object ID issued by the server to the information incidental object ID.

(4) 名前解決処理による負担をサーバとスイッチ装置とで分散して、名前解決処理の時間を短縮することができる。本発明によるスイッチ装置は、擬似ファイルシステムを備え、その擬似ファイルシステムがマウントポイントのみを管理し、そのマウントポイント配下の名前解決は矛盾なく各サーバへ委譲できるからである。   (4) The burden of name resolution processing can be distributed between the server and the switch device, and the time for name resolution processing can be shortened. This is because the switch device according to the present invention includes a pseudo file system, the pseudo file system manages only the mount point, and name resolution under the mount point can be delegated to each server without contradiction.

(5) 統合ディレクトリツリーにおける各共有オブジェクト単位のディレクトリツリーのつなぎ目を含むオブジェクトの移動要求があった場合に、つなぎ目以下のオブジェクトの実際の移動を行わず、そのつなぎ目以下のオブジェクトを所望の位置へと移動したと同等にクライアントに見せるようにテーブルを書き換えるので、非常に高速に移動を完了することができる。   (5) When there is a request to move an object including a joint of the directory tree of each shared object in the integrated directory tree, the object below the joint is not actually moved, and the object below the joint is moved to a desired position. Since the table is rewritten so that it appears to the client as if it were moved, the movement can be completed very quickly.

(6) OSI参照モデルの第4層以下のタグ情報を使用できるようにした場合には、これらのタグ情報を用いてハードウエアによるオブジェクトID書き換えが可能となるので、さらに処理を高速に行うことができる。   (6) When tag information in the fourth layer or lower of the OSI reference model can be used, it is possible to rewrite the object ID by hardware using these tag information, so that the processing is performed at higher speed. Can do.

(7) さらに、管理者によるサーバ間でのオブジェクト再配置作業時においても、ユーザへは再配置作業を隠蔽させることで、システム停止や、ファイルアクセスサービス停止を発生させずに管理作業を実行することを可能にする。   (7) Furthermore, even when an object is rearranged between servers by the administrator, the management work is executed without causing a system stop or a file access service stop by concealing the rearrangement work to the user. Make it possible.

次に、本発明の好ましい実施の形態のスイッチ装置について図面を参照して詳細に説明する。   Next, a switch device according to a preferred embodiment of the present invention will be described in detail with reference to the drawings.

(第1の実施形態)まず、本発明の第1の実施形態のスイッチ装置について説明する。   (First Embodiment) First, a switch device according to a first embodiment of the present invention will be described.

図1は、本発明の第1の実施形態のスイッチ装置が設けられたクライアント・サーバ形式のリモートファイルシステムであるネットワークファイルシステムのブロック図である。図1に示すように、このネットワークファイルシステムでは、少なくとも1つのクライアント1と、少なくとも1つのサーバ3と、本実施形態のスイッチ装置の一例であるスイッチ100とが、LANあるいはインターネット等であるネットワーク2に接続されている。各サーバ3は、ファイルアクセスサービスによってアクセスされるファイル等のデータを管理する少なくとも1つのファイルシステム4と、前述のデータを格納する記憶装置5とをそれぞれ備えており、各クライアント1にファイルアクセスサービスを提供するファイルサーバである。   FIG. 1 is a block diagram of a network file system which is a client / server type remote file system provided with the switch device according to the first embodiment of the present invention. As shown in FIG. 1, in this network file system, a network 2 in which at least one client 1, at least one server 3, and a switch 100, which is an example of the switch device of the present embodiment, is a LAN or the Internet. It is connected to the. Each server 3 includes at least one file system 4 for managing data such as files accessed by the file access service, and a storage device 5 for storing the above-described data. It is a file server that provides

図1では、クライアント1とサーバ3とスイッチ100とが、同一のネットワーク2に接続されているが、論理的には、スイッチ100は各クライアント1と各サーバ3との間に配置されている。このようなリモートファイルシステムにおいては、全てのファイルアクセス操作は、クライアント1から送信されるファイルアクセス要求(例えば、いわゆるUnix(登録商標)系のシステムであればNFSプロトコルによる要求)と、そのファイルアクセス要求に対してサーバ3から返信される応答とで成り立っており、サーバ3から何らかの要求が出力されることはないものとする。   In FIG. 1, the client 1, the server 3, and the switch 100 are connected to the same network 2, but logically the switch 100 is disposed between each client 1 and each server 3. In such a remote file system, all file access operations include a file access request transmitted from the client 1 (for example, a request based on the NFS protocol in the case of a so-called Unix (registered trademark) system) and the file access. It is composed of a response returned from the server 3 in response to the request, and no request is output from the server 3.

クライアント1から送信されるファイルアクセス要求には、アクセス対象となるディレクトリやファイルなどのオブジェクトを識別するためのオブジェクトIDが含まれている。クライアント1は、ディレクトリやファイルなどのオブジェクトを識別するためのオブジェクトIDをファイルアクセス要求の中に指定することによって、サーバ3によって管理されるオブジェクトへアクセスする。オブジェクトIDはサーバ3によって生成されるものであり、クライアント1は最初にアクセス可能なオブジェクトの一覧を有している。クライアント1は、まず、その一覧から、オブジェクトまでのアクセスパスを指定した要求データを送信し、最初にアクセス可能なオブジェクトのオブジェクトIDをサーバ3の応答データから取得する。また、オブジェクトIDをすでに取得しているオブジェクトの下位に配置されたオブジェクトについては、クライアント1は、すでに取得しているオブジェクトIDと、ファイルアクセスを行うオブジェクトの名前を指定した要求データを送信し、その応答データからオブジェクトIDを取得する。つまり、クライアント1は、サーバ3からの応答データを受信して、その応答データに含まれるオブジェクトIDを取得しない限り、そのオブジェクトIDに対応するオブジェクトを操作することができない。   The file access request transmitted from the client 1 includes an object ID for identifying an object such as a directory or file to be accessed. The client 1 accesses an object managed by the server 3 by specifying an object ID for identifying an object such as a directory or a file in the file access request. The object ID is generated by the server 3, and the client 1 has a list of objects that can be accessed first. First, the client 1 transmits request data specifying an access path to the object from the list, and obtains the object ID of the object that can be accessed first from the response data of the server 3. In addition, for an object placed under the object for which the object ID has already been acquired, the client 1 transmits request data specifying the object ID that has already been acquired and the name of the object that performs file access, The object ID is acquired from the response data. That is, unless the client 1 receives the response data from the server 3 and acquires the object ID included in the response data, the client 1 cannot operate the object corresponding to the object ID.

このネットワークファイルシステムでは、サーバ3の存在は、スイッチ100によってクライアント1から隠蔽されており、クライアント1からのファイルアクセス要求はスイッチ100に送信される。スイッチ100は、クライアント1から送信されたファイルアクセス要求を受信し、そのファイルアクセス要求を適切なサーバ3に振り分けて転送(ルーティング)し、サーバ3から送信された前述のファイルアクセス要求に対する応答を受信し、ファイルアクセス要求を送信したクライアント1へとその応答を転送(ルーティング)するように動作する。   In this network file system, the existence of the server 3 is hidden from the client 1 by the switch 100, and a file access request from the client 1 is transmitted to the switch 100. The switch 100 receives the file access request transmitted from the client 1, distributes the file access request to an appropriate server 3 and transfers (routes) the file access request, and receives a response to the file access request transmitted from the server 3. Then, the response is transferred (routed) to the client 1 that has transmitted the file access request.

スイッチ100は、クライアント1からファイルアクセス要求を受信したときには、そのファイルアクセス要求に含まれるオブジェクトIDを解析し、その解析結果に基づいて複数のサーバ3の中から、そのファイルアクセス要求を転送すべきサーバ3を決定し、そのファイルアクセス要求をそのサーバ3に転送する。しかし、サーバ3で生成されるオブジェクトIDは、一般的に、生成したサーバ3のみが解釈可能なデータ列によって構成されているため、スイッチ100およびクライアント1では、そのデータを解釈することができない。また、異なるサーバ3でまったく同一のデータ列を有するオブジェクトIDを生成する可能性もある。そのため、このままでは、スイッチ100がファイルアクセス要求の適切なルーティングを実行することができない。また、前述のように、クライアント1は、サーバ3からの応答データを受信して、その応答データに含まれるオブジェクトIDを取得しない限り、そのオブジェクトIDに対応するオブジェクトを操作することができない。   When the switch 100 receives the file access request from the client 1, the switch 100 should analyze the object ID included in the file access request and transfer the file access request from the plurality of servers 3 based on the analysis result. The server 3 is determined and the file access request is transferred to the server 3. However, since the object ID generated by the server 3 is generally composed of a data string that can be interpreted only by the generated server 3, the switch 100 and the client 1 cannot interpret the data. Further, there is a possibility that object IDs having exactly the same data string are generated in different servers 3. Therefore, in this state, the switch 100 cannot execute appropriate routing of the file access request. Further, as described above, the client 1 cannot operate the object corresponding to the object ID unless it receives the response data from the server 3 and acquires the object ID included in the response data.

そこで、本実施形態のスイッチ装置であるスイッチ100では、サーバ3から送信される応答データ中に含まれるオブジェクトIDに送信元のサーバ3を他のサーバ3から識別するためのサーバ識別情報を挿入し、サーバ識別情報が挿入されたオブジェクトIDを含む応答データによってパケットを再構成し、そのパケットをクライアント1に転送する。このようにすれば、クライアント1は、サーバ識別情報が挿入されたオブジェクトIDを含むファイルアクセス要求をスイッチ100に送信するようになり、スイッチ100では、そのオブジェクトIDに挿入されたサーバ識別情報を参照してそのファイルアクセス要求を転送すべきサーバを特定することができる。なお、スイッチ100は、ファイルアクセス要求をサーバ3に転送する際には、サーバ識別情報を挿入したオブジェクトIDを、サーバ3が生成した元のオブジェクトIDに変換する必要がある。このようにスイッチ100を備えることによって、ネットワークファイルシステムにおける複数のサーバによる分散処理が可能となる。   Therefore, in the switch 100 that is the switch device of the present embodiment, server identification information for identifying the transmission source server 3 from other servers 3 is inserted into the object ID included in the response data transmitted from the server 3. The packet is reconstructed with the response data including the object ID in which the server identification information is inserted, and the packet is transferred to the client 1. By doing so, the client 1 transmits a file access request including the object ID in which the server identification information is inserted to the switch 100, and the switch 100 refers to the server identification information inserted in the object ID. Thus, the server to which the file access request should be transferred can be specified. The switch 100 needs to convert the object ID into which the server identification information is inserted into the original object ID generated by the server 3 when transferring the file access request to the server 3. By providing the switch 100 in this way, distributed processing by a plurality of servers in the network file system becomes possible.

図2は、スイッチ100の構成を示すブロック図である。図2に示すように、スイッチ100は、オブジェクトID書き換え部101と、ファイルアクセス管理102と、パケット処理部103とを備えている。パケット処理部103は、ネットワーク2を介してクライアント1およびサーバ3から受信したパケットを解析して、パケットに含まれるデータをファイルアクセス管理部120に出力し、ファイルアクセス管理部120から出力されたデータをパケット化して、ネットワーク2を介してクライアント1およびサーバ3に送信する。ファイルアクセス管理部102は、パケット処理部103から出力されたデータを入力して解析し、パケット処理部103が受信したパケットの転送先を決定する。オブジェクトID書き換え部101は、ファイルアクセス管理部102が決定するパケットの転送先に応じて、前述のデータに含まれるオブジェクトIDの書き換えを行う。   FIG. 2 is a block diagram showing the configuration of the switch 100. As shown in FIG. As illustrated in FIG. 2, the switch 100 includes an object ID rewriting unit 101, a file access management 102, and a packet processing unit 103. The packet processing unit 103 analyzes the packet received from the client 1 and the server 3 via the network 2, outputs the data included in the packet to the file access management unit 120, and the data output from the file access management unit 120 Is packetized and transmitted to the client 1 and the server 3 via the network 2. The file access management unit 102 receives and analyzes the data output from the packet processing unit 103, and determines the transfer destination of the packet received by the packet processing unit 103. The object ID rewriting unit 101 rewrites the object ID included in the data according to the packet transfer destination determined by the file access management unit 102.

図3は、ファイルアクセス管理部102の構成を示すブロック図である。図3に示すように、ファイルアクセス管理部102は、転送手段(第2の転送手段を含む)の一例であるデータ解析部124と、第2のテーブルの一例であるトランザクションID管理テーブル125と、サーバ情報管理テーブル126とを備えている。データ解析部124は、要求データおよび応答データを解析して、受信したパケットの適切な送信先を決定する。トランザクションID管理テーブル125には、各要求および応答データを関連づけ、個々の要求および応答データをクライアント1およびサーバ3で区別するために付与されているトランザクションIDが登録されている。サーバ管理テーブル126には、サーバ識別情報と、サーバ3のIPアドレスやMACアドレス等のサーバのアドレス情報との組み合わせがエントリされる。   FIG. 3 is a block diagram illustrating a configuration of the file access management unit 102. As shown in FIG. 3, the file access management unit 102 includes a data analysis unit 124 that is an example of a transfer unit (including a second transfer unit), a transaction ID management table 125 that is an example of a second table, And a server information management table 126. The data analysis unit 124 analyzes the request data and the response data and determines an appropriate transmission destination of the received packet. In the transaction ID management table 125, transaction IDs assigned to associate each request and response data and distinguish the individual request and response data between the client 1 and the server 3 are registered. In the server management table 126, a combination of server identification information and server address information such as the IP address and MAC address of the server 3 is entered.

図4は、オブジェクトID書き換え部101の構成を示すブロック図である。図4に示すように、オブジェクトID書き換え部101は、要求応答分配部120と、要求処理部121と、応答処理部122と、第3のテーブルの一例であるアルゴリズムテーブル123とを備えている。要求応答分配部120は、ファイルアクセス管理部102から送信されたデータが要求データである場合には、そのデータを要求処理部121に分配し、応答データである場合には、そのデータを応答処理部122に分配する。アルゴリズムテーブル123には、データの書き換え方が登録されている。要求処理部121および応答処理部123は、アルゴリズムテーブル123に登録された書き換え方に基づいて、オブジェクトIDの書き換えを行い、書き換えたオブジェクトIDを要求応答分配部120に送信する。要求応答分配部120は、書き換えられたオブジェクトIDをファイルアクセス管理部102に返信する。   FIG. 4 is a block diagram illustrating a configuration of the object ID rewriting unit 101. As illustrated in FIG. 4, the object ID rewriting unit 101 includes a request / response distribution unit 120, a request processing unit 121, a response processing unit 122, and an algorithm table 123, which is an example of a third table. If the data transmitted from the file access management unit 102 is request data, the request / response distribution unit 120 distributes the data to the request processing unit 121. If the data is response data, the request / response distribution unit 120 performs response processing on the data. Distributed to the unit 122. In the algorithm table 123, how to rewrite data is registered. The request processing unit 121 and the response processing unit 123 rewrite the object ID based on the rewriting method registered in the algorithm table 123, and transmits the rewritten object ID to the request / response distribution unit 120. The request / response distributor 120 returns the rewritten object ID to the file access manager 102.

<オブジェクトIDフォーマット>図5は、オブジェクト書き換え部101において書き換えられるオブジェクトIDのフォーマットの一例を示す図である。図5(a)は、サーバ3によって生成されるオブジェクトID、すなわち元オブジェクトID150である。元オブジェクトID150は、例えば、NFS等のネットワークファイルアクセスプロトコルの種類やバージョンによってデータ長の定義が異なる。つまり、元オブジェクトID150は、一般的に、データ長が固定であるものと、最大データ長のみが決まっており、最大データ長の範囲内でデータ長が可変であるものの2種類に分類される。図5(b)は、データ長が固定であるオブジェクトIDであって、オブジェクト書き換え部101によってサーバ識別情報154およびアルゴリズム識別情報153が挿入された情報付帯オブジェクトIDのフォーマットが示されている。図5(b)に示すように、このオブジェクトIDはデータ長が固定であるので、サーバ識別情報154およびアルゴリズム識別情報153が挿入されても、全体のデータ長は固定(元オブジェクトID150と同じ長さ)となっていなければならない。したがって、オブジェクトID書き換え部101は、図5(b)に示す情報付帯オブジェクトIDを生成する際には、図5(a)に示す元オブジェクトID150の一部を削除して圧縮データ152とし、サーバ識別情報154およびアルゴリズム識別情報153を先頭に付与する。なお、アルゴリズム識別情報153とは、元オブジェクトID150の一部を削除する際にオブジェクトID書き換え部101によって用いられる削除アルゴリズムを識別するための情報である。このように書き換えられた情報付帯オブジェクトIDを、圧縮型情報付帯オブジェクトID151と呼ぶ。   <Object ID Format> FIG. 5 is a diagram showing an example of the format of an object ID rewritten by the object rewriting unit 101. FIG. 5A shows an object ID generated by the server 3, that is, an original object ID 150. For example, the definition of the data length of the original object ID 150 differs depending on the type and version of a network file access protocol such as NFS. In other words, the original object ID 150 is generally classified into two types, one having a fixed data length and one having only a maximum data length and having a variable data length within the range of the maximum data length. FIG. 5B shows an object ID having a fixed data length, and the format of the information associated object ID in which the server identification information 154 and the algorithm identification information 153 are inserted by the object rewriting unit 101 is shown. As shown in FIG. 5B, since the object ID has a fixed data length, even if the server identification information 154 and the algorithm identification information 153 are inserted, the entire data length is fixed (the same length as the original object ID 150). Must be). Therefore, when the object ID rewriting unit 101 generates the information supplementary object ID shown in FIG. 5B, the object ID rewriting unit 101 deletes a part of the original object ID 150 shown in FIG. Identification information 154 and algorithm identification information 153 are added to the head. The algorithm identification information 153 is information for identifying a deletion algorithm used by the object ID rewriting unit 101 when a part of the original object ID 150 is deleted. The information supplementary object ID rewritten in this way is referred to as a compression type information supplementary object ID 151.

図5(c)は、データ長が可変長であるオブジェクトIDであって、サーバ識別情報およびアルゴリズム識別情報が挿入された情報付帯オブジェクトIDが示されている。図5(c)では、元オブジェクトID150のデータは削除されずに、サーバ識別情報154およびアルゴリズム識別情報153がそのまま追加されている。このような情報付帯オブジェクトIDを追記型情報付帯オブジェクトID155と呼ぶ。なお、データ長が可変長であっても、最大のデータ長を越える場合には、オブジェクトID書き換え部101では、追記型情報付帯オブジェクトID155でなく、圧縮型情報付帯オブジェクトID152が生成される。   FIG. 5C shows an object ID having a variable data length, and an information incidental object ID into which server identification information and algorithm identification information are inserted. In FIG. 5C, the data of the original object ID 150 is not deleted, but the server identification information 154 and the algorithm identification information 153 are added as they are. Such an information accompanying object ID is referred to as a write-once information accompanying object ID 155. Even if the data length is variable, when the maximum data length is exceeded, the object ID rewriting unit 101 generates not the write-once information incidental object ID 155 but the compression-type information additional object ID 152.

また、図5(b)に示すサーバ識別情報154およびアルゴリズム識別情報153とは、図5(c)に示すサーバ識別情報154およびアルゴリズム識別情報153と、それぞれデータ長が同じであるのが望ましく、サーバ識別情報154とアルゴリズム識別情報153とは、それぞれ同じデータ位置に設定されるのが望ましい。オブジェクトIDの大きさは、一般的にNFSバージョン2プロトコルでは、32バイト程度であり、サイズが大きい。また、NFSバージョン3では、そのサイズを変えることもある。そのため、その中からデータ長や位置がまちまちである情報を抽出および検索するのには時間を要する。したがって、情報付帯オブジェクトIDに含まれる各識別情報の抽出や検索するには、それらのデータを同じデータ長、同じ位置とするのが望ましい。   Further, it is desirable that the server identification information 154 and the algorithm identification information 153 shown in FIG. 5B have the same data length as the server identification information 154 and the algorithm identification information 153 shown in FIG. The server identification information 154 and the algorithm identification information 153 are preferably set at the same data position. The size of the object ID is generally about 32 bytes in the NFS version 2 protocol, and the size is large. In NFS version 3, the size may be changed. For this reason, it takes time to extract and search for information with various data lengths and positions. Therefore, in order to extract and search each piece of identification information included in the information supplementary object ID, it is desirable that the data have the same data length and the same position.

図6は、アルゴリズムテーブル123の構成を示す図である。アルゴリズムテーブル123は、アルゴリズム識別情報153と、復元情報の一例である削除データ156と、同じく復元情報の一例である削除位置157との組によって構成されたエントリを有するテーブルである。このテーブルを参照すれば、要求処理部121は、削除データ156と、削除データ位置157とにより、圧縮データ152を元オブジェクト150へ戻すことが可能になる。なお、アルゴリズムテーブル123の削除データ156と、削除データ位置157の情報のないエントリは、圧縮データ152を生成せず、元オブジェクト150にそのままサーバ識別情報154およびアルゴリズム識別情報153を追加した追記型情報付帯オブジェクトIDのエントリである。   FIG. 6 is a diagram showing the configuration of the algorithm table 123. The algorithm table 123 is a table having entries configured by pairs of algorithm identification information 153, deletion data 156 that is an example of restoration information, and a deletion position 157 that is also an example of restoration information. With reference to this table, the request processing unit 121 can return the compressed data 152 to the original object 150 by the deletion data 156 and the deletion data position 157. It should be noted that the deletion data 156 and the entry without information of the deletion data position 157 in the algorithm table 123 do not generate the compressed data 152, and the write-once information in which the server identification information 154 and the algorithm identification information 153 are added to the original object 150 as they are This is an entry of an incidental object ID.

なお、サーバ3において元オブジェクトID150が一定の生成規則で生成されている場合には、元オブジェクトID150は、データ列に周期性のある(各元オブジェクトID150中に同一のビット列が同一の場所に発生する)IDとなる。このような場合には、削除データ156と、削除データ位置157とが等しくし、同じアルゴリズム識別情報153を用いることによって、アルゴリズムテーブル123のエントリ数を削減することも可能である。   When the original object ID 150 is generated by the server 3 according to a certain generation rule, the original object ID 150 has a periodicity in the data string (the same bit string is generated in the same place in each original object ID 150). ID). In such a case, the number of entries in the algorithm table 123 can be reduced by making the deletion data 156 equal to the deletion data position 157 and using the same algorithm identification information 153.

<要求パケット受信の際の動作>次に、スイッチ100における、クライアント1から送られる要求パケットを受信した後、複数のサーバ3の中から適切なサーバを選択し、そのサーバにパケットを送信する場合の動作の手順について説明する。   <Operation when receiving a request packet> Next, after receiving a request packet sent from the client 1 in the switch 100, selecting an appropriate server from a plurality of servers 3 and transmitting the packet to that server The operation procedure will be described.

パケット処理部103は、クライアント1から送信された要求パケットを受信すると、そのパケットからファイルアクセス要求データ、クライアント1のクライアントIPアドレス情報160およびクライアントMACアドレス情報161を抽出し、それらのデータをファイルアクセス管理部102に送信する。   When receiving the request packet transmitted from the client 1, the packet processing unit 103 extracts the file access request data, the client IP address information 160 and the client MAC address information 161 of the client 1 from the packet, and accesses these data to the file access Transmit to the management unit 102.

ファイルアクセス管理部102のデータ解析部124は、それらのデータを受信すると、ファイルアクセス要求データを解析して、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155を抽出する。   When receiving the data, the data analysis unit 124 of the file access management unit 102 analyzes the file access request data, and extracts the compression type information incidental object ID 151 or the write-once information additional object ID 155.

そして、データ解析部124は、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155に含まれるサーバ識別情報154を抽出して、図7に示すサーバ情報管理テーブル126を参照し、サーバ識別情報154に対応するサーバ3のサーバIPアドレス情報158とサーバMACアドレス情報159とを読み出す。   Then, the data analysis unit 124 extracts the server identification information 154 included in the compressed information auxiliary object ID 151 or the write-once information auxiliary object ID 155, refers to the server information management table 126 shown in FIG. The server IP address information 158 and the server MAC address information 159 of the server 3 corresponding to are read out.

ファイルアクセス要求データには、各要求データを区別するためのトランザクションID160が含まれている。データ解析部124は、トランザクションID160と、パケット管理部103より受信したクライアント1のクライアントIPアドレス情報161およびクライアントMACアドレス情報162と、ファイルアクセス要求データに含まれる、リードやライトなどのファイルアクセス命令情報163と、サーバ識別情報154とを、図8に示すトランザクションID管理テーブル125に登録する。   The file access request data includes a transaction ID 160 for distinguishing each request data. The data analysis unit 124 includes a transaction ID 160, client IP address information 161 and client MAC address information 162 received from the packet management unit 103, and file access command information such as read and write included in the file access request data. 163 and server identification information 154 are registered in the transaction ID management table 125 shown in FIG.

その後、データ解析部124は、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155を、情報付帯オブジェクトID書き換え命令とともに、オブジェクトID書き換え部101に送信する。これらのオブジェクトIDは、オブジェクトID書き換え部101において元オブジェクトID150に変換された後、再びファイルアクセス管理部102に送信される。   Thereafter, the data analysis unit 124 transmits the compression type information accompanying object ID 151 or the write-once type information accompanying object ID 155 to the object ID rewriting unit 101 together with the information accompanying object ID rewriting command. These object IDs are converted to the original object ID 150 in the object ID rewriting unit 101 and then transmitted to the file access management unit 102 again.

ファイルアクセス管理部102は、元オブジェクトID150をファイルアクセス要求に組み込む。ファイルアクセス管理部102において、再構成されたファイルアクセス要求データと、サーバ情報管理テーブル126を検索することにより特定された、サーバ3のサーバIPアドレス情報158、およびサーバMACアドレス情報159とは、パケット処理部103に送信される。パケット処理部103は、それらを要求パケットとして再構成し、そのパケットをサーバ3に送信する。   The file access management unit 102 incorporates the original object ID 150 into the file access request. In the file access management unit 102, the reconfigured file access request data and the server IP address information 158 and server MAC address information 159 of the server 3 specified by searching the server information management table 126 are packets It is transmitted to the processing unit 103. The packet processing unit 103 reconfigures them as request packets and transmits the packets to the server 3.

<要求データの受信の際のオブジェクトID書き換え部の動作>次に、クライアント1からの要求データに含まれる、圧縮型情報付帯オブジェクトIDもしくは追記型情報付帯オブジェクトID155を、元オブジェクトID150に復元する際の、オブジェクトID書き換え部101における動作の手順について説明する。   <Operation of Object ID Rewriting Unit upon Receiving Request Data> Next, when restoring the compression-type information incidental object ID 155 or the write-once information additional object ID 155 included in the request data from the client 1 to the original object ID 150 The operation procedure in the object ID rewriting unit 101 will be described.

要求データの解析後に、ファイルアクセス処理部102から送信された、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155と、情報付帯オブジェクト書き換え命令とを受信すると、要求応答分配部120は、情報付帯オブジェクトID書き換え命令に基づいて、受信した圧縮型情報付帯オブジェクトID151、もしくは追記型情報付帯オブジェクトID155を要求処理部121に送信する。   Upon analysis of the request data, upon receiving the compressed information accompanying object ID 151 or write-once information accompanying object ID 155 and the information accompanying object rewrite command transmitted from the file access processing unit 102, the request response distributing unit 120 Based on the object ID rewriting command, the received compression type information incidental object ID 151 or write-once information additional object ID 155 is transmitted to the request processing unit 121.

要求処理部121は、アルゴリズムテーブル123を参照して、受信した情報付帯オブジェクトIDに含まれるアルゴリズム識別情報153に対応するエントリの削除データ156および削除データ位置157を特定し、それらに基づいて元オブジェクトID150を生成し、要求応答分配部120を介して、ファイルアクセス管理部102に生成した元オブジェクトID150を送信する。   The request processing unit 121 refers to the algorithm table 123, specifies the deleted data 156 and the deleted data position 157 of the entry corresponding to the algorithm identification information 153 included in the received information-attached object ID, and based on them, the original object An ID 150 is generated, and the generated original object ID 150 is transmitted to the file access management unit 102 via the request / response distribution unit 120.

<応答パケット受信の際の動作>次に、サーバ3から送られる応答パケットを、複数のクライアント1の中から適切なクライアントを選択して転送する際のスイッチ100における動作の手順について説明する。パケット処理部103は、受信したサーバ3からの応答パケットから、応答データ、サーバ3のサーバIPアドレス情報158もしくはサーバMACアドレス情報159等のサーバアドレス情報を抽出し、ファイルアクセス管理部102に送信する。   <Operation in Response Packet Reception> Next, the operation procedure in the switch 100 when the response packet sent from the server 3 is selected from a plurality of clients 1 and transferred will be described. The packet processing unit 103 extracts response data, server address information such as server IP address information 158 or server MAC address information 159 of the server 3 from the received response packet from the server 3, and transmits it to the file access management unit 102. .

ファイルアクセス管理部102のデータ解析部124は、サーバ管理テーブル126を参照し、サーバIPアドレス情報158もしくはサーバMACアドレス情報159と等しい値を持つエントリを検索し、そのエントリのサーバ識別情報154を得る。さらに、データ解析部124は、応答データを解析することにより、応答データに含まれるトランザクションID160を抽出し、トランザクションID管理テーブル125を参照して、サーバ識別情報154とトランザクションID160がともに一致するエントリを検索し、受信した応答データに対応するファイルアクセス要求を送信したクライアント1のクライアントIPアドレス情報161と、クライアントMACアドレス情報162と、ファイルアクセス命令情報163とを得る。   The data analysis unit 124 of the file access management unit 102 refers to the server management table 126, searches for an entry having a value equal to the server IP address information 158 or the server MAC address information 159, and obtains server identification information 154 of the entry. . Furthermore, the data analysis unit 124 analyzes the response data, extracts the transaction ID 160 included in the response data, refers to the transaction ID management table 125, and finds an entry in which both the server identification information 154 and the transaction ID 160 match. The client IP address information 161, the client MAC address information 162, and the file access command information 163 of the client 1 that has searched and transmitted the file access request corresponding to the received response data are obtained.

サーバ3からの応答パケットには、オブジェクトIDが含まれていない場合もある。特定のファイルアクセスサービスのプロトコルやバージョンでは、ファイルアクセス命令情報が応答データに明示されていない場合があるため、データ解析部124は、ファイルアクセス命令情報163を用いて、どの種類の命令に対する応答データかを特定することにより、応答データ中に元オブジェクトIDが含まれているかどうかを判断することができる。   The response packet from the server 3 may not include the object ID. In a specific file access service protocol or version, the file access command information may not be explicitly specified in the response data. Therefore, the data analysis unit 124 uses the file access command information 163 to respond to any type of command. It is possible to determine whether or not the original object ID is included in the response data.

応答データに元オブジェクトID150が含まれている場合は、データ解析部124は、元オブジェクトID150とともに、データ長の定義方法と、サーバ識別情報と、元オブジェクト書き換え命令とをオブジェクトID書き換え部101に送信する。オブジェクトID書き換え部101は、受信した元オブジェクトIDを、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155に書き換え、データ解析部124は、応答データを再構成する。データ解析部124は、応答データに元オブジェクトIDが含まれていない場合には、応答データに変更を加えない。その後、データ解析部124は、クライアントIPアドレス情報161と、クライアントMACアドレス情報162と、応答データをパケット処理部103に送信する。パケット処理部103は、応答パケットを生成し、応答パケットをクライアント1に送信する。   When the response object includes the original object ID 150, the data analysis unit 124 transmits the data length definition method, the server identification information, and the original object rewrite command to the object ID rewrite unit 101 together with the original object ID 150. To do. The object ID rewriting unit 101 rewrites the received original object ID into the compression type information accompanying object ID 151 or the write once type information accompanying object ID 155, and the data analysis unit 124 reconstructs the response data. The data analysis unit 124 does not change the response data when the response data does not include the original object ID. Thereafter, the data analysis unit 124 transmits the client IP address information 161, the client MAC address information 162, and the response data to the packet processing unit 103. The packet processing unit 103 generates a response packet and transmits the response packet to the client 1.

<応答データ受信の際のオブジェクト書き換え部の動作>図9は、応答データを受信した際のオブジェクト書き換え部101の動作を示すフローチャートである。図9に示すように、要求応答分配部120は、応答データに含まれる、元オブジェクトID150とともに、データ長の定義方法と、サーバ識別情報と、元オブジェクト書き換え命令をファイルアクセス管理部120から受信すると、元オブジェクト書き換え命令によって、応答処理部122へ受信したデータをすべて分配する(S100)。   <Operation of Object Rewriting Unit upon Response Data Reception> FIG. 9 is a flowchart showing the operation of the object rewriting unit 101 when response data is received. As illustrated in FIG. 9, the request / response distribution unit 120 receives the data length definition method, the server identification information, and the original object rewrite command from the file access management unit 120 together with the original object ID 150 included in the response data. In response to the original object rewrite command, all the received data is distributed to the response processing unit 122 (S100).

応答処理部122は、受信したデータの定義方法を判別し、元オブジェクトIDのデータ長が固定長であるか否かチェックする(S101)。ステップS101において、固定長である場合には、応答処理部122は、元オブジェクトIDのデータ列の一部を削除して圧縮データを生成し(S102)、削除データ156と、削除データ位置157と、削除アルゴリズムを区別するために付けられたアルゴリズム識別情報153を、アルゴリズムテーブル123に登録する(S103)。   The response processing unit 122 determines how to define the received data, and checks whether the data length of the original object ID is a fixed length (S101). In step S101, if the length is fixed, the response processing unit 122 deletes a part of the data string of the original object ID to generate compressed data (S102), and deletes data 156, deleted data position 157, and so on. Then, the algorithm identification information 153 attached to distinguish the deletion algorithm is registered in the algorithm table 123 (S103).

アルゴリズムテーブル123への登録終了後、応答処理部122は、サーバ識別情報154と、アルゴリズム識別情報153と、圧縮データ152を組み合わせて、圧縮型情報付帯オブジェクトID151を生成し(S104)、その圧縮型情報付帯オブジェクトID151を、要求応答分配部120を経由して、ファイルアクセス管理部102へ送信する(S105)。   After completing the registration in the algorithm table 123, the response processing unit 122 combines the server identification information 154, the algorithm identification information 153, and the compressed data 152 to generate a compression type information-added object ID 151 (S104), and the compression type The information incidental object ID 151 is transmitted to the file access management unit 102 via the request / response distribution unit 120 (S105).

ステップS101において、元オブジェクトID150のデータ長が固定長でない場合には、応答処理部122は、サーバ識別情報154と、アルゴリズム識別情報153と、元オブジェクトID150の3つのデータ長の和を計算し、計算値と定義されている最大データ長を比較する(S106)。   In step S101, if the data length of the original object ID 150 is not a fixed length, the response processing unit 122 calculates the sum of the three data lengths of the server identification information 154, the algorithm identification information 153, and the original object ID 150, The calculated maximum data length is compared with the calculated value (S106).

ステップS106において、最大データ長よりも3つのデータ長の和が長い場合には、応答処理部122は、データ長が固定長である場合と同様の手順で処理を行い(S102〜S105)、3つのデータ長の和が最大データ長よりも短い場合は、削除データ156および削除データ位置157の情報が登録されないエントリとしてのアルゴリズム識別情報153を生成し、アルゴリズムテーブル123へ登録する(S107)。   In step S106, when the sum of the three data lengths is longer than the maximum data length, the response processing unit 122 performs processing in the same procedure as when the data length is a fixed length (S102 to S105). If the sum of the two data lengths is shorter than the maximum data length, the algorithm identification information 153 is generated as an entry in which the information of the deletion data 156 and the deletion data position 157 is not registered, and is registered in the algorithm table 123 (S107).

応答処理部122は、アルゴリズムテーブル123への登録終了後、サーバ識別情報154と、アルゴリズム識別情報153と、元オブジェクトID150を組み合わせて、追記型情報付帯オブジェクトID155を生成し(S108)、要求応答分配部120を経由して、追記型情報付帯オブジェクトID155をファイルアクセス管理部102に送信する(S105)。   After completing the registration in the algorithm table 123, the response processing unit 122 combines the server identification information 154, the algorithm identification information 153, and the original object ID 150 to generate a write-once information-added object ID 155 (S108), and distributes the request response The write-once information incidental object ID 155 is transmitted to the file access management unit 102 via the unit 120 (S105).

なお、本実施形態のスイッチ装置では、サーバ3で公開(エキスポート)する複数のオブジェクトの公開単位、すなわち共有オブジェクト単位で分割されている場合には、そのオブジェクトがその共有オブジェクト単位に含まれるかを識別するための共有オブジェクト単位IDの項目をサーバ情報管理テーブル126のエントリとして追加してもよい。このようにすれば、スイッチ100がオブジェクトを格納するサーバ3だけでなく、オブジェクトが含まれる共有オブジェクト単位も把握することができるようになるため、スイッチ100においてサーバ単位よりもさらに分解能が高い共有オブジェクト単位でのきめ細かい転送管理を実現することが可能となる。   In the switch device according to the present embodiment, when a plurality of objects to be disclosed (exported) by the server 3 are divided in units of public objects, that is, in units of shared objects, are the objects included in the unit of shared objects? An item of shared object unit ID for identifying the server ID may be added as an entry in the server information management table 126. In this way, since the switch 100 can grasp not only the server 3 storing the object but also the shared object unit in which the object is included, the shared object having a higher resolution than the server unit in the switch 100. It is possible to realize fine transfer management in units.

(第2の実施形態)次に、本発明の第2の実施形態のスイッチ装置について説明する。本実施形態のスイッチ装置は、第1の実施形態のスイッチ装置と同様に、図1に示すネットワークファイルシステムに用いられる装置である。   (Second Embodiment) Next, a switch device according to a second embodiment of the present invention will be described. The switch device of this embodiment is a device used for the network file system shown in FIG. 1, similarly to the switch device of the first embodiment.

図10は、本実施形態のスイッチ装置の構成を示すブロック図である。図10に示すように、本実施形態のスイッチ100は、第1の実施形態のスイッチ装置において備えられているオブジェクトID書き換え部101と、ファイルアクセス管理部102と、パケット処理部103とに加え、擬似ファイルシステム105を備えている。擬似ファイルシステム105は、複数のサーバ3のファイルシステム4で構成されている複数のディレクトリツリーを組み合わせ、1つの統合ディレクトリツリーとして管理するためのシステムである。ファイルシステム補完処理部104は、クライアント1からのファイルアクセス要求が、複数サーバ3もしくは複数のファイルシステム4等の複数の送信先に渡ってファイルアクセスを必要とする場合の補完処理を行う。   FIG. 10 is a block diagram showing the configuration of the switch device of the present embodiment. As shown in FIG. 10, in addition to the object ID rewriting unit 101, the file access management unit 102, and the packet processing unit 103 provided in the switch device of the first embodiment, the switch 100 of the present embodiment includes: A pseudo file system 105 is provided. The pseudo file system 105 is a system for managing a single integrated directory tree by combining a plurality of directory trees configured by the file systems 4 of the plurality of servers 3. The file system supplement processing unit 104 performs supplement processing when a file access request from the client 1 requires file access across a plurality of transmission destinations such as a plurality of servers 3 or a plurality of file systems 4.

図11は、本実施形態のスイッチ装置におけるファイルアクセス管理部102の構成を示すブロック図である。図11に示すように、本実施形態のスイッチ装置におけるファイルアクセス管理部102は、第1の実施形態のスイッチ装置において備えられているデータ解析部124と、トランザクションID管理テーブル125と、サーバ情報管理テーブル126とに加え、第4のテーブルの一例である特殊オブジェクトID管理テーブル127を備えている。特殊オブジェクトID管理テーブル127は、複数のサーバ3もしくは複数のファイルシステム4等の複数の送信先に、ファイルアクセスが必要となるような、クライアント1からのファイルアクセス要求を判断するためのテーブルである。さらに、本実施形態のスイッチ装置におけるデータ解析部124は、オブジェクトID書き換え部101やパケット処理部103とのデータ入出力だけでなく、ファイルシステム補完処理部104とのデータの入出力が可能となっている。   FIG. 11 is a block diagram showing the configuration of the file access management unit 102 in the switch device of this embodiment. As shown in FIG. 11, the file access management unit 102 in the switch device of the present embodiment includes a data analysis unit 124, a transaction ID management table 125, and server information management provided in the switch device of the first embodiment. In addition to the table 126, a special object ID management table 127, which is an example of a fourth table, is provided. The special object ID management table 127 is a table for determining a file access request from the client 1 that requires file access to a plurality of transmission destinations such as a plurality of servers 3 or a plurality of file systems 4. . Furthermore, the data analysis unit 124 in the switch device according to the present embodiment can input / output data to / from the file system complementary processing unit 104 as well as data input / output to / from the object ID rewriting unit 101 and the packet processing unit 103. ing.

次に、本実施形態のスイッチ装置であるスイッチ100の動作について説明する。本実施形態のスイッチ装置は、第1の実施形態のスイッチ装置における要求パケットおよび応答パケットを、クライアント1もしくはサーバ3へ適切に振り分ける機能に加え、複数のサーバ3のファイルシステム4上に形成されている複数のディレクトリツリーを擬似ファイルシステム105のディレクトリツリーに統合することによって、複数のサーバ3における個々のファイルシステム4の存在をクライアント1に意識させることなく、スイッチ100の擬似ファイルシステム105のみにアクセスしているかのように振舞わせる機能を有している。   Next, the operation of the switch 100 that is the switch device of the present embodiment will be described. The switch device of this embodiment is formed on the file system 4 of a plurality of servers 3 in addition to the function of appropriately distributing the request packet and the response packet in the switch device of the first embodiment to the client 1 or the server 3. By integrating the plurality of directory trees into the directory tree of the pseudo file system 105, only the pseudo file system 105 of the switch 100 is accessed without making the client 1 aware of the existence of the individual file systems 4 in the plurality of servers 3. It has a function to make it behave as if it is.

擬似ファイルシステム105は、サーバ3によりネットワーク2を介してアクセス可能なものとして公開されているファイルシステム4上の複数のディレクトリツリーにおけるツリー構造を、擬似ファイルシステム105上で自由に組み合わせて、1つのディレクトリツリーにマッピングする。   The pseudo file system 105 is configured by freely combining tree structures in a plurality of directory trees on the file system 4 that are disclosed as accessible by the server 3 via the network 2 on the pseudo file system 105. Map to directory tree.

スイッチ100は、クライアント1から受信したファイルアクセス要求パケットを、単に特定のサーバ3へ振り分けるだけでなく、複数のサーバ3もしくは異なるファイルシステム4にまたがるようなファイルアクセス要求を受け取った場合に、1つのファイルアクセス要求を、複数のファイルアクセス要求に分割して複数のサーバ3もしくはファイルシステム4へ送信し、複数のサーバ3もしくはファイルシステム4から送信された全ての応答データをスイッチ100で1つの応答データに再構成してクライアント1に返信する。   The switch 100 not only distributes the file access request packet received from the client 1 to a specific server 3 but also receives a file access request that spans a plurality of servers 3 or different file systems 4. The file access request is divided into a plurality of file access requests and transmitted to a plurality of servers 3 or file systems 4, and all response data transmitted from the plurality of servers 3 or file systems 4 is converted into one response data by the switch 100. To the client 1.

図12は、擬似ファイルシステム105のディレクトリツリー200の一例を示す図である。図12に示すように、擬似ファイルシステム105は、サーバA(250)で公開されているディレクトリb(221)、およびサーバB(251)で公開されているディレクトリc(221)からのディレクトリツリーのツリー構造を、擬似ファイルシステム105上に形成されたルートディレクトリ220のサブディレクトリからのディレクトリツリーとしてマッピングする。さらに、擬似ファイルシステム105は、サーバB(251)で公開されているディレクトリe(224)からのディレクトリツリーのツリー構造を、ディレクトリb(221)からのディレクトリツリーの下層に存在するディレクトリf(223)のサブディレクトリからのディレクトリツリーとして登録することによって、擬似ファイルシステムディレクトリツリー200を生成する。   FIG. 12 is a diagram illustrating an example of the directory tree 200 of the pseudo file system 105. As shown in FIG. 12, the pseudo file system 105 includes directory trees from the directory b (221) disclosed by the server A (250) and the directory c (221) disclosed by the server B (251). The tree structure is mapped as a directory tree from a subdirectory of the root directory 220 formed on the pseudo file system 105. Further, the pseudo file system 105 converts the tree structure of the directory tree from the directory e (224) disclosed by the server B (251) into the directory f (223) existing below the directory tree from the directory b (221). The pseudo file system directory tree 200 is generated by registering as a directory tree from the sub-directory.

なお、本実施形態のスイッチ装置では、擬似ファイルシステムディレクトリツリー200上におけるディレクトリ名は、サーバ3のファイルシステム4で設定されたディレクトリ名と必ずしも同一にする必要はなく、別のディレクトリ名を設定して、クライアント1に公開してもよい。   In the switch device according to the present embodiment, the directory name on the pseudo file system directory tree 200 does not necessarily have to be the same as the directory name set in the file system 4 of the server 3, and another directory name is set. May be disclosed to the client 1.

擬似ファイルシステム105は、擬似ファイルシステム105のディレクトリツリー200のツリー構造のみを管理しており、オブジェクトのデータ、属性情報、各ファイルシステム4の接合部以外のツリー構造等は、すべてサーバ3が管理を行っている。したがって、スイッチ100では、複数のファイルシステム4を結合しているツリー部分のみの名前解決処理を行い、その他のツリー部分については、サーバ3に処理を任せている。このようにすれば、名前解決処理の負荷を、スイッチ100とサーバ3との間で分散することができる。   The pseudo file system 105 manages only the tree structure of the directory tree 200 of the pseudo file system 105, and the server 3 manages all of the object data, attribute information, and the tree structure other than the junction of each file system 4. It is carried out. Therefore, in the switch 100, name resolution processing is performed only for the tree portions connecting the plurality of file systems 4, and the processing is left to the server 3 for the other tree portions. In this way, the load of the name resolution process can be distributed between the switch 100 and the server 3.

スイッチ100は、例えば、クライアント1から、ディレクトリe(224)に対応するオブジェクトIDや属性情報を取得する命令となる、ディレクトリf(223)に対応するオブジェクトIDを用いたファイルアクセス要求パケットを受信した場合には、その命令に対して正しく応答できるように新しい要求パケットを生成し、ディレクトリf(223)のデータを格納しているサーバA(250)と、ディレクトリe(224)のデータを格納しているサーバB(251)へ要求パケットをそれぞれ送信する。そして、その結果サーバA(250)、サーバB(251)から返信されてくる2つの応答パケットを再構成する処理を行うための管理情報として、擬似ファイルシステム105が用いられる。   For example, the switch 100 has received a file access request packet using the object ID corresponding to the directory f (223), which is an instruction for acquiring the object ID and attribute information corresponding to the directory e (224) from the client 1. In this case, a new request packet is generated so that it can correctly respond to the command, and the server A (250) storing the data of the directory f (223) and the data of the directory e (224) are stored. Request packets are transmitted to the server B (251). As a result, the pseudo file system 105 is used as management information for performing processing to reconstruct two response packets returned from the server A (250) and the server B (251).

スイッチ100は、クライアント1からのファイルアクセス要求により、複数のサーバ3もしくはファイルシステム4へそれぞれ要求データを送るような補完処理を行わなければ正しい応答を返すことができない場合以外は、第1の実施形態のスイッチと同様の手順で処理を行うが、どちらの処理を行うかは、ファイルアクセス管理部102の特殊オブジェクトID管理テーブル127を用いて判断する。   The switch 100 is the first implementation unless a correct response cannot be returned unless a complementary process is performed to send request data to a plurality of servers 3 or file systems 4 in response to a file access request from the client 1. The processing is performed in the same procedure as that of the form switch, but which processing is performed is determined using the special object ID management table 127 of the file access management unit 102.

特殊オブジェクトID管理テーブル127は、図13に示すように、ディレクトリb(221)や、ディレクトリe(224)などの、ディレクトリツリー200の異なるサーバ3上に存在するツリーのつなぎ目にあたるすべてのディレクトリのオブジェクトID164と、補完処理を行わなければならないすべてのファイルアクセス命令情報165からなるエントリによって構成されている。特殊オブジェクトID管理テーブル127には、擬似ファイルシステム105のディレクトリツリー200が生成された時点で、対応するすべてのディレクトリが登録されている。なお、特殊オブジェクトID管理テーブル127に登録するオブジェクトID164は、クライアント1から送信される要求データに含まれる情報付帯オブジェクトIDと照合するため、情報付帯オブジェクトID、すなわち圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155である。このようにすれば、照合時間を短縮することができる。   As shown in FIG. 13, the special object ID management table 127 includes objects of all directories corresponding to joints of trees existing on different servers 3 of the directory tree 200, such as the directory b (221) and the directory e (224). It consists of an entry made up of an ID 164 and all file access command information 165 that must be complemented. In the special object ID management table 127, all corresponding directories are registered when the directory tree 200 of the pseudo file system 105 is generated. Note that the object ID 164 registered in the special object ID management table 127 is collated with the information incidental object ID included in the request data transmitted from the client 1, so that the information incidental object ID, that is, the compressed information additional object ID 151 or the write-once type is recorded. This is the information accompanying object ID 155. In this way, the verification time can be shortened.

次に、クライアント1からの要求パケットやサーバ3からの応答パケットを受信した場合のスイッチ100における動作の手順について詳細に説明する。図14は、本実施形態のスイッチ装置の動作を示すフローチャートである。   Next, an operation procedure in the switch 100 when a request packet from the client 1 or a response packet from the server 3 is received will be described in detail. FIG. 14 is a flowchart showing the operation of the switch device of this embodiment.

図14に示すように、クライアント1からのファイルアクセス要求パケットを受信すると、パケット処理部103は、ファイルアクセス要求データと、クライアント1のクライアントIPアドレス情報160およびクライアントMACアドレス情報161をパケットより抽出し、ファイルアクセス管理部102に送信する(S110)。   As shown in FIG. 14, when the file access request packet from the client 1 is received, the packet processing unit 103 extracts the file access request data, the client IP address information 160 and the client MAC address information 161 of the client 1 from the packet. Then, it is transmitted to the file access management unit 102 (S110).

ファイルアクセス管理部102のデータ解析部124は、受信した要求データに含まれるリードやライトといった命令情報と、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155を抽出し、特殊オブジェクトID管理テーブル127に登録されたオブジェクトID164と命令情報165とのエントリにそれらが該当するものがあるか否か確認する(S111)。   The data analysis unit 124 of the file access management unit 102 extracts the command information such as read and write included in the received request data and the compression type information additional object ID 151 or the write-once information additional object ID 155, and the special object ID management table 127. It is confirmed whether or not there is an entry corresponding to the entry of the object ID 164 and the command information 165 registered in (S111).

要求データから抽出した命令情報と、情報付帯オブジェクトID151もしくは155との2つのデータのうち、特殊オブジェクトID管理テーブル127のエントリに、どちらか1つでも該当しない場合、以降のスイッチ100における要求パケットに関する処理、および前記要求パケットに対応する応答パケットに関する処理は、第1の実施の形態のスイッチ装置における手順で処理が実行される(S112)。   If any one of the two pieces of data of the instruction information extracted from the request data and the information incidental object ID 151 or 155 does not correspond to the entry of the special object ID management table 127, the subsequent request packet in the switch 100 is related. The process and the process related to the response packet corresponding to the request packet are executed according to the procedure in the switch device of the first embodiment (S112).

要求データから取り出した命令情報と、オブジェクトID151もしくは155の2つのデータのうち、特殊オブジェクトID管理テーブル127のエントリにどちらも該当する場合、データ解析部124は、トランザクションID管理テーブル125に必要となるデータをすべて登録した後、受信した要求データをすべてファイルシステム補完処理部104へ送信する(S113)。   The data analysis unit 124 is required for the transaction ID management table 125 when both the instruction information extracted from the request data and the two data of the object ID 151 or 155 correspond to the entry of the special object ID management table 127. After registering all the data, all the received request data is transmitted to the file system complement processing unit 104 (S113).

ファイルシステム補完処理部104は、擬似ファイルシステム105を参照して受信した要求データの解析を行った後、複数のサーバ3もしくはファイルシステム4へ送信する複数の要求データを生成し、パケット管理部103を介して、すべての要求パケットを、関連する複数あるいは1つのサーバ3へ送信する(S114)。なお、本ステップにおいて、1つのサーバ3へ全ての要求パケットの送信するのは、サーバ3が複数のファイルシステム4を備えており、擬似ファイルシステム105上のディレクトリツリー200構成のマッピングが、それぞれのファイルシステム4を接合することで構成されている場合に限られる。   The file system complement processing unit 104 analyzes the request data received with reference to the pseudo file system 105, then generates a plurality of request data to be transmitted to the plurality of servers 3 or the file system 4, and the packet management unit 103 All request packets are transmitted to a plurality of related servers or one server 3 via S1 (S114). In this step, all the request packets are transmitted to one server 3 because the server 3 includes a plurality of file systems 4 and the mapping of the directory tree 200 configuration on the pseudo file system 105 is This is limited to a case where the file system 4 is configured by joining.

スイッチ100のパケット処理部103は、サーバ3に送信した要求パケットに対する応答パケットを受信すると、その応答パケットから、応答データやサーバ3のアドレス情報158、159を抽出し、それらをファイルシステム補完処理部104に送信する(S115)。   When the packet processing unit 103 of the switch 100 receives the response packet to the request packet transmitted to the server 3, the packet processing unit 103 extracts the response data and the address information 158 and 159 of the server 3 from the response packet, and extracts them from the file system complement processing unit It transmits to 104 (S115).

ファイルシステム補完処理部104は、応答データに元オブジェクトID150が含まれている場合には、オブジェクトIDの書き換え命令と、元オブジェクトID150と、サーバ3のアドレス情報158、159とをファイルアクセス管理部102へ送信する。   When the response data includes the original object ID 150, the file system complement processing unit 104 sends the object ID rewrite command, the original object ID 150, and the address information 158 and 159 of the server 3 to the file access management unit 102. Send to.

ファイルアクセス管理部102は、受信したすべての応答データに含まれる元オブジェクトID150をオブジェクトID書き換え部101に送信し、第1の実施形態と同様に、圧縮型情報付帯オブジェクトID151あるいは追記型情報付帯オブジェクトID155に書き換えさせ、その情報付帯オブジェクトIDと、受信したすべての応答データを用いて、クライアント1からの要求データに対する応答データを生成する(S116)。   The file access management unit 102 transmits the original object ID 150 included in all the received response data to the object ID rewriting unit 101, and, as in the first embodiment, the compressed information additional object ID 151 or the write-once information additional object Response data corresponding to the request data from the client 1 is generated using the information supplementary object ID and all received response data (S116).

ファイルアクセス管理部102は、トランザクションID管理テーブル125に登録されているデータと一致するエントリを検索し、クライアント1のアドレス情報を得た後、応答データとクライアント1のアドレス情報をパケット処理部103に送信する(S117)。パケット処理部103は、受信した応答データとクライアント1のアドレス情報とに基づいて応答パケットを生成し、その応答パケットをクライアント1に送信する。   The file access management unit 102 searches for an entry that matches the data registered in the transaction ID management table 125, obtains the address information of the client 1, and then sends the response data and the address information of the client 1 to the packet processing unit 103. Transmit (S117). The packet processing unit 103 generates a response packet based on the received response data and the address information of the client 1, and transmits the response packet to the client 1.

(第3の実施形態)次に、本発明の第3の実施形態のスイッチ装置について説明する。本実施形態のスイッチ装置は、第1の実施形態および第2の実施形態と同様に、図1に示すネットワークファイルシステムに適用される。   (Third Embodiment) Next, a switch device according to a third embodiment of the present invention will be described. The switch device of this embodiment is applied to the network file system shown in FIG. 1 as in the first embodiment and the second embodiment.

図15は、本実施形態のスイッチ装置の構成を示すブロック図である。図15に示すように、本実施形態のスイッチ100は、第1、第2の実施形態のスイッチ装置に備えられているオブジェクトID書き換え部101と、ファイルアクセス管理部102と、パケット処理部103と、第2の実施形態に備えられているファイルシステム補完処理部104と、擬似ファイルシステム105とに加え、、データ移動処理部106を備えている。データ移動処理部106は、各サーバ3のファイルアクセス処理の負荷や、記憶装置5の残り容量に基づいて、擬似ファイルシステム105上の統合ディレクトリツリーのディレクトリ構造を変更することなく、複数サーバ3間でデータの移動を行う。   FIG. 15 is a block diagram showing the configuration of the switch device of this embodiment. As illustrated in FIG. 15, the switch 100 according to the present embodiment includes an object ID rewriting unit 101, a file access management unit 102, a packet processing unit 103, and the switch devices according to the first and second embodiments. In addition to the file system complementary processing unit 104 and the pseudo file system 105 provided in the second embodiment, a data movement processing unit 106 is provided. The data movement processing unit 106 does not change the directory structure of the integrated directory tree on the pseudo file system 105 based on the load of the file access processing of each server 3 and the remaining capacity of the storage device 5. To move the data.

図16は、本実施形態のスイッチ装置におけるファイルアクセス管理部102の構成を示すブロック図である。図16に示すように、ファイルアクセス管理部102は、第1、第2の実施形態のスイッチ装置において備えられているトランザクションID管理テーブル125およびサーバ情報管理テーブル126と、第2の実施形態において備えられている特殊オブジェクトID管理テーブル127に加え、第5のテーブルの一例である移動オブジェクトID管理テーブル128を備えている。移動オブジェクトID管理テーブル128には、複数のサーバ3間でデータを移動した場合に生じるオブジェクトIDの変更による不具合を生じさせないようにする情報がエントリされている。また、移動隠蔽手段の一例を含むデータ解析部124では、オブジェクトID書き換え部101と、パケット処理部103と、ファイルシステム補完処理部104とのデータの入出力だけでなく、データ移動処理部106とのデータの入出力が可能となっている。   FIG. 16 is a block diagram illustrating a configuration of the file access management unit 102 in the switch device according to the present embodiment. As shown in FIG. 16, the file access management unit 102 includes a transaction ID management table 125 and a server information management table 126 that are provided in the switch devices of the first and second embodiments, and a second embodiment. In addition to the special object ID management table 127, a moving object ID management table 128, which is an example of a fifth table, is provided. In the moving object ID management table 128, information is entered so as not to cause a problem due to an object ID change that occurs when data is moved between a plurality of servers 3. In addition, in the data analysis unit 124 including an example of the movement concealment unit, not only input / output of data with the object ID rewriting unit 101, the packet processing unit 103, and the file system complement processing unit 104, but also the data movement processing unit 106 Data input / output is possible.

次に、本実施形態のスイッチ装置の動作について説明する。本実施形態のスイッチ装置は、第1、第2の実施形態のスイッチ装置において備えられていた機能に加え、擬似ファイルシステム105上に構成されている統合ディレクトリツリーのツリー構造を保持したまま、その統合ディレクトリツリーを構成している各サーバ3の公開ディレクトリを元とするツリー構造を、別のサーバ3へコピーしてデータ移動を行った後、ツリー構造のマッピングを変更することによって、クライアント1にデータの移動を隠蔽し、統合ディレクトリツリーの構成を不変としたまま、サーバ3の記憶装置5における容量不足や、各サーバ3におけるファイルアクセス処理の負荷を軽減させる。   Next, the operation of the switch device of this embodiment will be described. In addition to the functions provided in the switch devices of the first and second embodiments, the switch device of the present embodiment retains the tree structure of the integrated directory tree configured on the pseudo file system 105 while maintaining the tree structure thereof. After copying the tree structure based on the public directory of each server 3 constituting the integrated directory tree to another server 3 and moving the data, the client 1 is changed by changing the mapping of the tree structure. The movement of data is concealed, and the capacity of the storage device 5 of the server 3 and the load of file access processing in each server 3 are reduced while the configuration of the integrated directory tree remains unchanged.

サーバ3間におけるデータ移動に伴い、各ディレクトリやファイルなどのオブジェクトに対応するオブジェクトIDも変更する必要があるため、スイッチ100では、データ移動前とデータ移動後のオブジェクトIDの変更履歴を管理し、クライアント1およびサーバ3において、オブジェクトIDの変更による不具合が生じないようにすることによって、データの移動の操作をクライアント1から隠蔽する。   Since the object ID corresponding to the object such as each directory or file needs to be changed along with the data movement between the servers 3, the switch 100 manages the change history of the object ID before and after the data movement, In the client 1 and the server 3, the data movement operation is concealed from the client 1 by preventing the trouble caused by the change of the object ID.

例えば、図12に示されている擬似ファイルシステム105では、サーバB(251)における記憶装置の残り容量が少なく、サーバA(250)の記憶装置の残り容量に余裕があり、サーバB(251)のディレクトリc(222)からのディレクトリツリーにおけるデータと、オブジェクトの所有者、アクセス権などの属性情報を、ツリー構造ごとサーバA(250)にコピーするのが望ましい状況であるとする。本実施形態のスイッチ装置は、図17に示すように、ディレクトリc(225)からのディレクトリツリーを擬似ファイルシステム105のディレクトリツリー200の構造を変えることなくマッピングし直すように擬似ファイルシステム105の情報を更新した後、サーバB(251)のディレクトリc(222)からのディレクトリツリーのデータを削除する。このようにすれば、本実施形態のスイッチ装置では、クライアント1にデータの移動を隠蔽しつつ残り容量を増やすことができるようになるため、ディレクトリc(225)からのディレクトリツリーやディレクトリe(224)からのディレクトリツリーにおけるデータの追加が可能となる。   For example, in the pseudo file system 105 shown in FIG. 12, the remaining capacity of the storage device in the server B (251) is small, the remaining capacity of the storage device in the server A (250) has a margin, and the server B (251) Suppose that it is desirable to copy the data in the directory tree from the directory c (222) and the attribute information such as the object owner and access right to the server A (250) together with the tree structure. As shown in FIG. 17, the switch device according to the present embodiment performs information on the pseudo file system 105 so as to remap the directory tree from the directory c (225) without changing the structure of the directory tree 200 of the pseudo file system 105. Is updated, the directory tree data from the directory c (222) of the server B (251) is deleted. In this way, in the switch device of the present embodiment, the remaining capacity can be increased while concealing the movement of data to the client 1, so that the directory tree from the directory c (225) and the directory e (224) can be obtained. ) From the directory tree can be added.

次に、データ移動操作に関するスイッチ100での動作手順について説明する。データ移動処理部106は、すべてのサーバ3における記憶装置5の残り容量データの監視と、スイッチ100で処理されているファイルアクセス要求パケットや応答パケットに関する履歴データを記録している。そして、データ移動管理部106は、あらかじめ設定しておいた基準よりも、残り容量が少なくなった場合や、特定のサーバ3のみにファイルアクセス要求が集中していた場合に、擬似ファイルシステム105に登録されているデータを参照し、移動元のディレクトリツリーと、移動先を決定し、データのコピーを開始する。   Next, an operation procedure of the switch 100 related to the data movement operation will be described. The data movement processing unit 106 monitors the remaining capacity data of the storage device 5 in all servers 3 and records history data related to file access request packets and response packets processed by the switch 100. Then, when the remaining capacity is smaller than the standard set in advance or when file access requests are concentrated only on the specific server 3, the data movement management unit 106 stores the pseudo file system 105. Refer to the registered data, determine the source directory tree and destination, and start copying data.

データコピーを実行する際に、データ移動処理部106は、クライアント1が既に取得している情報付帯オブジェクトID151、155により、移動データの対象となっているデータにアクセスする場合の不具合に対応するために、データの移動の対象となっているすべてのオブジェクトに関連する情報として、移動元のサーバ3が生成した元オブジェクトID150をオブジェクトID書き換え部101で書き換えた情報付帯オブジェクトID151、155と、移動先のサーバ3で生成された元オブジェクトID150と、サーバ情報管理テーブル126に登録されている移動先のサーバ3に対応したサーバ識別情報154とを、図18に示す移動オブジェクトID管理テーブル128へ登録する。図18に示すように、移動オブジェクトID管理テーブル128は、移動元オブジェクトID166と、移動先オブジェクトID167と、移動先サーバ情報168の情報からなるエントリにより構成されている。   When executing the data copy, the data movement processing unit 106 copes with a problem in the case of accessing the data that is the target of the movement data by using the information supplementary object IDs 151 and 155 that the client 1 has already acquired. In addition, as information related to all objects to which data is to be moved, information supplementary object IDs 151 and 155 obtained by rewriting the original object ID 150 generated by the movement source server 3 by the object ID rewriting unit 101, and the movement destination The original object ID 150 generated by the server 3 and the server identification information 154 corresponding to the destination server 3 registered in the server information management table 126 are registered in the moving object ID management table 128 shown in FIG. . As illustrated in FIG. 18, the moving object ID management table 128 includes entries including information of a movement source object ID 166, a movement destination object ID 167, and movement destination server information 168.

移動オブジェクトID管理テーブル128に登録されているオブジェクトが再び移動する場合には、移動オブジェクトID管理テーブル128の移動先オブジェクトID167が移動元オブジェクトID166の項目に追加され、残りの移動先オブジェクトID167と移動先サーバ情報168の項目は最新の状態に更新される。   When an object registered in the moving object ID management table 128 moves again, the movement destination object ID 167 of the movement object ID management table 128 is added to the item of the movement source object ID 166 and moved with the remaining movement destination object ID 167. The item of the destination server information 168 is updated to the latest state.

移動先オブジェクトID167に登録された情報のうち、ファイルアクセス補完処理部104での処理が必要となる可能性のあるオブジェクトを示すオブジェクトIDとしては、元オブジェクト150ではなく、圧縮型情報付帯オブジェクトID151および追記型情報付帯オブジェクトID155を登録する。この場合には、移動先サーバ情報168へはサーバ識別情報154を登録しないでおく。   Of the information registered in the destination object ID 167, the object ID indicating an object that may need to be processed by the file access supplement processing unit 104 is not the original object 150, but the compression type information accompanying object ID 151 and The write-once information incidental object ID 155 is registered. In this case, the server identification information 154 is not registered in the destination server information 168.

すべてのデータのコピーが完了し、移動元のサーバ3のデータを削除した後、、データ移動処理部106は、移動先のサーバ3でコピーを行ったディレクトリツリーに対して、ネットワーク2を介したファイルアクセスを可能とする公開ディレクトリの設定が行われていない場合は、移動先のサーバ3へ公開ディレクトリの設定を行って、擬似ファイルシステム105におけるツリー構造のマッピング情報の更新と、特殊オブジェクトID管理テーブル127に登録されているエントリのデータの更新を行う。   After all the data has been copied and the data of the source server 3 has been deleted, the data movement processing unit 106 transmits the directory tree copied by the destination server 3 via the network 2. If the public directory that enables file access is not set, the public directory is set in the destination server 3 to update the tree structure mapping information in the pseudo file system 105 and to manage the special object ID. The data of the entry registered in the table 127 is updated.

次に、データ移動が行われた後で、クライアント1からの要求パケットおよびサーバ3からの応答パケットを受信した場合のスイッチ100における詳細な処理手順について詳細に説明する。図19は、パケットを受信した場合のスイッチ100の動作を示すフローチャートである。   Next, a detailed processing procedure in the switch 100 when the request packet from the client 1 and the response packet from the server 3 are received after the data movement is performed will be described in detail. FIG. 19 is a flowchart showing the operation of the switch 100 when a packet is received.

クライアント1からのファイルアクセス要求パケットを受信すると、パケット処理部103は、ファイルアクセス要求データと、クライアント1のクライアントIPアドレス情報160およびクライアントMACアドレス情報161がパケットから抽出し、それらをファイルアクセス管理部102に送信する(S120)。   When the file access request packet is received from the client 1, the packet processing unit 103 extracts the file access request data, the client IP address information 160 and the client MAC address information 161 of the client 1 from the packet, and extracts them from the file access management unit. (S120).

データ解析部124は、受信した要求データを解析し、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155を抽出し、そのIDが移動オブジェクトID管理テーブル128に登録されているか否かを確認する(S121)。   The data analysis unit 124 analyzes the received request data, extracts the compression-type information incidental object ID 151 or the write-once information additional object ID 155, and confirms whether the ID is registered in the moving object ID management table 128. (S121).

ステップS121において、抽出された圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155が、移動オブジェクトID管理テーブル128の移動元オブジェクトID166として登録されていない場合には、以降の要求データ、およびその要求データに対応する応答データに関する処理は、第2の実施形態のステップS111からの処理が実行される(S122)。   In step S121, if the extracted compression type information incidental object ID 151 or write-once information additional object ID 155 is not registered as the movement source object ID 166 of the movement object ID management table 128, the subsequent request data and the request The process related to the response data corresponding to the data is executed from step S111 of the second embodiment (S122).

ステップS121において、抽出された圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155が、移動オブジェクトID管理テーブル128の移動元オブジェクトID166として登録されている場合には、データ解析部124は、移動先サーバ情報168にサーバ識別情報154が登録されているかを確認する(S123)。   In step S121, when the extracted compression type information incidental object ID 151 or write-once information additional object ID 155 is registered as the movement source object ID 166 of the movement object ID management table 128, the data analysis unit 124 moves the movement destination. It is confirmed whether the server identification information 154 is registered in the server information 168 (S123).

ステップS123における確認後、移動先サーバ情報168にサーバ識別情報154が登録されていない場合には、要求データに含まれていた圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155を、移動先オブジェクトID167に登録されている圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155に変更し(S124)、以降の要求データ、およびその要求データに対応する応答データに関する処理は第2の実施形態のステップS111からの処理が実行される(S125)。   After the confirmation in step S123, if the server identification information 154 is not registered in the destination server information 168, the compression type information additional object ID 151 or the write-once information additional object ID 155 included in the request data is replaced with the destination object. The process is changed to the compression type information incidental object ID 151 or the write-once information additional object ID 155 registered in the ID 167 (S124), and the processing related to the subsequent request data and the response data corresponding to the request data is the step of the second embodiment. Processing from S111 is executed (S125).

ステップS123における確認後、移動先サーバ情報168にサーバ識別情報154が登録されている場合には、データ解析部124は、要求データに含まれていた圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155を、移動先オブジェクトID167として登録されている元オブジェクトID150に変更し、移動先サーバ情報168に登録されているサーバ識別情報154を抽出する(S126)。   After the confirmation in step S123, if the server identification information 154 is registered in the destination server information 168, the data analysis unit 124 includes the compression type information supplementary object ID 151 or the write-once type information supplementary object included in the request data. The ID 155 is changed to the original object ID 150 registered as the destination object ID 167, and the server identification information 154 registered in the destination server information 168 is extracted (S126).

データ解析部124は、トランザクションID管理テーブル125のエントリに必要な情報をすべて登録した後、移動オブジェクトID管理テーブル128から得られたサーバ識別情報154に基づいて、サーバ情報管理テーブル126から、サーバIPアドレス情報158、およびサーバMACアドレス情報159を抽出し、パケット処理部103へ、元オブジェクトID150に変更した要求データと、サーバIPアドレス情報158と、サーバMACアドレス情報159とを送信する(S127)。   After registering all necessary information in the entry of the transaction ID management table 125, the data analysis unit 124, from the server information management table 126, based on the server identification information 154 obtained from the moving object ID management table 128, The address information 158 and the server MAC address information 159 are extracted, and the request data changed to the original object ID 150, the server IP address information 158, and the server MAC address information 159 are transmitted to the packet processing unit 103 (S127).

パケット処理部103は、ファイルアクセス管理部102から送信されたデータを用いて要求パケットを生成し、サーバ3に送信する(S128)。   The packet processing unit 103 generates a request packet using the data transmitted from the file access management unit 102, and transmits the request packet to the server 3 (S128).

その要求パケットに対するサーバ3からの応答パケットに関するスイッチ100の処理は、第1の実施形態のスイッチでの応答パケットの処理が実行される(S129)。   As for the processing of the switch 100 regarding the response packet from the server 3 for the request packet, the processing of the response packet in the switch of the first embodiment is executed (S129).

(第4の実施形態)次に、本発明の第4の実施形態のスイッチ装置について説明する。本実施形態のスイッチ装置は、第3の実施形態のスイッチ装置を変形したものである。第3の実施形態のスイッチ装置では、一度にデータ移動するオブジェクトの数が非常に多い場合に、ファイルアクセス管理部102内の移動オブジェクトID管理テーブル128のエントリ数も非常に多くなって、それらのエントリを検索する時間が増大するようになる。   (Fourth Embodiment) Next, a switch device according to a fourth embodiment of the present invention will be described. The switch device of this embodiment is a modification of the switch device of the third embodiment. In the switching device according to the third embodiment, when the number of objects whose data is moved at a time is very large, the number of entries in the moving object ID management table 128 in the file access management unit 102 is also very large. The time to search for entries increases.

そこで、本実施形態のスイッチ装置では、図21に示すように、アルゴリズム識別情報153およびサーバ識別情報154とともに、データが移動したことを示すデータ移動フラグ169をオブジェクトIDに組み込み、オブジェクトID書き換え部101は、フラグ付き圧縮型情報付帯オブジェクトID171、もしくはフラグ付き追記型情報付帯オブジェクトID172を生成する際に、データ移動の対象となったオブジェクトに関しては、データ移動フラグ169を真に設定する。   Therefore, in the switch device of the present embodiment, as shown in FIG. 21, together with the algorithm identification information 153 and the server identification information 154, a data movement flag 169 indicating that the data has moved is incorporated into the object ID, and the object ID rewriting unit 101 Sets the data movement flag 169 to true for the object that is the object of data movement when generating the flagged compressed information incidental object ID 171 or the flagged write-once information incidental object ID 172.

そして、本実施形態のスイッチ装置では、クライアント1からの要求データに含まれるフラグ付き圧縮型情報付帯オブジェクトID171もしくはフラグ付き追記型情報付帯オブジェクトID172を、データ解析部124において解析する際に、データ移動フラグが真である場合に限り、データ移動オブジェクトID管理テーブル128を検索する。このようにすれば、本実施形態のスイッチ装置では、第3の実施形態のスイッチ装置よりも効率のよい検索処理を行うことが可能となる。   In the switch device according to the present embodiment, when the data analysis unit 124 analyzes the flagged compressed information incidental object ID 171 or the flagged write-once information additional object ID 172 included in the request data from the client 1, Only when the flag is true, the data movement object ID management table 128 is searched. If it does in this way, in the switch apparatus of this embodiment, it will become possible to perform a search process more efficient than the switch apparatus of 3rd Embodiment.

(第5の実施形態)次に、本発明の第5の実施形態のスイッチ装置について説明する。本実施形態のスイッチ装置は、第3の実施形態のスイッチ装置を変形したものである。第3の実施形態のスイッチ装置では、一度にデータ移動するオブジェクトの数が非常に多い場合に、ファイルアクセス管理部102内の移動オブジェクトID管理テーブル128のエントリ数が非常に多くなって、エントリを検索する時間が増大するようになる。   (Fifth Embodiment) Next, a switch device according to a fifth embodiment of the present invention will be described. The switch device of this embodiment is a modification of the switch device of the third embodiment. In the switch device according to the third embodiment, when the number of objects to which data is moved at a time is very large, the number of entries in the moving object ID management table 128 in the file access management unit 102 becomes very large, Search time will increase.

そこで、本実施形態のスイッチ装置では、1回のデータ移動を1世代として世代番号をつけ、1回のデータ移動が終了するたびに世代を1つずつ増やし、現在の世代番号をデータ解析部124で記憶しておき、移動オブジェクトID管理テーブル128では、世代番号ごとにテーブルが作成される。   Therefore, in the switch device of the present embodiment, a generation number is assigned with one data movement as one generation, and the generation is incremented by one every time one data movement is completed, and the current generation number is assigned to the data analysis unit 124. In the moving object ID management table 128, a table is created for each generation number.

さらに、オブジェクトID書き換え部101では、図22に示すように、アルゴリズム識別情報153およびサーバ識別情報154とともに、データ移動世代番号172をオブジェクトIDに組み込むようにし、世代番号付き圧縮型情報付帯オブジェクトID173もしくは世代番号付き追記型情報付帯オブジェクトID174を生成する。   Further, as shown in FIG. 22, the object ID rewriting unit 101 incorporates the data migration generation number 172 together with the algorithm identification information 153 and the server identification information 154 into the object ID, and the compression type information-attached object ID 173 with generation number or A write-once information appending object ID 174 with a generation number is generated.

データ解析部124は、クライアント1からの要求データに含まれる、世代番号付き圧縮型情報付帯オブジェクトID173もしくは世代番号付き追記型情報付帯オブジェクトID174をデータ解析部124にて解析して得られた世代番号に基づいて、移動オブジェクトID管理テーブル128におけるその世代番号のテーブルのみを検索する。このようにすれば、本実施形態のスイッチ装置は、第3の実施形態のスイッチ装置よりも効率の良い検索処理を行うことが可能となる。   The data analysis unit 124 uses the data analysis unit 124 to analyze the generation number obtained by analyzing the compression type information-added object ID 173 with generation number or the write-once information additional object ID 174 with generation number included in the request data from the client 1. Based on the above, only the table of the generation number in the moving object ID management table 128 is searched. In this way, the switch device of the present embodiment can perform a search process more efficiently than the switch device of the third embodiment.

(第6の実施形態)次に、図15および図23から図25を参照して、本発明の第6の実施形態を説明する。ここでは、本発明による擬似ファイルシステムのディレクトリツリーを具体的に説明する。図23は、本発明による擬似ファイルシステムのディレクトリツリー200を具体的に構成した場合の例を示している。サーバA(250)のディレクトリf(223)の下に、サーバB(251)にあるディレクトリe(224)を連結する場合、第6の実施形態では、ディレクトリf(223)の下にダミーディレクトリe’が作成される。そして、擬似ファイルシステム105のツリー構成情報より、ファイルアクセス管理部102の特殊オブジェクトIDテーブル127に、ディレクトリf(223)の下のオブジェクトを検索するコマンド(NFSのLookupなど)がクライアントから発行された場合をピックアップできるようにディレクトリf(223)のオブジェクトIDが登録される。その結果、当該要求がクライアントより発行された場合、サーバB(251)のディレクトリe(224)が擬似ファイルシステムのディレクトリツリー200通りに構成されているようにクライアントに見せるため、ファイルシステム補完処理部104はサーバA(250)とサーバB(251)に要求を分割送付して、その応答より必要な情報を集めて、クライアントに応答を返している。また、属性設定のコマンドがディレクトリe(224)に発行された場合も特殊処理が必要なため、ディレクトリe(224)のオブジェクトIDも特殊オブジェクトIDテーブル127に登録されている。この場合は、属性設定のコマンドをダミーディレクトリe’にも反映させるため、やはり、ファイルシステム補完処理部104はサーバA(250)とサーバB(251)に要求を分割送付する。   (Sixth Embodiment) Next, a sixth embodiment of the present invention will be described with reference to FIGS. 15 and 23 to 25. FIG. Here, the directory tree of the pseudo file system according to the present invention will be specifically described. FIG. 23 shows an example where the directory tree 200 of the pseudo file system according to the present invention is specifically configured. When the directory e (224) in the server B (251) is connected under the directory f (223) of the server A (250), in the sixth embodiment, the dummy directory e under the directory f (223). 'Is created. Then, from the tree configuration information of the pseudo file system 105, a command (such as NFS Lookup) for searching for an object under the directory f (223) is issued from the client to the special object ID table 127 of the file access management unit 102. The object ID of the directory f (223) is registered so that the case can be picked up. As a result, when the request is issued from the client, the file system complementing processing unit is displayed to show the client that the directory e (224) of the server B (251) is configured according to the directory tree 200 of the pseudo file system. 104 divides and sends the request to the server A (250) and the server B (251), collects necessary information from the response, and returns the response to the client. Further, since special processing is also required when an attribute setting command is issued to the directory e (224), the object ID of the directory e (224) is also registered in the special object ID table 127. In this case, in order to reflect the attribute setting command also in the dummy directory e ', the file system supplement processing unit 104 again sends the request to the server A (250) and the server B (251).

いま、クライアントが、ディレクトリf(223)を、サーバA(250)のディレクトリgの下に移動させる要求を出したとする(この場合は管理者による移動ではないため、実際に擬似ファイルシステムの構成も変化する)。図24は、従来のファイルシステムの動作にならって、本発明によるスイッチ装置が移動を実施した結果を示している。この場合、ディレクトリgの下にディレクトリf(223)が移動されて、ディレクトリ新f(300)(実際のディレクトリの名前が変わるわけではないが、対応するオブジェクトIDは変わるため区別の目的で新fとした)が生成され、その下に見えていたディレクトリe(224)は、サーバB(251)からその実態が実際にサーバA(250)へ移動されて、特殊オブジェクトIDテーブル127の内容がクリアされる。これは正常な動作結果であり、クライアントは自分の操作が完遂されたと認識するが、サーバ間でのファイル移動が発生するため、移動させるファイルの分量によっては、完了までに非常に長い時間がかかることがあった。   Now, it is assumed that the client issues a request to move the directory f (223) to the directory g of the server A (250) (in this case, since it is not moved by the administrator, the configuration of the pseudo file system is actually set). Also changes). FIG. 24 shows the result of the movement of the switch device according to the present invention following the operation of the conventional file system. In this case, the directory f (223) is moved under the directory g and the directory new f (300) (the actual directory name does not change, but the corresponding object ID changes, so the new f is used for the purpose of distinction). The directory e (224) seen underneath is actually moved from the server B (251) to the server A (250), and the contents of the special object ID table 127 are cleared. Is done. This is a normal operation result, and the client recognizes that its own operation has been completed, but it takes a very long time to complete depending on the amount of files to be moved because files move between servers. There was a thing.

これに対し図25は、第6の実施形態による同じ移動の結果を示している。この場合、ディレクトリf(223)が、ディレクトリ新f(300)となるところは図24の例と同じであるが、次に、データ移動処理部106のクライアント操作対応部は、このディレクトリ新f(300)の下に同時にダミーディレクトリe’(225)を新しいダミーディレクトリ新e’(301)として移動する。そして、特殊オブジェクトIDテーブル127の内容のうち、登録されているオブジェクトIDをディレクトリf(223)のものからディレクトリ新f(300)のものに変更する。これにより、同様にクライアントの要求は完遂されるが、サーバB(251)のディレクトリe(224)配下のファイルは移動する必要がないため、非常に高速に移動を完了することができる。   In contrast, FIG. 25 shows the result of the same movement according to the sixth embodiment. In this case, the directory f (223) becomes the directory new f (300), which is the same as in the example of FIG. 24. Next, the client operation handling unit of the data movement processing unit 106 uses this directory new f ( At the same time, the dummy directory e ′ (225) is moved as a new dummy directory new e ′ (301). Then, among the contents of the special object ID table 127, the registered object ID is changed from that of the directory f (223) to that of the directory new f (300). As a result, the client request is completed in the same manner, but the file under the directory e (224) of the server B (251) does not need to be moved, so that the movement can be completed at a very high speed.

(第7の実施形態)次に、本発明の第7の実施形態のスイッチ装置について図面を参照して詳細に説明する。本実施形態のスイッチ装置は、第1の実施形態および第2の実施形態のスイッチ装置を変形したものである。本実施形態は第1の実施形態および第2の実施形態の処理の高速化を目的としている。   (Seventh Embodiment) Next, a switch device according to a seventh embodiment of the present invention will be described in detail with reference to the drawings. The switch device of this embodiment is a modification of the switch device of the first embodiment and the second embodiment. The purpose of this embodiment is to increase the processing speed of the first and second embodiments.

第1の実施形態で、スイッチ100は応答データにオブジェクトIDが含まれている場合にはオブジェクトID書き換え部101でオブジェクトIDを書き換える必要があるため、応答データに含まれるトランザクションIDを元にトランザクションID管理テーブル125からどの種類の命令に対する応答データであるか検索して求めている。また、第2の実施形態では応答パケットがファイルシステム補完処理部104により生成された要求に対する応答であるかを上記と同じくトランザクションID管理テーブル125を検索して求めている。この処理はトランザクションIDがOSIモデルの第5〜7層に属するため、ソフトウエアによりトランザクションIDを抽出してトランザクションID管理テーブル125のエントリと逐次比較をすることになり、時間のかかる処理となっている。   In the first embodiment, since the switch 100 needs to rewrite the object ID in the object ID rewriting unit 101 when the object ID is included in the response data, the transaction ID is based on the transaction ID included in the response data. The management table 125 is searched for which type of instruction the response data is. In the second embodiment, whether the response packet is a response to the request generated by the file system supplement processing unit 104 is obtained by searching the transaction ID management table 125 as described above. Since this process belongs to the 5th to 7th layers of the OSI model, the transaction ID is extracted by software and sequentially compared with the entry of the transaction ID management table 125, which is a time-consuming process. Yes.

本実施形態ではハードウエア処理ができるOSIモデルの第4層以下の情報を用いてどの種類の命令に対する応答であるかを判定できるようにする。例としてOSIモデルの第4層に属するポート番号を用いた場合を説明する。ここでいうポート番号としては、TCP(transmission control protocol)/IPやUDP(user datagram protocol)でのポート番号が例示される。   In the present embodiment, it is possible to determine which type of instruction is a response using information in the fourth and lower layers of the OSI model capable of hardware processing. As an example, a case where a port number belonging to the fourth layer of the OSI model is used will be described. Examples of the port numbers here include port numbers in TCP (transmission control protocol) / IP and UDP (user datagram protocol).

図26は、第7の実施形態でのファイルアクセス管理部を示しており、新たに、分類テーブルの一例である処理分類テーブル129が追加されている。図27に処理分類テーブル129の構成の一例を示す。   FIG. 26 shows a file access management unit in the seventh embodiment, and a processing classification table 129 which is an example of a classification table is newly added. FIG. 27 shows an example of the configuration of the processing classification table 129.

まずサーバ3からの応答パケットに対して行う処理の違いに着目して命令の種類を分けて処理分類情報176を割り当てる。この分け方は命令ごとに分けてもよいし、処理の違いに着目して同様な処理を行う複数の命令をグループ化してもよい。ただし少なくとも、応答データにオブジェクトIDが含まれない命令グループ、応答データにオブジェクトIDが含まれる命令グループ、ファイルシステム補完処理部で生成された命令グループの3つに分けることにより高速化が可能になる。   First, paying attention to the difference in processing to be performed on the response packet from the server 3, the type of instruction is divided and the processing classification information 176 is assigned. This division method may be divided for each instruction, or a plurality of instructions that perform the same processing may be grouped by paying attention to the difference in processing. However, it is possible to increase the speed by dividing into at least an instruction group in which the response data does not include the object ID, an instruction group in which the response data includes the object ID, and an instruction group generated by the file system complement processing unit. .

スイッチ100はクライアント1からの要求データをサーバ3に転送する際にどの種類の命令であるかによってスイッチ100からサーバ3へのポート番号を変える。そのポート番号情報175と処理分類情報176を処理分類テーブル129に格納しておく。ポート番号の選択はクライアント1からの要求ごとに空きポート番号を割り当てる方法でもよいし、命令の種類に対してあらかじめ固定的にポート番号を決めておく方法でもよい。ただし前者の方法では命令ごとに処理分類テーブル129のエントリを作ることになるため、処理高速化のためには後者の方法が望ましい。   The switch 100 changes the port number from the switch 100 to the server 3 depending on the type of command when transferring the request data from the client 1 to the server 3. The port number information 175 and the processing classification information 176 are stored in the processing classification table 129. Selection of a port number may be a method of assigning an empty port number for each request from the client 1 or a method of fixedly determining a port number in advance for the type of command. However, since the former method creates an entry in the processing classification table 129 for each instruction, the latter method is desirable for speeding up the processing.

サーバ3からの応答パケットはスイッチ100が要求を送ったポート番号に対して送られる。ファイルアクセス管理部102で、サーバ情報管理テーブル126を検索して得たサーバ識別情報154とポート番号情報175をもとに処理分類テーブル129を検索し、処理分類情報176、クライアントIPアドレス情報161、クライアントMACアドレス情報162を得る。ここまでの処理はOSIモデルの第4層以下をハードウエアで検索できるLSIを使えば高速に処理可能である。   The response packet from the server 3 is sent to the port number to which the switch 100 sent the request. The file access management unit 102 searches the processing classification table 129 based on the server identification information 154 and the port number information 175 obtained by searching the server information management table 126, processing classification information 176, client IP address information 161, Client MAC address information 162 is obtained. Processing up to this point can be performed at high speed by using an LSI that can search the fourth and lower layers of the OSI model with hardware.

処理分類情報176から、応答パケットにオブジェクトIDが含まれない命令の場合には上記で得たクライアントIPアドレス情報161、クライアントMACアドレス情報162を元にIPアドレスとMACアドレスを変換するのみで応答パケットを転送することができるためきわめて高速な処理が可能になる。オブジェクトIDが含まれる命令の場合にはオブジェクトID書き換え部101で第1の実施形態と同様な処理を行う。ファイルシステム補完処理部104で生成された命令の場合にはファイルシステム補完処理部104で第2の実施形態と同様な処理を行う。   In the case of a command from which the object ID is not included in the response packet from the processing classification information 176, the response packet is simply converted from the IP address and the MAC address based on the client IP address information 161 and the client MAC address information 162 obtained above. Can be transferred at extremely high speed. In the case of an instruction including an object ID, the object ID rewriting unit 101 performs the same processing as in the first embodiment. In the case of an instruction generated by the file system supplement processing unit 104, the file system supplement processing unit 104 performs the same processing as in the second embodiment.

このように、処理分類情報176によりサーバ3からの応答パケットを分類し、必要な処理のみ行うようにすることで処理の高速化が可能になる。   As described above, by classifying the response packet from the server 3 based on the processing classification information 176 and performing only necessary processing, the processing speed can be increased.

図28で以上のことを実際のハードウエア構成に即したブロックに分けて説明する。データ解析部124は高速処理が可能なデータ解析高速処理部107と処理に時間のかかるデータ解析非高速処理部108に分けることができる。データ解析高速処理部107にはサーバ情報管理テーブル126と処理分類テーブル129がつながり、データ解析非高速処理部108にはトランザクションID管理テーブル125と特殊オブジェクトID管理テーブル127がつながっている。応答データにオブジェクトIDが含まれない命令はポートX、応答データにオブジェクトIDが含まれる命令はポートY、ファイルシステム補完処理部104で生成する命令はポートZを用いてサーバ3に送信する。サーバ3からの応答はポートXの場合はデータ解析高速処理部107だけで処理されるため高速処理が可能となる。ポートYの場合はデータ解析非高速処理部108で処理される。第2の実施形態の場合にファイルシステム補完処理部104を経由していたのに比較して、高速に処理可能である。ポートZの場合はファイルシステム補完処理部104で処理される。この場合もあらかじめファイルシステム補完処理部104で生成された命令に対する応答であることがわかっているので余計な処理が割愛できる効果がある。   The above will be described with reference to FIG. 28 divided into blocks according to the actual hardware configuration. The data analysis unit 124 can be divided into a data analysis high-speed processing unit 107 capable of high-speed processing and a data analysis non-high-speed processing unit 108 that takes time. A server information management table 126 and a processing classification table 129 are connected to the data analysis high speed processing unit 107, and a transaction ID management table 125 and a special object ID management table 127 are connected to the data analysis non-high speed processing unit 108. The command that does not include the object ID in the response data is transmitted to the server 3 using the port X, the command that includes the object ID in the response data is transmitted to the port Y, and the command generated by the file system supplement processing unit 104 is transmitted to the server 3. Since the response from the server 3 is processed only by the data analysis high speed processing unit 107 in the case of port X, high speed processing is possible. In the case of port Y, the data analysis non-high speed processing unit 108 performs processing. Compared to the case where the file system supplement processing unit 104 is used in the case of the second embodiment, the processing can be performed at high speed. In the case of port Z, processing is performed by the file system complement processing unit 104. Also in this case, since it is known that the response is a response to the command generated by the file system complement processing unit 104 in advance, there is an effect that unnecessary processing can be omitted.

なお本実施形態では、命令の区別にポート番号を用いる場合を例に説明したが、ポート番号以外にもIPアドレス、VLAN(Virtual LAN)タグ、MPLS(multiprotocol label switching)ラベル、MACアドレス等のOSIモデル第4層以下情報であれば同様に実施可能である。   In this embodiment, the case where the port number is used for distinguishing the instruction has been described as an example. However, in addition to the port number, OSI such as an IP address, a VLAN (Virtual LAN) tag, an MPLS (multiprotocol label switching) label, and a MAC address are used. The information can be similarly implemented as long as it is information on the model fourth and lower layers.

(第8の実施形態)次に、本発明の第8の実施形態のスイッチ装置について説明する。本実施形態のスイッチ装置は、第2の実施形態のスイッチ装置を変形したものである。本実施形態では第2の実施形態の処理を高速化することを目的としている。   (Eighth Embodiment) Next, a switch device according to an eighth embodiment of the present invention will be described. The switch device of this embodiment is a modification of the switch device of the second embodiment. The purpose of this embodiment is to speed up the processing of the second embodiment.

第2の実施形態ではステップS111においてクライアント1からの要求パケットに含まれるオブジェクトID、命令情報が特殊オブジェクトID管理テーブル127のエントリに該当するかを全ての要求について行う必要がある。オブジェクトIDは例えばNFSでは32バイトの長さがあり、OSIモデルの第5〜7層に属するためソフトウエア処理になり時間がかかる。またほとんどの場合には特殊オブジェクトID管理テーブルのエントリに該当しないため、結果的には行わなくてもよい処理を行っていることになる。   In the second embodiment, in step S111, it is necessary for all requests to check whether the object ID and command information included in the request packet from the client 1 correspond to the entry of the special object ID management table 127. For example, the object ID has a length of 32 bytes in NFS and belongs to the 5th to 7th layers of the OSI model. In most cases, the entry does not correspond to an entry in the special object ID management table, and as a result, processing that does not need to be performed is performed.

本実施形態ではファイルシステムのつなぎ目となるオブジェクトに特殊な属性を記録しておき、ステップS111の判定を行わずに全ての要求をサーバ3に転送し、応答パケットに含まれる属性が前述の特殊な属性であるかをスイッチ100で判定し、特殊な属性である場合のみファイルシステム補完処理を行うことで処理を高速化する。   In the present embodiment, a special attribute is recorded in an object serving as a joint of the file system, all requests are transferred to the server 3 without performing the determination in step S111, and the attribute included in the response packet has the special attribute described above. Whether the attribute is an attribute is determined by the switch 100, and the file system complementing process is performed only when the attribute is a special attribute, thereby speeding up the processing.

図29を例に説明する。第2の実施形態では、サーバA(250)、サーバB(251)の全てのオブジェクトに対する要求についてオブジェクトIDが特殊オブジェクトID管理テーブル127のエントリに該当するか比較を行う。しかし図29のオブジェクトグループA(226)、オブジェクトグループB(227)はエントリに該当しないため、結果的には行わなくてよい処理を行っている。そこで本実施形態ではあらかじめサーバA(250)のディレクトリf(223)の下のダミーのディレクトリe’(225)に特殊な属性を記憶させておく。スイッチ100はクライアント1からのディレクトリeに対応するオブジェクトIDや属性情報を取得する命令に対して第1の実施形態と同様な処理を行いサーバA(250)に転送する。サーバAはダミーのディレクトリe’(225)のオブジェクトIDと疑似ファイルシステム105により記憶された特殊な属性を含む応答パケットをスイッチ100に送る。スイッチ100は応答パケットに特殊な属性が含まれているかを判定し、この例の場合は含まれているのでファイルシステム補完処理部にデータを送りステップS113からの処理が行われる。もし含まれていない場合は第1の実施形態と同様な処理を行う。上記フローチャートは、図30のようになる。ステップS130で第1の実施形態と同様な処理を行い、サーバ3からの応答をステップS131で属性をチェックする。特殊な属性であれば第2の実施形態のステップS113へ移り、特殊な属性でなければステップS132で第1の実施形態と同様な処理を行う。   An example will be described with reference to FIG. In the second embodiment, it is compared whether the object ID corresponds to an entry in the special object ID management table 127 for requests for all objects of the server A (250) and the server B (251). However, since object group A (226) and object group B (227) in FIG. 29 do not correspond to entries, processing that does not need to be performed as a result is performed. Therefore, in this embodiment, special attributes are stored in advance in a dummy directory e ′ (225) under the directory f (223) of the server A (250). The switch 100 performs a process similar to that of the first embodiment on the command for acquiring the object ID and attribute information corresponding to the directory e from the client 1 and transfers the instruction to the server A (250). The server A sends a response packet including the object ID of the dummy directory e ′ (225) and the special attribute stored by the pseudo file system 105 to the switch 100. The switch 100 determines whether or not a special attribute is included in the response packet, and in this case, since it is included, data is sent to the file system complement processing unit, and the processing from step S113 is performed. If not included, the same processing as in the first embodiment is performed. The flowchart is as shown in FIG. In step S130, the same processing as in the first embodiment is performed, and the attribute of the response from the server 3 is checked in step S131. If it is a special attribute, the process proceeds to step S113 of the second embodiment, and if it is not a special attribute, the same processing as that of the first embodiment is performed in step S132.

このように、本実施形態では、スイッチ100は、クライアント1からの要求パケット受信時に結果的に行わなくてもよい特殊オブジェクトID管理テーブル127の検索を行わないため、高速な処理が可能になる。その代わりにステップS131でサーバ3からの応答パケットに特殊な属性が含まれているかを判定する必要があるが、特殊オブジェクトID管理テーブル127が複数のエントリがありえることに対してこの判定は応答パケットの特定位置を特殊な属性と比較するだけであり、データ長もオブジェクトIDがNFSであれば32バイトの比較が最低必要なのに対して実装次第で短くすることが可能である。よってステップS111とステップS131を比較するとステップS131は高速な処理が可能である。   As described above, in the present embodiment, the switch 100 does not search the special object ID management table 127 that does not need to be performed as a result when the request packet is received from the client 1, so that high-speed processing is possible. Instead, in step S131, it is necessary to determine whether the response packet from the server 3 includes a special attribute. This determination is made in response to the fact that the special object ID management table 127 can have a plurality of entries. Is compared with a special attribute, and the data length can be shortened depending on the implementation, while the comparison of 32 bytes is minimum if the object ID is NFS. Therefore, when step S111 is compared with step S131, step S131 can be processed at high speed.

(第9の実施形態)以下では、図15、図31および図32を参照して、本発明の第9の実施形態を詳細に説明する。サーバL(310)およびサーバM(311)はマルチプロトコル対応サーバであり、ネットワークを介したファイルシステムのサービスを行うプロトコルとして、プロトコルAとプロトコルBを解釈することができる。また、プロトコルAは、本発明によるスイッチ装置およびサーバAも対応しているとする。図31に示したように、本発明以外にも、同様の目的を達成するため、クライアントに改造を施す、あるいはサーバに分散ファイルシステムを導入するなどして、プロトコルBによるアクセスに対して他の統合ディレクトリツリーのイメージ320を提供している事例がある。このような環境下において、本発明のスイッチ装置は、プロトコルB向けの統合ディレクトリツリーのイメージ320を取り込み、プロトコルAによるアクセスに対しても同様の統合ディレクトリツリーのイメージ320を提供することができる。   (Ninth Embodiment) In the following, the ninth embodiment of the present invention will be described in detail with reference to FIGS. The server L (310) and the server M (311) are multi-protocol compatible servers, and can interpret the protocol A and the protocol B as protocols for performing file system services via the network. Further, it is assumed that the protocol A corresponds to the switch device and the server A according to the present invention. As shown in FIG. 31, other than the present invention, in order to achieve the same purpose, other modifications are made to access by protocol B by modifying the client or introducing a distributed file system to the server. There is an example where an image 320 of an integrated directory tree is provided. Under such an environment, the switch device of the present invention can capture the integrated directory tree image 320 for the protocol B and provide the same integrated directory tree image 320 for access by the protocol A.

具体的には、擬似ファイルシステム105内のエージェントが、統合ディレクトリツリーのイメージ320の情報を入手する。次に、管理者の指示により、統合ディレクトリツリーのイメージ320のルートであるディレクトリAを、スイッチ装置上の擬似ファイルシステムディレクトリツリー200のどこに配置するかを決定する。この例では、擬似ファイルシステムディレクトリツリー200のディレクトリg(すなわち、サーバA(250)のディレクトリg)の下にディレクトリAが見えるように設定する場合を説明する。   Specifically, the agent in the pseudo file system 105 obtains information on the image 320 of the integrated directory tree. Next, in accordance with an instruction from the administrator, it is determined where the directory A, which is the root of the image 320 of the integrated directory tree, is arranged in the pseudo file system directory tree 200 on the switch device. In this example, a case will be described in which the directory A is set to be visible under the directory g of the pseudo file system directory tree 200 (that is, the directory g of the server A (250)).

この場合、スイッチ装置はサーバAのディレクトリgの下にダミーディレクトリA’(302)を作成し、さらにサーバLにプロトコルAでアクセスして、そのディレクトリAの下にダミーディレクトリB’(303)を作成する。続いて、特殊オブジェクトID管理テーブル127の内容を、これら2箇所のファイルシステムのつなぎ目がシームレスにクライアントからアクセスできるよう、ディレクトリgとA、ディレクトリAとBのつなぎ目の情報を、たとえば図32に記したように登録する。以上により、上述のように、つなぎ目に関係するアクセス要求については、ファイルシステム補完処理部104は要求を分割し適切なサーバに送付して、その応答より必要な情報を集めて、クライアントに応答を返すので、擬似ファイルシステムディレクトリツリー200のイメージ通りの統合ツリーが提供できる。   In this case, the switching device creates a dummy directory A ′ (302) under the directory g of the server A, accesses the server L with the protocol A, and creates a dummy directory B ′ (303) under the directory A. create. Next, the contents of the special object ID management table 127 are shown in FIG. 32, for example, for the joints of the directories g and A and the directories A and B so that the joints of these two file systems can be seamlessly accessed from the client. Register as you did. As described above, for the access request related to the joint as described above, the file system supplement processing unit 104 divides the request and sends it to an appropriate server, collects necessary information from the response, and sends a response to the client. Since it is returned, an integrated tree according to the image of the pseudo file system directory tree 200 can be provided.

(第10の実施形態)次に、本発明の第10の実施の形態のスイッチ装置について説明する。本実施形態のスイッチ装置は、第1、第2および第3の実施形態と同様に、図1に示すネットワークファイルシステムに適用される。本実施形態は、複数のサーバ3間でのオブジェクト群の移動操作を、クライアント1からの移動対象オブジェクト群へのファイルアクセスを停止させずに行うことを目的としている。すなわち第1〜第3の実施形態のスイッチ装置では、複数のサーバを統合管理してクライアントにシングルシステムイメージのファイルサービスを提供することができるが、ユーザがサーバ上のオブジェクト(ファイル)に実際にアクセス(書込みや読出し)を行っている最中にオブジェクトの再配置を行おうとすると、そのアクセスの期間中はアクセスしようとした際に決定したオブジェクトIDを使い続ける形態となっているので、ユーザのアクセスが中断したり、適切な再配置を行えないことになる。そこでこの第10の実施形態では、ユーザが現にサーバ上のオブジェクトにアクセスしているタイミングであっても管理者側ではオブジェクトの再配置を行うことができ、しかも、オブジェクトの再配置などが行われたことをユーザに隠蔽できるスイッチ装置について説明する。   (Tenth Embodiment) Next, a switch device according to a tenth embodiment of the present invention will be described. The switch device of this embodiment is applied to the network file system shown in FIG. 1 as in the first, second, and third embodiments. The object of the present embodiment is to perform an object group movement operation between a plurality of servers 3 without stopping file access from the client 1 to the movement target object group. That is, in the switch devices of the first to third embodiments, a plurality of servers can be integratedly managed and a single system image file service can be provided to a client. However, a user actually applies an object (file) on a server. If an object is rearranged during an access (write or read), the object ID determined when the access is attempted is used during the access period. Access will be interrupted and proper relocation will not be possible. Therefore, in the tenth embodiment, even at the timing when the user is actually accessing the object on the server, the administrator can rearrange the object, and the rearrangement of the object is performed. A switch device capable of concealing this from the user will be described.

この実施形態では、第3の実施形態に関連して図15を用いて説明したスイッチ装置を使用する。すなわちスイッチ100は、第1、第2、第3の実施形態のスイッチ装置に備えられているオブジェクトID書き換え部101と、ファイルアクセス管理部102と、パケット処理部103と、第2、第3の実施形態に備えられているファイルシステム補完処理部104と、擬似ファイルシステム105とに加え、第3の実施形態に備えられているデータ移動処理部106を備えている。   In this embodiment, the switch device described with reference to FIG. 15 in relation to the third embodiment is used. That is, the switch 100 includes the object ID rewriting unit 101, the file access management unit 102, the packet processing unit 103, the second, and third, which are included in the switch devices of the first, second, and third embodiments. In addition to the file system supplement processing unit 104 and the pseudo file system 105 provided in the embodiment, a data movement processing unit 106 provided in the third embodiment is provided.

図33は、本実施形態におけるファイルアクセス管理部102を示すブロック図である。ファイルアクセス管理部102は、第1、第2、第3の実施形態のスイッチ装置において備えられているトランザクションID管理テーブル125およびサーバ情報管理テーブル126と、第2、第3の実施形態において備えられている特殊オブジェクトID管理テーブル127に加えて、移動処理を行うオブジェクト群の管理を行う移動オブジェクト状態管理テーブル130を備えている。   FIG. 33 is a block diagram showing the file access management unit 102 in this embodiment. The file access management unit 102 is provided in the transaction ID management table 125 and the server information management table 126 provided in the switch devices of the first, second, and third embodiments, and in the second and third embodiments. In addition to the special object ID management table 127, a moving object state management table 130 for managing a group of objects to be moved is provided.

次に、本実施形態のスイッチ装置の動作について説明する。本実施の形態のスイッチ装置は、第1、第2、第3の実施形態のスイッチ装置において備えられていた機能に加え、擬似ファイルシステム105上に構成されている統合ディレクトリツリーを構成している、各サーバ3のオブジェクトとディレクトリツリー構造を別のサーバ3へコピーをして、移動処理を行っている際に、クライアント1からの移動処理対象オブジェクトへの読み出しや書き込みなどのファイルアクセス要求の転送処理を、オブジェクトの移動処理状態によって変化させることにより、データ移動処理中であることをクライアント1に隠蔽する。   Next, the operation of the switch device of this embodiment will be described. The switch device according to the present embodiment constitutes an integrated directory tree configured on the pseudo file system 105 in addition to the functions provided in the switch devices according to the first, second, and third embodiments. When the object and directory tree structure of each server 3 is copied to another server 3 and the migration process is performed, a file access request such as reading or writing from the client 1 to the migration target object is transferred. By changing the processing depending on the object movement processing state, the client 1 is concealed from the data movement processing.

例えば、第3の実施形態の例で挙げたように、サーバB(251)のディレクトリc(222)からのディレクトリツリーにおけるオブジェクト群のデータと、オブジェクトの所有者、アクセス権などの属性情報を、ストレージ容量の不足といった理由により、ツリー構造ごとサーバA(250)へコピーするのが望ましい状況であったとする。オブジェクトの移動は、前記オブジェクト群のデータをコピーして、図12の擬似ファイルシステム105のマッピング情報を更新し、サーバB(251)からコピーを行った部分を削除することで終了するが、オブジェクトのコピー中に、データの更新などのファイルアクセス操作を要求された際、データの不一致が生じないように、クライアント1からのファイルアクセスをスイッチ100で制御することで、ファイルアクセスを停止することのない、移動処理を実行することが可能となる。   For example, as described in the example of the third embodiment, the object group data in the directory tree from the directory c (222) of the server B (251), and the attribute information such as the owner of the object, the access right, etc. Assume that it is desirable to copy the entire tree structure to the server A (250) because of a shortage of storage capacity. The movement of the object is terminated by copying the data of the object group, updating the mapping information of the pseudo file system 105 in FIG. 12, and deleting the portion copied from the server B (251). The file access from the client 1 is controlled by the switch 100 so that a data mismatch does not occur when a file access operation such as data update is requested during copying of the file. It is possible to execute the moving process.

次に、データの移動処理中の操作に関するスイッチ100での動作について説明する。データ移動処理部106は、すべてのサーバ3における記憶装置5の残り容量データの監視と、スイッチ100で処理されているファイルアクセス要求パケットや応答パケットに関する履歴データを記録している。そして、データ移動処理部106は、あらかじめ設定しておいた基準よりも、残り容量が少なくなった場合や、特定のサーバ3のみにファイルアクセス要求が集中していた場合に、擬似ファイルシステム105に登録されているデータを参照し、移動元のサーバ3のディレクトリツリーと、移動先のサーバ3の移動場所を決定する。   Next, the operation of the switch 100 related to the operation during the data movement process will be described. The data movement processing unit 106 monitors the remaining capacity data of the storage device 5 in all servers 3 and records history data related to file access request packets and response packets processed by the switch 100. Then, the data movement processing unit 106 sends the pseudo file system 105 to the pseudo file system 105 when the remaining capacity is smaller than a preset standard or when file access requests are concentrated only on a specific server 3. By referring to the registered data, the directory tree of the source server 3 and the destination location of the destination server 3 are determined.

データのコピーを実行する前に、データ移動処理部106は、移動元のサーバ3から、移動元のディレクトリツリーのオブジェクト群のディレクトリツリーの構成情報と、すべての元オブジェクトID150を抽出し、前記元オブジェクトID150は、オブジェクトID書き換え部101において、圧縮型情報付帯オブジェクトID151、および追記型情報付帯オブジェクトIDに変換した後、ファイルアクセス管理部102の移動オブジェクト状態管理テーブル130へ登録する。   Before executing the data copy, the data movement processing unit 106 extracts the configuration information of the directory tree of the object group of the migration source directory tree and all the original object IDs 150 from the migration source server 3, and The object ID 150 is registered in the moving object state management table 130 of the file access management unit 102 after the object ID rewriting unit 101 converts the object ID 150 into the compression type information accompanying object ID 151 and the write-once information accompanying object ID.

移動オブジェクト状態管理テーブル130は、図34のように、移動元の圧縮型情報付帯オブジェクトID151、もしくは追記型情報付帯オブジェクトID155が登録されている移動元オブジェクトID166と、移動先の追記型情報付帯オブジェクトID151と追記型情報付帯オブジェクトID155が登録される移動先オブジェクトID167、移動処理の進行状態の情報を表す進行状態情報177と、対象オブジェクトのディレクトリツリー上の親オブジェクトに相当するオブジェクトの移動オブジェクト状態管理テーブル130上の付与番号を情報としてもつ、親オブジェクト番号178、コピー動作中のクライアント1からの更新履歴情報を登録する更新ログ情報179、対象オブジェクトがディレクトリであるかファイルであるかを示すオブジェクト属性情報180、移動先のサーバ3に対応したサーバ識別情報154を登録する移動先サーバ情報168からなるエントリにより構成されている。   As shown in FIG. 34, the moving object state management table 130 includes a movement source object ID 166 in which a compression source information-attached object ID 151 or a write-once information additional object ID 155 is registered, and a destination information-added information object. The destination object ID 167 in which the ID 151 and the write-once information additional object ID 155 are registered, the progress state information 177 indicating the progress state information of the movement process, and the moving object state management of the object corresponding to the parent object on the directory tree of the target object Parent object number 178 having information assigned number on table 130, update log information 179 for registering update history information from client 1 during copying operation, whether target object is directory or file Object attribute information 180 indicating whether there are constituted by entry to be from the destination server information 168 for registering server identification information 154 corresponding to the destination server 3.

進行状態情報177へは、コピー処理が行われていないことを表す、未コピー状態、実際にコピー処理を行っている最中であることを表す、コピー中状態、コピーが終了したことを表す、コピー終了状態、移動処理が終了したことを示す、移動終了状態が登録され、各処理の状態により、未コピー状態→コピー中状態→コピー終了状態→移動終了状態という順番で登録が変更される。   The progress status information 177 indicates that the copy process is not being performed, indicates that the copy process is not being performed, indicates that the copy process is actually being performed, indicates that the copy process is being performed, and indicates that the copy has been completed. The copy end state and the move end state indicating the end of the move process are registered, and the registration is changed in the order of non-copy state → copying state → copy end state → movement end state depending on the state of each process.

したがって、データ移動処理部106によって、データコピーが実行される前に、移動対象となったすべてのオブジェクトに対し、移動元オブジェクトID166と、ディレクトリ構成情報として、親オブジェクト番号178、およびオブジェクト属性情報180と、移動先サーバ情報168が登録されるとともに、進行状態情報177が、未コピー状態にセットされる。また、移動処理を行うオブジェクト群のディレクトリツリー上、最上位に位置するディレクトリに相当するオブジェクトのエントリの親オブジェクト番号178は0を登録する。   Therefore, before the data copy is executed by the data movement processing unit 106, the migration source object ID 166, the parent object number 178, and the object attribute information 180 are provided as directory configuration information for all the objects to be moved. Then, the destination server information 168 is registered, and the progress status information 177 is set to an uncopied status. In addition, 0 is registered as the parent object number 178 of the entry of the object corresponding to the directory located at the top of the directory tree of the object group to be moved.

ここで、この実施形態の処理の概要を図35を用いて説明する。まず、移動対象のオブジェクトを決定するとともに、移動対象となる全てのオブジェクトに関する情報を移動オブジェクト状態管理テーブル130にマップとして登録する。次に、オブジェクトの移動を開始し、それに伴なって、マップ(移動オブジェクト状態管理テーブル130)の更新を行い、移動の終了を確認する。その際、オブジェクトを小さな移動処理単位に分割し、移動処理単位を1つずつ移動元から移動先にコピーするものとし、コピー後、コピーされたオブジェクトの同期を確認するとともに、上述した擬似ファイルシステムにおけるディレクトリの付け替えを行う(FS分岐の作成)。その際、コピー終了領域への更新は、データ移動処理部106によってブロックする。1つずつ移動処理単位をコピーすることを繰り返して、最終的に移動が終了したら、移動元にあるオリジナルのオブジェクトを削除し、これによって処理が完了する。   Here, the outline of the processing of this embodiment will be described with reference to FIG. First, an object to be moved is determined and information regarding all objects to be moved is registered in the moving object state management table 130 as a map. Next, the movement of the object is started, and accordingly, the map (moving object state management table 130) is updated to confirm the end of the movement. At that time, the object is divided into small movement processing units, and the movement processing units are copied one by one from the movement source to the movement destination. After copying, the synchronization of the copied object is confirmed, and the pseudo file system described above is used. Change the directory in (Create FS branch). At this time, the update to the copy end area is blocked by the data movement processing unit 106. Copying the movement processing units one by one is repeated, and when the movement is finally finished, the original object at the movement source is deleted, and the process is thereby completed.

次に、データ移動処理部106によって行われるオブジェクト群の移動処理の詳細について、図36のフローチャートを用いて説明する。オブジェクト移動処理部106は、まず、移動オブジェクト状態管理テーブル130へ移動対象となるすべてのオブジェクトに関する情報を登録した後(S140)、親オブジェクト番号178より判別した、ディレクトリ階層上もっとも上位のディレクトリとなるオブジェクトと、親オブジェクト番号178より判別した、前述のオブジェクトの下層に含まれる1階層分のすべてのオブジェクトの移動処理を開始し(S141)、移動元サーバ3から移動先サーバ3へのコピーを実行する(S142)。データ移動処理部106は、実際にコピー処理を行うオブジェクトの移動オブジェクト状態管理テーブル130中の移動先オブジェクトID167へ、移動先のサーバ3から抽出した元オブジェクトID150を、オブジェクトID書き換え部101により、圧縮型情報付帯オブジェクトID151、および追記型情報付帯オブジェクトID155に変換したものを登録後、進行状態情報177がコピー中状態にセットし、移動元から移動先へのコピーを開始する。処理移動先へのコピー処理の終了とともに、進行状態情報177は、コピー終了状態にセットされる。進行状態情報177が、コピー中状態であるオブジェクトへクライアント1からの更新要求が発生した場合、データ解析部124は、更新データ以外の書き込み位置情報などを履歴情報として、更新ログ情報179に追記すする。当初のコピー処理が終了した後、更新ログ情報179に情報が登録されているかを確認し(S143)、登録されていれば、更新ログ情報179より更新差分のみのコピー処理を実行して、更新ログ情報179をクリアした後、進行状態情報177をコピー終了状態へセットする(S144)。   Next, details of object group movement processing performed by the data movement processing unit 106 will be described with reference to the flowchart of FIG. The object movement processing unit 106 first registers information on all objects to be moved in the moving object state management table 130 (S140), and then becomes the highest directory in the directory hierarchy determined from the parent object number 178. The migration processing of all objects for one layer included in the lower layer of the above-mentioned object determined from the object and the parent object number 178 is started (S141), and copying from the migration source server 3 to the migration destination server 3 is executed. (S142). The data migration processing unit 106 compresses the original object ID 150 extracted from the migration destination server 3 to the migration destination object ID 167 in the migration object state management table 130 of the object to be actually copied by the object ID rewriting unit 101. After registering the object converted into the type information accompanying object ID 151 and the write-once type information accompanying object ID 155, the progress state information 177 is set to the copying state, and copying from the movement source to the movement destination is started. The progress status information 177 is set to the copy end status when the copy processing to the processing destination is completed. When an update request is issued from the client 1 to an object whose progress status information 177 is in a copying state, the data analysis unit 124 adds write position information other than update data as history information to the update log information 179. To do. After the initial copy process is completed, it is confirmed whether or not information is registered in the update log information 179 (S143). If registered, the copy process of only the update difference is executed from the update log information 179, and the update is performed. After the log information 179 is cleared, the progress status information 177 is set to the copy end status (S144).

一方、ステップS143において更新ログ情報が登録されていない場合には、1階層分のオブジェクトの進行状態情報177がすべてコピー終了状態にセットされた後、データ移動処理部106は、擬似ファイルシステム105に登録されている統合ディレクトリツリー情報のうち、コピーが終了した部分の移動元のオブジェクト部分のマッピングを移動先のオブジェクトへのマッピングとして変更を加えた後、マッピングを変更したオブジェクトの進行状態情報177を移動終了状態へセットする(S145)。そして前述の最上位ディレクトリに相当するオブジェクトの下層に含まれる1階層分のオブジェクトの中に、オブジェクト属性情報180に登録されている情報がディレクトリの属性であるオブジェクトが存在する、つまりサブディレクトリとなるオブジェクトが存在するかを確認し(S146)、サブディレクトリが存在する場合、データ移動処理部106は、そのサブディレクトリとなるオブジェクトから1階層分のすべてのオブジェクトを、最上位ディレクトリの場合と同様にして、コピー処理を行い(S147)、擬似ディレクトリ105のマッピング情報を変更する。サブディレクトリが存在しない場合、すなわち全ての処理が終了している場合には、ステップS148に移行して、移動元のデータを削除する。   On the other hand, if the update log information is not registered in step S143, after all the progress status information 177 of the object for one layer is set to the copy end state, the data movement processing unit 106 stores in the pseudo file system 105. Of the registered integrated directory tree information, after changing the mapping of the source object part of the part that has been copied as the mapping to the destination object, the progress status information 177 of the object whose mapping has been changed is displayed. Set to the movement end state (S145). Among the objects for one layer included in the lower layer of the object corresponding to the top-level directory, an object whose information is registered in the object attribute information 180 is a directory attribute, that is, a subdirectory. Whether or not the object exists is checked (S146), and if the subdirectory exists, the data movement processing unit 106 sets all the objects for one layer from the object as the subdirectory in the same manner as in the case of the top directory. The copy process is performed (S147), and the mapping information of the pseudo directory 105 is changed. When the subdirectory does not exist, that is, when all the processes have been completed, the process proceeds to step S148, and the source data is deleted.

このようにして、サブディレクトリの有無を確認し、1階層分ずつディレクトリごとにディレクトリツリーをたどって移動処理を実行し、移動オブジェクト状態管理テーブル130に登録されたすべてのオブジェクトの進行状態情報177が、移動終了状態にセットされた後、移動元のサーバ3に存在する移動対象となったオブジェクトをすべて削除して、すべての移動処理を終了する(S148)。   In this way, the presence / absence of sub-directories is confirmed, the migration process is executed by following the directory tree for each directory one layer at a time, and the progress status information 177 of all objects registered in the moving object status management table 130 is obtained. After being set to the movement end state, all the objects to be moved existing in the movement source server 3 are deleted, and all movement processes are ended (S148).

次に、データ移動処理部106により移動処理が行われている時のクライアント1からのファイルアクセス要求パケット、および応答パケットのスイッチ100での処理方法の詳細について説明する。クライアント1からのファイルアクセス要求は、データや属性の読み出しを実行する読み出し操作、データの書き込みや属性変更などを実行する更新操作、オブジェクトを新しく作成する新規作成操作、オブジェクトを削除する削除操作があり、スイッチ100は各操作によって処理方法を変更している。各操作におけるスイッチ100での処理方法を図37から図41までのフローチャートを用いて説明する。   Next, details of a method of processing the file access request packet from the client 1 and the response packet in the switch 100 when the data movement processing unit 106 performs the movement processing will be described. File access requests from the client 1 include a read operation for reading data and attributes, an update operation for writing data and changing attributes, a new creation operation for creating a new object, and a delete operation for deleting an object. The switch 100 changes the processing method according to each operation. A processing method using the switch 100 in each operation will be described with reference to flowcharts of FIGS.

クライアント1のファイルアクセス要求パケットを受信すると、パケット処理部103は、ファイルアクセス要求データと、クライアント1のクライアントIPアドレス情報160およびクライアントMACアドレス情報161を要求パケットから抽出し、それらをファイルアクセス管理部102へ送信する(S150)。   When the file access request packet of the client 1 is received, the packet processing unit 103 extracts the file access request data, the client IP address information 160 and the client MAC address information 161 of the client 1 from the request packet, and extracts them from the file access management unit It transmits to 102 (S150).

データ解析部124は、受信した要求データを解析し、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155に含まれるサーバ識別情報154を抽出し、移動オブジェクト状態管理部130の移動先サーバ情報168に一致するサーバ識別情報154がないか確認する(S151)。   The data analysis unit 124 analyzes the received request data, extracts the server identification information 154 included in the compression type information incidental object ID 151 or the write-once information additional object ID 155, and moves the destination server information 168 of the moving object state management unit 130. It is confirmed whether there is server identification information 154 that matches (S151).

前述したサーバ識別情報154が移動先サーバ情報168に存在しない場合、以降のスイッチ100における操作は第2の実施形態における要求パケット、および応答パケットの処理と同様の方法とる(S152)。   When the server identification information 154 described above does not exist in the destination server information 168, the subsequent operation in the switch 100 takes the same method as the processing of the request packet and the response packet in the second embodiment (S152).

一方、ステップS151においてサーバ識別情報154が移動先サーバ情報168に存在する場合は、移動オブジェクト状態管理テーブル130の移動元オブジェクトID166に圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155が登録されているか、エントリを検索して確認する(S153)。   On the other hand, if the server identification information 154 exists in the destination server information 168 in step S151, the compression type information incidental object ID 151 or the write-once information additional object ID 155 is registered in the movement source object ID 166 of the movement object state management table 130. The entry is searched for and confirmed (S153).

ここで、移動元オブジェクトID166に、一致する圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトIDがない場合、以降のスイッチ100における操作は第2の実施形態における要求パケット、および応答パケットの処理と同様の方法をとる(S154)。一方、移動元オブジェクトID166に圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトIDが存在する場合、データ解析部124は、要求データからどのような操作要求であるかを判別する(S155)。   Here, when the source object ID 166 does not have a matching compression-type information incidental object ID 151 or write-once information additional object ID, the subsequent operation in the switch 100 is the processing of the request packet and the response packet in the second embodiment. A similar method is taken (S154). On the other hand, when the compression source information accompanying object ID 151 or the write-once information accompanying object ID exists in the movement source object ID 166, the data analysis unit 124 determines what kind of operation request is made from the request data (S155).

ステップS155において、要求データから得られた操作要求が読み出し操作であった場合(S160)には、移動オブジェクト状態管理テーブル130の該当する移動元オブジェクトID166のエントリの進行状態情報177を参照し、未コピー状態、コピー中状態、コピー済み状態のいずれかの状態であった場合(S161)、移動元のサーバ3へ要求パケットを転送することになり(S162)、以降のスイッチ100における操作は、第2の実施形態における要求パケット、および応答パケットの処理と同様の方法をとる(S163)。   In step S155, when the operation request obtained from the request data is a read operation (S160), the progress status information 177 of the entry of the corresponding movement source object ID 166 in the movement object state management table 130 is referred to, When the copy state, the copying state, or the copied state has been reached (S161), the request packet is transferred to the source server 3 (S162). The same method as the processing of the request packet and the response packet in the second embodiment is adopted (S163).

ステップS161において、未コピー、コピー中、コピー済みのいずれでもない場合は、移動済み状態であった場合(S164)であり、移動先のサーバ3へ要求パケットを転送することになり(S165)、移動オブジェクト状態管理テーブル130の該当した移動元オブジェクトID166のエントリの移動先オブジェクトID167に登録されている圧縮型情報付帯オブジェクトID151、もしくは追記型情報付帯オブジェクトID155に変換し(S166)、以降のスイッチ100における操作は、第2の実施形態における要求パケット、および応答パケットの処理と同様の方法をとる(S163)。   In step S161, if it is not uncopied, being copied, or copied, it is in the moved state (S164), and the request packet is transferred to the destination server 3 (S165). The object is converted into the compression type information accompanying object ID 151 or the write-once type information accompanying object ID 155 registered in the movement destination object ID 167 of the entry of the corresponding movement source object ID 166 in the movement object state management table 130 (S166), and the subsequent switch 100 The operation in is the same method as the processing of the request packet and the response packet in the second embodiment (S163).

ステップS155において要求データから得られた操作要求が更新操作であった場合(S170)、移動オブジェクト状態管理テーブル130の該当する移動元オブジェクトID166のエントリの進行状態情報177を参照し、未コピー状態であった場合(S171)、移動元のサーバ3へ要求パケットを転送することになり(S172)、以降のスイッチ100における操作は、第2の実施形態における要求パケット、および応答パケットの処理と同様の方法をとる(S173)。   If the operation request obtained from the request data in step S155 is an update operation (S170), the progress status information 177 of the entry of the corresponding movement source object ID 166 in the movement object state management table 130 is referred to, and in an uncopied state. If there is (S171), the request packet is transferred to the source server 3 (S172), and the subsequent operation in the switch 100 is the same as the processing of the request packet and the response packet in the second embodiment. The method is taken (S173).

ステップS171において未コピー状態でない場合には、進行状態情報177から操作対象がコピー中かどうかを判断し、コピー中状態であった場合(S174)、移動元サーバ3へ要求パケットを転送することになり(S175)、その該当エントリの更新ログ情報179に、書き込み位置情報などの更新データ以外のメタ情報を追記し(S176)、以降のスイッチ100における操作は、第2の実施形態における要求パケット、および応答パケットの処理と同様に方法をとる。ただし、移動元サーバ3からの応答データが、クライアント1に削除権限がないなどの理由でエラーとなっている場合は、応答データをクライアント1へ転送し、移動オブジェクト状態管理テーブル130の更新ログ情報179へ登録したデータを削除する(S177)。   If it is not in the uncopied state in step S171, it is determined whether or not the operation target is being copied from the progress status information 177. If it is in the copying state (S174), the request packet is transferred to the source server 3. (S175), meta information other than update data such as write position information is added to the update log information 179 of the corresponding entry (S176), and the subsequent operation in the switch 100 is the request packet in the second embodiment, And the method is the same as the processing of the response packet. However, if the response data from the movement source server 3 is an error because the client 1 has no deletion authority, the response data is transferred to the client 1 and the update log information of the moving object state management table 130 is updated. The data registered in 179 is deleted (S177).

ステップS174においてコピー中でない場合には、進行状態情報177を参照して操作対象がコピー済みであるかどうかを判断し、コピー終了状態であった場合(S178)、移動元サーバ3および移動先サーバ3の両方へ転送することになり(S179)、トランザクションID管理テーブル125に必要な情報を登録した後、要求パケットに含まれる圧縮型情報付帯オブジェクトID151、もしくは追記型情報付帯オブジェクトID155をオブジェクトID書き換え部101で変換した元オブジェクトID150と、圧縮型情報付帯オブジェクトID151もしくは追記型情報付帯オブジェクトID155から抽出したサーバ識別情報154を元に、サーバ情報管理テーブル126から抽出した移動元サーバ3のIPアドレスやMACアドレス情報などの転送先のアドレス情報をファイルシステム補完処理部104に送る。   If copying is not in progress in step S174, it is determined whether or not the operation target has been copied by referring to the progress status information 177. If the copy has been completed (S178), the source server 3 and destination server 3 (S179), and after registering necessary information in the transaction ID management table 125, the object ID rewrite is performed on the object ID 151 associated with the compressed information or the object ID 155 associated with the write-once information included in the request packet. The IP address of the source server 3 extracted from the server information management table 126 based on the original object ID 150 converted by the unit 101 and the server identification information 154 extracted from the compressed information additional object ID 151 or the write-once information additional object ID 155 M Send a transfer destination address information such as C address information to the file system complementing unit 104.

同様にして、該当移動元オブジェクトID166のエントリの移動先オブジェクトID167に登録されている、圧縮型情報付帯オブジェクトID151、もしくは追記型情報付帯オブジェクトID155をオブジェクトID書き換え部101で変換した元オブジェクトID150と、移動先サーバ情報168に登録されているサーバ識別情報154を元に、サーバ情報管理テーブル126から抽出した移動先サーバ3のIPアドレスやMACアドレス情報などの転送先のアドレス情報をファイルシステム補完処理部104に送る。   Similarly, the original object ID 150 converted by the object ID rewriting unit 101 from the compression type information incidental object ID 151 or the write-once information additional object ID 155 registered in the movement destination object ID 167 of the entry of the corresponding movement source object ID 166, Based on the server identification information 154 registered in the destination server information 168, the destination address information such as the IP address and MAC address information of the destination server 3 extracted from the server information management table 126 is stored in the file system complement processing unit. 104.

ファイルシステム補完処理部104では、ファイルアクセス管理部102より受け取った、移動元サーバ3向けのデータと、移動先サーバ3向けのデータを元に、要求パケットを移動元サーバ3、および移動先サーバ3へパケット処理部103を介してスイッチ100から送信する(S180)。   In the file system complementing processing unit 104, based on the data for the migration source server 3 and the data for the migration destination server 3 received from the file access management unit 102, the request packet is transmitted to the migration source server 3 and the migration destination server 3. From the switch 100 via the packet processing unit 103 (S180).

移動元サーバ3、および移動先サーバ3からのそれぞれの応答パケットをスイッチ100で受け取り、パケット処理部103でそれぞれの応答データを抽出して、ファイルシステム補完処理部104に送り、ファイルシステム補完処理部104において、2つの応答データを受け取ったことを確認した後、応答データをファイルアクセス管理部102へ送る。以降のスイッチ100での操作は、第1の実施形態の応答パケットの処理方法と同様な方法をとり、クライアント1へ応答パケットが返される(S181)。   The switch 100 receives each response packet from the source server 3 and the destination server 3, extracts each response data at the packet processing unit 103, sends the response data to the file system supplement processing unit 104, and the file system supplement processing unit After confirming that the two response data have been received at 104, the response data is sent to the file access management unit 102. Subsequent operations at the switch 100 take the same method as the response packet processing method of the first embodiment, and the response packet is returned to the client 1 (S181).

ステップS178においてコピー済みでない場合は、操作対象が移動済み状態であるので(S182)、移動先のサーバ3へ要求パケットを転送することになり(S183)、移動オブジェクト状態管理テーブル130の該当した移動元オブジェクトID166のエントリの移動先オブジェクトID167に登録されている圧縮型情報付帯オブジェクトID151、もしくは追記型情報付帯オブジェクトID155に変換し(S184)、以降のスイッチ100における操作は、第2の実施形態における要求パケット、および応答パケットの処理と同様の方法をとる(S185)。   If it is not copied in step S178, the operation target is in the moved state (S182), so the request packet is transferred to the destination server 3 (S183), and the corresponding movement in the moving object state management table 130 is performed. It is converted into the compression type information accompanying object ID 151 or the write-once type information accompanying object ID 155 registered in the destination object ID 167 of the entry of the original object ID 166 (S184), and the subsequent operations in the switch 100 are the same as those in the second embodiment. A method similar to the processing of the request packet and the response packet is taken (S185).

ステップS155において要求データから得られた操作要求が新規作成操作であった場合(S190)、移動オブジェクト状態管理テーブル130の新規作成を行うディレクトリに相当するオブジェクトに該当する移動元オブジェクトID166のエントリの進行状態情報177を参照し、未コピー状態、コピー中状態、コピー済み状態のいずれかであるかを判定し(S191)、未コピー状態、コピー中状態、コピー済み状態のいずれかである場合には、移動元のサーバ3へ要求パケットを転送することになり(S192)、以降のスイッチ100におけるパケット転送操作は、第2の実施の形態における要求パケット、および応答パケットの処理と同様の方法をとる(S193)とともに、データ移動処理部106は移動オブジェクト状態管理テーブル130へ作成されたオブジェクトのエントリを加える(S194)。   If the operation request obtained from the request data in step S155 is a new creation operation (S190), the entry object ID 166 corresponding to the object corresponding to the directory in which the new creation of the moving object state management table 130 is performed is performed. With reference to the status information 177, it is determined whether the status is an uncopied status, a copying status, or a copied status (S191). If the status information 177 is an uncopied status, a copying status, or a copied status, The request packet is transferred to the source server 3 (S192), and the subsequent packet transfer operation in the switch 100 takes the same method as the request packet and response packet processing in the second embodiment. Along with (S193), the data movement processing unit 106 is in the form of a moving object. Add an entry for objects created to the management table 130 (S194).

ステップ190において未コピー状態、コピー中状態、コピー済み状態のいずれでもない場合、すなわち移動済み状態であった場合(S195)、移動先のサーバ3へ要求パケットを転送することになり(S196)、移動オブジェクト状態管理テーブル130の該当した移動元オブジェクトID166のエントリの移動先オブジェクトID167に登録されている圧縮型情報付帯オブジェクトID151、もしくは追記型情報付帯オブジェクトID155に変換し(S197)、以降のスイッチ100における操作は、第2の実施形態における要求パケット、および応答パケットの処理と同様の方法をとる(S198)。   If none of the uncopied state, the copying state, or the copied state is found in step 190, that is, if it has been moved (S195), the request packet is transferred to the destination server 3 (S196). The object is converted into the compression type information attached object ID 151 or the write-once type information attached object ID 155 registered in the movement destination object ID 167 of the entry of the corresponding movement source object ID 166 in the movement object state management table 130 (S197), and the subsequent switch 100 The operation in is the same method as the processing of the request packet and the response packet in the second embodiment (S198).

ステップS155において 要求データから得られた操作要求が削除操作であった場合(S200)、移動オブジェクト状態管理テーブル130の該当する移動元オブジェクトID166のエントリの進行状態情報177を参照し、未コピー状態であるかどうかを判定し(S201)、未コピー状態であった場合には、移動元のサーバ3へ要求パケットを転送することになり(S202)、以降のスイッチ100におけるパケット転送操作は、第2実施の形態における要求パケット、および応答パケットの処理と同様の方法をとる(S203)とともに、データ移動処理部106は、移動オブジェクト状態管理テーブル130に登録されている削除操作されるオブジェクトのエントリを削除する。ただし、移動元サーバ3から返答される応答データが、クライアント1に削除権限がないなどの理由でエラーとなっている場合は、応答データをクライアント1へ転送し、該当するオブジェクトの移動オブジェクト状態管理テーブル130からの削除は行わない(S204)。   If the operation request obtained from the request data is a delete operation in step S155 (S200), the progress status information 177 of the entry of the corresponding movement source object ID 166 in the movement object state management table 130 is referred to, and in the uncopied state. It is determined whether or not there is (S201), and if it is in an uncopied state, the request packet is transferred to the source server 3 (S202), and the subsequent packet transfer operation in the switch 100 is the second. The data movement processing unit 106 deletes the entry of the object to be deleted that is registered in the moving object state management table 130, using the same method as the request packet and response packet processing in the embodiment (S203). To do. However, if the response data returned from the source server 3 is an error because the client 1 does not have the deletion authority, the response data is transferred to the client 1 to manage the moving object state of the corresponding object. Deletion from the table 130 is not performed (S204).

ステップ201において未コピー状態でない場合には、進行状態情報177によりコピー中状態であるかどうかを判断し(S205)、コピー中状態であれば、移動元のサーバ3、および移動先のサーバ3へ要求を送信することになり(S206)、データ移動処理部106へ該当するオブジェクトのコピー処理を停止させる(S207)。書き込み操作の場合と同様にして、移動元サーバ3、および移動先サーバ3へ要求パケットの送信と、それぞれから返答される応答パケット処理を実行(S208)した後、データ移動処理部106は、該当するオブジェクトの移動オブジェクト状態管理テーブル130のエントリを削除する。ただし、移動元サーバ3および移動先サーバ3から返答される応答データが、クライアント1に削除権限がないなどの理由によりエラーとなった場合は、応答データをクライアント1へ転送するとともに、該当するオブジェクトの移動オブジェクト状態管理テーブル130からの削除は行わずに、データ移動処理部106での該当するオブジェクトのコピーを再開させる(S209)。   If it is not in the uncopied state in step 201, it is determined from the progress status information 177 whether it is in the copying state (S205). If it is in the copying state, it is transferred to the source server 3 and the destination server 3. A request is transmitted (S206), and the data migration processing unit 106 is stopped to copy the corresponding object (S207). Similarly to the case of the write operation, after the transmission of the request packet to the source server 3 and the destination server 3 and the response packet processing returned from each (S208), the data movement processing unit 106 The entry of the moving object state management table 130 of the object to be deleted is deleted. However, if the response data returned from the migration source server 3 and the migration destination server 3 results in an error because the client 1 has no deletion authority, the response data is transferred to the client 1 and the corresponding object The copying of the corresponding object in the data movement processing unit 106 is resumed without deleting from the moving object state management table 130 (S209).

ステップS205においてコピー中状態でない場合には、進行状態情報177によりコピー終了状態であるかどうかを判断し(ステップS210)、コピー終了状態である場合には、移動元のサーバ3および移動先のサーバ3に転送することになり(S211)、コピー中状態の場合と同様にして、ステップS180か〜S171と同様の、移動元サーバ3、および移動先サーバ3へ要求パケットの送信と、それぞれから返答される応答パケット処理を実行した後(S212)、ステップS204に移行し、データ移動処理部106は、該当するオブジェクトの移動オブジェクト状態管理テーブル130のエントリを削除する。ただし、移動元サーバ3および移動先サーバ3から返答される応答データが、クライアント1に削除権限がないなどの理由でエラーとなっている場合は、応答データをクライアント1へ転送し、該当するオブジェクトの移動オブジェクト状態管理テーブル130からの削除は行わない。   If it is not in the copying state in step S205, it is determined from the progress status information 177 whether or not the copying is in an end state (step S210). If it is in the copying end state, the movement source server 3 and the movement destination server are determined. 3 (S211), and in the same way as in the copying state, request packets are transmitted to the source server 3 and the destination server 3 in the same manner as in steps S180 to S171, and a response is received from each. After executing the response packet processing (S212), the process proceeds to step S204, and the data movement processing unit 106 deletes the entry of the corresponding object in the moving object state management table 130. However, if the response data returned from the migration source server 3 and the migration destination server 3 is an error because the client 1 does not have the deletion authority, the response data is transferred to the client 1 and the corresponding object Are not deleted from the moving object state management table 130.

ただし、要求データから得られたさ操作対象のオブジェクトがディレクトリであり、かつ進行処理状態情報177がコピー中、もしくはコピー終了状態であった場合、移動元サーバ3と移動先サーバ3への要求送信の方法は、同時に要求を送信するのではなく、まず移動元サーバ3へ削除要求を送信し、削除操作要求が成功した場合のみ、移動先サーバに要求を送信することとし、移動元サーバ3においてエラーとなった場合は、移動先サーバ3へは削除要求を送らない。   However, if the object to be manipulated obtained from the request data is a directory and the progress processing status information 177 is being copied or has been copied, a request is sent to the source server 3 and destination server 3. In this method, instead of sending a request at the same time, a delete request is first sent to the source server 3, and only when the delete operation request is successful, the request is sent to the destination server. If an error occurs, no deletion request is sent to the destination server 3.

ステップS210においてコピー済み状態でない場合は、操作対象が移動済み状態である場合であるから(S213)、移動先のサーバ3へ要求パケットを転送することになり(S214)、移動オブジェクト状態管理テーブル130の該当した移動元オブジェクトID166のエントリの移動先オブジェクトID167に登録されている圧縮型情報付帯オブジェクトID151、もしくは追記型情報付帯オブジェクトID155に変換し(S215)、以降のスイッチ100における操作は、第2の実施形態における要求パケット、および応答パケットの処理と同様の方法をとる(S216)。   If it is not in the copied state in step S210, it is a case where the operation target is in the moved state (S213), so that the request packet is transferred to the destination server 3 (S214), and the moving object state management table 130 is displayed. Is converted into the compression type information-added object ID 151 or the write-once type information-added object ID 155 registered in the destination object ID 167 of the entry of the corresponding movement source object ID 166 (S215). The same method as the processing of the request packet and the response packet in the embodiment is taken (S216).

データ移動処理部106によるオブジェクト群の移動処理がすべて完了し、移動元サーバ3の該当するオブジェクトが削除された後、移動オブジェクト状態管理テーブル130を用いた、要求パケット、および応答パケット処理は、移動オブジェクト状態管理テーブル130のエントリを一定時間後にデータ移動処理部106によって削除されるまで有効となる。   After all the movement processing of the object group by the data movement processing unit 106 is completed and the corresponding object of the movement source server 3 is deleted, the request packet and response packet processing using the moving object state management table 130 The entries in the object state management table 130 are valid until they are deleted by the data movement processing unit 106 after a predetermined time.

(第11の実施形態)本実施形態は、第10の実施形態をさらに変更した実施形態である。第10の実施形態では、移動対象となったすべてのオブジェクトの移動処理の終了後、移動元サーバ3の移動対象オブジェクトを削除していたが、本実施の形態では、前記移動元サーバ3の移動対象オブジェクトの削除を行なわない。また、移動処理中に、クライアント1からの更新操作要求、新規作成要求、削除要求のいずれかの操作要求が来た場合、操作対象オブジェクトの移動オブジェクト管理テーブル130の進行状態情報177が移動済み状態であっても、コピー済み状態と同じ処理をスイッチ100で行うことで、移動元の移動対象のオブジェクトとそのオブジェクトの複製である移動先の移動対象のオブジェクト間で同期を取り続けることが可能となる。   (Eleventh Embodiment) This embodiment is an embodiment obtained by further modifying the tenth embodiment. In the tenth embodiment, the movement target object of the movement source server 3 is deleted after the movement process of all the objects to be moved is completed. In the present embodiment, the movement of the movement source server 3 is performed. Does not delete the target object. Further, when an update operation request, a new creation request, or a delete request is received from the client 1 during the movement process, the progress status information 177 in the moving object management table 130 of the operation target object is in the moved state. Even so, by performing the same processing as in the copied state with the switch 100, it becomes possible to keep synchronization between the movement target object of the movement source and the movement target object of the movement destination that is a copy of the object. .

(第12の実施形態)本実施形態は、第10の実施形態および第11の実施形態をさらに変更した実施形態である。第10の実施形態、もしくは第11の実施形態では、スイッチ100での移動処理中にクライアント1からの更新操作要求が来た場合、操作対象となっているオブジェクトに移動オブジェクト状態管理テーブル130の更新ログ情報179に更新のメタ情報だけでなく、更新データも登録し、後々の更新部分のコピー処理時に、移動元サーバ3から読み出しを行わずに、直接移動先サーバ3の更新操作対象オブジェクトへ更新処理を行う。   (Twelfth Embodiment) This twelfth embodiment is an embodiment obtained by further modifying the tenth embodiment and the eleventh embodiment. In the tenth embodiment or the eleventh embodiment, when an update operation request is received from the client 1 during the movement processing by the switch 100, the object to be operated is updated in the moving object state management table 130. Not only update meta information but also update data is registered in the log information 179, and the update operation target object of the destination server 3 is directly updated without reading from the source server 3 at the time of copy processing of the update part later. Process.

(まとめ)なお、前述のように、各実施形態に示すスイッチ装置は、図1に示すネットワーク構成のネットワークファイルシステムに適用することができるが、各実施形態のスイッチ装置は、図20に示すように、ネットワーク2ではなく、スイッチ100にサーバ3を直接接続する構成であっても、上述の機能を提供することが可能である。このようなネットワーク構成とすれば、クライアント1からサーバ3へのスイッチ100を経由しないアクセスを完全に遮断することができるため、クライアント1から直接サーバ3へ不正にアクセスすることによって発生するシステムダウンを防ぐことが可能となる。   (Summary) As described above, the switch device shown in each embodiment can be applied to the network file system having the network configuration shown in FIG. 1, but the switch device in each embodiment is shown in FIG. In addition, even if the server 3 is directly connected to the switch 100 instead of the network 2, the above-described functions can be provided. With such a network configuration, it is possible to completely block access from the client 1 to the server 3 without going through the switch 100. Therefore, the system down caused by unauthorized access from the client 1 directly to the server 3 is prevented. It becomes possible to prevent.

また、各実施形態に示すスイッチ装置では、オブジェクトID書き換え部101の代わりに、サーバ3が生成した元オブジェクトID150とサーバ識別情報154との組み合わせから成るエントリを有するテーブル(第1のテーブル)を備えていてもよい。この場合、データ解析部124は、このテーブルを参照して、ファイルアクセス要求に含まれるオブジェクトIDに対応するサーバ識別情報を求め、サーバ情報管理テーブル126を参照して、そのサーバ識別情報に対応するサーバのアドレス情報を求め、そのアドレス情報に基づいてそのファイルアクセス要求の転送先を決定する。このようにすれば、元オブジェクトID150をクライアント1へそのまま渡しても同様の機能を実現することができる。しかし、この場合には、同じデータ列を有する元オブジェクトID150が生成される可能性もあるため、そのテーブルに既に登録されている元オブジェクトID150と同一のデータ列を有するオブジェクトIDをスイッチ100で受信した場合は、スイッチ100において、そのオブジェクトIDを別のデータ列に書き換え、前述のテーブルに書き換えられたデータ列を登録するエントリを設けるなどの処理が必要となる。   In addition, the switch device shown in each embodiment includes a table (first table) having an entry made up of a combination of the original object ID 150 generated by the server 3 and the server identification information 154 instead of the object ID rewriting unit 101. It may be. In this case, the data analysis unit 124 refers to this table to obtain server identification information corresponding to the object ID included in the file access request, refers to the server information management table 126, and corresponds to the server identification information. The server address information is obtained, and the transfer destination of the file access request is determined based on the address information. In this way, the same function can be realized even if the original object ID 150 is passed to the client 1 as it is. However, in this case, since the original object ID 150 having the same data string may be generated, the switch 100 receives the object ID having the same data string as the original object ID 150 already registered in the table. In this case, the switch 100 needs to perform processing such as rewriting the object ID to another data string and providing an entry for registering the rewritten data string in the above-described table.

また、上述した各実施形態のスイッチ装置は、ネットワークファイルシステムに適用されているが、本発明はこれに限定されるものではなく、複数のサーバが所有するリソース(オブジェクト)をクライアントが利用するシステムであれば、ネットワークファイルシステム以外にも適用することができる。   Moreover, although the switch device of each embodiment described above is applied to a network file system, the present invention is not limited to this, and a system in which a client uses resources (objects) owned by a plurality of servers. If so, it can be applied to other than the network file system.

なお、スイッチ100には、スイッチ100の動作を実行するためのプログラムが記録されている。このプログラムは、コンピュータサーバであるスイッチ100のハードウエアの動作を制御するものであり、上述したスイッチ100の処理は、全てそのプログラムによって指定されているものである。   Note that a program for executing the operation of the switch 100 is recorded in the switch 100. This program controls the operation of the hardware of the switch 100, which is a computer server, and all the processing of the switch 100 described above is specified by the program.

本発明の第1の実施形態のスイッチ装置が設けられたクライアント・サーバ形式のリモートファイルシステムであるネットワークファイルシステムのブロック図である。1 is a block diagram of a network file system that is a client / server type remote file system provided with a switch device according to a first exemplary embodiment of the present invention; FIG. 本発明の第1の実施形態のスイッチの構成を示すブロック図である。It is a block diagram which shows the structure of the switch of the 1st Embodiment of this invention. ファイルアクセス管理部の構成を示すブロック図である。It is a block diagram which shows the structure of a file access management part. オブジェクトID書き換え部の構成を示すブロック図である。It is a block diagram which shows the structure of an object ID rewriting part. オブジェクト書き換え部において書き換えられるオブジェクトIDのフォーマットの一例を示す図である。It is a figure which shows an example of the format of object ID rewritten in an object rewriting part. アルゴリズムテーブルの構成を示す図である。It is a figure which shows the structure of an algorithm table. サーバ情報管理テーブル構成を示す図である。It is a figure which shows a server information management table structure. トランザクションID管理テーブルの構成を示す図である。It is a figure which shows the structure of a transaction ID management table. 応答データを受信した際のオブジェクト書き換え部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the object rewriting part at the time of receiving response data. 本発明の第2の実施形態のスイッチ装置の構成を示すブロック図である。It is a block diagram which shows the structure of the switch apparatus of the 2nd Embodiment of this invention. 本発明の第2の実施形態のスイッチ装置におけるファイルアクセス管理部の構成を示すブロック図である。It is a block diagram which shows the structure of the file access management part in the switch apparatus of the 2nd Embodiment of this invention. 擬似ファイルシステム105のディレクトリツリー200の一例を示す図である。It is a figure which shows an example of the directory tree 200 of the pseudo file system 105. FIG. 特殊オブジェクトID管理テーブルの構成を示す図である。It is a figure which shows the structure of a special object ID management table. 本発明の第2の実施形態のスイッチ装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the switch apparatus of the 2nd Embodiment of this invention. 本発明の第3の実施形態のスイッチ装置の構成を示すブロック図である。It is a block diagram which shows the structure of the switch apparatus of the 3rd Embodiment of this invention. 本発明の第3の実施形態のスイッチ装置におけるファイルアクセス管理部の構成を示すブロック図である。It is a block diagram which shows the structure of the file access management part in the switch apparatus of the 3rd Embodiment of this invention. データの移動を示す図である。It is a figure which shows the movement of data. 移動オブジェクトID管理テーブルの構成を示す図である。It is a figure which shows the structure of a moving object ID management table. パケットを受信した場合のスイッチの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the switch at the time of receiving a packet. 本発明のスイッチ装置が適用されるクライアント・サーバ形式のリモートファイルシステムであるネットワークファイルシステムのブロック図である。FIG. 2 is a block diagram of a network file system which is a client / server type remote file system to which the switch device of the present invention is applied. オブジェクトIDのフォーマットの一例を示す図である。It is a figure which shows an example of a format of object ID. オブジェクトIDのフォーマットの一例を示す図である。It is a figure which shows an example of a format of object ID. 第6の実施形態における、本発明による擬似ファイルシステムの具体的な構成法を示す図である。It is a figure which shows the specific structural method of the pseudo file system by this invention in 6th Embodiment. 本発明によるスイッチ装置が、通常のファイルシステム処理によりディレクトリ移動を実施した場合の例を示す図である。It is a figure which shows the example when the switch apparatus by this invention implements directory movement by normal file system processing. 本発明による第6の実施形態の動作を示す図である。It is a figure which shows operation | movement of the 6th Embodiment by this invention. 本発明の第7の実施形態のスイッチ装置におけるファイルアクセス管理部の構成を示すブロック図である。It is a block diagram which shows the structure of the file access management part in the switch apparatus of the 7th Embodiment of this invention. 処理分類テーブルの構成を示す図である。It is a figure which shows the structure of a process classification table. 本発明の第7の実施形態のハードウエア構成のブロック図である。It is a block diagram of the hardware constitutions of the 7th Embodiment of this invention. 本発明の第8の実施形態の想定するディレクトリツリー構成の例を示す図である。It is a figure which shows the example of the directory tree structure assumed by the 8th Embodiment of this invention. 本発明の第8の実施形態の動作を説明するフローチャートである。It is a flowchart explaining the operation | movement of the 8th Embodiment of this invention. 他の方法、プロトコルによる統合ディレクトリツリー環境が並存する例を示す図である。It is a figure which shows the example in which the integrated directory tree environment by another method and protocol coexists. 本発明の第9の実施形態による、統合ディレクトリツリー環境の取り込みを説明するための図である。It is a figure for demonstrating the import of the integrated directory tree environment by the 9th Embodiment of this invention. 本発明の第10の実施形態におけるファイルアクセス管理部内の構成を示すブロック図である。It is a block diagram which shows the structure in the file access management part in the 10th Embodiment of this invention. 本発明の第10の実施形態における移動オブジェクト状態管理テーブルの構成を示す図である。It is a figure which shows the structure of the moving object state management table in the 10th Embodiment of this invention. 本発明の第10の実施形態での処理の概要を説明する図である。It is a figure explaining the outline | summary of the process in the 10th Embodiment of this invention. 本発明の第10の実施形態におけるデータ移動処理部におけるオブジェクトの移動処理手順をフローチャートで示した図である。It is the figure which showed the movement process procedure of the object in the data movement process part in the 10th Embodiment of this invention with the flowchart. 本発明の第10の実施形態におけるデータ移動処理部の移動処理中のクライアントからの要求パケットのスイッチ装置における処理手順をフローチャートで示した図である。It is the figure which showed in the flowchart the processing procedure in the switch apparatus of the request packet from the client in the process of a movement of the data movement process part in the 10th Embodiment of this invention. 読み出し操作要求時の処理手順をフローチャートで示した図である。It is the figure which showed the processing procedure at the time of read-out operation request | requirement with the flowchart. 更新操作要求時の処理手順をフローチャートで示した図である。It is the figure which showed the processing procedure at the time of the update operation request with the flowchart. 新規作成操作要求時の処理手順をフローチャートで示した図である。It is the figure which showed the processing procedure at the time of new creation operation request | requirement with the flowchart. 削除操作要求時の処理手順をフローチャートで示した図である。It is the figure which showed the process sequence at the time of deletion operation request | requirement with the flowchart. ウェブスイッチの機能を示すブロック図である。It is a block diagram which shows the function of a web switch. 特開2001−51890号公報に開示された方法を実行するシステムの構成を示すブロック図である。1 is a block diagram illustrating a configuration of a system that executes a method disclosed in Japanese Patent Laid-Open No. 2001-51890.

符号の説明Explanation of symbols

1 クライアント
2 ネットワーク
3 サーバ
4 ファイルシステム
5 記憶装置
6 ローカルファイルシステム
7 サーバ間専用結線
100 スイッチ
101 オブジェクトID書き換え部
102 ファイルアクセス管理部
103 パケット処理部
104 ファイルシステム補完処理部
105 擬似ファイルシステム
106 データ移動処理部
107 データ解析高速処理部
108 データ解析非高速処理部
120 要求応答分配部
121 要求処理部
122 応答処理部
123 アルゴリズムテーブル
124 データ解析部
125 トランザクションID管理テーブル
126 サーバ情報管理テーブル
127 特殊オブジェクトID管理テーブル
128 移動オブジェクトID管理テーブル
129 処理分類テーブル
130 移動オブジェクト状態管理テーブル
150 元オブジェクトID
151 圧縮型情報付帯オブジェクトID
152 圧縮データ
153 アルゴリズム識別情報
154 サーバ識別情報
155 追記型情報付帯オブジェクトID
156 削除データ
157 削除データ位置
158 サーバIPアドレス情報
159 サーバMACアドレス情報
160 トランザクションID
161 クライアントIPアドレス情報
162 クライアントMACアドレス情報
163 ファイルアクセス命令情報
164 オブジェクトID
165 命令情報
166 移動元オブジェクトID
167 移動先オブジェクトID
168 移動先サーバ情報
169 データ移動フラグ
170 フラグ付き圧縮型情報付帯オブジェクトID
171 フラグ付き追記型情報付帯オブジェクトID
172 データ移動世代番号
173 世代番号付き圧縮型情報付帯オブジェクトID
174 世代番号付き追記型情報付帯オブジェクトID
175 ポート番号情報
176 処理分類情報
177 進行状態情報
178 親オブジェクト番号
179 更新ログ情報
180 オブジェクト属性情報
200 擬似ファイルシステムディレクトリツリー
220 ルートディレクトリ
221〜224、300 ディレクトリ
225、301〜303 ダミーディレクトリ
226〜27 オブジェクトグループ
250 サーバA
251 サーバB
310 サーバL
311 サーバM
320 他の統合ディレクトリツリーのイメージ
900 ウェブスイッチ
902 HTTP処理部
903 パケット処理部
S100〜108、S110〜S117、S120〜S132 ステップ
S140〜148、S150〜S155、S160〜S166 ステップ
S170〜185、S190〜S198、S200〜S216 ステップ




DESCRIPTION OF SYMBOLS 1 Client 2 Network 3 Server 4 File system 5 Storage device 6 Local file system 7 Connection between servers 100 Switch 101 Object ID rewriting part 102 File access management part 103 Packet processing part 104 File system complementary processing part 105 Pseudo file system 106 Data movement Processing unit 107 Data analysis high speed processing unit 108 Data analysis non-high speed processing unit 120 Request response distribution unit 121 Request processing unit 122 Response processing unit 123 Algorithm table 124 Data analysis unit 125 Transaction ID management table 126 Server information management table 127 Special object ID management Table 128 Moving object ID management table 129 Processing classification table 130 Moving object state management table 150 Original object Project ID
151 Compressed information incidental object ID
152 Compressed data 153 Algorithm identification information 154 Server identification information 155 Write-once information incidental object ID
156 Deleted data 157 Deleted data position 158 Server IP address information 159 Server MAC address information 160 Transaction ID
161 Client IP address information 162 Client MAC address information 163 File access command information 164 Object ID
165 Command information 166 Source object ID
167 Move destination object ID
168 Move destination server information 169 Data move flag 170 Compressed information attached object ID with flag
171 Write-once informational object ID with flag
172 Data movement generation number 173 Generation type attached object ID with generation number
174 Write-once information attached object ID with generation number
175 Port number information 176 Processing classification information 177 Progress status information 178 Parent object number 179 Update log information 180 Object attribute information 200 Pseudo file system directory tree 220 Root directory 221 to 224, 300 Directory 225, 301 to 303 Dummy directory 226 to 27 Object Group 250 Server A
251 Server B
310 Server L
311 server M
320 Image of Other Integrated Directory Tree 900 Web Switch 902 HTTP Processing Unit 903 Packet Processing Units S100-108, S110-S117, S120-S132 Steps S140-148, S150-S155, S160-S166 Steps S170-185, S190-S198 , S200 to S216 Step




Claims (8)

少なくとも1つのクライアントと少なくとも1つのオブジェクトを管理する少なくとも1つのサーバとの間に論理的に配置されたスイッチ装置における、前記クライアントから送信された前記オブジェクトに関する要求を、当該オブジェクトを管理する前記サーバに転送し、当該要求に対する前記サーバからの応答を前記要求の送信元であるクライアントに転送するスイッチ方法において、
前記サーバが公開しているオブジェクト群を別のサーバへ移動する処理を行う際、移動する全てのオブジェクトの移動処理の進行状態と、クライアントから移動処理中に要求された更新情報と、移動前における当該オブジェクトの移動元オブジェクトIDと、移動後における当該オブジェクトの移動先オブジェクトIDと、移動先のサーバの識別情報である移動先サーバ識別情報との組み合わせを管理するテーブルを参照し、
所定の基準に基づいて前記オブジェクトを移動させるとともに、移動処理の進行状態と、コピー処理中の更新ログと、当該オブジェクトの移動元IDと、移動先オブジェクトIDと、移動先サーバ識別情報とを前記テーブルにエントリする段階と、
移動処理を実行している際に、クライアントからの移動対象オブジェクトへの要求を転送する方法を、前記テーブルに登録されている進行状態と前記要求の内容により転送先を変更し、移動処理中であることを隠蔽する段階と、を備えるスイッチ方法。
In the switch apparatus logically arranged between at least one client and at least one server that manages at least one object, a request regarding the object transmitted from the client is sent to the server that manages the object. A switch method for forwarding and forwarding a response from the server to the request to a client that is a transmission source of the request;
When performing the process of moving the object group published by the server to another server, the progress status of all the moving objects, the update information requested during the movement process from the client, Refer to a table that manages a combination of a movement source object ID of the object, a movement destination object ID of the object after movement, and movement destination server identification information that is identification information of the movement destination server.
The object is moved based on a predetermined criterion, and the progress status of the movement process, the update log during the copy process, the movement source ID of the object, the movement destination object ID, and the movement destination server identification information are Entering the table,
A method for transferring a request from the client to the object to be moved during execution of the move process is performed by changing the transfer destination according to the progress state registered in the table and the content of the request. Concealing something, and a switching method.
前記移動処理中にコピーが終了したオブジェクトに対し、クライアントからデータの書き込み要求がきた場合、移動元、および移動先へ書き込み要求を転送し、同期を維持することを特徴とする請求項1記載のスイッチ方法。   2. The synchronization according to claim 1, wherein when a data write request is received from a client to an object for which copying has been completed during the move process, the write request is transferred to a move source and a move destination to maintain synchronization. Switch method. 前記移動処理中にコピー処理中のオブジェクトに対し、クライアントからのデータの書き込み要求が来た場合、書き込みデータの位置を前記テーブルに更新情報として登録した後、書き込み要求を移動元に転送し、前記コピー処理終了後に、前記更新情報を参照して、移動元から更新部分のデータを読み出し、移動先のオブジェクトへ書き込みを行う請求項1記載のスイッチ方法。   When a data write request is received from a client for the object being copied during the move process, the write request is registered in the table as update information, and then the write request is transferred to the move source. The switching method according to claim 1, wherein after the copy process is completed, the update information is referred to, the update portion data is read from the movement source, and is written to the movement destination object. 前記移動処理中にコピー処理中のオブジェクトに対し、クライアントからのデータの書き込み要求が来た場合、書き込み要求に含まれる更新データおよび、書き込みデータの位置を前記テーブルに更新情報として登録した後、書き込み要求を移動元へ転送し、前記コピー処理終了後に、前記更新情報を用いて、移動先のオブジェクトへ書き込みを行う請求項1記載のスイッチ方法。   When a data write request is received from the client for the object being copied during the move process, the update data included in the write request and the position of the write data are registered as update information in the table and then written. The switching method according to claim 1, wherein a request is transferred to a movement source, and writing to the movement destination object is performed using the update information after completion of the copy process. 少なくとも1つのクライアントと、少なくとも1つのオブジェクトを管理する少なくとも1つのサーバとの間に論理的に配置され、前記クライアントから送信された前記オブジェクトに関する要求を、当該オブジェクトを管理する前記サーバに転送し、当該要求に対する前記サーバからの応答を前記要求の送信元であるクライアントに転送するスイッチ装置において、
前記サーバが公開しているオブジェクト群を別のサーバへ移動する処理を行う際、移動する全てのオブジェクトの移動処理の進行状態と、クライアントから移動処理中に要求された更新情報と、移動前における当該オブジェクトの移動元オブジェクトIDと、移動後における当該オブジェクトの移動先オブジェクトIDと、移動先のサーバの識別情報である移動先サーバ識別情報との組み合わせを管理するテーブルと、
所定の基準に基づいて前記オブジェクトを移動させるとともに、移動処理の進行状態と、コピー処理中の更新ログと、当該オブジェクトの移動元IDと、移動先オブジェクトIDと、移動先サーバ識別情報とを前記テーブルにエントリする移動処理管理手段と、を備え、
移動処理を実行している際に、クライアントからの移動対象オブジェクトへの要求を転送する方法を、前記テーブルに登録されている進行状態と前記要求の内容により転送先を変更して、移動処理中であることが隠蔽されるようにする、スイッチ装置。
Logically placed between at least one client and at least one server managing at least one object, and forwarding a request for the object sent from the client to the server managing the object; In a switching device that transfers a response from the server to the request to a client that is a transmission source of the request,
When performing the process of moving the object group published by the server to another server, the progress status of all the moving objects, the update information requested during the movement process from the client, A table for managing a combination of a movement source object ID of the object, a movement destination object ID of the object after movement, and movement destination server identification information which is identification information of the movement destination server;
The object is moved based on a predetermined criterion, and the progress status of the movement process, the update log during the copy process, the movement source ID of the object, the movement destination object ID, and the movement destination server identification information are A movement processing management means for entering the table,
While executing the move process, the method for transferring the request from the client to the object to be moved is changing the transfer destination according to the progress state registered in the table and the content of the request, and the move process is in progress. Switch device that makes it concealed.
前記移動処理中にコピーが終了したオブジェクトに対し、クライアントからデータの書き込み要求がきた場合、移動元、および移動先へ書き込み要求を転送し、同期を維持することを特徴とする請求項5記載のスイッチ装置。   6. The method according to claim 5, wherein when a data write request is received from a client for an object for which copying has been completed during the move process, the write request is transferred to a move source and a move destination to maintain synchronization. Switch device. 前記移動処理中にコピー処理中のオブジェクトに対し、クライアントからのデータの書き込み要求が来た場合、書き込みデータの位置を前記テーブルに更新情報として登録した後、書き込み要求を移動元に転送し、前記コピー処理終了後に、前記更新情報を参照して、移動元から更新部分のデータを読み出し、移動先のオブジェクトへ書き込みを行う請求項5記載のスイッチ装置。   When a data write request is received from a client for the object being copied during the move process, the write request is registered in the table as update information, and then the write request is transferred to the move source. 6. The switch device according to claim 5, wherein after the copy process is completed, the update information is referred to, the update portion data is read from the movement source, and written to the movement destination object. 前記移動処理中にコピー処理中のオブジェクトに対し、クライアントからのデータの書き込み要求が来た場合、書き込み要求に含まれる更新データおよび、書き込みデータの位置を前記テーブルに更新情報として登録した後、書き込み要求を移動元へ転送し、前記コピー処理終了後に、前記更新情報を用いて、移動先のオブジェクトへ書き込みを行う請求項5記載のスイッチ装置。





When a data write request is received from the client for the object being copied during the move process, the update data included in the write request and the position of the write data are registered as update information in the table and then written. The switch device according to claim 5, wherein a request is transferred to a movement source, and writing to a movement destination object is performed using the update information after completion of the copy process.





JP2006229195A 2001-11-02 2006-08-25 Switching method, device and program Pending JP2007042115A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006229195A JP2007042115A (en) 2001-11-02 2006-08-25 Switching method, device and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001337838 2001-11-02
JP2006229195A JP2007042115A (en) 2001-11-02 2006-08-25 Switching method, device and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002168620A Division JP3879594B2 (en) 2001-11-02 2002-06-10 Switch method, apparatus and program

Publications (1)

Publication Number Publication Date
JP2007042115A true JP2007042115A (en) 2007-02-15

Family

ID=37799971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006229195A Pending JP2007042115A (en) 2001-11-02 2006-08-25 Switching method, device and program

Country Status (1)

Country Link
JP (1) JP2007042115A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234568A (en) * 2007-03-23 2008-10-02 Hitachi Ltd Intermediate device for achieving virtualization of file level
JP2008234264A (en) * 2007-03-20 2008-10-02 Nec Software Chubu Ltd Load balancing device for file server, program for load balancing, and load balancing method
JP2013045218A (en) * 2011-08-23 2013-03-04 Fujitsu Ltd Data copy processing system, storage device, and data copy processing method
JP2013515303A (en) * 2010-11-29 2013-05-02 ▲ホア▼▲ウェイ▼技術有限公司 Method and system for virtual storage migration and virtual machine monitor
US9000353B2 (en) 2010-06-22 2015-04-07 President And Fellows Of Harvard College Light absorption and filtering properties of vertically oriented semiconductor nano wires
JP2015125463A (en) * 2013-12-25 2015-07-06 エヌ・ティ・ティ・コムウェア株式会社 Load balancing device, load balancing method, and load balancing program
JP2016504700A (en) * 2013-03-14 2016-02-12 ディ・エス・エス・ディ・インコーポレイテッドDssd, Inc. Method and system for object-based transactions in a storage system
JP2016525256A (en) * 2013-07-24 2016-08-22 アルカテル−ルーセント Method and apparatus for providing redundant data access

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234264A (en) * 2007-03-20 2008-10-02 Nec Software Chubu Ltd Load balancing device for file server, program for load balancing, and load balancing method
JP2008234568A (en) * 2007-03-23 2008-10-02 Hitachi Ltd Intermediate device for achieving virtualization of file level
US8380815B2 (en) 2007-03-23 2013-02-19 Hitachi, Ltd. Root node for file level virtualization
US8909753B2 (en) 2007-03-23 2014-12-09 Hitachi, Ltd. Root node for file level virtualization
US9000353B2 (en) 2010-06-22 2015-04-07 President And Fellows Of Harvard College Light absorption and filtering properties of vertically oriented semiconductor nano wires
JP2013515303A (en) * 2010-11-29 2013-05-02 ▲ホア▼▲ウェイ▼技術有限公司 Method and system for virtual storage migration and virtual machine monitor
US9411620B2 (en) 2010-11-29 2016-08-09 Huawei Technologies Co., Ltd. Virtual storage migration method, virtual storage migration system and virtual machine monitor
JP2013045218A (en) * 2011-08-23 2013-03-04 Fujitsu Ltd Data copy processing system, storage device, and data copy processing method
JP2016504700A (en) * 2013-03-14 2016-02-12 ディ・エス・エス・ディ・インコーポレイテッドDssd, Inc. Method and system for object-based transactions in a storage system
JP2016525256A (en) * 2013-07-24 2016-08-22 アルカテル−ルーセント Method and apparatus for providing redundant data access
JP2015125463A (en) * 2013-12-25 2015-07-06 エヌ・ティ・ティ・コムウェア株式会社 Load balancing device, load balancing method, and load balancing program

Similar Documents

Publication Publication Date Title
JP3879594B2 (en) Switch method, apparatus and program
US20200218701A1 (en) Consistent data storage in distributed computing systems
US8190741B2 (en) Customizing a namespace in a decentralized storage environment
US11647097B2 (en) Providing access to managed content
JP2007042115A (en) Switching method, device and program
JP4154893B2 (en) Network storage virtualization method
US7139747B1 (en) System and method for distributed web crawling
US8990270B2 (en) Protocol virtualization for a network file system
US8180747B2 (en) Load sharing cluster file systems
US7647461B2 (en) Method and apparatus for allocating resources among virtual filers on a filer
JP5167225B2 (en) Technology that allows multiple virtual filers on one filer to participate in multiple address spaces with overlapping network addresses
US7373406B2 (en) Method and system for effectively communicating file properties and directory structures in a distributed file system
EP2557514A1 (en) Cloud Storage System with Distributed Metadata
US20040059866A1 (en) System and method for representing named data streams within an on-disk structure of a file system
US20080281908A1 (en) Hybrid segment-oriented file server and wan accelerator
JP2001526814A (en) Distributed cache, prefetch, copy method and system
US20040267831A1 (en) Large file support for a network file server
JP2004500660A (en) Network storage system
JP2005539289A (en) Transparent request routing for partitioned application services
JP2007012077A (en) Access to content addressable data via network
US8527586B1 (en) Multi-protocol global namespace mechanism for network attached storage
JP2017107556A (en) Key catalogs in content-centric network
US7707299B2 (en) Data package with recovery data
CN111400261A (en) Method for rapidly adding or deleting folders by IPFS (Internet protocol file system)
JP2004054607A (en) Switch device, method of distributed object management, and program

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070118

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20080619

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090508

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100209