Siu Development Release Notes

25
SS7 Development Package for Solaris * Release Notes for V2.00 1. Overview This is the first full release since V1.08. It provides support for Dialogic ® SS7HD boards, M2PA support, and support for limited size S7_LOG log files. This release contains various other improvements to improve RSI link stability, correctly remove the GCT environment, updated s7_mgt to support a larger number of signalling and monitoring links, and improved SCTP congestion handling. This release is intended for Sparc* based Solaris* distributions. This release is fully backwards compatible with the previous release. Due to an incompatibility with a Solaris shared library, Solaris 2.6 (SunOS 5.6) is no longer supported. 2. New Functionality 2.1 SS7HD Support The Development package now contains full support of the SS7HD board family. Some systems have been experiencing problems due to non-serviced interrupts being reported by the system. The problem could result in large numbers of event reports which could impact system performance. The SS7HD drivers included in this package include an optional work- around to eliminate these problems. To enable this functionality the following line must be added to the /etc/system file: set ss7hd32:ss7hd_claimint=1 or set ss7hd64:ss7hd_claimint=1 The system must be rebooted to force the change to take effect. * Other names and brands may be claimed as the property of others.

description

Release Notices

Transcript of Siu Development Release Notes

Page 1: Siu Development Release Notes

SS7 Development Package for Solaris*

Release Notes for V2.00

1. Overview

This is the first full release since V1.08. It provides support for Dialogic® SS7HD boards, M2PA support, and support for limited size S7_LOG log files.

This release contains various other improvements to improve RSI link stability, correctly remove the GCT environment, updated s7_mgt to support a larger number of signalling and monitoring links, and improved SCTP congestion handling.

This release is intended for Sparc* based Solaris* distributions.

This release is fully backwards compatible with the previous release.

Due to an incompatibility with a Solaris shared library, Solaris 2.6 (SunOS 5.6) is no longer supported.

2. New Functionality

2.1 SS7HD Support

The Development package now contains full support of the SS7HD board family.

Some systems have been experiencing problems due to non-serviced interrupts being reported by the system. The problem could result in large numbers of event reports which could impact system performance.

The SS7HD drivers included in this package include an optional work-around to eliminate these problems.

To enable this functionality the following line must be added to the /etc/system file:

set ss7hd32:ss7hd_claimint=1

or

set ss7hd64:ss7hd_claimint=1

The system must be rebooted to force the change to take effect.

* Other names and brands may be claimed as the property of others.

Page 2: Siu Development Release Notes

2.2 M2PA support

The S7_MGT module has been updated to support the configuration of the M2PA protocol module. For more information on the use of the M2PA module, see the M2PA Programmer’s Manual.

2.3 User Definable Log Files

The S7_LOG module has been enhanced to allow more flexibility in the generation of log files when logging output is being captured to a file.

Two additional parameters have been introduced. These specify the maximum size and maximum number of log files to be generated.

If the –f option is not specified the output from the S7_LOG module will be sent to stdout, as always. If the –f option is used without the new –n or –s options then the output will be sent to the specified file as in the previous package release.

If either the –n or –s option is specified then multiple log files are selected. The current output is written into the file:

log.txt (first file)

When log.txt reaches the specified maximum size it is renamed to log.txt.1 and a new log.txt is created:

log.txt (most recent file) log.txt.1 (oldest file)

Each time log.txt reaches the specified maximum size the rename procedure is repeated:

log.txt (most recent file), log.txt.1 (second most recent file) … log.txt.[n-1] (oldest file)

When the maximum number of log files is reached the oldest file is discarded:

log.txt (most recent file), log.txt.1 (second most recent file) … log.txt.[n-1] (second oldest file)

The new S7_LOG command line parameters are as follows:

-n<max number of files> (default is 5) -s<max logfile size(in kilobytes)> (default is 1000)

Values for the <max number of files> between 2 and 99 are supported and for <max logfile size> between 1k and 100,000k.

Page 3: Siu Development Release Notes

For example, the following command line would cause a maximum of ten logging files , named s7log.txt … s7log.txt.9, to be created each with a maximum size of 1000 kilobytes:

s7_log -fs7log.txt -n10 -s1000

3. Other Changes

3.1 GCT environment clean-up

Under certain circumstances, for example when pressing Ctrl-C, gctload failed to fully clean-up the gct environment. This prevented GCTLOAD module from restarting the GCT environment. This problem has now been resolved.

3.2 Increase of supported links and monitor links

The S7_MGT module has been enhanced to increase the number of supported links and monitor links to 512.

3.3 RSI enhancement

Certain incorrectly formatted messages, for example if the message has an invalid size, could cause the RSI link to drop out of service. This problem has been resolved in this release. Incorrectly formatted messages are now discarded.

