Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Re: multiple servers on the same (loopback) interface
From: Jameson Graef Rollins <jrollins@ligo.caltech.edu>
To: "Kasemir\, Kay" <kasemirk@ornl.gov>, "tech-talk\@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Tue, 09 Jul 2013 11:42:05 -0700
On Tue, Jul 09 2013, "Kasemir, Kay" <kasemirk@ornl.gov> wrote:
> The first IOC will serve on TCP port 5065.
> The second one can't do that, so you get the warning Configured TCP port was unavailable, ...Using dynamically assigned TCP port 34497.
> Both will try to listen to UDP search requests on the same port, then reply with the TCP port that they actually use, so all should be fine.
>
> BUT: Because of a quirk in most network kernels only one of them will actually see those UDP search requests. For me it's usually the IOC started _last_.
>
> If you want your clients to send search requests to all IOCs that are listening on the UDP port, you need to send a broadcast. Search requests sent to a specific IP address will only reach one of the IOCs listening on that IP.
>
> You can try setting the EPICS_CA_ADDR_LIST=255.255.255.255.
> With localhost, that may not be possible, so you'll have to setup some network interface, maybe leave it disconnected, but it must have an IP address and most important a broadcast address.

Hi, Kay.  Thanks for the suggestion.  This is a possibility that I
considered, but since it requires administrative privileges to create
and configure the dummy interface it's less than ideal for a generic
testing infrastructure.

That said, I did give it a try and it does sort of work.  The dummy
interface is 127.2.0.1, and both servers bind to it.  However, the
client access is very slow:

0$ time EPICS_CA_ADDR_LIST=127.255.255.255 EPICS_CA_AUTO_ADDR_LIST=NO caget -t TEST0:FOO
0

real	0m6.292s
user	0m0.000s
sys	0m0.012s
0$

The initial response is fairly quick, but there's a long delay before
process returns.  Is using a broadcast address know to introduce a
noticeable delay like this?

jamie.

Attachment: pgpU1GfjqLPMu.pgp
Description: PGP signature


Replies:
RE: multiple servers on the same (loopback) interface Mark Rivers
References:
multiple servers on the same (loopback) interface Jameson Graef Rollins
Re: multiple servers on the same (loopback) interface Kasemir, Kay

Navigate by Date:
Prev: Re: multiple servers on the same (loopback) interface Kasemir, Kay
Next: RE: multiple servers on the same (loopback) interface Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: Re: multiple servers on the same (loopback) interface Kasemir, Kay
Next: RE: multiple servers on the same (loopback) interface Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·