VoIP and SS7
Chapter 7
Introduction
Channel Associated Signaling
Still widely deployed today
Considered as old telephony
Common Channel Signaling
Separation of signaling and call paths
Signaling System 7 (SS7)
To enable a wide range of services to be provided to the end-user
Caller ID, toll-free calling, call
3 Internet Telephony
Class 5
End Office Switch
The Telephone Network [1/2]
Circuit Switched Network
Intelligent Peripheral
Signal Transfer Point
Service Control Point
Class 4
Tandem Switch
Service Data Point +
Transport Layer Control Layer SS7 Signaling
ISUP Messages
INAP/TCAP Messages
The Telephone Network [2/2]
5 Basic Components in Intelligent Networks
SSP/Service Switching Point
switching, service invocation
STP/Service Transfer Point
signal routing
SCP/Service Control Point
service logic execution
SDP/Service Data Point
subscriber data storage, access
IP/Intelligent Peripheral
SSPSSP
SCPSCP SDPSDP
STPSTP IPIP
SSPSSP STPSTP
TCAP messages
ISUP messages Voice
5 Internet Telephony
SS7 Protocol Suite
TCAP ISUP SCCP
MAP
MTP Level 3 MTP Level 2 MTP Level 1
OSI Layers Application Presentation
Session Transport
Network
Data Link Physical
INAP
MTP Levels 1 & 2
Message Transfer Part
Level 1
Handling the issues related to the signals on the physical links between one signaling node and another
Level 2
Dealing with the transfer of messages on a given link from one node to another
Providing error detection/correction and sequenced delivery of the SS7 messages
7 Internet Telephony
MTP Level 3
Signaling message handling
Providing message routing between signaling points in the SS7 network
Signaling network management
Rerouting traffic to other SS7 signaling links in the case of link failure, congestion or node failure
Load-sharing
ISUP
ISDN User Part
Used as the protocol for setting up and
tearing down phone calls between switches
Initial Address Message (IAM)
To initiate a call between two switches
Answer Message (ANM)
To indicate that a call has been accepted by the called party
Release Message (REL)
9 Internet Telephony
SCCP
Signaling Connection Control Part
Used as the transport layer for TCAP-based services
freephone (800/888), calling card, wireless roaming
Both connection-oriented and connectionless
Mostly connectionless signaling
Global title translation (GTT) capabilities
The destination signaling point and subsystem number is determined from the global title
TCAP, MAP and INAP
TCAP (Transaction Capabilities Applications Part)
Supporting the exchange of non-circuit related information between signaling points
Queries and responses sent between SSPs and SCPs are carried in TCAP messages
INAP (IN Application Part)
MAP (Mobile Application Part)
11 Internet Telephony
SS7 Network Architecture
Figure 7-4 depicts a typical SS7 network arrangement.
This configuration serves several purposes.
A fully meshed signaling network is not required.
The quad arrangement ensures great robustness.
Signaling Point (SP)
Each node in an SS7 network is an SP.
The signaling address of the SP is known as a signaling point code (SPC).
Linkset
Group of signaling links directly connecting two SPCs
For capability and security reasons
13 Internet Telephony
Signal Transfer Point (STP)
To transfer messages from one SPC to another
Service Control Point (SCP)
A network entity that contains additional logic and that can be used to offer advanced
services
The switch sends a message to the SCP asking for instructions.
The SCP, based upon data and service logic that is available, will tell the switch which actions need to be taken.
An good example – toll-free 800 number
ISUP Call Establishment and Release
• A given circuit between two switches is identified by OPC, DPC and CIC.
Performance Requirements for SS7
Long-distance VoIP network
A given route set should not be out of service for more than 10 minutes per year.
No more than 1x10-7 messages should be lost.
No more than 1x10-10 messages should be delivered out of sequence.
In ISUP, numerous timing requirements must be met.
How to make sure that VoIP networks can emulate the signaling performance of SS7.
17 Internet Telephony
Softswitch Architecture
Signaling (SS7) Gateway
Trunking Gateway
Call Agent SCP
Residential Gateway
Internet
SS7 Network
STP
Trunking GatewayTrunking
Gateway CO
Switch
Residential GatewayResidential
Gateway MGCP/
MEGACO
MGCP/
MEGACO
RTP
SIGTRAN
Signaling Transport (SIGTRAN)
Addressing the issues regarding the transport of signaling within IP networks
The issues related to signaling performance within IP networks and the interworking with PSTN
SIP/MEGACO/ISUP Interworking
Translating the MTP-based SS7 message (e.g., IAM) to IP-based message (e.g., IP IAM)
Just a simple translation from point code to IP address ???
SIGTRAN
Issues discussed in SIGTRAN
Address translation
How can we deploy an SS7 application (e.g., ISUP) that expects certain services from lower layers
such as MTP when lower layers do not exist in the IP network?
For transport layer, the ISUP message must be
carried in the IP network with the same speed and reliability as in the SS7.
UDP x
TCP x
21 Internet Telephony
SIGTRAN Architecture
Signaling over standard IP uses a common transport protocol that ensures reliable signaling delivery.
Error-free and in-sequence
Stream Control Transmission Protocol (SCTP)
An adaptation layer is used to support specific primitives as required by a particular signaling application.
The standard SS7 applications (e.g., ISUP) do not realize that the underlying transport is IP.
ISUP Transport to MGC
NIF (Nodal Interworking Function) is responsible for inetworking between the SS7 and IP networks
23 Internet Telephony
SIGTRAN Protocol Stack
SCTP: fast delivery of messages (error-free, in sequence delivery), network-level fault tolerance
Adaptation Layer [1/3]
M2UA (MTP-2 User Adaptation Layer)
25 Internet Telephony
Adaptation Layer [2/3]
M2PA (MTP-2 Peer-to-Peer Adaptation Layer)
An SG that utilizes M2PA is a signaling node for the MGC.
It is effectively an IP-based STP.
SG can processing higher-layer signaling functions, such as SCCP GTT.
Adaptation Layer [3/3]
M3UA (MTP3-User Adaptation Layer)
SUA (SCCP-User Adaptation Layer)
Applications such as TCAP use the services of SUA.
IUA (ISDN Q.921-User Adaptation Layer)
V5UA (V5.2-User Adaptation Layer)
27 Internet Telephony
SCTP
To offer the fast transmission and reliability required for signaling carrying.
SCTP provides a number of functions that are critical for telephony signaling transport.
It can potentially benefit other applications needing transport with additional performance and reliability.
SCTP must meet the Functional Requirements
of SIGTRAN.
Why not use TCP?
TCP provides both reliable data transfer and strict order-of-transmission, but SS7 may not need ordering.
TCP will cause delay for supporting order-of- transmission.
The limited scope of TCP sockets complicates the task of data transmission using multi-
homed hosts.
TCP is relatively vulnerable to DoS attack,
29 Internet Telephony
What Supported By Using SCTP?
To ensure reliable, error-free, in-sequence delivery of user messages (optional).
To support fast delivery of messages and avoid head-of-line blocking.
To support network-level fault tolerance that is critical for carrier-grade network
performance by using multi-home hosts.
To provide protection against DoS attack by
using 4-way handshake and cookie.
SCTP Endpoint & Association
Endpoint
The logical sender/receiver of SCTP packets.
Transport address = IP address + SCTP port number
An endpoint may have multiple transport
addresses (for multi-homed host, all transport addresses must use the same port number.)
Association
A protocol relationship between SCTP endpoints.
Two SCTP endpoints MUST NOT have more than
31 Internet Telephony
Multi-Homed Host
Host A
SCTP User
Host B
One IP address
One SCTP association with multi-homed redundant
SCTP
SCTP User SCTP
One IP address One IP address
SCTP Streams
A stream is a one-way logical channel between SCTP endpoints.
The number of streams supported in an
association is specified during the establishment of the association.
To avoid head-of-line blocking and to ensure in-sequence delivery
In-sequence delivery is ensured within a single stream.
33 Internet Telephony
SCTP Functional View
SCTP User Application
Acknowledgement and
Congestion Avoidance Chunk Bundling Packet Validation Path Management Association
startup and takedown
Sequenced delivery within streams
User Data Fragmentation
SCTP Packets & Chunks
A SCTP packet can comprise several chunks.
Chunk
Data or control
Source Port Number Destination Port Number Verification Tag
Checksum
Chunk Type Chunk Flags Chunk Length
Chunk Value
Common Header
Chunk 1
0 . . . 15 16 . . . 31
35 Internet Telephony
Chunk Type
ID Value Chunk Type
--- ---
0 - Payload Data (DATA)
1 - Initiation (INIT)
2 - Initiation Acknowledgement (INIT ACK)
3 - Selective Acknowledgement (SACK)
4 - Heartbeat Request (HEARTBEAT)
5 - Heartbeat Acknowledgement (HEARTBEAT ACK)
6 - Abort (ABORT)
7 - Shutdown (SHUTDOWN)
8 - Shutdown Acknowledgement (SHUTDOWN ACK)
9 - Operation Error (ERROR)
10 - State Cookie (COOKIE ECHO)
11 - Cookie Acknowledgement (COOKIE ACK)
12 - Reserved for Explicit Congestion Notification Echo (ECNE)
13 - Reserved for Congestion Window Reduced (CWR)
14 - Shutdown Complete (SHUTDOWN COMPLETE)
… - Reserved for IETF
INIT Chunk
Advertised Receiver Window Credit (a_rwnd) Number of Outbound Streams
Type = 1 Chunk Flags Chunk Length
Initial TSN (Transmission Sequence Number)
. . .
0 . . . 15 16 . . . 31
Initial Flag
Number of Inbound Streams
Optional / Variable-Length Parameter
37 Internet Telephony
Association Establishment
A Z
INIT [I-Tag=Tag_A]
INIT ACK [V-Tag=Tag_A, I-Tag=Tag_Z, Cookie_Z]
COOKIE [Cookie_Z]
COOKIE ACK
allocating resources
User Data Transfer
SCTP user
SCTP Control Chunks
SCTP
SCTP DATA Chunks
User Messages
SCTP packets
39 Internet Telephony
DATA Chunk
Stream ID = S
Type = 0 Reserved Chunk Length
Payload Protocol ID
. . .
0 . . . 15 16 . . . 31
TSN
Stream Sequence Number = n
User Data (Sequence n of Stream S) U B E
U : unordered B : begin E : end
SACK Chunk
Advertised Receiver Window Credit (a_rwnd) Number of Gap Ack Blocks = n
Type = 3 Chunk Flags Chunk Length
0 . . . 15 16 . . . 31
Cumulative TSN Ack
Number of Duplicate TSNs = x Gap Ack Block #1 Start Gap Ack Block #1 End
. . . . . .
Duplicate TSN #1
41 Internet Telephony
SCTP Robustness
Robustness is a key characteristic of any carrier- grade network.
To handle a certain amount of failure in the network without a significant reduction in quality
INIT and INIT ACK chunks may optionally include one or more IP addresses (a primary address + several secondary addresses).
Multi-homes hosts
SCTP ensures that endpoint is aware of the reachability of another endpoint through the following mechanisms.
SACK chunks if DATA chunk have been sent
HEARTBEAT chunks if an association is idle