A further problem was detected in the RSI module that could cause the RSI links to drop out of service under conditions of Network congestion or latency. This problem has now been resolved.

3.4 SCTP enhancement

The SCTP protocol includes a flow control mechanism triggered by the loss of messages on an association. If SCTP detects a certain level of IP loss on the association it will throttle the rate of messages sent. The SCTP module uses this mechanism to prevent the overloading of the system. In the event of congestion of the GCT message environment the SCTP Daemon will stop reading messages from the local IP. IP receive buffers will congest and subsequent messages will be dropped. When GCT congestion abates the SCTP daemon will recommence reading messages from IP and the far side of the association will have throttled the rate at which it transmits messages.

Dialogic 11-Mar-05

Page 4: Siu Development Release Notes

SS7 Development Package for Solaris*

Release Notes for V2.01

1. Overview

The main purpose of this release is to correct a problem in the gctlib library that can potentially cause memory leakage resulting eventually in a system failing. To eliminate the potential for this problem, users are advised to relink existing applications with the new gctlib library and upgrade any Host Protocol binaries to the versions detailed below. However, typically the problem does not manifest itself so the risk in using older binaries is low.

The release includes other changes as detailed below including enhanced operation of the gctload –t1 operation to improve integrity of the reported parameters.

This release is intended for Sparc* based Solaris* distributions Versions 8, 9 and 10 although SIGTRAN SCTP operation is not currently suitable for use Version 10.

The release is fully backwards compatible with the previous release.

2. New Functionality

This release contains no new features.

3. Other Changes

3.1 gctlib Resource Leakge

Previous releases (from V1.06 onwards) exhibited a problem in the gctlib library that can potentially cause memory leakage resulting eventually in a system failing. In practice this error does not show up in most systems, however to guarantee that a system will not be impacted, users should relink existing applications with the new gctlib library and upgrade any Host Protocol binaries to the versions detailed below.

MTP3 V4.01 ISUP V3.04 TUP V2.03 SCCP V2.03 TCAP V3.04 MAP V3.06 IS41 V3.01 INAP V2.05 M3UA V2.03 M2PA V1.01

* Other names and brands may be claimed as the property of others.

Page 5: Siu Development Release Notes

Users can determine whether a particular installation is experiencing the problem by running the prstat command and looking at the SIZE column in the output. If the virtual memory leak is happening the SIZE value will over time increment. If the SIZE value remains constant the problem is not occurring.

3.2 Use of gctload –t1 to verify message usage

Operation of the gctload –t1 command has been enhanced to ensure that the count of allocated messages is now an atomic operation and will give results consistant with the number of free messages available for any system.

3.3 Parallel Codefile Downloads

The ssdh module has been enhanced to allow parallel downloads of codefiles to multiple boards. This can reduce system startup times for system configured with multiple SS7HD boards.

3.4 Solaris 10 Support

This release supports operation under Solaris 10 with the exception that SIGTRAN SCTP operation is not currently supported under this version of the operating system. For operation under Solaris 10 it is necessary for the SSDS and SSDH modules to execute with root permissions. In order that a normal user can run the binary with these permissions a user with root privileges must perform the following actions on the binary.

chown root [ssds / ssdh] chmod +s [ssds / ssdh]

3.5 Message corruption in the RSI module

Under conditions of extreme load the RSI module could corrupt the contents of the messages it was transferring. This problem has been resolved in this release of the package.

3.6 M2PA Link configuration

The SNEND parameter is used in the SNLINK command to configure M2PA links. In previous releases of the package the S7_MGT module was not correctly applying this parameter and the default Client configuration was always configured. This problem has been resolved.

Dialogic 13-Sep-05

Page 6: Siu Development Release Notes

SS7 Development Package for Solaris*

Release Notes for V3.00

1. Overview

This releases enhances the capabilities of the inter process message passing mechanism by adding support for ‘Long Messages’ containing up to 4200 octets in the parameter area (compared with the 320 octets in standard messages). This capability provisions for protocol modules to support full SCCP Segmentation & Reassembly procedures opening up the prospect of many new features (eg. Support for extended length SMS operation).

This is the first release of the SS7 Development Package for Solaris to achieve General Availability status since V2.01.

The release also changes the format of the gctlib library that the user links into their application. Previously this was a static library which needed the application to be relinked whenever gctlib changed. The new scheme uses a Shared Object which allows the application to dynamically link to gctlib at run-time. Therefore subsequent changes to gctlib will not require the application to be relinked. The Shared Object library is configured upon package installation for Solaris 9 and later. For Solaris 8 some manual configuration is required. This is described below.

