What is Message Transfer Part(MTP) Protocol

What is MTP or Message Transfer Part(MTP) Protocol?

MTP(Message Transfer part) is the protocol which contains in GSM SS7 protocol stack and mapped  in 3 different layers .

  1. Physical layer-MTP1
  2. Data Link-MTP2
  3. Network layer-MTP3

MTP Level 1:

The lowest level, MTP(Message Transfer Part) Level 1, is equivalent to the OSI Physical Layer. MTP(Message Transfer Part) Level 1 defines the physical, electrical and functional characteristics of the digital signaling link. Physical interfaces defined include E-1 (2048 kbps; 3264 kbps ), DS-1 (1544 kbps ; 2464 kbps ), V.35 (64 kbps ), DS-0 (64 kbps) and DS-0A (56 kbps).

MTP Level 2 :

MTP(Message Transfer Part) Level 2 ensures accurate end-to-end transmission of a message cross a signaling link. Level 2 implements flow control, message sequence validation and error checking. When an error occurs on a signaling link, the message (or set of messages) is re transmitted. MTP(Message Transfer Part) Level 2 is equivalent to the OSI Data Link Layer.

An SS7 message is called a signal unit (SU). There are three kinds of signal units:

  1. FISU – Fill-In Signal Unit
  2. LSSU – Link Status Signal Unit.
  3. MSU – Message Signal Unit

FISU – Its a lowest Level Signal Unit, Its generated automatically in both directions on all links as traffic volume decreases. It Provides continuous Error Checking on signaling links when there are no MSUs. It allows SS7 network to maintain its reliability. It contains basic level 2 information only i.e. acknowledgment of signal unit receipt by a remote signaling point.


  • Check Sum – It is calculated from the transmitted message by the transmitting signaling point & inserted in the message. On receipt it is recalculated by receiving signaling point. If not the same, the message is corrupt & re transmission is requested.
  • Spare – Used as a filler since the LI only uses 6 of the possible 8 bits.
  • LI – Indicates length of Signaling Unit (SU). FISU LI=0, LSSU LI=1 or 2, MSU LI=3 to 63. If MSU is larger than 63 octets (bytes) it will not be indicted, max.273 octets.
  • FIB – Used in error recovery like BIB, When messages are transmitted in error, & the BIB has changed from 1 to 0 or 0 to 1, the FIB will change to match the BIB, when corrupted messages have been successfully retransmitted. If there are no error message, BIB & FIB will have the same value 0 or 1.
  • FSN – Contained the sequence number of a transmitted SU, can be between 0-127, or 128 possible SUs in transmit buffer.
  • BIB – Indicates the negative acknowledgment, if the bit does not match the FIB bit value, either 0 or 1.
  • BSN – Used to confirm the receipt of SUs & to ensure they are received in the order they were transmitted. The BSN value will match that of the last successfully received SUs FSN. Value can be 0-127 or 128 possible SUs in received buffer.
  • Flag – It act as a delimiter for SUs. A flag marks the end of the SU & the start of the next SU, Always looks like 01111110.

LSSU – It is used to control Link Alignment. It contains one or two octets of link status information. It indicates the status of a signaling point (e.g. local processor outage) to the remote signaling point.

It has one unique field, the Status Field (SF). The SF can have any one of the six different status indications, those are.

  1. Busy (SIB) – Level 2 is busy, or congested at transmitting signaling point(SP). A SP will suspend MSUs when it receives a busy LSSU. If the condition lasts 3-6 sec, Level 3 will be informed of a link failure & begin alignment process.
  2. Processor Outage (SIPO) – Transmitting signaling point cannot communicate with Level 3 & 4, possible due to a CPU or total nodal failure. or being manually taken out of service with the canc-slk
  3. Out of Service (SIOS) – SP cannot transmit or receives any MSUs for the reason other than processor outage. Upon receipt of an SIOS the receiving SP stops the transmission of MSUs &begin transmitting FISUs. It is also sent at the beginning of the alignment process.
  4. Out of Alignment (SIO) – Sent when a link has failed, is restored & alignment procedure has been initiated, but proving period parameters have not been met.
  5. Normal Alignment (SIN) – Procedure used when there is more than one SLK in the affected linkset. During the alignment process, the slk is looking for 4 successfull normal alignment LSSUs in a 2.3sec. proving period, if it fails it goes out of alignment again.
  6. Emergency Alignment (SIE) – Procedure used when there is only 1 slk in a linkset. During the alignment process, the slk is looking for 1 successful emergency alignment LSSU in a 0.6sec. proving period.

