ISDN User Part. The ISDN (Integrated Services Digital Network) User Part or ISUP is part of Signaling System No. 7 (SS7), which is used to set up telephone calls in the public switched telephone network (PSTN). It is specified by the ITU-T as part of the Q.76x series.

When a telephone call is set up from one subscriber to another, several telephone exchanges could be involved, possibly across international boundaries. To allow a call to be set up correctly, where ISUP is supported, a switch will signal call-related information like called party number to the next switch in the network using ISUP messages.

The telephone exchanges may be connected via T1 or E1 trunks which transport the speech from the calls. These trunks are divided into 64 kbit/s timeslots, and one timeslot can carry exactly one call. Regardless of what facilities are used to interconnect switches, each circuit between two switches is uniquely identified by a circuit identification code (CIC) that is included in the ISUP messages. The exchange uses this information along with the received signaling information (especially the called party number) to determine which inbound and outbound circuits should be connected together to provide an end to end speech path.

In addition to call related information, ISUP is also used to exchange status information for, and permit management of, the available circuits. In the case of no outbound circuit being available on a particular exchange, a release message is sent back to the preceding switches in the chain.

ISUP variants 
Different ISUP variants exist. ITU-T specifies the variant used in the international network. In Europe ETSI releases its own ISUP specification which is close that of the ITU-T. ITU-T ISUP is used for international connections and is the base for some national ISUP variants. Most countries have their own variation of ISUP to cover national requirements. ANSI specifies variations of ISUP utilized under the North American Numbering Plan; however, some countries under the NANP differ in their support of some procedures (for example, LATA is meaningless within Canada. Also, RBOCs support Telcordia procedures not fully specified by ANSI.) Some countries outside the NANP support ANSI-based variants (e.g. Mexico).

While these variations of ISUP differ in subtle ways, the vast majority of ISUP message type, parameter type, and parameter field code-points, and related fundamental call processing procedures, agree across all variants.

ITU-T specification versions 
 1980 – ISUP Yellow Book
 1984 – ISUP Red Book
 1988 – ISUP Blue Book
 1991 – ISUP Q.767
 1992 – ISUP'92 White Book (segmentation, compatibility, new supplementary services)
 1997 – ISUP'97 (new procedures, IN CS1, new supplementary services)

According to ITU-T Q.761 section 2.4.1 ISUP interworking ISUP'92 is backwards compatible with ISUP Blue Book and Q.767 for basic call procedures and supplementary services except for some procedures (e.g. number portability). Additionally the compatibility features introduced in this version ensure forward compatibility with newer versions.

Message types 
An ISUP message contains a fixed header containing the circuit identification code and the ISUP message type, followed by a mandatory fixed-length parameter part, a mandatory variable-length parameter part, and an optional parameter part that are dependent on the type of message being sent. ISUP messages can be sent using the services of the Message Transfer Part, or, less often, the Signalling Connection Control Part. These messages are transmitted in various stages of call setup and release. The most common messages are:
Initial address message (IAM) — First message sent to inform the partner switch that a call has to be established on the CIC contained in the message. Contains the called number, type of service (speech or data) and optional parameters.
Subsequent address message (SAM) — For networks that support overlap dialing procedures, and then in the case that the IAM did not contain the full called number, one or more SAMs follow containing additional digits. This message is not supported by networks that only support en bloc dialing procedures.
Address complete message (ACM) — Message returned from the terminating switch when the subscriber is reached and the phone starts ringing, or when the call traverses an interworking point and the intermediate trunk is seized.
Call progress (CPG) — Contains additional information about the progress of a call. Normally sent after the ACM when the status of the call changes from that reported in the ACM.
Answer message (ANM) — Sent when the subscriber picks up the phone, a resource is connected or answer supervision is returned by an interworking point. Normally charging starts at this moment. It is required that the call be cut through in both directions by this point.
Connect (CON) — Sent when the call is answered by an automatic terminal. This message replaces the ACM, CPG and ANM for calls that are answered by automatic terminals.
Release (REL) — Sent to clear the call when a subscriber goes on hook. This is also sent (in direct response to an IAM) if the terminating switch determines that the call cannot be completed. In either case, the terminating switch provides a cause value in the message to explain the reason for the release, e.g., "User busy".
Release complete (RLC) — Acknowledgment of the release – the circuit is idle afterward and can be used again.

Sample call flow 
This is a very basic call flow involving only two telecom switches which exchange the ISUP messages. The subscriber interfaces are not covered here and are only listed for a better understanding.

  A subscriber     telco switch A    telco switch B     B subscriber
 Off hook
       Dial digits --->
                             -- IAM -->
                                                 -Ringing ->
                             <-- ACM --                    Off hook
                             <-- ANM --
 -----------------------    Conversation    -----------------------
 On hook                     -- REL -->                  On hook
                             <-- RLC --

