Amarisoft

LTE SG SMS

 

This tutorial shows how to test SMS over SG with Amari Callbox.  In this tutorial, it is assumed that you are already familiar with basic operations of the Callbox software and I would point out the only important parts of the operation specific to this test.

We have been using SMS in every radio technology (i.e, 3G, 4G, 5G) and user interface on commercial mobile phone would look same whatever radio technology is used, but the detailed protocol behind the SMS differs with the radio access technology being used.

One common thing regardless of the method listed above is that the way SMS message is being encoded and protocols at the level of session menagement (i.e, CP-DATA, CP-ACK etc).  Putting it other way, same format of SMS and session layer protocol is encapsulated in different way (i.e, NAS message or IMS) depending on different radio technology.

NOTE :  In most of the cases, the user interface on commericial phone would look same regardless of what kind of technology is used. Usually the UI on mobile phone select what type of technology to use depending on protocols status at the specific moment. So when you want to test a specific type of SMS, you need to know how to configure your UE(DUT) to apply the specific SMS technology you want to test.

NOTE : For some additional / summarized tips on SG SMS testing, refer to this wiki.

 

Table of Contents

 

Test Setup

Test setup for this tutorial is as shown below.  

TestSetup Callbox UE 1sdr 01

 

PreConditions

To to this test, you should confirm that UE support SMS over SG.  You may check on this from NAS message during the attach.

First thing you may check is to check if the following IE is configured.

 ESM message container:

    Protocol discriminator = 0x2 (EPS Session Management)

    EPS bearer identity = 0

    Procedure transaction identity = 94

    Message type = 0xd0 (PDN connectivity request)

    Request type = 1 (initial request)

    ...

  Last visited registered TAI:

    ...

  Voice domain preference and UE's usage setting = 0x07 (IMS PS voice preferred, CS Voice as secondary, Data centric)

  ...

 

If the UE only supports EPS service and not non EPS service (combined mode) it can also indicate the SMS support with the Additional update type IE lower bit

< 24.301-Figure 9.9.3.0B.1: Additional update type information element >

LTE SG SMS Precondition 01

< 24.301-Table 9.9.3.0B.1: Additional update type information element >

LTE SG SMS Precondition 02

 

Key Configuration Parameters

Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.

 

 

Test 1 : MO SG-SMS

This is to show how to configure and test MO (Mobile Originated) SMS over SG (NAS message).

 

Configuration

I used the enb.default.cfg (LTE default configuration) as it is without changing any contents in it.

LTE SG SMS Config 01

I also used the default configuration(mme-ims.cfg) for mme as shown below.

LTE SG SMS Config 03

In mme-ims.cfg file, you would notice that ue_db-ims.cfg is used as ue db.

LTE SG SMS Config 04

In this tutorial, I am using Anritsu Test USIM. Remember "tel" number since these will be used for SMS.

LTE SG SMS Config 05

 

I did following configuration on UE side. For APN I am using the default APN. It would be recommended to remove IMS apn(if already added) to prevent UE to send SMS over IMS rather than SG(NAS message). Just for further confirm, I would suggest you to disable VoLTE as well.  

LTE SG SMS Config 02

 

Perform the test

Start LTE service and check basic cell configuration. Any cell configuration is OK as long as it is LTE cell.

LTE SG SMS Run 01

Power On UE and make it sure that UE get registerred.

LTE SG SMS Run 02

Make it sure that UE is NOT assigned with IMS pdn. If UE is assigned with IMS PDN, it is likely for the UE to use IMS Message rather than SG SMS when you send SMS.

LTE SG SMS Run 03

Send SMS from UE and you will get the result as follows. Note that I am using 'tel' number as 'to' address which is set in the configuration file. Once you send the sms and it is successfully delivered to SMS server, you will get the delivery notice.

LTE SG SMS Run 04

 

Log Analysis

Sample Log

Enable at least NAS, SIP, IMS in WebGUI log. Filter it out with NAS, SIP, IMS for convenience (Even though we are not using IMS, we should enable IMS log since in Amari callbox IMS server is acting as SMS Center as well)

LTE SG SMS Log 01

For each SMS you send, you will see a sequence of message transaction. Even if SMS message is carried by NAS message, Amarisoft IMS server works as SMS center. So you see a sequence of IMS log as well.

LTE SG SMS Log 02

If you check on Uplink NAS transport message, you will see the contents of NAS message carrying the SMS message. (NOTE : The NAS log does not show the decoded SMS message. If you want to check on the decoded SMS message, check on the corresponding IMS log)

LTE SG SMS Log 03

