voip and ss7 - ntuacpang/course/voip... · for capability and security reasons. internet telephony...
TRANSCRIPT
VoIP and SS7
Chapter 7
2Internet Telephony
Introduction
Channel Associated SignalingStill widely deployed todayConsidered as old telephony
Common Channel SignalingSeparation of signaling and call pathsSignaling System 7 (SS7)
To enable a wide range of services to be provided to the end-userCaller ID, toll-free calling, call screening, number portability, etc.SS7 is the foundation for Intelligent Network (IN) services.
3Internet 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 SignalingISUP MessagesINAP/TCAP Messages
4Internet Telephony
The Telephone Network [2/2]
5 Basic Components in Intelligent NetworksSSP/Service Switching Point
switching, service invocation
STP/Service Transfer Pointsignal routing
SCP/Service Control Pointservice logic execution
SDP/Service Data Pointsubscriber data storage, access
IP/Intelligent Peripheralresources such as customized voice announcement, voice recognition, DTMF digit collection
SSPSSP
SCPSCP SDPSDP
STPSTPIPIP
SSPSSP
STPSTP
TCAP messages
ISUP messages
Voice
5Internet Telephony
SS7 Protocol Suite
ISUPTCAP
SCCP
MAP
MTP Level 3
MTP Level 2
MTP Level 1
OSI Layers
Application
PresentationSession
Transport
Network
Data Link
Physical
INAP
6Internet Telephony
MTP Levels 1 & 2
Message Transfer PartLevel 1
Handling the issues related to the signals on the physical links between one signaling node and another
Level 2Dealing with the transfer of messages on a given link from one node to anotherProviding error detection/correction and sequenced delivery of the SS7 messages
7Internet Telephony
MTP Level 3
Signaling message handlingProviding message routing between signaling points in the SS7 network
Signaling network managementRerouting traffic to other SS7 signaling links in the case of link failure, congestion or node failureLoad-sharing
8Internet Telephony
ISUP
ISDN User PartUsed as the protocol for setting up and tearing down phone calls between switchesInitial 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
9Internet Telephony
SCCP
Signaling Connection Control PartUsed as the transport layer for TCAP-based services
freephone (800/888), calling card, wireless roaming
Both connection-oriented and connectionlessMostly connectionless signaling
Global title translation (GTT) capabilitiesThe destination signaling point and subsystem number is determined from the global title
10Internet Telephony
TCAP, MAP and INAP
TCAP (Transaction Capabilities Applications Part)
Supporting the exchange of non-circuit related information between signaling pointsQueries and responses sent between SSPs and SCPs are carried in TCAP messages
INAP (IN Application Part)MAP (Mobile Application Part)
11Internet 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.
12Internet Telephony
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 SPCsFor capability and security reasons
13Internet Telephony
Signal Transfer Point (STP)
To transfer messages from one SPC to another
14Internet Telephony
Service Control Point (SCP)
A network entity that contains additional logic and that can be used to offer advanced servicesThe 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.
16Internet Telephony
Performance Requirements for SS7
Long-distance VoIP networkA 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
17Internet Telephony
Softswitch Architecture
Signaling(SS7)
Gateway
TrunkingGateway
CallAgent
SCP
ResidentialGateway
InternetSS7 Network
STP
TrunkingGatewayTrunking
GatewayCO
Switch
ResidentialGatewayResidential
Gateway
MGCP/MEGACO
MGCP/MEGACO
RTP
SIGTRAN
18Internet Telephony
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 InterworkingTranslating 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 ???
20Internet Telephony
SIGTRAN
Issues discussed in SIGTRANAddress translationHow 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 xTCP x
RFC 2719, “Framework Architecture for Signaling Transport”
21Internet Telephony
SIGTRAN Architecture
Signaling over standard IP uses a common transport protocol that ensures reliable signaling delivery.
Error-free and in-sequenceStream 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.
22Internet Telephony
ISUP Transport to MGC
NIF (Nodal Interworking Function) is responsible for inetworking between the SS7 and IP networks
23Internet Telephony
SIGTRAN Protocol Stack
SCTP: fast delivery of messages (error-free, in sequence delivery), network-level fault tolerance
24Internet Telephony
Adaptation Layer [1/3]
M2UA (MTP-2 User Adaptation Layer)
25Internet 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)
27Internet 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.
28Internet Telephony
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.
29Internet 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.
30Internet Telephony
SCTP Endpoint & Association
EndpointThe logical sender/receiver of SCTP packets.Transport address = IP address + SCTP port numberAn endpoint may have multiple transport addresses (for multi-homed host, all transport addresses must use the same port number.)
AssociationA protocol relationship between SCTP endpoints.Two SCTP endpoints MUST NOT have more than one SCTP association.
31Internet Telephony
Multi-Homed Host
Host A
SCTP User
Host B
One IP address
One SCTP association withmulti-homed redundant
SCTP
SCTP User
SCTP
One IP address One IP address
32Internet Telephony
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.
33Internet Telephony
SCTP Functional View
SCTP User Application
Acknowledgementand
Congestion Avoidance
Chunk Bundling
Packet Validation
Path Management
Association startup
and takedown
Sequenced deliverywithin streams
User Data Fragmentation
34Internet Telephony
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
. . .
CommonHeader
Chunk 1
Chunk N
0 16 3115. . . . . .
35Internet Telephony
Chunk TypeID 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
36Internet Telephony
INIT Chunk
Advertised Receiver Window Credit (a_rwnd)
Number of Outbound Streams
Type = 1 Chunk Flags Chunk Length
Initial TSN (Transmission Sequence Number)
. . .
0 16 3115. . . . . .
Initial Flag
Number of Inbound Streams
Optional / Variable-Length Parameter
37Internet 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
38Internet Telephony
User Data Transfer
SCTP user
SCTP Control Chunks
SCTP
SCTP DATA Chunks
User Messages
SCTP packets
Connectionless Packet Transfer Service (e.g. IP)
39Internet Telephony
DATA Chunk
Stream ID = S
Type = 0 Reserved Chunk Length
Payload Protocol ID
. . .
0 16 3115. . . . . .
TSN
Stream Sequence Number = n
User Data (Sequence n of Stream S)
U B E
U : unorderedB : beginE : end
40Internet Telephony
SACK Chunk
Advertised Receiver Window Credit (a_rwnd)
Number of Gap Ack Blocks = n
Type = 3 Chunk Flags Chunk Length
0 16 3115. . . . . .
Cumulative TSN Ack
Number of Duplicate TSNs = x
Gap Ack Block #1 Start Gap Ack Block #1 End
. . .
. . .Duplicate TSN #1
41Internet 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 hostsSCTP ensures that endpoint is aware of the reachability of another endpoint through the following mechanisms.
SACK chunks if DATA chunk have been sentHEARTBEAT chunks if an association is idle