Patent ID: 8769138

Claim:
A device for retrieving data from a data storage system, the data storage system including a plurality of storage nodes, the device comprising: a transmitter configured to send a multicast message requesting data to the plurality of storage nodes, wherein the multicast message includes a data identifier that identifies the requested data; and a receiver configured to receive one of the requested data or a message including a reference to the requested data from a first storage node of said plurality of storage nodes after transmission of the multicast message, wherein: the device is configured to receive the requested data in response to the multicast message rather than receiving the message including the reference to the requested data on condition that a size of the requested data is less than a predetermined value, and the device is configured to receive the message including the reference to the requested data in response to the multicast message rather than directly receiving the requested data on condition that the size of the requested data exceeds the predetermined value, wherein the message including the reference to the requested data comprises an indication of one or more storage nodes that store the requested data; and the transmitter is further configured to send a unicast communication requesting the requested data to at least one of the one or more storage nodes indicated in the message including the reference to the requested data on condition that the message including the reference to the requested data was received in response to the multicast message rather than the requested data being received in response to the multicast message.