Users should read the full content of these release notes to fully understand the backwards compatibility between this release and the previous release. In all cases the new Shared Object will need to be loaded. If users need to make use of the Long Message capability then all binaries will need to be upgraded to a new release and all application processes relinked. However, if ‘Long Message’ support is not required (and not activated) then this release is fully compatible with previous Host Binaries and Applications built using the previous release of the Development Package.

The release also includes a watchdog mechanism has been added between the host and the board to allow the board to detect a failure of the host software.

* Other names and brands may be claimed as the property of others.

Page 7: Siu Development Release Notes

2. New Functionality

2.1 Long Message Support

The inter-process communication environment is build upon a number of processes exchanging messages. The message consists of a fixed header and a variable length parameter area. In the previous release all messages supported up to 320 octets in the parameter area of the message. This release adds support for ‘Long Messages’ which can contain up to 4200 octets in the parameter area.

When the message is allocated the length parameter specified in the getm() function call is used to determine whether to allocate a normal message (length <= 320) or a ‘Long Message’ (length > 320).

Internally two partitions are created, the first for standard 320 octet messages and the second for 4200 octet messages. The use of the second partition is optional and is enabled by the use of a new NUM_LMSGS command in the system.txt file which takes a single parameter representing the number of ‘Long Messages’ required in the system. This should be in the range 1 to 65,000.

NUM_LMSGS <num_msgs>

This command is typically used in conjunction with the NUM_MSGS command to configure the message pool – see Issue 5 of the Software Environment Programmer’s Manual for more details. For example:

NUM_MSGS 10000 * 10000 normal MSGs NUM_LMSGS 200 * 200 long messages

2.2 Prerequisites for using Long Messages

There are a number of important prerequisites that must be adhered to in order to modify a system to support the new ‘Long Message’ capability. These are summarised as follows:

• Ensure that the Shared Object is correctly configured. • Update all Host Protocol Binaries • Relink all application processes

To make use of Long Messages, all modules in the system must be linked against the new gctlib library. If an (old) module that does not support long messages is run in this environment then it will not recognise the new environment and will remain isolated from the environment (ie. unable to allocate, send or receive messages). It will not impact the operation of other modules using the environment.

Page 8: Siu Development Release Notes

The following versions of the Host Binaries for Solaris use the Shared Object version of gctlib and are suitable for use in systems that use long messages.

MTP3 V5.00 or later SCCP V3.00 or later TCAP V4.00 or later MAP V4.00 or later INAP V3.00 or later INAPAPI V5.00 or later IS41 V4.00 or later ISUP V4.00 or later TUP V3.00 or later M2PA V2.00 or later M3UA V3.00 or later

In addition to using these binaries it may also be necessary to make configuration changes to the modules to enable long message support. Refer to the release notes for the individual protocol binaries.

Note: Long messages are currently supported in the host environment but not in board-based environments.

2.3 Re-linking existing applications

Any customer applications that make use of the GCT environment must be re-linked to make use of the new library

Update the link command to access this library, for example the linker command line in the makefile might appear similar to the following:

gcc -o <BIN> <OBJ> <LIBS> -lgctlib -Bdynamic -L<.so dir>

Where <.so dir> is the path to the new Shared Object library.

Refer to the linker documentation for further details.

2.4 Board watchdog mechanism

A host to board watchdog has been introduced which allows the board to detect a failure of the host software and reset. This prevents the condition whereby the software on the host has stopped running but the boards still presents an ‘in-service’ condition to the remote end.

This optional watchdog mechanism is activated using the –w command line parameter to SSDS or SSDH binaries.

ssdh –w

Page 9: Siu Development Release Notes

3. Other Changes

3.1 gctload –t1 status report

The gctload module has been updated so that, in systems where long messages have been configured, the status of both long and normal messages is reported in response to a gctload -t1 command.

The version of the shared library that is being used is also reported as shown in the following example output:

GCTLOAD System status: Congestion module Id: 0x21 GCTLIB library: V1.20 Partition[0] Parameter size: 320 MSGs in partition: 200 MSGs allocated : 0 MSGs free: 200 Maximum MSGs allocated: 2 Out of MSG count: 0 Congestion onset: 100 Congestion abate: 20 Congestion status: 0 Congestion count: 0 Partition[1] Parameter size: 4200 MSGs in partition: 10 MSGs allocated : 0 MSGs free: 10 Maximum MSGs allocated: 1 Out of MSG count: 0 Congestion onset: 5 Congestion abate: 1 Congestion status: 0 Congestion count: 0

3.2 s7_log long message support

