summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/Naming_Service/README
blob: 8b821342e53cffb6b79209316041d74e163f7662 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
// $Id$

        This directory contains the files that implement the TAO
Naming Service.  The TAO Naming Service uses IP Multicast to process
client "resolve_initial_references()" requests.

To Run:
======

% Naming_Service [-ORBport port] 
                 [-ORBobjrefstyle url]
                 [-ORBnameserviceport nsport]
                 [-s context_size] 
                 [-t time]

Arguments:
==========
        port
                 The ORB port.

        nsport 
                Multicast port.

        context_size
                 Size of the hash table allocated upon the creation of
                 the root Naming Context (if one is created).  All
                 contexts created under the root will use the same
                 size for their hash tables.  The default is 1024.

        time
                How long the server should listen for requests before
                exiting.

Environment Variables:
=====================

        NameServicePort - Multicast port.

Sample Run:
==========

% Naming_Service -ORBport 20000 -ORBobjrefstyle url -ORBnameserviceport 19999
starting up daemon <unknown>
opening dynamic service Resource_Factory
did dynamic on Resource_Factory, error = 0
opening dynamic service Client_Strategy_Factory
did dynamic on Client_Strategy_Factory, error = 0
opening dynamic service Server_Strategy_Factory
did dynamic on Server_Strategy_Factory, error = 0
listening as object <iiop:1.0//tango:20000/P35194c690003809cRootPOA/child_poa/NameService>
The multicast server setup is done.

NameService Client:
==================

A client of the TAO Naming Service will use the ORB
resolve_initial_references() method to resolve the "NamingService"
object service.  By default, this resolution is performed using
Multicast.  This behavior can be overridden in the following ways:

        1. Pass the argument -ORBnameserviceior ior.
           This ior is got from the output of the Naming_Service from
           line 'listening as object <iiop:..>'.

           For example, If a client wants to use the Naming_Service
           from the sample run it could use:

           % client - ORBnameserviceior
           <iiop:1.0//tango:20000/P35194c690003809cRootPOA/child_poa/NameService>

        2. Set the environment variable `NameService' (minus the
           quotes), as follows in csh or tcsh:

           % setenv NameService <iiop:1.0//tango:20000/P35194c690003809cRootPOA/child_poa/NameService>

           and then run the client,

           % client <.. client's arguments>

These two techniques may be needed in an environment where

        1. There is more than one NamingService, to avoid the
           confusion of a server registering its object with one
           NamingService and the client getting the reply from some
           other NamingService. 

        2. The OS platform doesn't support multicast.

        3. The client or server isn't written using TAO, and therefore
           doesn't use TAO's multicast NameService resolution protocol.