Signaling System No. 7 (SS7/C7): Protocol, Architecture, and Services

Signaling System No. 7

By Lee Dryburgh and Jeff Hewett

Intelligent Network Application Protocol (INAP)

The ITU defines the INAP protocol, which is based on the same ITU capability sets and CS call models that are discussed in previous sections of this chapter. The ITU Q.12xx recommendation series defines this protocol. INAP is the protocol that is used for IN communication throughout Europe and in most places outside of North America. The ETSI 300 374 1-6 series of specifications refines the ITU documents for the use of INAP in the European region. Application processes use the INAP protocol to perform remote operations between network nodes, such as an SSP and SCP, in the same general manner as the AIN examples that were previously discussed. INAP uses ITU TCAP to deliver these remote operations, which are encapsulated within the TCAP component sublayer to peer application processes at the remote node. Like the various versions of AIN, INAP defines its own set of remote operations and parameters that are used at the component sublayer. While they provide similar functionality to those used by North American AIN, they are distinct in their definition and encoding. Table 11-2 shows the operation codes that are used between the SSF/CCF and SCF FEs for CS1 and CS2. These operations are invoked between the SSP and SCP network nodes. Recall from the earlier discussions about FEs that the SSF/CCF FEs reside within the SSP, while the SCF FE resides within the SCP (or adjunct processor).

Table 11-2. SSF/SCF Operations for CS1 and CS2

SSF/CCF—SCF Operation

CS1

CS2

ActivateServiceFiltering

X

X

ActivityTest

X

X

ApplyCharging

X

X

ApplyChargingReport

X

X

AssistRequestInstructions

X

X

CallGap

X

X

CallInformationReport

X

X

CallInformationRequest

X

X

Cancel

X

X

CollectInformation

X

X

Connect

X

X

ConnectToResource

X

X

Continue

X

X

ContinueWithArgument

 

X

CreateCallSegmentAssociation

 

X

DisconnectForwardConnection

X

X

DisconnectForwardConnectionWithArgument

 

X

DisconnectLeg

 

X

EntityReleased

 

X

EstablishTemporaryConnection

X

X

EventNotificationCharging

X

X

EventReportBCSM

X

X

FurnishChargingInformation

X

X

InitialDP

X

X

InitiateCallAttempt

X

X

ManageTriggerData

 

X

MergeCallSegments

 

X

MoveCallSegments

 

X

MoveLeg

 

X

ReleaseCall

X

X

ReportUTSI

 

X

RequestNotificationChargingEvent

X

X

RequestReportBCSMEvent

X

X

RequestReportUTSI

 

X

ResetTimer

X

X

SendChargingInformation

X

X

SendSTUI

 

X

ServiceFilteringResponse

X

X

SplitLeg

 

X

Table 11-3 shows the operation codes that are used between the SCF and SRF FEs for CS1 and CS2. These operations are invoked between the SCP (or adjunct processor) and Intelligent Peripheral (IP) nodes, which hosts the SCF and SRF FEs, respectively. Note that these tables do not include all INAP operations. Additional operations for communication, such as SCF-SCF, exist; however, this section focuses only on those operations that are directly related to services at an SSP.

Table 11-3. SCF—SRF Operations for CS1 and CS2

SCF—SRF Operation

CS1

CS2

PlayAnnouncement

X

X

PromptAndCollectUserInformation

X

X

PromptAndReceiveMessage

 

X

ScriptClose

 

X

ScriptEvent

 

X

ScriptInformation

 

X

ScriptRun

 

X

SpecializedResourceReport

X

 

Basic Toll-Free Example Using INAP

This example uses a few of the INAP operations from Table 11-2 to define a simple example to illustrate how INAP is used. Figure 11-22 shows the message flow for a basic toll-free service using INAP. The toll-free application at the SSP determines that communication with the SCP is necessary to retrieve information for the toll-free service.

11fig22.gif

Figure 11-22 INAP Toll-Free Message Flow

A TCAP Begin message is sent to the SCP with an InitialDP operation code. The InitialDP operation indicates that a TDP has been encountered at the SSP, thereby requiring instructions from the SCP to complete the call. The only mandatory parameter for the InitialDP operation is the ServiceKey parameter, which selects the appropriate SLP or application for processing the operation at the SCP. The InitialDP component can include several optional parameters. Using our example in Figure 11-21, the CalledPartyNumber parameter is included to indicate the toll-free number. In this case, the CalledPartyNumber parameter is required to obtain a routable destination number from the SCP. The SCP translates the toll-free number to a routable number that is to be returned to the SSP.

