The SCCP layer performs application inactivity control timing. Application inactivity control timing detects connections maintained by the SCCP layer of which the application is no longer aware. These undetected connections can occur in a failover scenario in a redundant configuration when the connection data maintained by both the application and the SCCP layer can get out of synchronization. Failure to detect and release these stranded connections reduces the number of subsequent connections that can be created.
Note: Application inactivity control timing is over and above the SCCP protocol-level connection inactivity timing (as defined in the ITU-T and ANSI SCCP specifications) that is intended to detect mismatched connection data between the two endpoints. This function is still performed by the SCCP layer and is transparent to the application.
When application inactivity control is enabled for a particular application (SCCP user SAP), the SCCP layer starts a timer (AIC_TIMER) when a connection is established in either direction by that application. Each time the application issues a data request for that connection, the AIC_TIMER is restarted. Whenever the timer expires, the application is notified with a SCCPINACTIND event for that connection and a second timer (AIC_RESP_TIMER) is started. If the application recognizes the connection ID in the SCCPINACTIND event as belonging to a valid (active) connection, it responds by calling SCCPInactResp for that connection. Otherwise, it should call SCCPReleaseRqst to release the connection. If the application fails to respond to the SCCPINACTIND event before the AIC_RESP_TIMER expires, the SCCP layer releases the connection to the far end and returns a SCCPRELIND to the application for that connection ID.
The duration of the AIC_TIMER (8 minutes by default) and AIC_RESP_TIMER (10 seconds by default) are configured with the sccpcfg utility or by SccpSetGenCfg. In addition, application inactivity timing must be enabled for each SCCP user SAP by setting the INACT_CONTROL parameter to TRUE (or 1 or YES) in the SCCP configuration file or by calling SccpSetUSapCfg with the aicEnabled attribute set to 1.
Application inactivity control should not be enabled for an application until it can explicitly handle the SCCPINACTIND event and respond by calling SCCPInactResp.