MSU – It is used for Call Control, Database query & response, Network Management, Network Maintenance, Routing Labels which consists of an Origination & a Destination point It provides the structure for transmitting all messages types such as ISUP, TUP, TCAP, MAP.It has 2 unique fields –


Service Information Octet (SIO) – It tells level 4 the type of service requested & the type of network message, & the priority of the MSU.

The Service Indicator field tells :-

  • Value 0 – indicates a signaling network management message.
  • Value 1 – indicates a signaling network test & maintenance message.
  • Value 2 – indicates a special signaling network test & maintenance message.
  • Value 3 – indicates a SCCP message.
  • Value 4 – indicates a TUP message.
  • Value 5 – indicates a ISUP message.

The Network type is 2 Bits :

  • Value 0 – indicates an International Network.
  • Value 1 – indicates a National Network.

The message priority is 2 Bits:

Message priority values are from 0-3

  • Value 0 – indicates Lowest Priority Message.
  • Value 3 – indicates Highest Priority Message.

Signaling Information Field (SIF) – It has

  • The Routing Label of the message (OPC / DPC).
  • A Signaling Link Selector (SLS), used to distribute traffic over multiple signaling links within a linkset if available.

MTP Level 3:

 MTP3 provides message routing between signaling points in the SS7 network. It is equivalent in function to the OSI Network Layer.MTP3 routes messages based on the routing label in the signaling information field (SIF) of message signal units. The routing label is comprised of the destination point code (DPC), originating point code (OPC) and signaling link selection (SLS) field. Point codes are numeric addresses that uniquely identify each signaling point in the SS7 network. When the destination point code in a message indicates the receiving signaling point, the message is distributed to the appropriate user part (e.g., ISUP or SCCP) indicated by the service indicator in the SIO. Messages destined for other signaling points are transferred provided that the receiving signaling point has message transfer capabilities (like an STP).The selection of outgoing link is based on information in the DPC and SLS.


An ANSI routing label uses seven octets; an ITU-T routing label uses four octets .ANSI point codes use 24 bits (three octets); ITU-T point codes typically use 14 bits. For this reason,signaling information exchanged between ANSI and ITU-T networks must be routed through a gateway STP, protocol converter or other signaling point that has both an ANSI and an ITU-T point code.


An ANSI point code consists of network, cluster and member octets (e.g., 245-16-0). An octet is an 8-bit byte that can contain any value between zero and 255.Network number zero is not used; network number 255 is reserved for future use.

ITU-T point codes are pure binary numbers, which may be stated in terms of zone, area/network and signaling point identification numbers. For example, the point code 5557 (decimal) may be stated as 2-182-5 (binary 010 10110110 101).

Signaling Link Selection (SLS):

 The selection of outgoing link is based on information in the DPC and Signaling Link Selection (SLS) field.

SLS is used to:

  • Ensure message sequencing. Any two messages sent with the same SLS will always arrive at the destination in the same order in which they were originally sent.
  • Allow equal load sharing of traffic among all available links. In theory, if a user part sends messages at regular intervals and assigns the SLS values in a round-robin fashion, the traffic level should be equal among all links (within the combined link-set) to that destination.

In ANSI networks, the size of the SLS field was originally five bits (32 values). In configurations with two links in each link-set of a combined link-set (totaling four links), eight SLS values were assigned to each link to allow an equal balance of traffic.

In ITU-T implementations, the SLS is interpreted as the signaling link code in MTP messages. In ITU-T Telephone User Part (TUP) message, a portion of the circuit identification code is stored in the SLS field. MTP Level 3 re-routes traffic away from failed links and signaling points and controls traffic when congestion occurs. However, a detailed discussion of this topic is outside the scope of this tutorial. MTP Levels 2 and 1 can be replaced by ATM (Asynchronous Transfer Mode), a simple broadband protocol that uses fixed-length 53 octet cells. MTP Level 3 interfaces to ATM using the Signaling ATM Adaptation Layer (SAAL).



Be the first to reply

Leave a Reply

Your email address will not be published. Required fields are marked *