SCTP Installation and User’s Guide Tru64 UNIX The SCTP Installation and User's Guide contains details on how to perform installation, configuration and troubleshooting activities and operations on the Compaq SCTP Implementation. Revision/Update Information: This is the first edition. Operating System: Compaq Tru64 UNIX V5.1A Software Version: Compaq SCTP V1.0 Version V1.0 August 31, 2001 The information in this document is subject to change without notice and should not be construed as a commitment by Compaq Computer Corporation or its affiliated companies. Compaq Computer Corporation assumes no responsibility for any errors that may appear in this document. The software described in this document is furnished under a license and may be used and copied only in accordance with the terms of such license. No responsibility is assumed for the use or reliability of software on equipment that is not supplied by Compaq Computer Corporation or its affiliated companies. Restricted Rights: Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or in FAR 52.227-19, as applicable. © 2001 Compaq Computer Corporation. All rights reserved. Trademarks: COMPAQ, the Compaq logo, the Digital logo, AlphaServer, AlphaStation, DECnet, and DECss7 Registered in U.S. Patent and Trademark Office. Tru64 UNIX, OpenVMS, IN7, and TeMIP are trademarks of Compaq Computer Corporation. Microsoft,Windows NT, and Visual C++ are registered trademarks of Microsoft Corporation. INTEL and Pentium are registered trademarks of Intel Corporation. Pentium Pro is a trademark of Intel Corporation. FrameMaker is a registered trademark of Adobe Systems Incorporated. Other product names mentioned herein may be the trademarks of their respective companies. 1. Introduction to Compaq SCTP 1.1 Compaq SCTP implementation 1-1 1.1.1 Multiple application access 1-1 1.1.2 Monitoring the Compaq SCTP stack 1-1 1.2 Compaq SCTP Socket API 1-2 1.2.1 Protocol mapping 1-2 1.2.1.1 TCP-style interface 1 -2 1.2.1.2 UDP-style interface 1 -2 1.3 Summary of features 1-3 2. Compaq SCTP installation guidelines 2.1 Preparing for installation 2-1 2.2 Checking the Release Notes 2-2 2.3 Licensing 2-2 2.3.1 SCTP License Key 2-2 2.3.2 Counted and Uncounted Keys 2-2 2.4 Installing Compaq SCTP for Tru64 UNIX 2-2 2.4.1 Extract the subsets 2-2 2.4.2 Install the subsets 2-3 2.4.3 Installation problems 2-6 2.5 Verifying the installation 2-6 2.6 Using the SCTP examples 2-6 2.7 Uninstall SCTP for Tru64 UNIX 2-6 2.7.1 List installed subsets 2-7 2.7.2 Uninstall procedure 2-7 3. Configuration guidelines 3.1 Configuration checks 3-1 4. Operating guidelines 4.1 Compaq SCTP stack monitoring 4-1 4.1.1 Monitor menu scheme 4-1 4.2 Start and connect the monitor daemon sctpd 4-1 4.3 Main menu 4-2 4.3.1 Level 1: Help 4-2 4.3.2 Level 1: Process and Association Statistics 4-2 4.3.3 Level 1: Connect to an Application 4-3 4.4 Application menu 4-3 4.4.1 Level 2: Application Attributes and Associations Help 4-3 4.4.2 Level 2: Attributes and Counters 4-4 4.4.3 Level 2: Summary of Associations 4-6 4.4.4 Level 2: Monitoring a Single Association 4-6 4.5 Association menu 4-6 4.5.1 Level 3: Association Help 4-6 4.5.2 Level 3: Attributes and Counters 4-7 4.5.3 Level 3: Remote Addresses 4-10 4.6 Logging syslog messages 4-11 5. Troubleshooting 5.1 Recommended approach 5-1 5.2 Troubleshooting resources 5-1 5.3 SCTP application errors 5-1 5.3.1 Application does not start 5-1 5.3.2 Application cannot be bound 5-2 5.3.3 UDP-style application cannot be associated with a peer 5-2 5.3.4 Application cannot send data 5-2 5.3.5 Local application remains blocked when sending data 5-3 5.4 user.log messages 5-3 5.4.1 Messages and message types available in user.log 5-5 Preface The SCTP Installation and User’s Guide contains detailed installation procedures related to SCTP, ensuring that users have sufficient information regarding the installation of the SCTP implementation. The user’s guide sections include: ² Configuration guidelines to enable users to set up SCTP in the correct manner. ² Operating guidelines that enable users to understand the operational systems associated with the SCTP implementation and how to monitor them. ² A troubleshooting guide to aid in the event of problems arising. Intended audience This guide is intended for user groups requiring information on the installation and user procedures required for SCTP. It include informations useful for the configuration and operating of the SCTP environment. It is assumed that the audience has a good knowledge of the underlying protocols, stacks and operating systems, namely IP, TCP, UDP, and Compaq Tru64. Terms and acronyms The following terms and acronyms are used in this document. Term Description IETF Internet Engineering Task Force. Body responsible for the RFCs for SCTP IP Internet Protocol MAC Message Authentication Code MIB Management Information Base MTU Maximum Transmission Unit PMTU-D Path MTU Discovery RFC Request For Comment RTO Retransmission TimeOut RTT Round Trip Time RTTVAR Round Trip Time Variation SACK Selective Acknowledgement SCTP Stream Control Transmission Protocol TCB Transmission Control Block TCP Transport Control Protocol TLV Type Length Value coding format TSN Transmission Sequence Number UDP User Datagram Protocol ULP Upper Layer Protocol Associated and reference documents In addition to this guide, the SCTP documentation set includes the following books: ² SCTP Technical Description ² SCTP Application Development Guide ² SCTP Release Notes The following documents also contain essential reference information: ² RFC2960. Stream Control Transmission Protocol ² draft-stewart-sctpsocket-sigtran-02. SCTP Sockets Mapping (superceded by draft-ietf-tsvwg-sctpsocket-01. Sockets API Extensions for SCTP) ² draft-ietf-sigtran-sctp-mib-02. SCTP Management Information Base using SMIv2 ² draft-ietf-sigtran-performance-req-01. VoIP Signaling Performance Requirements and Expectations ² draft-ietf-sigtran-sctp-applicability-06. Stream Control Transmission Protocol Applicability Statement Conventions The following conventions are used in this guide: boldface type Indicates the first instance of terms being defined in text. In examples, it indicates user input. italic Is used for emphasis, for quoting document titles, and for variables. courier font Is used for code examples, file names and directory paths, command names, routine names, and syntax. UPPERCASE lowercase The Compaq Tru64 UNIX system differentiates between uppercase and lowercase characters. Examples, syntax descriptions, routine definitions, and literal strings that appear in text must be entered exactly as shown. 1 Introduction to Compaq SCTP This chapter provides introductory information concerning the Stream Control Transmission Protocol (SCTP), the Compaq SCTP implementation and its API protocol mapping. It explains the relationship to IETF standard RFC2960 and summarizes the protocol features that Compaq SCTP supports. 1.1 Compaq SCTP implementation The Compaq SCTP implementation comprises two main components: an SCTP daemon and a shareable library. See Figure 1-1 for further details. Each component has a set of defined responsibilities: ² The daemon process sctpd is mainly responsible for IP connectivity: - Receive SCTP messages over IP, verify the checksum and dispatch these messages to the correct user application according to the SCTP port number included in the message - Send SCTP messages over IP, on request from the user applications - Send ABORT when a user application dies. ² The shareable library libsctp.so is responsible for the provisioning of SCTP services and socket API facilities for use by one or more user applications. 1.1.1 Multiple application access More than one application can access the SCTP services on a single Compaq Server. See Figure 1-1 for further details. Applications communicate with the SCTP daemon through an API socket. Typically, the type of applications that Compaq SCTP is designed for includes the transport of SS7 traffic over IP. 1.1.2 Monitoring the Compaq SCTP stack The Compaq SCTP stack provides a means to monitor the behavior of an application that is using the Compaq SCTP API. The user connects to the Compaq SCTP daemon through a Telnet session and issues commands to display the current stack characteristics and counters. Figure 1-1 Compaq SCTP implementation components 1.2 Compaq SCTP Socket API The Compaq SCTP implementation provides a socket API and protocol mapping that is compliant with IETF standards. This allows existing TCP or UDP applications to be easily migrated to SCTP with the minimum amount of changes. 1.2.1 Protocol mapping The mapping of Compaq SCTP is consistent with other socket API protocol mapping. For example, UDP and TCP. Two types of interfaces are supported: ² TCP-style interface ² UDP-style interface. 1.2.1.1 TCP-style interface This interface supports the same semantics as sockets for connection-oriented protocols, such as TCP. The purpose of defining this interface is to allow existing applications built on connection-oriented protocols to be easily ported for use with SCTP, and for developers already familiar with those semantics to easily adapt to SCTP. 1.2.1.2 UDP-style interface This interface has a set of semantics similar to that defined for connectionless protocols, such as UDP. A UDP-style interface is more efficient than a TCP-like connection-oriented interface, since it allows access to more of the new SCTP features. UDP-style and TCP-style programming are not compatible and cannot be merged into a single program. 1.3 Summary of features The Compaq SCTP implementation is a reliable transport protocol that operates on top of the IP layer and is capable of offering the following services to its users: ² Acknowledged error-free non-duplicated transfer of user data ² Data fragmentation to conform to path MTU size ² Sequenced delivery of user messages within multiple streams ² Bundling of multiple data messages into a single SCTP packet ² Network-level fault tolerance through support of multi-homing at both ends of an SCTP association ² Resistance to flooding and masquerade attacks. 1 Introduction to Compaq SCTP This chapter provides introductory information concerning the Stream Control Transmission Protocol (SCTP), the Compaq SCTP implementation and its API protocol mapping. It explains the relationship to IETF standard RFC2960 and summarizes the protocol features that Compaq SCTP supports. 1.1 Compaq SCTP implementation The Compaq SCTP implementation comprises two main components: an SCTP daemon and a shareable library. See Figure 1-1 for further details. Each component has a set of defined responsibilities: ² The daemon process sctpd is mainly responsible for IP connectivity: - Receive SCTP messages over IP, verify the checksum and dispatch these messages to the correct user application according to the SCTP port number included in the message - Send SCTP messages over IP, on request from the user applications - Send ABORT when a user application dies. ² The shareable library libsctp.so is responsible for the provisioning of SCTP services and socket API facilities for use by one or more user applications. 1.1.1 Multiple application access More than one application can access the SCTP services on a single Compaq Server. See Figure 1-1 for further details. Applications communicate with the SCTP daemon through an API socket. Typically, the type of applications that Compaq SCTP is designed for includes the transport of SS7 traffic over IP. 1.1.2 Monitoring the Compaq SCTP stack The Compaq SCTP stack provides a means to monitor the behavior of an application that is using the Compaq SCTP API. The user connects to the Compaq SCTP daemon through a Telnet session and issues commands to display the current stack characteristics and counters. Figure 1-1 Compaq SCTP implementation components 1.2 Compaq SCTP Socket API The Compaq SCTP implementation provides a socket API and protocol mapping that is compliant with IETF standards. This allows existing TCP or UDP applications to be easily migrated to SCTP with the minimum amount of changes. 1.2.1 Protocol mapping The mapping of Compaq SCTP is consistent with other socket API protocol mapping. For example, UDP and TCP. Two types of interfaces are supported: ² TCP-style interface ² UDP-style interface. 1.2.1.1 TCP-style interface This interface supports the same semantics as sockets for connection-oriented protocols, such as TCP. The purpose of defining this interface is to allow existing applications built on connection-oriented protocols to be easily ported for use with SCTP, and for developers already familiar with those semantics to easily adapt to SCTP. 1.2.1.2 UDP-style interface This interface has a set of semantics similar to that defined for connectionless protocols, such as UDP. A UDP-style interface is more efficient than a TCP-like connection-oriented interface, since it allows access to more of the new SCTP features. UDP-style and TCP-style programming are not compatible and cannot be merged into a single program. 1.3 Summary of features The Compaq SCTP implementation is a reliable transport protocol that operates on top of the IP layer and is capable of offering the following services to its users: ² Acknowledged error-free non-duplicated transfer of user data ² Data fragmentation to conform to path MTU size ² Sequenced delivery of user messages within multiple streams ² Bundling of multiple data messages into a single SCTP packet ² Network-level fault tolerance through support of multi-homing at both ends of an SCTP association ² Resistance to flooding and masquerade attacks. 1 Introduction to Compaq SCTP This chapter provides introductory information concerning the Stream Control Transmission Protocol (SCTP), the Compaq SCTP implementation and its API protocol mapping. It explains the relationship to IETF standard RFC2960 and summarizes the protocol features that Compaq SCTP supports. 1.1 Compaq SCTP implementation The Compaq SCTP implementation comprises two main components: an SCTP daemon and a shareable library. See Figure 1-1 for further details. Each component has a set of defined responsibilities: ² The daemon process sctpd is mainly responsible for IP connectivity: - Receive SCTP messages over IP, verify the checksum and dispatch these messages to the correct user application according to the SCTP port number included in the message - Send SCTP messages over IP, on request from the user applications - Send ABORT when a user application dies. ² The shareable library libsctp.so is responsible for the provisioning of SCTP services and socket API facilities for use by one or more user applications. 1.1.1 Multiple application access More than one application can access the SCTP services on a single Compaq Server. See Figure 1-1 for further details. Applications communicate with the SCTP daemon through an API socket. Typically, the type of applications that Compaq SCTP is designed for includes the transport of SS7 traffic over IP. 1.1.2 Monitoring the Compaq SCTP stack The Compaq SCTP stack provides a means to monitor the behavior of an application that is using the Compaq SCTP API. The user connects to the Compaq SCTP daemon through a Telnet session and issues commands to display the current stack characteristics and counters. Figure 1-1 Compaq SCTP implementation components 1.2 Compaq SCTP Socket API The Compaq SCTP implementation provides a socket API and protocol mapping that is compliant with IETF standards. This allows existing TCP or UDP applications to be easily migrated to SCTP with the minimum amount of changes. 1.2.1 Protocol mapping The mapping of Compaq SCTP is consistent with other socket API protocol mapping. For example, UDP and TCP. Two types of interfaces are supported: ² TCP-style interface ² UDP-style interface. 1.2.1.1 TCP-style interface This interface supports the same semantics as sockets for connection-oriented protocols, such as TCP. The purpose of defining this interface is to allow existing applications built on connection-oriented protocols to be easily ported for use with SCTP, and for developers already familiar with those semantics to easily adapt to SCTP. 1.2.1.2 UDP-style interface This interface has a set of semantics similar to that defined for connectionless protocols, such as UDP. A UDP-style interface is more efficient than a TCP-like connection-oriented interface, since it allows access to more of the new SCTP features. UDP-style and TCP-style programming are not compatible and cannot be merged into a single program. 1.3 Summary of features The Compaq SCTP implementation is a reliable transport protocol that operates on top of the IP layer and is capable of offering the following services to its users: ² Acknowledged error-free non-duplicated transfer of user data ² Data fragmentation to conform to path MTU size ² Sequenced delivery of user messages within multiple streams ² Bundling of multiple data messages into a single SCTP packet ² Network-level fault tolerance through support of multi-homing at both ends of an SCTP association ² Resistance to flooding and masquerade attacks. 2 Compaq SCTP installation guidelines This chapter describes how to install the Compaq SCTP implementation on a system running Tru64 UNIX V5.1A. Procedures are then described on how to verify that the installation has been successfully completed. 2.1 Preparing for installation Careful preparation is important to ensure a trouble-free installation process. The following is a checklist of actions that should be carried out before you begin the installation of Compaq SCTP: 1. Ensure you have adequate hardware, a Compaq SCTP installation requires a minimum of 10,000 blocks. 2. Ensure you have the appropriate software. 3. Check that the licensing is correct for your configuration. See “2.3 Licensing” on page 2-2. 4. Ensure you have ROOT login privileges. 5. Ensure that TCP/IP networking software is correctly installed and configured. The installation procedure creates Compaq SCTP file systems in the directories: /usr/opt/SCTPRD100 /usr/opt/SCTHEADERS100 /usr/opt/SCTLICENSE100 /usr/opt/SCTEXAMPLE100 /usr/opt/SCTDOC100 Where: 100 indicates the Compaq SCTP implementation version number, V1.0-0. 2.2 Checking the Release Notes The Compaq SCTP implementation product provides online Release Notes. Compaq strongly recommends that you read the Release Notes before using the product. The Release Notes contain information about the product that may not be present in the published Installation and User’s Guide. 2.3 Licensing The Compaq SCTP product is licensed by means of License Keys, which are obtained through the Compaq License Key Fulfillment Web Site. Licenses are managed by FLEXlm. 2.3.1 SCTP License Key The SCTP License Key is SCTP_TRU64. 2.3.2 Counted and Uncounted Keys License keys can be Counted or Uncounted. They are counted by means of the tokens which are contained in the license key. If they are uncounted, there is no limitation as to their use, whereas if they are counted, their use is limited to the count authorized by the number of tokens purchased. Table 2-1 License descriptions SCTP Licenses Use Counted SCTP_TRU64 One license token is required for each CPU present on the machine upon SCTP daemon sctpd startup. Processes using the SCTP API are not counted. Yes 2.4 Installing Compaq SCTP for Tru64 UNIX This section describes how to install Compaq SCTP for Tru64 UNIX from a CD-ROM. This procedure loads SCTP files on to a disk belonging to the system where you perform the installation. It is recommended that a backup is made of the CD-ROM contents prior to performing the installation. The time needed to perform a Compaq SCTP installation is approximately one minute. 2.4.1 Extract the subsets Before the SCTP subsets can be installed they must be extracted from the SCTPKIT100.tar file and copied to a temporary directory. 1. Place the CD in the appropriate disk drive. 2. Create a temp directory. 3. Copy the SCTPKIT100.tar file to the temp directory. 4. Extract the subsets from the SCTPKIT100.tar file into the temp directory by entering the following command: tar -xvf SCTPKIT100.tar Once the subsets have been extracted, the temp directory should contain five different subsets ready for installation: ² SCTPRD100, contains the Compaq SCTP V1.0 Product ² SCTHEADERS100, contains the Compaq SCTP V1.0 Header Files ² SCTLICENSE100, contains Compaq SCTP V1.0 License Files ² SCTEXAMPLE100, contains Compaq SCTP V1.0 Application Examples ² SCTDOC100, contains the Compaq SCTP V1.0 Documentation Set. 2.4.2 Install the subsets The software subsets can be installed using the SysMan Menu or the setld utility. 1. Log in as a superuser (login name root) to the system where you will install the SCTP implementation. From now on you must be logged as root to perform the installation. 2. Go to the temp directory. 3. To start the installation either invoke the SysMan menu by entering the command: # /usr/sbin/sysman & or enter a setld command that requests the load option (-l): # setld -l . The installation procedure now displays the names of the SCTP subsets so that you can specify the subsets you want to load. Mandatory and optional subsets are indicated. The following instructions are displayed at this point: *** Enter subset selections *** The following subsets are mandatory and will be installed automatically unless you choose to exit without installing any subsets: * Compaq SCTP V1.0 Header Files * Compaq SCTP V1.0 License Files * Compaq SCTP V1.0 Product The subsets listed below are optional: There may be more optional subsets than can be presented on a single screen. If this is the case, you can choose subsets screen by screen or all at once on the last screen. All of the choices you make will be collected for your confirmation before any subsets are installed. - Other: 1) Compaq SCTP V1.0 Application Examples 2) Compaq SCTP V1.0 Documentation Set Or you may choose one of the following options: 3) ALL mandatory and all optional subsets 4) MANDATORY subsets only 5) CANCEL selections and redisplay menus 6) EXIT without installing any subsets Estimated free diskspace(MB) in root:207.0 usr:2705.1 Enter your choices or press RETURN to redisplay menus. Choices (for example, 1 2 4-6): If you specify more than one number at the prompt, separate each number with a space, not a comma. 4. Choose option 3 to install all five subsets by typing 3 and press Return. The procedure displays the subsets that have been chosen for installation to allow you to verify that they are the subsets you want. You are installing the following mandatory subsets: Compaq SCTP V1.0 Header Files Compaq SCTP V1.0 License Files Compaq SCTP V1.0 Product You are installing the following optional subsets: - Other: Compaq SCTP V1.0 Application Examples Compaq SCTP V1.0 Documentation Set Estimated free diskspace(MB) in root:207.0 usr:2704.3 Is this correct? (y/n): y 5. If the displayed subsets and components are the ones you want to load, type y and press Return. If the displayed subsets and components are not the ones you intended to choose, type n and press Return. In this case, the subset selection menu is displayed again and you can correct your choice of optional subsets. When the subset selection has been confirmed, the file system space will be checked to established whether there is sufficient capacity: Checking file system space required to install selected subsets: File system space checked OK. With sufficient file system space available the subsets are installed. Progress messages are displayed as follows: 5 subsets will be installed. Loading subset 1 of 5 ... Compaq SCTP V1.0 Product Copying from . (disk) Verifying Loading subset 2 of 5 ... Compaq SCTP V1.0 Header Files Copying from . (disk) Verifying Loading subset 3 of 5 ... Compaq SCTP V1.0 License Files Copying from . (disk) Verifying Loading subset 4 of 5 ... Compaq SCTP V1.0 Application Examples Copying from . (disk) Verifying Loading subset 5 of 5 ... Compaq SCTP V1.0 Documentation Set Copying from . (disk) Verifying 5 of 5 subsets installed successfully. Configuring "Compaq SCTP V1.0 Product" (SCTPRD100) Modifying ownership of installed files... done Installation of SCTP (SCTPRD100) subset completed. Configuring "Compaq SCTP V1.0 Header Files" (SCTHEADERS100) Modifying ownership of installed files... done Installation of SCTP (SCTHEADERS100) subset completed. Configuring "Compaq SCTP V1.0 License Files" (SCTLICENSE100) Modifying ownership of installed files... done SCTP: start license manager Installation of SCTP (SCTLICENSE100) subset completed. Configuring "Compaq SCTP V1.0 Application Examples" (SCTEXAMPLE100) Modifying ownership of installed files... done Installation of SCTP (SCTEXAMPLE100) subset completed. Configuring "Compaq SCTP V1.0 Documentation Set" (SCTDOC100) When you see the Verifying message during the subset installation, the installation procedure is checking to see that the files are copied correctly; it is not an Installation Verification Procedure (IVP) message. During the installation, if there are error messages from the setld utility, refer to the Diagnostics section of the setld(8) reference page for an explanation of the errors and the appropriate action to take. 2.4.3 Installation problems If the installation of the SCTP subsets has been interrupted for any reason, follow this procedure: 1. Delete any SCTP subsets that have been installed. 2. After deleting all the subsets, check that the following symbolic links have also been removed from the target UNIX machine: ² /usr/shlib/libsctp100.so ² /usr/shlib/libsctp.so ² /usr/shlib/libtbx100.so ² /usr/sbin/sctpd ² /usr/include/sctp_api.h 3. Manually delete any of above links, if present. 4. Attempt to re-install all the subsets again. If you encounter problems during the installation, you should contact your Customer Support Representative. 2.5 Verifying the installation This section describes how to check that a Compaq SCTP implementation is correctly installed. The SCTP installation procedure creates a set of files and symbolic links in the target UNIX machine. 1. Check that these directories exist and contain files: /usr/opt/SCTPRD100 /usr/opt/SCTHEADERS100 /usr/opt/SCTLICENSE100 /usr/opt/SCTEXAMPLE100 /usr/opt/SCTDOC100 2. Check that /usr/sbin/sctpd.so is present. 3. Check that /usr/shlib/libsctp.so, /usr/shlib/libsctp100.so and /usr/shlib/libtbx100.so are present. 4. Check that the header file /usr/include/sctp_api.h is present. 2.6 Using the SCTP examples The directory /usr/examples/sctp contains a set of C files and Makefiles. Carefully read the README.txt file for instructions on how to compile and run the SCTP program examples. 2.7 Uninstall SCTP for Tru64 UNIX This section describes how to uninstall SCTP for Compaq Tru64 UNIX. 2.7.1 List installed subsets 1. Log in as a superuser (login name root) to the system where you want to uninstall the SCTP implementation. 2. List and verify the SCTP subsets by entering a setld command with the -i option, this lists the software subsets recognized by your system together with their status (installed, incomplete, or not installed): # setld -i | grep -i sctp | grep -i installed A list showing all five SCTP subsets should be displayed: SCTDOC100 installed Compaq SCTP V1.0 Documentation Set SCTEXAMPLE100 installed Compaq SCTP V1.0 Application Examples SCTHEADERS100 installed Compaq SCTP V1.0 Header Files SCTLICENSE100 installed Compaq SCTP V1.0 License Files SCTPRD100 installed Compaq SCTP V1.0 Product 2.7.2 Uninstall procedure The SCTP uninstall can be done using the setld utility and the -d delete option. 1. Type the following command: # setld -d SCTDOC100 SCTEXAMPLE100 SCTHEADERS100 SCTLICENSE100 SCTPRD100 2. Confirm the deletion of the subsets when prompted by typing: # y If you attempt to delete an SCTP subset on which another subset depends, a warning message will be displayed prompting you for confirmation. 3 Configuration guidelines This chapter provides information to help users configure the SCTP implementation once installation has been successfully completed. 3.1 Configuration checks Immediately after installation or any re-install, make the following checks: ² Ensure that the sctpd daemon is running. ² The header file sctp_api.h is in /usr/include. ² File libsctp.so and libsctp100.so is in /usr/shlib. ² File libtbx100.so is in /usr/shlib. ² File sctpd is in /usr/sbin. ² Make sure that the local machine and the remote machine have the same SCTP kit installed. If not, the local and remote application may not be able to establish associations over SCTP protocol. ² Make sure that the local machine is able to reach the remote machine over the network using the ping command. 4 Operating guidelines This chapter describes the operations that are possible on the Compaq SCTP implementation. Operations mainly involve monitoring applications accessing the SCTP stack and accessing system log information. The chapter describes the multi-level command menus that are available during a telnet session for application monitoring. 4.1 Compaq SCTP stack monitoring The Compaq SCTP stack provides a means to monitor the behavior of an application that uses the Compaq SCTP API. The user can connect to a Compaq SCTP daemon through a telnet session and issue commands to display the current stack characteristics and counters. 4.1.1 Monitor menu scheme The sctpd daemon presents a multi-level menu approach to monitor command selection: ² Level 1, the command menu allows access to general application statistics and Tru64 process identification ² Level 2, commands at this level enable logical connection to an application and the display of application parameters and counters ² Level 3, commands at this level present parameter and counter information for a selected association and the remote addresses. 4.2 Start and connect the monitor daemon sctpd 1. Start the Compaq SCTP daemon sctpd by entering the command: $ sctpd & Using standard output, the daemon displays the telnet port number that the server will use to listen: SCTP INFO: The sctpd telnet server is listening on port 2000 When started the daemon attempts to reserve the first free telnet port, starting from port 2000. 2. Connect to the sctpd telnet server by entering the following command: $ telnet localhost 2000 Once connected the system displays the following prompt message: Trying 127.0.0.1 Connected to 127.0.0.1. Escape character is '^]'. Compaq SCTP protocol stack version V1.0 Type 'help' to get information about available commands. > From the > prompt, one of the following telnet Main Menu commands can be entered: help, stat, app or exit. 4.3 Main menu 4.3.1 Level 1: Help Online help for sctpd level 1 commands can be accessed by entering the command: > help This displays the command help screen: help SCTP Telnet server main menu commands - help | h | ? Display this help screen. In each menu, you can use the 'help' command to display contextual help information. - stat | s Display general information about all applications and associations. - app app_id | a app_id Connect to a specific application. The application identifier used by this command is the process ID, as it appears in the stat command. - exit | e | x Close the telnet connection. > 4.3.2 Level 1: Process and Association Statistics Using the stat command when an SCTP application has not been started on the host: > stat displays the following screen: > stat PID Local port Asso tag Remote port Remote addresses -- -- -- -- -- Where all statistic information fields are empty. If an application has been started on the host, the stat command displays a screen containing the application’s process and association details, for example: PID Local port Asso tag Remote port Remote addresses 2450 2211 0x0e435ee5 1234 10.1.0.1 10.1.0.2 Where: Parameter Meaning PID An SCTP application is running with a Tru64 process id of 2450 Local port This SCTP application is bound to SCTP port 2211 Asso tag An association has been established and the association tag is 0x0e435ee5 Remote port The association is established with a remote application bound to port 1234 Remote addresses The remote SCTP application runs on a multi-homed host, with two IP addresses 10.1.0.1 and 10.1.0.2 4.3.3 Level 1: Connect to an Application With the SCTP application statistics displayed it is possible to accumulate and display more detailed information concerning a particular application using the app command. A connection to a specific SCTP application is made by entering the app command and the application’s process id as the selection option: > a 2450 A prompt is displayed, which shows the process id of the application to be monitored. App 2450 > Once connected and from the App > prompt, one of the following Application Menu commands can be entered: help, attributes, asso, a asso tag or exit. 4.4 Application menu 4.4.1 Level 2: Application Attributes and Associations Help Online help for sctpd attribute and association commands can be accessed by entering the help command. For example: App 2450> help This displays the attribute and association command help screen: help SCTP Telnet server application menu commands - help | h | ? Display this help screen. In each menu, you can use the 'help' command to display contextual help information. - attributes | attr Display global application attributes and counters. - asso | a | stat | s Display statistics on associations in the current application (with more details than the 'stat' command of the root menu). - asso asso_tag | a asso_tag Enters the association sub-menu and access to association specific commands. The association tag can be entered in decimal or hexadecimal notation (with the '0x' prefix). - exit | e | x Return to root sctp menu. App 2450 > 4.4.2 Level 2: Attributes and Counters Entering the attributes command displays the application’s counter parameters: > attributes For example: Application parameters: MAX_ASSO_IN_INST: 1024 MAX_INSTREAMS: 64 MAX_DEST_IN_RENDPOINT: 64 MAX_OUTSTREAMS: 64 SEC_KEY_EXPIRY: 60 s T1_INIT: 60 s VALID_COOKIE_LIFE: 60 s T2_SHUTDOWN: 60 s MIN_RTO: 1000 ms INIT_MAX_RETRANS: 8 MAX_RTO: 60000 ms MAX_ASSO_RETRANS: 10 INITIAL_RTO: 3000 ms MAX_PATH_RETRANS: 5 RCVBUF: 32768 bytes MAX_ACK_TIM: 200 ms SNDBUF: 32768 bytes MAX_ACK_DATA: 2 pkts MAX_INTERFACE_MTU: 1500 bytes Application counters: BAD_CHKSUM_NB: 0 OOB_NB: 0 App 2450 > Where: Parameter Meaning MAX_ASSO_IN_INST The application is able to handle a maximum of 1024 simultaneous associations. MAX_DEST_IN_RENDPOINT In one association, the maximum number of remote IP addresses (on a remote multi-homed host) is 64. MAX_INSTREAMS The application will accept a maximum of 64 inbound streams for each association. MAX_OUTSTREAMS The application will request 64 outbound streams for each association. SEC_KEY_EXPIRY The secret key expiry timer is set to 60 seconds. VALID_COOKIE_LIFE The cookie lifetime validity is set to 60 seconds. T1_INIT T1-init timer is set to 60 seconds. T2_SHUTDOWN T2-shutdown timer is set to 60 seconds. MIN_RTO Minimum RTO is set to 1000 milliseconds. MAX_RTO Maximum RTO is set to 60000 milliseconds. INITIAL_RTO Initial RTO is set to 3000 milliseconds. INIT_MAX_RETRANS The maximum retransmission count of INIT chunks is set to 8. MAX_ASSO_RETRANS The maximum number of retransmission on the whole association is set to 10. MAX_PATH_RETRANS The maximum number of retransmission on a single path of the association is set to 5. RCVBUF The current number of bytes in the receive buffer is set to 32768 bytes. SNDBUF The current number of bytes in the send buffer is set to 32768 bytes. MAX_INTERFACE_MTU The maximum Message Transfer Unit of the association is set to 1500 bytes. The maximum time interval between two SACK is set to 200 milliseconds. MAX_ACK_TIM MAX_ACK_DATA The maximum number of messages the stack could receive before sending an acknowledgment is set to two. BAD_CHKSUM_NB The current number of messages received with an invalid checksum (for all the associations handled by this application is zero (0). OOB_NB The current number of out-of-the-blue messages received by the application is zero (0). 4.4.3 Level 2: Summary of Associations From the application prompt level it is possible to monitor the state of all the associations handled by a particular application using the asso command: > asso For example: App 2450 > s Proto Asso tag Local address Remote address State SCTP 0xe435ee5 ESTABLISHED SCTP 0xe435ee5 10.1.0.1:2211 SCTP 0xe435ee5 10.1.0.1:1234 IDLE SCTP 0xe435ee5 10.1.0.2:1234 IDLE In the example above, the application with PID 2450 has one association. The association is in the ESTABLISHED state and all the PATHs in this association are in the IDLE state (that is, there is no traffic). 4.4.4 Level 2: Monitoring a Single Association With all SCTP application associations displayed it is possible to monitor a particular association in a specific application using the asso command and the association tag. > App 2450 > asso 0xe435ee5 A prompt is displayed, which shows the process id of the application and the association tag that can be monitored. App 2450 / Asso 0xe435ee5:2211 > From this prompt, one of the following Association Menu commands can be entered: help, attributes, asso, a asso tag or exit. 4.5 Association menu 4.5.1 Level 3: Association Help Online help for sctpd association commands is accessed by entering the help command. For example: App 2450 / Asso 0xe435ee5:2211 > help This displays the association and association tag command help screen: help SCTP Telnet server association menu commands - help | h | ? Display this help screen. In each menu, you can use the 'help' command to display contextual help information. - attributes | attr | a Display association attributes and counters. - dest | d Displays remote addresses and their attributes. - exit | e | x Return to application menu. App 2450 / Asso 0xe435ee5:2211 > 4.5.2 Level 3: Attributes and Counters Entering the a command displays an association’s attributes and counter parameters: App 2450 / Asso 0xe435ee5:2211 > a For example: Association parameters: Remote port: 1234 Association status: ESTABLISHED Primary destination: 10.1.0.2 Current destination: 10.1.0.2 Inbound streams: 1 Outbound streams: 1 Remote verification tag: 0x09a9345c Association MTU: 1500 Association counters: T1_EXPIRY_NB: 0 T2_EXPIRY_NB: 0 T3_EXPIRY_NB: 0 STALE_COOKIE_NB: 0 INVALID_COOKIE_NB: 0 BYTES_RCV_NB: 4 BYTES_SNT_NB: 6 CHNK_RCV_NB: 16 CHNK_SNT_NB: 1 UNORD_CHNK_RCV_NB: 0 UNORD_CHNK_SNT_NB: 0 INIT_CHNK_RCV_NB: 0 INIT_CHNK_SNT_NB: 1 INIT_ACK_CHNK_RCV_NB: 0 INIT_ACK_CHNK_SNT_NB: 0 COOKIE_CHNK_RCV_NB: 0 COOKIE_CHNK_SNT_NB: 1 COOKIE_ACK_CHNK_RCV_NB: 1 COOKIE_ACK_CHNK_SNT_NB: 0 DATA_CHNK_IN_NB: 1 DATA_CHNK_RCV_NB: 1 DATA_CHNK_OUT_NB: 1 DATA_CHNK_SNT_NB: 1 SACK_CHNK_RCV_NB: 1 SACK_CHNK_SNT_NB: 1 HEARTBEAT_CHNK_RCV_NB: 6 HEARTBEAT_CHNK_SNT_NB: 13 HEARTBEAT_ACK_CHNK_RCV_NB: 6 HEARTBEAT_ACK_CHNK_SNT_NB: 6 ABORT_CHNK_RCV_NB: 0 ABORT_CHNK_SNT_NB: 0 SHUTDOWN_CHNK_RCV_NB: 0 SHUTDOWN_CHNK_SNT_NB: 0 SHUTDOWN_ACK_CHNK_RCV_NB: 0 SHUTDOWN_ACK_CHNK_SNT_NB: 0 ERROR_CHNK_RCV_NB: 0 ERROR_CHNK_SNT_NB: 0 App 2450 / Asso 0xe435ee5:2211 > Where: Parameter Meaning Remote port The remote port of remote application. Association status The current status of the association: CLOSED, ESTABLISHED, COOKIE WAIT, COOKIE ECHOED, SHUTDOWN PENDING, SHUTDOWN SENT, SHUTDOWN RECEIVED, SHUTDOWN ACK SENT Primary destination In a multi-homed association, there is always a remote destination (a single IP address) of choice to send data to (when the destination is available). Such a destination is called the "primary destination". In the Compaq SCTP stack, the IP address of the current primary destination is displayed here. Current destination This is the address of the remote IP destination used to send data to. In general, 'current destination is the same as primary destination', but when the 'primary destination' fails, the traffic is diverted to another remote destination (in a multi-homed association). Inbound streams The maximum number of streams used to receive messages. Outbound streams The maximum number of streams used to send messages. Remote verification tag The verification tag set by the remote stack in each SCTP header. Association MTU The smallest MTU value. In a multi-homed association, a Path MTU is "computed/discovered" for each path. The association MTU is taken as the smallest of these MTU values. T1_EXPIRY_NB The total number of times the T1-init timer has expired since the beginning of the association. T2_EXPIRY_NB The total number of the T2-shutdown timer has expired since the beginning of the association. T3_EXPIRY_NB The total number of the T2-rec timer has expired since the beginning of the association. STALE_COOKIE_NB The number of cookies (COOKIE_ECHO chunks) that have been received too late. INVALID_COOKIE_NB The number of cookies (COOKIE_ECHO) that have been received and that are invalid (they do not correspond to the cookie sent previously in the INIT_ACK chunk). BYTES_RCV_NB Number of bytes (of payload DATA) received since the beginning of the association. BYTES_SNT_NB Number of bytes (of payload DATA) received since the beginning of the association. CHNK_RCV_NB The number of chunks received since the beginning of the association. CHNK_SNT_NB The number of chunks sent since the beginning of the association. UNORD_CHNK_RCV_NB The number of unordered chunks received. UNORD_CHNK_SNT_NB The number of unordered chunks transmitted. INIT_CHNK_RCV_NB The number of INIT chunks received. INIT_CHNK_SNT_NB The number of INIT chunks sent. INIT_ACK_CHNK_RCV_NB The number of INIT_ACK chunks received. INIT_ACK_CHNK_SNT_NB The number of INIT_ACK chunks sent. COOKIE_CHNK_RCV_NB The number of COOKIE chunks received. COOKIE_CHNK_SNT_NB The number of COOKIE chunks sent. COOKIE_ACK_CHNK_RCV_NB The number of COOKIE_ACK chunks received. COOKIE_ACK_CHNK_SNT_NB The number of COOKIE_ACK chunks sent DATA_CHNK_IN_NB The total number of DATA chunks received. DATA_CHNK_RCV_NB The total number of non-duplicated DATA chunks received. DATA_CHNK_OUT_NB The total number of DATA chunks transmitted (first transmission and retransmissions if any). DATA_CHNK_SNT_NB The number of DATA chunks transmitted (excluding retransmissions). SACK_CHNK_RCV_NB The number of SACK chunks received. SACK_CHNK_SNT_NB The number of SACK chunks sent. HEARTBEAT_CHNK_RCV_NB The number of HEARTBEAT chunks received. HEARTBEAT_CHNK_SNT_NB The number of HEARTBEAT chunks sent. HEARTBEAT_ACK_CHNK_RCV_NB The number of HEARTBEAT_ACK chunks received. HEARTBEAT_ACK_CHNK_SNT_NB The number of HEARTBEAT_ACK chunks sent. ABORT_CHNK_RCV_NB The number of ABORT chunks received. ABORT_CHNK_SNT_NB The number of ABORT chunks sent. SHUTDOWN_CHNK_RCV_NB The number of SHUTDOWN chunks received. SHUTDOWN_CHNK_SNT_NB The number of SHUTDOWN chunks sent. SHUTDOWN_ACK_CHNK_RCV_NB The number of SHUTDOWN_ACK chunks received. SHUTDOWN_ACK_CHNK_SNT_NB The number of SHUTDOWN_ACK chunks sent. ERROR_CHNK_RCV_NB The number of ERROR chunks received. ERROR_CHNK_SNT_NB The number of ERROR chunks sent 4.5.3 Level 3: Remote Addresses The remote or destination IP addresses of a particular association are monitored by entering the dest command: App 2450 / Asso 0xe435ee5:2211 > dest For example: Remote-address State Mtu Rto Srtt Cwnd Ss-thr In-flt T3-exp HB-int 10.1.0.1 INACT 1500 3000 0 1500 3000 0 0 30000 10.1.0.2 IDLE PC 1500 1000 0 3000 3000 0 0 30000 App 2450 / Asso 0xe435ee5:2211 > Where, for each remote destination IP address: Parameter Meaning Remote-address The association’s destination IP address. State The state of the remote address ACTIVE, INACTIVE or IDLE. Mtu The current Message Transfer Unit of the remote address in bytes. Rto The current Retransmission TimeOut of the remote address in milliseconds. Srtt The current Smoothed Round Trip Time of the remote address in milliseconds. Cwnd The current Congestion Window of the remote address in bytes. SS-thr The current Slow Start Threshold of the remote address in bytes. In-flt The current number of In-flight Messages, concerning the remote address. T3-exp The current number of T3 timer expiries, concerning the remote address HB-int The current Heartbeat interval in milliseconds 4.6 Logging syslog messages Messages are logged by SCTP using the syslog utility and written to the /var/adm/syslog.dated/DATE/user.log file. Refer to the Tru64 UNIX syslogd(8) reference page for a complete description of the syslog utility. Messages are logged by SCTP in a particular format and by type. See “user.log messages” on page 5-3. 5 Troubleshooting This chapter provides useful pointers to solving some of the more likely SCTP errors. While it is not feasible to cover every possible error scenario that may occur, a number of the more common ones are described. 5.1 Recommended approach The approach to adopt when troubleshooting the Compaq SCTP implementation is to view the various components as a complete logical entity, comprising hardware, software and server elements. In other words first create the 'big' picture, then try to isolate the problem down to the component or problem area using a process of elimination and lots of patience. 5.2 Troubleshooting resources The Compaq SCTP implementation and Tru64 UNIX includes a number of resources that can assist you when troubleshooting, we have covered some of these in preceding chapters, the sctpd daemon is such a resource. Here is a list of some others: ² this Installation and User’s guide ² IETF documentation (see "Associated and reference documents" in the Preface) ² Tru64 UNIX reference documentation ² System log files. The Compaq SCTP implementation comprises two main components: an SCTP daemon and a shareable library. See the SCTP Technical Description for a more detailed look at the product and its component parts. 5.3 SCTP application errors Problems can occur with applications not starting or responding to call functions. 5.3.1 Application does not start Symptoms An SCTP application does not start, the first socket call returns EPROTONOSUPPORT. Explanation The SCTP application tries to connect the sctpd daemon and fails. User Action 1. Check that the sctpd daemon is running by entering the command: $ ps -ae | grep sctpd 2. If the process is not running, you must start it by entering the command: $ /usr/bin/sctpd & 3. If the problem persists, you must delete everything under the file directory /tmp/tbx by entering the command: $ rm -r /tmp/tbx 4. Restart the sctpd daemon. 5.3.2 Application cannot be bound Symptoms An SCTP application cannot be bound on a chosen port. Explanation Two applications cannot be bound on the same port on the same machine. User Action 1. Check that the port is not use by an another application. 2. Choose another port for the application. 5.3.3 UDP-style application cannot be associated with a peer Symptoms An SCTP application cannot receive or send messages over the UDP-style interface. Explanation The sendmsg or recvmsg calls return an error and are permanently blocked. User Action Set the sctp_recvassocevnt event using the setsockopt function: Int VI_on = 1; Int VI_len = sizeof(VI_on); sctp_setsockopt(VI_socket_id, IPPROTO_SCTP, SCTP_RECVASSOCEVNT, &VI_on, VI_len); 5.3.4 Application cannot send data Symptoms An SCTP application is not able to send data to a peer. Explanation The sendmsg function always returns an error, and, with a UDP-style interface, irrespective of the sctp_rcvassocrevnt event being set. User Action 1. Check that an SCTP application is running on the peer machine. 2. In TCP-style, check that the association has been established. 3. Check that an application is bound on the correct port on the remote machine. 4. Check the IP address of the remote machine. 5. Check that the remote machine can be reached over the network, using the ping command for example. 5.3.5 Local application remains blocked when sending data Symptoms The local application becomes blocked immediately after sending some user messages. Explanation The sendmsg function has sent some data to the peer, but now it is blocked and no new data are sent to peer. User Action Check that the peer uses the recv, recvmsg or recvfrom functions to retrieve received messages from SCTP stack. It not, the received messages are queued in the SCTP API queue where they wait to be delivered to the user. The advertised remote window value arwnd (see RFC2960, Stream Control Transmission Protocol, section 6.1 for information about this value) is closed and no more data can be sent while the peer does not retrieve the data. 5.4 user.log messages The following example illustrates a typical user.log message sequence. Extract 1 In Extract 1 the sctpd daemon has been started on July 12 at 11:36:28, on a machine named Clown, and has the pid: 91900. SCTP INFO indicates that the message contains user information, which notifies the user that the telnet server is listening on port 2000. Jul 12 11:36:28 clown sctp [91900]: SCTP INFO: The sctpd telnet server is listening on port 2000 Extract 2 An application with pid 122531 has been started on perth on July 12 at 14:47:16. The application’s port and association tag is monitored. telnet clown 2000 Escape character is '^]'. Compaq SCTP protocol stack version SCTPv100(Tru64 51 12-Jul-2001 14:08:20). Type 'help' to get information about available commands. > s PID Local port Asso tag Remote port Remote addresses 122531 8 0x243043b5 7 10.1.0.3 10.1.0.2 10.1.0.1 Extract 3 Here an SCTP user information message allows a user to retrieve application information. Using telnet on port 2677: > Jul 12 14:47:16 perth sctp [122531]: SCTP INFO: Application 122531 telnet port: 2677 ...application information is displayed as follows: telnet perth 2677 Trying 10.0.0.1... Connected to 10.0.0.1. Escape character is '^]'. App 122531 > s Proto Asso tag Local address Remote address State SCTP 0x243043b5 ESTABLISHED SCTP 0x243043b5 10.0.0.2:8 SCTP 0x243043b5 10.0.0.3:8 SCTP 0x243043b5 10.0.0.1:8 SCTP 0x243043b5 10.1.0.3:7 IDLE SCTP 0x243043b5 10.1.0.2:7 ACTIVE SCTP 0x243043b5 10.1.0.1:7 IDLE App 122531 > Extract 4 The entry in this extract contains protocol information showing that the maximum retransmission for destination 10.1.1.3 on port 7 has been exceeded. Jul 9 18:06:51 clown sctp [72796]: SCTP PROTOCOL INFO: Retransmit count exceeded for destination [addr:port] 10.1.1.3:7 Extract 5 In this extract, protocol information is given showing that the application with tag 0x86b3df42 and pid 72796 has no more available destinations. The peer does not respond to the heartbeat. Jul 9 18:06:51 clown sctp [72796]: SCTP PROTOCOL INFO: No more available destination for association [tag] 0x86b3df42 5.4.1 Messages and message types available in user.log The user.log file can contain the following types of message, most of which are self- explanatory: Internal stack error messages: "Memory overflow" "Critical section error" "Control block not empty, cannot delete" "Invalid parameter" "Null pointer" "Element already exists" "Invalid lock status" "Delete error" "Database not initialized" "Timer subsystem init error" "Managment subsystem init error" "Invalid timer cancel" "Unsupported address family" "Cannot initialize SCTP database" "Cannot initialize IP layer" "Cannot register port number" "Surveillance mechanism error" "Socket call error" "Write error" "Shared memory error" "function returned: failure!" "Timer not canceled" "Wait failed" User information or user error messages: "The SCTP deamon or an SCTP application is already running" "The sctpd telnet server is listening on port " "The sctp daemon could not register its signal handler" "The sctp daemon is exiting (caught signal )" "Unable to start the telnet server" "Application telnet port: " "Cannot read the SCTP config file" "No daemon configuration file, using default parameters" "Inconsistency detected" "Cannot send data while performing a shutdown" "Unable to access the IP layer, check sctp deamon has administrator privileges" Protocol error or protocol information messages: "Retransmit count exceeded for destination [addr:port]" "Retransmit count exceeded for association [tag] " "No more available destination for association [tag]" "Out-of-order SACK received" "Bad chunk type" "Data not available" "Invalid received cookie" "Invalid cumulative TSN in received Shutdown chunk" "Bad received chunk" "Maximum inbound streams number exceeded" "Maximum outbound streams number exceeded" "Current destination address is not ACTIVE" "Path MTU too small" "Bad packet: DATA before CONTROL Chunk" "Bad packet: INIT, INIT_ACK SHUTDOWN_COMPLETE chunk not alone" "Bad packet: Unknown chunk type" "Bad packet: Unknown parameter type" "Bad packet: No Padding" "Bad packet: Invalid Checksum" "Bad packet: Invalid SCTP packet len" "Bad packet: Invalid SCTP packet, no user data" "OOTB chunk received" "Aborting: received chunk with no data" "Max number of SCTP applications reached" Internal management error messages: "Mgt attribute ID already defined" "Mgt attribute ID too big" Management user errors messages: "Function '' called with invalid managment attribute ID = " "In function '', attribute is not a attribute" " managment attribute(s) are not defined" "Attribute has an invalid type in function ''" "Attribute is not settable in function ''" "Value , is not in range [,] for attribute in function " "No range test for this type" "Invalid value for attribute in function " API generic user error messages: "Invalid parameter

in function " "Invalid IPv4 address argument in function " "Invalid instance ID in function " "Invalid asso ID in function " "Invalid destination ID in function " Database specific error messages: "Maximum number of associations () reached for endpoint " "Maximum number of destinations () reached for association " Security error warning messages: "Unable to start the security key timer, security key generation disabled" Daemon configuration messages: "Daemon: max number of applications set to " "Daemon: max message size set to " "Daemon: number of shared memory slots set to " Path MTU discovery messages: "Invalid port in ICMP DTB message: ." "Invalid remote address and port in ICMP DTB message:

:." "Invalid router MTU size in ICMP DTB message from route :." "Unsupported ICMP message received." "The system returned an invalid Interface MTU value." "Remote address : is unavailable." "Remote address : is available."