Detailed call flows are provided in ITU-T Recommendation Q.784.1.

Below is a detailed exchange of ISUP messages involving two ISDN telecom switches. The report was from an Alcatel S12 digital switch.

    BENIN             2005-07-15  16:49:16  FR      
                            00121  00000000   G159CA01   L6X8AA47    
    SWA-ORJ-OBSERVATION                                             
                                                                   SYSTEM REPORT
       -------------------------------------------------------------------------
       OBSERVATION/CALL SAMPLING                                    SUCCESSFUL
       -----------------------------------------------------------------------
       TYPE OF OBSERVATION: ORIGINATING
       DATE            = 2005-07-15        TIME = 16:48:23:09
       CALLING DN      = 52250000
       CALLING CAT     = PRIORITY SUBSC 
       INC EQ NBR      = H'31   & 1    
       RCVD DIGITS     = 012625729                                           
       CALLED DN       = 012625729                   
       OTG TRNKGRP     = LAGOS_SC        
       OTG EQ NBR      = H'1111 & 16   
       BEARER          = AUDIO31 
       XFER MODE       = CIRCUIT SWITCHED
       CAUSE           = NORMALUN
       TERM SEIZED     = 0: 0: 2: 3
       THROUGH SWITCH  = 0: 0: 4: 3
       ANSWER          = 0: 0:14: 6
       RELEASE         = 0: 0:46: 3
       
       TAXATION INFO
       ------------- 
       CHARGED DN      = 52250000
       CALL DURATION   = 0: 0:31: 6
       COUNTS          = 2    
       TARIFF GRP      = 4                    TARIFF ID      = 7  
       RATE            = 20                   RANDOM CNT     = 0    
       SURCH UNITS     = 0                    CAT UNITS      = 0  
       TARIFF REG      = 1    
       
       RECEIVER SZD    = 0: 0: 0: 0      RECEIVER RLSD  = 0: 0: 4: 2
       REC EQ NBR      = H'13   & 6       REC RLS INFO   = FORCED RLSE   
       
       REC SIGNAL           DIRECTION          TIME
       -------------        ---------          ---- 
       REG-I-10             RECEIVED        0: 0: 1: 3
       REG-I-1              RECEIVED        0: 0: 1: 6
       REG-I-2              RECEIVED        0: 0: 1: 8
       REG-I-6              RECEIVED        0: 0: 2: 1
       REG-I-2              RECEIVED        0: 0: 2: 3
       REG-I-5              RECEIVED        0: 0: 2: 5
       REG-I-7              RECEIVED        0: 0: 3: 0
       REG-I-2              RECEIVED        0: 0: 3: 3
       REG-I-9              RECEIVED        0: 0: 3: 7
       
       INC SIG TYPE    = ANALOG-SUBSCR   
       
          SIGNAL            DIRECTION          TIME
       -------------        ---------          ---- 
       SEIZURE              RECEIVED        0: 0: 0: 0
       DIAL-TONE            SENT            0: 0: 0: 0
       CLEAR-FW-FW          RECEIVED        0: 0:46: 1
       
       OTG SIG TYPE    = ISUP-NAT        
       
         MESSAGE            DIRECTION          TIME            LENGTH
       -------------        ---------          ----            ------ 
       
       IAM                  SENT            0: 0: 2: 3            29
       
       85014040007000010020000B03020604019010620A0603132552000000      
                                                                       
       
       SAM                  SENT            0: 0: 2: 4            13
       
       85014040007000020200028002                                      
                                                                       
       
       SAM                  SENT            0: 0: 2: 6            13
       
       85014040007000020200028005                                      
                                                                       
       
       SAM                  SENT            0: 0: 3: 1            13
       
       85014040007000020200028007                                      
                                                                       
       
       SAM                  SENT            0: 0: 3: 4            13
       
       85014040007000020200028002                                      
                                                                       
       
       SAM                  SENT            0: 0: 3: 8            13
       
       85014040007000020200028009                                      
                                                                       
       
       ACM                  RECEIVED        0: 0: 4: 1            15
       
       850141000070000616040129010100                                  
                                                                       
       
       ANM                  RECEIVED        0: 0:14: 6            18
       
       8501410000700009012D02000039022DC000                            
                                                                       
       
       SUS                  RECEIVED        0: 0:45: 4            10
       
       850141000070000D0100                                            
                                                                       
       
       REL                  SENT            0: 0:46: 1            13
       
       850140400070000C020002849F                                      
                                                                       
       
       RLC                  RECEIVED        0: 0:46: 3             9
       
       850141000070001000                                              
                                                                       
       UNSOLICITED REPORT   NO = 00121

