A computer implemented method of providing consistent availability to clients (102, 104, 202, 204) accessing a shared file system on a server cluster (106, 206), the method comprising: receiving at a file server a request to connect to the file server to access file information in a shared file system, the request being formatted according to a file access protocol, wherein the file server is one of a plurality of servers (106A, 106B, 106C) in a server cluster (106, 206); sending a response from the file server, the response establishing a session with a client for allowing access to file information in the shared file system, the response being formatted according to the file access protocol; receiving a request at the file server to open a persistent handle on the file server for accessing a file in the shared file system by the client, the request to open a persistent handle on the file server including a handle identifier provided by the client; in response to receiving the request to open a persistent handle, the file server (106A, 106B, 106C): storing first state information about the session in association with the handle identifier; registering with a resume key filter to store second state information in association with a resume key; the resume key filter configured to: receive a registration request from the first file server; store the second state information with the resume key; and send the second state information to the first file server in response to a request from the first file server for the second state information, and sending a response to the client granting access to the file; after a client disconnect, receiving a request to reestablish the session using the persistent handle; and reestablishing the session using the first state information. receiving at a file server a request to connect to the file server to access file information in a shared file system, the request being formatted according to a file access protocol, wherein the file server is one of a plurality of servers (106A, 106B, 106C) in a server cluster (106, 206); sending a response from the file server, the response establishing a session with a client for allowing access to file information in the shared file system, the response being formatted according to the file access protocol; receiving a request at the file server to open a persistent handle on the file server for accessing a file in the shared file system by the client, the request to open a persistent handle on the file server including a handle identifier provided by the client; in response to receiving the request to open a persistent handle, the file server (106A, 106B, 106C): storing first state information about the session in association with the handle identifier; registering with a resume key filter to store second state information in association with a resume key; the resume key filter configured to: receive a registration request from the first file server; store the second state information with the resume key; and send the second state information to the first file server in response to a request from the first file server for the second state information, and sending a response to the client granting access to the file; storing first state information about the session in association with the handle identifier; registering with a resume key filter to store second state information in association with a resume key; the resume key filter configured to: receive a registration request from the first file server; store the second state information with the resume key; and send the second state information to the first file server in response to a request from the first file server for the second state information, and receive a registration request from the first file server; store the second state information with the resume key; and send the second state information to the first file server in response to a request from the first file server for the second state information, and sending a response to the client granting access to the file; after a client disconnect, receiving a request to reestablish the session using the persistent handle; and reestablishing the session using the first state information.