You are on page 1of 6

End to End Call Flow of Short Message Service (SMS)

How SMS Works

I think everyone in whole world know about SMS, they use it to tell something about their works,
relationship etc to others. Every mobile operator in the world should have SMS services beside the voice.
With voice they can real time communication in same time, but in SMS we just send our message and
wait whether it delivered or not. Some question often arises is how SMS works? Why my message not
delivered to my friend? Why sometimes the message just arrived to my friends in the next hour not real
time?
Here I just try to explain the basic SMS flow and works in our mobile operator to make understand us as a
mobile subscriber.
SMS or Short Message Service is a service provided by an operator of GSM / CDMA besides Voice
service. SMS and Voice is primary service in common mobile operator. The SMS is non-circuit related,
while the circuit voice service is so important to understand in terms of the protocol used. It is better to
know the basic protocol used in SMS that is SS7. I will explain it overview in other articles. Basically we
can send SMS to other subscriber or to some services like short code which have digit less than prefix
number. They work in different environment protocol they are using. The common protocols you have
understand SMS are SS7 (Signaling System No 7) and SMPP (Short Message Peer to Peer Protocol).
Those protocols representative two different domains : SS7 used to support communication between
elements core network in mobile operator, while the SMPP used for communication in IP domain
between SMSC ( SMS Center) and its external services like ESME ( External Short code Messaging
Entity ) such as Service Provider or Content Provider.

Maybe you ever got message from a short code which consists of advertisement from your operator. It is
one of services which operator can provide. It is using SMS blast server which do interconnection with
SMS Center through the SMS Gateway. So SMS Center using SMPP protocol to communicate with SMS
Gateway before sending SMS to ESME.
How about Service Provider which using like web application in their service? Who it can communicate
with SMS gateway and SMSC instead of they are using SMPP Protocol. Here SMS Gateway should have
ability to do conversion from SMPP Protocol to HTTP protocol which a Service Provider used. In this
article, I just explain the basic overview about SMS.

The items you should know besides the protocols and SMS Center are about elements of core network
and their function like HLR, MSC. IN, BSC or BTS. In the next articles I will explain about basic

mechanism of SMS. I hope with this articles you have basic overview before we discuss further as
technically procedure of SMS works.

End to End Call Flow of Short Message Service(SMS) - How SMS works part
ii
In previous article, Ive already explained basic overview of SMS messaging services in an operator. Now well see deeper
for SMS flow and how it works.

Just see in the picture below :


SMS diagram network

You can see at that picture that SMS have two domains : IP domain and SS7 domain. So we need
protocol conversion between that domains in our SMS Center. Commonly it is using SS7 card or other
external devices to do same function.
SMS delivery can be divided into 2 parts, they are Mobile Originated (MO) and Mobile Terminated
(MT).
We can say easily that MO is the process of sending SMS from a number until it reaches the SMSC. The
indicator in mobile subscriber is they get notification message sent in their phone. So the message
which is sent is just arrived in SMSC of his operator, not yet reached destination number. Next we can
say that if message already delivered to destination number, the sender will get the notification which we
call as delivery report. Commonly delivery report message is like message delivered / message
successfully delivered, etc.
Hot about MT? MT is process of message delivery which already reached SMSC to destination number .
It is the way how SMS Center send message to destination number.

Lets see further in the flow basic sms below :

For MO process we need action message : SMDPP-SUBMIT, AUT-ACC-RES ( A number ) until autacc-reserve and SMDPP-SUBMIT (response ) again. Easily, if SMDPP-SUBMIT from SMSC is OK,
MSC will send back it to sender. The sender will see in his phone with message message sent. For MT
we need message flow SMS-REQ (SMS Request) to HLR until SMDPP-SUBMIT and process sending
delivery report.

We continue our discuss. Lets call that mobile subscriber sender is subscriber A / MS A, and the
destination or receiver is subscriber B / MS B.
Let say subscriber A is in MSC / VLR A coverage want to send message or SMS to subscriber B who is
in MSC/ VLR B location where status B number is active ( ON ).

Status ON or OFF for a subscriber is defined by status sent by MSC / VLR which cover that subscriber to
HLR using message REGNOT. If subscriber is active, MSC / VLR will tell HLR about the location and
MSC/VLR address according to addressing PC or SSN in protocol SS7 format. I suggest you to read
basicly about addressing SS7 protocol.

When Mobile subscriber A ( MS A ) send message to Mobile subscriber B


( MS B), MSC will send
message SMDPP ( Short Message Delivery Point to Point) to SMSC ( SMS Center ). SMSC will check

the status of MS A, if need authentication about charging in case prepaid subscriber, SMSC will as IN (
Intelligent Network ) about permission to do sending SMS include check balance, status account etc using
message AUT-ACC-RES. IN will reply it and answer about permission of that subscriber. If OK, SMSC
will return about the authentication to MSC A with message SMDPP-SUBMIT ( response ). MS A will
see message sent in their phone after MSC A send that message to him. Until here, the process MO (
Mobile Originated ) end.

