<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.nsnam.org/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ggrieco</id>
	<title>Nsnam - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.nsnam.org/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ggrieco"/>
	<link rel="alternate" type="text/html" href="https://www.nsnam.org/wiki/Special:Contributions/Ggrieco"/>
	<updated>2026-05-02T11:38:25Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12992</id>
		<title>GSOC20235GUsabilityFinalReport</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12992"/>
		<updated>2023-12-01T10:04:38Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: Update Gitlab MR states&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name''': [https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module]&lt;br /&gt;
* '''Contributor''': Giovanni Grieco&lt;br /&gt;
* '''Mentors''': Tom Henderson, Katerina Koutlia, and Biljana Bojovic&lt;br /&gt;
* '''Main Goal''': The primary objective of this project was to enhance the user-friendliness of the 5G NR module within ns-3. This was achieved by providing an inviting user experience and a detailed tutorial that is specifically designed to help users understand the inner workings of a simulated 5G Radio Access Network (RAN) during their initial usage.&lt;br /&gt;
* '''Useful links''':&lt;br /&gt;
** [https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability Project wiki page] - used to track the work in progress.&lt;br /&gt;
** [https://gitlab.com/ggrieco/gsoc23-iuns-3 Project patch set repository] - used to archive all the work done for this GSoC. '''If you are a reviewer, follow this link to check all the code done.'''&lt;br /&gt;
** [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf] - this is the snapshot of the tutorial made for this GSoC Project.&lt;br /&gt;
** [https://gitlab.com/nsnam/ns-3-dev ns-3-dev Official Repository] - will be referenced in the project.&lt;br /&gt;
** [https://gitlab.com/cttc-lena/nr/ nr Official Repository] - used to push MRs in output of this GSoC project.&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Provide a description of how packets flow through the 5G NR RAN. Be able to answer the question &amp;quot;what happens to the traffic between a gNB and a UE?&amp;quot;&lt;br /&gt;
# Improve or add documentation when necessary, in order to address usability issues in understanding fundamental example scenarios, such as &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Enhance packet/frame tracing capabilities by offering flexible log messages and trace sources.&lt;br /&gt;
# Review and refactor code to improve clarity on example scenarios.&lt;br /&gt;
# Be able to measure latency at different layers of the NR stack.&lt;br /&gt;
&lt;br /&gt;
= Activities =&lt;br /&gt;
&lt;br /&gt;
* ns-3-dev and NR were forked at their respective versions: 3.39 and 2.5.x, creating the following two personal repositories: [https://gitlab.com/ggrieco/ns-3-dev ggrieco/ns-3-dev] and [https://gitlab.com/ggrieco/nr ggrieco/nr].&lt;br /&gt;
* Analyzed the &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example for usability issues.&lt;br /&gt;
* Helped mentors in fixing pipeline configuration issues, hindering the correct checking of build and code style.&lt;br /&gt;
* Presented work being done and merged over the NR module at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023], gathering interesting feedback from the ns-3 community.&lt;br /&gt;
* Created a tutorial to better understand how the NR module works, based on &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example.&lt;br /&gt;
* Various documentation and log improvements tracked by MRs.&lt;br /&gt;
&lt;br /&gt;
== Deviations ==&lt;br /&gt;
&lt;br /&gt;
The project focused on milestones different from the ones listed in the starting project idea after internal meetings with mentors and feedback gathered during the Community Bonding Period.&lt;br /&gt;
&lt;br /&gt;
== Merge Requests ==&lt;br /&gt;
&lt;br /&gt;
All the following activities can be easily reviewed on the following MRs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Merge Requests&lt;br /&gt;
|-&lt;br /&gt;
! No. !! Name !! Status !! Archived Patchset&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50 docs: Update sqlite support message] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51 nr-helper: Drop undefined method] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52 Example Usability Improvements] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR52?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53 examples: Fix CommandLine declaration for doxygen] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 !54 gitlab-ci-gcc: Fix and upgrade build pipeline] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55 examples, docs: Update TR 38.900 references to TR 38.901] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56 Readme: Reference the Doxygen tutorial to learn how to run examples] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57 cttc-nr-demo: Add reference to TS 38.300] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58 cttc-nr-demo: Add reference to ns-3 logging tutorial] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59 cttc-nr-demo: Add lower-bound frequency check as per TR 39.901] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60 nr-radio-environment-map-helper: Remove unused variable] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61 cttc-nr-demo: Clarify GridScenarioHelper usage] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR61?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62 grid-scenario-helper: Add documentation] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR62?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/63 !63 gitlab-ci: Fix SSL errors on git clone] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 15 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65 cttc-nr-demo: Usability improvements over Packet Tracing] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR65?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 16 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67 cttc-nr-demo: Add references to standards and ns-3 docs] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR67?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 !68 logs: Demote Informational logs messages to Function trace messages] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR68?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71 cttc-nr-demo Tutorial] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR71?ref_type=heads link]. [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf compiled PDF]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Future Works =&lt;br /&gt;
&lt;br /&gt;
Since the milestones are flexible and subject to continuous enhancement, future efforts can be directed towards:&lt;br /&gt;
&lt;br /&gt;
# Completing the pending MRs that are currently under review.&lt;br /&gt;
# Enhancing the [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf tutorial] to provide clearer explanations for certain aspects of the simulation, particularly those pertaining to the MAC and PHY layers, in order to align more effectively with the stated milestones.&lt;br /&gt;
# Improving the overall state of documentation and code readability of example scenarios.&lt;br /&gt;
&lt;br /&gt;
= Acronyms =&lt;br /&gt;
&lt;br /&gt;
* Centre Tecnològic de Telecomunicacions de Catalunya (CTTC)&lt;br /&gt;
* Google Summer of Code (GSoC)&lt;br /&gt;
* Medium Access Control (MAC)&lt;br /&gt;
* Merge Request (MR)&lt;br /&gt;
* New Radio (NR)&lt;br /&gt;
* Next Generation Node-B (gNB)&lt;br /&gt;
* Radio Access Network (RAN)&lt;br /&gt;
* User Equipment (UE)&lt;br /&gt;
* Workshop on ns-3 (WNS3)&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12949</id>
		<title>GSOC20235GUsabilityFinalReport</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12949"/>
		<updated>2023-09-11T16:04:31Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name''': [https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module]&lt;br /&gt;
