IP Library Granted Patent US 9,830,329
Granted Patent B2
US 9,830,329 · App. 14/156,132 · Granted Nov 28, 2017

Methods and systems for data storage

Inventor: W. Anthony Mason (Vancouver, CA)
Assignee: W. Anthony Mason
G06F17/30153G06F17/30194G06F17/30067G06F17/30489H04L67/1097
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 9,830,329
App. No.
14/156,132
Granted
Nov 28, 2017
Kind
B2
Abstract

Disclosed are systems and methods for requesting operations at a remote server utilizing a network file system. A client may encapsulate a request for a cache coherency mechanism as an encapsulated message and provide the encapsulated message to a network file system executing on the client. The network file system may be configured to prevent the request for server functionality from being transmitted to the remote server. The client may also cause, via the network file system, the encapsulated message to be transmitted to the remote server.

Claims (41)

1. A system for requesting operations at a remote server utilizing a network file system, the system comprising:

at least one processor; and

a data store operatively associated with the at least one processor, wherein the at least one processor is programmed to:

execute the network file system, wherein the network file system is in communication with the remote server, and wherein the network file system is programmed to prevent requests for cache coherency mechanisms that originate outside the network file system from reaching the remote server;

receive, from a component outside the network file system, a request for a cache coherency mechanism that permits local caching of a first data block at the data store, wherein the cache coherency mechanism is breakable by the remote server;

encapsulate the request for the cache coherency mechanism to form an encapsulated message;

provide the encapsulated message to the network file system;

cause, by the network file system, the encapsulated message to be transmitted to the remote server; and

receive, from the remote server, a response from the remote server indicating granting of the requested cache coherency mechanism by the remote server.

2. The system of claim 1 , wherein the response from the remote server is received by the network file system as a second encapsulated message, and wherein the at least one processor is further programmed to decode the second encapsulated message to generate the response from the remote server.

3. The system of claim 1 , wherein the at least one processor is further programmed to:

receive from the network file system a second encapsulated message originating from the server;

decode the second encapsulated message to generate a cache coherency break request related to a second cache coherency mechanism previously granted;

encapsulate a response to the cache coherency break request in a third encapsulated message;

provide the third encapsulated message to the network file system; and

cause, by the network file system, the third encapsulated message to be transmitted to the remote server.

4. The system of claim 1 , wherein the at least one processor is further programmed to:

encapsulate a request for a data compaction function on a data storage at the server as a second encapsulated message;

provide the second encapsulated message to a network file system executing on the at least one processor; and

cause, by the network file system, the second encapsulated message to be transmitted to the remote server.

5. The system of claim 4 , wherein the data compaction function is a cleaning function for compacting data stored on the data storage of the server according to a log structured file system.

6. The system of claim 1 , wherein the at least one processor is further programmed to:

encapsulate a request for an indicator of a file as a second encapsulated message;

provide the second encapsulated message to a network file system executing on the at least one processor; and

cause, by the network file system, the second encapsulated message to be transmitted to the remote server.

7. The system of claim 6 , wherein the indicator of the file is selected from the group consisting of a file identifier (ID) and a file name.

8. The system of claim 1 , wherein the at least one processor is further programmed to:

encapsulate an access request to access at least one data block stored at a data storage distinct from the remote server as a second encapsulated message;

provide the second encapsulated message to a network file system executing on the at least one processor;

cause, by the network file system, the second encapsulated message to be transmitted to the remote server; and

receive, from the remote server, a response comprising access parameters for the at least one data block.

9. The system of claim 8 , wherein the at least one processor is further programmed to direct a data request to the data storage utilizing the access parameters for the at least one data block.

10. The system of claim 1 , wherein the at least one processor is also programmed to:

execute an application; and

execute a data transformation module, wherein the data transformation module is logically positioned between the application and the network file system, and wherein the data transformation module is programmed to:

receive a write request from the application, wherein the write request comprises a data block and a logical position of the data block, wherein the cache coherency mechanism includes write permission for the data block;

cache the data block at the data store;

perform a transformation on the data block to generate a transformed data block; and generate a second write request directed to the network file system, wherein the second write request comprises the transformed data block.

11. The system of claim 10 , wherein performing the transformation comprises:

organizing the data block into a sub-file; and

organizing the sub-file into a first file according to a log-structured file system implemented server, and wherein the second write request further comprises an indication of a logical position of the first file on the server.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF THE PATENT ASSIGNMENT AGREEMENT DATED NOVEMBER 30, 2021 PREVIOUSLY RECORDED AT REEL: 058426 FRAME: 0791. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2022
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 058736/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 058426/0791 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2018
From: MASON, W. ANTHONY
To: OPEN INVENTION NETWORK LLC
Reel/Frame 047874/0766 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2017
From: OSR OPEN SYSTEM RESOURCES, INC.
To: MASON, W. ANTHONY
Reel/Frame 042975/0522 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2014
From: MASON, W. ANTHONY
To: OSR OPEN SYSTEMS RESOURCES, INC.
Reel/Frame 033474/0231 →
Continuity (1)
Related Publication 20150199373A1 · Jul 16, 2015