IP Library Granted Patent US 8,356,016
Granted Patent B1
US 8,356,016 · App. 13/225,194 · Granted Jan 15, 2013

Forwarding filesystem-level information to a storage management system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,356,016
App. No.
13/225,194
Granted
Jan 15, 2013
Kind
B1
Abstract

The disclosed embodiments provide a system that facilitates forwarding filesystem-level information to a storage management system. During operation, a computing device receives a request for a file operation from a client computing device, and issues one or more filesystem operations in response. A filesystem device driver extracts filesystem-level information from these filesystem operations, and then forwards the extracted filesystem-level information to the storage management system.

Claims (74)

1. A computer-implemented method for forwarding filesystem-level information to a storage management system in a computing device, wherein the storage management systems of multiple computing devices manage front-end caches for data stored in a network storage system, the method comprising:

receiving a request to perform a file operation from a client computing device via a network;

issuing one or more filesystem operations associated with the request;

using a filesystem device driver to extract filesystem-level information from the one or more filesystem operations;

forwarding the filesystem-level information to the storage management system, wherein the storage management system communicates with a second storage management system of a second computing device to ensure data consistency for the data stored by the network storage system; and

wherein using the filesystem device driver to extract filesystem-level information facilitates maintaining data consistency for the network storage system while providing multiple client computing devices transparent, shared access to the network storage system.

2. The computer-implemented method of claim 1 ,

wherein the storage management system is associated with a network-attached storage device;

wherein the network-attached storage device caches data stored in the network storage system; and

wherein the storage management system uses the forwarded filesystem-level information to manage file data associated with the request in the network-attached storage device and the network storage system.

3. The computer-implemented method of claim 2 ,

wherein extracting and forwarding the filesystem-level information decouples the request from any specific block-level storage device;

wherein the method further comprises dynamically adjusting the amount of data storage space available in the network storage system; and

wherein caching data from the network storage system in the network-attached storage device facilitates transparently providing extensible data storage capabilities to the client computing device in response to the dynamic adjustment in the network storage system.

4. The computer-implemented method of claim 3 , wherein the request is a Common Internet File System request.

5. The computer-implemented method of claim 4 ,

wherein two or more client computing devices access a shared data set using Common Internet File System requests;

wherein each of the two or more client computing devices sends Common Internet File System requests to a different request server; and

wherein the two or more storage management systems facilitate simultaneously allowing the two or more client computing devices to access the shared data set.

6. The computer-implemented method of claim 5 , wherein managing file data further involves one or more of the following:

determining whether to store the file in the network storage system; and

determining whether to cache the file on the network-attached storage device.

7. The computer-implemented method of claim 6 , wherein the filesystem device driver forwards the full set of semantic file information available on the client computing device to the storage management system.

8. The computer-implemented method of claim 7 , wherein the forwarded filesystem-level information comprises:

a file name;

a file type;

a requested file operation;

a set of application information associated with the file;

one or more users accessing the file; and

security information for the file.

9. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for forwarding filesystem-level information to a storage management system in a computing device, wherein the storage management systems of multiple computing devices manage front-end caches for data stored in a network storage system, the method comprising:

receiving a request to perform a file operation from a client computing device via a network;

issuing one or more filesystem operations associated with the request;

using a filesystem device driver to extract filesystem-level information from the one or more filesystem operations;

forwarding the filesystem-level information to the storage management system, wherein the storage management system communicates with a second storage management system of a second computing device to ensure data consistency for the data stored by the network storage system; and

wherein using the filesystem device driver to extract filesystem-level information facilitates maintaining data consistency for the network storage system while providing multiple client computing devices transparent, shared access to the network storage system.

10. The non-transitory computer-readable storage medium of claim 9 ,

wherein the storage management system is associated with a network-attached storage device;

wherein the network-attached storage device caches data stored in the network storage system; and

wherein the storage management system uses the forwarded filesystem-level information to manage file data associated with the request in the network-attached storage device and the network storage system.

11. The non-transitory computer-readable storage medium of claim 10 ,

wherein extracting and forwarding the filesystem-level information decouples the request from any specific block-level storage device;

wherein the method further comprises dynamically adjusting the amount of data storage space available in the network storage system; and

wherein caching data from the network storage system in the network-attached storage device facilitates transparently providing extensible data storage capabilities to the client computing device in response to the dynamic adjustment in the network storage system.

