SS7 stands for Signaling System 7. It is the protocol used by different nodes of a 2G/3G network to talk to each other. We saw a glimpse of it in the blog What is a protocol. Let’s take a deeper look at it.
Message Transfer Point 1 (MTP1)
MTP is responsible for point-to-point message transfer. Two nodes directly connected to each other talk over MTP. The MTP is actually three different layers. The first layer, MTP1, is simply the raw bits and bytes flying through a cable.
MTP2
This is where a message structure begins to take form. MTP2 makes sure that neither side drops any message. Each node maintains message sequence numbers to keep track of what it has sent and what it has received. If the sequence is broken, it means that someone has missed a message and it is resent.
MTP3
MTP3 introduces the concept of an address. Each node has an address called Point Code (PC). It is used only to communicate with its adjacent node. Every message has two point codes.
- Origination Point Code (OPC)
- Destination Point code (DPC)
If I send a message, OPC is me and DPC is the other guy. If I receive a message, DPC is me and OPC is the other side. Every time a message exchanges hands, it’s OPC – DPC changes.

Signaling Control Part (SCCP)
SCCP is responsible for the end-to-end transfer of a message. Every node has an address called Global Title (GT). A GT looks very much like your mobile number. It is like the address on the envelope which gets the message from one corner of the world to the other. Each message has two SCCP parameters
- Calling Party Address (CgPA) belongs to the node that sends a message
- Called Party Address (CdPA) belongs to the one who receives it
Both have multiple sub fields, one of them being the GT. As the message exchanges hands, OPC – DPC keeps changing, but CgPA – CdPA largely remains same.

Transaction Control Application Part (TCAP)
At any point of time, each node is having thousands of simultaneous conversations with other nodes. Every conversation has multiple messages. TCAP gives each conversation a unique number called Transaction Identifier (TID). The TID is added to the message to associate it with the correct dialogue.
Mobile Application Part (MAP)
MAP is the application layer. What is an application? All layers of the protocol work towards a purpose. The application is that purpose. It is why the protocol exists.
MAP does a ton of things for the subscriber. The important ones are
- It allows your phone to connect to the network
- When someone calls you, it helps the call reach you, irrespective of whether you are at home or in Timbuktu
- It makes SMS happen
ISDN User Part (ISUP)
ISUP is yet another SS7 application. But it sits directly above the MTP layer1. It is the layer that makes a voice call happen.
CAMEL Application Part (CAP)
CAP is the application that allows the call to be controlled. Examples of control are
- Allow or deny a call
- Check for prepaid balance
And, that is a simplified2 description of the SS7 protocol.
Footnotes
- In several SS7 literatures you will see ISUP above SCCP (in addition to MTP3). I have not shown it simply because it is rare, and also because I have never encountered it. ↩︎
- In a lot of SS7 diagrams you will see application protocols like IS41 and TUP. They are not heavily used. I have consciously not included them for the sake of simplicity. ↩︎
