Configure MTP3

From Yate Documentation
Jump to: navigation, search

MTP3 is associated to the Signalling Link Functional Level in MTP. It is used to route transport signalling messages between the SS7 endpoints in a SS7 network. It also provides network management and controls traffic when congestion occurs. When a MTP2 data link is no longer available it establishes alternative links and re-routes traffic away from failed links and signaling points and propagates information about route availability through the network.

Each network element in a SS7 network is uniquely identified by a Point Code (PC). The routing of the messages is performed according to the point code.

There are 2 types of nodes:

  • Signaling End Point (SEP) - uses MTP to communicate with other SEPs (telecom switches)
  • Signaling Transfer Point (STP) - only performs MTP message routing functionalities

Contents

Usage

MTP3 can be used over the following data links:

  • M2PA
  • MTP2
  • M2UA
  • Cisco SLT

Example for MTP3 configuration having two data links: a M2PA and a MTP2 link.
Mtp3.png

Protocol in YATE

Implementation

MTP3 implementation in YATE is located in ysig library. The methods declaration is in libs/ysig/yatesig.h and the implementation in libs/ysig/layer3.cpp. Class name is SS7MTP3.

Interconnection

MTP3 can be used over MTP2, M2PA, M2UA and Cisco SLT.

Configuration

Example ysigchan.conf

[mtp3]
type=ss7-mtp3
netind2pctype=ITU
netindicator=national
local=ITU,0-0-6
adjacent=ITU,0-0-5
link=m2pa
link=mtp2

;
[m2pa]
type=ss7-m2pa
sig=sctp-m2pa

[mtp2]
type=ss7-mtp2
autostart=yes
emergency=yes
autoemergency=yes
sig=wanpipe1
filllink=no
Note: According to standards filllink should be 'yes'. We usually set it to 'no' because most of the times the underlying layers don't have support for it (unless when support was added in the hardware and then it's ok to configure filllink='yes').

In wpcard.conf

[wanpipe1]
type=E1
siggroup=w1g1
voicegroup=w1g2

And in sigtransport.conf we define the referenced transport sctp-m2pa:

[sctp-m2pa]
type=sctp
stream=false
local=192.168.168.156:5050
remote=192.168.168.200:6999

From sample ysigchan.conf file:

; Example of a SS7 MTP3 network (linkset)
;[linkset1]
; type: keyword: Specify the linkset type
; Allowed values:
;  ss7-mtp3:      SS7 Message Transfer Part - Layer 3
;type=ss7-mtp3
;
; netind2pctype: string: Comma separated list of point code types used to map an
;  incoming network indicator to a specific point code type
; This option is required and is used to configure a SS7 MTP3 network
; The list must contain either a singe type or 4 values indicating the point
;  code type for International, SpareInternational, National and ReservedNational
;  network indicators
; If only a single type is specified it will be used to configure all types of
;  network indicators
; See the ISUP pointcodetype option for allowed values
; NOTE: An incoming packet with an unconfigured network indicator will be dropped
; Examples:
;  netind2pctype=ITU
;  netind2pctype=ITU,ANSI,ITU,ITU
;  netind2pctype=ANSI8,ITU,ANSI,ITU
;netind2pctype=
;
; netindicator: keyword: Default value of Network Indicator bits
; Allowed values: international, spareinternational, national, reservednational
;netindicator=national
;
; route: string: Build a destination route for the SS7 network
; The format of this option is pointcodetype,label,priority,shift,size
; This parameter can be repeated to build multiple destination routes
; The network will notify the router about its destination(s) and priority
;
; If not specified the priority is 100. A zero priority creates an adjacent route
;
; Shift SLS right shift when selecting linkset.
;  For example for 2 links shift = 1.
;  A value of 8 or higher disables load balancing.
;
; Size represents the maximum MSU size that can be transported on this route.
; The default vaue is 272 -> maximum MSU size on TDM.
; If the route can transport more data, a value up to 4000 should be set to
;  avoid SCCP message fragmentation.
;
; Example: route=ITU,2-2-2,100,1,272
;route=
; adjacent: string: Build an adjacent route for the SS7 network (A, E and F links)
; The format of this option is pointcodetype,label,size
; This parameter can be repeated to declare multiple adjacent routers
; The network will notify the router about its destination(s) and priority
;
; The priority is always zero so an adjacent route will always match first.
;
; Size represents the maximum MSU size that can be transported on this route.
; The default vaue is 272 -> maximum MSU size on TDM.
; If the route can transport more data, a value up to 4000 should be set to
;  avoid SCCP message fragmentation
;
; Example: adjacent=ANSI,40-50-60,272
;adjacent=
;
; local: string: Declare a local pointcode for the SS7 network
; The format of this option is pointcodetype,label
; This parameter can be repeated to declare a local point codes per type
; To be standards compliant at least one local pointcode must be declared
; Example: local=ITU,2-2-4
;local=
;
; allowed: string: List of point codes explicitely allowed from this SS7 network
; An empty or missing list will allow access to all known routes
; Example: allowed=ITU,2-2-2,2-2-3,1001,2001,2002
;allowed=
;
; router: string: Name of the SS7 Router to attach to
; A boolean false value disables attaching a router (unlikely)
; If no router is attached only a single User Part can be connected
;router=ss7router
;
; link: string: Name of a SS7 Layer 2 link to create in the linkset
; This parameter can be repeated to add more links to the linkset
; An explicit SLS can be provided after a comma
; Example: link=mtp2_to_hq,3
;link=
;
; slcshift: bool: Shift right once SLS to obtain desired SLC
; This may be desirable for ISUP traffic when controlling only odd or even CICs
;slcshift=false
;
; autostart: bool: Automatically enable the linkset at startup
; This should be enabled (default) for normal operation
;autostart=yes
;
; checklinks: boolean: Check that the links answer to maintenance messages
;  (SLTM/SLTA) before placing them into service (normal behavior)
;checklinks=true
;
; forcealign: boolean: Realign links that are no longer responding to SLTM
;forcealign=true
;
; checkfails: integer: Interval in msec for resending SLTM messages (Q.707 T1)
; A value of zero disables link fail else the value is clamped between 4s - 12s
;checkfails=5000
;
; maintenance: integer: Interval in msec for sending SLTM messages (Q.707 T2)
; A value of zero disables periodic SLTM else it is clamped to range 30s - 5m
;maintenance=60000
;
; layer3dump: string: Filename to dump MTP3 packets to
;layer3dump=

Status

To find the status of a MTPS linkset you can run the command "status sig linksetname" from rmanager.
Example: "status sig ls_stp" (for linkset configured above)

Control

MTP3 linkset control commands:

Show control MTP3_LINKSET_NAME show Show linkset status
Pause control MTP3_LINKSET_NAME pause Pause message delivery for linkset
Resume control MTP3_LINKSET_NAME resume Resume message delivery for linkset
Restart control MTP3_LINKSET_NAME restart


See also:

Personal tools
Namespaces

Variants
Actions
Preface
Configuration
Administrators
Developers