Servicing of storage device software components of nodes of a cluster storage system
US-10693970-B2 · Jun 23, 2020 · US
US11546337B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11546337-B2 |
| Application number | US-201916448063-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 21, 2019 |
| Priority date | Feb 17, 2009 |
| Publication date | Jan 3, 2023 |
| Grant date | Jan 3, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Described herein are method and apparatus for servicing software components of nodes of a cluster storage system. During data-access sessions with clients, client IDs and file handles for accessing files are produced and stored to clients and stored (as session data) to each node. A serviced node is taken offline, whereby network connections to clients are disconnected. Each disconnected client is configured to retain its client ID and file handles and attempt reconnections. Session data of the serviced node is made available to a partner node (by transferring session data to the partner node). After clients have reconnected to the partner node, the clients may use the retained client IDs and file handles to continue a data-access session with the partner node since the partner node has access to the session data of the serviced node and thus will recognize and accept the retained client ID and file handles.
Opening claim text (preview).
What is claimed is: 1. A system, comprising: shared storage accessible to a network of nodes; the network nodes including a first node and a second node, wherein the network of nodes: establish a connection between a client and the first node based upon credentials of the client being authenticated, wherein a client identifier is provided to the client; in response to receiving an access request, comprising the client identifier, for a file accessible through the first node: form a handle to include a disk element identifier of a disk element of the first node, a file inode number generated by the disk element for the file, and a virtual address that is translated into a physical address for locating the file in the shared storage, wherein the handle is provided to the client; generate session data to include network element session data and disk element session data, wherein the network element session data includes a user identifier, the client identifier, and the handle, and the disk element session data includes the user identifier, the client identifier, the handle, permission data, and lock state type data; in response to receiving a request, including the handle and the client identifier, to access the file through the first node, provide the client with access to the file using the session data; in response to closing network ports of a network element of the first node, migrate virtual network interfaces of the network ports to the second node of the network of nodes as migrated virtual network interfaces; and provide, by the second node using the network element session data and the disk element session data of the session data, the client with access to the file based upon the client connecting to the migrated virtual network interfaces through the network ports of the second node, wherein the virtual address of the file is used to determine the disk element identifier of the disk element serving the file. 2. The system of claim 1 , wherein a combination of the user identifier and the client identifier are used by the first node and the second node to uniquely identify a user/client accessing the shared storage, and wherein the handle uniquely identifies the file. 3. The system of claim 1 , wherein the disk element validates the request by matching the handle and the client identifier within the request with a matching entry within the disk element session data. 4. The system of claim 1 , wherein the network element matches the handle and the client identifier within the request with a matching entry within the network element session data for processing the request. 5. The system of claim 1 , wherein the permission data and the lock state type data is maintained for combinations of user identifiers and client identifiers uniquely identifying users/clients, and wherein each combination of a particular client identifier and a particular handle and associated permission data and lock state type data is maintained as a single entry within the disk element session data. 6. The system of claim 5 , wherein entries of the disk element session data are indexed by combinations of client identifiers and handles. 7. The system of claim 5 , wherein entries of the disk element session data are indexed by combinations of user identifiers and handles. 8. The system of claim 1 , wherein the second node accepts a subsequent request from the client to access the file without performing a connection authentication procedure that the first node performed to authenticate the credentials of the client, wherein the second node accepts the subsequent request having the original client identifier and handle generated by the first node and retained by the client, and wherein the file opened by the client through the first node stays open without being closed before being accessed through the second node. 9. The system of claim 1 , comprising: a serving software component that takes the first node offline and utilizes a servicing module to service the first node, wherein the session data is made available to the second node based upon the serving software component determining that the first node is to be taken offline and serviced. 10. A method, comprising: establishing, by a network of nodes including a first node and an second node that provide clients with access to shared storage, a connection between a client and the first node based upon credentials of the client being authenticated, wherein a client identifier is provided to the client; in response to receiving an access request, comprising the client identifier, for a file accessible through the first node: forming a handle to include a disk element identifier of a disk element of the first node, a file inode number generated by the disk element for the file, and a virtual address that is translated into a physical address for locating the file in the shared storage, wherein the handle is provided to the client; generating session data to include network element session data and disk element session data, wherein the network element session data includes a user identifier, the client identifier, and the handle, and the disk element session data includes the user identifier, the client identifier, the handle, permission data, and lock state type data; in response to receiving a request, including the handle and the client identifier, to access the file through the first node, providing the client with access to the file using the session data; in response to closing network ports of a network element of the first node, migrating virtual network interfaces of the network ports to the second node of the network of nodes as migrated virtual network interfaces; and providing, by the second node using the network element session data and the disk element session data of the session data, the client with access to the file based upon the client connecting to the migrated virtual network interfaces through the network ports of the second node, wherein the virtual address of the file is used to determine the disk element identifier of the disk element serving the file. 11. The method of claim 10 , comprising: utilizing a combination of the user identifier and the client identifier to uniquely identify a user/client accessing the shared storage, and wherein the handle uniquely identifies the file. 12. The method of claim 10 , comprising: validating, by the disk element, the request by matching the handle and the client identifier within the request with a matching entry within the disk element session data. 13. The method of claim 10 , comprising: matching, by the network element, the handle and the client identifier within the request with a matching entry within the network element session data for processing the request. 14. The method of claim 10 , comprising: maintaining the permission data and the lock state type data for combinations of user identifiers and client identifiers uniquely identifying users/clients, wherein each combination of a particular client identifier and a particular handle and associated permission data and lock state type data is maintained as a single entry within the disk element session data. 15. The method of claim 10 , comprising: indexing entries of the disk element session data by combinations of client identifiers and handles. 16. The method of claim 10 , comprising: indexing entries of the disk element session data by combinations of user identifiers and handles. 17. The method of claim 10 , comprising: accepting, by the second node, a subsequent request from the client to acces
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
in relation to access · CPC title
in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title
using passwords (cryptographic mechanisms or cryptographic arrangements for entity authentication using a predetermined code H04L9/3226) · CPC title
for controlling access to devices or network resources · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.