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
screening, number portability, etc.
SS7 is the foundation for Intelligent
Network (IN) services.
Internet Telephony 2
The Telephone Network [1/2]
SS7 Signaling
Service Service
ISUP Messages +
Control Data
INAP/TCAP Messages Point Point
Signal
Transfer Control Layer
Point
Intelligent Transport Layer
Peripheral
Class 4
Class 5
Tandem Switch
End Office Switch
Circuit Switched Network
Internet Telephony 3
The Telephone Network [2/2]
5 Basic Components in Intelligent Networks
SSP/Service Switching Point
switching, service invocation
STP/Service Transfer Point
SCP SDP
signal routing TCAP messages
SCP SDP
SCP/Service Control Point IP
IP STP
STP
STP
STP
service logic execution
SDP/Service Data Point SSP
SSP ISUP messages SSP
SSP
subscriber data storage, access Voice
IP/Intelligent Peripheral
resources such as customized voice announcement,
voice recognition, DTMF digit collection
Internet Telephony 4
SS7 Protocol Suite
OSI Layers
Application INAP MAP
Presentation
Session TCAP ISUP
Transport SCCP
Network MTP Level 3
Data Link MTP Level 2
Physical MTP Level 1
Internet Telephony 5
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
Internet Telephony 6
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
Internet Telephony 7
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)
To initiate call disconnection
Internet Telephony 8
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
Internet Telephony 9
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)
Internet Telephony 10
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.
Internet Telephony 11
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
Internet Telephony 12
Signal Transfer Point (STP)
To transfer messages from one SPC to another
Internet Telephony 13
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
Internet Telephony 14
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.
SIGTRAN (Signaling Transport) group
of IETF
Internet Telephony 16
Softswitch Architecture
SS7 Network
Internet
Signaling
SCP
(SS7) MGCP/
Gateway SIGTRAN Call MEGACO
STP Agent
MGCP/
MEGACO
Trunking Residential
Trunking
Gateway Residential
Gateway
CO Trunking RTP Residential
Gateway
Gateway
Switch Gateway Gateway
Internet Telephony 17
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 ???
Internet Telephony 18
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
RFC 2719, “Framework Architecture for
Signaling Transport”
Internet Telephony 20
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.
Internet Telephony 21
ISUP Transport to MGC
NIF (Nodal Interworking Function) is responsible for
inetworking between the SS7 and IP networks
Internet Telephony 22
SIGTRAN Protocol Stack
SCTP: fast delivery of messages (error-free, in sequence
delivery), network-level fault tolerance
Internet Telephony 23
Adaptation Layer [1/3]
M2UA (MTP-2 User Adaptation Layer)
Internet Telephony 24
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.
Internet Telephony 25
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)
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.
Internet Telephony 27
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,
such as SYN attacks.
Internet Telephony 28
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.
Internet Telephony 29
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
one SCTP association.
Internet Telephony 30
Multi-Homed Host
Host A Host B
SCTP User SCTP User
SCTP SCTP
One IP address One IP address One IP address
One SCTP association with
multi-homed redundant
Internet Telephony 31
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.
Internet Telephony 32
SCTP Functional View
SCTP User Application
Sequenced delivery
Association within streams
startup
and
User Data Fragmentation
takedown
Acknowledgement
and
Congestion Avoidance
Chunk Bundling
Packet Validation
Path Management
Internet Telephony 33
SCTP Packets & Chunks
A SCTP packet can comprise several chunks.
Chunk
Data or control
0 . . . 15 16 . . . 31
Source Port Number Destination Port Number
Common
Header Verification Tag
Checksum
Chunk Type Chunk Flags Chunk Length
Chunk 1
Chunk Value
Chunk N . . .
Internet Telephony 34
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
Internet Telephony 35
INIT Chunk
0 . . . 15 16 . . . 31
Type = 1 Chunk Flags Chunk Length
Initial Flag
Advertised Receiver Window Credit (a_rwnd)
Number of Outbound Streams Number of Inbound Streams
Initial TSN (Transmission Sequence Number)
Optional / Variable-Length Parameter
. . .
Internet Telephony 36
Association Establishment
INIT [I-Tag=Tag_A]
INIT ACK [V-Tag=Tag_A, I-Tag=Tag_Z, Cookie_Z]
A COOKIE [Cookie_Z] Z
COOKIE ACK
allocating
resources
Internet Telephony 37
User Data Transfer
User Messages
SCTP user
SCTP DATA Chunks SCTP Control Chunks
SCTP packets
SCTP
Connectionless Packet Transfer Service (e.g. IP)
Internet Telephony 38
DATA Chunk
0 . . . 15 16 . . . 31
Type = 0 Reserved UB E Chunk Length
TSN
Stream ID = S Stream Sequence Number = n
Payload Protocol ID
User Data (Sequence n of Stream S)
. . .
U : unordered
B : begin
E : end
Internet Telephony 39
SACK Chunk
0 . . . 15 16 . . . 31
Type = 3 Chunk Flags Chunk Length
Cumulative TSN Ack
Advertised Receiver Window Credit (a_rwnd)
Number of Gap Ack Blocks = n Number of Duplicate TSNs = x
Gap Ack Block #1 Start Gap Ack Block #1 End
. . .
Duplicate TSN #1
. . .
Internet Telephony 40
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
Internet Telephony 41