Cause codes 
Release cause codes are used to identify and debug any events occurring in ISDN User Part signaling. Every event in ISUP signaling generates a cause code number. Even for a normal ISUP call, a cause code is generated. There are lot of applications developed based on the cause code from ISUP signaling. Similarly Telecom operators trace for Causecodes to debug any call failures.

Following are the list of cause codes used. Cause codes only defined by number are effectively undefined, and may be used for proprietary solutions.

 Unallocated (unassigned) number
 No route to specific transit network
 No route to destination
 Send special info tone
 Misdialed trunk prefix
 Channel unacceptable
 Call awarded and being delivered in established channel
 Preemption
 Preemption – circuit reserved for reuse
 10
 11
 12
 Suspend
 Resume
 15
 Normal call clearing
 User busy
 No user responding
 No answer from user (user alerted)
 Subscriber absent
 Call rejected
 Number changed
 Redirect to new destination (unallocated destination number ANSI)
 Unknown business group (ANSI)
 Exchange routing error (ANSI)
 Non-selected user clearing
 Destination out of order
 Invalid number format
 Facility rejected
 Response to STATUS ENQUIRY
 Normal, unspecified
 32
 33
 No circuit/channel available
 35
 36
 37
 Network out of order
 Permanent frame mode connection out of service
 Permanent frame mode connection operational
 Temporary failure
 Switching equipment congestion
 Access information discarded
 Requested channel/circuit not available
 Preemption (ANSI)
 Precedence call blocked
 Resources unavailable, unspecified
 48
 Quality of service unavailable
 Requested facility not subscribed
 Call type incompatible with service request (ANSI)
 52
 Outgoing calls barred within CUG
 Call blocked due to group restrictions (ANSI)
 Incoming calls barred within CUG
 56
 Bearer capability not authorized
 Bearer capability not presently available
 59
 60
 61
 Inconsistency in designed outgoing access information and subscriber class
 Service or option not available, unspecified
 64
 Bearer capability not implemented
 Channel type not implemented
 67
 68
 Requested facility not implemented
 Only restricted digital bearer capability is available
 71
 72
 73
 74
 75
 76
 77
 78
 Service or option not implemented, unspecified
 80
 Invalid call reference value
 Identified channel does not exist
 A suspended call exists, but this call identity does not
 Call identity in use
 No call suspended
 Call having the requested call identity has been cleared
 User not member of CUG
 Incompatible destination
 89
 Non-existing CUG
 Invalid transit network selection
 92
 93
 94
 Invalid message, unspecified
 Mandatory information element is missing
 Message type non-existing or not implemented
 Message incompatible with call state or message type non-existent or not implemented
 Information element non-existent or not implemented
 Invalid information element contents
 Message not compatible with call state
 Recovery on timer expiry
 Parameter non-existent or not implemented - passed on
 104
 105
 106
 107
 108
 109
 Message with unrecognized parameter discarded
 Protocol error, unspecified
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 Interworking, unspecified.

Message format 

The Signalling Information Field (SIF) for all ISUP Message Signal Units (MSU) contain the following components:
 Routing Label
 Circuit Identification Code
 Message Type
 Mandatory Fixed Part
 Mandatory Variable Part
 Optional Part

The Routing Label indicates the Point Codes of the originating and destination nodes in the network; it also includes the Signalling Link Selection field that is used to select between the multiple routes an MSU could take between two nodes.

The Circuit Identification Code is used to specify which trunk between two switches is used to carry a particular call. Note that some versions of ANSI ISUP permit a CIC with 14 significant bits instead of the 12 that are shown.
 The Message Type indicates the ISUP message type. The presence and form of the remaining 3 components are determined by this message type.
 The Mandatory fixed part, when present, contains the mandatory, fixed-length parameters associated with the message type.
 The Mandatory variable part, when present, contains the mandatory, variable-length parameters associated with the message type.
 The Optional part, when present, contains the optional parameters permitted to be included in the message type.

When sent using the services of the Signalling Connection Control Part, ISUP messages passed to SCCP in the User Data parameter (NSDU) consist of only the last 4 components (Message Type, Mandatory fixed part, Mandatory variable part, Optional part). The routing label and circuit identification code are not included in the user data passed to SCCP.

See also 
 Integrated Services Digital Network (ISDN)
 Q.931 Cause Codes

Notes

References

Bibliography 
 .
 .
 .

Signaling System 7
Integrated Services Digital Network
Application layer protocols