* '''Contributor''': Giovanni Grieco&lt;br /&gt;
* '''Mentors''': Tom Henderson, Katerina Koutlia, and Biljana Bojovic&lt;br /&gt;
* '''Main Goal''': The primary objective of this project was to enhance the user-friendliness of the 5G NR module within ns-3. This was achieved by providing an inviting user experience and a detailed tutorial that is specifically designed to help users understand the inner workings of a simulated 5G Radio Access Network (RAN) during their initial usage.&lt;br /&gt;
* '''Useful links''':&lt;br /&gt;
** [https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability Project wiki page] - used to track the work in progress.&lt;br /&gt;
** [https://gitlab.com/ggrieco/gsoc23-iuns-3 Project patch set repository] - used to archive all the work done for this GSoC. '''If you are a reviewer, follow this link to check all the code done.'''&lt;br /&gt;
** [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf] - this is the snapshot of the tutorial made for this GSoC Project.&lt;br /&gt;
** [https://gitlab.com/nsnam/ns-3-dev ns-3-dev Official Repository] - will be referenced in the project.&lt;br /&gt;
** [https://gitlab.com/cttc-lena/nr/ nr Official Repository] - used to push MRs in output of this GSoC project.&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Provide a description of how packets flow through the 5G NR RAN. Be able to answer the question &amp;quot;what happens to the traffic between a gNB and a UE?&amp;quot;&lt;br /&gt;
# Improve or add documentation when necessary, in order to address usability issues in understanding fundamental example scenarios, such as &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Enhance packet/frame tracing capabilities by offering flexible log messages and trace sources.&lt;br /&gt;
# Review and refactor code to improve clarity on example scenarios.&lt;br /&gt;
# Be able to measure latency at different layers of the NR stack.&lt;br /&gt;
&lt;br /&gt;
= Activities =&lt;br /&gt;
&lt;br /&gt;
* ns-3-dev and NR were forked at their respective versions: 3.39 and 2.5.x, creating the following two personal repositories: [https://gitlab.com/ggrieco/ns-3-dev ggrieco/ns-3-dev] and [https://gitlab.com/ggrieco/nr ggrieco/nr].&lt;br /&gt;
* Analyzed the &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example for usability issues.&lt;br /&gt;
* Helped mentors in fixing pipeline configuration issues, hindering the correct checking of build and code style.&lt;br /&gt;
* Presented work being done and merged over the NR module at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023], gathering interesting feedback from the ns-3 community.&lt;br /&gt;
* Created a tutorial to better understand how the NR module works, based on &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example.&lt;br /&gt;
* Various documentation and log improvements tracked by MRs.&lt;br /&gt;
&lt;br /&gt;
== Deviations ==&lt;br /&gt;
&lt;br /&gt;
The project focused on milestones different from the ones listed in the starting project idea after internal meetings with mentors and feedback gathered during the Community Bonding Period.&lt;br /&gt;
&lt;br /&gt;
== Merge Requests ==&lt;br /&gt;
&lt;br /&gt;
All the following activities can be easily reviewed on the following MRs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Merge Requests&lt;br /&gt;
|-&lt;br /&gt;
! No. !! Name !! Status !! Archived Patchset&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50 docs: Update sqlite support message] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51 nr-helper: Drop undefined method] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52 Example Usability Improvements] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR52?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53 examples: Fix CommandLine declaration for doxygen] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 !54 gitlab-ci-gcc: Fix and upgrade build pipeline] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55 examples, docs: Update TR 38.900 references to TR 38.901] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56 Readme: Reference the Doxygen tutorial to learn how to run examples] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57 cttc-nr-demo: Add reference to TS 38.300] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58 cttc-nr-demo: Add reference to ns-3 logging tutorial] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59 cttc-nr-demo: Add lower-bound frequency check as per TR 39.901] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60 nr-radio-environment-map-helper: Remove unused variable] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61 cttc-nr-demo: Clarify GridScenarioHelper usage] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR61?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62 grid-scenario-helper: Add documentation] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR62?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/63 !63 gitlab-ci: Fix SSL errors on git clone] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 15 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65 cttc-nr-demo: Usability improvements over Packet Tracing] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR65?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 16 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67 cttc-nr-demo: Add references to standards and ns-3 docs] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR67?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 !68 logs: Demote Informational logs messages to Function trace messages] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR68?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71 cttc-nr-demo Tutorial] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR71?ref_type=heads link]. [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf compiled PDF]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Future Works =&lt;br /&gt;
&lt;br /&gt;
Since the milestones are flexible and subject to continuous enhancement, future efforts can be directed towards:&lt;br /&gt;
&lt;br /&gt;
# Completing the pending MRs that are currently under review.&lt;br /&gt;
# Enhancing the [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf tutorial] to provide clearer explanations for certain aspects of the simulation, particularly those pertaining to the MAC and PHY layers, in order to align more effectively with the stated milestones.&lt;br /&gt;
# Improving the overall state of documentation and code readability of example scenarios.&lt;br /&gt;
&lt;br /&gt;
= Acronyms =&lt;br /&gt;
&lt;br /&gt;
* Centre Tecnològic de Telecomunicacions de Catalunya (CTTC)&lt;br /&gt;
* Google Summer of Code (GSoC)&lt;br /&gt;
* Medium Access Control (MAC)&lt;br /&gt;
* Merge Request (MR)&lt;br /&gt;
* New Radio (NR)&lt;br /&gt;
* Next Generation Node-B (gNB)&lt;br /&gt;
* Radio Access Network (RAN)&lt;br /&gt;
* User Equipment (UE)&lt;br /&gt;
* Workshop on ns-3 (WNS3)&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12948</id>
		<title>GSOC20235GUsabilityFinalReport</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12948"/>
		<updated>2023-09-11T16:04:15Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name''': [https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module]&lt;br /&gt;
* '''Contributor''': Giovanni Grieco&lt;br /&gt;
* '''Mentors''': Tom Henderson, Katerina Koutlia, and Biljana Bojovic&lt;br /&gt;
* '''Main Goal''': The primary objective of this project was to enhance the user-friendliness of the 5G NR module within ns-3. This was achieved by providing an inviting user experience and a detailed tutorial that is specifically designed to help users understand the inner workings of a simulated 5G Radio Access Network (RAN) during their initial usage.&lt;br /&gt;
* '''Useful links''':&lt;br /&gt;
** [https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability Project wiki page] - used to track the work in progress.&lt;br /&gt;
** [https://gitlab.com/ggrieco/gsoc23-iuns-3 Project patch set repository] - used to archive all the work done for this GSoC. '''If you are a reviewer, follow this link to check all the code done.'''&lt;br /&gt;
** [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf] - this is the snapshot of the tutorial made for this GSoC Project.&lt;br /&gt;
** [https://gitlab.com/nsnam/ns-3-dev ns-3-dev Official Repository] - will be referenced in the project.&lt;br /&gt;
** [https://gitlab.com/cttc-lena/nr/ nr Official Repository] - used to push MRs in output of this GSoC project.&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Provide a description of how packets flow through the 5G NR RAN. Be able to answer the question &amp;quot;what happens to the traffic between a gNB and a UE?&amp;quot;&lt;br /&gt;
# Improve or add documentation when necessary, in order to address usability issues in understanding fundamental example scenarios, such as &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Enhance packet/frame tracing capabilities by offering flexible log messages and trace sources.&lt;br /&gt;
# Review and refactor code to improve clarity on example scenarios.&lt;br /&gt;
# Be able to measure latency at different layers of the NR stack.&lt;br /&gt;
&lt;br /&gt;
= Activities =&lt;br /&gt;
&lt;br /&gt;
* ns-3-dev and NR were forked at their respective versions: 3.39 and 2.5.x, creating the following two personal repositories: [https://gitlab.com/ggrieco/ns-3-dev ggrieco/ns-3-dev] and [https://gitlab.com/ggrieco/nr ggrieco/nr].&lt;br /&gt;
* Analyzed the &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example for usability issues.&lt;br /&gt;
* Helped mentors in fixing pipeline configuration issues, hindering the correct checking of build and code style.&lt;br /&gt;
* Presented work being done and merged over the NR module at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023], gathering interesting feedback from the ns-3 community.&lt;br /&gt;
* Created a tutorial to better understand how the NR module works, based on &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example.&lt;br /&gt;
* Various documentation and log improvements tracked by MRs.&lt;br /&gt;
&lt;br /&gt;
== Deviations ==&lt;br /&gt;
&lt;br /&gt;
The project focused on milestones different from the ones listed in the starting project idea after internal meetings with mentors and feedback gathered during the Community Bonding Period.&lt;br /&gt;
&lt;br /&gt;
== Merge Requests ==&lt;br /&gt;
&lt;br /&gt;
All the following activities can be easily reviewed on the following MRs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Merge Requests&lt;br /&gt;
|-&lt;br /&gt;
! No. !! Name !! Status !! Archived Patchset&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50 docs: Update sqlite support message] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51 nr-helper: Drop undefined method] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52 Example Usability Improvements] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR52?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53 examples: Fix CommandLine declaration for doxygen] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 !54 gitlab-ci-gcc: Fix and upgrade build pipeline] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55 examples, docs: Update TR 38.900 references to TR 38.901] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56 Readme: Reference the Doxygen tutorial to learn how to run examples] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57 cttc-nr-demo: Add reference to TS 38.300] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58 cttc-nr-demo: Add reference to ns-3 logging tutorial] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59 cttc-nr-demo: Add lower-bound frequency check as per TR 39.901] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60 nr-radio-environment-map-helper: Remove unused variable] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61 cttc-nr-demo: Clarify GridScenarioHelper usage] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR61?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62 grid-scenario-helper: Add documentation] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR62?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/63 !63 gitlab-ci: Fix SSL errors on git clone] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 15 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65 cttc-nr-demo: Usability improvements over Packet Tracing] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR65?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 16 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67 cttc-nr-demo: Add references to standards and ns-3 docs] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR67?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 !68 logs: Demote Informational logs messages to Function trace messages] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR68?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71 cttc-nr-demo Tutorial] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR71?ref_type=heads link]. [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf compiled version]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Future Works =&lt;br /&gt;
&lt;br /&gt;
Since the milestones are flexible and subject to continuous enhancement, future efforts can be directed towards:&lt;br /&gt;
&lt;br /&gt;
# Completing the pending MRs that are currently under review.&lt;br /&gt;
# Enhancing the [https://www.nsnam.org/wp-content/uploads/2023/cttc-nr-demo-tutorial-SNAPSHOT-20230911-GSoCFinalReport.pdf tutorial] to provide clearer explanations for certain aspects of the simulation, particularly those pertaining to the MAC and PHY layers, in order to align more effectively with the stated milestones.&lt;br /&gt;
# Improving the overall state of documentation and code readability of example scenarios.&lt;br /&gt;
&lt;br /&gt;
= Acronyms =&lt;br /&gt;
&lt;br /&gt;
* Centre Tecnològic de Telecomunicacions de Catalunya (CTTC)&lt;br /&gt;
* Google Summer of Code (GSoC)&lt;br /&gt;
* Medium Access Control (MAC)&lt;br /&gt;
* Merge Request (MR)&lt;br /&gt;
* New Radio (NR)&lt;br /&gt;
* Next Generation Node-B (gNB)&lt;br /&gt;
* Radio Access Network (RAN)&lt;br /&gt;
* User Equipment (UE)&lt;br /&gt;
* Workshop on ns-3 (WNS3)&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12947</id>
		<title>GSOC20235GUsabilityFinalReport</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12947"/>
		<updated>2023-09-11T15:49:10Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name''': [https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module]&lt;br /&gt;