The s7_log utility has been enhanced so that it supports logging of long messages both to file and to the screen. In addition trace messages have been enhanced so that the whole message can be traced. Previously trace messages contained a maximum of 280 bytes traced from the parameter area of a message.

3.3 s7_play long message support

The s7_play utility has been enhanced so that it supports long messages (up to 4200 octets) in its input file and sends them to the system.

3.4 Enhanced RSI binary

The RSI binary can optionally support transfer of ‘Long Messages’ to and from the remote system. This feature can be either be activated

Page 10: Siu Development Release Notes

from the command line using the following additional command line parameter: -nl

e.g. rsi -nl

or by setting bit 3 (RSILF_CONFIG_large_msg) in the <flags> field of the CONFIGURE_RSILNK message.

Both local and remote RSI modules need to be configured to support ‘Long Messages’. If an RSI binary that is configured to support ‘Long Messages’ detects that the remote RSI is not configured to support Long Messages then it will generate an Error Trace Event message (MGT_MSG_EVENT_IND) with a status of RSI_LMSG_MISMATCH (0xe0) and send it to the concerned module_id for the RSI link.

In all other respects, providing 'long message' mode is not configured, the operation of the RSI binary is unchanged.

3.5 Manual configuration of Shared Object library for Solaris 8

For Solaris 9 and later the Shared Object library is automatically configured by the installation scripts. For Solaris 8 a warning is generated by these scripts that the library configuration has not completed successfully and the configuration must be completed by the user.

The following must be run by a user with root privileges, after the installation has been run

Run the crle utility to check whether Runtime Linking Environment has been configured.

If crle is not configured then a message similar to the following will be shown:

crle: /var/ld/ld.config: open failed: No such file or directory

If crle has not been configured then add /usr/lib to the default run-time library path:

crle -l /usr/lib

If crle has been configured then a response similar to the following will be generated:

Configuration file: /var/ld/ld.config Default Library Path (ELF): /usr/lib:/lib

The current Library Path is presented in this response: /usr/lib:/lib.

Update the crle configuration to include the path the SS7 Development Package installation directory in addition to current search path:

crle -l /usr/lib:/lib:/opt/DKseptel

Page 11: Siu Development Release Notes

Finally re-run the crle utility to confirm that the Runtime Linking Environment has been correctly updated:

Configuration file: /var/ld/ld.config Default Library Path (ELF): /usr/lib:/lib:/opt/DKseptel

Dialogic 14-Mar-06 Revised 19-Jun-06

Page 12: Siu Development Release Notes

SS7 Development Package for Solaris*

Release Notes for V3.01

1. Overview

This release includes several minor changes including updates to the s7_mgt configuration utility, updates to SS7HD drivers and the inclusion of protocol-specific header files to the package. It supports the configuration and operation of High Speed Links (HSL) on SS7HD boards.

s7_mgt now supports configuration of transaction based protocols. This functionality allows users to configure the SCCP, TCAP, MAP, INAP, IS41 and DTC modules directly from the config.txt configuration file. s7_mgt also supports configuration of ISUP timers and allows up to 64 link sets to be configured.

Other improvements and corrections are supported as detailed below. The release is fully backwards compatible with the previous release.

2. New Functionality

2.1 Configuration of transaction based protocols using s7_mgt

This release introduces support for the configuration of transaction based protocols into s7_mgt. Using the config.txt file the following modules can be configured: SCCP, TCAP, MAP, INAP, IS41 & DTC. This means the user now has the choice of using either message based configuration or text based configuration using config.txt. This removes the need to use script files (.ms7) for module configuration. Full details of the commands are detailed in an interim application note Additional Information for s7_mgt Support of Transaction Based Protocols GA040DPK which is available on request.

2.2 ISUP timer configuration in config.txt

This release supports configuration of ISUP protocol timers through the config.txt file using the new ISUP_TIMER command which takes as parameters the <timer_id> and the timer <value>. The syntax is :

ISUP_TIMER <reserved> <timer_id> <value>

For example:

ISUP_TIMER 0 T4 550

* Other names and brands may be claimed as the property of others.

Page 13: Siu Development Release Notes

The <reserved> parameter must always be set to zero. The <timer_id> should be set to the appropriate mnemonic from the following table and <value> should be set to the timeout value (in seconds except for timers except T29 and T30 that are in multiples of 100ms). Timers not explicitly set will be set to their default values, as shown in the table below.

Mnemonic Default (Seconds)

Mnemonic Default (Seconds)

T1 10 T21 60 T2 180 T22 10 T3 180 T23 60 T4 300 T24 2 T5 60 T25 5 T6 180 T26 120 T7 25 T27 240 T8 13 T28 10 T9 45 T29 0.5 T10 5 T30 8 T12 10 T33 14 T13 60 T34 3 T14 10 T35 20 T15 60 T36 13 T16 10 T38 150 T17 60 T39 10 T18 10 T103 20 T19 60 T104 3 T20 10

