Difference between revisions of "ECN support for qdiscs in ns-3"

From Nsnam
Jump to: navigation, search
(Created page with "== Enabling ECN support for ns-3 qdiscs - Summer Project 2016 == * '''Student:''' [mailto:shravya.ks0@gmail.com Shravya Kaudki Srinivas] * '''Mentors:''' [mailto:tahiliani.ni...")
 
Line 5: Line 5:
 
* '''Abstract:''' This project aims to provide ECN support to the existing AQM mechanisms in ns-3, verify the same by writing tests and document it.  
 
* '''Abstract:''' This project aims to provide ECN support to the existing AQM mechanisms in ns-3, verify the same by writing tests and document it.  
  
* '''Referred RFC:''' Common TCP Evaluation Suite [ https://tools.ietf.org/html/draft-irtf-iccrg-tcpeval-01 ]
+
* '''Referred RFC:''' The Addition of Explicit Congestion Notification (ECN) to IP [ https://tools.ietf.org/html/rfc3168]
* '''Referred ns-2 code:''' [ https://bitbucket.org/hayesd/tcp-evaluation-suite-public ]
+
* '''Referred ns-2 code:'''  
* '''ns-3 TcpEval code:''' [ https://github.com/dharmendra-mishra/TcpEvalSummerProject ]
+
* '''ns-3 ECN code:'''  
 +
* '''Other Material:''' Implementing explicit congestion notification in ns-3 [ http://dl.acm.org/citation.cfm?id=2630782]
 
* '''About me:''' : I am pursuing B.Tech in Computer Science from National Institute of Technology Karnataka, Surathkal, India. Currently, I am a Mitacs intern working under Dr. Ehab Elmallah on Wireless Underwater Sensor Networks at University of Alberta, Canada.
 
* '''About me:''' : I am pursuing B.Tech in Computer Science from National Institute of Technology Karnataka, Surathkal, India. Currently, I am a Mitacs intern working under Dr. Ehab Elmallah on Wireless Underwater Sensor Networks at University of Alberta, Canada.
  

Revision as of 16:58, 4 July 2016

Enabling ECN support for ns-3 qdiscs - Summer Project 2016

  • Referred RFC: The Addition of Explicit Congestion Notification (ECN) to IP [ https://tools.ietf.org/html/rfc3168]
  • Referred ns-2 code:
  • ns-3 ECN code:
  • Other Material: Implementing explicit congestion notification in ns-3 [ http://dl.acm.org/citation.cfm?id=2630782]
  • About me: : I am pursuing B.Tech in Computer Science from National Institute of Technology Karnataka, Surathkal, India. Currently, I am a Mitacs intern working under Dr. Ehab Elmallah on Wireless Underwater Sensor Networks at University of Alberta, Canada.


Weekly Plan

Week 1

* Going through the RFC
* Going through the Linux and ns-2 stack 
* Preparing the architecture for merging ECN with the existing AQM mechanisms in ns-3

Key Deliverable: Information Architecture

Week 2

* Implementation of ECN bits in the TCP and IP headers
* Implementation of ECN Negotiation by adding ECN Capability to TCP's SYN/ACK packets 
* Writing tests for this scenario and documenting the ECN support in TCP and IP packets

Key Deliverable: RFC compliant packet structure

Week 3

* Implementation of ECN at TCP sender (i.e., setting ECN code points in data packets)
* Writing tests for this scenario and documentation of the implementation and tests. 

Key Deliverable: The sending module at layer 4

Week 4

* Incorporating ECN functionality in PIE 
* Write tests to  verify the functionality of ECN with PIE 
* Documenting the implementation of ECN for PIE.
* We can have Mid-term review this week

Week 5

* Implementation of ECN at TCP receiver (i.e., recognising ECN marks from data packets)
* Writing example for implementation of ECN in layer 4
* Completing tests for this scenario and documenting the implementation and tests.

Key Deliverable: The complete implementation of ECN in layer 4

Week 6

* Integration across layers
* Verifying the complete functionality of ECN
* Putting up code for review
* Complete the documentation

Week 7

Week 7:
* Addressing reviewer’s comments
* Solving bugs before declaring the code to be 'ready to merge' state.
* Finalize the documentation.