Concatenated SMS
Encyclopedia
In the cellular phone industry, mobile phone
Mobile phone
A mobile phone is a device which can make and receive telephone calls over a radio link whilst moving around a wide geographic area. It does so by connecting to a cellular network provided by a mobile network operator...

s and their networks
Cellular network
A cellular network is a radio network distributed over land areas called cells, each served by at least one fixed-location transceiver known as a cell site or base station. When joined together these cells provide radio coverage over a wide geographic area...

 sometimes support concatenated short message service (or concatenated SMS) to overcome the limitation on the number of characters
Character (computing)
In computer and machine-based telecommunications terminology, a character is a unit of information that roughly corresponds to a grapheme, grapheme-like unit, or symbol, such as in an alphabet or syllabary in the written form of a natural language....

 that can be sent in a single SMS
Short message service
Short Message Service is a text messaging service component of phone, web, or mobile communication systems, using standardized communications protocols that allow the exchange of short text messages between fixed line or mobile phone devices...

 text message transmission (which is usually 160). Using this method, long messages are split into smaller messages by the sending device and recombined at the receiving end. Each message is then billed separately. When the feature works properly, it is nearly transparent to the user, appearing as a single long text message. Previously, due to incompatibilities between providers and lack of support in some phone models, there was not widespread use of this feature.

In recent years, this feature has been adopted more widely. Not only do many handsets support this feature, but support for the feature also exists amongst SMS gateway providers.
The way concatenation works in GSM and UMTS networks is specified in SMS Point to Point specification, 3GPP TS 23.040 .

PDU Mode SMS

In technical terms, the concatenated SMS could also be referred to as a PDU Mode SMS. The number of parts that a multi-part or PDU mode SMS message may contain depends technically upon a header message but mostly upon the device sending or receiving the SMS and also upon the service provider.

In theory, the concatenated SMS may consist of up to 255 separate SMS messages that are concatenated in order to create a single long SMS message. Because of the nature of the SMS, the chance that these parts of the SMS message arrive in order is slim and therefore a strategy is implemented in order for the original long message to be reconstructed.

Sending a concatenated SMS using a User Data Header

One way of sending concatenated SMS (CSMS) is to split the message into 153 7-bit character parts (134 octets
Octet (computing)
An octet is a unit of digital information in computing and telecommunications that consists of eight bits. The term is often used when the term byte might be ambiguous, as there is no standard for the size of the byte.-Overview:...

), and sending each part with a User Data Header (UDH) tacked onto the beginning. A UDH can be used for various purposes and its contents and size varies accordingly, but a UDH for concatenating SMSes look like this:
  • Field
    Field (computer science)
    In computer science, data that has several parts can be divided into fields. Relational databases arrange data as sets of database records, also called rows. Each record consists of several fields; the fields of all records form the columns....

    1 (1 octet): Length of User Data Header, in this case 05.
  • Field 2 (1 octet): Information Element Identifier, equal to 00 (Concatenated short messages, 8-bit reference number)
  • Field 3 (1 octet): Length of the header, excluding the first two fields; equal to 03
  • Field 4 (1 octet): 00-FF, CSMS reference number, must be same for all the SMS parts in the CSMS
  • Field 5 (1 octet): 00-FF, total number of parts. The value shall remain constant for every short message which makes up the concatenated short message. If the value is zero then the receiving entity shall ignore the whole information element
  • Field 6 (1 octet): 00-FF, this part's number in the sequence. The value shall start at 1 and increment for every short message which makes up the concatenated short message. If the value is zero or greater than the value in Field 5 then the receiving entity shall ignore the whole information element. [ETSI Specification: GSM 03.40 Version 5.3.0: July 1996]

It is possible to use a 16 bit CSMS reference number in order to reduce the probability that two different concatenated messages are sent with identical reference numbers to a receiver. In this case, the User Data Header shall be:
  • Field 1 (1 octet): Length of User Data Header (UDL), in this case 6.
  • Field 2 (1 octet): Information Element Identifier, equal to 08 (Concatenated short messages, 16-bit reference number)
  • Field 3 (1 octet): Length of the header, excluding the first two fields; equal to 04
  • Field 4 (2 octets): 0000-FFFF, CSMS reference number, must be same for all the SMS parts in the CSMS
  • Field 5 (1 octet): 00-FF, total number of parts. The value shall remain constant for every short message which makes up the concatenated short message. If the value is zero then the receiving entity shall ignore the whole information element
  • Field 6 (1 octet): 00-FF, this part's number in the sequence. The value shall start at 1 and increment for every short message which makes up the concatenated short message. If the value is zero or greater than the value in Field 5 then the receiving entity shall ignore the whole information element. [ETSI Specification: GSM 03.40 Version 5.3.0: July 1996]


Example of the UDH for an sms split into two parts:
05 00 03 CC 02 01 [ message ]
05 00 03 CC 02 02 [ message ]

Note. if a UDH is present and the data encoding is the default 7-bit alphabet, the user data must be 7-bit word aligned after the UDH. This means up to 6 bits of zeros need to be inserted at the start of the [message].

E.g. with a UDH containing a single part,
05 00 03 CC 01 01
the UDH is a total of (number of octets x bit size of octets) 6 x 8 = 48 bits long. Therefore a single bit of padding has to be prepended to the message. The UDH is therefore (bits for UDH / bits per septet) = (48 + 1)/7 = 7 septets in length.

With a message of "hello world", the [message] is encoded as
D0 65 36 FB 0D BA BF E5 6C 32
whereas without padding, the [message] would be
E8 32 9B FD 06 DD DF 72 36 19
and the UDL is 7 (header septets) + 11 (message septets) = 18 septets.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK