IP Library Patent Application 15956984
Patent Application
App. No. 15/956,984

LARGE SCALE DISPERSED STORAGE NETWORK USING WIRELESS DEVICES AND CENTRALIZED CONTROL

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 None
App. No.
15/956,984
Abstract

A method for a dispersed storage network (DSN) determines wireless connectivity metrics when a wireless device has a data file to store. The method includes determining a storage method including storing the data file locally in the wireless device as a data file, storing encoded data slices of the data file in wireless devices or storing encoded data slices of the data file in DSN memory. For storing in wireless devices or in DSN memory, the wireless device sends a subscription request message and determines a storage designation to include any of: store locally, store indirect, or store direct; and for a determination of indirect, the wireless device sends the data file to the DS processing unit; and for direct, determines operational parameters, creates encoded data slices of the data file in accordance with the operational parameters, determines storage locations and sends the encoded data slices to other wireless devices.

Claims (48)

1 . A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:

determining, by a wireless device, wireless connectivity metrics when the wireless device has a data file to store;

determining, by the wireless device, a storage method where the storage method includes one or more of: storing the data file locally in the wireless device as a data file, storing encoded data slices of the data file in wireless devices, or storing encoded data slices of the data file in DSN memory;

for a determination including storing encoded data slices of the data file in wireless devices or in DSN memory, the wireless device:

prepares and sends a subscription request message to a DS processing unit;

receives and saves a subscription request response message as a subscription status; and

determines a storage designation to include any of: store locally, store indirect, or store direct; and

for a determination to store indirect:

sends the data file to the DS processing unit; and

for a determination to store direct:

determines operational parameters;

creates encoded data slices of the data file in accordance with the operational parameters and an error coding dispersal storage function;

determines DS storage locations; and

sends the encoded data slices to wireless devices included in the determined DS storage locations.

2 . The method of claim 1 , wherein the wireless connectivity metrics include one or more of: average bit rate, peak bit rate, lowest bit rate, estimate sustained bandwidth, connectivity uptime, network availability, availability based on location, current location, or estimated future location.

3 . The method of claim 1 , wherein the wireless device is continuously measuring the wireless connectivity metrics and saving measurement results in local memory.

4 . The method of claim 1 , wherein the determination of a storage method is based on one of more of: the wireless connectivity metrics, a data file type, a data file size, a security indicator, a performance requirement, a cost requirement, a preference, or a command.

5 . The method of claim 4 , wherein the wireless device determines to store locally when the wireless connectivity metrics fall below desired thresholds.

6 . The method of claim 1 , wherein the subscription request message includes one or more of: a subscription request command, a wireless device ID, the wireless connectivity metrics, a data file type, a data file size, a security indicator, a performance requirement, a cost requirement, a preference, or a command.

7 . The method of claim 1 , wherein the DS processing unit determines a subscription request response based on one or more of: a subscription request command, a wireless device ID, the wireless connectivity metrics, a data file type, a data file size, a security indicator, a performance requirement, a cost requirement, a preference, estimated security, estimated performance, estimated cost, estimated memory availability, or a command.

8 . The method of claim 7 , wherein the subscription request response includes one or more of: subscription approved or not approved, a minimum threshold of operation of the wireless connectivity metrics, approval to store slices indirectly by sending the data file to the DS processing unit, approval to create and store slices directly to other wireless devices, estimated memory availability, or the DSN memory.

9 . The method of claim 1 , wherein the store indirectly includes sending the data file to the DS processing unit to be encoded, sliced and stored as encoded data slices.

10 . The method of claim 1 , wherein the wireless device determines the store direct when any of: the subscription status indicates that the wireless device was approved to create and store slices directly to other wireless devices, an estimated memory availability for the other wireless devices is greater than a data file size by at least a threshold, or the wireless connectivity metrics indicate favorable conditions above a minimum threshold.

11 . The method of claim 1 , wherein the wireless device determines the operational parameters include a relatively large number of storage pillars with a relatively low number of read pillars when the wireless connectivity metrics indicate unfavorable connectivity.

12 . The method of claim 1 , wherein the determine DS storage locations includes the wireless device selecting other wireless devices that have a lowest estimated retrieval latency combined with best available wireless connectivity metrics.

13 . The method of claim 1 further comprises: the wireless device receiving confirmation of storage messages from wireless devices that store the slices, saving wireless device IDs when the wireless device receives confirmation of storage messages, and utilizing the wireless device IDs to subsequently retrieve the encoded data slices.

14 . A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:

receive, by a wireless device, a request to store encoded data slices in memory of the wireless device;

determining wireless connectivity metrics;

determining a subscription status;

determining a memory status of the wireless device, the memory status indicating if the memory is full or how much storage space is available to accept received encoded data slices;

determining a storage approach, wherein the storage approach includes to store at least some of the encoded data slices or to store none of the encoded data slices; and

for a determination of store none of the encoded data slices, sending a reject message to a storage requester; and

for a determination of store at least some of the encoded data slices in one or more of: in local wireless device memory or another wireless device memory, updating a local virtual DSN address of an encoded data slice name to physical location table with a location of the at least some of the encoded data slices to facilitate a subsequent retrieval.

15 . The method of claim 14 further comprises the wireless device preparing and sending a confirmation message to the storage requester.

16 . A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:

receiving, by a wireless device, a request to retrieve encoded data slices, wherein the request includes a retrieve slice command, slice names, and a priority indicator from one or more of: the wireless device, a DS processing unit, a storage integrity processing unit, a DS managing unit, or a DS unit;

determining wireless connectivity metrics;

determining a subscription status;

for an active subscription status, retrieving the encoded data slices based on a lookup in a virtual DSN address to physical location table;

determining a retrieval outcome, the retrieval outcome including an indication of whether the retrieval was favorable or unfavorable based on one or more of: slice names listed in the virtual DSN address to physical location table, encoded data slices present in memory, or verification of a stored checksum compared to a currently calculated checksum of the encoded data slice;

determining a retrieval outcome to be favorable or not favorable; and

for a not favorable retrieval outcome, sending a retrieval response message; and

for a favorable retrieval outcome, sending the encoded data slices to a requester.

17 . The method of claim 16 , wherein the retrieval response message includes a reject message including a list of the slice names not stored to provide the requester a list of the encoded data slices to send to another wireless device.

18 . The method of claim 16 , wherein the wireless device may determine how many of the encoded data slices to store based on one or more of the wireless connectivity metrics, slice sizes, available memory, memory status, a priority indicator, or a wireless device activity indicator.

19 . The method of claim 16 , wherein the wireless device stores only highest priority encoded data slices when the wireless connectivity metrics are unfavorable.

20 . The method of claim 16 , wherein when the wireless device determines the subscription status to be inactive, the wireless device sends a retrieval response message including a list of the slice names not available from this wireless device ID such that a requester retrieves same or different pillar encoded data slices from another wireless device.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE DELETE 15/174/279 AND 15/174/596 PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 49555 FRAME: 530. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 7, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 051495/0831 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049555/0530 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2018
From: GRUBE, GARY W.; MARKISON, TIMOTHY W.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 045591/0204 →