A system for block level data storage, comprising: a plurality of servers (161, 162, 163, 32A, 32B-32N, 22) constituting a server group on a data network to which one or more clients are connected, each server (161, 162, 163, 32A, 32B-32N, 22) being responsible for a portion of stored blocks and characterized by: a means for detecting a request from a client for access to data in a stored block and for establishing a communication connection with the client, wherein the client sees the server group as a single server; a data mover means (22A, 22B, 22C, 54) capable of communicating directly with a data mover means (22A, 22B, 22C, 54) on another of said servers (161, 162, 163, 32A, 32B-32N, 22) for coordinating movement of blocks between the servers (161, 162, 163, 32A, 32B-32N, 22); a request monitor means (24A, 24B, 24C, 58) capable of monitoring requests from the client, capable of communicating directly with a request monitor means (24A, 24B, 24C, 58) on another of said servers (161, 162, 163, 32A, 32B-32N, 22), and capable of generating a coordinated analysis of said client requests for stored blocks; and a routing table means capable of maintaining and tracking a location of different stored blocks and the server (161, 162, 163, 32A, 32B-32N, 22) that is responsible therefor using a routing table (165, 20A, 20B, 20C), communicating with the routing table means on another of said servers (161, 162, 163, 32A, 32B-32N, 22) for maintaining a coordinated global list of servers (161, 162, 163, 32A, 32B-32N, 22) and stored blocks associated therewith, determine which server (161, 162, 163, 32A, 32B-32N, 22) is responsible for the stored blocks requested by the client, and forwarding the request to the determined server so that the requested data in the stored block is returned to the client via the established communication connection. a means for detecting a request from a client for access to data in a stored block and for establishing a communication connection with the client, wherein the client sees the server group as a single server; a data mover means (22A, 22B, 22C, 54) capable of communicating directly with a data mover means (22A, 22B, 22C, 54) on another of said servers (161, 162, 163, 32A, 32B-32N, 22) for coordinating movement of blocks between the servers (161, 162, 163, 32A, 32B-32N, 22); a request monitor means (24A, 24B, 24C, 58) capable of monitoring requests from the client, capable of communicating directly with a request monitor means (24A, 24B, 24C, 58) on another of said servers (161, 162, 163, 32A, 32B-32N, 22), and capable of generating a coordinated analysis of said client requests for stored blocks; and a routing table means capable of maintaining and tracking a location of different stored blocks and the server (161, 162, 163, 32A, 32B-32N, 22) that is responsible therefor using a routing table (165, 20A, 20B, 20C), communicating with the routing table means on another of said servers (161, 162, 163, 32A, 32B-32N, 22) for maintaining a coordinated global list of servers (161, 162, 163, 32A, 32B-32N, 22) and stored blocks associated therewith, determine which server (161, 162, 163, 32A, 32B-32N, 22) is responsible for the stored blocks requested by the client, and forwarding the request to the determined server so that the requested data in the stored block is returned to the client via the established communication connection.