2.5 Additional Linkset support in s7_mgt

The s7_mgt binary has been modified to support configuration of up to 64 link sets compared with 32 in the previous release.

3. Other Changes

3.3. Protocol-specific Header Files

The protocol-specific header files (previously supplied as part of the User Part Development Package) are now included as part of this Development Package and can be found in the INC sub-directory. The following files are included:

ccp_inc.h isp_inc.h rsi_inc.h dts_inc.h m2p_inc.h scp_inc.h in_ain_inc.h m3u_inc.h t114_inc.h in_inc.h map_inc.h tcp_inc.h inap_inc.h nup_inc.h tup_inc.h is41_inc.h q773_inc.h

Dialogic 19-Jun-06

Page 14: Siu Development Release Notes

SS7 Development Package for Solaris

Release Notes for V3.03

1. Overview

This is the first release of the SS7 Development Package for Solaris since V3.01.

This release adds support for the configuration of M3UA Destination Auditing (DAUD) and resolves a problem that prevented the use of SPCI signalling board under Solaris 10. A number of other improvements and corrections are also supported as detailed below.

The release is fully backwards compatible with the previous release.

2. New Functionality

2.1 Destination Audit configuration using s7_mgt

Sigtran M3UA hosts can be configured to automatically audit Signalling Gateways to ensure that route status is kept synchronised with the Signalling Gateway. Auditing happens on recovery of the Signalling Gateway connection and periodically thereafter.

To activate the periodic destination audit mechanism, set the optional DAUD parameter of the CNSYS command to 'Y'. The new syntax for the commands is shown below:

CNSYS:IPADDR=,[IPADDR2=,][PER=,][DAUD=];

For example:

CNSYS:IPADDR=192.168.1.20,DAUD=Y;

2.2 Support for Network Appearance added to s7_mgt

The existing “SNSLI” command has be modified to configure an optional Network Appearance parameter. The parameter added takes the form: “NA=”

When set the value of the NA parameter serves as the default Network Appearance for a M3UA Application Server and is transmitted to Remote Application Servers or Signalling Gateways as appropriate. The NA parameter is not applicable for M2PA operation.

SNSLI: SNLINK=,SNTYPE=M2PA,IPADDR=,[SNEND=,][IPADDR2=,] [HPORT=,][PPORT=,][M2PA=,][M2PA_VER=,][NA=];

For example:

SNSLI:SNLINK=1,SNTYPE=M3UA,IPADDR=111.112.113.200,NA=1;

Page 15: Siu Development Release Notes

2.3 Support for ISUP-S and TUP-S run modes on SPCI boards.

The runmode mnemonics, ISUP-S and TUP-S, are now supported by the SEPTELCP_BOARD / SEPTELPCI_BOARD s7_mgt commands.

Run Mode Capacity ISUP-S Circuit Groups:

Circuits: 44

1024

TUP-S Circuit Groups: Circuits:

44 1024

2.4 Improved board congestion control

Problems have been encountered in some systems where board congestion warnings are not acted on effectively. In some circumstances a large number of messages may be queued for transmission to the board within the ssds module.

In this release, if this occurs when the system is in a congested state, any new MTP Transfer Request message (API_MSG_TX_REQ) that are received will be immediately discarded.

The ssds module will report the onset of message discard with a SSD_MSG_STATE_IND (0x00a0) message having event type 0x73. Clearing of the discard condition is reported with event type 0x72.

2.5 Increased number of supported FORK_PROCESS commands

Previously the maximum number of FORK_PROCESS commands that the gctload module could support in system.txt configuration file was 32. This has now been increased to 64.

2.6 Improved validation of module IDs.

The DEFAULT_MODULE command in the system.txt configuration file now validates that the specified module ID has been defined.

Use of the unsupported module ID, 0xff, in the system.txt configuration file is now reported as an error.

2.7 Improved s7_log logging.

Previously, if an unknown event occurred, s7_log would only report that the event had occurred. Now the error code is also be reported.

A number of new MTP3 events are now logged as text. These are S7T_T1_EXP, S7T_T2_EXP, S7T_T3_EXP and S7P_AERM.

Page 16: Siu Development Release Notes

2.8 Hexadecimal parameter support for MMI style s7_mgt command.

Earlier releases of the s7_mgt binary did not support hexadecimal values for those commands which use a MMI style command format. In this release this format is supported.

3. Other Changes

3.1 SPCI Support for Solaris 10.

