Android Operating System and Radio Interface Layer

When the mobile phone is switched on, in the first step Linux Kernel is loaded along with the drivers for modem and the first process called "init" is started. 'Init' will start initial dummy process named 'zygote' which helps in starting other services like audio manager, surface flinger, power manager, RIL Daemon (to be explained later), service manager, Telephony service etc 

All the smartphone applications communicate to external ports or environment via Application programming interface (API). For communication towards radio modem, Telephony framework (mentioned above) performs the role of APIs. It helps to access network related services by applications i.e. PDP connection establishment, SMS, MMS etc. Whenever these applications make any query, it is forwarded to Radio interface Layer (RIL) by telephony framework APIs. RIL is interface between telephony framework and radio hardware (modem)

RIL has two sub layers 

  • RIL Daemon: It communicates with Vendor RIL for call processing and other functions
  • Vendor RIL: It contains Library of functions and drivers to particular modem. It communicates with the radio hardware 


RIL Daemon is responsible for initializing Vendor RIL and forwards all requests from telephony framework to Vendor RIL. Vendor RIL communicates to modem protocol stacks via Hayes AT commands and forwards requests from modem to RIL Daemon or vice versa. Please see the figure above.

So here it is what happens:

  1. Android Mobile is switched on
  2. Linux Kernel is loaded
  3. Initial temporary process named zygote is started on initialization by Linux Kernel
  4. Zygote helps in quick start of other services including Android Telephony network and RIL Daemon (RILD)
  5. RILD initializes the vendor RIL for communication
  6. Vendor RIL initiates the radio modem
  7. Network attach procedure is started





System Information Block 1

After initial cell synchronisation and reading Master information block, UE will proceed to read system information blocks to obtain important cell access related parameters.

SIB1 broadcasts common information to all UEs in the cell related to cell access parameters and information related to scheduling of other SIBs. SIB1 is broadcasted in subframe # 5 in the SFN for which SFN mod 8 = 0. While the repeated copies are sent in subframe # 5 for which SFN mod 2 = 0 . Thus the new copy of SIB1 is transmitted every 80ms as shown below






The cell access related parameters are listed below

  • PLMN identity : Upto 6 PLMN identies can be specified
  • Tracking area code: Range from 0 to 65546
  • Cell Id: It contains eNB identity and has length of 28 bits
  • Cell barred: whether cell is barred or not
  • Intra Frequency cell reselection info: To select other cells when the target cell is barred
  • CSG indication: To indicate whether this cell is CSG cell or not. If it is CSG cell, then CSG identity stored in the UE should match with CSG id of the cell
Other information broadcasted by SIB 1 are 
  • q-RxLevMin: Minimum required level in the cell 
  • Band indicator: Cell frequency band indicator
  • scheduling information of other system information blocks
Complete SIB1 info is shown below (taken from UE logs). This SIB1 does not represent any real network



Load balancing in LTE Self-organizing networks (SON)

Load imbalance is one of the well known issues in communication networks. There is always a possibility that the heavily loaded cell is the neighbor of lightly loaded cell. In this case, load can be shared between these two neighbor cells. This usually require manual adjustment of the network parameters.

 In LTE network, the concept of self organizing networks is introduced where network parameters are adjusted automatically based on algorithm with the help of UE measurements. Load balancing (LB) at eNB is also introduced as one of the SON features.

The goal of the load balancing in LTE SON is to reduce cell congestion automatically by running SON algorithms at eNB. The benefits are listed below:

  • - The cell load is balanced 
  • - This will increase the system capacity by reducing the congestions in heavily loaded cells
  • - Auto optimization and management of network achieved 


The load balancing algorithm can include intra-frequency, inter-frequency or inter-RAT re selections/handovers as long as there is availability of target frequency layer