Described are embodiments directed at persistent handles that are used to retain state across network failures and server failovers. Persistent handles are requested by a client after a session has been established with a file server. The request for the persistent handle includes a handle identifie
Described are embodiments directed at persistent handles that are used to retain state across network failures and server failovers. Persistent handles are requested by a client after a session has been established with a file server. The request for the persistent handle includes a handle identifier generated by the client. The server uses the handle identifier to associate with state information. When there is a network failure or a server failover, and a reconnection to the client, the handle identifier is used to identify replayed requests that if replayed would create an inconsistent state on the server. The replayed requests are then appropriately handled.
대표청구항▼
1. A computer implemented method of providing consistent availability to clients accessing a shared file system on a server cluster, 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 to connect be
1. A computer implemented method of providing consistent availability to clients accessing a shared file system on a server cluster, 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 to connect being formatted according to a file access protocol, wherein the file server is one of a plurality of servers in a server cluster;sending a first response from the file server, the first response establishing a session with a client for allowing access to file information in the shared file system, the first 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 including a handle identifier provided by the client;in response to receiving the request to open a persistent handle, the file server: storing first state information about the session in association with the handle identifier; andsending a second response to the client granting access to the file;after a client disconnect, receiving a request to reestablish the session using the persistent handle;reestablishing the session using the first state information;after reestablishing the session, receiving a new request from the client, the new request including the handle identifier;determining, using the handle identifier, that the new request is a replay of a previously sent request. 2. The method of claim 1, wherein the first state information comprises state of an operation that if resent by the client causes the file server to end up in an inconsistent state. 3. The method of claim 2, wherein the file access protocol is a version of the Server Message Block (SMB) protocol. 4. The method of claim 3, wherein the first state information comprises state of one or more of: byte range locks held by the client and create operations sent by the client. 5. The method of claim 3, further comprising: before the client disconnect, registering with a resume filter to store second state information regarding the session. 6. The method of claim 5, wherein the second state information comprises state of one or more of: leases held by the client and opens held by the client. 7. The method of claim 5, wherein the reestablishing the session further comprises using the second state information. 8. The method of claim 1, wherein the client disconnect occurs because of a failure of the file server and the reestablishing the connection is performed by a second file server in the server cluster. 9. A computer readable storage medium comprising computer executable instructions that when executed by a processor perform a method of maintaining consistent state, the method comprising: sending a request by a client to connect to a server to access file information, the request to connect being formatted according to a file access protocol;receiving a first response from the server, the first response establishing a session with the client for allowing access to file information on the server, the first response being formatted according to the file access protocol;sending a request to open a persistent handle on the server for accessing a file on the server by the client, the request to open a persistent handle including a handle identifier provided by the client;receiving a second response at the client granting access to the file;detecting that the client has been disconnected from the server;sending a request to reestablish the session using the persistent handle, the request to reestablish the session including the handle identifier;determining that the session has been reestablished;sending a new request; andafter the session is reestablished, determining that the new request is a replay of a previously sent request. 10. The computer readable storage medium of claim 9, wherein the server is one of a plurality of servers in a server cluster, and the disconnection occurs because of a failure of the server, wherein the reestablishing the session is performed by a second server of the plurality of servers in the server cluster. 11. The computer readable storage medium of claim 10, wherein the file access protocol is a version of the Server Message Block (SMB) protocol. 12. The computer readable storage medium of claim 9, wherein the new request comprises the handle identifier and is a replay of a request for one or more of: a byte range lock held by the client before the disconnection and a create request sent by the client before the disconnection. 13. A system of providing consistent availability to clients accessing a shared file system on a server cluster, the system comprising: at least one processor;memory, operatively coupled to the at least one processor and containing instructions that, when executed by the at least one processor, cause the at least one processor to perform a method, 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 to connect being formatted according to a file access protocol, wherein the file server is one of a plurality of servers in a server cluster;sending a first response from the file server, the first response establishing a session with a client for allowing access to file information in the shared file system, the first 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 including a handle identifier provided by the client;in response to receiving the request to open a persistent handle, the file server: storing first state information about the session in association with the handle identifier; andsending a second response to the client granting access to the file;after a client disconnect, receiving a request to reestablish the session using the persistent handle;reestablishing the session using the first state information;after reestablishing the session, receiving a new request from the client, the new request including the handle identifier;determining, using the handle identifier, that the new request is a replay of 14. The system of claim 13, wherein the first state information comprises state of an operation that if resent by the client causes the file server to end up in an inconsistent state. 15. The system of claim 14, wherein the file access protocol is a version of the Server Message Block (SMB) protocol. 16. The system of claim 15, wherein the first state information comprises state of one or more of: byte range locks held by the client and create operations sent by the client. 17. The system of claim 15, further comprising: before the client disconnect, registering with a resume filter to store second state information regarding the session. 18. The system of claim 17, wherein the second state information comprises state of one or more of: leases held by the client and opens held by the client. 19. The system of claim 17, wherein the reestablishing the session further comprises using the second state information. 20. The system of claim 13, wherein the client disconnect occurs because of a failure of the file server and the reestablishing the connection is performed by a second file server in the server cluster.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (89)
Araujo,Kenneth S.; Best,Reginald P.; Douglas,Christopher P.; Heitmueler,Devin J.; Zhang,Siuling C., Apparatus and accompanying methods for providing, through a centralized server site, a secure, cost-effective, web-enabled, integrated virtual office environment remotely accessible through a network.
Choi,Moon jeong, Apparatus and method for controlling a device in a home network based upon a batch command that is generated when a name of the batch command, a name of the device, a service of the device and detail.
Geen, David William; Ravishankar, Geetha; Joshi, Satish; Denbar, Melissa L.; Willaford, IV, William Bateman; Zhang, Zhiwei, Apparatus and method for providing server state and attribute management for multiple-threaded voice enabled web applications.
Baird Robert (San Jose CA) Eisenberger George (White Plains NY) Lett Alexander S. (Mahopac NY) Myers James J. (San Francisco CA) Tetzlaff William H. (Mount Kisco NY) Unger Jay G. (Mohegan Lake NY), Concurrency management using version identification of shared data as a supplement to use of locks.
Dutcher David Paul ; Lenharth Scott Alan ; Rolette ; Jr. James Michael ; Smith Stanley Alan, Dynamic creation of a user account in a client following authentication from a non-native server domain.
Kandasamy David R. (San Ramon CA) Butler Mitchel B. (Sunnyvale CA) Foss Andrew L. (Yarrow Point WA) Peterson Bradley M. (Los Altos CA) Patwardhan Chintamani M. (Sunnyvale CA) Ribble Michael T. (Los G, Fault tolerant NFS server system and mirroring protocol.
Eshel Marc M. (Tarrytown NY) Hunt Guerney D. H. (Ithaca NY) Jones Donald N. (Vestal NY) Meyer Christopher (Vestal NY) Schwartz Frederick A. (Binghamton NY), File manager for files shared by heterogeneous clients.
Xiaoye Jiang ; Uresh K. Vahalia ; Uday Gupta ; Percy Tzelnic, File server system using connection-oriented protocol and sharing data sets among data movers.
Xu Yikang ; Vahalia Uresh K. ; Jiang Xiaoye ; Gupta Uday ; Tzelnic Percy, File server system using file system storage, data movers, and an exchange of meta data among data movers for file locking and direct access to shared file systems.
Walker Bruce J. ; Byrne John L. ; Chow William W. ; Gertwagen John A. ; Ramirez Laura L. ; Zafman David B., Filesystem failover in a single system image environment.
Zimmet Carol (Nashua NH) Keefe Mary F. (Jamaica Plain MA) Amico Richard J. (Hollis NH), Local computer participating in mail delivery system abstracts from directory of all eligible mail recipients only serve.
Johnson Donavon W. (Georgetown TX) Morgan Stephen P. (Mahopac NY) Smith Todd A. (Austin TX), Maintenance of file attributes in a distributed data processing system.
Basani,Vijay R.; Mangipudi,Krishna; Murach,Lynne M.; Karge,Leroy R.; Revsin,Vitaly S.; Bestavros,Azer; Crovella,Mark E.; LaRosa,Domenic J., Method and apparatus for election of group leaders in a distributed network.
Hendricks David (Menlo Park CA) Adams Evan (San Leandro CA) Lyon Tom (Palo Alto CA) Miller Terrence C. (Menlo Park CA), Method and apparatus for translucent file system.
Obermarck Ronald L. (Los Altos CA) Strickland Jimmy P. (Saratoga CA) Watts Vern L. (Los Gatos CA), Method and means for the sharing of data resources in a multiprocessing, multiprogramming environment.
Rubin Darryl E. (Redmond WA) Masden Kenneth E. (Redmond WA) King John W. (Kirkland WA), Method and system for network communications using raw mode protocols.
Rubin Darryl E. (Redmond WA) Masden Kenneth E. (Redmond WA) King John W. (Kirkland WA), Method and system for network communications using raw mode protocols.
Masden Kenneth E. (Redmond WA) Smirl Jon D. (Kirkland WA) King John W. (Kirkland WA) Rubin Darryl E. (Redmond WA), Method and system for open file caching in a networked computer system.
Baird Robert (San Jose CA) Berbec Robert R. (New York NY) Bozman Gerald P. (Oakland NJ) Lett Alexander S. (Mahopac NY) Myers James J. (San Francisco CA) Tetzlaff William H. (Mount Kisco NY) Unger Jay, Method for dynamically expanding and rapidly accessing file directories.
Crossley James F. (Fulton County GA), Method for multiple programs management within a network having a server computer and a plurality of remote computers.
Donohoo Theodore J. (1027 Evergreen Trail Lino Lakes MN 55014), Method for transferring data files between computers in a network response to generalized application program instructio.
Marcotte, Scott Thomas, Method, system and program products for reducing data movement within a computing environment by bypassing copying data between file system and non-file system buffers in a server.
Meriwether Teresa Anne ; Volkmar Peter Williams ; Shields Ian Beaumont, Methods, system and computer program products for establishing a session between a host and a terminal using a reduced p.
Blakely Frank W. (Roseville CA) Hall Guy T. (Loomis CA) Winkleblack Sherry (Orangevale CA) Scaccia Jim (Roseville CA) Iwamoto Shinichi (Ohmiya JPX) Nojiri Minoru (Zushi CA JPX) Umezawa Yukihiko (Sacr, Remote processing of a plurality of commands during a session between a first computer and a host computer.
Bly Sara A. (Mountain View CA) Farrand A. Brady (Berkeley CA) Hodges Jeffery D. (Newark CA) Kupfer Michael D. (Mountain View CA) Lewis Brian T. (Palo Alto CA) Maybury William J. (Torrance CA) Tallan , Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstat.
He, Haixiang; Fedyk, Donald; Dondeti, Lakshminath, Scalable, distributed method and apparatus for transforming packets to enable secure communication between two stations.
Karp Alan H. (Palo Alto CA) Hao Ming C. (Los Altos Hills CA) Gupta Rajiv (Los Altos CA), Sender-selective send/receive order processing on a per message basis.
Parsons ; Jr. John E. ; Graziadio Bradley J. ; Momoh Oshoma, Server operating system for supporting multiple client-server sessions and dynamic reconnection of users to previous sessions using different computers.
Johnson Donavon W. (Georgetown TX) Neuman Grover H. (Austin TX) Sauer Charles H. (Austin TX) Shaheen-Gouda Amal A. (Austin TX) Smith Todd A. (Austin TX), System and method for accessing remote files in a distributed networking environment.
Kells Timothy Roger ; Peebles Thomas Frank, System and method for supporting distributed computing mechanisms in a local area network server environment.
Henson Larry W. (Austin) Shaheen-Gouda Amal A. (Austin) Smith Todd A. (Austin TX), System for file and record locking between nodes in a distributed data processing environment maintaining one copy of ea.
Kaufman Charles W. (Northborough MA) Pearlman Radia J. (Acton MA) Gasser Morrie (Hopkinton MA), System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authe.
Roger Gregory Hathorn ; Bret Wayne Holley ; James Lincoln Iskiyan, System, method, and program for handling failed connections in an input/output (I/O) system.
Ian Beaumont Shields ; Peter Williams Volkmar, Systems, methods and computer program products for employing presumptive negotiation in a data communications protocol.
George, Mathew; Kruse, David M.; Pinkerton, James T.; Battepati, Roopesh C.; Jolly, Tom; Swan, Paul R.; Shang, Mingdong; Lovinger, Daniel Edward, Transparent failover.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.