Configuring the Client Proxy

Structure and possible settings for the Proxy.ini file of the Proxy.

Mandatory parameters are highlighted in red.

As of v2.0/11.2 (PROXY/Automation Engine) the Client Proxy connects as an agent"Programme permettant l'exécution de Traitements sur des systèmes cible comme un ordinateur ou des solutions d'entreprise. Egalement un type d'objet distinct dans l'Automation Engine. [Anciennement appelé ""Exécuteur de tâches"".]" via a so-called technical connection to the AE system. Therefore in the INI file a few new sections and parameters have been introduced.

The Proxy.ini configurationUn ensemble de composants qui constituent un système. Ceci comprend des informations relatives à la manière dont les composants sont connectés, ainsi que les paramètres appliqués. file is only necessary for the clientEnvironnement indépendant pour la création et l'exécution d'objets dans un système AE. Le nom d'un client est un nombre de quatre chiffres à saisir lors de la connexion d'un utilisateur au système AE. Les utilisateurs et leurs droits y sont aussi définis.Egalement un type d'objet distinct dans l'Automation Engine. Proxy. The client Proxy connects to the server Proxy (whose port is forwarded via command lines), whereby it is assigned the necessary settings. The initial connection is referred to as the service connection, over which the client and server Proxy send signals.

When using two agents (during file transfers), the Proxy cannot be used between these two agents.

Structure

Section/Parameter Description
[GLOBAL]  
name=

Name of the Proxy agent as reported to the AE. Must be a valid name according to the agent naming conventions in the AE.

Default: PROXY01

system=

Name of the AE system this Proxy agent connects to. Must be a valid name according to agent naming conventions in the AE.

Default: UC4

helplib=

Path to the message list used by the Proxy agent.
As default setting the .msl file is situated in the same directory as the Proxy's .jar file.
Should you wish to store the .msl file in another location, you have to specify the path and the file name here.
Automic recommends that you use absolute paths.

Message list file name and path: <path_to_directory_of_choice\uc.msl>

Default: the same path as the .jar file

segment=

Name of the segment that this Proxy is a member of.

Segment names may consist of up to 200 of the following characters: A-Z,0-9,$,@,_,. and #

agent=
ui=

Depending on the value set, connections to agents or the UserInterface respectively are either allowed or denied, as defined in the section [AGENT_LIST] and [UI_LIST].

Default value: deny

Allowed values:
allow
deny (default)

The default value is 'deny'. If the [AGENT_LIST] or [UI_LIST] section of the INI file are left empty, the 'deny' value and an empty list result in a general whitelist, i.e. all connections are allowed.

The reverse is valid as well: If the value 'allow' is set and the corresponding list is empty, all connections are denied.

The settings specified for agent=, ui=, [AGENT_LIST], and [UI_LIST] in the Proxy.ini file are re-read at runtime without restarting the proxy. No other entries in the Proxy.ini are re-read without restarting the proxy.

cpSelection=

Load balancing.

The following values are allowed:
"Y," "1," "y," or "N," "0," "n" (default value)

Set to "Y" (or "y," "1") and the Proxy performs a load balancing process. This means that the Proxy automatically selects the communication process that has the fewest connections.
If load balancing is activated, the cpName= setting must be set to a value that is unique for each Proxy instance.

The [CP_LIST] section is automatically extended using the Proxy applicationUne application est un logiciel qui aide l'utilisateur à réaliser des tâches spécifiques. Dans un environnement ARA, voir aussi : Entité d'application. if additional communication processes are found.

Set to "N" (or "n," "0") to deactivate load balancing. This way, a load-dependent CP selection is not performed and the client Proxy connects to the communication process that was defined in the [CP_LIST] section.

For cpSelection=N, one CP entry to which the client Proxy is connected needs to be defined in the [CP_LIST] section.

cpSelection=Y may only be used, if only agents should connect to the Proxy!
UserInterfaces, CallAPIs, and Java-APIs require the "N" setting (or "n," "0").

cpName=

