summary of site-wide JavaScript functionality
United States-English
»
Contact HP
Search:
More options
Manual
Technical documentation - English
All of HP US
hp OpenCall SS7 platform Application Developer's Guide: For Release 3.1 on Linux
»
Technical documentation
Complete book in PDF
»
Feedback
» Table of Contents
»
Index
HP Part Number: 5971-3502
Edition: Second Edition
Published: E0103
Notice
Table of Contents
Preface
About This Guide
Purpose
Contents and Structure
Associated Documentation
We Welcome Your Comments
1 Introduction to HP OpenCall SS7 APIs
HP OpenCall SS7 Developer’s Environment
Development Software
Loopback Testing
HP OpenCall SS7 APIs
Categories of API
Permission to Access HP OpenCall SS7
Stack and Management APIs
HP OpenCall SS7 Stack APIs
MTP3/M3UA API
SCCP API
TCAP API
TCAP Application Message Dispatcher
ISUP API
TUP API
HP OpenCall SS7 Management APIs
Application Guardian
Alias Point Code
Local Alias
Virtual Point Codes (VPCs) and Virtual Users (VUs)
Virtual Point Codes (VPC)
Virtual Users
OAM API
SCCP API
Tutorials
HP OpenCall SS7 on Linux
SIGTRAN
File Names and Path Names
2 General System Guidelines
Development Guidelines
Designing for System Predictability
Designing for System Performance
Techniques for Performance Optimization
Optimizing OS Performance
System Test and Validation
Platform and User Application Scheduling
Using LANs with GDI
Compiling and Linking
C Language
C++ Language
Examples of Compile/Link Commands
3 General API Guidelines
Accessing the SS7 Stack
Interaction of Multiple APIs
Designing for Threads
SS7 Connections
Creating SS7 Stack Connections
Scheduling SS7 Connections
Scheduling Phases
Pre-select Phase
select()
Post-select
Scheduling Loop
Exchanging Signaling Information via an API
Receiving Signaling Information
Sending Signaling Information
Closing SS7 Stack Connections
Rescheduling
IPC Buffers
Tuning IPC Buffers
IPC Flow Control
Inbound Path
Outbound Path
Visibility of a Switchover at Each Level
TCAP API
SCCP API
MTP3, ISUP, and TUP APIs
Examining Error Codes
4 Using the Level 3 (MTP3/M3UA) API
General Description of the Level 3 (MTP3/M3UA) API
MTP Level 1
MTP Level 2
MTP Level 3
MTP3 User Adaptation (M3UA) Layer
Stream Control Transport Protocol (SCTP) Layer
Features of MTP3
Message Handling
Multiple Application Connections
Network Management
Traffic Management
Link Management
Route Management
Combining Linksets
How to Use the MTP3 API
Creating MTP3 Stack Connections
Scheduling MTP3 Stack Connections
MTP3 Primitives
Receiving MSUs (Message Signaling Units)
Sending MSUs
Closing MTP3 Stack Connections
Using the MTP3 API Shared Library
Creating MTP3 Stack Connections with SS7_xifcreate()
Scheduling MTP3 Stack Connections
SS7_ifselectmask()
select()
SS7_ifcnxhandler()
MTP3 Primitives
Receiving MSUs with MTPL3_recv()
Sending MSUs Using MTPL3_send
Closing MTP3 Stack Connections with SS7_ifclose()
Tuning MTP3 IPC Buffers with SS7_ifctrl()
MTP3 API Behavior
Sending MSUs
Receiving MSUs
DPC Unavailable
DPC Available
DPC Congestion
DPC Uncongested
Local MTP3 Unavailable
Local MTP3 Restart
5 Using the SCCP API
General Description of SCCP
SCCP Routing
SCCP Subsystem Management
Features of the SCCP
Connectionless Services
Multiple Application Connections
Return Option
SCCP Addressing Components
Signaling Point Status Management
Segmentation/Reassembly
Subsystem Management
Subsystem Status Test
SCCP Restart
Replicated Subsystems
Message Priority
SCCP Relay
Overview of How to Use the SCCP API
Creating SCCP Stack Connections
Scheduling SCCP Stack Connections
SCCP Primitives
SCCP Parameters
Receiving SCCP Primitives
Sending SCCP Primitives
Closing SCCP Stack Connections
Using the SCCP API Shared Library
Creating SCCP Stack Connections Using SS7_xifcreate()
Scheduling SCCP Stack Connections
SS7_ifselectmask()
select()
SS7_ifcnxhandler()
SCCP Primitives
Recommendation
SCCP Parameters
Local Alias PC
Global Title Types
Receiving SCCP Primitives Using SCCP_recv()
Sending SCCP Primitives Using SCCP_send()
Closing SCCP Stack Connections Using SS7_ifclose()
Controlling the SCCP Using SS7_ifctrl()
SCCP Addressing and Routing
SCCP Addressing
Types of Traffic
Global Title Translation
Outgoing Routing Control
Routing Without GT Translation
Routing with Local GT Translation
Incoming Routing Control
Routing Without GT Translation
Routing with Local GT Translation
Return Option
Signaling Point Status Management
Signaling Point Prohibited
Signaling Point Allowed
Signaling Point Congested
Subsystem Status Management
Local Subsystem Out of Service
Local Subsystem In Service
Subsystem Status Test
Replicated Subsystems
Available Backup Subsystem
Unavailable Backup Subsystem
No Peer Point Code Configured
SCCP Tutorial Programs
SccpClient.c
SccpServer.c
6 Using the TCAP API
Overview
Chapter Organization
API Functions
Using the TCAP API Shared Library
General Description of TCAP
Component Sublayer
Transaction Sublayer
No Component Layer Option
Types of TCAP Users
Component
Dialogue
Transaction
TCAP Messages
Message Length
Addressing
The HP OpenCall SS7 TCAP API
Hybrid Stacks
Reverse Hybrid Stacks
Dialogue Portion
Non-disruptive Service Update
Direct Access to the Transaction Sublayer
Message Priority
SS7 Stack Switchover
Simultaneous Access by Multiple TCAP Users
Take-over of TCAP Connections
Using ITU-T White Book TCAP for ITU-T Blue Book
TCAP Applications
Called and Calling Party Address
How to Use the TCAP API
Overview
Creating TCAP Stack Connections
Scheduling TCAP Stack Connections
If TC-user, Use Invoke and Dialogue ids
If TR-user, then...
Using the Component Sublayer, for TC-users
Using the TCAP Component Structure
Allocate, Fill, Allocate
Storing the Components
Create a Dialogue Primitive
Sending Components and the Dialogue Primitive
Releasing Buffers and Components
Receiving TCAP Components
Closing TCAP Stack Connections for TC-users and TR-users
Creating TCAP Stack Connections Using TCX_open()
Example: Creating a TC-user Connection
Scheduling TCAP Stack Connections
TCX_select_mask()
select()
TCX_cnx_handler()
Example: Scheduling a TCAP Stack Connection
Using the Component Sublayer
Invoke ID
Dialogue ID
Invocation and Dialogue Handling
Creating a Component
Storing the Components
Using the TCAP Component Structure
tcx_component
tc_component_type
Component Type Structure
Allocating Components
Allocating Components to a List
TCX_alloc_component
TCX_alloc_buffer
Example: Allocating One Component and One Buffer
Example: Filling the Buffer with User Data
Passing a Component to the Component Sublayer
Using TCX_put_component
Advanced Component Management
Releasing Buffers and Components
TCX_free_components ()
TCX_flush_components ()
TCX_free_buffer()
Dialogue Handling
tcx_primitive
Primitive Types
SCCP Service Quality Structure
Primitive Structure
dialogue_portion
Example: Creating a Dialogue Primitive
TCX Primitive Options
Sending Components via the Component
Sublayer Using TCX_send()
Example: Using TCX_send ()
Receiving Components from the Component
Sublayer Using TCX_recv()
Example: Receiving Components Using TCX_recv ()
Extracting Components Using TCX_get_component()
Using the Transaction Sublayer
Component Handling
Transaction Handling
Sending User Data via the Transaction
Sublayer Using TLX_send()
Receiving User Data from the Transaction
Sublayer Using TLX-recv()
Closing TCAP Stack Connections Using TCX_close()
Example: Closing a TC-user Connection
Component Management
Retrieving Component Buffers
Memory Allocation
Invoke IDs
Wait-for-reject Timer
Dialogue Management
Example of a TC Dialogue
Setting Dialogue ID Values
Simultaneous Dialogues
Transaction Management
API Memory Management
Tuning TCAP IPC Buffers Using TCX_control()
TCX_control(): Syntax
TCX_control(): Return Values
Transaction Timers
Using TCAP over GDI
GDI Access (Application Interface Layer)
GDI Connectivity
TCAP Addressing Mode
Notifications
Managing Stack Switchovers
Managing Dual Signaling LANs
TCAP Tutorial Programs
TcapClient.c
TcapServer.c
Building IN Message Sets Over the HP OpenCall SS7 TCAP API
7 Using the TCAP Application Message Dispatcher
Introduction
Enabling and Disabling
Default Dispatching Algorithm
Customer-Supplied Dispatching Algorithm
Shared Library Technical Requirements
Header File
When the Library Functions are Called
TCAProuter_init
()
TCAProuter_application_activate
()
TCAProuter_application_deactivate
()
TCAProuter_incoming_message
()
TCAProuter_shutdown
()
Some Approaches to Dispatching Design
Partitioning
Load Balancing
Round Robin
Uneven Distribution
Dispatching on INAP Service Key
Dispatching Algorithms
Calls to Functions in the Customer-Supplied Library
Tracing and Logging
TTL (Telecom Tracing and Logging) Mechanism
Principles of Stack Traces
Trace Function Prototype
Activating the Trace Function
When to Use the Trace Function
Guidelines for Developing the Customer-Supplied Shared Library
Designing for Compatibility
Designing for Performance
Designing for Shared Memory
Designing for High Availability
Designing in Accordance with Limits
Header File
File Names
Synopsis
Structures
tcx_application_info
tcx_primitive
Functions
TCAP Application Message Dispatcher Tutorials
C
C++
8 PIC/AG - Introduction
Some Basic Terms
Purposes of the HP OpenCall PIC Framework
Ensuring HA
Communicating with Another Plug-in
Possible Plug-in Applications
Components of the PIC Framework
What is Supplied in the PIC Framework
What the User Must Develop
Role of Each Component
Benefits of the PIC Framework
Summary of PIC Framework Features
User Plug-in Development
Programming Guidelines
Compiling and Linking
Development Environment
Exchanging Messages
Multiple Servers
Multiple Clients
Session
Message Routing
Flow Control
Execution API
Class
Loading and Binding
Scheduling
HA API
Class
Features
HA States
HA Model (on HP OpenCall SS7)
Registry API
Class
Purpose
PCA (Plug-in Communication API)
Classes
Communication Setup and Control
Communication
Management
TimerLib API
PIC Pool of Timers
Plug-in Pools of Timers
Changing the User Plug-in
Starting/Stopping the User Plug-in
Using Command Lines
Product Environment
Hardware Requirements
Other Equipment
Usability
Upgrade
PCA Message Contents
Plug-in Management
High Availability Framework
Exception Handling
How the PIC Manages Exceptions
How the Plug-in Should Manage Exceptions
Plug-in Tutorial
9 PIC/AG - Using the PCA API
High Availability (HA) and the PCA
HA Model
Connection Enabling
PCA Description
Object Model
Server Setup
Server Initialization
Server Opening
Server Closing
Server IPC Parameterization
Client Connection Management
Client Setup
Client Initialization
Client Opening
Client Closing
Client IPC Parameterization
Server Connection Management
Session Management
Customizing Plug-in Sessions
Session Type
Session States
Session Creation
Session Deletion
Session Locking
Server Session Dispatching
Server Session Flow Control
Client Session Flow Control
Session Reject
Parameterization
Messages
Types and Headers
Meaning of errorCode and errorText Fields
Types of PCA Payload
PCA_Message Internal Structure
Buffer Allocator
Sending Messages
Principles
Flow Control
Message Ownership
Receiving Messages
Principles
Flow Control
Message Ownership
Profiling
10 PIC/AG - Using the PIC APIs
Structure of PIC APIs
Plug-in Setup
User Plugin Object Creation
User Plug-in Initialization
User Plug-in Shutdown
Plug-in Scheduling
Plug-in Body Scheduling
Asynchronous Tasks (TimerLib)
Plug-in HA Management
Features
State Completion Values
Example of an HA Sequence
The Plug-in Registry
11 Using the OA&M API
SS7 OA&M Services
OA&M APIs
OA&M Entities
Obtaining Notification about OA&M Entity State Changes
Issuing OA&M Requests
Creating MTP and SCCP OA&M Connections using SS7_xifcreate
Scheduling MTP and SCCP OA&M Connections
SS7_ifselectmask()
select()
SS7_ifcnxhandler()
Examples
Sending MTP2 OA&M Requests using MTP2X_oamcmd()
Receiving MTP2 OA&M Notifications using MTP2X_oamrecv()
MTP3 Entities and Management
MTP3 Entity Structure
Description of MTP3 Entities
Rules for Creating and Manipulating MTP3 Entities
Addressing MTP3 Entities
Possible States of MTP3 Entities
Sending MTP3 OA&M Requests using MTPL3_oamcmd()
Response to Expect from an MTPL3 OA&M Request
Collecting MTP3 OA&M Statistics Using MTPL3_oamstat()
Report Types
Response to Expect When You Collect MTP3 OA&M Statistics
Receiving MTP3 OA&M Command and Statistic Notifications
Using MTPL3_oamrecv()
Response to Expect When You Use the MTPL3_oamrecv() Command
SCCP OA&M Entities and Management
SCCP Entity Structure
Description of SCCP Entities
Rules for Creating and Manipulating SCCP Entities
Addressing SCCP Entities
Possible States of SCCP Entities
Sending SCCP OA&M Requests Using SCCP_oamcmd()
Response to Expect When You Send an SCCP OA&M Request
Collecting SCCP OA&M Statistics Using SCCP_oamstat()
Report Types
Response to Expect When You Collect SCCP OA&M Statistics
Receiving SCCP OA&M Command and Statistic Notifications
Using SCCP_oamrecv()
Response to Expect When You Use the SCCP_oamrecv() Command
Closing MTP and SCCP OA&M Connections Using SS7_close()
Using TCAP OA&M Functions
Opening a TCAP OA&M Connection Using TCX_open()
Scheduling TCAP OA&M Connections
TCX_select_mask()
select()
TCX_cnx_handler()
Requesting TCAP Statistics Using TCX_control()
Collecting TCAP Statistics Using TCX_recv()
Closing a TCAP OA&M Connection Using TCX_close()
12 Using the ISUP API
Introduction
ISUP Software Versions
ISUP Software Components
Generic Components
Version-Specific Components
Object Orientation Guidelines
Object Lifespan
Inheritance
Exception Handling
Using the ISUP API Shared Library
Connections
SS7 Stack Access
State-machine Mode
Bypass Mode
ISUP CIC-based distribution
Default Platform Configuration
Inconsistent Distribution
Application Instance Group
AIG configuration
ISUP message routing
Incoming Message Routing
ISUP Circuit Owners
TDi Routing Tables
Messages from a Non-Assigned Circuit
Management Messages
ISUP Application Connection
Application Disconnection
Dynamic Configuration
ISUP Loopback Mode
Flow Control and Congestion Handling
On-line Upgrade
API Structure
IsupMgr
IsupProbe
IsupSMProbe
IsupBPProbe
Outline of the Basic Application
General Application Structure
Initializing the IsupMgr object
Loading the Configuration File
Creating and Opening a Probe Object
Creating a Probe Object
Opening a Connection
Primary and Secondary Connections
Scheduling Probe Objects
Pre-select
Select()
Post-select
Using the Activity Object
Criteria for Choosing to Implement the Activity Object
How to use the Activity Object
Redefining the Activity Methods
Exchanging Messages via Probe Objects
Closing and Destroying a Probe
Close()
Destroy()
Receiving Notifications
oamReceive()
oamStatus()
Return Status Values
Using Dynamic Configuration
reload()
dump()
ISUP Tutorial Programs
Using State-machine Access
Using Bypass Access
ISUP Makefiles
13 Exchanging ISUP Messages
Introduction
Exchanging Primitives
HP OpenCall SS7 ISUP Primitives
Acknowledgment Primitives
Attempt To Use Non-Supported Message
State Machine Mode
Bypass Mode
Additional Information
MTP Related Primitives
HP OpenCall SS7 ISUP Supported Messages
Message Classes
Metadata
Encoder/Decoder
Tracing
Loading a Set of Messages
Identifying a Set of Messages
Creating Messages
ISUP Messages Supported
Complete List of Messages and Message Sets Supported
Partial Support
Accessors
Specific Accessors
Accessor Behavior
Accessing Data Part of an
IsupMsg
Object
Assigning Values
Sending Messages
Queued Messages
Receiving Messages
Casting Messages
Queued Indications
Automated Call Release
Configuring for Automated Call Release
Return Status Values
Supported Parameters List
14 Managing HP OpenCall SS7 ISUP
Overview
Managing Race Conditions
Managing Memory Space
Managing Object Memory
Messages
Parameter Values
Additional Information
Return Status Values
Handling IPC Buffers
Modifying IPC Buffers
IPC Flow Control
Inbound Path
Outbound Path
Managing Circuit States
Provided Methods
How HP OpenCall SS7 ISUP Tracks Circuit State Values
Developing a Circuit Update Mechanism
Propagating States
Synchronizing States
Activating the Standby Application
Recovering States
15 Introduction to ISUP Procedures
Supported Finite State Machines
Interaction Scenarios
Inbound and Outbound Circuits
MTP3 Interaction Handling
Local MPT-3 Status Indications
Remote DPC Status Indications
DPC States
Generic Primitive Processing (State-machine Probe)
Generic Primitive Processing (Bypass Probe)
Generic ISUP Message Handling (State-machine Probe)
Generic ISUP Message Handling (Bypass Probe)
Generic ISUP Circuit Group Message Handling
ANSI Based HP OpenCall SS7 ISUP
ITU-T Based HP OpenCall SS7 ISUP
CFN and UCIC Message Handling
CFN Sending
CFN Receipt
UCIC Sending
UCIC Receipt
User Defined ISUP Message Exchange
Segmentation - ITU-T 93, 97, ETSI-V2 Versions
Segmentation for Outgoing Messages
Reassembly of Incoming Messages - Normal Case
Reassembly of Incoming Messages -Failure Case 1
Reassembly of Incoming Messages -Failure Case 2
Handling Unrecognized Messages -
ITU97 Mode for ITU-T Based HP OpenCall SS7 ISUP
16 ISUP Call Control - Procedures Common to ANSI and ITU-T
Overview
Conventions Used in Diagrams
Call Setup Procedures
SETUP Request Locally Refused by HP OpenCall SS7 ISUP
SETUP Request - Dual Seizure Case 1
SETUP Request - Dual Seizure Case 2
SETUP Request - Failure to Receive ACM
Incoming Call Setup with Immediate Release
Successful Call Setup for Incoming Side
Call Release
Normal Call Release - Outgoing Release
Normal Call Release - Incoming Release
Call Release Collision - Case 1
Call Release Collision - Case 2
Incoming Reset
Circuit Reset
HP OpenCall SS7 ISUP Initiated Reset - Successful Procedure
Reset from Network - Successful Procedure
Reset from Application - Successful Procedure
Circuit Group Reset from Network
Normal Case
Failure Case
Double Reset
Information Exchange
Solicited Information Exchange - Success
Solicited Information Exchange - Failure Case 1
Solicited Information Exchange - Failure Case 2
Unsolicited Information Exchange
Information Exchange - Failure Case
Suspend/Resume
Suspend/Resume - T6 Expiry
Forward Transfer
Forward Transfer Message - Normal Case
Pass Along Message
Pass Along Request - Normal Case
Pass Along Request - Error Case
Continuity Check Request with IAM or CCR
Continuity Check on this Circuit
Continuity Check on the Previous Circuit
Facility Message
17 ISUP Circuit Maintenance - Procedures Specific to ANSI
Overview
Circuit Blocking/Unblocking from a Network
Circuit Blocking from a Network - Normal Case
Circuit Blocking from User - Normal Case
Circuit Unblocking from a Network - Normal Case
Circuit Unblocking from User - Normal Case
Circuit Unblocking from a Network on Reception of an IAM
Circuit Blocking during Setup Procedure
Circuit Group Blocking/Unblocking
Group Blocking from Network -
Immediate Release - Normal Case 1
Group Blocking from Network - No Release -
Normal Case
Group Blocking (Immediate Release or Not)
- From User - Normal Case
Group Unblocking from Network-
Normal Case
Group Unblocking (Immediate or Not)
- From User - Normal Case
Group Blocking (Without Immediate Release)
- During Call Setup Procedure
Circuit Group Query
Circuit Group Query from the Network
Circuit Group Query from User (Application)
Circuit Validation
Circuit Validation from Network
Circuit Validation from User
18 ISUP Call Control - Procedures Specific to ANSI
Call Setup Without ACM Reception
Call Release
Abnormal Call Release - Case 1
Abnormal Call Release - Case 2
Circuit Reset
HP OpenCall SS7 ISUP Initiated Reset
- Failure to Receive RLC
Circuit Group Reset from User
Normal Case
Circuit Reservation
Circuit Reservation from Network
Circuit Reservation from Network - T_CRA Expiry
Suspend/Resume
Suspend/Resume - Outgoing Call
Suspend/Resume - Incoming Call
Exit Message
Exit Message - Normal Case
Continuity Check Request with IAM or CCR
Continuity Check on this Circuit
Continuity Check Request with CRM
Continuity Check on this Circuit
19 ISUP Call Control - Procedures Specific to ITU-T
Successful Call Setup for Outgoing Side
Call Setup Including ACM Reception
Use of the CON Message
Use of the SAM Message
Call Release
Abnormal Call Release - Case 1
Abnormal Call Release - Case 2
Circuit Reset
HP OpenCall SS7 ISUP Initiated Reset
- Failure to Receive RLC
Circuit Group Reset from USER
Normal Case
Suspend/Resume
Suspend/Resume - Incoming Call
Suspend/Resume - Outgoing Call
Suspend/Resume - T2 Expiry
Continuity Check Request with IAM or CCR
Continuity Check on this Circuit
Facility Request, Facility Accepted, Facility Reject Messages
Facility Exchange - Success
Facility Exchange - Failure
20 ISUP Circuit Maintenance - Procedures Specific to ITU-T
Overview
Circuit Blocking/Unblocking from a Network
Circuit Blocking from a Network - Normal Case
Circuit Blocking from User - Normal Case
Circuit Unblocking from Network - Normal Case
Circuit Unblocking from User - Normal Case
Circuit Unblocking from a Network on Reception of an IAM
Circuit Blocking during Setup Procedure
Circuit Group Blocking/Unblocking
Group Blocking (Maintenance Oriented)
- From Network - Normal Case
Group Blocking (Hardware Oriented) from Network -
Normal Case
Group Blocking (Maintenance Oriented)
- From User - Normal Case
Group Blocking (Hardware Oriented)
- From User - Normal Case
Group Unblocking (Maintenance Oriented)
- From Network - Normal Case
Group Unblocking (Hardware Oriented)
- From Network - Normal Case
Group Unblocking (Maintenance Oriented)
- From User - Normal Case
Group Unblocking (Hardware Oriented)
- From User - Normal Case
Group Blocking (Maintenance Oriented)
- During Call Setup Procedure
Group Blocking (Hardware Oriented)
- During Call Setup Procedure
Circuit Group Query
Circuit Group Query from the Network
Circuit Group Query from Application
A ISUP Library Values
ANSI-based HP OpenCall SS7 ISUP
ITU-T - based HP OpenCall SS7 ISUP
B TUP Addendum
How to Use This Addendum
Functionality Identical to HP OpenCall SS7 ISUP
Functionality Not Identical to HP OpenCall SS7 ISUP
Flavors Supported by HP OpenCall SS7 TUP
Introduction
Overview
Software Versions
Software Components
Application Development Guidelines
Designing for System Predictability
Techniques for Performance Optimization
System Test and Validation
Object Orientation Guidelines
Using the TUP API Shared Library
Using the API
Introduction
Connections
SS7 Stack Access
API Structure
Outline of the Basic Application
Initializing the IsupMgr Object
Creating and Opening a Probe Object
Scheduling Probe Objects
Using the Activity Object
Exchanging Messages via Probe Objects
Closing and Destroying a Probe Object
Receiving Notifications
Return Status Values
Using Dynamic Configuration
Exchanging Messages
Introduction
Exchanging Primitives
HP OpenCall SS7 TUP Primitives
HP OpenCall SS7 TUP Message Management
Automated Call Release
ACR State Machine
Return Status Values
Managing HP OpenCall SS7 TUP
Overview
Managing Race Conditions
Managing Memory Space
Managing Object Memory
Handling IPC Buffers
Congestion and Flow Control
Managing Circuit States
Developing a Circuit Update Mechanism
Introduction to TUP Procedures
Supported Finite State Machines
Interaction Scenarios
MTP3 Interaction Handling
Remote DPC Status Indications
Generic Primitive Processing (State Machine Probe)
Generic Primitive Processing (Bypass Probe)
Generic TUP Message Handling (State Machine Probe)
Generic TUP Message Handling (Bypass Probe)
Generic TUP Circuit Group Message Handling
Call Control
Call Setup Procedures
Call Release
Circuit Maintenance
Circuit Blocking/Unblocking
Circuit Group Blocking/Unblocking
Miscellaneous Procedures
Use of MPM Message (CTUP Only)
Use of MAL Message (CTUP Only)
Use of FOT Message
TUP Tutorial Programs
Using State-machine Access
Using Bypass Access
TUP Makefile
Index
List of Figures
1-1
Development Platform
1-2
HP OpenCall SS7 Stack and Management APIs
1-3
Example of an Incoming Message for a Local Alias
3-1
Local SS7 Stack Access - Architecture
3-2
Remote HP OpenCall SS7 Stack Access: Distributed Platform
3-3
IPC Buffers
3-4
Back-pressure
4-1
MTP Levels and Functions
4-2
MTP3 Primitives
4-3
Sending an MSU
4-4
Receiving an MSU
4-5
Receiving an mtp_pause_ind Primitive
4-6
Receiving an mtp_resume_ind Primitive
4-7
Receiving mtp_status_ind[dpc_congested] Primitive
4-8
Receiving mtp_status_ind[dpc_uncongested] Primitive
5-1
SCCP in the SS7 Stack
5-2
SCCP Primitives
5-3
Inbound Traffic
5-4
Outbound Traffic
5-5
Loopback Traffic
5-6
Relay Traffic
5-7
Global Title Translation
5-8
Message Transfer 1: TCAP or SCCP Application to SCCP Local Bus
5-9
Message Transfer 2: Remote Entity to MTP Layer
5-10
Message Transfer 3: MTP layer to SCCP Local Bus
5-11
Message Transfer 4: Local User Entity to SCCP Interface
5-12
Message Transfer 5: SCCP to TCAP or an Application on SCCP API
5-13
Returning an Undelivered Message
5-14
Signaling Point Prohibited
5-15
Signaling Point Allowed
5-16
Signaling Point Congestion
5-17
Local Subsystem Out Service
5-18
Local Subsystem In Service
5-19
Subsystem Status Test
5-20
Successful Withdrawal of a Replicated Subsystem
5-21
Refused Withdrawal of a Replicated Subsystem
5-22
Graceful Withdrawal of a Replicated Subsystem
6-1
Sublayers of TCAP
6-2
TCAP Terms
6-3
TCAP Message Structure
6-4
Hybrid stack: Application Connection
6-5
Reverse Hybrid Stack: Application Connection
6-6
Transparent SS7 Stack Replication
6-7
Single TCAP User with Multiple TCAP Stack Connections
6-8
Multiple TCAP Users on the SS7 Stack
6-9
open/active, open/active and open/non-active, open/non-active
6-10
open/non-active, open/active and open/active, open/non-active
6-11
closed, open/active and open/active, open/non-active
6-12
Invocation and Dialogue Handling
6-13
Storing the Components within the TCAP library
6-14
When to Use TCX_free_components ()
6-15
When to Use TCX_flush_components
6-16
TC Dialogue Example
6-17
GDI Connectivity in HP OpenCall SS7 Product
6-18
GDI Dual LANS - Failure of One LAN
7-1
Round Robin Algorithm
7-2
Customer-Supplied Dispatching Algorithm
7-3
Example of Dispatching Algorithms
8-1
Purposes of a User Plug-in
8-2
Components of the PIC Framework
8-3
Exchanging Messages
8-4
Multiple PCA_Servers
8-5
Multiple PCA_Clients
8-6
Plug-in Scheduling
8-7
HA FSM for PIC (on HP OpenCall SS7)
8-8
PCA Classes (as Generally Used in a Plug-in)
8-9
The PIC Pool of Timers
8-10
Plug-in Pool of Timers
9-1
Active and Standby Connections
9-2
The PCA Object Model as Used in a Plug-in
9-3
State Machine for a Session
9-4
PCA Messages Format
9-5
PCA Message Structure
10-1
C++ Structure of PIC API Classes
10-2
Plug-in Scheduling Model
11-1
OA&M in the SS7 Stack
11-2
MTP3 Entities in a Containment Tree
11-3
SCCP Entities in a Containment Tree
12-1
HP OpenCall SS7 ISUP Components
12-2
Connection/Probe Relationship
12-3
Several Primary ISUP Application Instances Connected to an SS7 Stack via the TDi
12-4
Object Model
12-5
Switching
13-1
ISUP Primitives
13-2
Message Class Relationships
13-3
Message Class/Metadata Relationship
13-4
Probe/Message Relationship
13-5
Successful Automated Call Release
13-6
Unsuccessful Automated Call Release, Followed by Reset, and Local Reset (STOP)
14-1
Internal Buffers
14-2
Back-pressure and Paths
14-3
Propagation
14-4
Synchronization
14-5
Activation
14-6
Recovery
15-1
ISUP Managing Inbound and Outbound Circuits
15-2
Segmentation for Outgoing Messages
15-3
Reassembly of Incoming Messages - Normal Case
15-4
Reassembly of Incoming Messages - T34 Expiry
15-5
Reassembly of Incoming Messages - Other Message Received
15-6
Reassembly of Incoming Messages - COT Received
16-1
SETUP_REQ Locally Refused by HP OpenCall SS7 ISUP
16-2
Dual Seizure
16-3
Incoming Seizure
16-4
Failure to Receive ACM
16-5
Successful Call Setup - Incoming Side
16-6
Successful Call Setup - Incoming Side
16-7
Call Release - Outgoing Release
16-8
Call Release - Incoming Release
16-9
Abnormal Release - REL Collision
16-10
Abnormal Release - REL Collision
16-11
Abnormal Release - Incoming Reset
16-12
Call Reset - Successful
16-13
Reset from Network - Successful Procedure
16-14
Reset from Application- Successful Procedure
16-15
Group Reset
16-16
Group Reset - Failure Case
16-17
Group Reset - Double Reset
16-18
Solicited Information Exchange - Incoming Request
16-19
Solicited Information Exchange - Outgoing Request
16-20
Solicited Information Exchange - Failure
16-21
Solicited Information Exchange - Failure
16-22
Unsolicited Information Exchange
16-23
Unsolicited Information Exchange - Failure
16-24
Suspend/Resume - T6 Timeout
16-25
Forward Transfer Message - Normal Case
16-26
Pass Along Procedure - Outgoing Call
16-27
Pass Along Procedure - Incoming Call
16-28
Pass Along Procedure - Failure
16-29
Continuity Check - Outgoing Side - Failure
16-30
Continuity Check - Incoming Side - Failure
16-31
Continuity Check on Previous Circuit - Outgoing Side
16-32
FAC Message
17-1
Circuit Blocking from Network - Normal Case
17-2
Circuit Blocking from User - Normal Case
17-3
Circuit Unblocking from Network- Normal Case
17-4
Circuit Unblocking from User - Normal Case
17-5
Circuit Unblocking on Reception of IAM
17-6
Circuit Blocking during Call Setup
17-7
Group Blocking with Release - Normal Case
17-8
Group Blocking without Release - Normal Case
17-9
Group Blocking from User - Normal Case
17-10
Group Unblocking from Network- Normal Case
17-11
Group Unblocking from User - Normal Case
17-12
Group Blocking during Call Setup
17-13
Circuit Group Query - from Network
17-14
Circuit Group Query from User - Normal Case
17-15
Circuit Group Query from User - Failure (T28 Timeout)
17-16
Circuit Group Query from User - Error in Processing State - Case 1
17-17
Circuit Group Query from User - Error in Processing State - Case 2
17-18
Circuit Group Query from User - Error in Processing State - Case 3
17-19
Circuit Group Query from User - Error in Maintenance State - Case 1
17-20
Circuit Group Query from User - Error in Maintenance State - Case 2
17-21
Circuit Group Query from User - Error in Maintenance State - Case 3
17-22
Circuit Group Query from User - Error in Maintenance State - Case 4
17-23
Circuit Group Query from User - Error in Maintenance State - Case 5
17-24
Circuit Group Query from User - Error in Maintenance State - Case 6
17-25
Circuit Validation from Network
17-26
Circuit Validation from User - Normal Case
17-27
Circuit Validation from User - Test Failed - Two T_CVT Timeouts
17-28
Circuit Validation from User - Test Failed -CVR Received Before Second T_CVT Timeout
18-1
Successful Call Setup - Outgoing Side
18-2
Abnormal Release - Reset Failed
18-3
Abnormal Release - RLC Received at Last
18-4
Call Reset - Failure to Receive RLC
18-5
Group Reset from User- Normal Case
18-6
Circuit Reservation from Network
18-7
Circuit Reservation from Network - Failure
18-8
Suspend/Resume - Outgoing Call
18-9
Suspend/Resume - Incoming Call
18-10
Exit Message - Normal Case
18-11
Continuity Check - Outgoing Side
18-12
Continuity Check - Incoming Side
18-13
Continuity Recheck - Outgoing Side
18-14
Continuity Recheck - Incoming Side
18-15
Continuity Recheck - Outgoing Side - TCCR Expiry
18-16
Continuity Recheck - Outgoing Side - T24 Expiry
18-17
Continuity Check with CRM - Incoming Side - Success
18-18
Continuity Check with CRM - Incoming Side - Failure
18-19
Continuity Check with CRM - Not Required / Required on Previous
19-1
Successful Call Setup - Outgoing Side
19-2
Use of CON Message - Outgoing Side
19-3
Use of CON Message - Incoming Side
19-4
Use of SAM Message - Outgoing Side
19-5
Use of SAM Message - Incoming Side
19-6
Abnormal Release - Reset Failed
19-7
Abnormal Release - RLC Received at Least
19-8
Call Reset - Failure to Receive RLC
19-9
Group Reset from User- Normal Case
19-10
Suspend/Resume - Incoming Call
19-11
Suspend/Resume - Outgoing Call
19-12
Suspend/Resume - T6 Timeout
19-13
Continuity Check - Outgoing Side
19-14
Continuity Check - Incoming Side
19-15
Continuity Recheck - Outgoing Side
19-16
Continuity Recheck - Incoming Side
19-17
Continuity Recheck - Outgoing Side - T24 Expiry
19-18
Continuity Recheck - Incoming Side - COT Failure
19-19
Facility Exchange - Success
19-20
Facility Exchange - Failure
20-1
Circuit Blocking from Network - Normal Case
20-2
Circuit Blocking from User - Normal Case
20-3
Circuit Unblocking from Network - Normal Case
20-4
Circuit Unblocking from User - Normal Case
20-5
Circuit Unblocking on Reception of IAM
20-6
Circuit Blocking during Call Setup
20-7
Maintenance Group Blocking - Normal Case
20-8
Hardware-Oriented Group Blocking - Normal Case
20-9
Group Blocking from User - Normal Case
20-10
Group Blocking from User - Normal Case
20-11
Group Unblocking from Network - Normal Case
20-12
Group Unblocking from Network - Normal Case
20-13
Group Unblocking from User - Normal Case
20-14
Group Unblocking from User - Normal Case
20-15
Group Blocking during Call Setup
20-16
Group Blocking during Call Setup
20-17
Circuit Group Query - from Network
20-18
Circuit Group Query from User - Normal Case
20-19
Circuit Group Query from User - Failure
B-1
Successful Automated Call Release
B-2
Unsuccessful Automated Call Release
B-3
Automatic Congestion Control - Outgoing Side
B-4
Automatic Congestion Control - Incoming Side
B-5
Setup Request Locally Refused by HP OpenCall SS7 TUP
B-6
Setup - Dual Seizure Case 1 - Non-Controlling Side
B-7
Setup - Dual Seizure Case 1 - Controlling Side
B-8
Setup - Dual Seizure Case 2
B-9
Setup - Failure to Receive ACM
B-10
Setup - Failure to Receive ANN (or ANC)
B-11
Setup - Failure - Outgoing Side - Use of UBM
B-12
Setup - Failure - Incoming Side - Use of UBM
B-13
Incoming Call Setup With Immediate Release
B-14
Successful Call Setup - Outgoing Side
B-15
Successful Call Setup - Incoming Side
B-16
Use of SAM or SAO - Outgoing Side
B-17
Use of SAM or SAO - Incoming Side
B-18
Solicited Information Exchange - Outgoing Side
B-19
Solicited Information Exchange - Incoming Side
B-20
Incoming IAM (or IAI) Leading to GRQ and GSM
B-21
Outgoing IAM Leading to GRQ and GSM
B-22
Incoming IAM (or IAI) and Two GSMs Received
B-23
ACM Sent After GSM Received
B-24
ACM Sent Before GSM Received
B-25
Second GRQ Received Before GSM Sent
B-26
Call Failure During Wait for GSM
B-27
ACM Timeout Because of Failure to Send GSM
B-28
Continuity Check - Success - Outgoing Side
B-29
Continuity Check - Success - Incoming Side
B-30
Continuity Check - Outgoing Side - Failure
B-31
Continuity Check - Incoming Side - Failure
B-32
Continuity Recheck - Outgoing Side - Success
B-33
Continuity Recheck - Incoming Side - Success
B-34
Continuity Recheck - Outgoing Side - Test Call
B-35
Continuity Recheck - Incoming Side - Test Call
B-36
Continuity Recheck - Outgoing Side - T8 Expiry
B-37
Continuity Recheck - Incoming Side - CCF
B-38
Continuity Check on Previous Circuit - Outgoing Side - COT
B-39
Continuity Check on Previous Circuit - Incoming Side - COT
B-40
Continuity Check on Previous Circuit - Outgoing Side - CCF
B-41
Continuity Check on Previous Circuit - Incoming Side - CCF
B-42
Re-answer Procedure - Incoming Side - RAN After CBK
B-43
Re-answer Procedure - Outgoing Side - RAN After CBK
B-44
Re-answer Procedure - Outgoing Side - RAN After CCL
B-45
Re-answer Procedure - Incoming Side - RAN After CCL
B-46
Re-answer Procedure - Outgoing Side - After SLB (CTUP Only)
B-47
Re-answer Procedure - Incoming Side - After SLB (CTUP Only)
B-48
Normal Call Release - Initiated from Calling Party
B-49
Normal Call Release - Initiated from Called Party
B-50
Normal Call Release - Initiated from Called Party After Twran Expiry
B-51
Normal Call Release - Outgoing Release in Backward Direction
B-52
Normal Call Release - Call Failure Signal Received
B-53
Normal Call Release - Call Failure Signal Sent
B-54
Abnormal Call Release - Failure To Receive RLG After Sending CLF
B-55
Abnormal Call Release - Failure To Receive CLF After Sending CBK
B-56
Abnormal Call Release - Failure To Receive CLF After Sending CFL
B-57
Successful Reset from Application- Incoming
B-58
Successful Reset from Application- Outgoing
B-59
Reset from Network - Incoming Exchange - Successful Procedure
B-60
Reset from Network - Outgoing Exchange - Successful Procedure
B-61
Circuit Reset - Successful Procedure
B-62
Circuit Reset - Failure to Receive RLG
B-63
Group Reset From Network - Normal Case - Range Not Zero
B-64
Group Reset From Network - Normal Case - Range Zero
B-65
Group Reset From User - Normal Case
B-66
Group Reset - Failure Case - No Acknowledgment Received From Network
B-67
Group Reset - Failure Case - No Response Received From Application
B-68
Double Reset - Normal Case - Range Not Zero
B-69
Double Reset - Normal Case - Range Zero
B-70
Circuit Blocking From Network - Normal Case
B-71
Circuit Blocking From User - Normal Case
B-72
Circuit Unblocking From Network - Normal Case
B-73
Circuit Unblocking From User - Normal Case
B-74
Circuit Blocking During Setup Procedure - Outgoing Side
B-75
Circuit Blocking During Setup Procedure - Incoming Side
B-76
Group Blocking from Network - MN - Normal Case
B-77
Group Blocking from Network - HW - Normal Case
B-78
Group Blocking from Network - SW - Normal Case
B-79
Group Blocking from User - MN - Normal Case
B-80
Group Blocking from User - HW - Normal Case
B-81
Group Blocking from User - SW - Normal Case
B-82
Group Blocking During Call Setup - MN - Normal Case
B-83
Group Blocking During Call Setup - HW - Normal Case
B-84
Group Blocking During Call Setup - SW - Normal Case
B-85
Group Unblocking from Network - MN - Normal Case
B-86
Group Unblocking from Network - HW - Normal Case
B-87
Group Unblocking from Network - SW - Normal Case
B-88
Group Unblocking from User - MN - Normal Case
B-89
Group Unblocking from User - HW - Normal Case
B-90
Group Unblocking from User - SW - Normal Case
B-91
Circuit Group Blocking or Unblocking - Acknowledgment Timers
B-92
Metering Pulse Message - Outgoing Side (CTUP Only)
B-93
Metering Pulse Message - Incoming Side