IP Library Granted Patent US 8,625,637
Granted Patent B2
US 8,625,637 · App. 13/080,286 · Granted Jan 7, 2014

Conclusive 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 8,625,637
App. No.
13/080,286
Granted
Jan 7, 2014
Kind
B2
Abstract

A method begins by a processing module generating a payload of a dispersed storage network frame regarding a conclusive write request operation by generating one or more slice name fields of a payload to include one or more slice names corresponding to one or more write commit responses of a write request operation, wherein the conclusive write request operation is a conclusive phase of the write request operation. The method continues with the processing module generating one or more slice revision numbering fields of the payload, wherein each slice revision numbering field includes a slice revision number corresponding to an associated slice name of the one or more slice names. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length and generating remaining fields of the protocol header.

Claims (82)

1. A method for execution by a computer to perform a conclusive write request operation, the method comprises:

generating a payload of a dispersed storage network (DSN) frame regarding the conclusive write request operation by:

generating one or more slice name fields of the payload to include one or more slice names corresponding to one or more write commit responses of a write request operation, wherein the conclusive write request operation is a conclusive phase of the write request operation; and

generating one or more slice revision numbering fields of the payload, wherein each slice revision numbering field includes a slice revision number corresponding to an associated slice name of the one or more slice names; and

generating a protocol header of the DSN frame by:

generating a payload length field of the protocol header to include a payload length that represents length of the one or more slice name fields and length the one or more slice revision numbering fields; and

generating remaining fields of the protocol header.

2. The method of claim 1 further comprises:

outputting the DSN frame in order of the protocol header and one or more slice field pairs, wherein each of the one or more slice field pairs includes, in order, a slice name field of the one or more slice name fields and a slice revision numbering field of the one or more slice revision numbering fields, wherein the slice revision numbering field is associated with the slice name field.

3. The method of claim 1 , wherein generating remaining fields of the protocol header comprises at least one of:

generating an operation code field to indicate a finalize write request operation when a threshold number of the one or more write commit responses have been received;

generating a protocol class field to indicate a protocol class for the finalize write request operation when the threshold number of the one or more write commit responses have been received; and

generating a protocol class version field to indicate a protocol class version for the finalize write request operation when the threshold number of the one or more write commit responses have been received.

4. The method of claim 1 , wherein generating remaining fields of the protocol header comprises at least one of:

generating the operation code field to indicate an undo write request operation when a threshold number of the one or more write commit responses have not been received;

generating the protocol class field to indicate a protocol class for the undo write request operation when the threshold number of the one or more write commit responses have not been received; and

generating the protocol class version field to indicate a protocol class version for the undo write request operation when the threshold number of the one or more write commit responses have not been received.

5. The method of claim 1 , wherein the generating the one or more slice names comprises at least one of:

receiving the one or more slice names; and

selecting the one or more slice names from a slice names list.

6. The method of claim 1 further comprises:

generating a plurality of DSN frames regarding the conclusive write request operation, wherein the plurality of DSN frames includes the DSN frame.

7. A method for a computing device to perform a conclusive write response operation, the method comprises:

generating a protocol header of a dispersed storage network (DSN) frame by:

generating an operation code field to indicate the conclusive write response operation;

generating a request number field to include a request number associated with a conclusive write request operation; and

generating remaining fields of the protocol header.

8. The method of claim 7 , wherein generating the operation code field of the protocol header further comprises at least one of:

generating the operation code field to indicate a finalize write response operation when a threshold number of the one or more write commit responses have been received;

generating the operation code field to indicate an undo write response operation when the threshold number of the one or more write commit responses have not been received; and

extracting an operational code from a corresponding conclusive write request message.

9. The method of claim 7 , wherein generating the remaining fields of the protocol header comprises at least one of:

generating a protocol class field to indicate a protocol class for the conclusive write response operation;

generating a protocol class version field for the conclusive write response operation;

generating a payload length field of the protocol header to include a predetermined payload length value; and

generating a request/response field to indicate a response message.

10. The method claim 9 further comprises:

outputting, in order, the protocol class field, the protocol class version field, the operation code field, the request/response field, the request number field, and the payload length field.

11. A computer comprises:

an interface;

a memory; and

a processor operably coupled to the interface and to the memory, where the processor is operable to:

generate a payload of a dispersed storage network (DSN) frame regarding a conclusive write request operation by:

generating one or more slice name fields of the payload to include one or more slice names corresponding to one or more write commit responses of a write request operation, wherein the conclusive write request operation is a conclusive phase of the write request operation; and

generating one or more slice revision numbering fields of the payload, wherein each slice revision numbering field includes a slice revision number corresponding to an associated slice name of the one or more slice names; and

generate a protocol header of the DSN frame by:

generating a payload length field of the protocol header to include a payload length that represents length of the one or more slice name fields and length the one or more slice revision numbering fields; and

generating remaining fields of the protocol header.

12. The computer of claim 11 , wherein the processor further functions to:

output, via the interface, the DSN frame in order of the protocol header and one or more slice field pairs, wherein each of the one or more slice field pairs includes, in order, a slice name field of the one or more slice name fields and a slice revision numbering field of the one or more slice revision numbering fields, wherein the slice revision numbering field is associated with the slice name field.

13. The computer of claim 11 , wherein the processor functions to generate the remaining fields of the protocol header by at least one of:

generating an operation code field to indicate a finalize write request operation when a threshold number of the one or more write commit responses have been received;

generating a protocol class field to indicate a protocol class for the finalize write request operation when the threshold number of the one or more write commit responses have been received; and

generating a protocol class version field to indicate a protocol class version for the finalize write request operation when the threshold number of the one or more write commit responses have been received.

14. The computer of claim 11 , wherein the processor functions to generate the remaining fields of the protocol header by at least one of:

generating the operation code field to indicate an undo write request operation when a threshold number of the one or more write commit responses have not been received;

generating the protocol class field to indicate a protocol class for the undo write request operation when the threshold number of the one or more write commit responses have not been received; and

generating the protocol class version field to indicate a protocol class version for the undo write request operation when the threshold number of the one or more write commit responses have not been received.

15. The computer of claim 11 , wherein the processor functions to generate the one or more slice names by at least one of:

receiving, via the interface, the one or more slice names; and

selecting the one or more slice names from a slice names list.

16. The computer of claim 11 , wherein the processor further functions to:

generate a plurality of DSN frames regarding the conclusive write request operation, wherein the plurality of DSN frames includes the DSN frame.

17. A computer comprises:

an interface;

a memory; and

a processor operably coupled to the interface and to the memory, where the processor is operable to:

generate a protocol header of a dispersed storage network (DSN) frame by:

generating an operation code field to indicate a conclusive write response operation;

generating a request number field to include a request number associated with a conclusive write request operation; and

generating remaining fields of the protocol header.

18. The computer of claim 17 , wherein the processor further functions to generate the operation code field of the protocol header by at least one of:

generating the operation code field to indicate a finalize write response operation when a threshold number of the one or more write commit responses have been received;

generating the operation code field to indicate an undo write response operation when the threshold number of the one or more write commit responses have not been received; and

extracting an operational code from a corresponding conclusive write request message.

19. The computer of claim 17 , wherein the processor functions to generate the remaining fields of the protocol header by at least one of:

generating a protocol class field to indicate a protocol class for the conclusive write response operation;

generating a protocol class version field for the conclusive write response operation;

generating a payload length field of the protocol header to include a predetermined payload length value; and

generating a request/response field to indicate a response message.

20. The computer claim 19 , wherein the processor further functions to:

output, via the interface, in order, the protocol class field, the protocol class version field, the operation code field, the request/response field, the request number field, and the payload length field.

Assignments (6)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 20, 2011
From: BAPTIST, ANDREW; LEGGETTE, WESLEY; RESCH, JASON K.; MARK, ZACHARY J.; VOLVOVSKI, ILYA
To: CLEVERSAFE, INC.
Reel/Frame 026935/0088 →