GSM The
Short Message Service—Point to Point (SMS-PP)—was originally defined in GSM recommendation 03.40, which is now maintained in
3GPP as TS 23.040. GSM 03.41 (now 3GPP TS 23.041) defines the
Short Message Service—Cell Broadcast (SMS-CB), which allows messages (advertising, public information, etc.) to be broadcast to all mobile users in a specified geographical area.
Cell broadcast is the technology behind
Wireless Emergency Alerts in the US which is used for public safety messages and AMBER alerts, and similar public safety messages in
other countries. These messages are similar to SMS messages. Messages are sent to a
short message service center (SMSC), which provides a "
store and forward" mechanism. It attempts to send messages to the SMSC's recipients. If a recipient is not reachable, the SMSC queues the message for later retry. Some SMSCs also provide a "forward and forget" option where transmission is tried only once. Both mobile terminated (MT, for messages sent
to a mobile handset) and mobile originating (MO, for those sent
from the mobile handset) operations are supported. Message delivery is "
best effort", so there are no guarantees that a message will actually be delivered to its recipient, but delay or complete loss of a message is uncommon, typically affecting less than 5 percent of messages. Some providers allow users to request delivery reports, either via the SMS settings of most modern phones, or by prefixing each message with *0#.
Message size Transmission of short messages between the SMSC and the handset is done whenever using the
Mobile Application Part (MAP) of the
SS7 protocol. Messages are sent with the MAP MO- and MT-ForwardSM operations, whose payload length is limited by the constraints of the signaling protocol to precisely 140
bytes (140 bytes × 8 bits / byte = 1120 bits). Short messages can be encoded using a variety of alphabets: the default
GSM 7-bit alphabet,
the 8-bit data alphabet, and the 16-bit
UCS-2 or
UTF-16 alphabets. Depending on which alphabet the subscriber has configured in the handset, this leads to the maximum individual short message sizes of 160 7-
bit characters, 140 8-bit characters, or 70 16-bit characters. GSM 7-bit alphabet support is mandatory for GSM handsets and network elements. 10 segments is the practical maximum with some carriers, and long messages are often billed as equivalent to multiple SMS messages. In some cases 127 segments are supported.
Interconnectivity with other networks On some carriers non-subscribers can send messages to a subscriber's phone using an
Email-to-SMS gateway. Additionally, many carriers, including
AT&T Mobility,
T-Mobile USA,
Sprint, and
Verizon Wireless, offer the ability to do this through their respective websites. For example, an AT&T subscriber whose phone number was 555-555-5555 would receive emails addressed to 5555555555@txt.att.net as text messages. Subscribers can easily reply to these SMS messages, and the SMS reply is sent back to the original email address. Sending email to SMS is free for the sender, but the recipient is subject to the standard delivery charges. Only the first 160 characters of an email message can be delivered to a phone, and only 160 characters can be sent from a phone. However, longer messages may be broken up into multiple texts, depending upon the telephone service provider. Text-enabled fixed-line handsets are required to receive messages in text format. However, messages can be delivered to non enabled phones using
text-to-speech conversion. Short messages can send binary content such as
ringtones or logos, as well as
Over-the-air programming (OTA) or configuration data. Such uses are a vendor-specific extension of the GSM specification and there are multiple competing standards, although
Nokia's Smart Messaging is common. GPRS is offered by smaller telco players as a route of sending SMS text to reduce the cost of SMS texting internationally.
Support in other architectures The
Mobile Application Part (MAP) of the
SS7 protocol included support for the transport of Short Messages through the Core Network from its inception. MAP Phase 2 expanded support for SMS by introducing a separate operation code for Mobile Terminated Short Message transport. while CAMEL Phase 4, as part of 3GPP Release 5 and onwards, provides the IN with the ability to control the Mobile Terminated service. The connection between the terminal equipment and the transceiver can be realized with a serial cable (e.g.,
USB), a
Bluetooth link, an
infrared link, etc. Common AT commands include AT+CMGS (send message), AT+CMSS (send message from storage), AT+CMGL (list messages) and AT+CMGR (read message). However, not all modern devices support receiving of messages if the message storage (for instance the device's internal memory) is not accessible using AT commands.
Premium-rated short messages An alternative to inbound SMS is based on
long numbers (international number format, such as "+44 762 480 5000"), which can be used in place of short codes for SMS reception in several applications, such as TV voting, product promotions and campaigns. Long numbers work internationally, allow businesses to use their own numbers, rather than short codes, which are usually shared across many brands. Additionally, long numbers are nonpremium inbound numbers. Visually, this style of representation provides a back-and-forth chat-like history for each individual contact. Hierarchical-threading at the
conversation-level (as typical in blogs and online messaging boards) is not widely supported by SMS messaging clients. This limitation is due to the fact that there is no
session identifier or subject-line passed back and forth between sent and received messages in the
header data (as specified by SMS protocol) from which the client device can properly thread an incoming message to a specific dialogue, or even to a specific message within a dialogue.
Session-tracking is used to extend the functionality of many Instant Messenger (IM) applications such that they are able to communicate over two-way dialogues with the much larger SMS user-base.
Application-to-person (A2P) SMS While SMS reached its popularity as a person-to-person messaging, another type of SMS became popular by 2017: application-to-person (A2P) messaging. A2P is a type of SMS sent from a subscriber to an application or sent from an application to a subscriber. It is commonly used by businesses, such as banks, e-gaming, logistic companies, e-commerce, to send SMS messages from their systems to their customers. In the US, carriers have traditionally preferred that A2P messages be sent using a short code rather than a standard
long code. In 2021, US carriers introduced a new service called A2P 10DLC, supporting the used of 10-digit long codes for A2P messages. In the United Kingdom A2P messages can be sent with a dynamic 11 character sender ID; however, short codes are used for OPTOUT commands.
Satellite phone networks While early
Iridium handsets only support incoming SMS, later models can also send messages. The price per message varies for different networks. Unlike some mobile phone networks, there is no extra charge for sending international SMS or to send one to a different satellite phone network. SMS can sometimes be sent from areas where the signal is too poor to make a voice call. Satellite phone networks usually have web-based or email-based SMS portals where one can send free SMS to phones on that particular network.
Unreliability Unlike dedicated texting systems like the
Simple Network Paging Protocol and Motorola's ReFLEX protocol, SMS message delivery is not guaranteed, and many implementations provide no mechanism through which a sender can determine whether an SMS message has been delivered in a timely manner. SMS messages are generally treated as lower-priority traffic than voice, and various studies have shown that around 1% to 5% of messages are lost entirely, even during normal operation conditions, and others may not be delivered until long after their relevance has passed. The use of SMS as an emergency notification service in particular has been questioned. == Vulnerabilities ==