Patent ID: 8645978

Claim:
A method for maintaining data in a data storage system, the data storage system including data storage nodes interconnected by means of a communications network, the method comprising: providing an application programming interface (API) to perform the following steps: storing a root key; identifying a first data item based on at least the root key; sending a multicast request for a the first data item to a first of the plurality of storage nodes, receiving the a first response from one or more storage nodes in the first of the plurality of storage nodes, wherein the first response comprises the first data item; and determining a second data item based on a first reference in the first data item, wherein the first reference in the first data item comprises an identifier for the second data item and a corresponding multicast address for locating the second data item; sending a second request, wherein the second request requests the second data item, and the second request is sent using the corresponding multicast address; receiving a second response, wherein the second response comprises the second data item; determining a third data item based on a second reference in the second data item; sending a third request for the third data item, wherein the third request is sent to an address identified in the second to reference; and receiving the third data item, wherein the third data item comprises a data file.