How can I configure CAM to use TCP instead of UDP?

Document ID : KB000025876
Last Modified Date : 14/02/2018
Show Technical Document Details

Introduction:

This document details how CA Client Automation communication can be improved between the Domain manager and Scalability server and or the enterprise server by configuring cam CAM to use TCP instead of UDP. 

 

Background:

Some network environments can not reliably use UDP between my Scalability Servers [SS] and my Domain Manager [DM] (or DM to Enterprise [ES]) and as a work around an administrator can configure cam to utilize port 4105 TCP instead of the default port of 4104 UDP. 

 

Environment:  

CA Client Automation - All Versions

 

Instructions: 

To use TCP for CAM between any machine (or Scalability Server [SS]) and the DM (or SS), please do the following:

 1.  Windows
     Browse to %cai_msq% from Start->Run.

    Linux
    Change directory to $CAI_MSQ

 2.  Check if 'CAM.CFG' exists.

 3.  If it does not then STOP CAF and Recycle CAM:   camclose & cam start -c -l

    run 'CAMSAVE CONFIG' which will generate a file called 'SAVE.CFG' in that folder.

 4.  Rename 'SAVE.CFG' to 'CAM.CFG'. Its contents should look like below:

# CAM config saved: <date & time>
.
*CONFIG fixed_paths = no close_time = 60 client_hold = 60 connect_retry = 60 udp_port = 4104 tcp_port = 4105 spx_port = 4905 cas_port = 3104 dg_log_files = 8 dg_log_size = 64 dg_log = * au_log_files = 8 au_log_size = 256 au_log = * tr_log_files = 8 tr_log_size = 1024 tr_log = * trace = none . *PATHS . *ROUTING . *AUDIT off

5.   Under '*PATHS' add an entry like the following***:
     <Fully Qualified Domain Name (FQDN) of the Server>      protocol=tcp port=4105
      Ex: 'usil1a71.ca.com           protocol=tcp port=4105'

***NOTE: If CAM.CFG already exists, look for a pre-existing entry matching the item in #5 (above) and CHANGE its contents INSTEAD of adding any new entry. Multiple entries for the same machine can lead to unexpected results.

6.   Save CAM.CFG.

7.  Perform the same steps on the DM (or SS) except put entries like the following**:
         <FQDN of Agent> protocol=tcp port=4105

**NOTE: While the agents each will only have 1 such entry, the DM (or SS) will have 1 entry for EACH agent (or SS) which communicates with it. An agent only has one direct point of contact however, so only 1 line is required on the agent.

8.   Once the CAM.CFG files are built, recycle CAM using the following command:  

        camclose  & cam start -c -l


*OPTIONALLY: you can search for and delete 'CFNOTSRVD.DAT' before executing the 'CAMCLOSE' command to remove the current routing cache.

(Default location: ...\CA\dsm\appdata')

9.  Once complete, verify whether CAMPING works in both directions.

10.  If CAMPING still fails, execute the following command 2-3 times, until the message 'No such CAM queue' appears:

          camq -c -d -n <Ip address of the target machine>

       Do this in both directions.

 

Additional Information:

****ADVISORY: Due to the overhead involved with using TCP over UDP and the native design of CAM, it is highly recommended that no more than a few hundred machines be converted as outlined above. UDP over port 4104 is the preferred mechanism used by CAM and is optimized for this transport. Using TCP for more than a few hundred agents can cause problems with CAM in general.

UDP can be reconfigured to use smaller fragment sizes via the 'fragment_size' parameter under '*CONFIG' in CAM.CFG. This can address many UDP issues that exist when using UDP in many environments. Please explore this as an option, if possible, before pursuing TCP as the CAM communication protocol.

NOTE: 'Fragment_Size' does NOT have any impact, if CAM is configured to use TCP.