1. Field of the Invention
The present invention relates to a network system for providing various services dispersed on plural apparatus, and more particularly to a directory server for accumulating and managing information on the various services present on such network system and providing the client with information on the registered services.
2. Related Background Art
Conventionally there is being actively developed a document processing system of dispersed type in which apparatuses of single function for example an input apparatus such as an image scanner, a digital camera or a facsimile receiver and an output apparatus such as a printer or a facsimile transmitter are mutually connected by a network, and which is capable of providing the client with complex functions, obtained by combining the functions of such single-functioned apparatus (for example data input function, data output function, and input and output of data stored in a secondary storage device (network attached storage)).
Also, in a so-called multi-function product (MFP), in which the functions of plural single-functioned apparatuses are united in a single casing, there is also being actively developed a document processing system of dispersed type capable of realizing various complex functions by selectively combining one or some of such single functions with those of other apparatuses through a network.
As a programming model for facilitating the function providing over the information processing apparatuses dispersed in the network, there is already well known a remote procedure call (RPC) or a dispersed object technology. Such dispersed object technology is an expansion of the object-oriented software model to a dispersed system, and enables, by a procedure equivalent to that of calling an operation of a network node from the same node, to call an operation of another network node.
Also, in document processing including document input and document output, dispersed object technology is expected to achieve flexible linking of plural functions. Systems based on the dispersed object technology and aiming also at applications other than the dispersed information processing such as pure calculations are being proposed, for example, in Jini, which is an application of Java by the Sun (Stanford University Network) and in CORBA (Common Object Request Broker Architecture & Specifications) by the OMG (Object Management Group).
If the various apparatuses for document processing connected to the network can be controlled by the dispersed object technology, it will become easily possible to describe a flexible client application interchangeably combining various apparatus providing objects based on a predetermined interface. It will also become possible to describe a client application capable of dynamically inquiring the interface for operating an object, or dynamically downloading a stab object (or a proxy object), for concealing the communication with a server object in a remote location for providing the actual service, thereby accommodating a change in the control interface resulting for example from the addition of the apparatuses.
In a system in which the client is dynamically bound with the dispersed services at the execution (dynamic binding), thereby utilizing the services of the dispersed objects, there is utilized a directory server (name server, registry server, lookup server, etc.) storing the information of the available services, for enabling the client to locate the desired service. In a system in which plural services or clients are dispersed, a part of the services may become temporarily unavailable because of a failure of the apparatus providing the service or a breakage of the network connecting with the service. It is therefore necessary to execute appropriate maintenance on the information of the services registered in such directory server, thereby not introducing the unavailable service to the client.
In a case where each service is shut down and deactivated in proper manner, the cancellation of registration may be instructed in advance to the directory server from such service. However, such renewal of the information of the directory server from the registered service is not possible in the case of a system crash or in a case where reachability through the network is lost. Also, certain apparatuses such as the document processing apparatus must be prepared for a situation where the power supply is suddenly cut off by the user, and, also in such a case, the directory information based on the notice from the apparatus or the service cannot be properly maintained.
Also, a dispersed object system such as the Jini based on Java adopts a lease model, in which the client obtains the right of using various services during a predetermined term. For example, in a service of registering the service information of the client in the lookup server, the utilization of such lookup server is also leased for a certain term, and the registration is canceled unless the continuation of use is applied for before the expiration of the lease term. In order to accommodate such situation, the Jini system realizes the maintenance of the registered information in preparation for the unnotified cancellation of the services.