System and method for an on-demand peer-to-peer storage virtualization infrastructure
First Claim
1. An apparatus for providing on-demand distributed storage in a peer-to-peer network comprising:
- a plurality of partners connected by the peer-to-peer network;
a demand for storage causing one of the plurality of partners to be a requesting partner;
an agent in a memory of each of the plurality of partners enabling each partner in the network to directly communicate and share data with any other partner in the network and enabling each partner in the network to act as a server to any other partner in the network;
a contributing program in the agent with instructions to allocate available physical storage space into a first storage unit and a second storage unit and to format the second storage unit so that it is not visible to an operating system of a partner connected to the second storage unit; and
a requesting program in the agent with instructions to perform a scan to determine the physical storage available in the second storage unit of each partner other than the requesting partner, to engage a rules engine to select a plurality of second storage units and to allocate a plurality of spaces from each of the selected second storage units, to create a virtual drive from the plurality of spaces to satisfy the demand for storage, and to direct a plurality of data blocks in and out of the virtual drive.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for creating an on-demand virtual drive from dedicated storage on a plurality of partners in a peer-to-peer network using an agent installed on each of the partners. The agent has a contributing program and a requesting program. The contributing program creates a first storage unit and a second storage unit, formatting the second storage unit so that it is not visible to the operating system of the partner and transmitting the size of the second storage unit to the other partners. The requesting partner creates a virtual drive using space on selected partner'"'"'s second drives, and directs data blocks in and out of the virtual drive. A rules engine incorporating RAID algorithms governs the selection of the partners and allocation of available space.
51 Citations
49 Claims
-
1. An apparatus for providing on-demand distributed storage in a peer-to-peer network comprising:
-
a plurality of partners connected by the peer-to-peer network;
a demand for storage causing one of the plurality of partners to be a requesting partner;
an agent in a memory of each of the plurality of partners enabling each partner in the network to directly communicate and share data with any other partner in the network and enabling each partner in the network to act as a server to any other partner in the network;
a contributing program in the agent with instructions to allocate available physical storage space into a first storage unit and a second storage unit and to format the second storage unit so that it is not visible to an operating system of a partner connected to the second storage unit; and
a requesting program in the agent with instructions to perform a scan to determine the physical storage available in the second storage unit of each partner other than the requesting partner, to engage a rules engine to select a plurality of second storage units and to allocate a plurality of spaces from each of the selected second storage units, to create a virtual drive from the plurality of spaces to satisfy the demand for storage, and to direct a plurality of data blocks in and out of the virtual drive. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 22)
-
-
17. A method for providing on-demand storage for a requesting computer;
-
connecting a plurality of computers;
installing an agent, having a contributing program and a requesting program, in the memory of each of the plurality of computers so that each computer is able to directly communicate and share data with the other computers through the agent and so that each of the computers can act as a server to any other computer in the network, and each of the computers may be a requesting computer or a contributing computer;
using the agent, allocating available physical storage space on each of the computers into a first storage unit and a second storage unit; and
formatting the second storage unit on each of the computers so that the second storage unit is not visible to an operating system of the computer. - View Dependent Claims (18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A computer program product for providing on-demand storage in a network of computers comprising:
-
an agent program enabling each computer in the network to communicate directly and share data with each of the other computers in the network and enabling each of the computers in the network to act as a server to any other computer in the network, and enabling each of the computers in the network to act as a requesting computer or a contributing computer;
a contributing program in the agent;
a requesting program in the agent;
wherein the contributing program contains instructions to allocate available physical storage space on each of the computers into a first storage unit and a second storage unit wherein the second storage unit is formatted so that it is not visible to an operating system of the computer; and
wherein the requesting program contains instructions to perform a scan to determine the physical storage available in the second storage unit of each computer other than the requesting computer, to engage a rules engine to select a plurality of contributing computers and to allocate a plurality of spaces from each of the second storage units of the contributing computers, to create a virtual drive from the plurality of spaces, and to directing data blocks in and out of the virtual drive. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49)
-
Specification