Difference between revisions of "NSOC2020Routing"

From Nsnam
Jump to: navigation, search
(NSoC 2020 Routing - Update work done in first two weeks)
Line 18: Line 18:
 
'''TODOs''':
 
'''TODOs''':
 
* [https://www.open-mesh.org/doc/batman-adv/index.html Specs] are outdated, contribute towards fixing them as gaps are found.
 
* [https://www.open-mesh.org/doc/batman-adv/index.html Specs] are outdated, contribute towards fixing them as gaps are found.
* Milestone 1:
+
* Discuss the use of Tags with Mentors.
 +
 
 +
'''Next Milestone''':
 +
* Have a fully functional neighbor discovery taking into account the entry and exit of nodes from the mesh.
 +
* Define test cases which should cover all possible features and conditions.
 +
* Get feedback for completeness of test cases and discovery protocol from the batadv community.
  
  
Line 24: Line 29:
  
 
'''15th June - 30th June''':
 
'''15th June - 30th June''':
: This phase focused on understanding the batadv-protocol and ns-3 code structure.
+
: Summary - Understanding the batadv-protocol and ns-3 code structure.
* Read B.A.T.M.A.N. IETF draft - [https://tools.ietf.org/html/draft-wunderlich-openmesh-manet-routing-00]
+
* Read B.A.T.M.A.N. [https://tools.ietf.org/html/draft-wunderlich-openmesh-manet-routing-00 IETF draft].
* Read Thesis on analysis and simulation of a Freifunk network using batadv - [https://thardes.de/wp-content/uploads/2016/03/thesis.pdf]
+
* Read Thesis on analysis and simulation of a Freifunk network using batman - [https://thardes.de/wp-content/uploads/2016/03/thesis.pdf]
 
* Read documentation and specs - [https://www.open-mesh.org/doc/batman-adv/index.html]. Understood that the IETF draft is highly outdated and should be ignored.
 
* Read documentation and specs - [https://www.open-mesh.org/doc/batman-adv/index.html]. Understood that the IETF draft is highly outdated and should be ignored.
 
* Went through the ns-3 source code, the way models are designed, and how should the batman module be designed.
 
* Went through the ns-3 source code, the way models are designed, and how should the batman module be designed.
 +
 +
'''1st July - 15th July''':
 +
: Summary - Implementing the basic structure of the batman module.
 +
* Wrote definitions for [https://gitlab.com/pro-panda/ns-3-dev/-/blob/batman/master/src/batman/model/batman-header.h packet headers].
 +
* Wrote [https://gist.github.com/pro-panda/9d95ab9fa20162a98cdb5391921afcb4 script] to simulate batman on virtual namespaces on a Linux machine.
 +
* Started writing protocol definition and defining structures to maintain state on the nodes. Discussion with Tom helped in understanding that this should plugin itself to the mesh module.
 +
 +
 +
'''16th July - 25th July''':
 +
: LEAVE
 +
 +
'''25th July - 31st July''':
 +
: Summary - Implementing protocol and state definitions as a routing protocol plugin to the mesh protocol.
 +
* Wrote definitions for [https://gitlab.com/pro-panda/ns-3-dev/-/merge_requests/4 batman helper].
 +
* Rewriting definitions for batman protocol and state.

Revision as of 15:30, 30 July 2020

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

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

Back to NSoC 2020 projects

Routing for community wireless

TL;DR - Rahul works as a Software Engineer at Microsoft. He graduated from BITS Pilani, India in Dec 2019. His area of interest is Networks and Systems.
  • Abstract: This project aims to develop models and evaluation programs related to routing in current community wireless networks. batman-adv for Freifunk.net is the initial target.


Project Overview

We meet Thursdays 3:30 PM GMT at https://meet.google.com/tam-izjx-wsg.
The tentative duration for this project is 3 4 months.

TODOs:

  • Specs are outdated, contribute towards fixing them as gaps are found.
  • Discuss the use of Tags with Mentors.

Next Milestone:

  • Have a fully functional neighbor discovery taking into account the entry and exit of nodes from the mesh.
  • Define test cases which should cover all possible features and conditions.
  • Get feedback for completeness of test cases and discovery protocol from the batadv community.



15th June - 30th June:

Summary - Understanding the batadv-protocol and ns-3 code structure.
  • Read B.A.T.M.A.N. IETF draft.
  • Read Thesis on analysis and simulation of a Freifunk network using batman - [1]
  • Read documentation and specs - [2]. Understood that the IETF draft is highly outdated and should be ignored.
  • Went through the ns-3 source code, the way models are designed, and how should the batman module be designed.

1st July - 15th July:

Summary - Implementing the basic structure of the batman module.
  • Wrote definitions for packet headers.
  • Wrote script to simulate batman on virtual namespaces on a Linux machine.
  • Started writing protocol definition and defining structures to maintain state on the nodes. Discussion with Tom helped in understanding that this should plugin itself to the mesh module.


16th July - 25th July:

LEAVE

25th July - 31st July:

Summary - Implementing protocol and state definitions as a routing protocol plugin to the mesh protocol.
  • Wrote definitions for batman helper.
  • Rewriting definitions for batman protocol and state.