If you check on Downlink NAS transport message, you will see the contents of NAS message carrying the SMS message(SMS delivery notice from the server in this case). (NOTE : The NAS log does not show the decoded SMS message. If you want to check on the decoded SMS message, check on the corresponding IMS log)

LTE SG SMS Log 04

 

 

Test 2 : MT SG-SMS

This is to show how to configure and test MT (Mobile Terminated) SMS over SG (NAS message).

 

Configuration

I used the enb.default.cfg (LTE default configuration) as it is without changing any contents in it.

LTE SG SMS Test 2 Config 01

I also used the ims.default-sg-sms.cfg that is copied and modified from ims.default.cfg, mme-ims-sg-sms.cfg that is copied from mme-ims.cfg and ue_db-ims-sg-sms.cfg that is copied from ue_db-ims.cfg.

LTE SG SMS Test 2 Config 02

In mme-ims-sg-sms.cfg file, you would notice that ue_db-ims-sg-sms.cfg is used as ue db.

LTE SG SMS Test 2 Config 03

In ims.default-sg-sms.cfg  file as well, you would notice that ue_db-ims-sg-sms.cfg is used as ue db.

LTE SG SMS Test 2 Config 04

In this tutorial, I am using Anritsu Test USIM. Remember tel number since these will be used for SMS. In this test, I set force_sms_over_sg : true to make it sure that the callbox uses SG SMS (Not IMS SMS) when I send SMS message.

LTE SG SMS Test 2 Config 05

NOTE : Unlike in MO SG SMS case, you don't need to disable IMS/VoLTE on UE side since force_sms_over_sg : true makes callbox SMS Center always use SG SMS regardless of whether UE is IMS registered or not..

 

Perform the test

Start LTE service and check basic cell configuration. Any cell configuration is OK as long as it is LTE cell.

LTE SG SMS Test 2 Run 01

Power On UE and make it sure that UE get registerred. (NOTE : In my device, you see two IPs are assigned. One for Internet and the other one for IMS, but it doesn't matter how many IPs/APN are assigned).

LTE SG SMS Test 2 Run 02

Check the registered user in (ims) screen. ( NOTE : With my phone, UE completed IMS result so you see here IMPI and SIB Binding Information here. But IMS registration in SG SMS is not mandatory. If you see IMPI only, it is enough for this test)

LTE SG SMS Test 2 Run 03

Send SMS from (ims) and confirm that you get the message on UE. (NOTE : Just getting the message on UE does not confirm whether the message is sent over SG or IMS. To verify this, you need to check out the log).

LTE SG SMS Test 2 Run 04

LTE SG SMS Test 2 Run 05

Now let's try again but using IMPI this time as shown below.

LTE SG SMS Test 2 Run 06

LTE SG SMS Test 2 Run 07

 

Log Analysis

Sample Log

Enable at least NAS, SIP, IMS in WebGUI log. Filter it out with NAS, SIP, IMS for convenience (Even though we are not using IMS, we should enable IMS log since in Amari callbox IMS server is acting as SMS Center as well)

LTE SG SMS Test 2 Log 01

 

 

RRC / NAS Signaling

 

: This is the Uplink NAS transport message sent by UE  to carry SMS message. (NOTE : You would see some IEs that has a specific assigned vale here, but consider it as just an example value. Those values should vary depending on test requirement)

 

Message: Uplink NAS transport

 

Protocol discriminator = 0x7 (EPS Mobility Management)

Security header = 0x2 (Integrity protected and ciphered)

Auth code = 0x6cbb8aab

Sequence number = 0x0d

Protocol discriminator = 0x7 (EPS Mobility Management)

Security header = 0x0 (Plain NAS message, not security protected)

Message type = 0x63 (Uplink NAS transport)

NAS message container:

  Length = 168

  Data = .... ( NOTE : This part carries the SMS message in SG SMS.  In Amari Callbox, this contents will be transferred to IMS server and processed/decoded there).

 

 

: This is the Uplink NAS transport message sent by Network  to carry SMS message. (NOTE : You would see some IEs that has a specific assigned vale here, but consider it as just an example value. Those values should vary depending on test requirement)

 

Downlink NAS transport

 

Data:

Protocol discriminator = 0x7 (EPS Mobility Management)

Security header = 0x2 (Integrity protected and ciphered)

Auth code = 0x040c1d94

Sequence number = 0x0c

Protocol discriminator = 0x7 (EPS Mobility Management)

Security header = 0x0 (Plain NAS message, not security protected)

Message type = 0x62 (Downlink NAS transport)

NAS message container:

  Length = 170

  Data = .... ( NOTE : This part carries the SMS message in SG SMS. ).