2 Configuration

Overview

Introduction

This chapter explains how to configure the Oracle Communications Convergent Charging Controller application.

Configuration Overview

Introduction

This topic provides a high level overview of how the SIGTRAN TCAP Interfaces are configured.

sua_if/m3ua_if are configured using the following options set in the:

  • Startup shell script and/or tcapif.def
  • sigtran.config file

Configuration components

TCAP Interface is configured by the following components:

Component Locations Description Further Information
Environmental variables any machine connected to a switch Set in startup scripts. Environmental variables .
Command line variables any machine connected to a switch Set in startup scripts or tcapif.def. Configuring tcapif.def .
tcapif.def any machine connected to a switch Optional file that sets the configuration parameters which are shared with other types of TCAP Interface. Configuring tcapif.def .
sigtran.config any machine connected to a switch This file sets the configuration parameters which are specific to SIGTRAN TCAP Interface. Configuring sigtran.config .

Configuration process overview

This table describes the steps involved in configuring the SIGTRAN TCAP Interface for the first time.

Stage Description
1

The environment sua_if/m3ua_if will run in must be configured correctly. This includes:

  • Setting the location of the SLEE base directory (if this is different from default)
  • Configuring the name of the main configuration file
  • Configuring the location of the SCCP log file

For more information about configuring environmental variables, see Environmental variables.

2 Changing the default startup variables in the SLEE.cfg file, especially service keys.
3

Any non-default command line parameters must be added to one of the following:

  • The relevant sua_if/m3ua_if startup shell script(s): sua_if.sh or m3ua_if.sh
  • (if supported) tcapif.def
4 Configuration data must be configured for sua_if/m3ua_if in sigtran.config.

Environmental variables

The following UNIX shell environment variables can be set.

SCCP_LOG_FILE

Syntax: SCCP_LOG_FILE=filename
Description: File name prefix, including path, of the optional SCCP log file. A timestamp and .log suffix is added.
Type: String
Optionality: Optional, default used if not set.
Allowed:  
Default: /tmp/sccp
Notes:

Using the default value for example, the resulting file name in the output of log files have names in the format /tmp/sccp_ yyyymmdd_hhmm .log.

By default a new log file, with a different timestamp, is created every 10 minutes. Other intervals can be specified using the SCCP_LOG_TIME environment variable.

Example: SCCP_LOG_FILE=/var/tmp/sua_if_sccp

SCCP_LOG_TIME

Syntax: SCCP_LOG_TIME = value
Description: The interval, in minutes, between starting an SCCP_LOG_FILE log file.
Type: Integer
Optionality: Optional (default used if not set).
Allowed:  
Default: 10 (minutes)
Notes:

If SCCP_LOG_TIME is defined as 20 then, if logging is enabled, new log files will be created every 20 minutes on the hour, 20 past and 40 past the hour with names like:

/var/tmp/sccp_20091225_1500.log

Example: SCCP_LOG_TIME = 20

SLEE_ETC_DIR

Syntax: SLEE_ETC_DIR=path
Description: Full path name of the SLEE's etc directory.
Type: Integer
Optionality: Optional, default used if not set.
Allowed:  
Default: ../etc
Notes: SLEE's etc directory is where tcapif.def resides.
Example: SLEE_ETC_DIR=../../SLEE/etc

TCAPIF_DEF

Syntax: TCAPIF_DEF=filename
Description: Defines the name of configuration file which contains TCAP Interface parameters common to all TCAP Interfaces.
Type: String
Optionality: Optional, default used if not set.
Allowed:  
Default: tcapif.def
Notes:  
Example: TCAPIF_DEF=sua_tcapif.def

ESERV_CONFIG_FILE

Syntax: ESERV_CONFIG_FILE=filename
Description: Name of configuration file which contains SIGTRAN TCAP Interface-specific parameters.
Type: String
Optionality: Optional, default used if not set.
Allowed: Any valid filename.
Default: sigtran.config
Notes:  
Example: ESERV_CONFIG_FILE=sigtran.config

SIGTRAN_CONFIG_SECTION

Syntax: SIGTRAN_CONFIG_SECTION=str
Description: The name of the section in the ESERV_CONFIG_FILE configuration file which holds the Sigtran Tcap Interface-specific configuration.
Type: String
Optionality: Optional (default used if not set).
Allowed: ASCII text.
Default:

For m3ua_if: M3UA.

For sua_if: SUA

Notes:  
Example: SIGTRAN_CONFIG_SECTION=M3UA

Configuring tcapif.def

Setting parameters

Each parameter has a default that will be used if the parameter is not defined.

Parameters may be defined in two ways:

  1. The command line
  2. In the tcapif.def file

Note: If a parameter is set in both the command line and the tcapif.def file, the command line setting will be used.

Defining the parameters

For a parameter 'param val', the value may be set in the configuration file with a line such as:

PARAM VAL=

value

Note: Spaces can be inserted into the parameter name in tcapif.def without effect.

Or the parameter may be defined on the command line, for example:

  • sua_if -paramval value
  • m3ua_if -paramval value

Note: Spaces can not be inserted into the parameter names on the command line, and command line parameter names are case sensitive.

Setting command line parameters

Since the executable is started by the SLEE, the only way to set the command line parameters is via an intermediate startup shell script. This shell script is pointed to in SLEE.cfg.

Example 1: Startup script:

#!/bin/shexec sua_if -ssns 123 -proto inap -tcap ccitt

Example 2: Startup script:

#!/bin/shexec sua_if -pc 160 -ssns 123 -proto inap -tcap
\ccitt

Note: To split over a line (as shown in Example 2), use "\" at the end of the line.

tcapif.def

The tcapif.def file can be used to define common configuration for all TCAP interfaces running on the same system.

Where different TCAP Interfaces require different configuration, the file-set configuration options can be overridden on the command line on a binary by binary basis. Command line options are set in the startup shell scripts. Every option in the tcap.def file can be overridden in this way.

Note: In the file, the options are all uppercase. On the command line, they are lowercase.

tcapif parameters

The generic configuration variables applicable to all TCAP interfaces are listed below:

Note: If any of the following parameters are set (all default to not set) then the TCAP Interface will use a default SCCP Origination Address in the first TC-CONTINUE that it sends out. By default the TCAP Interface will use the SCCP destination address of the first incoming message. This capability can be used to ensure any subsequent messages sent by the far end in the same dialog will be routed to this address. This can be useful when initial messages are sent to aliased addresses and round-robin routed by an STP to a series of SLCs.

alwayssendaddr

Syntax: -alwayssendaddr true|false
Description: Which messages to send the SCCP destination address in.
Type: Boolean
Optionality:  
Allowed:
true Send the SCCP destination address in all messages.
false Send the SCCP destination address in only the initial message received in a dialog.
Default: false
Notes: If this parameter and sendorigaddr are both set to true, the TCAP Interface will send the destination and origination addresses.
Example: -alwayssendaddr true

autoac

Syntax: -autoac yes|no
Description:

Whether to use the Application context of a CCITT white book TCAP message received in the response to the message if the SLEE application does not supply one.

In addition, dialogs initiated by the interface will use the default application context defined by the defoutac variable below.

Type: Boolean
Optionality:  
Allowed:
yes Use the Application context from the TCAP message if none is supplied when a SLEE application responds to a message.
no Do not attempt to supply an Application context if none is provided.
Default: yes
Notes:

Setting to yes, effectively acknowledges the white book application context used.

If defoutac is set, sua_if/m3ua_if will add the default application context if one is not set by the SLEE application or in the TCAP message.

Example: -autoac no

defoutac

Syntax: -defoutac value
Description: The default application context to use if no application context is supplied by the SLEE application or set by autoac.
Type: String
Optionality:  
Allowed:
none Missing application contexts will not be set to a default.
oid1,oid2... The default CCITT white book TCAP application context to use for dialogs initiated by sua_if/m3ua_if.
Default: none
Notes:  
Example: -defoutac 1,2,3

displaymonitors

Syntax: -displaymonitors true|false
Description: Whether to log CAPS.
Type: Boolean
Optionality:  
Allowed:
true New call attempt rates (CAPS) will be logged to stdout at period defined by –reportperiod.
false  
Default: false
Notes:  
Example: -displaymonitors true

dpause

Syntax: -dpause seconds
Description: Number of seconds to sleep at startup.
Type: Integer
Optionality:  
Allowed:  
Default: 0
Notes: Allows a global session to be attached to the process.
Example: -dpause 7

fixedSleekey

Syntax: -fixedSleekey true|false
Description:

When this parameter is set to true, use the following as sleekey for INAP operations:

InitialDP > sleekey = 1

AssistRequestInstructions > sleekey = 2

CAMEL GPRS operation > sleekey = 3

InitialDPSMS > sleekey = 4

InitiateCallAttempt > sleekey = 5

Type: Boolean
Optionality: Optional, default will be used if not set.
Allowed: true | false
Default: false
Notes: When fixedSleekey is set to true, slee service key supplied with sleekey option will not be used for INAP operations, rather the fixed sleekeys will be used as described above. For more information about how sleekey is used to construct the base key in the SLEE service key, see Routing process.
Example: -fixedSleekey true

inapssns

Syntax: -inapssns value1,value2,...
Description: A comma-separated list of the SCCP subsystem numbers (SSNs) that sua_if/m3ua_if will treat as INAP (regardless of the default protocol defined by -proto).
Type: Integer
Optionality: Mandatory
Allowed: 0-255
Default: Empty set
Notes:  
Example: -inapssns 33,45,99

mapssns

Syntax: -mapssns value1,value2,...
Description: A comma-separated list of the SCCP subsystem numbers (SSNs) that sua_if/m3ua_if will treat as MAP (regardless of the default protocol defined by –proto).
Type: Integer
Optionality: Mandatory
Allowed: 0-255
Default: Empty set
Notes:  
Example: -mapssns 22,26

monitorperiod

Syntax: -monitorperiod milliseconds
Description: Period call rate rejection monitoring occurs in.
Type: Integer (number of milli-seconds)
Optionality:  
Allowed:  
Default: 1000
Notes: Default of 1 sec allows –rejectlevel to represent CAPS.
Example: -monitorperiod 1000

polltime

Syntax: -polltime microseconds
Description: Interval between polling interface.
Type: Integer (micro seconds)
Optionality:  
Allowed:  
Default: 1000
Notes:  
Example: -polltime 500

proto

Syntax: -proto = protocol
Description: Defines the default protocol to use when the interface (sua_if/m3ua_if) constructs a SLEE service key. This parameter is used only when an incoming TCAP message SCCP Subsystem Number (SSN) is not mapped to a protocol.
Type: String
Optionality: Optional (default used if not set)
Allowed:
  • inap – INAP interface
  • map – MAP interface
  • is41d – IS41D interface
  • any – Uses a value of eight Fs (ffffffff) in its SLEE service key construction. This allows service routing of the message with the unknown protocol to a SLEE service for further processing, if needed.
Default: inap
Notes: A combination of the incoming SSN, the interface's SSN/protocol mapping, and its -sleekey value (default 0x1) are used to route incoming calls to a SLEE service.
Example: -proto = map

rejectlevel

Syntax: -rejectlevel max number of calls
Description: If more than 0, this sets the maximum number of new call attempts that will be processed within a given interval (as determined by -monitorperiod).
Type: Integer
Optionality:  
Allowed:  
Default: 0
Notes: In conjunction with –monitorperiod it provides a call limiter for the interface.
Example: -rejectlevel 4000

reportperiod

Syntax: -reportperiod reject logging period
Description:

How often:

  • rejection indications are logged to the alarm system (if rejections are occurring), and
  • call rates are logged (if –displaymonitors is set).
Type: Integer (seconds)
Optionality:  
Allowed:  
Default: 30
Notes:  
Example: -reportperiod 25

retgt

Syntax: -retgt "str"
Description: If set to something other than none, a default SCCP Origination Address will be used which will contain this Global Title.
Type: String
Optionality:  
Allowed:

none

"1,noa,address_digits"

"2,trans_type,address_digits"

"3,trans_type,num_plan,address_digits"

"4,trans_type,num_plan,noa,address_digits"

Default: none
Notes:

The variables used in the gt are:

<noa> Nature of Address
<address_digits> Destination/Called Party Number
<trans_type> Transmission Type
<num_plan> Number Plan
Example: -retgt "1,1,123456789"

rethandover

Syntax: -rethandover true|false
Description: Sets whether to use the default SCCP originating address in TCAP handover messages.
Type: Boolean
Optionality: Optional (default used if not set)
Allowed:
true Sends the default originating address (set with -retgt or default_gt) in TCAP handover messages.
false Sends the originating address of the original message in TCAP handover messages.
Default: true
Notes: If this is set to true and there is no default address, the behavior is as if this was set to false .
Example: -rethandover false

retni

Syntax: -retni = 0|1
Description: Sets the National Indicator in a return address (an ANSI SCCP address rather than an ITU one), created using the retssn/ retpc/ retgt config parameters.
Type: Integer
Optionality:  
Allowed:
0 Set the NI to 0 (ITU).
1 Set the NI to 1 (ANSI).
Default:  
Notes: The National Indicator is the first bit of the return address (that is, the SCCP address).
Example: -retni = 1

retpc

Syntax: -retpc point code value
Description: If set to a non-zero value, a default SCCP Origination Address will be used which will contain this Point Code.
Type: Hex or decimal integer
Optionality:  
Allowed:  
Default: 0
Notes:  
Example: -retpc 55

retri

Syntax: -retri Routing Indicator
Description: Default SCCP Origination Address’s routing indicator.
Type: Integer
Optionality:  
Allowed:
0 route on GT
1 route on PC
Default: 0
Notes: Used in conjunction with retssn, retpc and retgt options.
Example: -retri 1

retssn

Syntax: -retssn SSN
Description:

If set to a non-zero value, a default SCCP Origination Address will be used in the first outgoing TC-CONTINUE message which will contain this SSN.

If set to -1, then outgoing SCCP origin address SSN is populated dynamically, & it is set as the incoming destination address SSN. i.e outgoing CgPA SSN will be set to incoming CdPA SSN' when retssn is set as -1.

Type: Integer
Optionality:  
Allowed: 0-255, -1
Default: 0
Notes:  
Example: -retssn 20

sendorigaddr

Syntax: -sendorigaddr true|false
Description: Whether to send the SCCP origination address in addition to the destination address.
Type: Boolean
Optionality:  
Allowed:
true Send the SCCP origination address.
false Do not send the SCCP origination address.
Default: false
Notes: If statsif is defined, sendorigaddr is set to true regardless of the configuration value set here.
Example: -sendorigaddr true

sleekey

