Challenge Overview
1.0. Project Overview
Welcome to the NASA Disruption Tolerant Networking (DTN) project. DTN is an approach to computer network architecture that seeks to address the technical issues in heterogeneous networks that may lack continuous network connectivity.
Note that some literature may use the term Delay Tolerant Network which is also abbreviated as DTN - the two terms are used interchangeably.
DTN is designed to provide reliable end-to-end delivery of information between nodes, and to do so in an environment that experiences frequent connectivity disruptions and topology changes. Such a capability will directly support human and robotic space exploration, as well as have wide applicability to land-mobile and airborne terrestrial communications.
1.1. Competition Overview
Delay-Tolerant Security Key Agreement, or DTKA, is an ION-compatible module for security key administration in DTN prototyped by the Jet Propulsion Laboratory (JPL) at CalTech for NASA.
A high-level overview of DTKA can be read on the forum here.
1.1.1. Competition Task
In this challenge, we would like you to produce a single document -- a tutorial that contains user guide instructions (i.e. the "what" and "why") and deployment guide instructions (i.e. the "how") for anyone familiar with administering DTNs but wants to learn what DTKA is, when to use it, and how to use it. In short, we are asking you to create a great tutorial. A great tutorial should teach by example and supply just the right balance of contextual information to complete each deployment step.
You should start by deploying DTKA then proceed to run the demo to get a feel of how it works; review the TCUML diagrams and the source code to gain a deeper understanding of how it was architected then use these insights to prepare an great tutorial.
This challenge arguably offers the easiest $1000 you'll ever win so go ahead and jump right in!
1.1.2. Contest Input
1. High-level overview of the motivation behind why DTKA was built is attached to the forum.
2. Diagrammatic overview ("Current Use Case" and "Current Deployment" ) of the different components (binaries) that make up DTKA can be seen in the TCUML attached to the forum.
3. For additional documentation on the "what" and "why" of the various DTKA binaries, please refer to the source attached to the forum.
You will find more information in the *.pod files at the path: dtka/doc/pod{1,3,5}/.
4. Instructions on "how" to deploy DTKA can be found on the forum.
The deployment instructions are complete but you are encouraged to make improvements as you see fit.
1.1.3. Review Criteria
Conciseness. Your submission must be written in clear and concise language so that it can easily be understood by sufficiently skilled users who have no experience with DTKA.
Coherence. Please use chapters for organization. In addition, you need to precede each deployment step with the "what" and the "why", in a logical way.
Consistency. All definitions, notations and formatting must be consistent.
Clarity. You are expected to augment the documentation with illustrations of your own. Non-trivial steps should be accompanied with diagrams.
1.2. Submission Deliverables
Please submit, in a compressed archive:
- User and deployment guide document written in tutorial form in an MS Word compatible format;
- The original source files of diagrams used to illustrate your document. Diagrams should be authored using the TopCoder UML tool;
- Changed source files (if any).
Please download the template on which to base your submission on from here.
Review Style Please note that due to the fairly subjective nature of the review criteria, this contest will not affect your rating or reliability. |
1.3. Additional Documentation
Document | Link |
---|---|
DTN introductory tutorial | Delay Tolerant Networks - A Tutorial |
Supporting document - (DTN) networks | Rationale Scenarios and Requirements for DTN In Space |
Supporting document - (DTN) security | Space Mission Key Management Concepts |
To learn about the meaning of words, terms and abbreviations specific to DTN, please refer to the Glossary
Final Submission Guidelines
1. Third Party Code/Libraries - All third party code/libraries must be open source and you must include the license in your submission. The license must allow us to modify/re-package the code as necessary. If you have any questions regarding this, please post in the forums. Submissions that include third party code without the proper license information will be disqualified if the third party code is found to be non-usable due to license restrictions.
2. Attribution/References- You must properly attribute and or reference any sentences, paragraphs or quotes that you cite in your text-based submission. If your submission is found to include text that has been copied and pasted from an online source without properly attributing the source, you will receive a not-so-nice email from the topcoder competition manager.
3. Spell Check - We understand that not all submitters will be native English speakers and that there will be spelling/grammatical mistakes. We request that you first run your submission through a grammar/spell checker before submission so as to fix simple mistakes.