摘要:
In one embodiment, a method comprises supplying, by a network node to a peer network node, a randomization seed assigned to the network node for generating a prescribed sequence of pseudorandom numbers according to a prescribed pseudorandom number generation function; encoding each data block having a corresponding position in an ordered sequence of a stream of data blocks, into a corresponding differentially-encoded data block based on applying a product of the corresponding data block and the corresponding pseudorandom number, having the corresponding position in the prescribed sequence, to a corresponding successively-preceding differentially-encoded data block from the prescribed ordered sequence, the data block recoverable solely based on a determined difference between the corresponding differentially-encoded data block and the corresponding successively-preceding differentially-encoded data block relative to the corresponding pseudorandom number; and outputting each differentially-encoded data block in a corresponding packet that identifies the network node and the corresponding position.
摘要:
Each data file of a distributed file system is identified by a corresponding globally-unique object identifier that is independent of any attribute of the data file. A node in the distributed file system has a file system that includes a plurality of directory entries, where each directory entry has a file name field, an attributes field, and an object identifier field configured for specifying a globally-unique object identifier. The globally-unique object identifier is universally reachable by any node of the distributed file system and uniquely identifies the data file, enabling the data file to be universally identifiable by any node based on the corresponding object identifier. The data file can be stored independently of a device file system based on providing a resolution between the data file name and its object identifier, followed by a resolution between the object identifier and a selected location for the data file.
摘要:
A network provides distributed computing services based on participation in respective resource groups by computing nodes, each resource group including a corresponding resource requirement for any computing node that joins the corresponding resource group for execution of the corresponding distributed computing service. Each computing node, in response to determining its corresponding available node capacity, is configured for selectively creating and joining at least one new resource group for execution of a corresponding distributed computing service having a corresponding resource requirement, and/or selectively joining at least one of the available resource groups, based on the corresponding available node capacity satisfying the corresponding resource requirement. Each computing node also is configured for selectively leaving any one of the joined resource groups based on determined conditions. Hence, each computing node may choose to participate in as many resource groups as needed for respective computing services, based on the corresponding available node capacity.
摘要:
Distributed data, having been stored in a distributed storage system as a collection of distributed data elements, is recovered based on connection of multiple user nodes, each user node having stored selected distributed data elements as a corresponding portion of the distributed data during replication of the distributed data elements throughout the distributed storage system. Each distributed data element is identifiable by a corresponding unique object identifier (OID). Each user node includes a discovery resource for discovering reachable user nodes, a local cache configured for identifying at least the corresponding portion of the distributed data based on the respective OIDs, and an identification service module configured for resolving a data object to a corresponding OID, via the corresponding local cache, or based on sending a query to the reachable user nodes. Hence, user nodes can recover distributed data based on exchanging resolution information and OID information.
摘要:
A selection resource executed within the network is configured for selecting from among a plurality of servers, distributed throughout the network at respective network-based server locations and each configured for providing a specified service, a selected server for providing the specified service for a client device at a network-based client location. The selection resource selects the selected server based on the corresponding server location relative to the client location, and causes a request having been generated by the client device to be sent to the selected server. Hence, the selection resource optimizes client-server interactions in a distributed computing network, based on the client location and the server location.
摘要:
A server is configured for preventing flood attacks by a client having sent a request, by dynamically generating a challenge to be performed by the client before the server will perform any work for the client. The challenge includes a dynamically generated computational request and a dynamically generated secure cookie. The server generates a first hash result based on hashing a first random number, having a prescribed length, with a second random number having a dynamically selected length. A secure cookie is generated based on hashing the first hash result with a prescribed secure key known only by the server, and a unique identifier for the request such as the client network address with a time stamp. The challenge requires the client to determine the second random number based on the first random number and the hash result. The server validates the challenge results using the secure cookie.
摘要:
A Domain Name System (DNS) server is configured for dynamically selecting, for a client device, a selected resolution from available resolutions, the selected resolution identifying at least one destination for the specified service. The dynamic selection of the selected resolution is based on an attribute of the client device and/or a determined attribute of the network. Hence, the selected resolution directs the client device to a specific server based on prescribed selection criteria, for example service level agreements, the location of the client device, network performance or detected congestion conditions, authentication of the user of the client device, etc. The selected resolution also can be for enforcement of load balancing policies.
摘要:
In one embodiment, a method comprises supplying, by a network node to a peer network node, a randomization seed assigned to the network node for generating a prescribed sequence of pseudorandom numbers according to a prescribed pseudorandom number generation function; encoding each data block having a corresponding position in an ordered sequence of a stream of data blocks, by the network node into a corresponding differentially-encoded data block based on applying a product of the corresponding data block and the corresponding pseudorandom number, having the corresponding position in the prescribed sequence, to a corresponding successively-preceding differentially-encoded data block from the prescribed ordered sequence, the data block recoverable solely based on a determined difference between the corresponding differentially-encoded data block and the corresponding successively-preceding differentially-encoded data block relative to the corresponding pseudorandom number; and outputting each differentially-encoded data block in a corresponding packet that identifies the network node and the corresponding position.
摘要:
A network provides distributed database services based on replicating data records to a new storage location that is closest to consumers of the data records, based on comparing a network distance between the new storage location and an attribute identifying a center of activity of at least one data element, relative to the network distance between any existing storage location in the center of activity. If the new storage location is closer to the center of activity relative to any of the other existing stores locations, than at least the one data element associated with the center of activity is copied to the new storage location. Multiple centers of activity may be utilized for respective data records, enabling data records to be copied on a per-record basis, or grouped as needed.
摘要:
A network has a file system configured for providing a selected version of a first file to a client, having requested the file, based on detecting that the client has opened a second file having an identified relationship with the first file. Files are identified as having a relationship based on membership in a file group, wherein each file group identifies only one version of each file specified in the corresponding file group; hence, multiple file groups can identify files associated with respective versions of a file set. In response to determining the first file belongs to a file group, the file system identifies the version of the second file opened by the client, and selects the version of the first file to be provided to the client based on determining the file group associated with the version of the second file opened by the client.