Difference between revisions of "LTE RRC Extension"

From Nsnam
Jump to: navigation, search
(updated)
 
(27 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Objective''' Current RRC entity in the present LTE module of ns-3 has the handling of user plane. This proposal is to enhance and develop the RRC entity is ns-3 LTE for control plane handling in UE and eNodeB. We aim to incorporate following functionality viz. Paging, System Information (MIB, SIBType1 and SIBType2) and connection control (RRC establishment, RRC reconfiguration, RRC release and RRC resource configuration)
+
==Objective==
 +
Current RRC entity in the present LTE module of ns-3 has the handling of user plane. This proposal is to enhance and develop the RRC entity is ns-3 LTE for control plane handling in UE and eNodeB. We aim to incorporate following functionality viz. Paging, System Information (MIB, SIBType1 and SIBType2) and connection control (RRC establishment, RRC reconfiguration, RRC release and RRC resource configuration)
  
'''List of Functions to be implemented in this project'''
+
==Introduction==
 +
The Radio Resource Control (RRC), i.e., layer 3, for control plane is responsible for, establishing the radio bearers, control of radio resource usage and configuring all the lower layers. It handles system information, carries out mobility function and QoS management function. Key features include
 +
1. System information handling
 +
2. Paging
 +
3. Connection control.
 +
 
 +
 
 +
==List of Functions to be implemented in this project==
 
• System Information: Reception and transmission at UE and eNodeB
 
• System Information: Reception and transmission at UE and eNodeB
 
• Paging: Reception and Transmission at UE and eNodeB
 
• Paging: Reception and Transmission at UE and eNodeB
 
• Connection control Procedures:  Following procedures have been identified for the implementation in during NSoC 2011.  
 
• Connection control Procedures:  Following procedures have been identified for the implementation in during NSoC 2011.  
        RRC connection establishment ,
+
  RRC connection establishment ,
        RRC Connection Reconfiguration ,
+
  RRC Connection Reconfiguration ,
        RRC Connection Release ,
+
  RRC Connection Release ,
        UE action upon leaving
+
  UE action upon leaving
'''Deliverables'''
+
At the end of the project we will be able establish between UE and eNodeB the SRB0/SRB1/DRBs.  And UE and EnodeB can able to perform following procedures Paging, System Information , Connection control procedures ( RRC establishment , RRC reconfiguration , RRC release , RRC radio resource configuration).
+
  
       ''Items''         ''Time''  
+
==Deliverables==
       Basic Framework         One week
+
At the end of the project we will be able establish between UE and eNodeB the SRB0/SRB1/DRBs.  And UE and EnodeB can able to perform following procedures Paging, System Information , Connection control procedures ( RRC establishment , RRC reconfiguration , RRC release ).
 +
 
 +
==Functional Description==
 +
 
 +
1. '''System information''': System configuration messages send to your from e-utran are system information messages. System information classified in following four broad categories.  Master information block: Contains information parameter for initial access.  SIB1 contains information parameter for cell selection. SIB2 contains information parameter for common and shared channel.
 +
 
 +
2. '''Paging''': To inform for the incoming calls to UE paging messages are used. Transmission of paging is done by base station (section 5.3.2 of 36.331). Reception and processing of paging in UE (section 5.3.2.3).
 +
 
 +
3. '''Connection Control''': To establish connection to exchange information. Following sub procedure under this category which will provide functionality related to establishment/maintenance/release of radio bearers RRC connection establishment (section 5.3.2), RRC reconfiguration (section 5.3.5) and RRC connection release (section 5.3.8).
 +
 
 +
==Time schedule==
 +
 
 +
       '''''Items'''''                   '''''Time'''''  
 +
       API Design         Two week
 
       System Information One week
 
       System Information One week
 
       Paging                 One week
 
       Paging                 One week
 
       Connection Control  Three week
 
       Connection Control  Three week
       Integration and testing Three  week
+
       Integration and testing Two week
 
       Final wrap-up         Two week
 
       Final wrap-up         Two week
 +
 +
 +
==Modules Developed ==
 +
 +
During the course of the project modules and functionalities have been added. 
 +
 +
'''RRC Entities'''
 +
 +
UeLteRrc : This class implements the RRC control entity for UE for establishing and maintaining RRC Control plane Entity.
 +
EnbLteRrc : class implements the RRC control entity for eNodeB for establishing and maintaining RRC Control plane Entity.
 +
 +
 +
 +
'''Call Control Messages'''
 +
 +
RrcIdealConnectionreq: The RRC Connection Establishment message between UE and ENodeB. UE will come in RRC_CONNECTED state . Ref Section section 5.3.3 TS 36.331
 +
 +
RrcConnectionReConfiguration: The Radio Resource ReConfig message . Ref  section 5.3.5 TS 36.331.
 +
 +
RrcConnectionReject: This procedure is to release the established RRC connection . The Ue will go in RRC_IDLE mode .Ref  section 5.3.8 of TS 36.331
 +
 +
 +
 +
'''System information'''
 +
 +
SystemInfoMIB: The System Information message. configure downlink bandwidth  and frame number to UE.
 +
SystemInfoSIB: Configure cellid and plmid in the UE. Ref  section 5.2 of TS 36.331
 +
 +
 +
 +
'''Paging'''
 +
 +
Paging: sending paging message . Refer section 5.3.2 of 36.331
 +
 +
 +
 +
'''Functionalities'''
 +
 +
Send and receive handling of procedure in UE and eNodeB .
 +
 +
Storing the system information and other relevant parameters in both UE and eNodeB .
 +
 +
Updation of RRC states on reception of RRC connection req and RRC connection reject. 
 +
 +
 +
==Mid Term Review ==
 +
 +
'''Review 1''' [http://codereview.appspot.com/4811043 http://codereview.appspot.com/4811043]
 +
 +
 +
'''Review 2''' [http://codereview.appspot.com/4830049/ http://codereview.appspot.com/4811043]
 +
 +
== Goals Achieved ==
 +
 +
Following are the goals which are achieved in this project.
 +
 +
1. Incorporation of control plane RRC procedures in existing LTE module.
 +
 +
2. State change on the reception of RRC messages.
 +
 +
3. Test Script to send system information and other control messages.
 +
 +
 +
== Test Script ==
 +
 +
 +
For running the test case
 +
 +
 +
<math> ./test.py --suite=lte-rrc-messages </math>
 +
 +
 +
==Weekly Status Report ==
 +
 +
Most of the status is discussed over mail, here are the summery of work done in each week
 +
 +
===Week 1===
 +
 +
 +
work done : API design in progress , UML diagram ( partial ) and Identification of parameters in each message.
 +
Initial  API design for system information and Call control procedures have been done.
 +
 +
===Week 2 & 3===
 +
 +
1. API design completed ( header files for system information , Paging and other call control procedure example : RRC Connection establishment , RRC connection release , RRC connection re establishment etc. - compiled successfully
 +
 +
2. Information element and messages identified and defined as per 3GPP.
 +
 +
3. Initial version of Master Information block and other SIBs APIs - ongoing
 +
 +
Though there are some hurdles coming regarding the code update on repository . I have already informed this to the concerned person hope to get it done soon.
 +
In process of completing the System information part - As a part of mid term code review.
 +
 +
 +
=== Week 4  ===
 +
 +
As per the discussion and comments given for the mid review has been incorporated . Implementation regarding the procedures between UE and eNodeB has been started.
 +
 +
Implementation of storing the UE related information  session has been done . API for processing in ue and enodeB of these messages is implemented in the files ue-rrc-cp-entity and enb-rrc-cp-entity.
 +
 +
===Week 5 ===
 +
 +
Developed classes for RRC messages system information , paging , RRC connection request , RRC connection reject , RRC connection reconfiguration
 +
 +
Send function for UE RRC Entity and Enb RRC Entity.
 +
 +
Implementation of storing system information and other call connection values in UE RRC entity.
 +
 +
===Week 6 ===
 +
 +
Implementation of handling of RRC procedures in UE entity
 +
 +
=== Week 7 ===
 +
 +
Implementation of handling of RRC procedures in RRC entity .
 +
 +
Modification of control RRC data in eNB and integration with uerecord and ue manager .
 +
 +
 +
===Week 8 ===
 +
 +
Modification in the control messages specific APIs has been done.
 +
 +
Doxygen Updation .
 +
 +
Implementation of test script for sending system information and paging information from eNB to UE.
 +
 +
===Week 9 ===
 +
 +
Running the test cases using test.py.
 +
 +
Fixing the crashes using gdb debuuger.
 +
 +
Addition of paging and system information SIB messages.
 +
 +
Updation of doxygen

Latest revision as of 13:57, 19 August 2011

Objective

Current RRC entity in the present LTE module of ns-3 has the handling of user plane. This proposal is to enhance and develop the RRC entity is ns-3 LTE for control plane handling in UE and eNodeB. We aim to incorporate following functionality viz. Paging, System Information (MIB, SIBType1 and SIBType2) and connection control (RRC establishment, RRC reconfiguration, RRC release and RRC resource configuration)

Introduction

The Radio Resource Control (RRC), i.e., layer 3, for control plane is responsible for, establishing the radio bearers, control of radio resource usage and configuring all the lower layers. It handles system information, carries out mobility function and QoS management function. Key features include 1. System information handling 2. Paging 3. Connection control.


List of Functions to be implemented in this project

• System Information: Reception and transmission at UE and eNodeB • Paging: Reception and Transmission at UE and eNodeB • Connection control Procedures: Following procedures have been identified for the implementation in during NSoC 2011.

 RRC connection establishment ,
 RRC Connection Reconfiguration ,
 RRC Connection Release ,
 UE action upon leaving

Deliverables

At the end of the project we will be able establish between UE and eNodeB the SRB0/SRB1/DRBs. And UE and EnodeB can able to perform following procedures Paging, System Information , Connection control procedures ( RRC establishment , RRC reconfiguration , RRC release ).

Functional Description

1. System information: System configuration messages send to your from e-utran are system information messages. System information classified in following four broad categories. Master information block: Contains information parameter for initial access. SIB1 contains information parameter for cell selection. SIB2 contains information parameter for common and shared channel.

2. Paging: To inform for the incoming calls to UE paging messages are used. Transmission of paging is done by base station (section 5.3.2 of 36.331). Reception and processing of paging in UE (section 5.3.2.3).

3. Connection Control: To establish connection to exchange information. Following sub procedure under this category which will provide functionality related to establishment/maintenance/release of radio bearers RRC connection establishment (section 5.3.2), RRC reconfiguration (section 5.3.5) and RRC connection release (section 5.3.8).

Time schedule

      Items 	                   Time 
      API Design	         Two week
      System Information	 One week
      Paging	                 One week
      Connection Control  	 Three week
      Integration and testing	 Two week
      Final wrap-up	         Two week


Modules Developed

During the course of the project modules and functionalities have been added.

RRC Entities

UeLteRrc : This class implements the RRC control entity for UE for establishing and maintaining RRC Control plane Entity. EnbLteRrc : class implements the RRC control entity for eNodeB for establishing and maintaining RRC Control plane Entity.


Call Control Messages

RrcIdealConnectionreq: The RRC Connection Establishment message between UE and ENodeB. UE will come in RRC_CONNECTED state . Ref Section section 5.3.3 TS 36.331

RrcConnectionReConfiguration: The Radio Resource ReConfig message . Ref section 5.3.5 TS 36.331.

RrcConnectionReject: This procedure is to release the established RRC connection . The Ue will go in RRC_IDLE mode .Ref section 5.3.8 of TS 36.331


System information

SystemInfoMIB: The System Information message. configure downlink bandwidth and frame number to UE. SystemInfoSIB: Configure cellid and plmid in the UE. Ref section 5.2 of TS 36.331


Paging

Paging: sending paging message . Refer section 5.3.2 of 36.331


Functionalities

Send and receive handling of procedure in UE and eNodeB .

Storing the system information and other relevant parameters in both UE and eNodeB .

Updation of RRC states on reception of RRC connection req and RRC connection reject.


Mid Term Review

Review 1 http://codereview.appspot.com/4811043


Review 2 http://codereview.appspot.com/4811043

Goals Achieved

Following are the goals which are achieved in this project.

1. Incorporation of control plane RRC procedures in existing LTE module.

2. State change on the reception of RRC messages.

3. Test Script to send system information and other control messages.


Test Script

For running the test case


<math> ./test.py --suite=lte-rrc-messages </math>


Weekly Status Report

Most of the status is discussed over mail, here are the summery of work done in each week

Week 1

work done : API design in progress , UML diagram ( partial ) and Identification of parameters in each message. Initial API design for system information and Call control procedures have been done.

Week 2 & 3

1. API design completed ( header files for system information , Paging and other call control procedure example : RRC Connection establishment , RRC connection release , RRC connection re establishment etc. - compiled successfully

2. Information element and messages identified and defined as per 3GPP.

3. Initial version of Master Information block and other SIBs APIs - ongoing

Though there are some hurdles coming regarding the code update on repository . I have already informed this to the concerned person hope to get it done soon. In process of completing the System information part - As a part of mid term code review.


Week 4

As per the discussion and comments given for the mid review has been incorporated . Implementation regarding the procedures between UE and eNodeB has been started.

Implementation of storing the UE related information session has been done . API for processing in ue and enodeB of these messages is implemented in the files ue-rrc-cp-entity and enb-rrc-cp-entity.

Week 5

Developed classes for RRC messages system information , paging , RRC connection request , RRC connection reject , RRC connection reconfiguration

Send function for UE RRC Entity and Enb RRC Entity.

Implementation of storing system information and other call connection values in UE RRC entity.

Week 6

Implementation of handling of RRC procedures in UE entity

Week 7

Implementation of handling of RRC procedures in RRC entity .

Modification of control RRC data in eNB and integration with uerecord and ue manager .


Week 8

Modification in the control messages specific APIs has been done.

Doxygen Updation .

Implementation of test script for sending system information and paging information from eNB to UE.

Week 9

Running the test cases using test.py.

Fixing the crashes using gdb debuuger.

Addition of paging and system information SIB messages.

Updation of doxygen