Patent ID: 6671773
Filing Date: 2003-12-30
Classification: G06F,H04L

Abstract:
A system for responding to file system requests having file IDs comprising V, a volume identifier specifying the file system being accessed, and R, an integer, specifying the file within the file system being accessed comprising:D disk elements in which files are stored, where D is greater than or equal to 1 and is an integer; a switching fabric connected to the D disk elements to route requests to a corresponding disk element; and N network elements connected to the switching fabric, each network element having a mapping function that for every value of V, specifies one or more elements from the set D that store the data specified by volume V, where N is greater than or equal to 1 and is an integer and N+D is greater than or equal to 3, which receives the requests and causes the switching fabric to route the requests by their file ID according to the mapping function, each network element includes a translator which obtains file IDs from path names included in individual file system requests, each disk element and each network element has a file system location database which maintains a mapping from all file system identifiers V to disk element identifiers so each network element can translate each file system request ID into a corresponding disk element location, each disk element and each network element has a controller, and each disk element controller communicates with the network element controllers to identify which files are stored at the respective disk element, each network element can respond to any request for any disk element, each network element has a network port through which requests are received by the respective network element wherein all the network elements and disk elements together appear as a single system that can respond to any request at any network port of any network element, the disk elements form a cluster, with one of the disk elements being a cluster coordinator which communicates with each disk element in the cluster to collect from and distribute to the network elements which file systems are stored in each disk element of the cluster at predetermined times.