Storage system
First Claim
1. A storage system, comprising:
- client device systems, each adapted to execute a path driver, which locates storage peers for storing or accessing data items provided in said storage peers using a processor by means of a global address table, which is updated periodically by at least one configuration server of said storage system, the path driver being configured to calculate a virtual storage cell identifier based on a data item identifier from a data request such that said storage peers are located based on an associated entry of the virtual storage cell identifier in the global address table, wherein a first group of routing bits of said virtual storage cell identifier is used by said path driver to locate storage peers for storing or accessing data items in said storage peers and a second group of remaining bits of said virtual storage cell identifier is used by said path driver to distinguish data items from different storage peers; and
at least one time server having a processor configured to synchronize local time clocks of all storage peers with a global time clock of said time server such that said updated global address table is activated at all storage peers at a same scheduled time.
1 Assignment
0 Petitions
Accused Products
Abstract
A pseudo peer-to-peer network system including several clients, each adapted to execute a path driver program. A path driver program is provided, including the steps of locating storage peers connected to the network via a network interface for storing or accessing data items provided in memories of storage peers by means of a global address table. The global address table is updated periodically by at least one configuration server of the pseudo peer-to-peer network. The network further includes at least one time server, which generates a global time clock to which local time clocks of all storage peers of the pseudo peer-to-peer network are synchronized such that a global address table updated by the configuration server is activated by all storage peers at the same scheduled time to be consistent throughout the pseudo peer-to-peer network at all times.
-
Citations
20 Claims
-
1. A storage system, comprising:
-
client device systems, each adapted to execute a path driver, which locates storage peers for storing or accessing data items provided in said storage peers using a processor by means of a global address table, which is updated periodically by at least one configuration server of said storage system, the path driver being configured to calculate a virtual storage cell identifier based on a data item identifier from a data request such that said storage peers are located based on an associated entry of the virtual storage cell identifier in the global address table, wherein a first group of routing bits of said virtual storage cell identifier is used by said path driver to locate storage peers for storing or accessing data items in said storage peers and a second group of remaining bits of said virtual storage cell identifier is used by said path driver to distinguish data items from different storage peers; and at least one time server having a processor configured to synchronize local time clocks of all storage peers with a global time clock of said time server such that said updated global address table is activated at all storage peers at a same scheduled time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A storage peer for a pseudo-peer-to-peer network system, comprising:
-
a network interface to said network; at least one memory to which virtual storage cells are assigned and in which replicas of data items are stored in said virtual storage cells; a processing unit for performing storage related operations with said data items; a global address table stored in a memory which is periodically updated by at least one configuration server of said network; wherein a local time clock of said storage peer is synchronized with a global time clock of a time server of said network such that the updated global address table of said storage peer is activated at a same scheduled time as all other storage peers which is broadcasted by said configuration server or pulled from said configuration server along with the updated global address table each time the global address table is updated by said configuration server, wherein said storage peer is located by a path driver of a client system by calculating a virtual storage cell identifier based on a data item identifier from a data request such that said storage peer is located based on an associated entry of the virtual storage cell identifier in the global address table, and wherein a first group of routing bits of said virtual storage cell identifier is used by said path driver to locate storage peers for storing or accessing data items in said storage peers and a second group of remaining bits of said virtual storage cell identifier is used by said path driver to distinguish data items from different storage peers.
-
-
13. A pseudo-peer to peer network system, comprising:
-
several clients each having a processor and being adapted to execute a path driver program, which locates storage peers connected to said network via a network interface for storing or accessing data items provided in memories of said storage peers by means of a global address table, which is updated periodically by at least one configuration server of said pseudo-peer to peer network, the path driver program being configured to calculate a virtual storage cell identifier based on a data item identifier from a data request such that said storage peers are located based on an associated entry of the virtual storage cell identifier in the global address table, wherein at least one time server of said pseudo-peer to peer network is provided to generate a global time clock to which local time clocks of all storage peers of said pseudo-peer to peer network are synchronized such that the global address table updated by said configuration server is activated at all storage peers at a same scheduled time to be consistent throughout the pseudo-peer to peer network at all times, and wherein a first group of routing bits of said virtual storage cell identifier is used by said path driver program to locate storage peers for storing or accessing data items in said storage peers and a second group of remaining bits of said virtual storage cell identifier is used by said path driver program to distinguish data items from different storage peers. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A path driver program stored on a non-transitory storage medium, executed by a client of a pseudo-peer to peer network, comprising the steps of:
-
locating storage peers using a processor to store or access data items in virtual storage cells of said storage peers by means of a global address table loaded by said client from a configuration server, which updates said global address table, wherein locating storage peers includes calculating a virtual storage cell identifier based on a data item identifier from a data request such that said storage peers are located based on an associated entry of the virtual storage cell identifier in the global address table; wherein local time clocks of all storage peers are synchronized with a global time clock such that said updated global address table is activated at all storage peers at a same scheduled time, and wherein a first group of routing bits of said virtual storage cell identifier is used to locate storage peers for storing or accessing data items in said storage peers and a second group of remaining bits of said virtual storage cell identifier is used to distinguish data items from different storage peers. - View Dependent Claims (19)
-
-
20. A data storing subsystem for storing data comprising:
-
storage peers, the storage peers including a processor and memory, for storing data items, which are located by an updated global address table, wherein storage peers are identified by calculating a virtual storage cell identifier based on a data item identifier from a data request such that said storage peers are located based on an associated entry of the virtual storage cell identifier in the updated global address table wherein the local time clocks of said storage peers are synchronized with a global time clock such that the updated global address table is activated at all storage peers at a same scheduled time and wherein a first group of routing bits of said virtual storage cell identifier is used to locate storage peers for storing or accessing data items in said storage peers and a second group of remaining bits of said virtual storage cell identifier is used to distinguish data items from different storage peers.
-
Specification