Route Cache Controller Configuration Properties

The Route Cache Controller (RCC) service must be configured to connect to the Route Cache Proxy service and to size the route-cache tables contained in the Route Cache. Set the values for the parameters described in this reference in a Route Cache Controller properties file (for example, rcc_base.cfg). The properties file is used as input to the create_rc_config.py configuration script.

A Route Cache Controller properties file has these sections: [main], [service], [routecache], [standby], [intersite], and [l1]. The [standby] section is configured when two RCC services (an active/standby HA pair) run locally. The [intersite] section is configured when customer sub-domains are backed up across different sites. The [l1] section is used for configuring RCC-L1 services. You configure RCC-L1 services if you want to use a least recently used (LRU) eviction policy for discarding records if the Route Cache is likely to become full. For more information, see the discussion about RCC-L1 configuration.

An empty template rcc_cli_base.cfg properties file for RCC client service network mode is provided in the Traffic Routing Agent (TRA). When upgrading/migrating from peer-to-peer service network mode, use the [routecache] section set from your previous configuration, and set the RCA to point to the TRA-RT route-cache virtual server.

To view a Route Cache Controller properties file, see the sample in the discussion about a reference architecture for sub-domain routing.

[service] Configuration Properties lists the [service] configuration properties.

Table 1. [service] Configuration Properties
[service] Property Description
type The service being configured.

Possible values are:

  • rcc
  • rcp

Set the value to rcc for a Route Cache Controller properties file.

network_mode Specifies the service network mode.

Possible values are:

  • p2p — peer-to-peer networking (in configurations for peer-to-peer or dual-mode route cache networking modes.)
  • client — client networking (in configurations for server or dual-mode route cache networking modes.)
Note: The network_mode property only takes effect when the type property is set to rcc.

[routecache] Configuration Properties lists the [routecache] configuration properties.

Table 2. [routecache] Configuration Properties
[routecache] Property Description
sessions.capacity The maximum number of entries allowed in the sessions Route Cache table. If you want to auto-size the Route Cache tables, do not set this value, or set it to 0.
subscribers.capacity The maximum number of entries allowed in the subscribers Route Cache table.
admin_subscribers.capacity (Optional.) The maximum number of entries allowed in the admin_subscribers route-cache table, when managing subscribers administratively. If you do not intend to manage subscribers in the Route Cache, do not define this property.
shared_memory_headroom_percent A positive integer that sets the amount of shared memory that must be left untouched. Defaults to 5.
subscribers.records_per_sub A positive integer that sets the maximum number of records allowed per subscriber. Defaults to 5.
sessions.per_sub A positive integer that sets the maximum number of sessions allowed per subscriber. Defaults to 4.
sessions.max_key_length The maximum key size (length in bytes) of the sessions identifier in the Route Cache table. The maximum allowed is 2000 bytes.
subscribers.max_key_length The maximum key size (length in bytes) of the subscribers identifier in the route-cache table. The maximum allowed is 2000 bytes.
checkpoint.max_age

Age-limit validation check used to determine if a Route Cache checkpoint can be used to populate the Route Cache where:

  • 0 — No age limit (default).
  • positive integer — The maximum valid checkpoint age in minutes. If set, the Route Cache Controller uses this value as part of validating a checkpoint. When a checkpoint is validated, its UTC time stamp is checked against the current local UTC time; if the difference is greater than the set value, the checkpoint is discarded.

If the most recent route-cache checkpoint also exceeds the age limit, no route-cache checkpoint is used to populate the Route Cache. In that case, the Route Cache is started empty and is populated from data in the engine by way of data updates sent to the Route Cache Controller from the engine processing blades (or through the cache-miss route-cache resolution procedure).

checkpoint.base_directory
The path to the Route Cache checkpoints base directory. If the path is relative, it is relative to /var/tra. For example:
checkpoint.base_directory =
./rcc_data
[main] Configuration Properties lists the [main] configuration properties.
Table 3. [main] Configuration Properties
[main] Property Description
rca.address The local IP address or hostname of the RCC main RCA.

This value can be empty (means bind-to-any).

rca.port The local server port of the RCC main RCA.
rca.vs.address The virtual-server/IP (VIP) address or hostname that is provisioned for the RCC main RCA.

