[Ns-developers] ELENA v1.0 | LTE module extension for ns-3.29 | Public release

zali at cttc.es zali at cttc.es
Mon Feb 4 14:55:05 PST 2019

Dear Fraunhofer team,

We are very thankful to you for your great effort in implementing highly 
desirable features and sharing the code. I would like to take this 
opportunity to discuss publicly the plan to move forward and merge these 
features into ns-3-dev. At CTTC, after evaluating your code we think 
that the approach of merging all the code at once is too aggressive, we 
will not know where the problems will come up, with so many changes in 
parallel. Therefore, we would like to take this merge feature by 
feature. We are aware that it could take longer time as compared to 
merging all at once but it would help us for overall integration and 

We have already ported the RLF implementation on top of the latest 
ns-3-dev and have also improved the provided example and test. Moreover, 
we have also included the design documentation for the implementation, 
while the documentation for the example and the test will be added soon. 
The code is available at 
https://gitlab.com/ZorazeAli/ns-3-dev/tree/rlf-ns-3-dev . We will be 
thankful if the Fraunhofer team or any other member of the community 
could review it and could provide us a feedback.

For rest of the features, we would like to proceed in the following  order,

 1. Idle mode cell (re) selection
 2. Handover failure
 3. Paging
 4. Timing advance and uplink resynchronization
 5. Integration of real RACH module

Similarly, upon the completion of each feature we would ask for a public 
review by announcing it through the ns-3 developers list.

Kind regards,


On 14/12/2018 15:57, Oleinichenko, Oleg wrote:
> Dear ns-3 community,
> We would like to announce development work which has been done at Fraunhofer ESK on ns-3 LTE module. This work has been recently finished and resulted in the first public release of the enhanced LTE architecture that is ready for an external review now. You can access the code under the link here:https://gitlab.cc-asp.fraunhofer.de/elena-ns3-lte/elena
> This is the ns-3 LTE module extension for the simulation of 4G cellular networks. The updated LTE module now supports long-awaited RRC LTE IDLE mode features. The implementation is as per the 3GPP standard documentation in accordance with ns-3 LTE code structure and existing physical basis (integration limitations). The implemented functionalities enable the UE to transition from IDLE to CONNECTED state upon data transfer request and CONNECTED to IDLE state during, for example, intermittent connectivity or connection failures what results in more realistic LTE delay profiles. Due to the bidirectional RRC states transition, that is the basis of this work, the current enhanced LTE module enables large scale simulations with thousands of nodes what takes down the previously known scalability constrains. All components/features of this extension are closely coupled with each other and jointly complement the existing LTE module. This extension is designed as an integral contribution rather than a set of stand-alone features. The goal of this work is to integrate entire extension into current ns-3 LTE default branch. Therefore, we encourage LTE maintainers/experts to facilitate the process of external revision for its successful approval and fast implementation into subsequent ns-3 version release.
> Please review the code and forward your inquires in the form of tickets (issues) and comments on the GitLab so that we can effectively address them.
> Yours Fraunhofer ESK development team,
> ns3-dev at esk.fraunhofer.de<mailto:ns3-dev at esk.fraunhofer.de>
> http://www.esk.fraunhofer.de<http://www.esk.fraunhofer.de/>
> In below you will find the release notes (features overview) of the ELENA extension.
> -------------------------------------------------------------------------------------
> ELENA extension features
> New Features that extend original ns-3.29 LTE model functionalities:
> Paging
> - Paging procedure to establish a RRC connection between UE and eNodeB (IDLE to CONNECTED state transition) when downlink data has to be sent.
> Time Alignment
> - Uplink synchronization feature is simulated by the transmission of newly implemented timing advance messages during data transfer. The messages are sent based on the distance between UE and eNodeB (as in ns-3 frames are always assumed to be aligned). Thus, only the TimeAlignmentTimer is restarted and no uplink transmission timing adjustments is applied at the UE.
> - The duration of the TimeAlignmentTimer is set to a fixed value (static configuration) or changes based on the UE speed (dynamic configuration) depending on the configuration selected.
> - The Random Access procedures in RRC connected state are also implemented to regain the uplink synchronization of the UE upon data arrival (DL or UL). Transition from connected OUT-OF-SYNC to connected IN-SYNC state takes place.
> Radio Link Failure
> - Radio Link Failure procedure is added with in-sync and out-of-sync indications to detect spotty coverage or poor signal quality cases. Upon detection, the RRC connection is released (CONNECTED to IDLE state transition) and no RRC connection reestablishment is carried out.
> Handover Failure
> - Handover Failure mechanism is added  to transition the UE from CONNECTED to IDLE state by sending an ideal RRC connection release message from eNodeB to UE upon expiry of handover timers, maximal non-contention preambles number is reached or Random Access Failure occurred. Upon detection, no RRC connection reestablishment is carried out.
> - The introduction of the handover cancel message (as per 3GPP standard) to remove UE context at target eNodeB (if present) and the reuse of handover preparation failure message to remove UE context at source eNodeB upon handover failure (to avoid unwanted errors).
> Cell Reselection
> - Cell reselection procedure is implemented to provide the idle mode mobility which ensures the UE is always camped on the best cell. Mobility dependent cell reselection is also supported.
> Random Access
> - The realistic Random Access module from LENA+ (https://github.com/signetlabdei/lena-plus) is integrated into ns-3.29 which provides message 1 and message 3 collision detection mechanisms, preamble power ramping and contention resolution.
> - The realistic Random Access module does not solve contention if at least one of the message 3 does not collide with other message 3 (for UEs with the same RNTI). Contention Resolution message is added as LteControlMessage to resolve contention and it is sent in parallel with Connection Setup or Connection Reconfiguration (message 4).
> - The procedure is created to inform the eNodeB in an ideal way to remove the UE context at eNodeB and the core network when random access failure occurs.
> State transitions implementation (IDLE to CONNECTED, CONNECTED to IDLE)
> - The transition procedure from CONNECTED to IDLE state (RRC connection release) is created at UE by appropriate implementation of the reset methods at each of the relevant protocol stack layers of UE.
> - The procedure to transition UE transitions from CONNECTED to IDLE state is created to send the RRC connection release when the appropriate connection setup timer expires.
> - The RRC connection release message is modified to be sent in an ideal manner for both RRC ideal and real protocols to ensure the UE transitions to idle state upon expiration of any eNodeB timers or failure detections.
> - UE-triggered service request procedure to establish an RRC connection between UE and eNodeB (from IDLE to CONNECTED state transition) when uplink data has to be sent.
> - Inactivity timer is implemented to detect UE transmission inactivity and release the RRC connection.
> ------------------------------------------------------------------------------------------------
> All necessary tests and examples one can find in the respective folders of the LTE module branch.
> In addition to many modified tests cases, the new ones are listed below:
> lte-test-cell-reselection
> lte-test-cell-selection
> lte-test-handover-failure
> lte-test-paging
> lte-test-radio-link-failure
> lte-test-uplink-synchronization
> The new examples one can find by the following names:
> lena-cell-reselection
> lena-handover-failure
> lena-radio-link-failure
> lena-paging
> lena-uplink-synchronization
> -------------------------------------------------------------------------------?

More information about the Ns-developers mailing list