Amarisoft

Remote API - Changing SIB contents

The purpose of this tutorial is to show you how to change the contents of SIB message using Remote API. Not all SIB IE can be changed by Remote API. There are a certain set of SIB IEs that is allowed to be changed by remote API and they are documented in lteenb.pdf. If you are not familiar with the basic operation of Remote API, I would suggest you to look into this tutorial first.

In general, Amarisoft allows IE (information element) changes in this way mainly for SIB1, SIB2 and small numbers of IEs for other SIBs. For IE changes for other SIBs, it is recommended to manually change the asn file. Regarding the SIB changes with asn file, refer this tutorial.

NOTE :  There are two different way ot chaning IEs of SIB message with remote API. First one is to change a specific IE explicitely(explicit IE change) with the message format  '{"message":"sib_set","cells":{"cell_id":{"sib":{IE setting}}}} as shown in Test 1' and the other one is to change the entire payload of the SIB (payload change) with the message format  '{"message":"sib_set","cells":{"cell id":{"sib":{ "type": "hex", "payload" : "Hex string of the entire sib message"}}}}' as shown in  Test 2'

NOTE :  Not every SIB IE can be changed by the explicit IE changes. There are only small number of IEs that can be changed in this way. Refer to this document and check which IE of which SIB can be changed in this way.

NOTE : Not every SIB IE can be changed by the payload change. The SIB should provide 'type', 'payload' parameter for this type of manipulation. Refer to this document and check which SIB support these parameters.

Table of Contents

Introduction

System Information Blocks (SIBs) are critical components in LTE networks, serving as structured containers that broadcast essential configuration and operational parameters from the eNodeB to user equipment (UE). These parameters include cell access information, scheduling, mobility management, and radio resource configuration, allowing UEs to establish, maintain, and optimize connectivity within the cellular infrastructure. Amarisoft’s LTE platform enables dynamic manipulation of SIB contents through its Remote API, providing operators and developers with the flexibility to adjust specific Information Elements (IEs) of SIBs in real time. This capability is particularly significant during network optimization, automated testing, and field trials, where controlled changes to the broadcasted system information accelerate validation and troubleshooting processes. The architecture of the Remote API is designed to abstract the underlying complexity of protocol message encoding, offering standardized JSON-based commands for explicit IE modification or full SIB payload replacement. However, not all SIBs or their constituent IEs are eligible for remote modification due to protocol and implementation restrictions; only a subset—mainly within SIB1, SIB2, and select IEs in other SIBs—can be altered via the API, as detailed in vendor documentation. Understanding the mechanisms, limitations, and safe practices for modifying SIBs is essential for network engineers and developers working to maintain network reliability and compliance. This tutorial provides a comprehensive guide to changing SIB message contents using the Amarisoft Remote API, emphasizing the supported methods, practical considerations, and the broader context of system information management in LTE networks.

Summary of the Tutorial

This tutorial demonstrates two LTE test procedures focused on modifying SIB (System Information Block) contents using Remote API commands. The tests do not require any DUT (UE) and are based on observing the effects through the lte service and WebGUI. Details of each test are summarized below, preserving the original formatting and structure.

Both tests emphasize the importance of proper command syntax when using the RemoteAPI and highlight the need to cross-reference supporting documents to determine which SIBs and IEs are eligible for such modifications. The procedures rely on service restarts and WebGUI verification, with no UE involvement.

Test 1 : Changing p-Max in SIB1

This test shows how to change a specific IE (information elements) of a SIB with Remote API. As an example, I will show you how to change p-Max in SIB1. You can use the same logic for other IEs in other SIBs. However, not all IEs in every SIBs can be changed this way. There are only small portions of IEs that can be changed this way. Refer to sib_set document to figure out which IE of which sib can be changed this way.

NOTE :  Not every SIB IE can be changed by this method (i.e, explicit IE changes). There are only small number of IEs that can be changed in this way. Refer to this document and check which IE of which SIB can be changed in this way.

Configuration

You can use any of LTE configuration for this tutorial (e.g, enb.default.cfg).

Perform the test

In this tutorial, you don't need any DUT(UE) for testing. Just running the lte service and verify the result in WebGUI is enough.

Run lte service ([service lte restart]) and check the IE in the SIB before you send RemoteAPI command. In this tutorial, I will change the p-Max IE in SIB1

RemoteAPI SIB Run 01

Send RemoveAPI command as shown below. Be careful about the syntaix. It would not be easy to figure out the correct syntax just by reading lteenb.pdf

                            ./ws.js enb '{"message":"sib_set","cells":{"1":{"sib1":{"p_max":20}}}}'

RemoteAPI SIB Run 02

If the RemoteAPI command is properly processed, you will see the eNB send paging with systemInfoModication.

RemoteAPI SIB Run 03

Then you can confirm that the p-Max value is changed as configured in the RemoteAPI command .

RemoteAPI SIB Run 04

Test 2 : Changing whole contents of a SIB3

This test shows how to change the whole contents of a specified SIB. As an example, I will show you how to change the whole contents of SIB3 in LTE. Refer to sib_set document to figure out which sib can be changed in this way.  The idea is to send the entire payload hex string) of the message via RemoteAPI.

NOTE : Not every SIB IE can be changed by the payload change. The SIB should provide 'type', 'payload' parameter for this type of manipulation. Refer to this document and check which SIB support these parameters.

Configuration

You can use any of LTE configuration for this tutorial (e.g, enb.default.cfg).

Perform the test

In this tutorial, you don't need any DUT(UE) for testing. Just running the lte service and verify the result in WebGUI is enough.

Run lte service ([service lte restart]) and check the contents of the SIB3 before you send RemoteAPI command.

RemoteAPI SIB Test 02 Run 01

Send RemoveAPI command as shown below. Be careful about the syntaix. It would not be easy to figure out the correct syntax just by reading lteenb.pdf

                            ./ws.js enb '{"message":"sib_set","cells":{"1":{"sib3":{ "type": "hex", "payload" : "000c16043f95aa0007ae"}}}}'

RemoteAPI SIB Test 02 Run 03

If the RemoteAPI command is properly processed, you will see the eNB send paging with systemInfoModication.

RemoteAPI SIB Test 02 Run 04

Then you can confirm that the contents is changed as configured in the RemoteAPI command .

RemoteAPI SIB Test 02 Run 05