GSOC20235GUsability

From Nsnam
Revision as of 04:44, 22 July 2023 by Ggrieco (Talk | contribs)

Jump to: navigation, search

Main Page - Current Development - Developer FAQ - Tools - Related Projects - Project Ideas - Summer Projects

Installation - Troubleshooting - User FAQ - HOWTOs - Samples - Models - Education - Contributed Code - Papers

Back to GSoC 2023 projects

Project Overview

  • Project Name: IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module
  • Student: Giovanni Grieco
  • Mentors: Tom Henderson, Katerina Koutlia, and Biljana Bojovic
  • Google page: https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT
  • Project Goals: IUNS-3 5G NR is a GSoC '23 medium-size project proposal that offers a general purpose introductory scenario to dive into the 5G New Radio world, unlocking the ability for users, from university students to research scientists and engineers, to know the 5G architecture in detail and enable them to use the simulator for research and development.
  • Repositories:
  • About Me: I am a second-year PhD Student in Electrical and Information Engineering at Polytechnic University of Bari, Italy, focused on Telecommunications Engineering and, more specifically, the Internet of Drones. ns-3 orbited so much around my university career, as I have been developing IoD-Sim, a ns-3 module for the Internet of Drones, since my bachelor's final thesis in 2019. ns-3 still remains my primary tool to test out experimental protocols, applications, and communication technologies that would otherwise require very expensive infrastructure to reproduce in the laboratory. This Google Summer of Code project represents a unique opportunity to better know the community, learn from their experiences, and contribute my ideas to upstream!

Milestones

Week 1

  1. Read 3GPP TR 38.300 as an overview. In general, we will look to align with 3GPP terminology and specifications.
  2. Start to document somewhere (Google doc, or Sphinx) the lifecycle of these UDP packets-- what are the interesting things that happen to each packet to get it through the RAN?
  3. Start to migrate LOG statements so that interesting logs are in NS_LOG_INFO and NS_LOG_WARN. See WifiHelper::EnableLogComponents()-- we should come up with a similar one for NrHelper::EnableLogComponents (level=INFO by default). Alternative is to place dedicated methods in the nr examples, tailored to logs of interest.
  4. Enable traces: //nrHelper->EnableTraces(); perhaps controlled by a command line argument. How can these help the new user?
  5. Line 453 of cttc-nr-demo.cc states: // From here, it is standard NS3. In the future, we will create helpers for this part as well. Start to create such helpers, focusing first on application and TFT configuration.
  6. Start to experiment with the ConfigStore loading and saving of attributes and default values.
  7. Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice? Packet tags?

Weekly Report

Week 1 [May 29 - Jun 03]

  • Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch
  • Milestone 5 is tracked over MR !52
  • Some compile-time deprecation/warnings were addressed in MRs !48 and !49
  • Minor fixes made in MRs !50, !51, !53

Week 2 [Jun 05 - 10]

Week 3 [Jun 12 - 17]

Week 4 [Jun 19 - 24]

  • An experimental fix of pipeline with has been made with commit 78bdebbe
  • Some advices were made to improve MR !54 even more, by aligning the pipeline configuration with ns-3.
  • Fixing compile issues with MR !60

Week 5 [Jun 26 - Jul 01]

  • Alignment of the pipeline with ns-3 has been made in MR !54
  • Presentation of the current state of the project, issues, and difficulties at WNS3 2023
  • Fixing 'cttc-nr-demo' usability issues with MRs !61

Week 6 [Jul 03 - Jul 08]

  • All previous merge requests were checked for issues and fixed.
  • Started a thorough and high-level description of the 'cttc-nr-demo' scenario at this repository.

Week 7 [Jul 10 - Jul 15]

  • Wrote an initial draft for a tutorial that would help newcomers in getting started and understanding the NR module.
  • Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams.
  • Added documentation on 'GridScenarioHelper' with MR !62

Week 8 [Jul 17 - Jul 22]

TBD