Difference between revisions of "GCI2018Details"

From Nsnam
Jump to: navigation, search
(List of tasks)
(ns-3's GCI program outcome)
 
(17 intermediate revisions by 2 users not shown)
Line 10: Line 10:
 
== ns-3's GCI 2018 ==
 
== ns-3's GCI 2018 ==
  
This webpage highlights project ideas for ns-3's Google Code-In 2018 effort.   
+
This webpage highlights ns-3's Google Code-In 2018 effort.  [https://codein.withgoogle.com/ Google Code-In] is an annual contest sponsored by Google to introduce pre-university students to open source software projects.
  
 
The seven week coding period for projects runs from 23 October to 12 December, 2018.  The full project timeline is here: https://developers.google.com/open-source/gci/timeline  
 
The seven week coding period for projects runs from 23 October to 12 December, 2018.  The full project timeline is here: https://developers.google.com/open-source/gci/timeline  
 
'''Important note:'''  ns-3 is applying to Google Code-In as a project but will not learn about acceptance until September 18.
 
  
 
=== About the ns-3 project ===
 
=== About the ns-3 project ===
Line 22: Line 20:
 
Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as WiFi, and analyze or visualize the results.  Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented.  A particular emphasis in ns-3 is the high degree of realism in the models (including frameworks for real application and kernel code) and integration of the tool with virtual machine environments and testbeds; we view that researchers need to move more effortlessly between simulation, testbeds, and live experiments, and ns-3 is designed to facilitate that.
 
Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as WiFi, and analyze or visualize the results.  Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented.  A particular emphasis in ns-3 is the high degree of realism in the models (including frameworks for real application and kernel code) and integration of the tool with virtual machine environments and testbeds; we view that researchers need to move more effortlessly between simulation, testbeds, and live experiments, and ns-3 is designed to facilitate that.
  
Our GSoC organizational admin is [mailto:tahiliani.nitk@gmail.com Mohit P. Tahiliani] and our backup org admin is [mailto:tomhend@u.washington.edu Tom Henderson].
+
Our Google Code-In organizational admin is [mailto:tahiliani.nitk@gmail.com Mohit P. Tahiliani] and our backup org admin is [mailto:tomhend@u.washington.edu Tom Henderson].
  
 
Mentors will keep track of the students work and provide them constructive feedback. Mentors from companies are welcome, if the employer will permit the mentor sufficient time to perform the mentoring. Prospective mentors should notify Mohit P. Tahiliani or Tom Henderson of interest. Mentors familiar with ns-3 development practices will be preferred, to improve the chances of student code merge.
 
Mentors will keep track of the students work and provide them constructive feedback. Mentors from companies are welcome, if the employer will permit the mentor sufficient time to perform the mentoring. Prospective mentors should notify Mohit P. Tahiliani or Tom Henderson of interest. Mentors familiar with ns-3 development practices will be preferred, to improve the chances of student code merge.
Line 31: Line 29:
 
* Read [https://codein.withgoogle.com/archive/howitworks/ how GCI works].
 
* Read [https://codein.withgoogle.com/archive/howitworks/ how GCI works].
 
* Read the official [https://developers.google.com/open-source/gci/resources/getting-started Getting Started Guide].
 
* Read the official [https://developers.google.com/open-source/gci/resources/getting-started Getting Started Guide].
* Look through our List of tasks below (to be extended) to see if you find a task that interests you. If ns-3 is selected, these tasks will be visible through the GCI dashboard once the program starts on Oct 23.
+
* Look through our List of tasks which will be visible through the GCI dashboard once the program starts on Oct 23.
 
* Select appropriate tasks from the following categories: coding, documentation, training, outreach, research, quality assurance, and design.
 
* Select appropriate tasks from the following categories: coding, documentation, training, outreach, research, quality assurance, and design.
* Glance through the [http://www.nsnam.org/ns-3-26/documentation/ns-3 ns-3 tutorial], if you have not already done so.
+
* Glance through the [https://www.nsnam.org/documentation/latest/ ns-3 tutorial], if you have not already done so.
 
* Proceed to get in touch with the mentors: [http://mailman.isi.edu/mailman/listinfo/ns-developers ns-developers mailing list] | Chat https://ns-3.zulipchat.com/
 
* Proceed to get in touch with the mentors: [http://mailman.isi.edu/mailman/listinfo/ns-developers ns-developers mailing list] | Chat https://ns-3.zulipchat.com/
  
Line 67: Line 65:
 
*[mailto:suz.ruth.peter@gmail.com Susanna Ruth Peter]
 
*[mailto:suz.ruth.peter@gmail.com Susanna Ruth Peter]
 
*[mailto:charitha29193@gmail.com Charitha Sangaraju]
 
*[mailto:charitha29193@gmail.com Charitha Sangaraju]
 +
*[mailto:gm.nandita@gmail.com Nandita G]
 +
*[mailto:15it241.salman@nitk.edu.in Salman Shah]
 +
*[mailto:pgaur1411@gmail.com Padmini Gaur]
  
== List of tasks ==
+
== ns-3's GCI program outcome ==
 
+
'''Note to students:''' These ideas are not listed in any priority order.
+
 
+
==== Update the documentation of ns-3 app store ====
+
 
+
Update the User Guide in ns-3 app store wiki with latest screenshots and workflow, and the current documentation where necessary.
+
 
+
* ''Component:'' [https://apps.nsnam.org/ ns-3 app store]
+
* ''Category:'' Documentation
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://github.com/abhijithanilkumar/ns-3-AppStore/blob/master/README.md About ns-3 app store]
+
** [https://github.com/abhijithanilkumar/ns-3-AppStore/wiki ns-3 app store documentation]
+
** [https://github.com/abhijithanilkumar/ns-3-AppStore/wiki/User-Guide ns-3 app store User Guide]
+
 
+
==== Update parse_bake.py in ns-3 app store ====
+
 
+
Modify ns-3-AppStore/src/util/parse_bake.py to make sure that a bakefile is properly parsed and an app can be edited/created using the data. Make sure creation works, this will be useful when the App Creation process is automated.
+
 
+
* ''Component:'' [https://apps.nsnam.org/ ns-3 app store]
+
* ''Category:'' Coding
+
* ''Level:'' Medium
+
* ''References:''
+
** [https://github.com/abhijithanilkumar/ns-3-AppStore/blob/master/README.md About ns-3 app store]
+
** [https://github.com/abhijithanilkumar/ns-3-AppStore/wiki ns-3 app store documentation]
+
** [https://github.com/abhijithanilkumar/ns-3-AppStore/blob/master/src/util/parse_bake.py parse_bake.py]
+
 
+
==== Create a Deploy Script for ns-3 app store ====
+
 
+
Create a deploy script (shell script) that needs to be run each time a redeployment happens. Preferably, the deploy script should cover everything from pulling from GitHub to restarting the server. This will be useful to setup GitHub webhooks and automate the deployment process.
+
 
+
* ''Component:'' [https://apps.nsnam.org/ ns-3 app store]
+
* ''Category:'' Coding
+
* ''Level:'' Hard
+
* ''References:''
+
** [https://github.com/abhijithanilkumar/ns-3-AppStore/blob/master/README.md About ns-3 app store]
+
** [https://github.com/abhijithanilkumar/ns-3-AppStore/wiki ns-3 app store documentation]
+
 
+
==== Add documentation for Point to Point Dumbbell Topology Helper ====
+
 
+
Add the documentation for Point to Point Dumbbell topology helper in ns-3-dev. This helper is implemented in the point to point layout module in ns-3-dev, but lacks documentation.
+
 
+
* ''Component:'' [https://code.nsnam.org/index.cgi/ns-3-dev/ ns-3-dev]
+
* ''Category:'' Documentation
+
* ''Level:'' Medium
+
* ''References:''
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point-layout/model Implementation of Point to Point Dumbbell topology helper]
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point/doc/point-to-point.rst Sample documentation of Point to Point Network Device]
+
 
+
==== Add documentation for Point to Point Grid Topology Helper ====
+
 
+
Add the documentation for Point to Point Grid topology helper in ns-3-dev. This helper is implemented in the point to point layout module in ns-3-dev, but lacks documentation.
+
 
+
* ''Component:'' [https://code.nsnam.org/index.cgi/ns-3-dev/ ns-3-dev]
+
* ''Category:'' Documentation
+
* ''Level:'' Medium
+
* ''References:''
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point-layout/model Implementation of Point to Point Grid topology helper]
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point/doc/point-to-point.rst Sample documentation of Point to Point Network Device]
+
 
+
==== Add documentation for Point to Point Star Topology Helper ====
+
 
+
Add the documentation for Point to Point Star topology helper in ns-3-dev. This helper is implemented in the point to point layout module in ns-3-dev, but lacks documentation.
+
 
+
* ''Component:'' [https://code.nsnam.org/index.cgi/ns-3-dev/ ns-3-dev]
+
* ''Category:'' Documentation
+
* ''Level:'' Medium
+
* ''References:''
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point-layout/model Implementation of Point to Point Star topology helper]
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point/doc/point-to-point.rst Sample documentation of Point to Point Network Device]
+
 
+
==== Create a Script to detect dead links on ns-3 wiki ====
+
 
+
When ns-developers archives were recently rebuilt, the URLs to old posts have changed, and this can't be easily fixed.  Consequently, hyperlinks to ns-developer mails in ns-3 wiki are broken. Write a script to crawl ns-3 wiki and find all dead links, and sort them so we can find all of the ns-developer dead links. Once detected, fix them either manually or automate the script to fix all dead links.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Coding
+
* ''Level:'' Medium
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://mailman.isi.edu/pipermail/ns-developers/ ns-developers archives]
+
 
+
==== Add a new ‘ns-3 training videos’ page in ns-3 wiki ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Improve the Readability of first.cc and first.py ====
+
 
+
first.cc and first.py are basic examples provided in the tutorial of ns-3 for the beginners to simulate a point to point network. We need to improve the code readability.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Code documentation
+
* ''Level:'' Easy
+
* ''References:''
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/examples/tutorial Source code of first.cc]
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/examples/tutorial Source code of first.py]
+
 
+
==== Improve the Readability of second.cc and second.py ====
+
 
+
second.cc and second.py are basic examples provided in the tutorial of ns-3 for the beginners. We need to improve the code readability.
+
 
+
* ''Component:'' [http://code.nsnam.org/ns-3-dev/ ns-3-dev]
+
* ''Category:'' Code documentation
+
* ''Level:'' Easy
+
* ''References:''
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/examples/tutorial Source code of second.cc]
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/examples/tutorial Source code of second.py]
+
 
+
==== Add documentation for Bulk Send Application ====
+
 
+
Add the documentation for Bulk Send Application in ns-3-dev. This application is implemented in the application module in ns-3-dev, but lacks documentation.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Research, Documentation
+
* ''Level:'' Medium
+
* ''References:''
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/applications/model Source code of Bulk Send Application]
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point/doc/point-to-point.rst Sample documentation of Point to Point Network Device]
+
 
+
==== Add documentation for On-Off Application ====
+
 
+
Add the documentation for On-Off Send Application in ns-3-dev. This application is implemented in the application module in ns-3-dev, but lacks documentation.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Research, Documentation
+
* ''Level:'' Medium
+
* ''References:''
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/applications/model Source code of On-Off Application]
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point/doc/point-to-point.rst Sample documentation of Point to Point Network Device]
+
 
+
==== Add documentation for Packet Sink Application ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [http://code.nsnam.org/ns-3-dev/file/6ee403611443/src/point-to-point/doc/point-to-point.rst Sample documentation of Point to Point Network Device]
+
 
+
==== Add documentation for Udp Echo Client Application ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Design a Flow Diagram for implementing a basic network topology ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Prepare a DCE Installation Guide ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Improve the Readability of tbf-example.cc ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Improve the Readability of codel-vs-pfifo-asymmetric.cc ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Add documentation for Udp Echo Server Application ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Add documentation for Auto Rate Fallback model ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Add documentation for Adaptive Auto Rate Fallback model ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Add documentation for Packet Filter model ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Add documentation for extraction of network metrics ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Improve the Readability of tcp-variants-comparison.cc ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
 
+
==== Improve the Readability of tcp-pacing.cc ====
+
 
+
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
 
+
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
  
==== Configuring parameter of linux network stack in ns-3 DCE using sysctl interface ====
+
380 tasks were successfully completed by 46 students.
  
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
List of tasks for GCI 2018 is available at: https://codein.withgoogle.com/archive/2018/organization/5152211763986432/task/
  
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
GCI 2018 winners from ns-3 organization: Parth Pratim and bartekche
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+
  
==== Improve the Readability of wifi-manager.cc ====
+
GCI 2018 finalists from ns-3 organization: Parth Pandya, Asanali, Victor Hu and sikfeng
  
ns-3 Consortium holds an annual meeting every year which comprises of ns-3 training, Workshop on ns-3 and developers meeting. ns-3 training sessions are video recorded and made available to all the users. This task is about creating a new ‘ns-3 training videos’ page on ns-3 wiki. This new page should contain links to all the ns-3 training videos arranged in reverse chronological order. Mention briefly about the video contents along with the link to the video.
+
GCI 2018 winners and finalists are listed here: https://codein.withgoogle.com/archive/2018/
  
* ''Component:'' [https://www.nsnam.org/wiki ns-3 wiki]
+
Most of the tasks have been very useful for ns-3, and we have started merging these tasks into the mainline.
* ''Category:'' Design, Outreach
+
* ''Level:'' Easy
+
* ''References:''
+
** [https://www.nsnam.org/wiki ns-3 wiki]
+
** [https://vimeo.com/user29108190 ns-3 training videos]
+

Latest revision as of 17:44, 25 October 2019

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

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

ns-3's GCI 2018

This webpage highlights ns-3's Google Code-In 2018 effort. Google Code-In is an annual contest sponsored by Google to introduce pre-university students to open source software projects.

The seven week coding period for projects runs from 23 October to 12 December, 2018. The full project timeline is here: https://developers.google.com/open-source/gci/timeline

About the ns-3 project

ns-3 is a discrete-event network simulator, with a particular emphasis on network research and education.

Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as WiFi, and analyze or visualize the results. Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented. A particular emphasis in ns-3 is the high degree of realism in the models (including frameworks for real application and kernel code) and integration of the tool with virtual machine environments and testbeds; we view that researchers need to move more effortlessly between simulation, testbeds, and live experiments, and ns-3 is designed to facilitate that.

Our Google Code-In organizational admin is Mohit P. Tahiliani and our backup org admin is Tom Henderson.

Mentors will keep track of the students work and provide them constructive feedback. Mentors from companies are welcome, if the employer will permit the mentor sufficient time to perform the mentoring. Prospective mentors should notify Mohit P. Tahiliani or Tom Henderson of interest. Mentors familiar with ns-3 development practices will be preferred, to improve the chances of student code merge.

Students: how to participate

For students interested in applying to ns-3 for GCI, first wait to see if ns-3 will be selected. If so, then go through the following list to get started:

Mentors: how to participate

The ns-3 project is open to the proposal of new tasks by developers interested in being a GCI mentor. For mentors who're adding tasks to the list below, please ensure that:

  • The tasks must be sized such that they can be completed in 3 - 5 hours by students. Students have 3 days to complete the tasks.
  • The tasks must belong to any one of the following categories: coding, documentation, training, outreach, research, quality assurance, and design, and the respective category must be specified clearly in the description of the task. Note that tasks must not be related to language translation of the project documentation.
  • The task must be sufficiently described i.e., the main aim of the task, complexity of the task, reference links and other relevant information.
  • The tasks must be related to any of the following: ns-3-dev, ns-3-dce, ns-3 app store, ns-3 wiki and bake.

List of mentors

The list of mentors for GCI 2018 (more to be added):

ns-3's GCI program outcome

380 tasks were successfully completed by 46 students.

List of tasks for GCI 2018 is available at: https://codein.withgoogle.com/archive/2018/organization/5152211763986432/task/

GCI 2018 winners from ns-3 organization: Parth Pratim and bartekche

GCI 2018 finalists from ns-3 organization: Parth Pandya, Asanali, Victor Hu and sikfeng

GCI 2018 winners and finalists are listed here: https://codein.withgoogle.com/archive/2018/

Most of the tasks have been very useful for ns-3, and we have started merging these tasks into the mainline.