Department of Informatics - Communication Systems Group

Challenge Task 2011

Overview

Task Description

Recent events have put the neutrality of the Internet in question. The Internet as we know today depends heavily on the DNS (Domain Name System) to translate domain names into IP addresses of hosts where information is located. The problem is that DNS has a central authority, making it easy for an entity to arbitrarily and effectively shut down web sites and other services that depend on DNS. The Internet as a free, independent, and censorship-less communication medium can only exist if DNS were government-independent.

The P2P Challenge Task (CT) for the FS11 semester is to design and implement an independent, P2P DNS infrastructure. The application will act as a name server running on PCs of voluntaries who collaborate on keeping the service. This means that every peer will listen on port 53 and "speak" DNS to resolvers (e.g. web browsers). No central authority may be present, that is, the system will suffer no influence from ICANN or governments. Conflicts must be solved by the peers themselves (for example, using voting or a web of trust). Assumptions must be made regarding who has the right to use which name, but it must not be trivial for a single peer to hijack a domain name it has no right to (although more complex attacks don't have to be considered). Every peer must run the same software, although some peers may become more trusted than others.

Requirements

All requirements below must be met in order for the CT to be successfully accomplished.

Assumptions

The following facts may be assumed:

Libraries and Tools

The items below represent some supporting libraries, tools, or references that might be taken into consideration.

Organization

Initial Steps

In order to successfully achieve your goal, the following initial steps are recommended.

Time Plan and Milestones

The challenge task includes three milestones on which specific deliverables have to be handed-in to the supervisors:

The following table shows the time plan for the challenge task with the different milestones:

Date Activity
03.03.
Discussion Exercise 1 + Grouping, Task Presentation
10.03.
Work on CT
17.03.
Milestone 1 + work on CT
24.03.
Discussion Exercise 2 + work on CT
31.03.
Work on CT
07.04. Milestone 2 + work on CT
14.04. Work on CT
21.04.
Discussion Exercise 3 + work on CT
05.05.
Work on CT
10.05. (!)
(a Tuesday for working on CT)
12.05. Work on CT
19.05. Work on CT
26.05. Milestone 3 + challenge task presentation

Groups and Support

During the challenge task each group will be able to ask questions and get support for the task from their supervisors:

Group # Participants Supervisor
1 Martin Brandtner, Dario Nakic, Mathias Weyland GM
2 Nicolas Hoby, Patrick Leibundgut, Khoa Nguyen, Andreas Volkart FH
3 Michael Ammann, Pascal Muther, Reto Seeholzer, Marc Tobler GM
4 Michael Enz, Serge Hänni, Frank Neugebauer, Thomas Ritter, Konstantin Zerebcov FH
5 Alexander Filitz, Katja Kevic, David Oertle, Damian Schärli GM

Subversion Repository

A SVN repository will be provided to each group. Each repository contains the suggested libraries and an Eclipse project.

Group # SVN URL User
1 https://www.csg.uzh.ch/svn/p2pct11g1 p2pct11g1
2 https://www.csg.uzh.ch/svn/p2pct11g2 p2pct11g2
3 https://www.csg.uzh.ch/svn/p2pct11g3 p2pct11g3
4 https://www.csg.uzh.ch/svn/p2pct11g4 p2pct11g4
5 https://www.csg.uzh.ch/svn/p2pct11g5 p2pct11g5

The passwords are to be provided by e-mail.

Testbed Infrastructure

During the challenge task and for the final demo 10 Linux PCs (Pentium 4, 2.8 GHz, 500 MB RAM) will be available during exercise hours in BIN 1.D.12.

Presentation and Evaluation

The challenge task will end on the 26.05.2011. On this date, the different groups will present and demonstrate their results, which will be evaluated by a jury.

Result

Congratulation to group 4 for winning the 2011 P2P Challenge Task!

Thanks to all participants for the hard work on developing, presenting, and demonstrating interesting and diverse approaches to solve the given problem.

Reports and Source Code

Please find below the report and source code of each group for download. Source code is licensed under GPL. In case of questions, please contact the respective supervisor.

Group # Authors Supervisor Report Source Code
1 Martin Brandtner, Dario Nakic, Mathias Weyland GM Report Source
2 Nicolas Hoby, Patrick Leibundgut, Khoa Nguyen, Andreas Volkart FH Report Source
3 Michael Ammann, Pascal Muther, Reto Seeholzer, Marc Tobler GM Report Source
4 Michael Enz, Serge Hänni, Frank Neugebauer, Thomas Ritter, Konstantin Zerebcov FH Report Source
5 Alexander Filitz, Katja Kevic, David Oertle, Damian Schärli GM Report Source
top
Mobile View | Classic View