In previous releases of the Development Package, the SPCI signalling board could not be used under Solaris 10. This problem has been resolved.

3.2 Enabling timestamps for the s7_mgt MONITOR_LINK command .

In earlier releases, when using the MONITOR_LINKS command, enabling the message timestamp option had no effect. In this release timestamps are correctly configured.

3.3 Configuration of ANSI ISUP T103 / T104 through s7_mgt

Earlier versions of the s7_mgt module did not correctly configure the values for the T103 and T104 timers for ANSI ISUP. This has now been corrected.

3.4 Large message support for s7_play

Earlier releases of the s7_play module were failing to correctly transmit messages over 320 octets long. These messages are now correctly transmitted.

3.5 SCTP stability improvements

Previously, out of sequence chunk fragments could cause the SCTP module to fail. In this released they are handled correctly.

3.6 Relaxed permissions on RSI FIFOs.

If not shut down cleanly, earlier versions of the rsi module could leave FIFO inodes in the /tmp directory. If it were subsequently started by a different user it could fail to correctly establish the FIFOs needed to communicate with the rsi_lnk process. The permissions of the FIFO inodes have now been relaxed to prevent this problem.

3.7 Improved default SIGTRAN parameters.

The minimum round trip timeout has been reduced from 500ms to 200ms and the maximum round trip timeout is now 1400ms. This improves the stability of SIGTRAN links.

Page 17: Siu Development Release Notes

The receive window of 16KB, which could restrict performance under high loads or in high latency conditions has now been enlarged to 64KB.

The M2PA T7 timeout has been changed to 1000ms.

These parameters are not user configurable using the s7_mgt module.

3.8 Configuration of Number of Signalling links

In earlier releases of the Development Package the s7_mgt binary used pre defined values for configuring the 'maximum number of links supported' for the Sigtran modules (M2PA and M3UA).

In this release this value will be determined by counting the number of links configured in the config.txt file.

Dialogic 28-Mar-07

Page 18: Siu Development Release Notes

SS7 Development Package for Solaris

Release Notes for V3.05

1. Overview

This is the first full release of the Dialogic® SS7 Development Package for Solaris since V3.03. Except for some minor changes to configuration messages outlined below, the release is fully backwards compatible with the previous release.

This release adds support for the Dialogic® SS7HDE High Density PCI-Express Signaling Board.

The S7_MGT module has been extended to support the configuration of the SUA module. Support for native kernel implementations of the SCTP protocol has been added. A new command has been introduced to allow users to specify the period of certain Sigtran timers.

The S7_LOG module has been extended to output a PCAP-formatted log file. This will allow a third party application to analyse packets.

Other improvements are included in this release, as described below.

2. New Functionality

2.1 Support for the SS7HDE Signaling Board

This release of the SS7 Development Package for Solaris includes support for the SS7HDE Signaling Board.

Full details of the operation of the SS7HDE Board are provided in the Dialogic® SS7HD Programmer’s Manual, Issue 8.

2.2 S7_MGT support for SUA

Support for the Dialogic® SUA module has been added to the S7_MGT utility. See the Dialogic® SS7 Protocols SUA Programmer's Manual for full details.

The sua_inc.h header file has been added to the package.

2.3 Native SCTP

A new module, SCTPN, has been introduced that allows users to make use of a kernel implementation of the SCTP protocol that is available under Solaris 10.

See Appendix A - Support for Native SCTP for details.

Page 19: Siu Development Release Notes

2.4 PCAP output for S7_LOG

To invoke this new functionality the new –p command line parameter should be used to specify the filename of the log file. For example:

s7_log –plog.cap

This will write a PCAP formatted file called log.cap. The following messages will be logged:

API_MSG_RX_IND, API_MSG_RX_INDT API_MSG_TX_REQ.

When running in Monitoring mode, logging will take place from the MTP2 level. No additional configuration is required.

When running in Termination mode, logging will take place from the MTP3 level. An appropriate level of MTP3 tracing must be specified. The TX_REQ bit should be set in the output event trace mask and the RX_IND bit should be set in the input trace mask.

Refer to issue 7 of the MTP3 Programmer’s Manual for more information on MTP trace mask.

2.5 Sigtran timer configuration

A new command, CNTOS, has been added to the set supported by the S7_MGT utility. This allows the user to set the values of timers to be used in the SCTP and M2PA protocols.

See Appendix B - CNTOS command for details.

2.6 Additional s7_play commands

The command set supported by the s7_play module has been extended. Commands may now be issued that require the module to pause until a specified message or response is received.

Two new commands have been added to the set supported by the s7_play. Commands may now be issued that require the module to pause until a specified message or response is received.

