Siu Development Release Notes
Siu Development Release Notes
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 workaround 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
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 Programmers 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 log.txt.1
Each time log.txt reaches the specified maximum size the rename procedure is repeated:
log.txt log.txt.1
log.txt.[n-1] (oldest
When the maximum number of log files is reached the oldest file is discarded:
log.txt log.txt.1
log.txt.[n-1] (second
Values for the <max number of files> between 2 and 99 are supported and for <max logfile size> between 1k and 100,000k.
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
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 SCCP V2.03 IS41 V3.01 M2PA V1.01 ISUP V3.04 TCAP V3.04 INAP V2.05 TUP V2.03 MAP V3.06 M3UA V2.03
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
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.
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 Programmers Manual for more details. For example:
NUM_MSGS NUM_LMSGS 10000 200 * 10000 normal MSGs * 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.
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 SCCP TCAP MAP INAP INAPAPI IS41 ISUP TUP M2PA M3UA V5.00 or later V3.00 or later V4.00 or later V4.00 or later V3.00 or later V5.00 or later V4.00 or later V4.00 or later V3.00 or later V2.00 or later 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>
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
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: GCTLIB library: Partition[0] Parameter size: MSGs in partition: MSGs allocated : MSGs free: Maximum MSGs allocated: Out of MSG count: Congestion onset: Congestion abate: Congestion status: Congestion count: Partition[1] Parameter size: MSGs in partition: MSGs allocated : MSGs free: Maximum MSGs allocated: Out of MSG count: Congestion onset: Congestion abate: Congestion status: Congestion count: 0x21 V1.20 320 200 0 200 2 0 100 20 0 0 4200 10 0 10 1 0 5 1 0 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
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
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
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
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 T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T12 T13 T14 T15 T16 T17 T18 T19 T20 Default (Seconds) 10 180 180 300 60 180 25 13 45 5 10 60 10 60 10 60 10 60 10 Mnemonic T21 T22 T23 T24 T25 T26 T27 T28 T29 T30 T33 T34 T35 T36 T38 T39 T103 T104 Default (Seconds) 60 10 60 2 5 120 240 10 0.5 8 14 3 20 13 150 10 20 3
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 dts_inc.h in_ain_inc.h in_inc.h inap_inc.h is41_inc.h isp_inc.h m2p_inc.h m3u_inc.h map_inc.h nup_inc.h q773_inc.h rsi_inc.h scp_inc.h t114_inc.h tcp_inc.h tup_inc.h
Dialogic 19-Jun-06
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;
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 ISUP-S TUP-S Circuit Groups: Circuits: Circuit Groups: Circuits: Capacity 44 1024 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.
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.
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
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 PCIExpress 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 Programmers 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.
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 Programmers 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.
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 MTP3 ISUP TUP SCCP TCAP MAP INAP IS41 M2PA M3UA SUA Management ID mgmt_id ISUP user id TUP user id trace_id trace_id mgmt_id mgmt_id mgmt_id mgmt_id
* * * *
Maintenance ID ISUP user id TUP user id maint_id * maint_id maint_id maint_id maint_id maint_id * * * *
MBM_TASK_ID mgmt_id
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.
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
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 kernels 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 FORK_PROCESS ./sctp ./sctpd
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
Furthermore, the GCT environment must be configured to inform the SCTPN module of congestion events. This is done using the gctload modules Ci parameter:
./gctload Ci0xd1
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.
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: Examples: CNTOS:TTYPE=,TO=,{TSEC=|TMSEC=}; 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 Rmin Rmax Rinit Ck Hbt T1i T2i Default 200ms 1400ms 1000ms 30000ms 1000ms 3000ms 3000ms Granularity 1ms 1ms 1ms 1ms 1ms 1ms 1ms SCTP Timeout Minimum RTO Maximum RTO Initial RTO Cookie lifetime Time between heartbeats Starting timeout of an INIT chunk Starting timeout of a SHUTDOWN chunk
M2PA Timeout 'Alignment Ready' timer value 'Not Aligned' timer value 'Aligned' timer value 'Normal Proving' timer value 'Emergency Proving' timer value 'Remote Congestion' timer value 'Excessive Delay Of Acknowledgement' timer value