* '''Contributor''': Giovanni Grieco&lt;br /&gt;
* '''Mentors''': Tom Henderson, Katerina Koutlia, and Biljana Bojovic&lt;br /&gt;
* '''Main Goal''': The primary objective of this project was to enhance the user-friendliness of the 5G NR module within ns-3. This was achieved by providing an inviting user experience and a detailed tutorial that is specifically designed to help users understand the inner workings of a simulated 5G Radio Access Network (RAN) during their initial usage.&lt;br /&gt;
* '''Useful links''':&lt;br /&gt;
** [https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability Project wiki page] - used to track the work in progress.&lt;br /&gt;
** [https://gitlab.com/ggrieco/gsoc23-iuns-3 Project patch set repository] - used to archive all the work done for this GSoC. '''If you are a reviewer, follow this link to check all the code done.'''&lt;br /&gt;
** [https://gitlab.com/nsnam/ns-3-dev ns-3-dev Official Repository] - will be referenced in the project.&lt;br /&gt;
** [https://gitlab.com/cttc-lena/nr/ nr Official Repository] - used to push MRs in output of this GSoC project.&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Provide a description of how packets flow through the 5G NR RAN. Be able to answer the question &amp;quot;what happens to the traffic between a gNB and a UE?&amp;quot;&lt;br /&gt;
# Improve or add documentation when necessary, in order to address usability issues in understanding fundamental example scenarios, such as &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Enhance packet/frame tracing capabilities by offering flexible log messages and trace sources.&lt;br /&gt;
# Review and refactor code to improve clarity on example scenarios.&lt;br /&gt;
# Be able to measure latency at different layers of the NR stack.&lt;br /&gt;
&lt;br /&gt;
= Activities =&lt;br /&gt;
&lt;br /&gt;
* ns-3-dev and NR were forked at their respective versions: 3.39 and 2.5.x, creating the following two personal repositories: [https://gitlab.com/ggrieco/ns-3-dev ggrieco/ns-3-dev] and [https://gitlab.com/ggrieco/nr ggrieco/nr].&lt;br /&gt;
* Analyzed the &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example for usability issues.&lt;br /&gt;
* Helped mentors in fixing pipeline configuration issues, hindering the correct checking of build and code style.&lt;br /&gt;
* Presented work being done and merged over the NR module at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023], gathering interesting feedback from the ns-3 community.&lt;br /&gt;
* Created a tutorial to better understand how the NR module works, based on &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example.&lt;br /&gt;
* Various documentation and log improvements tracked by MRs.&lt;br /&gt;
&lt;br /&gt;
== Deviations ==&lt;br /&gt;
&lt;br /&gt;
The project focused on milestones different from the ones listed in the starting project idea after internal meetings with mentors and feedback gathered during the Community Bonding Period.&lt;br /&gt;
&lt;br /&gt;
== Merge Requests ==&lt;br /&gt;
&lt;br /&gt;
All the following activities can be easily reviewed on the following MRs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Merge Requests&lt;br /&gt;
|-&lt;br /&gt;
! No. !! Name !! Status !! Archived Patchset&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50 docs: Update sqlite support message] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51 nr-helper: Drop undefined method] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52 Example Usability Improvements] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR52?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53 examples: Fix CommandLine declaration for doxygen] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 !54 gitlab-ci-gcc: Fix and upgrade build pipeline] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55 examples, docs: Update TR 38.900 references to TR 38.901] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56 Readme: Reference the Doxygen tutorial to learn how to run examples] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57 cttc-nr-demo: Add reference to TS 38.300] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58 cttc-nr-demo: Add reference to ns-3 logging tutorial] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59 cttc-nr-demo: Add lower-bound frequency check as per TR 39.901] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60 nr-radio-environment-map-helper: Remove unused variable] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61 cttc-nr-demo: Clarify GridScenarioHelper usage] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR61?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62 grid-scenario-helper: Add documentation] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR62?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/63 !63 gitlab-ci: Fix SSL errors on git clone] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 15 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65 cttc-nr-demo: Usability improvements over Packet Tracing] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR65?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 16 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67 cttc-nr-demo: Add references to standards and ns-3 docs] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR67?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 !68 logs: Demote Informational logs messages to Function trace messages] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR68?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71 cttc-nr-demo Tutorial] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR71?ref_type=heads link]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Future Works =&lt;br /&gt;
&lt;br /&gt;
Since the milestones are flexible and subject to continuous enhancement, future efforts can be directed towards:&lt;br /&gt;
&lt;br /&gt;
# Completing the pending MRs that are currently under review.&lt;br /&gt;
# Enhancing the tutorial to provide clearer explanations for certain aspects of the simulation, particularly those pertaining to the MAC and PHY layers, in order to align more effectively with the stated milestones.&lt;br /&gt;
# Improving the overall state of documentation and code readability of example scenarios.&lt;br /&gt;
&lt;br /&gt;
= Acronyms =&lt;br /&gt;
&lt;br /&gt;
* Centre Tecnològic de Telecomunicacions de Catalunya (CTTC)&lt;br /&gt;
* Google Summer of Code (GSoC)&lt;br /&gt;
* Medium Access Control (MAC)&lt;br /&gt;
* Merge Request (MR)&lt;br /&gt;
* New Radio (NR)&lt;br /&gt;
* Next Generation Node-B (gNB)&lt;br /&gt;
* Radio Access Network (RAN)&lt;br /&gt;
* User Equipment (UE)&lt;br /&gt;
* Workshop on ns-3 (WNS3)&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12940</id>
		<title>GSOC20235GUsabilityFinalReport</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12940"/>
		<updated>2023-09-10T09:19:48Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name''': [https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module]&lt;br /&gt;
* '''Contributor''': Giovanni Grieco&lt;br /&gt;
* '''Mentors''': Tom Henderson, Katerina Koutlia, and Biljana Bojovic&lt;br /&gt;
* '''Main Goal''': The primary objective of this project was to enhance the user-friendliness of the 5G NR module within ns-3. This was achieved by providing an inviting user experience and a detailed tutorial that is specifically designed to help users understand the inner workings of a simulated 5G Radio Access Network (RAN) during their initial usage.&lt;br /&gt;
* '''Useful links''':&lt;br /&gt;
** [https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability Project wiki page] - used to track the work in progress.&lt;br /&gt;
** [https://gitlab.com/ggrieco/gsoc23-iuns-3 Project patch set repository] - used to archive all the work done for this GSoC&lt;br /&gt;
** [https://gitlab.com/nsnam/ns-3-dev ns-3-dev Official Repository] - will be referenced in the project.&lt;br /&gt;
** [https://gitlab.com/cttc-lena/nr/ nr Official Repository] - used to push MRs in output of this GSoC project.&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Provide a description of how packets flow through the 5G NR RAN. Be able to answer the question &amp;quot;what happens to the traffic between a gNB and a UE?&amp;quot;&lt;br /&gt;
# Improve or add documentation when necessary, in order to address usability issues in understanding fundamental example scenarios, such as &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Enhance packet/frame tracing capabilities by offering flexible log messages and trace sources.&lt;br /&gt;
# Review and refactor code to improve clarity on example scenarios.&lt;br /&gt;
# Be able to measure latency at different layers of the NR stack.&lt;br /&gt;
&lt;br /&gt;
= Activities =&lt;br /&gt;
&lt;br /&gt;
* ns-3-dev and NR were forked at their respective versions: 3.39 and 2.5.x, creating the following two personal repositories: [https://gitlab.com/ggrieco/ns-3-dev ggrieco/ns-3-dev] and [https://gitlab.com/ggrieco/nr ggrieco/nr].&lt;br /&gt;
* Analyzed the &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example for usability issues.&lt;br /&gt;
* Helped mentors in fixing pipeline configuration issues, hindering the correct checking of build and code style.&lt;br /&gt;
* Presented work being done and merged over the NR module at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023], gathering interesting feedback from the ns-3 community.&lt;br /&gt;
* Created a tutorial to better understand how the NR module works, based on &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example.&lt;br /&gt;
* Various documentation and log improvements tracked by MRs.&lt;br /&gt;
&lt;br /&gt;
== Deviations ==&lt;br /&gt;
&lt;br /&gt;
The project focused on milestones different from the ones listed in the starting project idea after internal meetings with mentors and feedback gathered during the Community Bonding Period.&lt;br /&gt;
&lt;br /&gt;
== Merge Requests ==&lt;br /&gt;
&lt;br /&gt;
All the following activities can be easily reviewed on the following MRs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Merge Requests&lt;br /&gt;
|-&lt;br /&gt;
! No. !! Name !! Status !! Archived Patchset&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50 docs: Update sqlite support message] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51 nr-helper: Drop undefined method] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52 Example Usability Improvements] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR52?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53 examples: Fix CommandLine declaration for doxygen] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 !54 gitlab-ci-gcc: Fix and upgrade build pipeline] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55 examples, docs: Update TR 38.900 references to TR 38.901] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56 Readme: Reference the Doxygen tutorial to learn how to run examples] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57 cttc-nr-demo: Add reference to TS 38.300] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58 cttc-nr-demo: Add reference to ns-3 logging tutorial] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59 cttc-nr-demo: Add lower-bound frequency check as per TR 39.901] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60 nr-radio-environment-map-helper: Remove unused variable] || Refused || -&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61 cttc-nr-demo: Clarify GridScenarioHelper usage] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR61?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62 grid-scenario-helper: Add documentation] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR62?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/63 !63 gitlab-ci: Fix SSL errors on git clone] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 15 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65 cttc-nr-demo: Usability improvements over Packet Tracing] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR65?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 16 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67 cttc-nr-demo: Add references to standards and ns-3 docs] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR67?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 !68 logs: Demote Informational logs messages to Function trace messages] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR68?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71 cttc-nr-demo Tutorial] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR71?ref_type=heads link]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Future Works =&lt;br /&gt;
&lt;br /&gt;
Since the milestones are flexible and subject to continuous enhancement, future efforts can be directed towards:&lt;br /&gt;
&lt;br /&gt;
# Completing the pending MRs that are currently under review.&lt;br /&gt;
# Enhancing the tutorial to provide clearer explanations for certain aspects of the simulation, particularly those pertaining to the MAC and PHY layers, in order to align more effectively with the stated milestones.&lt;br /&gt;
# Improving the overall state of documentation and code readability of example scenarios.&lt;br /&gt;
&lt;br /&gt;
= Acronyms =&lt;br /&gt;
&lt;br /&gt;
* Centre Tecnològic de Telecomunicacions de Catalunya (CTTC)&lt;br /&gt;
* Google Summer of Code (GSoC)&lt;br /&gt;
* Medium Access Control (MAC)&lt;br /&gt;
* Merge Request (MR)&lt;br /&gt;
* New Radio (NR)&lt;br /&gt;
* Next Generation Node-B (gNB)&lt;br /&gt;
* Radio Access Network (RAN)&lt;br /&gt;
* User Equipment (UE)&lt;br /&gt;
* Workshop on ns-3 (WNS3)&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12939</id>
		<title>GSOC20235GUsabilityFinalReport</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12939"/>
		<updated>2023-09-10T09:19:14Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name''': [https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module]&lt;br /&gt;
