TCP and UDP Ports When Running Multiple Instances of the Director

When running multiple instances of TIBCO iProcess Objects Director, the TCP_SERVICE_NAME and UDP_SERVICE_NAME process attributes work somewhat differently than the other process attributes, as follows:

TCP_SERVICE_NAME

The following is the process that TIBCO iProcess Objects Director goes through to establish a TCP port when it starts up:

1. TIBCO iProcess Objects Director looks to see if an instance-specific TCP_SERVICE_NAME process attribute is defined for the instance of TIBCO iProcess Objects Director that is starting. For example, if instance 2 of TIBCO iProcess Objects Director is starting, it looks to see if set_attribute was executed for TCP_SERVICE_NAME using a ProcInst of 2. If an instance-specific TCP_SERVICE_NAME was defined, it uses the TCP port specified.
2. If an instance-specific TCP_SERVICE_NAME process attribute has not been defined, TIBCO iProcess Objects Director looks to see if a “base” TCP_SERVICE_NAME process attribute has been defined (set_attribute was executed using a ProcInst of 0). If a base TCP_SERVICE_NAME process attribute has been defined, it adds the instance number (minus 1; because the base number is used by instance 1) to the base TCP port number to determine the TCP port for that TIBCO iProcess Objects Director (for example, if the base TCP port number is 10000, instance 3 of TIBCO iProcess Objects Director will use TCP port 10002).
3. If neither the instance-specific nor the “base” TCP_SERVICE_NAME process attribute has been defined, it defaults to dynamic, causing the operating system to assign the port number when TIBCO iProcess Objects Director is started.

For more information about specifying the TCP port, see TCP_SERVICE_NAME process attribute.

UDP_SERVICE_NAME

The following is the process a TIBCO iProcess Objects Director goes through to establish a UDP port when it starts up:

  1. The TIBCO iProcess Objects Director looks to see if an instance-specific UDP_SERVICE_NAME process attribute is defined for the instance of TIBCO iProcess Objects Director that is starting. For example, if instance 2 of TIBCO iProcess Objects Director is starting, it looks to see if set_attribute was executed for UDP_SERVICE_NAME using a ProcInst of 2. If the instance-specific UDP_SERVICE_NAME was defined, it uses the UDP port specified (or if “None” is specified, no UDP port opens).

  2. If an instance-specific UDP_SERVICE_NAME process attribute has not been defined, TIBCO iProcess Objects Director looks to see if a “base” UDP_SERVICE_NAME process attribute has been defined (set_attribute was executed using a ProcInst of 0). If a base UDP_SERVICE_NAME process attribute has been defined, it adds the instance number (minus 1; because the base number is used by instance 1) to the base UDP port number to determine the UDP port for that TIBCO iProcess Objects Director (for example, if the base UDP port is 55670, instance 3 of TIBCO iProcess Objects Director uses port number 55672).

  3. If neither the instance-specific nor the “base” UDP_SERVICE_NAME process attribute has been defined, the first instance of TIBCO iProcess Objects Director is assigned port 28001 (the default for TIBCO iProcess Objects Directors), instance 2 is assigned 28002, and so on.

For more information about specifying the UDP port, see UDP_SERVICE_NAME process attribute.