Epics Tips And Tricks Multiple IOCs
multiple IOCs
To have one PC / Computer per IOC/Server seems to be an annoying situation.
Solution would be to be able to have several IOCs running on a PC. But you will be faced by the following Problems
(taken from talk of Kenneth Evans:
"_Channel Access in Depth_", Kenneth Evans, Jr., March 8, 2005 as Part of the EPICS Getting Started Lecture Series, p15):
Multiple Servers on the Same Host
- Used to not be possible at all (Base 3.13)
- Now, it can be done, but there are problems
- Will get message
- cas warning: Configured TCP port was unavailable. Using dynamically assigned TCP port 45003, but now two or more servers share the same UDP port. Depending on your IP kernel this server may not be reachable with UDP unicast (a host's IP in EPICS_CA_ADDR_LIST)
- First part means clients will establish their circuit on another port than the default 5064.
- Second part means unicast search requests may not get to both servers
- UDP deficiency, similar to the CaRepeater problem
- May be a problem when EPICS_CA_ADDR_LIST is used
Solution 1: EPICS_CA_ADDR_LIST
EPICS_CA_ADDR_LIST
- Determines where to search
- Is a list (separated by spaces)
- 123.45.1.255 123.45.2.14 123.45.2.108
- Default is broadcast addresses of all interfaces on the host
- Works when servers are on same subnet as clients
- Broadcast address
- Goes to all servers on a subnet
- Example: 123.45.1.255
- Use ifconfig a on UNIX to find it (or ask an administrator)
By setting the
EPICS_CA_ADDR_LIST
, the
EPICS Channel Access (Client) Address List on the client site.
E.g. for MEDM:
- export
EPICS_CA_ADDR_LIST
and start medm
in the same session $> export EPICS_CA_ADDR_LIST
&& medm &