Directory-based volume location service for a distributed file system
First Claim
1. A method for using a first,location service to locate a resource, the method comprising:
- finding a set of location services for a management context containing the resource, wherein the management context includes a set of nesting containers containing the resource and the set of location services includes at least the first location service, each location service in the set of location services capable of operating independently of the others;
querying the first location service for the locations of at least one instance of the resource using a human-readable name for the resource and the management context;
receiving a set of resource instances, wherein the set of resource instances includes at least a first resource instance, and each resource instance is a instantiation of the resource; and
utilizing the first resource instance.
5 Assignments
0 Petitions
Accused Products
Abstract
In a hierarchically organized distributed file system, resources belong to the containers in which they are located. These resources do not have to be co-located with the, containers in which they are stored, but can be distributed over the file system. To locate a desired resource, the unique name of the resource is determined. Moving upward through the containers in the hierarchically organized distributed file system, the lowest container with a location service is determined. The location service is queried for known instances of the resource. Any instance of the resource returned from the location service can then be utilized. Semantic contexts can also be applied to the network to control access or usage of both the location services and resource instances. The use of semantic contexts allows for improvements in network usage, security, resource allocation, and the like.
-
Citations
22 Claims
-
1. A method for using a first,location service to locate a resource, the method comprising:
-
finding a set of location services for a management context containing the resource, wherein the management context includes a set of nesting containers containing the resource and the set of location services includes at least the first location service, each location service in the set of location services capable of operating independently of the others;
querying the first location service for the locations of at least one instance of the resource using a human-readable name for the resource and the management context;
receiving a set of resource instances, wherein the set of resource instances includes at least a first resource instance, and each resource instance is a instantiation of the resource; and
utilizing the first resource instance. - View Dependent Claims (2, 3, 4, 5, 6, 7, 21)
organizing the computer system into containers to establish the management context;
finding a lowest container within the management context that contains the resource; and
obtaining the set of location services from the lowest container.
-
-
3. A method according to claim 1 wherein querying the first location service includes querying a second location service for the location of the resource instances if the first location service does not respond to a query.
-
4. A method according to claim 1 wherein utilizing the first resource instance includes utilizing a second resource instance if the first resource instance does not respond to a request to utilize the first resource instance.
-
5. A method according to claim 1 further including informing each location service in the set of location services when a resource instance is added or removed from the computer system.
-
6. A method according to claim 1 wherein:
-
the method further comprises applying a semantic context to the set of resource instances received from the first location service; and
utilizing the first resource instance includes selecting the first resource instance based on the semantic context applied to the set of resource instances.
-
-
7. A method according to claim 1 wherein:
-
the method further comprises applying a semantic context to the set of location services for the management context containing the resource; and
querying the first location service includes selecting the first location service based on the semantic context applied to the set of location services.
-
-
21. A method according to claim 1, wherein:
-
the method further comprises determining a Global Unique Identifier (GUID) for the resource using the management context and the name for the resource; and
querying the first location service includes querying the first location service for the locations of the resource instances using the GUID for the resource.
-
-
8. A computer-readable medium containing a program implementing an algorithm for using a first location service to locate a resource, the program comprising:
-
finding software to find a set of location services for a management context containing the resource, wherein the management context includes a set of nesting containers containing the resource and the set of location services includes at least the first location service, each location service in the set of location services capable of operating independently of the others;
query software to query the first location service for the locations of at least one instance of the resource using a human-readable name for the resource within the management context;
reception software to receive a set of resource instances, wherein the set of resource instances includes at least a first resource instance, and each resource instance is an instantiation of the resource; and
utilization software to utilize the first resource instance. - View Dependent Claims (9, 10, 11, 12, 13, 22)
container-finding software to find a lowest container within the management context that contains the resource; and
obtaining software to obtain the set of location services from the lowest container.
-
-
10. A computer-readable medium containing a program according to claim 8 wherein the query software includes second-query software to query a second location service for the locations of the resource instances if the first location service does not respond to a query.
-
11. A computer-readable medium containing a program according to claim 8 wherein the utilization software includes second-utilization software to utilize a second resource instance if the first resource instance does not respond to a request to utilize the first resource instance.
-
12. A computer-readable medium containing a program according to claim 8 further including informing software to inform each location service in the set of location services when an instance of the resource is added or removed from the computer system.
-
13. A computer-readable medium containing a program according to claim 8 wherein:
-
the program further comprises application software to apply a semantic context to the set of resources received from the first location service; and
the utilizing software includes selection software to select the first resource instance based on the semantic context applied to the set of resources.
-
-
22. A computer-readable medium containing a program according to claim 8, wherein:
-
the program further includes determination software to determine a GUID for the resource using the management context and the name for the resource; and
the querying software includes querying software to query the first location service for the locations of the resource instances using the GUID for the resource.
-
-
14. An apparatus for using a first location service to locate a resource, the apparatus comprising:
-
a network including at least two computers;
a distributed file system distributed across the network;
a resource accessible via the network;
a management context superimposed on a subset of the network, the management context including a set of nesting containers containing the resource;
a plurality of location services coupled to the network, the plurality of location services including at least the first location service, each location service in the plurality of location services capable of operating independently of the others;
query means for querying the first location service for the location of instances of the resource; and
utilization means for utilizing a resource instance returned from the first location service in response to the query. - View Dependent Claims (15, 16, 17, 18, 19, 20)
sending software to send a message to the first location service; and
receiving software to receive a message from the first location service.
-
-
16. An apparatus according to claim 14 wherein the utilization means includes software to remotely access the resource instance returned from the first location service.
-
17. An apparatus according to claim 14 further:
comprising a first semantic context prioritizing the plurality of location services for query.
-
18. An apparatus according to claim 14 further comprising a second semantic context prioritizing a plurality of resource instances returned from the first location service.
-
19. An apparatus according to claim 14 wherein:
-
the resource includes at least one hardware peripheral connected to the network; and
the first location service returns a location for each hardware peripheral resource.
-
-
20. An apparatus according to claim 14 wherein:
the resource includes at least one instance of a software element on the distributed file system; and
the first location service returns a location for each instance of the software element resource.
Specification