Syntax: -sleekey SLEE_Service_Key
Description: Base SLEE service key value to use in base key (bytes 6-8) part of the SLEE service key created by sua_if/m3ua_if to enable the SLEE to route the message to the correct service.
Type: Integer
Optionality: Optional, default will be used if not set.
Allowed: A single value or a range of values (in hex or decimal integers)
Default: 0x1
Notes: For more information about how sleekey is used to construct the base key in the SLEE service key, see Routing process .
Examples:

-sleekey 0x89abcd

In this example, the base key in all SLEE service keys created by this sua_if/m3ua_if will be 0x89abcd.

-sleekey 0x1-0x5

In this example, the base key of SLEE service keys created by sua_if/m3ua_if will range between 0x1 and 0x5 picked in a round-robin.

ssns

Syntax: -ssns ssn1,ssn2,...
Description: A comma separated list of SCCP subsystem numbers (SSNs) that the TCAP Interface will register to.
Type: Decimal integer
Optionality:  
Allowed: 0 to 255
Default: 19
Notes:  
Example: -ssns 12,33

statsif

Syntax: -statsif none|slee_if_name
Description: SLEE interface to which all initial messages in a TCAP dialog are copied to allow statistics monitoring.
Type: String
Optionality:  
Allowed:
none don't copy initial messages
SLEE interface name SLEE interface to copy initial messages to. Must match interfaceName in SLEE.cfg.
Default: none
Notes:

Currently this is only used with the SLEE Callmapping solution.

If statsif is not none, sendorigaddr's value is over-ridden and set to true.

For more information about SLEE interfaces including the statistics interface, see Service Logic Execution Environment Technical Guide.

Example: -statsif none

stderron

Syntax: -stderron 0|1
Description: Whether syslog messages generated by the interface class should be printed to stderr as well as the system log file.
Type: Boolean
Optionality:  
Allowed:
0 print to syslog only
1 print to stderr and syslog
Default: 0
Notes:  
Example: -stderron 1

stps

Syntax: -stps pc1,pc2,...
Description: Comma-separated list of STP point codes to which sua_if/m3ua_if should round-robin route outward messages.
Type: Decimal integer
Optionality:  
Allowed:
none Packets will only be sent to addresses that have a direct route set up.
comma-separated list of STP point codes (decimal integers) List of STP point codes to send messages to in round robin.
Default: none
Notes: Each PC will be substituted into the MTP destination addresses.
Example: -stps 2,5,7

unknowncorridoverridesleekey

Syntax: -unknowncorridoverridesleekey value
Description: It redirects incoming ARI message to configured service key if correlationID is not found.
Type: Integer
Optionality: Optional
Allowed: Integer
Default: -1
Notes:  
Example: -unknowncorridoverridesleekey 108

Configuring sigtran.config

Introduction

This topic explains the configuration options and parameters for sua_if/m3ua_if in the sigtran.config file.

Note: Unlike the parameters set in tcapif.def. These parameter cannot be set on the command line.

sigtran.config example

SIGTRAN TCAP Interface is installed with two sigtran.config files:

File Description
sigtran.config.example A full set of parameters showing example configuration with explanations.
sigtran.config.simple Two very simple configurations. This file shows minimal configuration and does not include all available parameters.

You can use either of these files as a source to create the sigtran.config file which will actually be used by sua_if/m3ua_if.

Note: Some specific parameters (for example host names) will need to be amended in sigtran.config to run sua_if/m3ua_if correctly.

Using eserv.config instead of sigtran.config

You can put the sigtran.config configuration into the main eserv.config file for the machine you are running sua_if/m3ua_if on. If you do this, you will need to change the ESERV_CONFIG_FILE environmental variable in the Interface's startup script. For more information about the ESERV_CONFIG_FILE environmental variable, see ESERV_CONFIG_FILE .

Editing the File

Open the configuration file on your system using a standard text editor. Do not use text editors, such as Microsoft Word, that attach control characters. These can be, for example, Microsoft DOS or Windows line termination characters (for example, ^M), which are not visible to the user, at the end of each row. This causes file errors when the application tries to read the configuration file.

Always keep a backup of your file before making any changes to it. This ensures you have a working copy to which you can return.

Loading configuration changes

If you change the configuration, you must send a SIGHUP to sua_if/m3ua_if to enable the new options to take effect.

sigtran.config structure

This text shows the structure of the sigtran.config file.

