[omniORB] socket reusing

Sai-Lai Lo S.Lo@uk.research.att.com
27 Jul 2000 10:31:04 +0100


SO_REUSEADDR is only used when the application explicitly asked the ORB to
use a particular port number.

Suppose a server is set to use a particular port all the time. If the
server dies and without SO_REUSEADDR, you cannot restart the server
immediately because the kernel will have to wait for the tcp timers to
expire.

Sai-Lai


>>>>> Renzo Tomaselli writes:

>     I'm somewhat curious to know the reason behind the choice of using the
> SO_REUSEADDR option in OmniORB socket handling.
> We sometimes find ourselves in trouble because the same port is used by
> multiple processes on a single host and they don't know about each other;
> even worse, they can be any TCP/IP application. This occurs whenever the
> port must be specified manually because some persistent object must be
> created (e.g. persistent IOR). This way communications fail (typically
> callbacks) in a strange way instead of a friendly "address already in use"
> errno and this failure is very hard to track down when the third application
> (even a service on NT) is hidden.
> Thanks for any clarification,






-- 
Sai-Lai Lo                                   S.Lo@uk.research.att.com
AT&T Laboratories Cambridge           WWW:   http://www.uk.research.att.com 
24a Trumpington Street                Tel:   +44 1223 343000
Cambridge CB2 1QA                     Fax:   +44 1223 313542
ENGLAND