LTE RACH Procedure with Call Flow

The Base station continuously broadcast MIB's and SIB's. When the UE powers on, it syncs up with the network and it looks for these messages.
Here on, the explanation is provided for the initial connectivity of the UE. i.e. when the UE is powered on:
1. First, the UE has to synchronize with the network at the frame and slot level.
  • The Primary Synchronization Signal is responsible for slot synchronization.
  • The Synchronization Signal are sent only on time slots (1st and 11th) of each frame.
  • PSS is send at the last OFDM symbol of the 1st and 11th slot of each frame
Well, UE doesn't need to worry much for this. As, the synchronization signal are always sent only on the center 62 sub carriers irrespective of the  channel bandwidth (1.25,3,5,10,20).

Therefore, UE will look for the central sub carriers, i.e at the last OFDM symbol of the 1st time slot and again at the last OFDM symbol of the 11th slot. With this UE synchronizes at the slot level.

The Secondary Synchronization Signal is responsible for frame synchronization.

Query_2: How does UE know to look for the SSS synchronization signal?
Once, when the PSS is identified, SSS is always send at the slot before the PSS is present. In other words, SSS immediately precedes the PSS. 
Let's see how the UE derives the Cell ID using these two signals:

From: 
PSS: PHYSICAL LAYER CELL IDENTITY is derived. It carries the value of 0, 1 and 2.
From SSS: PHYSICAL LAYER CELL IDENTITY GROUP is derived. It can take the value to 0 to 167.
Formula: Cell ID= (3*PHYSICAL LAYER CELL IDENTITY GROUP) + PHYSICAL LAYER CELL IDENTITY
2. Once the UE synchronizes with the network, it proceeds to read MIB and then requires the following info for camping on a cell:

  • PLMN id
  • Tracking Area Id
  • Cell Id
  • Radio and Core n/w capabilities (for it's n/w selection)
3. The above information is being broadcast by the network in order to help the UE for it's selection process.

4.  This broadcast is known as SYSTEM INFORMATION which is MIB and SIB's.The call flow for the UE to read the System information is mentioned below:






Query_3: How does the UE read MIB?
  • The MIB is transmitted on physical channel (BCCH-BCH-PBCH) and it always occupies the central 72 sub carriers in the Frequency domain irrespective of the channel bandwidth.
  • The first transmission of the MIB is scheduled in sub-frame number 0 of radio frames for which the SFN mod 4 = 0
  • repetitions are scheduled in sub-frame 0 of all other radio frames
From the MIB, UE gets the following information:
  • Channel bandwidth in terms of Resource Blocks
  • SFN (System Frame Number)
  • PHICH configuration (used for HARQ ACK/NACK)
5. Till now, the UE has synchronized itself with the Cell with the help of PSS and SSS; followed by reading the MIB. Now, UE will proceed to read SIB1 and SIB2 which carriers important information for the UE to select a Cell. To know more about SIB's and it's working, click here

6. After the above process the UE is synchronized with the network in the Downlink direction and have read SIB1 and SIB 2. Now, it needs to synchronize in the Uplink direction

7. For this to happen, RAP (Random Access Procedure) is initiatedRACH is common in FDD and TDDThere are two types of RAP:

  • Contention based RAP
  • Non-contention based RAP
Contention based RAP
In contention based, multiple UE's attempt to connect to the network at the same time. The eNB is intelligent enough to tackle this situation because every UE should be unique to the network. The UE's can always send the same Preamble ID to the network, thereby resulting on collisions. This kind of collision is called "Contention" and is known as "Contention based" RACH Process. The network would go through additional process to resolve these contention and hence this process is called "Contention Resolution" step.


The below mentioned call flow would explain elaborately:







1. In the first message the UE provides an indication to the network about it's resource requirement. This carries the Preamble ID, RA-RNTI

Query_4: How does UE gets or selects these parameters:
a. Most of the information is passed on to the UE through SIB2 (click here, to know more about SIB2 parameters)    

i. UE MAC layer has to select the Preamble sequence (Group A or Group B)    
ii. UE will configure itself with the max retires it will try for sending RAP (if it doesn't receive RAR)   iii. Also, after every retry, how much power level has to be increased for transmitting the RAP  

iv. UE MAC layer constructs the RAP message and passes it to the UE PHY layer. UE PHY layer will transmit this message through PRACH   

v. Once the UE has transmiited the RAP on PRACH, it will start looking for RAR immediately after 3 sub-frames. This number i.e. 3 sub-frame is specified by 3GPP.


Query_5: How long should UE monitor the frames for RAR?
This sub-frame number is again specified in SIB2 and is known as window length; so, after the 3 sub-frames as mentioned above, UE will start looking for RAR in the sub-frames as mentioned by the Window length. If by that time UE doesn't receive RAR, it will go back to transmit RAP 



2. The eNB conveys the resources reserved for this UE along with the Timing Advance (TA), Preamble ID and T-CRNTI (a number generated by eNB and asks the UE to send the RRC connection)


3. UE sends the RRC connection Request using resources given by the eNB. It also sends the identifier (CRI) to the eNB which is used to resolve the Contention.

4. The eNB runs an algorithm and generates C-RNTI which will be a permanent ID for the UE till the connection is alive. The eNB sends the UE identifier. In this step, the UE which has received the ID continues while other UE's will back off and try again.

Scenario:
Multiple UE's attempt to access the network:
1. So, the UEs initiates RACH with same Preamble sequence, RA-RNTI
2. Therefore, the UEs will receive the same T-C-RNTI and resource allocation from eNB
3. All UEs would send msg 3 (RRCconnectionRequest)  message through the same resource all
location to the Network
4. Once, when msg3 is transmitted, two Timers are started:
a. T300 : Transmission of RRCconnectionRequest
b. Contention Resolution Timer: broadcasted in SIB2. 
If the UE doesn't receive msg4 (Contention Resolution message) within this timer, then it go back to Step 1 i.e. transmitting RAP. If there is a HARQ NACK for msg3 (RRCconnectionRequest) and it has to be re-transmitted then this Contention Resolution Timer will be re-started

Query_6: Now the big question: How should the eNB behave?
1. One: The signals act as interference to each other and eNB decode neither of them. In this case, none of the UE would have any response (HARQ ACK) from eNB and all UE will go back to Step 1.
2.  Second: The eNB would successfully decode the message from only one UE and fail to decode from others. The decoded UE will get HARQ ACK from eNB

3. Third: eNB receives msg3 (RRCconnectionRequest) from both the UE's. Here, eNB will send msg4 (Contention Resolution) with MAC CRI (Contention Resolution Identity) to both the UE's. This CRI will carry a reflection of the RRCconnectionRequest as generated by one of the UE. The MAC layer of the UE will match the CRI (as received from msg4) with the CRI embedded in the RRCconnectionRequest. 

If it matches, then the UE will proceed to decode RRCconnectionSetup and the other UE's will back off and return to Step1, i.e start the RA procedure again.Contention Resolution process is again of two types:
1. MAC based Contention Resolution=> C-RNTI on PDCCH => uses the DCCH logical channel => used in HO scenarios==>The rule is: if the UE has a valid C-RNTI and is going for RA procedure then it will be a MAC based Contention Resolution procedure


2. L1 based Contention Resolution=> CRI (Contention Resolution Identity) on DL-SCH based => Contention Resolution is addressed to T-CRNTI=> uses CCCH logical channel==>The rule is: if the UE doesn't has a valid C-RNTI and is going for RA procedure then it will be L1 based Contention Resolution procedure




Non-contention based RAP
This procedure is always initiated from network in case of a handover. For this procedure, the eNB reserves a set of preamble sequence. When this type of scenario is encountered the eNB allocates the set from this reserved pool.


This entire procedure is controlled by the eNB. Hence. no question of collision.



The call flow is mentioned below:




S1AP MME Configuration Update

Some information like (MME name, part of GUTI [GUMMEI], MMEcapacity) is provided by MME through interface S1 in an S1AP MME Configuration Update message5. This communication happens after the S1 interface establishment between the eNB and MME.The call flow can be identified below:





The next post will be on Intial Attach process with message parameters.

27 comments:

  1. Hi Arijit,

    Thanks that was a very useful post. Helped me to understand the basics of initial attach.

    ReplyDelete
  2. nice information helpful for freshers

    ReplyDelete
  3. I didnt know you blog... Nice.. Well structured information..
    Kudos Buddy
    Shweta.

    ReplyDelete
  4. Thanks for such a great and very easy to understand blog for lte. Please keep it up..

    ReplyDelete
  5. good pieces of info. useful for beginners.....cheers

    ReplyDelete
  6. Hi Arjit,

    Useful information...Thanks a lot

    ReplyDelete
  7. HI Arijit,

    Useful information..

    ReplyDelete
  8. vry nicely structured information.

    ReplyDelete
  9. very simple and useful info Arjit

    ReplyDelete
  10. Hi Arijit,


    Very simple and very useful info.

    ReplyDelete
  11. Very nice info.
    Two things

    1- In Non-Contention RAP, you have RAR from UE->eNB. Shouldn't it be other way round ?

    2- At end you say Attach procedure is next. Is there a link to it ?

    Thx

    AZ

    ReplyDelete
    Replies
    1. Thanks for pointing out:
      1. it should be UE <- eNB. Have lost the ppt file used to create this image.
      2. it's the next post!

      Delete
  12. Very Nice...

    My doubt is what will happen if the max tries of RAP is over ??
    Will the UE go to OOS(Out Of Service) state ??

    ReplyDelete
    Replies
    1. MAC will inform upper layers about the failure. It is upto the upper layers to decide whether to continue with RACH or stop the procedure.

      Delete
  13. Thanks so much for your detailed information.

    ReplyDelete
  14. Thanks a lot, it was very useful

    ReplyDelete
  15. Thanks for providing this useful information...

    ReplyDelete
  16. Thank you.This is very helpful.

    ReplyDelete
  17. thanks for sharing !!

    ReplyDelete
  18. Best description I've seen. Thank you

    ReplyDelete