System and Method for Sharing Storage Devices over a Network
First Claim
Patent Images
1. A method for data storage of a file among at least a network node A and B using an application including a client-side portion residing at a client node and server-side portion residing at a server node, the file residing at the client node and the client node configurable for separate communication links with each of the server node, node A, and node B, comprising the steps of:
- the client accessing storage space at the server node after the server recognizes the client as a client of the server;
writing a first data segment of the file to node A and a second data segment of the file to node B, including the steps of;
choosing node A and node B for storage of the first and second data segments, respectively,generating a segment A filename for the first data segment and a segment B filename for the second data segment, andthe client writing Segment A to node A and Segment B to node B; and
after writing segment A and B, the server saving a map that enables the re-assembly of the file from the first and second data segments.
1 Assignment
0 Petitions
Accused Products
Abstract
A distributed data sharing system provides storage areas for network clients. Files are written in such a manner that user data is protected and/or so that the network can make use of any available space at a network when saving files.
122 Citations
25 Claims
-
1. A method for data storage of a file among at least a network node A and B using an application including a client-side portion residing at a client node and server-side portion residing at a server node, the file residing at the client node and the client node configurable for separate communication links with each of the server node, node A, and node B, comprising the steps of:
-
the client accessing storage space at the server node after the server recognizes the client as a client of the server; writing a first data segment of the file to node A and a second data segment of the file to node B, including the steps of; choosing node A and node B for storage of the first and second data segments, respectively, generating a segment A filename for the first data segment and a segment B filename for the second data segment, and the client writing Segment A to node A and Segment B to node B; and after writing segment A and B, the server saving a map that enables the re-assembly of the file from the first and second data segments. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A file storing method for storing a file over a network having a plurality of storage devices at network nodes, the file containing real data, comprising the steps of:
-
partitioning the real data into a plurality of real data segments; generating a random filename for each one of the real data segments; associating each of the real data segments with its respective randomly generated filename; and storing each of the real data segments on one of the plurality of storage devices. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A computer network, comprising
a client node wherein the client is the owner of a file; -
a plurality of nodes, each node including a storage space accessible by way of a first communication link comprising communication links between each of the nodes and the client node; a plurality of data segments, wherein one or more of the data segments are stored on each of the plurality of storage spaces; a server node having a storage wherein only the server storage has a map enabling the re-assembly of the file from the data segments, and a second communication link between the client and the server such that the client is enabled for accessing the information needed to re-assemble the file when the client wishes to re-assemble the file from the data segments. - View Dependent Claims (20)
-
-
21. A method for a computer to access data associated with a user'"'"'s file, the data being stored as a plurality of data segments distributed over a network having nodes, and as a plurality of copies of the data segments over the nodes, comprising the steps of
the computer requesting from a network node the locations of the data segments and copies of data segments; -
the computer accessing a node in order to retrieve a data segment; if the node is inaccessible, accessing a different node where a copy of the segment is stored; and repeating the accessing the copy of the segment at a different node step until a copy of the segment is accessible to the computer.
-
-
22. Server software residing on a storage medium, comprising:
-
a first portion for selecting a plurality of network nodes for storing data portions over a network, wherein data in a source file comprises the data portions; a second portion for selecting a filename for each of the data portions; a third portion for storing the relationship between the filenames and the nodes where the data portions reside, and the relationship between the data portions and the data in the source file in a map file; and a fourth portion for limiting access to the map file to only the owner of the source file. - View Dependent Claims (23)
-
-
24. Client software residing on a storage medium, comprising:
-
a first portion for selecting a number of data segments for writing data from a source file, the data comprising the data segments; a second portion for receiving filenames for each of the data segments, and the nodes over a network for storing each of the data segments; a third portion for writing the data segments to a plurality of nodes using a communication link between a computer where the client software resides and each of the respective nodes; a fourth portion for communicating the relationship between the filenames and the nodes where the data portions reside, and the relationship between the data portions and the data in the source file; and a fifth portion for gaining access to a map file on a network node, the map file containing the communicated relationship between the filenames and the nodes where the data portions reside, and the relationship between the data portions and the data in the source file. - View Dependent Claims (25)
-
Specification