End to End Call Flow of Short Message Service (SMS) - How SMS works part
iii
Here we continue about SMS flow until sending message to destination number. Please see previous
articles for overview SMS and how to send SMS to SMS Center.
In the previous articles, we discussed how SMS arrive to SMS Center. This flow mentioned as Mobile
Originated (MO). Now we try to discuss about Mobile Terminated ( MT ). What is MT message ?

MT message is the way how SMS Center sending the message to destination number (MS B) based on
what source number ( MS A ) request to SMSC.

After MS A got authentication and permission from IN ( Intelligent Network), and SMS Center send back
SMDPP-Submit response to MSC A, SMSC ( SMS Center ) will do some steps to send the message to
destination number.
The most important step is that SMSC will ask HLR ( Home Location Register ) as database master of
subscriber about the status and condition of destination number. SMSC will have message flow SMSReq or SMS-Request for asking that status to HLR. Here we have conditions :

HLR see that status MS B / destination number is active and registered. HLR will reply message SMSReq from SMSC by giving address of MSC / VLR of destination number, and also MIN number of MS B.
Then, SMSC will do message flow SMDPP to MSC / VLR given by HLR. The MSC / VLR which
receive SMDPP message will do paging to lookup location of MS B. After message successfully
delivered to MS B, MSC / VLR will report back to SMSC that message already reached destination
number using message flow SMDPP response to SMSC.
SMS then will tell the MSC / VLR which cover MS A with the delivery report message.
HLR see that status MS B / destination number is inactive based on last report from MSC / VLR which
cover B number. When MSC give status MS B with inactive, HLR will response the report with message
MSINACT.

When HLR got SMS-Req from SMSC and the status of MS B is inactive, HLR will response message
SMS-Req with parameter SMSAccessDeniedReason which show that Mobile terminated (MT) process
cannot be done at the moment. HLR will mark this situation with flag SMS Delivery Pending ( SMDPF).
How about SMSC ? SMSC will store the pending message into a sore and will see the retry mechanism,
scheduling time for next sending SMS based on error code return by HLR or others network element.
Every SMSC of each operator will have different retry mechanism based on strategy taken by the
planning team which see the condition of network first.
When MS A going active again, MSC / VLR B will do power up registration process by using REGNOT
message. HLR will notify SMSC with message SC_alert. SMSC will response it by sending the pending
message immediately without see retry mechanism anymore.
From this articles we see that MT process of message is depend on SMSC action and other network
element. Not only SMSC have a role for this action. SMSC do in application layer of SS7 layer, but need
also action from other network element like MSC, HLR, etc.
So if something happen in your SMS, we have to check all, not only in SMSC. cheers !
Why SMS text message limited to 160 characters ?
Somebody often ask to me why SMS text messages are limited to 160 characters for one message or one
SMS. So I just share with this articles to explain what I know. Even you can send SMS until 960
characters but they are just sent in 6 separated text messages. Back to question why SMS text message
limited to 160 characters. To answer that question, we should have basic concept of SMS text message.
We have to know about SMS Protocol Description Unit ( PDU ) which is way sending SMS text mode.

SMS text message is sent by SMSC ( SMS Center ) handset using SS7 protocol. If you see more in SS7,
we need application layer called Mobile Application Part ( MAP ) which send SMS text message using
application module Message Originating ( MO ) and Message Terminating ( MT ).
In this protocol we can answer that limitation is in SMS development. When it was built, SMS just have
Digital Coding Scheme ( DCS ) signaling protocol limited 140 octets, which means 140 * 8 bits = 1120
bits.

For default alphabet, we use 7 bit / characters, and for another purpose like smart messaging like images
and ringing tones or Chinese and Japanese we user 8 bit. For other purposes 16 bit characters encoding
will be used like for Flash SMS which show blinking or alerting SMS. So for default alphabet we have 1120 bits
/ 7 bits = 160 characters. In same we way, we have 140 characters in 8 bit, and 70 characters in 16 bit.

So we can see now that for one SMS text messages we have limited 160 characters for 7 bit alphabet, 140
characters for 8 bit alphabet and 70 characters for 16 bit characters.

In the next innovation and improvement you can adjust maximum Digital Code Scheme upper 140 octets,
so we can expand maximum characters for one SMS text message.

Even your mobile phone has capabilities to write more than 160 characters, the SMS system just see that
in several messages. You can see the indicator in your text messaging that your long SMS based on phone
capabilities only the way to write SMS. SMS system only see it in several messages. For example if you
can write until 400 characters, the system only see it in 3 SMS text messages and you will be charged for
3 messages by the mobile operators. But you have alternative way to send long messages to your mobile
operators. To increase the maximum characters in one SMS text message we can concatenate SMS in
larger content, it is called as long SMS. It is configured in your mobile operator not in your handset.
In concatenated SMS, you will have additional User Data Header ( UDH ) contains segmentation
information. Because of that the maximum capacity will decrease becomes 153 for 7 bit, 133 for 8 bit and
67 for 16 bit. Here some mobile operators have tariff scheme for this implementation. Most of them will
charge additional UDH bits, because they uses system resources.
Next I will explain about SMS tariff scheme from Bakrie Telecom which apply tariff scheme SMS for
characters you sent, not based on how many messages you sent. So here, I hope you clear about the
maximum of SMS characters you have in one SMS text message.

You might also like