IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0660824
(2000-09-13)
|
등록번호 |
US-7296073
(2007-11-13)
|
발명자
/ 주소 |
|
출원인 / 주소 |
|
대리인 / 주소 |
Blakely Sokoloff Taylor & Zafman LLP
|
인용정보 |
피인용 횟수 :
8 인용 특허 :
24 |
초록
▼
The invention provides a method and system for re-establishing sessions between a server and its clients following a failure of the server, planned reboot of the server, or takeover by another server. At critical points within a server/client session, state is saved so as to be reliable and consiste
The invention provides a method and system for re-establishing sessions between a server and its clients following a failure of the server, planned reboot of the server, or takeover by another server. At critical points within a server/client session, state is saved so as to be reliable and consistent. Upon reboot of the system, state is restored using that which was saved; returning the server to its pre-crash state and preserving sessions that were in progress prior to the reboot. Additionally, state saved by a first sever prior to failure or elective shutdown can be transferred to a second server in a takeover configuration also preserving sessions in progress.
대표청구항
▼
The invention claimed is: 1. A method of operating a file server, comprising the steps of: receiving a network request at said file server from a client device, wherein the network request is part of a network session; recording a state of said file server transparently to said client device, after
The invention claimed is: 1. A method of operating a file server, comprising the steps of: receiving a network request at said file server from a client device, wherein the network request is part of a network session; recording a state of said file server transparently to said client device, after receiving the request and prior to an offlining of the file server; determining whether a recovery of said file server after said offlining is to be accomplished by rebooting said file server or by takeover by another server; restoring said state of said file server upon a reboot of said file server or upon a takeover by said other server, transparently to said client device; and continuing the network session with said client device after restoring said state. 2. The method of claim 1, wherein said step of receiving a network request includes the steps of acknowledging receipt of said network request; and processing said network request. 3. The method of claim 1, wherein said step of recording state includes determining automatically whether the processing of the network request is at a point where said state can be reliably recorded. 4. The method of claim 3, wherein said step of recording state occurs at points based on progress of processing of the network request. 5. The method of claim 4, wherein said state is recorded to a non-volatile storage. 6. The method of claim 1, wherein said step of recording state at said file server occurs as part of an elective reboot or elective takeover of a server, the method further comprising: ignoring current network requests and processing all active network requests, prior to recording said state. 7. The method of claim 6, wherein all currently active requests are processed to completion. 8. The method of claim 1, wherein said step of recording state further comprises the step of determining whether a prior shutdown of said file server was elective or non-elective. 9. The method of claim 8, wherein said step of determining whether a prior shutdown of said file server was elective or non-elective is a function of a flag value stored in a non-volatile storage. 10. The method of claim 9, wherein said flag value indicates said server shutdown was elective. 11. The method of claim 9, wherein said flag value indicates said server shutdown was non-elective. 12. The method of claim 1, wherein said step of determining whether recovery is to be accomplished by rebooting the server or takeover by another server is a function of a flag value stored in a non-volatile storage. 13. The method of claim 12, wherein said flag value indicates said recovery is to be accomplished by rebooting the server. 14. The method of claim 12, wherein said flag value indicates said recovery is to be accomplished by takeover by another server. 15. The method of claim 1, wherein said step of restoring state further comprises determining whether recovery is by reboot or takeover by another server. 16. The method of claim 15, wherein said step of determining whether recovery is accomplished by reboot or takeover by another server is a function of said flag value stored in a non-volatile storage. 17. The method of claim 16, wherein said reboot comprises: rebooting an operating system of the file server; and rebuilding in-memory data structures to the state prior to said reboot. 18. The method of claim 17, wherein said rebuilding in-memory data structures further comprises fetching the state stored in said non-volatile storage to rebuild said in-memory data structures. 19. The method of claim 16, wherein said takeover comprises fetching the state stored in the non-volatile storage and rebuilding said in-memory data structures in another server using said state. 20. The method of claim 1, wherein said step of attempting to continue the network session further comprises processing an uncompleted portion of the request. 21. The method of claim 1, wherein the network session is a CIFS session. 22. An apparatus including: means for receiving a Common Internet File System (CIFS) request at a file server from a client device, wherein the CIFS request is part of a CIFS session; and means for recording a state at said file server transparently to said client device, after receiving the request and prior to an offlining of the file server; means for determining whether a recovery of said file server after said offlining is to be accomplished by rebooting said file server or by takeover by another server; means for restoring said file server to said state as recorded, upon a reboot of said file server or upon a takeover by said other server, transparently to said client device; and means for continuing the CIFS session with said client device after restoring said state. 23. The apparatus of claim 22, wherein said means for receiving a CIFS request includes means for acknowledging receipt of said CIFS request and means for processing the request. 24. The apparatus of claim 22, wherein said means for recording state includes means for determining automatically whether the processing of a CIFS request is at a point where said state can be reliably recorded. 25. The apparatus of claim 24, wherein said recording state occurs at points based on the progress of processing of a CIFS request. 26. The apparatus of claim 25, wherein said state is recorded to a non-volatile storage. 27. The apparatus of claim 22, wherein said recording said state at said file server occurs as part of an elective reboot or elective takeover of a server, the apparatus further comprising: means for ignoring current CIFS requests; and means for processing all active CIFS requests. 28. The apparatus of claim 27, wherein all currently active requests are processed to completion. 29. The apparatus of claim 22, wherein said means for recording state further comprises means for determining whether a prior server shutdown was elective or non-elective. 30. The apparatus of claim 29, wherein said means for determining whether said prior server shutdown was elective or non-elective is a function of a flag value stored in said non-volatile storage. 31. The apparatus of claim 30, wherein said flag value indicates said prior server shutdown was elective. 32. The apparatus of claim 30, wherein said flag value indicates said prior server shutdown was non-elective. 33. The apparatus of claim 22, wherein said means for determining whether recovery is to be accomplished by rebooting the server or takeover by another server is a function of a flag value stored in a non-volatile storage. 34. The apparatus of claim 33, wherein said flag value indicates said recovery is to be accomplished by rebooting the server. 35. The apparatus of claim 33, wherein said flag value indicates said recovery is to be accomplished by takeover by another server. 36. The apparatus of claim 22, wherein said means for determining whether said recovery is to be by reboot or takeover by another server is a function of a flag value stored in a non-volatile storage. 37. The apparatus of claim 36, wherein said reboot comprises: rebooting an operating system of the server; and rebuilding in-memory data structures to the state prior to said reboot. 38. The apparatus of claim 37, wherein said means for rebuilding in-memory data structures further comprises means for fetching the state stored in said non-volatile storage to rebuild said in-memory data structures. 39. The apparatus of claim 36, wherein said takeover comprises fetching the state stored in said non-volatile storage and rebuilding said in-memory data structures in another server using said state. 40. The apparatus of claim 22, wherein said means for attempting to continue the CIFS session further comprises means for processing the remaining portion of the uncompleted request. 41. A method of operating a storage server, the method comprising: receiving a Common Internet File System (CIFS) request at said storage server from a client device during a CIFS session; determining whether an elective offlining process of said storage server has been initiated; in response to determining that an elective offlining process of said storage server has been initiated, then prior to an elective offlining of said storage server, ignoring further incoming CIFS requests from said client device, completing currently active CIFS requests, determining whether a recovery of said storage server after said elective offlining is to be accomplished by rebooting said storage server or by takeover by another server, and recording a state of said storage server in a non-volatile storage medium transparently to said client device, in a manner which depends on whether said recovery is to be accomplished by rebooting said storage server or by takeover by another server; restoring said state of said storage server from said non-volatile storage medium during said recovery, transparently to said client device; and continuing the CIFS session with said client device after restoring said state. 42. The method of claim 41, wherein said recording state comprises determining automatically whether processing of the CIFS request is at a point where said stat can be reliably recorded. 43. The method of claim 42, wherein said recording state occurs at points based on progress of processing of the CIFS request. 44. The method of claim 41, wherein said determining whether recovery is to be accomplished by rebooting said server or takeover by another server is a function of a flag value stored in the non-volatile storage medium.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.