Set this value to the VIP address or hostname provisioned for this service to avoid potential connectivity problems. This is applicable to floating VIPs managed by the TRA running on that node.

rca.remote.1.address When in peer-to-peer service networking mode, the IP address or hostname of the RCA that serves as the remote peer to the RCC main RCA.

If the RCC is connecting to a redundant RCP pair, this is the virtual-server/IP (VIP) address or hostname of the RCP upstream RCA.

If the RCC is connecting to a single RCP, this is the regular IP address or hostname of the RCP upstream RCA.

For each additional RCA remote peer to the RCC main RCA, add an additional address or hostname entry and increment the number value. For example:

rca.remote.2.address
rca.remote.3.address

When in client service networking mode, the remote IP address of the TRA-RT route-cache virtual server.

rca.remote.1.port When in peer-to-peer service networking mode, the RCA listener port of the RCA that serves as the remote peer to the RCC main RCA.

Set this value to the listening port of the remote peer RCA. Do not use the VIP-monitored port.

The RCP upstream RCA of each sub-domain engine at a site is configured as a remote peer.

For each additional RCA remote peer to the RCC main RCA, add an additional port entry and increment the number value. For example:

rca.remote.2.port
rca.remote.3.port

When in client service networking mode, the remote port of the TRA-RT route-cache virtual server.

[standby] Configuration Properties lists the [standby] configuration properties.
Table 4. [standby] Configuration Properties
[standby] Property Description
enabled Whether to activate an RCA instance on the RCC (its standby RCA) for the purpose of pointing to an RCC HA peer at the same site.

Possible values are:

  • false
  • true

Set the value to true if the RCC has a HA peer at the same (local) site.

If the value is false, the rest of the properties in the section do not need to be set.

rca.address The local IP address or hostname of the RCC standby RCA.

This value can be empty (means bind-to-any).

rca.port The local server port of the RCC standby RCA.
rca.remote.1.address The IP address or hostname of the standby-RCA instance that is active on the RCC HA peer.

This is the IP address of the remote standby RCC.

rca.remote.1.port The listener port of the standby-RCA instance that is active on the RCC HA peer.

This is the port of the remote standby RCC.

[intersite] Configuration Properties lists the [intersite] configuration properties.
Table 5. [intersite] Configuration Properties
[intersite] Property Description
enabled Whether to activate an RCA instance on the RCC for inter-site redundancy (when another RCC at a different site exists).

Possible values are:

  • false
  • true

Set the value to true for inter-site redundancy when another RCC exists at a different site.

If the value is false, the rest of the properties in the section do not need to be set.

rca.address The local IP address or hostname of the RCC intersite RCA.

This value can be empty (means bind-to-any).

rca.port The local server port of the RCC intersite RCA.
rca.vs.address The virtual-server/IP (VIP) address or hostname that has been provisioned on the local host for the RCC intersite RCA.

Set this value to the VIP address or hostname provisioned for this service to avoid potential connectivity problems. This is applicable to floating VIPs managed by the TRA running on that node.

rca.remote.1.address The IP address or hostname of the RCA that serves as the remote peer to the RCC intersite RCA.

If only one RCC service runs at the other site, this is the regular IP address of the RCC on the other site.

If two RCC services run at the other site, this is the virtual-server/IP (VIP) address that has been provisioned on the host at the other site for the intersite RCA.

rca.remote.1.port The listener port of the remote peer RCA. This is the port of the intersite RCA on the other site.

Do not use a VIP-monitored port (if one exists). Set this value to the listening port of the remote peer RCA.

[l1] Configuration Properties lists the [l1] configuration properties.
Table 6. [l1] Configuration Properties
[l1] Property Description
enabled Whether to enable an RCC-L1.

Possible values are:

  • false
  • true

Set the value to true if you are using RCC-L1s.

If the value is false, the rest of the properties in the section do not need to be set.

rca.address The local IP address or hostname of the RCC-L1 RCA.

This value can be empty (means bind-to-any).

rca.port The local server port of the RCC-L1 RCA.
eviction_handler_thread_count (Optional) The number of eviction handling threads to use. Defaults to 0 (zero). Do not change the default value if only RCC-L1s are configured.
insert_utilization_threshold (Optional) The insert utilization threshold as a percentage of capacity. Defaults to 0 (zero). Do not change the default value if only RCC-L1s are configured.