Dynamic lookup service in a distributed system
AssigneeSun Microsystems, Inc.
InventorsBrian T. Murphy, Robert W. Scheifler, Zane Pan, James H. Waldo, Ann M. Wollrath, Kenneth C.R.C. Arnold
Life of this patent
Estimating the term…
Loading patent…
AssigneeSun Microsystems, Inc.
InventorsBrian T. Murphy, Robert W. Scheifler, Zane Pan, James H. Waldo, Ann M. Wollrath, Kenneth C.R.C. Arnold
Estimating the term…
An improved lookup service is provided that allows for the dynamic addition and deletion of services. This lookup service allows for the addition and deletion of services automatically, without user intervention. As a result, clients of the lookup service may continue using the lookup service and its associated services while the updates occur. Additionally, the lookup service provides a notification mechanism that can be used by clients to receive a notification when the lookup service is updated. By receiving such a notification, clients can avoid attempting to access a service that is no longer available and can make use of new services as soon as they are added to the lookup service.
A method in a distributed system having a lookup service with associated network services available in the distributed system and having a client accessing the network services, the method comprising the steps of:
A method in a data processing system having a lookup service with associated services available for use in the data processing system, comprising the steps of:
A method in a data processing system having a lookup service with associated services, comprising the steps of:
A method in a data processing system having a lookup service with associated services, comprising the steps of:
A data processing system comprising:
A data processing system comprising:
A computer-readable memory device containing a data structure used for accessing a lookup service with associated network services available for use, the data structure containing:
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a lookup service with associated services available for use in the data processing system, the method comprising the steps of:
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a lookup service with associated services, the method comprising the steps of:
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a lookup service with associated services, the method comprising the steps of:
A method in a distributed system for accessing network services, comprising the steps of:
A method in a distributed system having a client and a client lookup manager with an associated cache, said method comprising the steps, performed by the client, of:
A method in a distributed system having a lookup service with associated network services and a client lookup manager with an associated cache, the method comprising the steps of:
The method of 43 further comprising the step of transmitting at least one service reference to the client.
A method in a distributed system having a lookup service with associated network services and a client lookup manager with an associated cache, the method comprising the steps of:
A distributed system comprising:
A distributed system having a first computer with a client, a client lookup manager with an associated cache, and a second computer with a lookup service containing service references for accessing associated network services, the distributed system comprising:
A computer-readable medium containing instructions for controlling a data processing system to perform a method for accessing network services, the data processing system having a software cache and a lookup service with associated services, available for use in the data processing system, the method comprising the steps of:
A computer-readable medium containing instructions for controlling a data processing system to perform a method in a distributed system having a client and a client lookup manager with an associated cache, the method comprising the steps of:
A computer-readable medium containing instructions for controlling a data processing system having a lookup service with associated network services available in the distributed system and having a client lookup manager with an associated cache, the method comprising the steps of:
A computer-readable medium containing instructions for controlling a data processing system having a lookup service with associated network services available in a distributed system and having a client lookup manager with an associated cache, the method comprising the steps of:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Backward citations are indexed for grants only.
Multiprogramming arrangements: distributed object oriented systems
The resource being a machine, e.g. CPUs, Servers, Terminals: considering the load
The resource being a machine, e.g. CPUs, Servers, Terminals: considering software capabilities, i.e. software resources associated or available to…
Multiprogramming arrangements: program synchronisation; Mutual exclusion, e.g. by means of semaphores
Term end not estimated
The present invention relates generally to data processing systems and, more particularly, to a dynamic lookup service in a distributed system.
A lookup service contains an indication of where network services are located within a distributed system comprised of multiple machines, such as computers and related peripheral devices, connected in a network (for example, a local area network, wide area network, or the Internet). A “network service” refers to a resource, data, or functionality that is accessible on the network. Typically, for each service, the lookup service contains an address used by a client (e.g., a program) to access the service (e.g., a printer).
Conventional lookup services are static: whenever updates to the lookup service are needed to either add a new service or delete an existing service, the lookup service is taken offline, rendering the lookup service inaccessible, and then, the lookup service is manually updated by the system administrator. During the time when the lookup service is offline, clients in the distributed system are unable to access the lookup service and any of its network services. Another limitation of conventional lookup services is that, when updated, clients are not made aware of the updates to the lookup service until they explicitly perform a refresh operation, which downloads the latest service information to the clients. Before such a refresh, however, if a client requests a service that is no longer available, an error occurs which may cause the client to hang. Also, before a refresh, the client is not aware of any new services that have been recently added to the lookup service. It is therefore desirable to improve lookup services for distributed systems.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate an implementation of the invention and, together with the description, serve to explain the advantages and principles of the invention. In the drawings,
FIG. 1 depicts a distributed system suitable for practicing methods and systems consistent with the present invention;
FIG. 2 depicts a more detailed block diagram of a computer depicted in FIG. 1;
Methods and systems consistent with the present invention provide an improved lookup service that allows for the dynamic addition and deletion of services. As such, the addition and deletion of services is performed automatically, without user intervention, and clients of the lookup service may continue using the services while the updates to the lookup service occur. Additionally, clients may register with the lookup service to receive notification of when the lookup service is updated. As a result, when an update occurs, all registered clients receive a notification of the update, enabling the clients to avoid attempting to access a service that is no longer available and to use a service recently added to the lookup service.
Overview of the Distributed System
Methods and systems consistent with the present invention operate in a distributed system (“the exemplary distributed system”) with various components, including both hardware and software. The exemplary distributed system (1) allows users of the system to share services and resources over a network of many devices; (2) provides programmers with tools and programming patterns that allow development of robust, secured distributed systems; and (3) simplifies the task of administering the distributed system. To accomplish these goals, the exemplary distributed system utilizes the Java™ programming environment to allow both code and data to be moved from device to device in a seamless manner. Accordingly, the exemplary distributed system is layered on top of the Java programming environment and exploits the characteristics of this environment, including the security offered by it and the strong typing provided by it. The Java programming environment is more clearly described in Jaworski, Java 1.1 Developer's Guide, Sams.net (1997), which is incorporated herein by reference.