GSOC2024Channels5GFinalReport

From Nsnam
Jump to navigation Jump to search

Project Overview

  • Project Name: 5G NR Module Benchmark and Analysis for Distinct Channel Models
  • Student: Joao Albuquerque
  • Mentors: Biljana Bojovic, Amir Ashtari, and Gabriel Ferreira

The project aims to integrate the two new channel models, NYUSIM and Fluctuating Two-Ray (FTR), into the NR module in a simplified and user-friendly manner. Additionally, some tasks will be carried out during the implementation process, such as testing the code and creating examples that demonstrate the use of the implemented models.

Merge Requests and Project Details

I maintained two branches to accomplish all the code written during GSoC: bwp-interface-enhancement and enable-non-su-mimo.

Project Wiki Page: GSOC2024Channels5G

Proposal: [1]

Merge Requests
No. Name Status
[1] Draft: GSoC 2024: Refactor band configuration and initialization with a modular approach (Enhancement) Draft
[2] Draft: GSoC2024: Enable non-su-mimo channel models Draft

Community Bonding Period

During the bonding period, we discussed all the significant parts of the project before the implementation started. Therefore, I began to:

  • Understand how the NYUSIM channel model interface was implemented in the mmWave module
  • Read papers regarding the implementation of both NYUSIM and FTR
  • Plan the user-friendly interface for channel model selection and configuration
  • Discuss some issues that this implementation could generate in the code

Coding Phase and Work Packages

As proposed for the coding period, we set some goals divided into work packages.

Work Package 1

In the first one, four goals were decided upon:

Achieved in week 4: [2]

  • Prepare 5G-Lena for different channel models that may not have a spectrum channel matrix for SU-MIMO and create a merge request to 5G-Lena. [milestone 1]

Achieved in week 6: [3]

  • Implement an interface for selecting the channel model via the NR helper class and create a merge request for 5G-Lena. [milestone 2]
  • Create a conditional build depending on the NYU channel model available in ns-3 and create a merge request to 5G-Lena. [milestone 3] specific commit
  • Extend the NR helper to allow the configuration of 3GPP NTN channel models and create a merge request for 5G-Lena. [milestone 4] specific commit
  • NOTE: After discussing some points, we decided to improve our approach [4]

Work Package 2

In the second work package, we aim to evaluate the channel models by creating one example, test code, and plotting some physical metrics and key performance indicators (KPIs):

Achieved in week 13: [5]

  • Identify and implement the appropriate scenario for all channel models

Achieved in week 17: [6], [7], [8]

  • Prepare traces to be measured (e.g., entire simulation time, SINR, throughput, latency, etc.) and scripts for running and plotting based on the implemented example
  • Analyze, evaluate, and plot the results of the accomplished example

Achieved in week 18: [9]

  • Extend the example to be used as a test and create a merge request of the implemented test to 5G-Lena

Addditional Features

In addition to the proposed activities, I created a new API, NrChannelHelper, which allowed me to redesign how users select and configure channels. This API also enabled the extension to use all the legacy fading and propagation models not previously supported in the 5G-Lena module before my work. Additionally, the NrHelper API has been extended to enable the use of legacy antennas, which will be used in conjunction with the fading and propagation models present in ns-3.

My Experience

Acknowledgements

I want to thank all my mentors, Biljana Bojovic, Gabriel Ferreira, and Amir Ashtari, for always helping me understand the code architecture and how to work with open source. I would also like to thank Tom Henderson, who, although not one of my mentors, played a crucial role in improving the developed code. Finally, a general thanks to the Google Summer of Code project and the 5G-Lena team.

Challenges Faced

In the implementation phase, more precisely, I faced challenges in modularizing the code so that the proposed channel models and the legacy models were included. Additionally, understanding the results at the physical and application layer levels for the FTR and NYUSIM models was challenging.