SUA = {ansi =

true|

 false 

maxSLS =

 int 

maxDids =

 int 

rejectTimeout =

 secs 

invokeTimers =

 true 

|

 false 

log =

 true 

|

 false 

xudtHopCount =

 int 

retAddrAll =

 true 

|

 false 

qos =

 int 

opc =

 dec int 

stpPCs = [

 pc 

[,

 pc 

, ...] ]statisticsInterval =

 secs 

networkDebug =

 true 

|

 false 

connections = {

 name 

= {remote_host = [ "

 itp 

"[, "

 itp 

"] ]][remote_port =

 port 

][local_host = [ "

 host 

"[, "

 host 

"] ]][local_port =

 port 

][remote_role = "

 sg 

|

 as 

|

 as_only 

|

 * 

"]routing_context =

 int 

traffic_mode_type = "

 mode 

"[message_priority =

 int 

][importance =

 0 

|

 1 

][network_indicator =

 0 

|

 1 

][network_appearance =

 int 

][asp_identifier =

 int 

][application_server = "

 str 

"][transport = "

 sctp 

|

 tcp 

"][initiation = "

 str 

"][rcvbuf =

 bytes 

][sndbuf =

 bytes 

][sctp_ostreams =

 int 

][sctp_istreams =

 int 

][sctp_hbinterval =

 millisecs 

][sctp_init_timeout =

 secs]

[default_gt = "

 gt 

"][activate = "

 down 

|

 up 

|

 active 

"][segment_size =

 bytes 

][asp_identifier =

 int 

][use = "

 name 

"][gtt_pc =

 pc 

][gtt_ssn =

 ssn 

][gtt_remove =

 true 

|

 false 

][gtt_route_pc =

 true 

|

 false 

][gtt_np =

 int 

]}[...]}routes = [{[first =

 pc 

|

 gt 

last =

 pc 

|

 gt 

][peer =

 pc 

][priority =

 int 

][label = "

 str 

"][use = "

 str 

"][

 connection parameters 

][

 connection parameters 

]}[...]]classifiers = [{[routing_indicator =

 int 

][address_indicator =

 int 

][subsystem_number =

 ssn 

][point_code =

 pc 

][gti =

 int 

][trans_type =

 int 

][num_plan =

 int 

][nature_of_add =

 noa 

][source_routing_indicator =

 int 

][source_address_indicator =

 int 

][source_subsystem_number =

 ssn 

][source_point_code =

 pc 

][source_gti =

 int 

][source_trans_type =

 int 

][source_num_plan =

 int 

][source_nature_of_add =

 noa 

]label = "

 str 

"}[...]]}M3UA = {

 sigtran.config parameters 

japanese_sccp = true|falseconnections = {{

 other connection parameters 

mtp3_dpc =

 pc 

}[...]}routes = [

 routes 

][classifiers = [

 class matches 

]]}

sigtran.config parameters

The configuration variables available in sigtran.config for sua_if and m3ua_if are listed below.

ansi

Syntax: ansi = true|false
Description: Use ANSI or ITU addressing selection.
Type: Boolean
Optionality:  
Allowed:
true ANSI addressing
false ITU addressing
Default: false
Notes: This is only used when converting a SUA address in a received packet into an SCCP address. In all other cases, the national indicator field of the address is used for that purpose.
Example: ansi = false

asn1_validate

Syntax: asn1_validate = value
Description: How to validate incoming ASN.1 data.
Type: Integer
Optionality: Optional (default used if not set).
Allowed: 0 to 3
Default: 3
Notes:

Options are:

0 = no validation.

1 = validate but silently discard broken packets.

2 = validate and short syslog message for broken packets.

3 = validate and syslog broken packet contents.

Example: asn1_validate = 2

classifiers

Syntax:
classifiers =
[{class1}{class2}...]
Description: Defines the classification match patterns.
Type: Array
Optionality: Optional (if not set, all matching done in Route section).
Allowed:  
Default: None
Notes: For more information about the configuration available for classifiers, see Classifier parameters .
Example:

classifier = [

{trans_type = 9label = "message-class-1"}{trans_type =
9num_plan = 1label = "message-class-2"}

]

connections

Syntax:

connections = {


                      
                        name
                       =
{
                        parameters
                      )[
                        name
                       =
{
                        parameters
                      }][...]

}

Description: This section defines how packets are passed from sua_if to the destination ITP/STP.
Type: Array
Optionality: Mandatory
Allowed:  
Default: None
Notes:

The same connection can be used for multiple routes. This removes the need to configure the same connection information each time the connection is used by a route.

Connections can inherit details from other connections using the 'use' parameter. If this is done, you can override inherited details by re-specifying a parameter within the inheriting connection.

Routes use connections by inheriting the connection details using the 'use' parameter. Like connections, you can override inherited details by specifying them within the route.

Only connections listed in the routes section are actually used.

For details of the parameters which can be used to define a connection, see Connection parameters .

Example:

connections = {

default = {remote_host = "supitp1"remote_port =
15000local_port = 14001)secondary = {use = "default"remote_host =
"supitp2"asp_identifier = 1234}

}

default_retgt

Syntax: default_retgt = "str"
Description: Defines the default return Global Title which will be used when retgt_mapping is set and a match cannot be found for the return address.
Type: String
Optionality: Optional
Allowed:

none

"1,noa,address_digits"

"2,trans_type,address_digits"

"3,trans_type,num_plan,address_digits"

"4,trans_type,num_plan,noa,address_digits"

Default: none
Notes:

The variables used in the gt are:

noa Nature of Address
address_digit Destination/Called Party Number
trans_type Transmission Type
num_plan Number Plan
Example: default_retgt = "4,0,1,2,44321456"

retgt_mapping

Syntax:

retgt_mapping = [

{ from="str", to = "str"},

{ from="str", to = "str"},

]

Description: Used to map return addresses. The mapping will be applied to every outgoing message. If there is no match for the return address then the value defined for default_retgt will be used.
Type: Array
Optionality: Optional.
Allowed:

"str" can be replaced with:

"1,noa,address_digits"

"2,trans_type,address_digits"

"3,trans_type,num_plan,address_digits"

"4,trans_type,num_plan,noa,address_digits"

Default: Defaults to mapping set in default_retgt
Notes:

Variables used are:

noa Nature of Address
address_digits Destination/Called Party Number
trans_type Transmission Type
num_plan Number Plan
Example:

retgt_mapping = [

{ from="4,0,1,4,123", to = "4,0,1,4,441482255436"},{
from="4,0,1,4,4414782255436", to =
"4,0,1,4,441482255436"},

]

Note: In this example, the first entry maps the 123 address to the 441482255436 address. The second entry ensures this address is used in the future. Otherwise the setting from default_retgt will be used.

invokeTimers

Syntax: invokeTimers = true|false
Description: Whether to run invoke timers or not.
Type: Boolean
Optionality:  
Allowed:
true Run invoke timers.
false

Do not run invoke timers.

Important: Turning off invoke timers will cause extremely non-standard TCAP behavior. It should only be done in highly specialized circumstances after careful consideration of the consequences. Do not set invokeTimers to false without detailed consultation with Oracle about possible effects.

Default: true
Notes: For more information about invoke timers, see Q.774 3.2.1.1.3.
Example: invokeTimers = true

invokeTimerOverride

Syntax: invokeTimerOverride = seconds
Description: Override invoke timers with a default global value in seconds.
Type: Integer
Optionality: Optional (default used if not set).
Allowed: Valid values are 0 - 3600. See Q.774 3.2.1.1.3.
Default: 0
Notes:

0 = Do not override invoke timers.

This configuration item is normally used for services that require interactions which last for >30 seconds (for example, some USSD services).

Example: invokeTimerOverride = 0

Warning: This configuration item is normally used for services that require interactions which last for >30 seconds (for example some USSD services).

Changing invoke timers will cause extremely non-standard TCAP behavior, and this should only be done in highly specialized circumstances after careful consideration of the consequences. Do not change invokeTimerOverride without detailed consultation with Oracle as to the resultant behavior.

log

Syntax: log = true|false
Description: Controls SCCP logging.
Type: Boolean
Optionality:  
Allowed:
true All SCCP level traffic is logged to /tmp.
false SCCP logging is not done.
Default: false
Notes:

This may be toggled at run-time by sending a SIGUSR1 to the TCAP Interface.

SCCP logging is done at the SCCP level for both SUA and M3UA.

Example: log = false

maxDids

Syntax: maxDids = int
Description: Maximum number of in-progress transactions.
Type: Integer
Optionality: Optional
Allowed: Positive integer
Default: 100000
Notes: This parameter is not reloaded on SIGHUP.
Example: maxDids = 100000

maxSLS

Syntax: maxSLS = int
Description: Maximum Signalling Link Selection to use.
Type: Integer
Optionality: Optional
Allowed: Positive integer
Default: 255
Notes:

The SLS determines the:

  • Specific SS7 link that an ITP will send a packet over
  • SCTP stream the TCAP Interface will use.
Example: maxSLS = 255

networkDebug

Syntax: networkDebug = true|false
Description: Whether or not to turn on the sigtran_network debug facility.
Type: Boolean
Optionality: Optional (if not specified, the sigtran_network setting from the DEBUG environment variable is used).
Allowed:
true Use the sigtran_network debug.
false Use the sigtran_network setting from the DEBUG environment variable.
Default: false
Notes: The debug produces is one line per packet of debug info and some per-connection stats approximately once per second.
Example: networkDebug = true

opc

Syntax: opc = dec int
Description: Local point code for outgoing messages.
Type: Decimal integer
Optionality: Mandatory
Allowed:
any valid point code This point code will be set as the local point code in outgoing messages.
-1

Use other methods to set local point code. If you use this, you must be careful to make sure that all outgoing messages get a valid originating address.

Note: Only valid for SUA.

Default:  
Notes: Parameter is given as an integer.
Example:

An ITU point code of 1-1-1 is configured as:

opc = 2057

qos

Syntax: qos = int
Description: SCCP/SUA protocol class.
Type: Decimal integer
Optionality:  
Allowed:
0 unordered delivery, no error returns
1 ordered delivery, no error returns
128 unordered delivery, return on error
129 ordered delivery, return on error
Default: 1
Notes: If you wish to have your packets randomly re-ordered, set to 0. Otherwise leave as the default 1.
Example: qos = 1

rejectTimeout

Syntax: rejectTimeout = secs
Description: Reject timeout as specified in Q.774 3.2.1.1.3.
Type: Integer
Optionality:  
Allowed:
0

No timer.

Important: Turning off reject timers will cause extremely non-standard TCAP behavior. It should only be done in highly specialized circumstances after careful consideration of the consequences. Do not set rejectTimeout to 0 without detailed consultation with Oracle about possible effects.

Positive integer Reject timeout.
Default: 1
Notes:  
Example: rejectTimeout = 10

retAddrAll

Syntax: retAddrAll = true|false
Description: Indicates how to change the return address on a received transaction.
Type: Boolean
Optionality:  
Allowed:
false Apply strict Q.774 logic for changing the return address on a received transaction.
true The return address may be changed at any stage of the transaction.
Default: false
Notes:  
Example: retAddrAll = true

routes

Syntax:
routes = [ 
            {route1}
            [{route2}] 
            [...] 
]
Description: Matches details in outgoing packets and sets the packets destination details.
Type: Array
Optionality: Mandatory
Allowed:  
Default: None
Notes:

Each route matches details in outgoing traffic and routes it to a specific destination (usually specified by the connection set by the use parameter). Matching details include one of the following:

  • A range of point-codes (numeric)
  • A range of GT prefixes (strings)

If two (or more) routes have identical ranges, they are merged and all the end-points used. If one range is strictly contained within another, the narrower range overrides the larger.

Outgoing traffic may also match details in the classifiers section, which will then use the route with the same label to define the destination.

For more information about the configuration available for routes, see Route parameters .

Example:
routes = [ 
            {first = 0  
             last = 16777215
             use = "default" }
            [{first = 0 
              last = 16777215   
              use = "secondary" }] 
            [...] 
]

scmg_ssn

Syntax: scmg_ssn = int
Description: The sub-system number for SCMG processing by the M3UA interface.
Type: Integer
Optionality: Optional (default used if not set).
Allowed: Integer value between -1 and 255
Default: -1. No SCMG processing will take place.
Notes:  
Example: scmg_ssn = 1

statisticsInterval

Syntax: statisticsInterval = secs
Description: How often in seconds to notify statistics to syslog.
Type: Decimal integer
Optionality:  
Allowed:
0 turn off notification
positive integer notification period
Default: 0
Notes:  
Example: statisticsInterval = 0

stpPCs

Syntax: stpPCs = [ stp1[, stp2, ...] ]
Description: Failover routing to the routes configured in the routes = [] section.
Type: Decimal integer
Optionality: Optional
Allowed:  
Default:  
Notes:

The routing logic follows these steps:

  1. Attempt to route a packet directly to its real destination address.
  1. If that fails, choose an STP point code from the stpPCs list, and route using that point code.

This gives two separate mechanisms for spreading traffic over multiple destinations. The stpPCs list is more limited (because it applies to all destinations) but it is integrated with TCAP dialogs (it ensures multiple packets on the same TCAP dialog use the same STP PC).

The STP list can also be specified on the command line. The command line configuration will override any set here.

The whitespace used within the square brackets does not affect the parsing of the STP references.

For more information about TCAP dialogs, see Service Logic Execution Environment Technical Guide.

Example: stpPCs = [ 1234, 1235 ]

xudtHopCount

Syntax: xudtHopCount = int
Description: The hop count to send on protocols that support it.
Type: Decimal integer
Optionality:  
Allowed:
-1 Do not set a hop count
1-255 Hop count
Default: -1
Notes: For SCCP over M3UA, we send UDTs if the hop count is -1, and XUDTs otherwise.
Example: xudtHopCount = -1

Connection key configuration

These parameter values identify which connection a route uses.

  • local_host
  • local_port
  • remote_host
  • remote_port
  • transport

Connection parameters

The connections subsection of the sigtran.config configuration supports these parameters.

connections = {

name = {remote_host = [ "

 itp 

"[, "

 itp 

"] ]][remote_port =

 port 

][local_host = [ "

 host 

"[, "

 host 

"] ]][local_port =

 port 

][remote_role = "

 sg 

|

 as 

|

 as_only 

|

 * 

"]routing_context =

 int 

traffic_mode_type = "

 mode 

"[message_priority =

 int 

][importance =

 0 

|

 1 

][network_indicator =

 0 

|

 1 

][network_appearance =

 int 

][asp_identifier =

 int 

][application_server = "

 str 

"][transport = "

 sctp 

|

 tcp 

"][initiation = "

 str 

"][rcvbuf =

 bytes 

][sndbuf =

 bytes 

][sctp_ostreams =

 int 

][sctp_istreams =

 int 

][sctp_hbinterval =

 millisecs 

][sctp_init_timeout =

 secs]

[default_gt = "

 gt 

"][activate = "

 down 

|

 up 

|

 active 

"][segment_size =

 bytes 

][asp_identifier =

 int 

][use = "

 name 

"][gtt_pc =

 pc 

][gtt_ssn =

 ssn 

][gtt_remove =

 true 

|

 false 

][gtt_route_pc =

 true 

|

 false 

][gtt_np =

 int 

]}[...]}

The parameters in this subsection are described in detail below.

activate

Syntax: activate = " down | up | active "
Description: Set the target state for a connection.
Type: String
Optionality: Optional
Allowed:
down Connection is disabled.
up Connection will change to UP state (but not ACTIVE). Remote attempts to activate will get a management-blocking error.
active Connection will be allowed to change to ACTIVE state following the normal process.
Default: active
Notes:  
Example: activate = "active"

application_server

Syntax: application_server = "str"
Description: The remote peers may be grouped into application servers for override handling. If the peers are override, then we try and maintain only one ASP active in each AS at any one time.
Type: String
Optionality: Optional
Allowed: Any name for the AS to which the ASPs belong.
Default: By default, the interface attempts to guess the ASP to AS groupings from the routing information.
Notes: Override default by specifying a name for the AS to which some ASPs belong.
Example: application_server = "appserver1"

asp_identifier

Syntax: asp_identifier = int
Description: The ASP Identifier sent to the SGP.
Type: Decimal integer
Optionality: Optional
Allowed:  
Default:  
Notes: This is an arbitrary number expected by the remote entity.
Example: asp_identifier = 5

default_gt

Syntax: default_gt = "gt"
Description:

Override outgoing calling party address with route on PC/SSN to one of the following:

  • Route on GT
  • Using the specified GT
Type: Numeric string
Optionality: Optional
Allowed:  
Default: The default is to not set this parameter (leave PC/SSN routing alone).
Notes: For most purposes, the retgt command line parameter will provide more predictable behaviour.
Example: default_gt = "12345678"

gtt_pc

Syntax: gtt_pc = pc
Description: Sets point code for Global Title Translation parameters used to set a PC on the destination address.
Type: Decimal integer
Optionality: Optional
Allowed:  
Default:  
Notes:

Used for routing an outgoing packet on GT.

The PC & SSN supplied by GTT only effect the packet content - it does not change where we send it. The GTT will not override a PC and SSN already on the address.

The GTT parameters are ignored when routing on PC/SSN.

Example: gtt_pc = 1234

gtt_np

Syntax: gtt_np = int
Description: Sets NP for Global Title Translation parameters used to set a PC and SSN on the destination address.
Type: Integer
Optionality: Optional
Allowed:  
Default:  
Notes:

gtt_np has no effect if gtt_remove is set, or if the GT type does not have an NP.

ITU GTI 3 and 4 have NP.

ITU GTI 1 and 2 do not have NP.

Example:  

gtt_remove

Syntax: gtt_remove = true|false
Description: Defines GT details in outgoing message using GT routing.
Type: Boolean
Optionality: Optional
Allowed:
true Remove GT and replace with PC.
false Leave existing GT.
Default: false
Notes:  
Example: gtt_remove = true

gtt_route_pc

Syntax:
gtt_route_pc =
true
                    
| false
Description: Whether or not to override routing indicator.
Type: Boolean
Optionality: Optional
Allowed:
true Route on PC.
false Do not change routing indicator.
Default: false
Notes:  
Example: gtt_route_pc = true

gtt_ssn

Syntax: gtt_ssn = ssn
Description: Sets Subsystem Number for Global Title Translation parameters used to set an SSN on the destination address.
Type: Hex integer
Optionality: Optional
Allowed:  
Default:  
Notes:

Used for routing an outgoing packet on GT.

The PC & SSN supplied by GTT only effect the packet content - it does not change where we send it. The GTT will not override a PC and SSN already on the address.

The GTT parameters are ignored when routing on PC/SSN.

Example: gtt_ssn = 11

importance

Syntax: importance = 0|1
Description: Sets the SCCP XUDT/LUDT and SUA importance field.
Type: Boolean
Optionality: Optional
Allowed:
0 Sets field to 0 (normal)
1 Sets field to 1 (important)
Default: 0
Notes:  
Example: importance = 0

initiation

Syntax: initiation = "str"
Description: Overrides the default action for local and remote ports.
Type: String
Optionality: Optional
Allowed:
listen Listen for incoming connections.
connect Attempt to connect to remote peer.
none Do not listen or attempt to connect.
both Listen for incoming connections and attempt to connect to remote peer.
Default: By default, if the local_port is specified, TCAP Interface listens for incoming connections, and if the remote_port is given, TCAP Interface attempts to connect.
Notes:

In some circumstances the default behavior may be undesirable.

Examples:

  • Where the remote end must use a fixed port number but we want the remote end to initiate the connection).
  • When using SIGTRAN over TCP, listening on a port means that you can't later connect using that local port.
Example: initiation = "connect"

local_host

Syntax:

Either:

  • local_host = "localAddr"
  • local_host = [ "localAddr1", "localAddr2"[
    ,...] ]
Description: IP address or hostname of local host.
Type: String
Optionality: Optional
Allowed:

Any valid:

  • hostname
  • hostname and domain
  • ip address
Default:  
Notes:

Using an array of remote hosts provides control over the SCTP multi-home functionality. The local_host list is used to bind the local socket.

If you leave the local_host unset, the SCTP will enable multi-homing over all addresses.

The connections are identified internally by only the first remote_host.

Examples:

local_host = "produas01.telcoexample.com"

local_host = [ "localAddr1", "localAddr2" ]

local_port

Syntax: local_port = port
Description: Local host port number.
Type: Decimal integer
Optionality: At least one of remote_port and local_port must be specified. If using SCTP, both may be specified.
Allowed:  
Default: If not set, the Operating System will set a port for outgoing messages.
Notes:  
Example: local_port = 14001

message_priority

Syntax: message_priority = int
Description: Sets the MTP3 message_priority field in outgoing M3UA packets.
Type: Decimal integer
Optionality: Optional
Allowed:  
Default: 0
Notes: If not set, is set to zero in M3UA packets and omitted from SUA packets.
Example: message_priority = 0

network_appearance

Syntax: network_appearance = int
Description: M3UA network appearance value sent in M3UA packets sent to the network.
Type: Integer
Optionality: Optional
Allowed:  
Default: 0
Notes: If not set, this field is omitted from M3UA packets sent to the network.
Example: network_appearance = 10

routing_context

Syntax: routing_context = int
Description: The SIGTRAN routing context.
Type: Decimal integer
Optionality:

Generally mandatory for SUA.

Generally optional for M3UA.

Allowed: 32-bit integers
Default:  
Notes: The context is derived from the ACTIVE handshake if possible.
Example: routing_context = 666

network_indicator

Syntax:
network_indicator =
0
                    
| 2
Description:

Sets the value of the MTP3 network indicator in outgoing messages.

0000 International

0010 National

Type: A 4-bit binary field
Optionality: Mandatory
Allowed: 0, 2
Default: 0
Notes: As defined by ANSI / ITU-T
Example: network_indicator = 0

rcvbuf

Syntax: rcvbuf = bytes
Description: Receive buffer size.
Type: Decimal integer
Optionality: Optional
Allowed:
0 Use the OS default.
positive integer Set the recvbuf value in outgoing messages. Must not be less than 32768.
Default: 0
Notes:

Important: This value needs to cover all outstanding unacknowledged SCTP data on the network. If you set these to a non-zero value, it is unlikely to work properly if set to less than 64000.

Do not change this parameter from the default value without calculating the new value based on network conditions. The defaults should work fine in all but the highest traffic conditions.

Example: rcvbuf = 131072

remote_host

Syntax:

Either:

  • remote_host = "itpAddr"
  • remote_host = [ "itpAddr1", "itpAddr2", ...
    ]
Description: Location of the remote host(s).
Type: String or array of comma-separated strings.
Optionality: Mandatory
Allowed:

Any valid:

  • hostname
  • hostname and domain
  • ip address
Default:  
Notes:

Using an array of remote hosts provides control over the SCTP multi-home functionality. When connecting, remote_host gives the candidate peer addresses. When listening, and incoming connection matches if it's primary IP address matches any of the remote_hosts.

The connections are identified internally by only the first remote_host.

Examples:

remote_host = "itp"

remote_host = [ "itp1", "itp2" ]

remote_port

Syntax: remote_port = port
Description: Port to connect to on remote_host.
Type: Decimal integer
Optionality: At least one of remote_port and local_port must be specified. If using SCTP, both may be specified.
Allowed:  
Default: If not set, the operating system will accept connections from any remote port.
Notes:  
Example: remote_port = 26600

remote_role

Syntax:
remote_role =
"sg
                    
| as | as_only | *"
Description: How UPs and ACTIVEs are expected to flow between TCAP Interface and peer.
Type: String
Optionality: Optional, default is used if not set.
Allowed:
sg Peer is expected to receive UPs and ACTIVEs but not send them to us.
as UPs and ACTIVEs should go both ways.
as_only Peer is expected to send UPs and ACTIVEs but we will not send them to the peer.
* Both ways are attempted, but only one direction needs to be active for data to flow.
Default: "*"
Notes: "*" should work in most circumstances.
Example: remote_role = "sg"

sctp_hbinterval

Syntax: sctp_hbinterval = millisecs
Description: SCTP heartbeat interval in milliseconds.
Type: Decimal integer
Optionality: Optional (default used if not set).
Allowed:
0 Turn off heartbeat messages.
positive integer Heartbeat interval.
Default: 1000
Notes:

To speed up failover behavior, it may help to reduce some kernel-level parameters using the ndd command, including:

  • sctp_pp_max_retr
  • sctp_rto_min
  • sctp_rto_max
  • sctp_rto_initial.
Example: sctp_hbinterval = 2500

sctp_init_timeout

Syntax: sctp_init_timeout = secs
Description: Gives the maximum time the SIGTRAN stack will allow for an SCTP association to form. If the association fails to form within this time, the attempt is abandoned and a new attempt is begun.
Type: Decimal integer
Optionality: Optional (default used if not set).
Allowed:
0 No timeout will be applied and the operating system's values are all that will be used.
positive integer Length of timeout, in seconds
Default: 5
Notes:

Note that this interacts very heavily with the operating system's SCTP timeout values. Its purpose is to ensure that the SIGTRAN stack will attempt to form a connection at least every time the timeout fires. The default of five seconds means that no matter how the operating system is configured the SIGTRAN stack will attempt to connect every five seconds. This is very useful in case the operating system has not been configured or has been incorrectly configured.

Setting sctp_rto_max to 1000 (the units are milliseconds) will ensure that the connection is retried every second thus giving us the fastest restart time.

Example: sctp_init_timeout = 5

sctp_istreams

Syntax: sctp_istreams = int
Description: Number of SCTP input streams per connection.
Type: Decimal integer
Optionality: Optional (default used if not set).
Allowed:
0 Use the OS default.
positive integer Maximum number of SCTP input streams per connection.
Default: 0
Notes:  
Example: sctp_istreams = 10

sctp_ostreams

Syntax: sctp_ostreams = int
Description: Number of SCTP output streams per connection.
Type: Decimal integer
Optionality: Optional (default used if not set).
Allowed:
0 Use the OS default.
positive integer Maximum number of SCTP output streams per connection.
Default: 0
Notes:  
Example: sctp_ostreams = 10

segment_size

Syntax: segment_size = bytes
Description: The maximum number of bytes allowed in a segment in an SCCP payload.
Type: Decimal integer
Optionality: Optional
Allowed:  
Default: If not set, segmentation will not be performed.
Notes:

Over SCCP/M3UA, only used if xudtHopCount is set (so that XUDT packets are sent). If sudtHopCount is not set, then UDT packets are sent, and segment_size is ignored.

If set, and network is SUA, segment_size is always applied.

Example: segment_size = 255

sndbuf

Syntax: sndbuf = bytes
Description: Send butter size, in bytes.
Type: Decimal integer
Optionality: Optional
Allowed:
0 Use the OS default.
positive integer Specifies maximum size of buffer for outgoing messages. Must not be less than 32768.
Default: 0
Notes:

Important: This value needs to cover all outstanding unacknowledged SCTP data on the network. If you set these to a non-zero value, it is unlikely to work properly if set to less than 64000.

Do not change this parameter from the default value without calculating the new value based on network conditions. The defaults should work fine in all but the highest traffic conditions.

Example: sndbuf = 131072

traffic_mode_type

Syntax: traffic_mode_type = "mode"
Description: Traffic mode type.
Type: String
Optionality: Optional. However, if not set, sua_if/m3ua_if will be using loadshare and peers may not be, which will result in ITPs failing.
Allowed:
override SIGTRAN override, sua_if/m3ua_if will wait for a request before setting a connection to active.
override_primary SIGTRAN override, sua_if/m3ua_if will set connections to active as soon as possible.
loadshare sua_if/m3ua_if will send messages on sequential connections in a round robin (one after the other) pattern.
broadcast sua_if/m3ua_if will send messages on all applicable connections.
Default: If not specified or negotiated, loadshare is used.
Notes:  
Example: traffic_mode_type = "loadshare"

transport

Syntax:
transport =
"sctp
                    
| tcp"
Description: The transport type for this connection.
Type: String
Optionality: Optional
Allowed:
sctp SIGTRAN over SCTP
tcp SIGTRAN over TCP
Default: sctp
Notes: In normal networks, SCTP is always used.
Example: transport = "stcp"

use

Syntax: use = "name"
Description: Base this connection configuration on the named connection.
Type: String
Optionality: Optional
Allowed: Any already defined connection name.
Default:  
Notes: This enables parameters to be redefined specifically for this connection without the need to repeat the unchanged ones.
Example: use = "PrimaryConnection"

Route parameters

The routes subsection of the sigtran.config configuration supports these parameters.

Notes:

  • All routes have the same parameters available as listed for Connection parameters , plus those listed below for Route parameters.
  • Routes can also use parameters from the Classifier parameters section, though this is only recommended for simple routing situations.
    routes = [ 
     {  
            [first = pc|gt last = pc|gt]  
            [peer = pc]
            [priority = int]
            [label = "str"]
            [use = "str"]
            [connection parameters]
            [connection parameters]
      }
      [...]
     ] 

The parameters in this subsection are described in detail below.

first

Syntax:

Either:

  • first = startPC
  • first = "startGT"
Description: The first number (Point Codes) or string (Global Title) in the range of destination addresses.
Type: Decimal integer or Numeric string
Optionality: Optional. Must be set if last is set. Must be set if peer is not set. Must not be set if peer is set.
Allowed:  
Default:  
Notes: This number is inclusive.
Examples:

first = 0

first = "6441"

label

Syntax: label = "str"
Description: If a message has matched a classifier with the same label value as this parameter, the message can use this route.
Type: String
Optionality: Optional (not used if not set).
Allowed:  
Default: None (no label).
Notes:

If this route will be used by messages which have been matched in the Classifier parameters section, this string must match a label value exactly.

If more than one route has the same label, qualifying messages will follow the usual routing match rules to determine which route to use.

Example: label = "itp-special"

last

Syntax:

Either:

  • last = endPC
  • last = "endGT"
Description: The last Point Code or Global Title prefix in the range of destination addresses.
Type: Decimal integer or Numeric string
Optionality: Optional. Must be set if first is set. Must be set if peer is not set. Must not be set if peer is set.
Allowed:  
Default:  
Notes: This number is inclusive.
Examples:

last = 6441

last = "6441"

peer

Syntax:

peer = pc

peer = "gt"

Description: Point Code or Global Title prefix of the application server to connect to. Routes to a single point code instead of using the first and last parameters.
Type:

Point codes are decimal integer.

Global Title prefixes are string.

Optionality: Optional. Must be set if first or last are not set. Must not be set if first or last are set.
Allowed:  
Default: None.
Notes:

peer = "all_pc" supplies a route covering all point codes.

peer = "*" supplies a route covering all point codes and all global titles.

Examples:

peer = 131330

peer = "64321"

priority

Syntax: priority = priority
Description: The route's priority.
Type: Decimal integer
Optionality:  
Allowed:  
Default: 0
Notes:

The usable routes with the highest priority will be used for a message.

If multiple routes with the same priority are given, they are round-robined (unless a remote ASP specifically requests override mode).

The priority is per route, not per-connection, so a priority 1 for a route is not shared with the other routes using the same connection (although an item in the 'connections' section above may be given a priority to be used unless overridden).

Example: priority = 1

use

Syntax: use = "route_name"
Description: Base this route configuration on the named route.
Type: String
Optionality: Optional
Allowed: Any already defined route name.
Default:  
Notes: This enables parameters to be redefined specifically for this route without the need to repeat the unchanged ones.
Example: use = "PrimaryRoute"

Classifier parameters

The classifiers section is used to set up routing based on things other than the destination PC or global-tile digits. If one of the classifiers matches a message, then routes with the same 'label' as the classifier are used.

The classifiers are tested in order, and the first matching classifier is used. To match, a message must match all the conditions. If no classifiers match, then the routes with no label parameter are used.

This section is optional. The classifier-matches may be inserted directly into the 'routes' section. For more information about this, see Route parameters.
classifiers = [ 
{ 
[routing_indicator = int] 
[address_indicator = int] 
[subsystem_number = ssn] 
[point_code = pc] 
[gti = int] 
[trans_type = int] 
[num_plan = int] 
[nature_of_add = noa] 
[source_routing_indicator = int] 
[source_address_indicator = int] 
[source_subsystem_number = ssn] 
[source_point_code = pc] 
[source_gti = int] 
[source_trans_type = int] 
[source_num_plan = int] 
[source_nature_of_add = noa] 
label = "str" 
} 
[...] 
] 

The parameters in this subsection are described in detail below.

address_indicator

Syntax: address_indicator = int
Description:

For SUA, match against the address indicator field from the destination SUA address.

For SCCP, match against the address indicator field from the destination SCCP address (the first byte of the SCCP address).

Type: Integer
Optionality: Optional, (if not set, no matching is done against address indicator).
Allowed:  
Default: None.
Notes:  
Example: address_indicator = 2

gti

Syntax: gti = int
Description:

For SUA, match against the GTI field from the destination SUA address.

For SCCP, match against the GTI field from the destination SCCP address (the middle 4 bits of the address indicator byte).

Type: Integer
Optionality: Optional, (if not set, no matching is done against GTI).
Allowed: For SCCP, only 0 through 4 are used.
Default: None.
Notes:  
Example: gti = 2

label

Syntax: label = "str"
Description: Traffic which matches a classifier with this label, will be routed to the route which also specified this label.
Type: String
Optionality: Mandatory
Allowed:  
Default: None.
Notes:

Must be set for each classifier entry.

If this value is not set, the traffic will route down the default route.

Example: label = "itp-special"

nature_of_add

Syntax: nature_of_add = noa
Description: Match against the NOA field from the destination SUA or SCCP address.
Type: Integer
Optionality: Optional, (if not set, no matching is done against NOA).
Allowed:  
Default: None.
Notes:  
Example: nature_of_add = 1

num_plan

Syntax: num_plan = int
Description:

For SUA, match against the Number Plan field from the destination SUA address.

For SCCP, match against the Numbering Plan in the destination SCCP address (the top four bits of the GT numbering plan / encoding scheme byte).

Type: Integer
Optionality: Optional, (if not set, no matching is done against number plan).
Allowed: For SCCP, 0 - 15
Default: None.
Notes:  
Example: num_plan = 2

point_code

Syntax: point_code = pc
Description: Match against the PC field from the destination SUA/SCCP address.
Type: Integer
Optionality: Optional, (if not set, no matching is done against point code).
Allowed:  
Default: None.
Notes:  
Example: point_code = 1234

routing_indicator

Syntax: routing_indicator = int
Description: What details in the destination SUA/SCCP address to match against.
Type: Integer
Optionality: Optional, (if not set, no matching is done against routing indicator).
Allowed:
0 Route on GT
1 Route on PC and SSN.
Default: None.
Notes:  
Example: routing_indicator = 1

subsystem_number

Syntax: subsystem_number = ssn
Description: Match against the SSN field from the destination SUA/SCCP address.
Type: Integer
Optionality: Optional, (if not set, no matching is done against SSN).
Allowed:  
Default: None.
Notes:  
Example: subsystem_number = 8

trans_type

Syntax: trans_type = int
Description: Match against the translation type field from the destination SUA/SCCP address.
Type: Integer
Optionality: Optional (if not set, no matching is done against translation type).
Allowed: Any valid translation type.
Default: None.
Notes:  
Example: trans_type = 9

M3UA route parameters

The M3UA configuration is almost identical to the SUA config. The only difference is the additional parameters listed here.

japanese_sccp

Syntax: japanese_sccp = true|false
Description: Japanese SCCP variant. Specifies whether SCCP addresses include a national-use (ANSI) bit.
Type: Boolean
Optionality: Optional
Allowed:

True - SCCP addresses include an additional ANSI bit. The ANSI bit is ignored on incoming SCCP addresses and set on outgoing SCCP addresses.

False - SCCP addresses do not include an additional ANSI bit.

Default: False
Notes:  
Example: japanese_sccp = true

The connections subsection of the sigtran.config configuration supports these parameters.

M3UA = {

sigtran.config parametersjapanese_sccp = true|falseconnections = {{

 other connection parameters 

mtp3_dpc =

 pc 

}[...]}routes = [

 routes 

][classifiers = [

 class matches 

]]}

The parameters in this subsection are described in detail below.

mtp3_dpc

Syntax: mtp3_dpc = pc
Description: The destination point code required in MTP3 header.
Type: Decimal integer
Optionality:  
Allowed:  
Default:  
Notes:

There are three possible sources:

  • The SCCP address
  • The gtt_pc (when routing on GT)
  • Explicitly configured
Example: mtp3_dpc = 3245

Example Configuration Scenarios

Example - route 2 PCs

This is a small and simple eserv.config for the SUA stack. This example routes to 2 PCs. However, because they are configured as STP PCs, traffic is re-directed to STPs. All end-points have two IP addresses, so SCTP multi-homing is used.

SUA = {# Local point code.opc = 2057# Failover list for
failed traffic.stpPCs = [ 4101, 4102 ]connections = {itp1 = {#
multi-home to both nics.remote_host = [ "itp1-nicA", "itp1-nicB"
]remote_port = 14001local_host = [ "local-nicA", "local-nicB" ]#
specify routing context and loadshare for ITPs.routing_context =
666traffic_mode_type = "loadshare"}itp2 = {# multi-home to both
nics.remote_host = [ "itp2-nicA", "itp2-nicB" ]remote_port =
14001local_host = [ "local-nicA", "local-nicB" ]# specify routing
context and loadshare for ITPs.routing_context =
666traffic_mode_type = "loadshare"}}routes = [{peer = 4101 # Route
all traffic to peer 4101 touse = "itp1" # dest defined in
connection 'itp1'.}{peer = 4102 # Route all traffic to peer 4102
touse = "itp2" # dest defined in connection 'itp2'.}]}

Diagram - route 2 PCs

Here is a diagram which shows some of the features of the example.

Here is a diagram which shows some of the features of the example.

Example - route all to balanced ITPs

This example directly routes all PCs and all GTs to a pair of load-balanced ITPs (itp1 and itp2).

SUA = {opc = 2057connections = {multi-home = {# multi-home to
both itps.remote_host = [ "itp1", "itp2" ]remote_port =
14001local_host = [ "localhost" ]routing_context =
666traffic_mode_type = "loadshare"}}routes = [{peer = "*" # Route
all traffic touse = "multi-home" # destns in connection
'multi-home'.}]}

Note: The STP mechanism is not used, so the TCAP transactions are not tracked (as there is only one destination, that doesn't matter).

Diagram - route all to balanced ITPs

Here is a diagram which shows some of the features of the example.

Here is a diagram which shows some of the features of the example.

Example - route on transmission type

This example directly routes all PCs and all GTs to an ITP (itp1), except for traffic with transmission type 9 which goes to itp3.

SUA = {opc = 2057connections = {multi-home = {# multi-home to
both itps.remote_host = [ "itp1", "itp2" ]remote_port =
14001local_host = [ "localhost" ]routing_context =
666traffic_mode_type = "loadshare"}itp3 = {remote_host = "itp3" #
Send to itp3.use = "multi-home" # Use main config to set
defaults.}}routes = [{peer = "*" # Route all traffic touse =
"multi-home" # destns in connection 'multi-home'.}{label = "tt9" #
Class 'tt9' will useuse = "itp3" # dest defined in connection
'itp3'.}]classifiers = [{trans_type = 9 # Route all traffic with
transmission type 9label = "tt9" # to dest in route labelled
'tt9'}]}

Diagram - route on transmission type

Here is a diagram which shows some of the features of the example.

Here is a diagram which shows some of the features of the example.