The W command instructs the module to issue a message and then wait for a response to that message

The P command causes the module to pause until it receives the specified message types.

Page 20: Siu Development Release Notes

The new set of commands is:

Command Description M This will be a message as per existing functionality D Delay this will function as before W Send the message and wait for response P Pause and wait for a specified message type to be received

A typical script is as follows:

M-t7680-I0000-f1d-d20-s00-i0000-p2000001d000000 P-t3680 M-t7689-i0000-fef-d20-rffff-s00-p0002 0004 0006 0008 0010 M-t7680-I0000-f1d-d20-s00-i0000-p2000001d0000000000000000 W-t7680-i0000-fef-d20-s00-p200000cf70637337332e64633100

Note: When issuing a wait for message command the user must ensure that the destination for the response is set to the s7_play module id or no response will be received. A warning error is issued.

Support for the –m parameters has been added to the s7_play module. This allows the user to specify which Module Identifier should be used.

2.7 Configuration of management and maintenance module ids

The values specified in the configuration commands that the S7_MGT utility sends to the Host Protocol modules are not always convenient. These have been revised in this release.

The revised values have been selected to avoid, as far as possible, changing the default system behaviour. The values that have been changed are marked with an asterisk [ * ] in the table below.

The revised values are shown in the table below:

Protocol Management ID Maintenance ID Trace ID

MTP3 mgmt_id - -

ISUP ISUP user id ISUP user id trace_id

TUP TUP user id TUP user id trace_id

SCCP trace_id maint_id * -

TCAP trace_id maint_id * -

MAP mgmt_id * maint_id * trace_id

INAP mgmt_id * maint_id * trace_id

IS41 mgmt_id * maint_id * trace_id

M2PA mgmt_id * - trace_id

M3UA MBM_TASK_ID maint_id trace_id

SUA mgmt_id - trace_id

Page 21: Siu Development Release Notes

The values to be used for the messages highlighted in italics above may be specified using the following new config.txt commands:

MGMT_MOD_ID mgmt_id

MAINT_MOD_ID maint_id

TRACE_MOD_ID trace_id

These allow the user to specify the separate destinations to be used for trace, maintenance and management messages.

If not explicitly specified the variables: mgmt_id, maint_id and trace_id take the default values 0xef.

2.8 GEN_MSG_MOD_IDENT support in SCTP

The GEN_MSG_MOD_IDENT message may be used to request a Revision Identifier for a module.

Support for this message has been added to the SCTP module.

Note that the Core Revision Identifier is returned by this function. This is not the same as the Binary version that is reported, for example, by the sctp –v command line parameter.

2.9 Increase SCCP sub-system resource commands

The number of SCCP sub-system resource commands that the S7_MGT utility supports has been increased from 16 to 512.

2.10 Increase number of routes supported by S7_MGT

The number of MTP_ROUTE commands supported by the S7_MGT utility has been increased from 128 to 4096.

2.11 Configuration of non-consecutive links using S7_MGT

In earlier releases of the Development Package, if the config.txt file contained MTP_LINK commands with non-consecutive link reference numbers, the configuration commands generated by the S7_MGT utility would be rejected by the MTP3 module.

In this release the commands are not rejected.

2.12 Notify message for void config.txt message

If configured, the S7_MGT utility now generates a Notify message even if the config.txt file does not contain any configuration commands.

Page 22: Siu Development Release Notes

3. Other Changes

3.1 SSDH crash with Invalid switch setting

In earlier releases of the Development Package, certain invalid geographic addressing switch settings were causing a SSDH crash.

This problem has now been resolved and the invalid setting are rejected normally.

3.2 Number of streams configured for M2PA

In previous releases of the S7_MGT utility, the command used to configure SCTP associations for M2PA links specified that 32 streams should be used. In this release only two streams are configured.

3.3 Use of SCPF_SMB flag in SCCP_MSG_CONFIG message

In previous releases of the S7_MGT utility, the SCPF_SMB flag was being set although SMB operation is not currently supported by the S7_MGT utility. In this release this flag is no longer set.

3.4 SCTP Init chunk with variable parameters

In previous releases of the SCTP module, receipt of an INIT chunk with variable parameters (which are not listed in Section 3.3.2 of RFC 2960) resulted in failure of the SCTP module. In this release they are correctly handled.

Dialogic 13-Mar-08

Page 23: Siu Development Release Notes

Appendix A - Support for Native SCTP

Existing SCTP support uses two binaries (SCTP and SCTPD) to implement the complete SCTP protocol stack in user space. This approach may still be used, however, Solaris 10 includes an implementation of the SCTP stack. This cannot be disabled, rendering the user space stack incompatible.

