Methods, apparatus and computer programs for enhanced access to resources within a network
First Claim
1. A method for accessing resources within a data processing network, comprising the steps of:
- computing a set of hash values representing a set of resources stored in association with at least one data processing system within the network;
storing the computed set of hash values;
in response to a requirement for access to a required first resource which is accessible via a bandwidth-sensitive connection, retrieving a hash value derived from the required first resource;
comparing the retrieved hash value with the stored set of hash values to identify a match between he retrieved hash value and any of the stored set of hash values;
in response to identifying a match for the retrieved hash value, initiating retrieval of the required first resource from said at least one data processing system and via said bandwidth-sensitive connection, including initiating retrieval of the required first resource via said bandwidth-sensitive connection in parallel with initiating retrieval of the required first resource from said at least one data processing system, wherein it is unknown at the time of the initiating whether bits of the required first resource will be delivered faster from the bandwidth-sensitive connection or from the at least one data processing system, and wherein the required first resource has bits arranged in a sequence, and the step of initiating retrieval of the required first resource from said at least one data processing system and via said bandwidth-sensitive connection comprises;
initiating retrieval of all bits of said required first resource from said at least one data processing system and initiating retrieval of all bits of said required first resource via, said bandwidth-sensitive connection, wherein the retrieval of bits of said required first resource from said at least one data processing system is in a reverse bit sequence order relative to the retrieval of bits of said required first resource via the bandwidth-sensitive connection; and
wherein the method includes;
combining portions of the bit sequence of said required first resource received via the bandwidth-sensitive connection and received from said at least one data processing system to build the bit sequence of said required first resource; and
presenting an indication of the retrieval of the required first resource to a user, wherein the step of retrieving the hash value derived from the required first resource comprises;
sending a resource access request to a server computer at the remote network; and
receiving the hash value from the server computer, and wherein the instructions when executed by the computer, cause the computer to implement the method such that the method further comprises the steps of;
retrieving information indicating size of the required first resource; and
completing the combining responsive to a total number of bits retrieved reaching the indicated size of the required first resource, wherein the reaching of the indicated size indicates that all bits of the required first resource have been retrieved, and wherein respective sizes of the portions of the bit sequence from the bandwidth-sensitive connection and from said at least one data processing system are not determined prior to all bits of the required first resource being retrieved.
4 Assignments
0 Petitions
Accused Products
Abstract
Provided are methods, apparatus and computer programs for enhanced access to resources within a network, including for controlling use of bandwidth-sensitive connections within a network and/or for automated recovery. Hash values are used as ‘unique’ identifiers for resources distributed across a network, and each one of a set of pool servers store the hash values for a set of computers within a LAN. When a resource is required, a hash value representing the resource can be retrieved and compared with hash values stored at a pool server to determine whether the pool server holds a matching hash value. Any such matching hash value found on the pool server represents an identification of a local copy of the required resource, because of the uniqueness property of secure ash values. The information within the pool server can be used to access the required resource. If a large resource such as a BLOB or new version of a computer program can be obtained from another computer within a LAN, a reduction in reliance on bandwidth-sensitive Internet connections and reduced load on remote servers becomes possible.
494 Citations
4 Claims
-
1. A method for accessing resources within a data processing network, comprising the steps of:
-
computing a set of hash values representing a set of resources stored in association with at least one data processing system within the network; storing the computed set of hash values; in response to a requirement for access to a required first resource which is accessible via a bandwidth-sensitive connection, retrieving a hash value derived from the required first resource; comparing the retrieved hash value with the stored set of hash values to identify a match between he retrieved hash value and any of the stored set of hash values; in response to identifying a match for the retrieved hash value, initiating retrieval of the required first resource from said at least one data processing system and via said bandwidth-sensitive connection, including initiating retrieval of the required first resource via said bandwidth-sensitive connection in parallel with initiating retrieval of the required first resource from said at least one data processing system, wherein it is unknown at the time of the initiating whether bits of the required first resource will be delivered faster from the bandwidth-sensitive connection or from the at least one data processing system, and wherein the required first resource has bits arranged in a sequence, and the step of initiating retrieval of the required first resource from said at least one data processing system and via said bandwidth-sensitive connection comprises; initiating retrieval of all bits of said required first resource from said at least one data processing system and initiating retrieval of all bits of said required first resource via, said bandwidth-sensitive connection, wherein the retrieval of bits of said required first resource from said at least one data processing system is in a reverse bit sequence order relative to the retrieval of bits of said required first resource via the bandwidth-sensitive connection; and
wherein the method includes;combining portions of the bit sequence of said required first resource received via the bandwidth-sensitive connection and received from said at least one data processing system to build the bit sequence of said required first resource; and presenting an indication of the retrieval of the required first resource to a user, wherein the step of retrieving the hash value derived from the required first resource comprises; sending a resource access request to a server computer at the remote network; and receiving the hash value from the server computer, and wherein the instructions when executed by the computer, cause the computer to implement the method such that the method further comprises the steps of; retrieving information indicating size of the required first resource; and completing the combining responsive to a total number of bits retrieved reaching the indicated size of the required first resource, wherein the reaching of the indicated size indicates that all bits of the required first resource have been retrieved, and wherein respective sizes of the portions of the bit sequence from the bandwidth-sensitive connection and from said at least one data processing system are not determined prior to all bits of the required first resource being retrieved. - View Dependent Claims (2)
-
-
3. A method for accessing resources within a data processing network, comprising the steps of:
-
computing a set of hash values representing a set of resources distributed across plurality of data processing systems within a local area network (LAN), the resources within said set of resources being accessible from respective ones of the plurality of data processing systems; storing the set of hash values together with an identification of a respective data processing system of said plurality of data processing systems storing the resource corresponding to each of the set of hash values; in response to a requirement for access to a required resource which is stored at a remote data processing system, retrieving from the remote data processing system a hash value derived from he required resource; comparing the retrieved hash value with the stored set of hash values to identify a match between the retrieved hash value and any of the stored set of hash values; in response to identifying a match for the retrieved hash value, initiating retrieval of the required resource from a respective one of the plurality of data processing system at which the resource corresponding to the matched hash value is stored and from said remote data processing system, including initiating retrieval of the required resource from the remote data processing system in parallel with initiating retrieval of the required resource from the one of the plurality of data processing systems at which the resource corresponding to the matched hash value is stored, wherein it is unknown at the time of the initiating whether bits of the required first resource will be delivered faster from the bandwidth-sensitive connection or from the at least one data processing system, and wherein the required resource has bits arranged in a sequence, and the step of initiating retrieval of the required resource from said at least one data processing system comprises; initiating retrieval of the bit sequence of said required resource in a reverse order relative to the retrieval of said required resource via the bandwidth-sensitive connection; and
wherein the method includes;combining portions of the bit sequence of said required resource received via the bandwidth-sensitive connection and received from said at least one data processing system to build the bit sequence of said required resource; and presenting an indication of the retrieval of the required resource to a user, wherein the method further comprises; retrieving information indicating size of the required resource for use in controlling the combining; and completing the combining responsive to a total number of bits retrieved reaching the indicated size of the required resource,wherein the reaching of the indicated size indicates that all bits of the required first resource have been retrieved, and wherein respective sizes of the portions of the bit sequence from the bandwidth-sensitive connection and from said at least one data processing system are not determined prior to all bits of the required first resource being retrieved. - View Dependent Claims (4)
-
Specification