GSOC2023NetAnim: Difference between revisions
Jump to navigation
Jump to search
Line 79: | Line 79: | ||
* Discussed the need of moving OuputCsmaPacket() | * Discussed the need of moving OuputCsmaPacket() | ||
* Discussed if there is a need to Dynamically Register Net-Devices. | * Discussed if there is a need to Dynamically Register Net-Devices. | ||
'''Week 7 (Jul 9 - Jul 15):''' | |||
* Moved the OutputCsmaPacket() and PurgePendingPackets() to the CsmaNetDeviceAnim | |||
'''Week 8 (Jul 16 - Jul 22):''' | |||
*Created a MR [https://gitlab.com/nsnam/ns-3-dev/-/merge_requests/1592] for the Csma Refactor. | |||
*Started working on the Point-to-Point module. | |||
'''Week 9 (Jul 23 - Jul 29):''' | |||
*Fixed issues with MR [https://gitlab.com/nsnam/ns-3-dev/-/merge_requests/1592]. | |||
*Added suggested changes in the comments of MR. |
Revision as of 09:48, 31 July 2023
Main Page - Roadmap - Summer Projects - Project Ideas - Developer FAQ - Tools - Related Projects
HOWTOs - Installation - Troubleshooting - User FAQ - Samples - Models - Education - Contributed Code - Papers
Back to GSoC 2023 projects
Project Overview
- Project Name: Dynamic device registration for NetAnim simulation animations
- Student: Raghuram Kannan
- Mentors: Tommaso Pecorella and Manoj Kumar Rana
- Google page: https://summerofcode.withgoogle.com/programs/2023/projects/EpacH0ct
- Project Goals: The project aims to refactor the NetAnim module such that each module willing to use NetAnim will have a .cc and .h file responsible for communication with the NetAnim module, enabled only if NetAnim is active. This will break the dependencies and will allow more flexibility for out-of-tree modules and modules migrating to the AppStore.
- Repository: https://gitlab.com/raghuramkannan40/ns-3-dev/-/tree/GSoC-23
- Design Doc: https://docs.google.com/document/d/1Pc09up2v3_t_R9VsuxGasoVQT8ziMHRn8ozGXbll014/edit?usp=sharing
- About Me: I am a Pre-Final year undergraduate student pursuing Electronics and Communication Engineering at the National Institute of Technology Karnataka, Surathkal, India. I am currently exploring the domain of computer networks and operating systems.
Milestones
The GSoC period is divided into two phases. Following are the deliverables according to the proposal:
Phase 1
Duration: Week 1 to Week 6
- Refactor the Csma module and test to see if it works the same as before.
- Refactor the Point-to-Point module and test to see if it works the same as before.
- Refactor the LTE module and test to see if it works the same as before.
Phase 2
Duration: Week 7 to Week 12
- Refactor the Wimax module and test to see if it works the same as before.
- Refactor the Wi-Fi and Internet module and test them to see if it works the same as before.
- Refactor the Uan and Wave module and test them to see if it works the same as before.
- Testing and documentation of work done
Weekly Reports
Community Bonding Period
Duration: May 4 - May 28
- Discussed the proposal ideas and any potential blockers.
- Decided to convert AnimationInterface into a singleton with a proxy in between.
- Added a define for NetAnim in CMake to let us know if NetAnim has been compiled successfully.
- Discussed the need for CreateObject() for the NetDeviceAnim Class (The new class added to the respective net-device modules to connect to NetAnim).
Weekly Report
Week 1 (May 29 - June 4):
- Converted AnimUidPacketInfoMap into a map of net-devices in MR [1].
- Made AnimationInterface into a singleton with a proxy in between as discussed in the Community Bonding Period in MR [2].
- Added a define for NetAnim in CMake in MR [3].
Week 2 (June 5 - June 11):
- Used another approach to convert AnimationInterface into a singleton using the template present in singleton.h because the previous approach had the following issues:
- Exposed the singleton class.
- Duplicate API.
- Forwarding implementation in the AnimationInterface class in a public header.
- Moved the declaration and implementation of the Singleton class to the animation-interface.cc file similar to type-id.cc.
- Added comments for Doxygen for the new function declarations.
Week 3 (June 12 - June 18):
- Started writing an SRS Document for the Project to define the approach.
- Working on issues with MR [4].
- Started working on the first Milestone in Phase 1.
Week 4 (June 19 - June 25):
- Completed the refactoring of the csma module and tested to see if it works the same as before.
- Completed writing the SRS report.
Week 5 (June 26 - July 01):
- Working on doxygen-related issues in MR [5].
- Presented the current state of the project at WNS3 2023.
Week 6 (July 2 - July 8):
- Working on pipeline issues with the proxy-csma-anim branch
- Discussed the need of moving OuputCsmaPacket()
- Discussed if there is a need to Dynamically Register Net-Devices.
Week 7 (Jul 9 - Jul 15):
- Moved the OutputCsmaPacket() and PurgePendingPackets() to the CsmaNetDeviceAnim
Week 8 (Jul 16 - Jul 22):
- Created a MR [6] for the Csma Refactor.
- Started working on the Point-to-Point module.
Week 9 (Jul 23 - Jul 29):
- Fixed issues with MR [7].
- Added suggested changes in the comments of MR.