IP Library Granted Patent US 8,707,393
Granted Patent B2
US 8,707,393 · App. 13/450,055 · Granted Apr 22, 2014

Providing dispersed storage network location information of a hypertext markup language file

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,707,393
App. No.
13/450,055
Granted
Apr 22, 2014
Kind
B2
Abstract

A method begins by a dispersed storage (DS) processing module of a domain name system (DNS) server receiving, from a client, a request regarding dispersed storage network (DSN) location information of a hypertext markup language (HTML) file. The method continues with the DS processing module searching a DNS table for an entry regarding the HTML file based on information of the request. When the entry is found, the method continues with the DS processing module ascertaining the DSN location information regarding a plurality of sets of encoded data slices, wherein the HTML file is encoded using a DS error coding function to produce the plurality of sets of encoded data slices and wherein the plurality of sets of encoded data slices is stored in a DSN. The method continues with the DS processing module outputting the DSN location information to the client.

Claims (84)

1. A method for a domain name system (DNS) server, the method comprises:

receiving, from a client, a request for a hypertext markup language (HTML) file;

determining a source name for a DNS table that includes accessing information of the HTML file;

utilizing the source name to retrieve a set of encoded data slices from dispersed storage network (DSN) memory;

decoding the set of encoded data slices to recover the DNS table;

searching the DNS table for an entry regarding the HTML file;

determining whether the request requires authentication;

when the request does not require authentication:

retrieving, from the entry, a set of DSN addresses for a set of storage nodes of the DSN that are storing the HTML file as a plurality of sets of encoded data slices; and

sending the set of DSN addresses to the client such that the client can retrieve the HTML file directly from the set of storage nodes; and

when the request requires authentication:

retrieving, from the entry, a DSN address of a DSN manager of a DSN that includes the set of storage nodes; and

sending the DSN address of the DSN manager to the client, such that the client coordinates with the DSN manager to retrieve the HTML file directly from the set of storage nodes.

2. The method of claim 1 further comprises:

the request is a retrieval request that includes at least one of:

an identifier of the DSN;

a universal record locator (URL) associated with the HTML file; and

a source name associated with the plurality of sets of encoded data slices; and

searching the DNS table for the entry based on the at least one of: the identifier of the DSN, the URL, and the source name.

3. The method of claim 2 further comprises:

the request includes the source name; and

searching the DNS table for the entry based on the source name.

4. The method of claim 1 further comprises:

when the request requires authentication:

retrieving, from the entry, the DSN address of the DSN manager of the DSN that includes the set of storage nodes;

requesting a signed certificate from the DSN manager regarding the client; and

sending the signed certificate and the set of DSN addresses to the client such that the client can retrieve the HTML file directly from the set of storage nodes.

5. The method of claim 4 further comprises:

storing the signed certificate for subsequent retrieval requests for the HTML file by the client.

6. The method of claim 1 further comprises:

when the request is a creation request to create the entry in the DNS table:

creating the entry to include one or more of:

an identifier of the DSN;

a universal record locator (URL) associated with the HTML file;

a source name associated with the plurality of sets of encoded data slices; and

a DSN internet protocol (IP) address for a DSN management server.

7. The method of claim 1 further comprises:

updating the DNS table by one or more of:

accessing a DSN index of the DSN based on a domain name of the DSN to retrieve a plurality of source names that includes the source name; and

accessing a slice location table utilizing the source name to retrieve a set of DS unit internet protocol addresses.

8. A dispersed storage (DS) module comprises:

a first module, when operable within a computing device, causes the computing device to:

receive, from a client, a request for a hypertext markup language (HTML) file;

determine a source name for a domain name system (DNS) table that includes accessing information of the HTML file;

utilize the source name to retrieve a set of encoded data slices from dispersed storage network (DSN) memory; and

decode the set of encoded data slices to recover the DNS table;

a second module, when operable within the computing device, causes the computing device to:

search the DNS table for an entry regarding the HTML file;

a third module, when operable within the computing device, causes the computing device to:

determine whether the request requires authentication;

when the request does not require authentication:

retrieve, from the entry, a set of DSN addresses for a set of storage nodes of the DSN that are storing the HTML file as a plurality of sets of encoded data slices; and

send the set of DSN addresses to the client such that the client can retrieve the HTML file directly from the set of storage nodes; and

when the request requires authentication:

retrieve, from the entry, a DSN address of a DSN manager of a DSN that includes the set of storage nodes; and

send the DSN address of the DSN manager to the client, such that the client coordinates with the DSN manager to retrieve the HTML file directly from the set of storage nodes.

9. The DS module of claim 8 further comprises:

the request is a retrieval request that includes at least one of:

an identifier of the DSN;

a universal record locator (URL) associated with the HTML file; and

a source name associated with the plurality of sets of encoded data slices; and

the second module further functions to:

search the DNS table for the entry based on the at least one of: the identifier of the DSN, the URL, and the source name.

10. The DS module of claim 9 further comprises:

the request includes the source name; and

the second module further functions to:

search the DNS table for the entry based on the source name.

11. The DS module of claim 8 , wherein the third module further functions to cause the computing device to:

when the request requires authentication:

retrieve, from the entry, the DSN address of the DSN manager of the DSN that includes the set of storage nodes;

request a signed certificate from the DSN manager regarding the client; and

send the signed certificate and the set of DSN addresses to the client such that the client can retrieve the HTML file directly from the set of storage nodes.

12. The DS module of claim 8 further comprises:

a fourth module, when operable within the computing device, causes the computing device to:

when the request is a creation request to create the entry in the DNS table, create the entry to include one or more of:

an identifier of the DSN;

a universal record locator (URL) associated with the HTML file;

a source name associated with the plurality of sets of encoded data slices; and

a DSN internet protocol (IP) address for a DSN management server.

13. The DS module of claim 8 further comprises:

a fourth module, when operable within the computing device, causes the computing device to:

update the DNS table by one or more of:

accessing a DSN index of the DSN based on a domain name of the DSN to retrieve a plurality of source names that includes the source name; and

accessing a slice location table utilizing the source name to retrieve a set of DS unit internet protocol addresses.

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 Apr 19, 2012
From: GRUBE, GARY W.; MARKISON, TIMOTHY W.
To: CLEVERSAFE, INC.
Reel/Frame 028073/0516 →