The SCP responds with a TCAP End message that contains Apply Charging and Connect operation codes. The Apply Charging operation indicates that charging should be applied for the call and might contain a PartyToCharge parameter to indicate whether charges should be applied to the calling or called party. In the case of a toll-free or free phone call, charges are applied to the called party. The Connect operation contains the DestinationRoutingAddress parameter to specify the routable destination number for connecting the call. Depending on regulatory policies and agreements, information such as the Carrier parameter can be returned in the Connect component to specify a particular IXC-providing service for the freephone number.

This example is a very simple version of a toll-free service. It could also include connections to an IP, along with many other variations in the message flow and parameters. The example has been kept simple to provide an understanding of what a simple INAP exchange looks like for a service and to avoid the varying nuances of how the service might be deployed.

As the figure shows, INAP provides operations that are similar to those of AIN at the component sublayer. However, the operations have been tailored to the needs of the European region, thus adhering to the ETSI specifications.

Service Creation Environment (SCE)

SCE provides a set of tools for creating the service logic that is executed at the SCP. This allows SPs to build and deploy their own services. Several SCEs are available, each differing in features and capabilities; however, they all share a common purpose of generating program code that can be executed by the SCP. Many SCEs provide a Graphical User Interface that allows software components to be joined together at a high level using visual tools to represent a service. Further modifications and customizations are applied by setting the properties that are associated with the high level objects and often by making software modifications at the software coding level. The program code is then generated for the service, which can be executed at an SCP.

The SCE refers to this program code as a SLP, while each of the high-level software components is referred to as a SIB. SLPs provide the "glue" logic and overall program flow to join SIBs together into meaningful services.

Service Independent Building Blocks (SIB)

The IN standards define a number of SIBs. Each SIB identifies a common telephony function that is used across services. Within each SIB, one or more operations take place to implement the SIB function. One of the SCE's goals is to implement the SIB, or the operations that comprise an SIB, and allow them to be joined together to create a service. SIBs are currently quite generic and lack ample detail, making them primarily useful only for high-level modeling of service functions. An example of some SIBs include:

  • Charge
  • Join
  • Screen
  • Translate
  • User Interaction

These building blocks are easily recognizable as part of standard telephony call and feature processing. A complete list of SIBs can be found in the ITU IN specifications.

To explore a specific example, consider the User Interaction SIB. The two most common functions involving User Interaction are collecting information from the user and playing audible messages (or tones). Audible messages can be used for a number of different purposes, including the following:

  • Prompts that request information from the user
  • Messages that provide information to the user
  • Branding or advertisement
  • Voicemail
  • Custom messages that are created by the service subscriber

Input is collected to make decisions about how a call should be directed and to determine the services the user needs. User input is usually provided in one of the following forms:

  • DTMF digits using the phone keypad
  • Voice Recognition
  • Web interface (Internet telephony)

Figure 11-23 shows an exchange between the SSP and SCP that requires the user to enter information based on voice prompts. These actions are driven by the User Interaction SIB functions, which are implemented at the SCP as part of the service.

11fig23.gif

Figure 11-23 Example of User Interaction

The operation within the User Interaction SIB that implements the collection of digits does not determine how the digits will be used. That would defeat the SIB's "independence" aspect.

As the network and services evolve, new means for interacting with the user will inevitably surface, thereby adding additional operations to the User Interaction SIB. Services that use new protocols, such as Wireless Access Protocol (WAP), have already changed User Interaction to some extent. However, the fundamental building block of this SIB will still be needed.

Service Logic Programs (SLP)

The SLP is the executable logic that results from the service creation process. Whether the service is constructed using graphical tools or programming libraries, the end result must be able to run on the SCP platform. The SCE allows subcomponents that make up an SIB to be joined together in a logical flow with decision branch points based on the results of the subcomponent operations. The result is a complete logic program that can be executed.

Before running it on an SCP platform, the SCE generally provides some level of simulation to determine how the service will function. Good simulators allow phone calls to be placed using resources such as recorded announcements and Voice Recognition Units, to provide a complete simulation of the service. When the service has been constructed using the SCE tools, code modules or program scripts that are eventually deployed to the SCP or Adjunct are generated. The code modules are triggered by incoming messages, which match a given criteria for the script, from the SSP.

The SLP processes the incoming messages from the SSP, accesses data that is stored at the SCP, and makes decisions about how to direct call processing at the SSP.

+ Share This