As a result an alternative SCTP protocol binary (SCTPN) has been developed which provides a common API to the previous implementation but internally uses the kernel’s SCTP stack.

To make use of the new module, the user should use the new binary (SCTPN) instead of the binaries SCTP and SCTPD.

A.1 Configuration

In most respects no changes are required to the system configuration files. However the following two lines should be removed from system.txt:

FORK_PROCESS ./sctp FORK_PROCESS ./sctpd

And a new line added to start the SCTPN module:

FORK_PROCESS ./sctpn

Replace the LOCAL declaration for SCTPD by a REDIRECT to ensure that any messages previously routed to SCTPD are now routed to SCTPN as follows:

Remove:

LOCAL 0xd0 * SCTPD module

And replace with:

REDIRECT 0xd0 0xd1 * SCTPD messages sent to SCTPN

Furthermore, the GCT environment must be configured to inform the SCTPN module of congestion events. This is done using the gctload module’s –Ci parameter:

./gctload –Ci0xd1

No changes are required in the config.txt file.

Page 24: Siu Development Release Notes

A.2 Application Interface

The application interface is compatible with the existing SCTP module. There are minor differences in terms of support for certain options as detailed below. Most applications should not require any change.

SCTPD Configuration Request (SCTP_MSG_IP_CONFIG) The SCTPN module does not have a separate SCTPD module and no longer requires this message. The module will respond to these messages, allowing existing applications to work without modification, provided the REDIRECT command is added to the system.txt file, as detailed above.

Module Configuration Request (SCTP_MSG_CONFIG) The options bits must meet the following requirements:

SCTP_CNF_OPT_CRC32 must be set – Adler32 is not supported. SCTP_CNF_OPT_NO_ABORT_INIT must not be set.

Configure Association Request (SCTP_MSG_AS_CONFIG) The T2_init parameter is not supported and will be ignored.

Global Stats Request (SCTP_MSG_R_GLOBAL_STATS) The following parameters are unsupported and will always return zero: OOB, chunks_retx and bad_checksum.

Read Association Configuration Request (SCTP_MSG_R_CONFIG) The COOKIE_ECHOED, SHUTDOWN_SENT, SHUTDOWN_RECEIVED and SHUTDOWN_ACK_SENT states will never be returned.

Read Association Statistics Request (SCTP_MSG_R_STATS) The following parameters are unsupported and will always return zero: chunks_retx, t1_expires and t2_expires.

Read Association Peer Address Statistics (SCTP_MSG_R_PEER_ADDR_STATS) The following parameters are unsupported and will always return zero: lost_heartbeat and lost_data.

Association Abort Request (SCTP_MSG_ABORT) The error parameter is unsupported and will be ignored.

Association Data Transfer Request (SCTP_MSG_TX_REQ) The SCTP_UNBUNDLED flag is unsupported and will be ignored.

Trace Mask Configuration Request (SCTP_MSG_TRACE_MASK) Since there is no SCTPD module, the SCTP_EVTO_DATA_REQ bit of the ip_evt_mask is ignored.

Page 25: Siu Development Release Notes

Appendix B - CNTOS command

A new command has been added to the set supported the S7_MGT utility. This allows the user to set the values of timers to be used in the SCTP and M2PA protocols.

The command is as follows:

Syntax: CNTOS:TTYPE=,TO=,{TSEC=|TMSEC=};

Examples: CNTOS:TTYPE=SCTP,TO=HTBT,TMSEC=500; CNTOS:TTYPE=M2PA,TO=T4N,TSEC=10;

TTYPE The protocol for which the timeout to be set: SCTP or M2PA.

TSEC / TMSEC The period of the timeout, in seconds or milliseconds.

TO The timeout that is being set. The set of timeouts supported is as follows.

Mnemonic Default Granularity SCTP Timeout

Rmin 200ms 1ms Minimum RTO

Rmax 1400ms 1ms Maximum RTO

Rinit 1000ms 1ms Initial RTO

Ck 30000ms 1ms Cookie lifetime

Hbt 1000ms 1ms Time between heartbeats

T1i 3000ms 1ms Starting timeout of an INIT chunk

T2i 3000ms 1ms Starting timeout of a SHUTDOWN chunk

Mnemonic Default Granularity M2PA Timeout

T1 40s 1s 'Alignment Ready' timer value

T2 10s 1s 'Not Aligned' timer value

T3 2s 1s 'Aligned' timer value

T4n 7s 1s 'Normal Proving' timer value

T4e 500ms 100ms 'Emergency Proving' timer value

T6 3s 1s 'Remote Congestion' timer value

T7 1s 100ms 'Excessive Delay Of Acknowledgement' timer value