12. The non-transitory computer-readable storage medium of claim 11 , wherein the request is a Common Internet File System request.

13. The non-transitory computer-readable storage medium of claim 12 ,

wherein two or more client computing devices access a shared data set using Common Internet File System requests;

wherein each of the two or more client computing devices sends Common Internet File System requests to a different request server; and

wherein the two or more storage management systems facilitate simultaneously allowing the two or more client computing devices to access the shared data set.

14. The non-transitory computer-readable storage medium of claim 13 , wherein managing file data further involves one or more of the following:

determining whether to store the file in the network storage system; and

determining whether to cache the file on the network-attached storage device.

15. The non-transitory computer-readable storage medium of claim 14 , wherein the filesystem device driver forwards the full set of semantic file information available on the client computing device to the storage management system.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the forwarded filesystem-level information comprises:

a file name;

a file type;

a requested file operation;

a set of application information associated with the file;

one or more users accessing the file; and

security information for the file.

17. A computing device that facilitates forwarding filesystem-level information to a storage management system, comprising:

a processor;

a receiving mechanism configured to receive a request to perform a file operation from a client computing device; and

a storage management mechanism configured to manage file data associated with the request in the computing device and a network storage system, wherein the storage management systems of multiple computing devices manage front-end caches for data stored in the network storage system;

wherein the receiving mechanism is further configured to issue one or more filesystem operations in response to the request;

wherein a filesystem device driver executing on the processor extracts filesystem-level information from the one or more filesystem operations; and

wherein the filesystem device driver is configured to forward the filesystem-level information to the storage management mechanism, wherein the storage management system communicates with a second storage management system of a second device to ensure data consistency for the data stored by the network storage system; and

wherein using the filesystem device driver to extract filesystem-level information facilitates maintaining data consistency for the network storage system while providing multiple client computing devices transparent, shared access to the network storage system.

18. A computer-implemented method for using a guest operating system to forward filesystem-level information to a storage management system in a computing device, the method comprising:

executing a guest operating system on a virtual machine that operates within a host operating system on the computing device, wherein the computing device serves as a front-end cache for a network storage system, wherein the network storage system stores data that is being simultaneously accessed by the computing device and a second computing device, wherein the two computing devices cache data stored in the network storage system, wherein the guest operating system includes a CIFS server implementation, wherein the storage management system of the computing device communicates with a second storage management system executing on the second computing device to ensure data consistency for the data stored by the network storage system;

receiving in the guest operating system a request to perform a CIFS file operation from a client computing device;

using a filesystem device driver for the guest operating system to forward filesystem-level information associated with the request to the host operating system; and

using the forwarded information in the storage management system to manage file data associated with the request in the computing device, the second computing device, and the network storage system;

wherein managing file data associated with the request in the storage management system facilitates simultaneously accessing the same data set via multiple CIFS requests that are routed to different computing devices.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 25, 2023
From: PANZURA, LLC
To: ALTER DOMUS (US) LLC
Reel/Frame 064716/0982 →
RELEASE OF SECURITY INTEREST Recorded Jun 16, 2023
From: CANADIAN IMPERIAL BANK OF COMMERCE
To: PANZURA, LLC
Reel/Frame 064006/0786 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNOR'S NAME AND EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 059744 FRAME: 0965. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 22, 2023
From: PANZURA, LLC
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 062955/0518 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA FROM PANZURRA, LLC TO PANZURA, LLC AND CORRECT PROPERTY TYPES TO PATENT FOR PROPERTIES 31-34 AND 39 PREVIOUSLY RECORDED ON REEL 059744 FRAME 0965. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Feb 17, 2023
From: PANZURA, LLC
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 062928/0524 →
SECURITY INTEREST Recorded Apr 30, 2022
From: PANZURRA, LLC
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 059744/0965 →
CHANGE OF ADDRESS Recorded Apr 1, 2022
From: PANZURA, LLC
To: PANZURA, LLC
Reel/Frame 059570/0712 →
MERGER Recorded Jan 4, 2022
From: PANZURA, INC.
To: NEW PANZURA, LLC
Reel/Frame 058546/0448 →
CHANGE OF NAME Recorded Jan 4, 2022
From: NEW PANZURA, LLC
To: PANZURA, LLC
Reel/Frame 058641/0301 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2011
From: CHOU, RANDY YEN-PANG
To: PANZURA, INC.
Reel/Frame 026974/0489 →