The name of a Proxy pair that is unique within a netArea (Automation EngineCe composant commande un système Automation Engine. Il se compose de plusieurs processus serveur. v9 SP 3 and above) or the entire AE system (v6, v8, or v9, SP 1 and 2).

This setting may only be set, if the cpSelection parameter has been set to "Y" (or "y," "1").

The name may comprise up to 32 characters.

serverProxy=

The address of the server Proxy to which the client Proxy should connect.

Permissible format:
<IP address or host name>:<Port>

routingPort=

The number of the server Proxy's routing port.

Default value: 2217

The server Proxy monitors the routing port for incoming connections from AE components (agents, UserInterfaces, etc.).

Note: The routing port and the service port may not be identical.

checkMemoryConsumption=

The period of time in seconds between memory consumption checks.

Each check calculates the current Java memory consumption and writes it to the log file. If memory consumption is over 90 percent, the server Proxy no longer accepts connections until consumption drops below 80 percent.

Default value: 30 seconds

language=

The language of the log file items.

The following values are permitted:
"D" (German), "E" (English, default), or "F" (French)

logging=

The path and name of the client Proxy’s log file.

The hash symbols (##) can be used as a placeholder for the increasing sequential numbering of the log files. The number "00" represents the most up-to-date log file. It may contain as many log files as specified in the logCount= setting.

serverLogging=

The path and name of the server Proxy's log file.

If not specified, the client Proxy’s log file is used (see the description of logging=). The ## placeholder may also be used for serverLogging=.

logCount=

The number of log files that should be saved.

Default value: 1

LogMaxDays=

The number of days after which the log file should be automatically switched.

Default value: 1

LogMaxSize=

The maximum size of the log file. A new log file is created if the log file. reaches this size.

Default value: 10000 KB

[TCP/IP]  
cp=

The CP connection details to which this Proxy agent connects to. If you set cpSelection=1, the Proxy agent will start establishing a connection with this CP first.

Value: Host and port for the CPs connection.

Format: <host:port>

bindaddr=

This parameter defines the IP address which the client Proxy uses to connect to the server Proxy. You may enter the port number of your choice. bindaddr= doesn't have a default value.

cpResponseTime=

The maximum length of time in seconds that is waited to see whether a CP responds to a connection attempt. If the CP does not send any packets during this time, it is assumed that it is not accessible.
The Proxy no longer accepts new connections if the CP is not accessible.

Default value: 10 seconds

connect=

The length of time in seconds waited after an unsuccessful connection attempt to the CP or server Proxy. If the connection cannot be established, the next attempt occurs after this period.

Default value: 60 seconds

keepAliveTime=

The period of time in seconds in which packets are sent between the server and client Proxy to maintain the service connection.

Default value: 60 seconds

tcp_nodelay=

Set to "N" (or "n," "0") to use the Nagle algorithm for Proxy connections, if it is supported by the operating system.

The following values are permitted:
"Y," "1," "y," (default value) or "N," "0," "n"

soKeepAlive=

Set to "Y" (or "y," "1") to activate the sending of KeepAlive packets for the Proxy's TCP/IP sockets, if it is supported by the operating system.
This applies to all connections.

The following values are permitted:
"Y," "1," "y," (default value) or "N," "0," "n"

sendBufferSize=

Size of the TCP/IP temporary storage for messages to be sent in bytes.

The default value of the system environment is used for the value "0."

Default value: 8192 (bytes)

receiveBufferSize=

Size of the TCP/IP temporary storage for messages to be received in bytes.

The default value of the system environment is used for the value "0."

Default value: 8192 (bytes)

connectDelayMS=

Period of time in milliseconds that should be waited between setting up multiple simultaneous connections to the CP.

Default value: 10 milliseconds

maxConnectionCount=

Maximum number of connections the Proxy will accept.

If this number is reached, additional connections are only accepted when connections are removed again.

Default value: 2000

traceLevel=

Activates additional debug outputs in the log file.

A separate trace file is not created!

Possible values:

  • "0" (default value) = No additional outputs
  • "1" = Source, destination, and size are logged when a packet is sent or received
  • "2" = The hex dump of the packet content is logged when a packet is sent or received.
  • "3" = The relevant socket, option (for example, soKeepAlive=), and value are logged when modifying the socket options.
  • "4" = If an SSL action"Voir ""Action en cas de non-respect (AWI Service Orchestrator)""." takes place, the action, resulting status, and the number of consumed/generated bytes are logged.
[SSL]  
keyStore=

Path to the KeyStore file, which contains a certificate that was created using the Java keytool.

This parameter ensures that the connections between the server Proxy and the client Proxy are encrypted with SSL and authenticated. The client and server Proxy require the same KeyStore file.

keyStorePwd=

KeyStore file password

The password is set when creating the KeyStore file.

[OTHER_SP_LIST]

Addresses of all server proxies between which the agents (or UserInterfaces or CallAPIs) may choose for load balancing and failover purposes. (optional)

Valid format:
spx<Server name or IP address>:<Routing port>

Example:

sp1 = HOST01:8809
sp2 = HOST02:8810

If a segment has been defined in the [GLOBAL] section of a client Proxy's INI file, as of v2.0 the [OTHER_SP_LIST] will be overruled by the information the client Proxy as agent manages.

[CP_LIST]

List of communication processes (CPs) of the server component to which the client Proxy should connect.

Valid format:
<Port>=<Server name or IP address>

Example:

2217=HOST01

The CP list will be ignored cpSelection= parameter is deactivated (value "N," "n," or "0").

[AGENT_LIST]  
agn=

List of AE agents and their IP addresses and/or ranges, that are allowed or denied connections, according to the values set in the [GLOBAL] section for agent= and ui=

Allowed values: IPv4 address or address ranges

Format:
Single IPv4 address:<IP address>
IPv4 address range: <IP address-IP address>
IPv4 address range in CIDR notation: <IP address/prefix size>

The settings specified for agent=, ui=, [AGENT_LIST], and [UI_LIST] in the Proxy.ini file are re-read at runtime without restarting the proxy. No other entries in the Proxy.ini are re-read without restarting the proxy.

[UI_LIST]  
uin=

List of UserInterfaces and their IP and AE client definitions, that are allowed or denied connections, according to the values set in the [GLOBAL] section for agent= and ui=

Allowed values: IPv4 address or address ranges and (optional) AE client number or range.

Format:
Single IPv4 address: <IP address>
Single IPv4 address with a single AE client definition: <IP address,[client]>
Single IPv4 address with a range of AE clients: <IP address,[client]-[client]>

The settings specified for agent=, ui=, [AGENT_LIST], and [UI_LIST] in the Proxy.ini file are re-read at runtime without restarting the proxy. No other entries in the Proxy.ini are re-read without restarting the proxy.

 

Example

 

Illustration 1: cpSelection=0:

Illustration 2: cpSelection=1:

Illustration 3: Port configuration:

[GLOBAL]

name=PROXY01

system=UC4

helplib=c:\sampledir\samplesubdir\uc.msl
cpSelection=1
cpName=PROXY_01
serverProxy=HOSTSP01:4321
routingPort=2217
checkMemoryConsumption=10
language=(D,E)
logging=../TEMP/PROXY_LOG_##.TXT
serverLogging=../TEMP/SPROXY_LOG_##.TXT
logCount=10
logMaxDays=1
logMaxSize=9000K

agent=deny

ui=deny

[TCP/IP]

cp=HOSTSRV01:2217

bindaddr=192.168.20.21
cpResponseTime=10
connect=60
keepAliveTime=60
tcp_nodelay=1
soKeepAlive=1
sendBufferSize=8192
receiveBufferSize=8192
connectDelayMS=10
maxConnectionCount=20000
traceLevel=0

[SSL]
keyStore=keystore.jks
keyStorePwd=passwd

[OTHER_SP_LIST]
sp1=HOSTSP02:2217
sp2=HOSTSP03:2217

 

[CP_LIST]
2216=HOSTSRV01
2217=10.0.0.100
2218=10.0.0.100

 

[AGENT_LIST]

ag1=192.168.0.1/24

 

[UI_LIST]

ui2=192.168.0.1,22-33