Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017 
<== Date ==> <== Thread ==>

Subject: RE: EPICs repeater, beacon,address list, and server port
From: "Jeff Hill" <johill@lanl.gov>
To: "'Emmanuel Mayssat'" <emmanuel_mayssat@lynceantech.com>, <tech-talk@aps.anl.gov>
Date: Tue, 2 May 2006 18:21:35 -0600
> For IOC#1 on cpu#1, I set
> EPICS_CA_SERVER_PORT=5066
> EPICS_CA_REPEATER_PORT=5067
> 
> For IOC#2 on cpu#1, I set
> EPICS_CA_SERVER_PORT=5068
> EPICS_CA_REPEATER_PORT=5067 ? <- same for all IOC running on this cpu
> 
> For IOC#1 on CPU#2, I set
> EPICS_CA_SERVER_PORT=5070
> EPICS_CA_REPEATER_PORT=5069
> 
> For IOC#2 on CPU#2, I set
> EPICS_CA_SERVER_PORT=5071
> EPICS_CA_REPEATER_PORT=5069
> 
> and on my OPI
> EPICS_CA_AUTO_ADDR_LIST=NO
> EPICS_CA_ADDR_LIST="cpu#1:5067 cpu#2:5069"
> <- i.e. ADD_LIST link to repeater instead of individual server ports?
>

This is actually an unusual configuration because on your OPI
EPICS_CA_ADDR_LIST="cpu#1:5067 cpu#2:5069", but that specifies that clients
will find servers using the port number that the IOC's are sending beacons
to. The clients are typically configured to locate servers using the same
port that the servers use to listen. Clients send search requests to the
server's port, and also initiate TCP connect requests to the server's port.
Servers send beacon requests to the CA Repeater's port. CA repeaters listen
for beacons on this same port (fanning the beacons out to however many
clients might be running on the same host). Clients also register with the
CA repeater using the EPICS_CA_REPEATER_PORT.

Think of typical EPICS CA configuration being one or more zones of tightly
coupled access (within which clients find servers with broadcasting and
client TCP circuits connect directly to their target IOCs). Within a tightly
coupled zone the clients all send search requests to one port
(default=5064), and all servers receive TCP and UDP requests on this same
port. Likewise, the servers all send beacons to one port (default=5065), and
CA repeaters listen for beacons on this same port (fanning the beacons out
to however many clients might be running on the same host).

If we need to cross between zones then a gateway is typically installed. 

The gory details are in the CA Reference Manual.

Note also that the original approach to configuration where both the clients
and the servers were configured with the same variables is, to put it
mildly, somewhat confusing. The old approach nevertheless has been preserved
for backward compatibility (by defaulting new variable values using values
from old variables). However, it is much easier to look at the independent
sections in the manual for configuring clients and servers where the new
variable names are documented. For example, if not set then the
EPICS_CAS_BEACON_PORT variable defaults to the value of the
EPICS_CA_REPEATER_PORT variable.

Jeff

> -----Original Message-----
> From: Emmanuel Mayssat [mailto:emmanuel_mayssat@lynceantech.com]
> Sent: Tuesday, May 02, 2006 3:19 PM
> To: tech-talk@aps.anl.gov
> Subject: EPICs repeater, beacon,address list, and server port
> 
> I have a simple Ethernet network.
> Let's say that I have 2 computers on the same network link (no gateway).
> I run several IOCs on both computers.
> 
> For IOC#1 on cpu#1, I set
> EPICS_CA_SERVER_PORT=5066
> EPICS_CA_REPEATER_PORT=5067
> 
> For IOC#2 on cpu#1, I set
> EPICS_CA_SERVER_PORT=5068
> EPICS_CA_REPEATER_PORT=5067 ? <- same for all IOC running on this cpu
> 
> For IOC#1 on CPU#2, I set
> EPICS_CA_SERVER_PORT=5070
> EPICS_CA_REPEATER_PORT=5069
> 
> For IOC#2 on CPU#2, I set
> EPICS_CA_SERVER_PORT=5071
> EPICS_CA_REPEATER_PORT=5069
> 
> and on my OPI
> EPICS_CA_AUTO_ADDR_LIST=NO
> EPICS_CA_ADDR_LIST="cpu#1:5067 cpu#2:5069"
> <- i.e. ADD_LIST link to repeater instead of individual server ports?
> 
> How are IOCs aware of the presence of PVS in other IOCs?
> Can I use records to link IOCs between each other (ex
> sequencer/fanout/dfanout/etc. records that interact with PVS from
> separated IOCs)?
> 
> 
> Thanks for your input,
> 
> 
> --
> Emmanuel Mayssat
> Cell: 650/793-0626
> Lyncean Technologies, Inc.
> "See the invisible"


References:
EPICs repeater, beacon,address list, and server port Emmanuel Mayssat

Navigate by Date:
Prev: EPICs repeater, beacon,address list, and server port Emmanuel Mayssat
Next: Artificial Intelligence (AI) / intelligent control in the accelerator control room Martin Pieck
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017 
Navigate by Thread:
Prev: EPICs repeater, beacon,address list, and server port Emmanuel Mayssat
Next: Artificial Intelligence (AI) / intelligent control in the accelerator control room Martin Pieck
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·