IP Library Granted Patent US 9,256,571
Granted Patent B2
US 9,256,571 · App. 14/223,020 · Granted Feb 9, 2016

Write operation dispersed storage network frame

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,256,571
App. No.
14/223,020
Granted
Feb 9, 2016
Kind
B2
Abstract

A method begins by generating a set of write request frames regarding a write request operation for a set of encoded data. Each of the write request frames includes a payload section and a protocol header. The payload section includes a transaction number field and a data payload section, which includes a name field, a revision number field, a length field, and a payload field. The protocol header includes a payload length field and an operation code field to indicate the write request operation. The method continues by outputting the set of write request frames to storage units of a dispersed storage network.

Claims (111)

1. A method for a processing module of a computing device to execute a write request operation, the method comprises:

generating a set of write request frames regarding the write request operation for a set of encoded data, wherein each of the set of write request frames includes:

a payload section that includes:

a transaction number field for a transaction number corresponding to the write request operation; and

a data payload section that includes:

a name field to include a name of a corresponding encoded data of the set of encoded data;

a revision number field to include a revision number of the name;

a length field to include a length of the corresponding encoded data of the set of encoded data; and

a payload field to include the corresponding encoded data of the set of encoded data; and

a protocol header that includes:

a payload length field to include a payload length that represents length of the payload section; and

an operation code field to indicate the write request operation; and

outputting the set of write request frames to storage units of a dispersed storage network.

2. The method of claim 1 , wherein the set of encoded data comprises:

a set of encoded data slices, wherein a segment of data was encoded in accordance with a dispersed storage error coding function to produce the set of encoded data slices.

3. The method of claim 1 , wherein the protocol header further comprises:

a protocol class field to indicate a protocol class for the write request operation; and

a protocol class version field for the write request operation.

4. The method of claim 1 further comprises:

generating the transaction number to be unique for the write request operation.

5. The method of claim 1 further comprises:

generating the set of write request frames regarding a write request operation for a plurality of sets of encoded data, wherein each of the set of write request frames includes:

the payload section that includes:

the transaction number field for the transaction number corresponding to the write request operation; and

a plurality of slice payload sections, which include the slice payload section; and

the protocol header; and

outputting the set of write request frames to the storage units.

6. The method of claim 1 further comprises:

receiving write response frames for at least some of the storage units, wherein a write response frame of the write response frames includes:

a response payload section that includes:

a response name field to include a name of one or more of the corresponding encoded data of the set of encoded data;

a status field regarding status of storing the one or more of the corresponding encoded data of the set of encoded data; and

a response protocol header that includes:

a response payload length to include a response payload length of the response payload section; and

a response operation code field to indicate a write response operation.

7. A computing device comprises:

an interface;

memory; and

a processing module operably coupled to the interface and the memory, wherein the processing module is operable to:

generate a set of write request frames regarding a write request operation for a set of encoded data, wherein each of the set of write request frames includes:

a payload section that includes:

a transaction number field for a transaction number corresponding to the write request operation; and

a data payload section that includes:

 a name field to include a name of a corresponding encoded data of the set of encoded data;

 a revision number field to include a revision number of the name;

 a length field to include a length of the corresponding encoded data of the set of encoded data; and

 a payload field to include the corresponding encoded data of the set of encoded data; and

a protocol header that includes:

a payload length field to include a payload length that represents length of the payload section; and

an operation code field to indicate the write request operation; and

output, via the interface, the set of write request frames to storage units of a dispersed storage network.

8. The computing device of claim 7 , wherein the set of encoded data comprises:

a set of encoded data slices, wherein a segment of data was encoded in accordance with a dispersed storage error coding function to produce the set of encoded data slices.

9. The computing device of claim 7 , wherein the protocol header further comprises:

a protocol class field to indicate a protocol class for the write request operation; and

a protocol class version field for the write request operation.

10. The computing device of claim 7 , wherein the processing module is further operable to:

generate the transaction number to be unique for the write request operation.

11. The computing device of claim 7 , wherein the processing module is further operable to:

generate the set of write request frames regarding a write request operation for a plurality of sets of encoded data, wherein each of the set of write request frames includes:

the payload section that includes:

the transaction number field for the transaction number corresponding to the write request operation; and

a plurality of slice payload sections, which include the slice payload section; and

the protocol header; and

output, via the interface, the set of write request frames to the storage units.

12. The computing device of claim 7 , wherein the processing module is further operable to:

receive, via the interface, write response frames for at least some of the storage units, wherein a write response frame of the write response frames includes:

a response payload section that includes:

a response name field to include a name of one or more of the corresponding encoded data of the set of encoded data;

a status field regarding status of storing the one or more of the corresponding encoded data of the set of encoded data; and

a response protocol header that includes:

a response payload length to include a response payload length of the response payload section; and

a response operation code field to indicate a write response operation.

13. A computer readable memory device comprises:

a first memory section that stores operational instructions that, when executed by a processing module of a computing device, causes the processing module to:

generate a set of write request frames regarding a write request operation for a set of encoded data, wherein each of the set of write request frames includes:

a payload section that includes:

a transaction number field for a transaction number corresponding to the write request operation; and

a data payload section that includes:

 a name field to include a name of a corresponding encoded data of the set of encoded data;

 a revision number field to include a revision number of the name;

 a length field to include a length of the corresponding encoded data of the set of encoded data; and

 a payload field to include the corresponding encoded data of the set of encoded data; and

a protocol header that includes:

a payload length field to include a payload length that represents length of the payload section; and

an operation code field to indicate the write request operation; and

a second memory section that stores operational instructions that, when executed by the processing module, causes the processing module to:

output, via an interface of the computing device, the set of write request frames to storage units of a dispersed storage network.

14. The computer readable memory device of claim 13 , wherein the set of encoded data comprises:

a set of encoded data slices, wherein a segment of data was encoded in accordance with a dispersed storage error coding function to produce the set of encoded data slices.

15. The computer readable memory device of claim 13 , wherein the protocol header further comprises:

a protocol class field to indicate a protocol class for the write request operation; and

a protocol class version field for the write request operation.

16. The computer readable memory device of claim 13 , wherein the first memory section further stores operation instructions that, when executed by the processing module, causes the processing module to:

generate the transaction number to be unique for the write request operation.

17. The computer readable memory device of claim 13 , wherein the first memory section further stores operation instructions that, when executed by the processing module, causes the processing module to:

generate the set of write request frames regarding a write request operation for a plurality of sets of encoded data, wherein each of the set of write request frames includes:

the payload section that includes:

the transaction number field for the transaction number corresponding to the write request operation; and

a plurality of slice payload sections, which include the slice payload section; and

the protocol header; and

output, via the interface, the set of write request frames to the storage units.

18. The computer readable memory device of claim 13 further comprises:

a third memory section that stores operational instructions that, when executed by the processing module, causes the processing module to:

receive, via the interface, write response frames for at least some of the storage units, wherein a write response frame of the write response frames includes:

a response payload section that includes:

a response name field to include a name of one or more of the corresponding encoded data of the set of encoded data;

a status field regarding status of storing the one or more of the corresponding encoded data of the set of encoded data; and

a response protocol header that includes:

a response payload length to include a response payload length of the response payload section; and

a response operation code field to indicate a write response operation.

Assignments (5)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 9992063 AND 10334045 LISTED IN ERROR PREVIOUSLY RECORDED ON REEL 049556 FRAME 0012. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 052205/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049556/0012 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038687/0596 →