CORBA 2.3.3 Administration Guide (NonStop CORBA 2.3.7+)
Interoperable Location Service Daemon (ILSD)
The Interoperable Location Service Daemon (ILSD) is a component of the Interoperable Naming Service. The ILSD services
requests for name resolution for names in the Uniform Resource Locator (URL) format. When the ILSD receives such a
request, it returns a forwarding reply containing the object reference of the named object. For requests involving names that
use the corbaloc style of URL, the ILSD returns the object reference based on locally stored object references. For requests
involving names that use the corbaname style of URLS, the ILSD enlists support of the Interoperable Naming Service to
produce the object reference that is returned to the caller.
Bootstrap Daemon (BSD)
The Bootstrap Daemon (BSD) is a component of the Interoperable Naming Service. The BSD is needed for interoperability
with other ORBs using the Bootstrap protocol. The BSD protocol provides operations for resolving an initial object reference
and for listing the supported initial reference ids. Interoperable client ORBs send a request to an initialization agent. The
agent replies to the client ORB with the requested information. The IDL interface provides two operations, a get(), which
accepts an ObjectId and a list(), which accepts no arguments. The IDL interface for the two operations is as follows:
module CORBA{
interface InitialReferences {
Object get(in ObjectID id);
ObjectIdList list();
};
};
Any client ORB must obtain the initial root naming context on an arbitrary host in an interoperable fashion. Using a file
system relies on the presence of a shared file system and an agreed location. These specific and often platform dependent
mechanisms prevent all clients from obtaining the root naming context in a portable and interoperable way.
The BSD uses a standard interoperable protocol to bootstrap to the initial root naming context on any arbitrary host.
ORBs that implement BSD issue Bootstrap GIOP request messages:
CORBA::ORB::resolve_initial_reference(ObjectId)
This operation is equal to a "get" and results in a request with an object key equal to "INIT".
CORBA::ORB::ObjectIdList CORBA::ORB::list_initial_services()
This operation is equal to "list" and results in a request with an object key equal to "INIT".
The BSD plays the server role in the bootstrap protocol as it is an fdssocket listener. The BSD configuration includes an IP
address and a URL directory. The default is $NSD_ROOT/urls. The BSD replies to the list request with a string sequence
listing the files in the URL directory. It replies to resolve the request with an object reference. The parameter identifies a file
in the URL directory and the BSD reads the file into a string and passes the string to
CORBA::ORB::string_to_object.
The client role of the bootstrap protocol is not supported by NonStop CORBA 2.3 Update 3.
Activating the BSD Bootstrap Protocol
The BSD's IP address is passed to the client by setting:
'org.omg.CORBA.ORBInitialHost' to the BSD's host address●
'org.omg.CORBA.ORBInitialPort' to the BSD's port number●
An example of a client start script instructs JDK1.3 on an NT system to use the Bootstrap protocol to communicate with the
BSD in a NonStop CORBA subsystem running on a specific host:
java -Dorg.omg.CORBA.ORBInitialHost=172.26.27.80 -Dorg.omg.CORBA.ORBInitialPort=4506