* '''Contributor''': Giovanni Grieco&lt;br /&gt;
* '''Mentors''': Tom Henderson, Katerina Koutlia, and Biljana Bojovic&lt;br /&gt;
* '''Main Goal''': The primary objective of this project was to enhance the user-friendliness of the 5G NR module within ns-3. This was achieved by providing an inviting user experience and a detailed tutorial that is specifically designed to help users understand the inner workings of a simulated 5G Radio Access Network (RAN) during their initial usage.&lt;br /&gt;
* '''Useful links''':&lt;br /&gt;
** [https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability Project wiki page] - used to track the work in progress.&lt;br /&gt;
** [https://gitlab.com/ggrieco/gsoc23-iuns-3 Project patch set repository] - used to archive all the work done for this GSoC&lt;br /&gt;
** [https://gitlab.com/nsnam/ns-3-dev ns-3-dev Official Repository] - will be referenced in the project.&lt;br /&gt;
** [https://gitlab.com/cttc-lena/nr/ nr Official Repository] - used to push MRs in output of this GSoC project.&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Provide a description of how packets flow through the 5G NR RAN. Be able to answer the question &amp;quot;what happens to the traffic between a gNB and a UE?&amp;quot;&lt;br /&gt;
# Improve or add documentation when necessary, in order to address usability issues in understanding fundamental example scenarios, such as &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Enhance packet/frame tracing capabilities by offering flexible log messages and trace sources.&lt;br /&gt;
# Review and refactor code to improve clarity on example scenarios.&lt;br /&gt;
# Be able to measure latency at different layers of the NR stack.&lt;br /&gt;
&lt;br /&gt;
= Activities =&lt;br /&gt;
&lt;br /&gt;
* ns-3-dev and NR were forked at their respective versions: 3.39 and 2.5.x, creating the following two personal repositories: [https://gitlab.com/ggrieco/ns-3-dev ggrieco/ns-3-dev] and [https://gitlab.com/ggrieco/nr ggrieco/nr].&lt;br /&gt;
* Analyzed the &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example for usability issues.&lt;br /&gt;
* Helped mentors in fixing pipeline configuration issues, hindering the correct checking of build and code style.&lt;br /&gt;
* Presented work being done and merged over the NR module at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023], gathering interesting feedback from the ns-3 community.&lt;br /&gt;
* Created a tutorial to better understand how the NR module works, based on &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example.&lt;br /&gt;
* Various documentation and log improvements tracked by MRs.&lt;br /&gt;
&lt;br /&gt;
== Deviations ==&lt;br /&gt;
&lt;br /&gt;
The project focused on milestones different from the ones listed in the starting project idea after internal meetings with mentors and feedback gathered during the Community Bonding Period.&lt;br /&gt;
&lt;br /&gt;
== Merge Requests ==&lt;br /&gt;
&lt;br /&gt;
All the following activities can be easily reviewed on the following MRs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Merge Requests&lt;br /&gt;
|-&lt;br /&gt;
! No. !! Name !! Status !! Archived Patchset&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50 docs: Update sqlite support message] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51 nr-helper: Drop undefined method] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52 Example Usability Improvements] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR52?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53 examples: Fix CommandLine declaration for doxygen] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 !54 gitlab-ci-gcc: Fix and upgrade build pipeline] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55 examples, docs: Update TR 38.900 references to TR 38.901] || Refused || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56 Readme: Reference the Doxygen tutorial to learn how to run examples] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57 cttc-nr-demo: Add reference to TS 38.300] || Refused || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58 cttc-nr-demo: Add reference to ns-3 logging tutorial] || Refused || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59 cttc-nr-demo: Add lower-bound frequency check as per TR 39.901] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60 nr-radio-environment-map-helper: Remove unused variable] || Refused || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61 cttc-nr-demo: Clarify GridScenarioHelper usage] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR61?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62 grid-scenario-helper: Add documentation] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR62?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/63 !63 gitlab-ci: Fix SSL errors on git clone] || Merged || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/merged?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 15 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65 cttc-nr-demo: Usability improvements over Packet Tracing] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR65?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 16 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67 cttc-nr-demo: Add references to standards and ns-3 docs] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR67?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 !68 logs: Demote Informational logs messages to Function trace messages] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR68?ref_type=heads link]&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71 cttc-nr-demo Tutorial] || In review || [https://gitlab.com/ggrieco/gsoc23-iuns-3/-/tree/main/nr/MR71?ref_type=heads link]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Future Works =&lt;br /&gt;
&lt;br /&gt;
Since the milestones are flexible and subject to continuous enhancement, future efforts can be directed towards:&lt;br /&gt;
&lt;br /&gt;
# Completing the pending MRs that are currently under review.&lt;br /&gt;
# Enhancing the tutorial to provide clearer explanations for certain aspects of the simulation, particularly those pertaining to the MAC and PHY layers, in order to align more effectively with the stated milestones.&lt;br /&gt;
# Improving the overall state of documentation and code readability of example scenarios.&lt;br /&gt;
&lt;br /&gt;
= Acronyms =&lt;br /&gt;
&lt;br /&gt;
* Centre Tecnològic de Telecomunicacions de Catalunya (CTTC)&lt;br /&gt;
* Google Summer of Code (GSoC)&lt;br /&gt;
* Medium Access Control (MAC)&lt;br /&gt;
* Merge Request (MR)&lt;br /&gt;
* New Radio (NR)&lt;br /&gt;
* Next Generation Node-B (gNB)&lt;br /&gt;
* Radio Access Network (RAN)&lt;br /&gt;
* User Equipment (UE)&lt;br /&gt;
* Workshop on ns-3 (WNS3)&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12938</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12938"/>
		<updated>2023-09-09T15:21:39Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: /* Week 15 [Sep 04 - Sep 09] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 13 [Aug 21 - Aug 26] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Created MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71] to review the efforts made for the tutorial.&lt;br /&gt;
&lt;br /&gt;
== Week 14 [Aug 28 - Sep 02] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Tutorial assessment and review by mentors&lt;br /&gt;
* Raised issue [https://gitlab.com/cttc-lena/nr/-/issues/165 #165]&lt;br /&gt;
&lt;br /&gt;
== Week 15 [Sep 04 - Sep 09] ==&lt;br /&gt;
* Improvement, revision and evaluation of the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Final assessment and submission to GSoC organization&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12937</id>
		<title>GSOC20235GUsabilityFinalReport</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsabilityFinalReport&amp;diff=12937"/>
		<updated>2023-09-09T15:14:15Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: Created page with &amp;quot;= Project Overview =  * '''Project Name''': [https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module]...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name''': [https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module]&lt;br /&gt;
* '''Contributor''': Giovanni Grieco&lt;br /&gt;
* '''Mentors''': Tom Henderson, Katerina Koutlia, and Biljana Bojovic&lt;br /&gt;
* '''Main Goal''': The primary objective of this project was to enhance the user-friendliness of the 5G NR module within ns-3. This was achieved by providing an inviting user experience and a detailed tutorial that is specifically designed to help users understand the inner workings of a simulated 5G Radio Access Network (RAN) during their initial usage.&lt;br /&gt;
* '''Useful links''':&lt;br /&gt;
** [https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability Project wiki page] - used to track the work in progress.&lt;br /&gt;
** [https://gitlab.com/nsnam/ns-3-dev ns-3-dev Official Repository] - will be referenced in the project.&lt;br /&gt;
** [https://gitlab.com/cttc-lena/nr/ nr Official Repository] - used to push MRs in output of this GSoC project.&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Provide a description of how packets flow through the 5G NR RAN. Be able to answer the question &amp;quot;what happens to the traffic between a gNB and a UE?&amp;quot;&lt;br /&gt;
# Improve or add documentation when necessary, in order to address usability issues in understanding fundamental example scenarios, such as &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Enhance packet/frame tracing capabilities by offering flexible log messages and trace sources.&lt;br /&gt;
# Review and refactor code to improve clarity on example scenarios.&lt;br /&gt;
# Be able to measure latency at different layers of the NR stack.&lt;br /&gt;
&lt;br /&gt;
= Activities =&lt;br /&gt;
&lt;br /&gt;
* ns-3-dev and NR were forked at their respective versions: 3.39 and 2.5.x, creating the following two personal repositories: [https://gitlab.com/ggrieco/ns-3-dev ggrieco/ns-3-dev] and [https://gitlab.com/ggrieco/nr ggrieco/nr].&lt;br /&gt;
* Analyzed the &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example for usability issues.&lt;br /&gt;
* Helped mentors in fixing pipeline configuration issues, hindering the correct checking of build and code style.&lt;br /&gt;
* Presented work being done and merged over the NR module at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023], gathering interesting feedback from the ns-3 community.&lt;br /&gt;
* Created a tutorial to better understand how the NR module works, based on &amp;lt;code&amp;gt;cttc-nr-demo&amp;lt;/code&amp;gt; example.&lt;br /&gt;
* Various documentation and log improvements tracked by MRs.&lt;br /&gt;
&lt;br /&gt;
== Deviations ==&lt;br /&gt;
&lt;br /&gt;
The project focused on milestones different from the ones listed in the starting project idea after internal meetings with mentors and feedback gathered during the Community Bonding Period.&lt;br /&gt;
&lt;br /&gt;
== Merge Requests ==&lt;br /&gt;
&lt;br /&gt;
All the following activities can be easily reviewed on the following MRs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Merge Requests&lt;br /&gt;
|-&lt;br /&gt;
! No. !! Name !! Status !! Archived Patchset&lt;br /&gt;
|-&lt;br /&gt;
| 1 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50 docs: Update sqlite support message] || Merged || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 2 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51 nr-helper: Drop undefined method] || Merged || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 3 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52 Example Usability Improvements] || In review || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53 examples: Fix CommandLine declaration for doxygen] || Merged || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 5 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 !54 gitlab-ci-gcc: Fix and upgrade build pipeline] || Merged || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 6 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55 examples, docs: Update TR 38.900 references to TR 38.901] || Refused || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 7 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56 Readme: Reference the Doxygen tutorial to learn how to run examples] || Merged || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 8 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57 cttc-nr-demo: Add reference to TS 38.300] || Refused || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 9 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58 cttc-nr-demo: Add reference to ns-3 logging tutorial] || Refused || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 10 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59 cttc-nr-demo: Add lower-bound frequency check as per TR 39.901] || Merged || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 11 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60 nr-radio-environment-map-helper: Remove unused variable] || Refused || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 12 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61 cttc-nr-demo: Clarify GridScenarioHelper usage] || In review || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 13 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62 grid-scenario-helper: Add documentation] || In review || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 14 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/63 !63 gitlab-ci: Fix SSL errors on git clone] || Merged || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 15 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65 cttc-nr-demo: Usability improvements over Packet Tracing] || In review || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 16 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67 cttc-nr-demo: Add references to standards and ns-3 docs] || In review || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 17 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 !68 logs: Demote Informational logs messages to Function trace messages] || In review || [todo link]&lt;br /&gt;
|-&lt;br /&gt;
| 18 || [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71 cttc-nr-demo Tutorial] || In review || [todo link]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Future Works =&lt;br /&gt;
&lt;br /&gt;
Since the milestones are flexible and subject to continuous enhancement, future efforts can be directed towards:&lt;br /&gt;
&lt;br /&gt;
# Completing the pending MRs that are currently under review.&lt;br /&gt;
# Enhancing the tutorial to provide clearer explanations for certain aspects of the simulation, particularly those pertaining to the MAC and PHY layers, in order to align more effectively with the stated milestones.&lt;br /&gt;
# Improving the overall state of documentation and code readability of example scenarios.&lt;br /&gt;
&lt;br /&gt;
= Acronyms =&lt;br /&gt;
&lt;br /&gt;
* Centre Tecnològic de Telecomunicacions de Catalunya (CTTC)&lt;br /&gt;
* Google Summer of Code (GSoC)&lt;br /&gt;
* Medium Access Control (MAC)&lt;br /&gt;
* Merge Request (MR)&lt;br /&gt;
* New Radio (NR)&lt;br /&gt;
* Next Generation Node-B (gNB)&lt;br /&gt;
* Radio Access Network (RAN)&lt;br /&gt;
* User Equipment (UE)&lt;br /&gt;
* Workshop on ns-3 (WNS3)&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12918</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12918"/>
		<updated>2023-09-03T15:02:02Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 13 [Aug 21 - Aug 26] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Created MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71] to review the efforts made for the tutorial.&lt;br /&gt;
&lt;br /&gt;
== Week 14 [Aug 28 - Sep 02] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Tutorial assessment and review by mentors&lt;br /&gt;
* Raised issue [https://gitlab.com/cttc-lena/nr/-/issues/165 #165]&lt;br /&gt;
&lt;br /&gt;
== Week 15 [Sep 04 - Sep 09] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12917</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12917"/>
		<updated>2023-09-02T08:33:56Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 13 [Aug 21 - Aug 26] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Created MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71] to review the efforts made for the tutorial.&lt;br /&gt;
&lt;br /&gt;
== Week 14 [Aug 28 - Sep 02] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Tutorial assessment and review by mentors&lt;br /&gt;
&lt;br /&gt;
== Week 15 [Sep 04 - Sep 09] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12916</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12916"/>
		<updated>2023-09-02T08:33:15Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 13 [Aug 21 - Aug 26] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Created MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71] to review the efforts made for the tutorial.&lt;br /&gt;
&lt;br /&gt;
== Week 14 [Aug 28 - Sep 01] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Tutorial assessment and review by mentors&lt;br /&gt;
&lt;br /&gt;
== Week 15 [Sep 04 - Sep 09] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12915</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12915"/>
		<updated>2023-09-02T08:31:50Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 13 [Aug 21 - Aug 26] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Created MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71] to review the efforts made for the tutorial.&lt;br /&gt;
&lt;br /&gt;
== Week 14 [Aug 28 - Sep 01] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Tutorial assessment and review by mentors&lt;br /&gt;
&lt;br /&gt;
== Week 15 [Sep 04 - Sep 09] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12914</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12914"/>
		<updated>2023-09-01T07:38:27Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 13 [Aug 21 - Aug 26] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Created MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71] to review the efforts made for the tutorial.&lt;br /&gt;
&lt;br /&gt;
== Work 14 [Aug 28 - Sep 01] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12908</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12908"/>
		<updated>2023-08-22T15:07:20Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 13 [Aug 21 - Aug 26] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
* Created MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/71 !71] to review the efforts made for the tutorial.&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12907</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12907"/>
		<updated>2023-08-22T09:55:46Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 13 [Aug 21 - Aug 26] ==&lt;br /&gt;
* Work ongoing to finish the [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads tutorial]&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12905</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12905"/>
		<updated>2023-08-15T08:03:18Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
&lt;br /&gt;
== Week 12 [Aug 14 - Aug 19] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12902</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12902"/>
		<updated>2023-08-08T19:47:48Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
* New sequence diagrams are included in the tutorial to better explain the packet lifecycle, especially when it is forwarded through the RAN - [https://gitlab.com/ggrieco/nr/-/tree/tutorial?ref_type=heads ggrieco/nr:tutorial]&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12900</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12900"/>
		<updated>2023-08-07T22:19:55Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
* Published [https://gitlab.com/cttc-lena/nr/-/merge_requests/68 MR !68] related to the demotion of some Informational logs messages to Function trace messages.&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12899</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12899"/>
		<updated>2023-08-06T21:34:46Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
* Ongoing logging level refactoring and new trace sources on [https://gitlab.com/ggrieco/ns-3-dev/-/tree/enable-lte-traces?ref_type=heads ns-3 LTE module] and [https://gitlab.com/ggrieco/nr/-/tree/enable-traces?ref_type=heads NR one].&lt;br /&gt;
&lt;br /&gt;
== Week 11 [Aug 07 - Aug 12] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12898</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12898"/>
		<updated>2023-08-03T07:45:26Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
* Squash together MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58] in MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/67 !67] after some feedback to better organize inserted URLs.&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12896</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12896"/>
		<updated>2023-07-30T20:31:04Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: /* Week 9 [Jul 24 - Jul 29] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Solving an issue related to MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], and [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58]&lt;br /&gt;
&lt;br /&gt;
== Week 10 [Jul 31 - Aug 05] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12895</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12895"/>
		<updated>2023-07-30T20:11:52Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: /* Week 9 [Jul 24 - Jul 29] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
* Continuing developments on Packet Tracing usability over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12894</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12894"/>
		<updated>2023-07-30T14:57:12Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;br /&gt;
&lt;br /&gt;
== Week 9 [Jul 24 - Jul 29] ==&lt;br /&gt;
'''TBD'''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12893</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12893"/>
		<updated>2023-07-30T14:56:22Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: /* Week 8 [Jul 17 - Jul 22] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
* Started discussing on possible usability improvements in Packet Tracing - MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/65 !65]&lt;br /&gt;
* Fixes on past MRs and pipeline configuration&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12890</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12890"/>
		<updated>2023-07-22T04:45:30Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams. Such draft is still private.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12889</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12889"/>
		<updated>2023-07-22T04:44:16Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;br /&gt;
&lt;br /&gt;
== Week 7 [Jul 10 - Jul 15] ==&lt;br /&gt;
* Wrote an [https://gitlab.com/ggrieco/ns-3-nr-first-steps initial draft] for a tutorial that would help newcomers in getting started and understanding the NR module.&lt;br /&gt;
* Discussed about how to convey information in the tutorial, preferably in the form of sequence diagrams.&lt;br /&gt;
* Added documentation on 'GridScenarioHelper' with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/62 !62]&lt;br /&gt;
&lt;br /&gt;
== Week 8 [Jul 17 - Jul 22] ==&lt;br /&gt;
''TBD''&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12877</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12877"/>
		<updated>2023-07-09T09:53:31Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;br /&gt;
&lt;br /&gt;
== Week 6 [Jul 03 - Jul 08] ==&lt;br /&gt;
* All previous merge requests were checked for issues and fixed.&lt;br /&gt;
* Started a thorough and high-level description of the 'cttc-nr-demo' scenario at [https://gitlab.com/ggrieco/ns-3-nr-first-steps this repository].&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12867</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12867"/>
		<updated>2023-07-01T14:18:20Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
* Fixing compile issues with MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/60 !60]&lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12866</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12866"/>
		<updated>2023-07-01T14:17:25Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/61 !61]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12865</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12865"/>
		<updated>2023-07-01T07:57:56Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork. Please clone &amp;quot;ns-3.38-backport&amp;quot; branch to ensure compatibility with NR module&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12864</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12864"/>
		<updated>2023-07-01T06:58:09Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;br /&gt;
&lt;br /&gt;
== Week 4 [Jun 19 - 24] ==&lt;br /&gt;
* An experimental fix of pipeline with has been made with commit [https://gitlab.com/cttc-lena/nr/-/merge_requests/54/diffs?commit_id=78bdebbed1c383277f08c8913a60b1eb4d1b4614 78bdebbe]&lt;br /&gt;
* Some advices were made to improve [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54] even more, by aligning the pipeline configuration with ns-3. &lt;br /&gt;
&lt;br /&gt;
== Week 5 [Jun 26 - Jul 01] ==&lt;br /&gt;
* Alignment of the pipeline with ns-3 has been made in [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Presentation of the current state of the project, issues, and difficulties at [https://www.nsnam.org/research/wns3/wns3-2023/program/ WNS3 2023]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12855</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12855"/>
		<updated>2023-06-22T04:09:13Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;br /&gt;
* Fixing 'cttc-nr-demo' usability issues with MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/55 !55], [https://gitlab.com/cttc-lena/nr/-/merge_requests/56 !56], [https://gitlab.com/cttc-lena/nr/-/merge_requests/57 !57], [https://gitlab.com/cttc-lena/nr/-/merge_requests/58 !58], [https://gitlab.com/cttc-lena/nr/-/merge_requests/59 !59]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12853</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12853"/>
		<updated>2023-06-14T21:22:25Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 !52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 !48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 !49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 !50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 !51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 !53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
* Analyzed [[GSOC20235GUsability/Analysis:cttc-nr-demo | cttc-nr-demo]] code for usability issues&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;br /&gt;
* Fixing pipeline issues with [https://gitlab.com/cttc-lena/nr/-/merge_requests/54 MR !54]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability/Analysis:cttc-nr-demo&amp;diff=12852</id>
		<title>GSOC20235GUsability/Analysis:cttc-nr-demo</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability/Analysis:cttc-nr-demo&amp;diff=12852"/>
		<updated>2023-06-14T21:18:57Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: Created page with &amp;quot;Started the analysis of [https://gitlab.com/cttc-lena/nr/-/blob/master/examples/cttc-nr-demo.cc `cttc-nr-demo`] to probe around usability issues and what I can do to solve the...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Started the analysis of [https://gitlab.com/cttc-lena/nr/-/blob/master/examples/cttc-nr-demo.cc `cttc-nr-demo`] to probe around usability issues and what I can do to solve them.&lt;br /&gt;
&lt;br /&gt;
=== Initial Doxygen comments - lines: 7-29 ===&lt;br /&gt;
  This example describes how to setup a simulation using the 3GPP channel model from TR 38.900.&lt;br /&gt;
&lt;br /&gt;
The 3GPP TR 38.900 is part of Release 15 regarding the ''Study on channel model for frequency spectrum above 6 GHz''. It is freely available at the [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=2991 3GPP Portal] and on [https://portal.etsi.org/webapp/workprogram/Report_WorkItem.asp?WKI_ID=55982 ETSI] as PDF.&lt;br /&gt;
&lt;br /&gt;
First of all, please notice that here we are dealing with a standard that is marked as obsolete, as per comment by John M Meredith make in 2018:&lt;br /&gt;
  This spec is not maintained after v15.0.0. It is superseded by 38.901.&lt;br /&gt;
which is the ''Study on channel model for frequencies from 0.5 to 100 GHz'' and it is available on the [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 3GPP Portal].&lt;br /&gt;
&lt;br /&gt;
So, first of all, are we sure that we are working on code that provides the latest standard implementation Out of the Box? A quick search&lt;br /&gt;
  $ grep -ri 'TR 38.900' contrib/nr | wc -l&lt;br /&gt;
  16&lt;br /&gt;
  $ grep -ri 'TR 38.901' contrib/nr | wc -l&lt;br /&gt;
  9&lt;br /&gt;
reveals that the module has been updated to support the more recent [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901].&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T1&lt;br /&gt;
| Does `cttc-nr-demo` also follows [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901]?&lt;br /&gt;
|-&lt;br /&gt;
! T2&lt;br /&gt;
| Giving the current state of the code, are we sure to follow 100% TR 38.900, even though there is code that refers to [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901]?&lt;br /&gt;
|-&lt;br /&gt;
! T3&lt;br /&gt;
| Is this code also compliant to [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901]? If so, can we explicitly say it?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  This example consists of a simple grid topology, in which you can choose the number of gNbs and UEs. Have a look at the possible parameters to know what you can configure through the command line.&lt;br /&gt;
&lt;br /&gt;
First of all, there is a small typo on &amp;quot;gNb&amp;quot;, as it should be written as '''gNB'''. This term is defined in [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 TS 38.300]:&lt;br /&gt;
 '''gNB''': node providing NR user plane and control plane protocol terminations towards the UE, and connected via the NG interface to the 5GC&lt;br /&gt;
&lt;br /&gt;
This is not the only part where gNB is spelled wrongly:&lt;br /&gt;
  $ grep -r 'gNb' contrib/nr/ | wc -l&lt;br /&gt;
  423&lt;br /&gt;
&lt;br /&gt;
Furthermore, here we talk about the &amp;quot;command line&amp;quot;. There is no reference of how such command line interface works in the [https://cttc-lena.gitlab.io/nr/nrmodule.pdf NR official manual], neither in the repository [https://gitlab.com/cttc-lena/nr/-/blob/master/README.md README.md file]. Only the [https://cttc-lena.gitlab.io/nr/html/cttc-nr-demo_8cc.html doxygen] documentation reports examples of how its syntax, but such information is not readily available for the novel user.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T4&lt;br /&gt;
| Given that we are writing code that follows consolidated standards, shall we adhere (and thus, fix) the spelling of official terms?&lt;br /&gt;
|-&lt;br /&gt;
! T5&lt;br /&gt;
| Shall we explicitly define how the command line interface works to run a NR module example in the project README and/or manual?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With the default configuration, the example will create two flows that will go through two different subband numerologies (or bandwidth parts). For that, specifically, two bands are created, each with a single Carrier Component (CC), and each CC containing one bandwidth part (BWP).&lt;br /&gt;
&lt;br /&gt;
Here we use some technical terms that are related to specific features of NR. This is aggravate by the fact that we are using technical acronyms, i.e., CC, without writing them in extended form. Unfortunately, a quick search of &amp;quot;subband numerologies&amp;quot;, &amp;quot;bandwidth part&amp;quot;, and &amp;quot;CC&amp;quot; over the aforementioned TR 38.900 returns no explanation or usage.&lt;br /&gt;
&lt;br /&gt;
Consequently, this paragraph is hard to understand if the user does not already have a broader understanding of the several standards that characterize NR, or 3GPP Release 16 (and higher) in general.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T6&lt;br /&gt;
| Given that `cttc-nr-demo` should be a welcoming demo: a reading of [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TS 38.300] ''&amp;quot;NR; NR and NG-RAN Overall description; Stage-2&amp;quot;'' should be recommended, even before mentioning TR 38.900, as it provides the basic definitions about Carrier Component (CC), sub-band numerologies, and Bandwidth Part (BWP). While CC is mentioned in Section 5.4.1, the remaining twos are defined in Section 5.1.&lt;br /&gt;
|-&lt;br /&gt;
! T7&lt;br /&gt;
| User profile: what is the type of user that we want to address with this example? Does he/she/_ already know all the NR standards? How about ns-3? How about the programming language, i.e., C++? Can he/she/_ may be a student, still learning all of these things, even the basic theory behind mobile communications?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  The example will print on-screen the end-to-end result of one (or two) flows, as well as writing them on a file.&lt;br /&gt;
&lt;br /&gt;
This output appears to be too strict. As it is quite succinct for an experienced user, who may easily imagine the node positions, its stack configuration, its traffic, and the overall network topology. On the contrary, an inexperienced user may expect some context to fully understand these Key Performance Indices (KPIs) and statistics.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T8&lt;br /&gt;
| By default, `cttc-nr-demo` should output additional contextual information to clarify the statistics that are already shown. This can range from the position of the nodes to their stack configuration, traffic in easily accessible PCAP format, and overall network topology.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  With this line, we will be able to see the logs of the file by enabling the component &amp;quot;CttcNrDemo&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Log components are not explained in the [https://cttc-lena.gitlab.io/nr/nrmodule.pdf), neither in the [README](https://gitlab.com/cttc-lena/nr/-/blob/master/README.md NR official manual].&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T9&lt;br /&gt;
| Provide some references on how the user can work with log components in NR module, or ns-3 in general. This [https://www.nsnam.org/docs/release/3.38/tutorial/html/tweaking.html#using-the-logging-module tutorial] may be helpful.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code lines 148-153 ===&lt;br /&gt;
  /*&lt;br /&gt;
   * Check if the frequency is in the allowed range.&lt;br /&gt;
   * If you need to add other checks, here is the best position to put them.&lt;br /&gt;
   */&lt;br /&gt;
  NS_ABORT_IF(centralFrequencyBand1 &amp;gt; 100e9);&lt;br /&gt;
  NS_ABORT_IF(centralFrequencyBand2 &amp;gt; 100e9);&lt;br /&gt;
&lt;br /&gt;
According to [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901], we miss the lower bound limit of 0.5 GHz.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T10&lt;br /&gt;
| Shall we extend such assertion to include the [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901] check at its lower bound?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code lines 155-170 ===&lt;br /&gt;
  /*&lt;br /&gt;
   * If the logging variable is set to true, enable the log of some components&lt;br /&gt;
   * through the code. The same effect can be obtained through the use&lt;br /&gt;
   * of the NS_LOG environment variable:&lt;br /&gt;
   *&lt;br /&gt;
   * export NS_LOG=&amp;quot;UdpClient=level_info|prefix_time|prefix_func|prefix_node:UdpServer=...&amp;quot;&lt;br /&gt;
   *&lt;br /&gt;
   * Usually, the environment variable way is preferred, as it is more customizable,&lt;br /&gt;
   * and more expressive.&lt;br /&gt;
   */&lt;br /&gt;
  if (logging)&lt;br /&gt;
  {&lt;br /&gt;
    LogComponentEnable(&amp;quot;UdpClient&amp;quot;, LOG_LEVEL_INFO);&lt;br /&gt;
    LogComponentEnable(&amp;quot;UdpServer&amp;quot;, LOG_LEVEL_INFO);&lt;br /&gt;
    LogComponentEnable(&amp;quot;LtePdcp&amp;quot;, LOG_LEVEL_INFO);&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
This information would solve `T9` by anticipating such information.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T11&lt;br /&gt;
| Shall we move this explanation to line ~58? How about repeating it in the [https://cttc-lena.gitlab.io/nr/nrmodule.pdf NR official manual] and/or in the [https://gitlab.com/cttc-lena/nr/-/blob/master/README.md README.md file]?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code lines 172-176 ===&lt;br /&gt;
  /*&lt;br /&gt;
   * Default values for the simulation. We are progressively removing all&lt;br /&gt;
   * the instances of SetDefault, but we need it for legacy code (LTE)&lt;br /&gt;
   */&lt;br /&gt;
  Config::SetDefault(&amp;quot;ns3::LteRlcUm::MaxTxBufferSize&amp;quot;, UintegerValue(999999999));&lt;br /&gt;
&lt;br /&gt;
This does not seem to be entirely related to the example per se, given that it misses key information on why such scenario should have such value to be set. Furthermore, such value is applied across all example scenarios. To this end, it would be better to hide such code from the user eyes, in order to not cause confusion.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T12&lt;br /&gt;
| What is the role of this line? Shall we move this code to `ns3::NrHelper`? Maybe to a method called `void SetupDefaultNrNsaParameters()`?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code lines 178-198 ===&lt;br /&gt;
  /*&lt;br /&gt;
   * Create the scenario. In our examples, we heavily use helpers that setup&lt;br /&gt;
   * the gnbs and ue following a pre-defined pattern. Please have a look at the&lt;br /&gt;
   * GridScenarioHelper documentation to see how the nodes will be distributed.&lt;br /&gt;
   */&lt;br /&gt;
  int64_t randomStream = 1;&lt;br /&gt;
  GridScenarioHelper gridScenario;&lt;br /&gt;
  gridScenario.SetRows(1);&lt;br /&gt;
  gridScenario.SetColumns(gNbNum);&lt;br /&gt;
  gridScenario.SetHorizontalBsDistance(5.0);&lt;br /&gt;
  gridScenario.SetVerticalBsDistance(5.0);&lt;br /&gt;
  gridScenario.SetBsHeight(1.5);&lt;br /&gt;
  gridScenario.SetUtHeight(1.5);&lt;br /&gt;
  // must be set before BS number&lt;br /&gt;
  gridScenario.SetSectorization(GridScenarioHelper::SINGLE);&lt;br /&gt;
  gridScenario.SetBsNumber(gNbNum);&lt;br /&gt;
  gridScenario.SetUtNumber(ueNumPergNb * gNbNum);&lt;br /&gt;
  gridScenario.SetScenarioHeight(3); // Create a 3x3 scenario where the UE will&lt;br /&gt;
  gridScenario.SetScenarioLength(3); // be distribuited.&lt;br /&gt;
  randomStream += gridScenario.AssignStreams(randomStream);&lt;br /&gt;
  gridScenario.CreateScenario();&lt;br /&gt;
&lt;br /&gt;
'''`ns3::GridScenarioHelper` documentation is marked as TODO''' in the [https://gitlab.com/cttc-lena/nr/-/blob/master/helper/grid-scenario-helper.h source file].&lt;br /&gt;
Furthermore, ''distance'', ''length'', and ''height'' properties do not provide any unit of measurement. This is aggravated by the lack of any sort of unit to be used in both code (we have a generic `double`) and documentation. Intuitively, the user, which may come from any place of Earth, can be confused on using the [https://www.nist.gov/pml/owm/metric-si/si-units International System of Units (SI)], the metric system, or the imperial one.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T13&lt;br /&gt;
| Shall we document `ns3::GridScenarioHelper`?&lt;br /&gt;
|-&lt;br /&gt;
! T14&lt;br /&gt;
| Is it ok to provide the information over the unit of measurements to be used? Where should we say so? Is it ok to provide macros/helpers to be able to specify measurements in metric and/or imperial? Shall we stick to the SI?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12850</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12850"/>
		<updated>2023-06-12T13:04:13Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 [May 29 - Jun 03] ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 53]&lt;br /&gt;
&lt;br /&gt;
== Week 2 [Jun 05 - 10] ==&lt;br /&gt;
Started the analysis of [https://gitlab.com/cttc-lena/nr/-/blob/master/examples/cttc-nr-demo.cc `cttc-nr-demo`] to probe around usability issues and what I can do to solve them.&lt;br /&gt;
&lt;br /&gt;
=== Initial Doxygen comments - lines: 7-29 ===&lt;br /&gt;
  This example describes how to setup a simulation using the 3GPP channel model from TR 38.900.&lt;br /&gt;
&lt;br /&gt;
The 3GPP TR 38.900 is part of Release 15 regarding the ''Study on channel model for frequency spectrum above 6 GHz''. It is freely available at the [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=2991 3GPP Portal] and on [https://portal.etsi.org/webapp/workprogram/Report_WorkItem.asp?WKI_ID=55982 ETSI] as PDF.&lt;br /&gt;
&lt;br /&gt;
First of all, please notice that here we are dealing with a standard that is marked as obsolete, as per comment by John M Meredith make in 2018:&lt;br /&gt;
  This spec is not maintained after v15.0.0. It is superseded by 38.901.&lt;br /&gt;
which is the ''Study on channel model for frequencies from 0.5 to 100 GHz'' and it is available on the [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 3GPP Portal].&lt;br /&gt;
&lt;br /&gt;
So, first of all, are we sure that we are working on code that provides the latest standard implementation Out of the Box? A quick search&lt;br /&gt;
  $ grep -ri 'TR 38.900' contrib/nr | wc -l&lt;br /&gt;
  16&lt;br /&gt;
  $ grep -ri 'TR 38.901' contrib/nr | wc -l&lt;br /&gt;
  9&lt;br /&gt;
reveals that the module has been updated to support the more recent [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901].&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T1&lt;br /&gt;
| Does `cttc-nr-demo` also follows [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901]?&lt;br /&gt;
|-&lt;br /&gt;
! T2&lt;br /&gt;
| Giving the current state of the code, are we sure to follow 100% TR 38.900, even though there is code that refers to [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901]?&lt;br /&gt;
|-&lt;br /&gt;
! T3&lt;br /&gt;
| Is this code also compliant to [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901]? If so, can we explicitly say it?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  This example consists of a simple grid topology, in which you can choose the number of gNbs and UEs. Have a look at the possible parameters to know what you can configure through the command line.&lt;br /&gt;
&lt;br /&gt;
First of all, there is a small typo on &amp;quot;gNb&amp;quot;, as it should be written as '''gNB'''. This term is defined in [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 TS 38.300]:&lt;br /&gt;
 '''gNB''': node providing NR user plane and control plane protocol terminations towards the UE, and connected via the NG interface to the 5GC&lt;br /&gt;
&lt;br /&gt;
This is not the only part where gNB is spelled wrongly:&lt;br /&gt;
  $ grep -r 'gNb' contrib/nr/ | wc -l&lt;br /&gt;
  423&lt;br /&gt;
&lt;br /&gt;
Furthermore, here we talk about the &amp;quot;command line&amp;quot;. There is no reference of how such command line interface works in the [https://cttc-lena.gitlab.io/nr/nrmodule.pdf NR official manual], neither in the repository [https://gitlab.com/cttc-lena/nr/-/blob/master/README.md README.md file]. Only the [https://cttc-lena.gitlab.io/nr/html/cttc-nr-demo_8cc.html doxygen] documentation reports examples of how its syntax, but such information is not readily available for the novel user.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T4&lt;br /&gt;
| Given that we are writing code that follows consolidated standards, shall we adhere (and thus, fix) the spelling of official terms?&lt;br /&gt;
|-&lt;br /&gt;
! T5&lt;br /&gt;
| Shall we explicitly define how the command line interface works to run a NR module example in the project README and/or manual?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With the default configuration, the example will create two flows that will go through two different subband numerologies (or bandwidth parts). For that, specifically, two bands are created, each with a single Carrier Component (CC), and each CC containing one bandwidth part (BWP).&lt;br /&gt;
&lt;br /&gt;
Here we use some technical terms that are related to specific features of NR. This is aggravate by the fact that we are using technical acronyms, i.e., CC, without writing them in extended form. Unfortunately, a quick search of &amp;quot;subband numerologies&amp;quot;, &amp;quot;bandwidth part&amp;quot;, and &amp;quot;CC&amp;quot; over the aforementioned TR 38.900 returns no explanation or usage.&lt;br /&gt;
&lt;br /&gt;
Consequently, this paragraph is hard to understand if the user does not already have a broader understanding of the several standards that characterize NR, or 3GPP Release 16 (and higher) in general.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T6&lt;br /&gt;
| Given that `cttc-nr-demo` should be a welcoming demo: a reading of [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TS 38.300] ''&amp;quot;NR; NR and NG-RAN Overall description; Stage-2&amp;quot;'' should be recommended, even before mentioning TR 38.900, as it provides the basic definitions about Carrier Component (CC), sub-band numerologies, and Bandwidth Part (BWP). While CC is mentioned in Section 5.4.1, the remaining twos are defined in Section 5.1.&lt;br /&gt;
|-&lt;br /&gt;
! T7&lt;br /&gt;
| User profile: what is the type of user that we want to address with this example? Does he/she/_ already know all the NR standards? How about ns-3? How about the programming language, i.e., C++? Can he/she/_ may be a student, still learning all of these things, even the basic theory behind mobile communications?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  The example will print on-screen the end-to-end result of one (or two) flows, as well as writing them on a file.&lt;br /&gt;
&lt;br /&gt;
This output appears to be too strict. As it is quite succinct for an experienced user, who may easily imagine the node positions, its stack configuration, its traffic, and the overall network topology. On the contrary, an inexperienced user may expect some context to fully understand these Key Performance Indices (KPIs) and statistics.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T8&lt;br /&gt;
| By default, `cttc-nr-demo` should output additional contextual information to clarify the statistics that are already shown. This can range from the position of the nodes to their stack configuration, traffic in easily accessible PCAP format, and overall network topology.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
  With this line, we will be able to see the logs of the file by enabling the component &amp;quot;CttcNrDemo&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Log components are not explained in the [https://cttc-lena.gitlab.io/nr/nrmodule.pdf), neither in the [README](https://gitlab.com/cttc-lena/nr/-/blob/master/README.md NR official manual].&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T9&lt;br /&gt;
| Provide some references on how the user can work with log components in NR module, or ns-3 in general. This [https://www.nsnam.org/docs/release/3.38/tutorial/html/tweaking.html#using-the-logging-module tutorial] may be helpful.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code lines 148-153 ===&lt;br /&gt;
  /*&lt;br /&gt;
   * Check if the frequency is in the allowed range.&lt;br /&gt;
   * If you need to add other checks, here is the best position to put them.&lt;br /&gt;
   */&lt;br /&gt;
  NS_ABORT_IF(centralFrequencyBand1 &amp;gt; 100e9);&lt;br /&gt;
  NS_ABORT_IF(centralFrequencyBand2 &amp;gt; 100e9);&lt;br /&gt;
&lt;br /&gt;
According to [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901], we miss the lower bound limit of 0.5 GHz.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T10&lt;br /&gt;
| Shall we extend such assertion to include the [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3173 TR 38.901] check at its lower bound?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code lines 155-170 ===&lt;br /&gt;
  /*&lt;br /&gt;
   * If the logging variable is set to true, enable the log of some components&lt;br /&gt;
   * through the code. The same effect can be obtained through the use&lt;br /&gt;
   * of the NS_LOG environment variable:&lt;br /&gt;
   *&lt;br /&gt;
   * export NS_LOG=&amp;quot;UdpClient=level_info|prefix_time|prefix_func|prefix_node:UdpServer=...&amp;quot;&lt;br /&gt;
   *&lt;br /&gt;
   * Usually, the environment variable way is preferred, as it is more customizable,&lt;br /&gt;
   * and more expressive.&lt;br /&gt;
   */&lt;br /&gt;
  if (logging)&lt;br /&gt;
  {&lt;br /&gt;
    LogComponentEnable(&amp;quot;UdpClient&amp;quot;, LOG_LEVEL_INFO);&lt;br /&gt;
    LogComponentEnable(&amp;quot;UdpServer&amp;quot;, LOG_LEVEL_INFO);&lt;br /&gt;
    LogComponentEnable(&amp;quot;LtePdcp&amp;quot;, LOG_LEVEL_INFO);&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
This information would solve `T9` by anticipating such information.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T11&lt;br /&gt;
| Shall we move this explanation to line ~58? How about repeating it in the [https://cttc-lena.gitlab.io/nr/nrmodule.pdf NR official manual] and/or in the [https://gitlab.com/cttc-lena/nr/-/blob/master/README.md README.md file]?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code lines 172-176 ===&lt;br /&gt;
  /*&lt;br /&gt;
   * Default values for the simulation. We are progressively removing all&lt;br /&gt;
   * the instances of SetDefault, but we need it for legacy code (LTE)&lt;br /&gt;
   */&lt;br /&gt;
  Config::SetDefault(&amp;quot;ns3::LteRlcUm::MaxTxBufferSize&amp;quot;, UintegerValue(999999999));&lt;br /&gt;
&lt;br /&gt;
This does not seem to be entirely related to the example per se, given that it misses key information on why such scenario should have such value to be set. Furthermore, such value is applied across all example scenarios. To this end, it would be better to hide such code from the user eyes, in order to not cause confusion.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T12&lt;br /&gt;
| What is the role of this line? Shall we move this code to `ns3::NrHelper`? Maybe to a method called `void SetupDefaultNrNsaParameters()`?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code lines 178-198 ===&lt;br /&gt;
  /*&lt;br /&gt;
   * Create the scenario. In our examples, we heavily use helpers that setup&lt;br /&gt;
   * the gnbs and ue following a pre-defined pattern. Please have a look at the&lt;br /&gt;
   * GridScenarioHelper documentation to see how the nodes will be distributed.&lt;br /&gt;
   */&lt;br /&gt;
  int64_t randomStream = 1;&lt;br /&gt;
  GridScenarioHelper gridScenario;&lt;br /&gt;
  gridScenario.SetRows(1);&lt;br /&gt;
  gridScenario.SetColumns(gNbNum);&lt;br /&gt;
  gridScenario.SetHorizontalBsDistance(5.0);&lt;br /&gt;
  gridScenario.SetVerticalBsDistance(5.0);&lt;br /&gt;
  gridScenario.SetBsHeight(1.5);&lt;br /&gt;
  gridScenario.SetUtHeight(1.5);&lt;br /&gt;
  // must be set before BS number&lt;br /&gt;
  gridScenario.SetSectorization(GridScenarioHelper::SINGLE);&lt;br /&gt;
  gridScenario.SetBsNumber(gNbNum);&lt;br /&gt;
  gridScenario.SetUtNumber(ueNumPergNb * gNbNum);&lt;br /&gt;
  gridScenario.SetScenarioHeight(3); // Create a 3x3 scenario where the UE will&lt;br /&gt;
  gridScenario.SetScenarioLength(3); // be distribuited.&lt;br /&gt;
  randomStream += gridScenario.AssignStreams(randomStream);&lt;br /&gt;
  gridScenario.CreateScenario();&lt;br /&gt;
&lt;br /&gt;
'''`ns3::GridScenarioHelper` documentation is marked as TODO''' in the [https://gitlab.com/cttc-lena/nr/-/blob/master/helper/grid-scenario-helper.h source file].&lt;br /&gt;
Furthermore, ''distance'', ''length'', and ''height'' properties do not provide any unit of measurement. This is aggravated by the lack of any sort of unit to be used in both code (we have a generic `double`) and documentation. Intuitively, the user, which may come from any place of Earth, can be confused on using the [https://www.nist.gov/pml/owm/metric-si/si-units International System of Units (SI)], the metric system, or the imperial one.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=3&lt;br /&gt;
|+ Possible Tasks&lt;br /&gt;
! ID !! Task&lt;br /&gt;
|-&lt;br /&gt;
! T13&lt;br /&gt;
| Shall we document `ns3::GridScenarioHelper`?&lt;br /&gt;
|-&lt;br /&gt;
! T14&lt;br /&gt;
| Is it ok to provide the information over the unit of measurements to be used? Where should we say so? Is it ok to provide macros/helpers to be able to specify measurements in metric and/or imperial? Shall we stick to the SI?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Week 3 [Jun 12 - 17] ==&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12835</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12835"/>
		<updated>2023-06-02T09:44:04Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 51], [https://gitlab.com/cttc-lena/nr/-/merge_requests/53 53]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12830</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12830"/>
		<updated>2023-05-31T13:33:52Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
# Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
# 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?&lt;br /&gt;
# 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.&lt;br /&gt;
# Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
# 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.&lt;br /&gt;
# Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
# Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Milestone 5 is tracked over MR [https://gitlab.com/cttc-lena/nr/-/merge_requests/52 52]&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 51]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12829</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12829"/>
		<updated>2023-05-31T10:01:23Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
* Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
* 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?&lt;br /&gt;
* 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.&lt;br /&gt;
* Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
* 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.&lt;br /&gt;
* Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
* Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 50], [https://gitlab.com/cttc-lena/nr/-/merge_requests/51 51]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12828</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12828"/>
		<updated>2023-05-29T16:07:51Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
* Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
* 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?&lt;br /&gt;
* 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.&lt;br /&gt;
* Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
* 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.&lt;br /&gt;
* Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
* Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;br /&gt;
&lt;br /&gt;
= Weekly Report =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
* Tracking ns-3 3.38 release and NR 5g-lena-v2.4.y branch&lt;br /&gt;
* Some compile-time deprecation/warnings were addressed in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/48 48] and [https://gitlab.com/cttc-lena/nr/-/merge_requests/49 49]&lt;br /&gt;
* Minor fixes made in MRs [https://gitlab.com/cttc-lena/nr/-/merge_requests/50 50]&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12827</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12827"/>
		<updated>2023-05-26T15:32:10Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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!&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
* Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
* 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?&lt;br /&gt;
* 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.&lt;br /&gt;
* Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
* 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.&lt;br /&gt;
* Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
* Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
	<entry>
		<id>https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12826</id>
		<title>GSOC20235GUsability</title>
		<link rel="alternate" type="text/html" href="https://www.nsnam.org/mediawiki/index.php?title=GSOC20235GUsability&amp;diff=12826"/>
		<updated>2023-05-26T15:30:07Z</updated>

		<summary type="html">&lt;p&gt;Ggrieco: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TOC}}&lt;br /&gt;
&lt;br /&gt;
Back to [[Summer_Projects#Google_Summer_of_Code_2023 | GSoC 2023 projects]]&lt;br /&gt;
&lt;br /&gt;
= Project Overview =&lt;br /&gt;
&lt;br /&gt;
* '''Project Name:''' IUNS-3 5G NR: Improving the Usability of ns-3's 5G NR Module&lt;br /&gt;
* '''Student:''' Giovanni Grieco&lt;br /&gt;
* '''Mentors:''' Tom Henderson, Katerina Koutlia, and Biljana Bojovic &lt;br /&gt;
* '''Google page:''' https://summerofcode.withgoogle.com/programs/2023/projects/oeDFknbT&lt;br /&gt;
* '''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.&lt;br /&gt;
* '''Repositories:'''&lt;br /&gt;
** https://gitlab.com/ggrieco/ns-3-dev - ns-3 personal fork&lt;br /&gt;
** https://gitlab.com/ggrieco/nr - NR module personal fork&lt;br /&gt;
* '''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.&lt;br /&gt;
&lt;br /&gt;
= Milestones =&lt;br /&gt;
&lt;br /&gt;
== Week 1 ==&lt;br /&gt;
&lt;br /&gt;
* Read [https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3191 3GPP TR 38.300] as an overview.  In general, we will look to align with 3GPP terminology and specifications.&lt;br /&gt;
* 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?&lt;br /&gt;
* 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.&lt;br /&gt;
* Enable traces:  //nrHelper-&amp;gt;EnableTraces();  perhaps controlled by a command line argument.  How can these help the new user?&lt;br /&gt;
* 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.&lt;br /&gt;
* Start to experiment with the ConfigStore loading and saving of attributes and default values.&lt;br /&gt;
* Measuring latency within the NR RAN-- new trace sources at ingress and egress of NetDevice?  Packet tags?&lt;/div&gt;</summary>
		<author><name>Ggrieco</name></author>
	</entry>
</feed>