Praktikum Advanced Networking
||Friday, 14.00 - 16.00
||4 SWS, 6 ECTS credits
||CS M.inf. / CS B.inf.
||Xiaoming Fu, Niklas Neumann, Florian Tegeler
Please check Stud.IP for additional information and course materials.
|Course scenario: Net-Solutions, a small start-up company
wants to develop an application that allows the exchange of location
information between peers. Our team of computer scientists has been
hired to design, implement and evaluate this application. During the
course of the semester, the team will work on the realization of the
given requirements independently. In weekly meetings the team will
present its progress and has the opportunity for discussion with senior
The requirements for the application are as follows:
- Link layer agnostic: The application is IP-based and only use
functions of the IP-Layer or above directly. Functions of the lower
layers if necessary need to be encapsulated or accessed via a
- Ad-hoc peer-detection: The application must be able to find other peers without any bootstrapping or pre-configuration.
- Peer identification: A peer is uniquely identifiably by other peers across interfaces and sessions.
- Multiple device support: The application needs to be able to
run on different (Linux-based) platforms. The application will be
tested on a number of devices such as the Neo FreeRunner, the Nokia N810 Internet Tablet running Maemo, and PCs.
- Location updates: A peer can "track" another peer (if the
peer allows it) which means that it notices a change in the location of
the other peer.
- Support for multiple interfaces: Interfaces can change during
the run-time of the application and more than one interface can be
active. Different peers can be visible on different interfaces.
- Assisted peer-detection: The application should be able to
detect peers that wouldn't been detected otherwise with the help of
some sort of bootstrapping or pre-configuration.
- Peer authentication: A peer requesting location information
can be granted or denied this information based on a simple access
- Scalable: The application should support a big number of peers (hundreds to thousands) and scale well.
- Google Maps support: A peer can use Google Maps to visualize the location of known peers.
- Google Android support/Platform independent: The application can run on a multitude of mobile and non-mobile systems.
- GPS support: The node uses realtime GPS data (if available) to update its location.