Multiple storage class distributed nametags for locating...

Electrical computers and digital processing systems: multicomput – Distributed data processing – Client/server

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S219000

Reexamination Certificate

active

06510450

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to name services, distributed directories, and other named item location tools for use in a distributed computing system. More particularly, the present invention relates to nametags which are distributed with files, with objects, or with other items, and which are used to correlate location-independent logical names with the location of item copies stored in the distributed system.
TECHNICAL BACKGROUND OF THE INVENTION
Distributed computing systems are becoming increasingly useful and prevalent. Distributed computers are connected by local area networks, wide area networks, and networks of networks, such as the Internet. These distributed computing systems make available platform-neutral, mobile code environments which contain a growing collection of computational objects, applications, data, and other information in the form of files and/or other named resources.
With the growth of such distributed computing systems and their information content, there is an urgent need to support name services that work across heterogeneous systems, services, and platforms. Powerful and convenient name services are needed to achieve seamless distribution of critical computations, and to make the power of such systems available for more widespread use. Name services help users (both human and digital) locate resources. Names can be used by services that enable end-user application programs and by system services to navigate, locate, access, and manipulate mappings between names and specific pieces of digital information such as a file or an object, or between names and specific pieces of equipment such as a printer or a disk array.
Mappings between names and specific resources are called bindings. By properly maintaining and using the bindings, a name service ideally allows users to consistently identify and access the named resources, and to do so without particular regard to the actual location of a copy of the resource. For example, a programmer should be able to invoke a name service interface with the name of a particular resource, and if a copy of the resource exists and can be found, a suitable reference to the copy should be returned. The action of obtaining the location of the actual resource by using the binding is known as name resolution.
For instance, a name service described in U.S. Pat. No. 5,819,044 uses a virtual resource management table having three sorts of fields: name, position, and procedure. For a given virtual resource, the management table creates a correspondence between the virtual resource's name, the position of an actual resource, and the name of a procedure to handle the actual resource. Name resolution is carried out by using a name as a key into the management table to obtain the position of the corresponding actual resource and the procedure name. Access to the resource then becomes possible.
Name bindings are generally used and understood in a particular context, which is defined by the name service and/or name space(s) involved. A name space may be implemented by syntax conventions and/or by a table that maintains the bindings which are used to resolve references to resources within the name space. In some cases the name space is limited to a single machine. But in other cases it can span multiple machines, as with Novell Directory Services or the CORBA Trader Service. Other examples of name spaces are the Domain Name System (“DNS”), the Service Advertising Protocol (“SAP”), and, of course, the many different filesystems in use in various networks.
A distributed computing system may contain multiple name spaces, such as low level service advertising name spaces, or high-level directory service name spaces. If the distributed system's computational objects may be replicated and mobile, it is neither practical nor feasible to require that all names be maintained within a single name space. Accordingly, as the distributed system grows, additional name spaces may be formed in an ad hoc manner for immediate convenience to allow easier and more efficient ways to locate and access computational resources when performing particular tasks.
For example, filesystems assign files to stable permanent locations and give them names which are unique within the given filesystem. When multiple filesystems have been aggregated (as for instance with Transarc's AFS filesystem), the file name within the filesystem has been prepended with the name of the filesystem or the cell within which the file name was assigned. Therefore, one must know where the file is located, at least to some degree of precision, in order to find the file.
Regardless of whether multiple resource name spaces are in use, a distributed system may include multiple copies of a given resource. For instance, copies of files and objects may be stored in cache memory to reduce access times. Files and objects may also be replicated in nonvolatile storage to create copies on several computers in the system. This may be done to create copies on several servers and/or to create copies on mobile computers that disconnect from the system on occasion.
Sometimes one copy of a resource is preferable to another copy. A cached copy may be preferred over one which has not been cached, and a disk copy on a nearby server may be preferred to one on a distant server. A given copy may also be more recent or otherwise more authoritative than another copy. For instance, one copy may have been more recently updated by a user than another copy, and the two copies may not yet have been synchronized.
To summarize, a computational resource is referred to by one or more names which are input to name services. Name services resolve the name by looking it up in a table of name-to-address or name-to-reference bindings which are contained inside some name space. A resource may have more than one name within a given name space. A resource may also have several names in several name spaces or contexts. The distributed system may contain more than one copy of a resource, with differences between copies due to synchronization delays, retrieval delays, or both. Although existing name services are useful, they have drawbacks.
In particular, it would be an advancement in the art to provide an improved distributed computing system name service which resolves location-independent resource names even when several name spaces are being used in the distributed system.
It would be an additional advancement to provide such an improved name service which allows users to locate preferred copies of resources, such as files and objects which are stored in cache, which are stored locally, and/or which are the most current version available.
Such name service improvements are disclosed and claimed herein.
BRIEF SUMMARY OF THE INVENTION
In one embodiment, the present invention provides a name service which supports name resolution in a distributed computing system by distributing nametags with files, objects, and other items. Item names in the nametags lie in three name spaces, which together form a name system. The three name spaces, which correspond to three storage classes for items, are “nonvolatile”, “volatile”, and “logical”, as explained below.
Nonvolatile item names are names of permanent or semi-permanent nonvolatile copies of the item. Nonvolatile item names locate full, authoritative copies of the information which are maintained with algorithms designed to keep them as consistent as is needed by the type of information being stored. Nonvolatile item names resolve to the particular file or object copy using familiar system lookup and finding mechanisms in combination with the nametags and name system of the present invention.
Volatile item names are names of temporary or cached copies of the item or portions of the item. Volatile item names provide rapid access to the information by identifying in-memory copies or copies saved on network nodes which are closer to the location where the information is needed. Volatile item names can be used to retrieve information quickly, but the a

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Multiple storage class distributed nametags for locating... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Multiple storage class distributed nametags for locating..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Multiple storage class distributed nametags for locating... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3062830

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.