Aumatically finding IORs



I was trying to think about a way to automatically find CORBA objects
on the network, or rather automatically find their IORs. I'm quite
new new to CORBA and may be totally wrong here. But I think this is
exactly what CosNaming does, or should do. To quote the the document
"GNOME & CORBA":

  "The resolve_initial_service method will return an object reference
  for the string passed as a parameter. This is how you get the object
  reference of the naming service. Before calling
  CORBA_ORB_resolve_initial_service (orb, "NameService", &ev), you had
  no access to any object" ... "The only problem with this code is that
  it does not work."

So I thought I'd make that work by using multicast DNS-SD
(Zero Configuration/Rendezvous). There doesn't seem to be any particular
technical problems in doing so. The only thing I'm not sure about is how
to publish the service, that is the IOR of the name server. The publish
a service through DNS-SD you provide the following information:

name    A user readable name in UTF-8.
type    The protocol used in the form
        "_application-protocol._transport-protocol". The application-
        protocol must be a standard protocol registered with IANA and
        the transport-protocol must be either tcp or udp. So I think
        the sanest entry would be "_corba-iiop._tcp".
domain  Domain of the service.
host    Should be set even thou is has no use for CORBA.
port    Should be set to 683 even thou it has no use for CORBA.
Then there is also a possibility to include extra data in form of any
number of key-value pair (a key and a value together can not exceed
254 bytes). The value should be in binary form.

The most logical thing must be to include the IOR of the name service
in binary form as a value. But what should the key be called? How do one
tell this is the IOR of the name service? And are any other keys
necessary? Or am I on the completely wrong track here?

Please comment.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]