Servicing of network software components of nodes of a cluster storage system

US11546337B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11546337-B2
Application numberUS-201916448063-A
CountryUS
Kind codeB2
Filing dateJun 21, 2019
Priority dateFeb 17, 2009
Publication dateJan 3, 2023
Grant dateJan 3, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

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.

First claim

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

Assignees

Inventors

Classifications

  • 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

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11546337B2 cover?
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…
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/1097. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 03 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).