Advanced Topics in Distributed Systems

Contact: Tronje Krop, Aleksandra Kovacevic, and Nicolas Repp.

Approach

The goal of the lab work in Advanced Topics in Distributed Systems is to gain experience in distributed research and development task. Students are expected to collaborate in an international team of four students from two locations using all known and available tool for distributed cooperation, in particular CVS. The challenge for the students is to master the communication between different cultures using the tools of the group’s choice.

Generic Task (International)

The generic task of the international lab work is to (self-)organize a distributed team of four international students to solve a common development and research problem. For each task there are one or more specialist tutors that help in the scientific part of the task. The specialist tutors are supported by local tutors that help in technical issues. The task of the students is as follows:

  1. Master the challenge of

    international cooperation by learning about the necessary tolls for

    communication and cooperation (1st week).

  2. Search, studying, and analyze the

    relevant literature to understand the problem of the given task and

    discuss their results with their group (1st and 2nd

    week).

  3. Design of a solution and

    coordination of the necessary development process for a prototype.

    The design of the solution must be argued and justified in a

    discussion with the advisor (3rd to 6th week).

  4. Finalize the prototype development

    (including measurement/simulation) and write a project report in

    form of an 8 pages IEEE conference papers (7th and 8th

    week).

All tasks have to be planed and organized autonomous by the students, which are only supported by the specialist advisers. The local students with direct contact to specialist tutor have the particular responsibility to communicate suggestions of the tutor to other team members.

Assignments

The following tasks have been given by the different institutions. Each task is described by the realizing institution, the supporting advisor, the full title, a detailed task description, as well as the referred literature. A download-version of the task description can be found here.

TUD-1 – Design and Evaluation of Peer-to-Peer Overlays (Gnutella)

Institution: TU-Darmstadt (19.03. until 07.05.)
Tutor: Aleksandra Kovacevic (aleksandra.kovacevic@kom.tu-darmstadt.de)
    Kalman Graffi (kalman.graffi@kom.tu-darmstadt.de)
Title: Design and Evaluation of Peer-to-Peer Overlays

Description: Peer-to-peer (P2P) paradigm has gained significant popularity of both research and non research community nowadays. Big potential of having such a self-organizing, scalable, robust and low-cost network have been recognized and its functional spectrum is expanding from popular file sharing systems to applications such as Skype or Groove. A lot of research effort has been invested in developing peer-to-peer overlay networks with different advantages and disadvantages. According to the classification based on the relationship between the stored content and peer ID, there are two big classes of overlays: structured and unstructured. We are interested to evaluate Gnutella, the most used unstructured network, to compare it with structured overlays in different aspects like scalability, retrievability of the results, etc.
In order to evaluate a design of P2P overlay network, to analyze possible modifications, and to compare with other existing systems, simulation is the necessary step. We have already developed a general evaluation framework for simulating P2P overlay networks that is capable of simulating several hundreds thousands of peers. Chord, Kademlia, globase.KOM, CAN and Omicron are implemented within the simulator and therefore evaluation platform already exists and it is continuously expanding.

Literature:
[1] S. Androutsellis-Theotokis and D. Spinellis. A Survey of Peer-to-Peer Content Distribution Technologies. ACM Computing Survey, 36(4):335–371, 2004.
[2] E.K. Lua, J. Crowcroft, M. Pias, R. Sharma, and S. Lim. A Survey and Comparison of Peer-to-Peer Overlay Network Schemes. IEEE Communications Survey and Tutorial, 2004.
[3] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and S. Shenker. A Scalable Content-Addressable Network. In Proceedings of the ACM SIGCOMM 2001 Technical Conference, (San Diego, CA, USA), August 2001.
[4] V. Darlagiannis, A. Mauthe, N. Liebau, and R. Steinmetz. An Adaptable, Rolebased Simulator for P2P Networks. Presented at 2004 International Conference on Modelling, Simulation and Visualization Methods, 2004.

TUD-2 – Distributed Monitoring of Mobile Ad Hoc Networks

Institution: TU-Darmstadt (19.03. until 07.05.)
Tutor: Tronje Krop (tronje.krop@kom.tu-darmstadt.de)
    Matti Siekkinen (siekkine@ifi.uio.no)
Title: Distributed Monitoring of Mobile Ad Hoc Networks

Description: Mobile ad hoc networks are a promising approach for next generation wireless networks enabling users to communicate without infrastructure. However, mobile ad hoc networks have not been widely deployed, yet. The complexity arising from mobile devices communicating via an unmanaged wireless shared medium poses many research issues that have been only partially addressed by abstract analysis and simplified simulation modeling so far. To gain deeper insights into ad hoc networks we have to accomplish real-world experiments that reflect the full complexity of the wireless shared medium.
Therefore, we have developed JiST/MobNet a combined simulation, emulation, and real-world testbed platform for evaluating ad hoc networks running on Linux and Windows. As this work was originally based on the JiST/SWANS simulator, Jist/MobNet provides complex on/off-line monitor/analyzer for evaluating simulation experiments. Unfortunately, this monitor/analyzer cannot be applied in real-world experiments because it relies on a synchronized observer approach not suitable for distributed systems.
The task of this student project is extend the existing monitor/analyzer of JiST/MobNet to allow for off-line monitoring and analysis of real-world experiments. The main challenge is to develop efficient mechanisms for resynchronizing partial ordered event logs in an off-line monitor to allow for correct presentation and analysis of results.

Literature:
[1] Rimon Barr. JiST – Java in Simulation Time / SWANS – Scalable Wireless Ad hoc Network Simulator. Homepage jist.ece.cornell.edu, 2005.
[2] Z. J. Haas, J. Deng, B. Liang, and et al. Encyclopedia of Telecommunications, chapter Wireless Ad Hoc Networks. John Wiley, December 2002.
[3] C. Perkins, E. Belding-Royer, and S. Das. Ad hoc On-Demand Distance Vector (AODV) Routing. IETF Request for Comments 3561, July 2003.

TUD-3 – Distributed Simulation of Mobile Ad Hoc NetworksTUD-3 – Distributed Simulation of Mobile Ad Hoc Networks

Institution: TU-Darmstadt (16.04. until 20.07.)
Tutor: Tronje Krop (tronje.krop@kom.tu-darmstadt.de)
Title: Distributed Simulation of Mobile Ad Hoc Networks

Description: Simulation has become one of the most important tools for evaluation of non-existing network services and protocols. Particularly, where protocols and services cannot be easy deployed in testbeds by cost or scale, simulation platforms add invaluable benefit for exploration of networks. But the exponential growing size and bandwidth, the complexity of realistic wireless transmission behavior, and the modeling of mobility have placed a great burden on efficient network simulation platforms at all.
Scalability and performance have become a major issue for wired and wireless simulations. The most promising way to cope with this challenges, is transparent distribution of large simulations across multiple high performance machines using the inherent parallelism of discrete event simulations. Therefore, it is necessary to apply new paradigms, that on one side allow the simulation to preserve its usual semantics but on the other side to benefit from the distribution context. Multiple such ways have been investigated in the past.
The task of this challenging student project is to implement a distributed simulation platform for mobile networks based on JiST/SWANS. Because a transparent distribution of simulation entities and simulation events by the kernel is very difficult, the basic idea of this project is to extend the kernel of JiST by mechanisms that allow for manual distribution of entities and events. Therefore, SWANS must be extended by a distributed communication field for message transport, as well as by a node context for node distribution. A final performance evaluation of the distribution concept should prove the applicability of this approach.

Literature:
[1] Rimon Barr. JiST – Java in Simulation Time / SWANS – Scalable Wireless Ad hoc Network Simulator. Homepage jist.ece.cornell.edu, 2005.
[2] Z. J. Haas, J. Deng, B. Liang, and et al. Encyclopedia of Telecommunications, chapter Wireless Ad Hoc Networks. John Wiley, December 2002.
[3] R. M. Fujimoto. Distributed Simulation Systems. In Proceedings of the 2003 Winter Simulation Conference. December 2003.
[4] S. L. Ferenci, K. S. Perumalla, R. M. Fujimoto. An Approach for Federating Parallel Simulators. In Proceedings of 14th Workshop on Parallel and Distributed Simulation (PADS 2000), Bologna, Italy, pages 63-70, May 2000.

TUD-4 – RoboCupRescue using Real Ad Hoc Communication (JiST/MobNet)

Institution: TU-Darmstadt (19.03. until 07.05.)
Tutor: Tronje Krop (tronje.krop@kom.tu-darmstadt.de)
    Ovidiu Drugan (ovidiu@ifi.uio.no)
Title: RoboCupRescue using Real Ad Hoc Communication (JiST/MobNet)

Description: Mobile ad hoc networks are a promising approach for next generation wireless networks enabling users to communicate without infrastructure. However, mobile ad hoc networks have not been widely deployed, yet. On important scenario for application of ad hoc networks are rescue missions in case of natural disasters and catastrophes. Different tools have been developed to model realistic behavior of rescue teams of firefighters, police man, and ambulance based on knowledge and communication.
On of this tools is RoboCupRescue which models the behavior of rescue forces under the restricted communication abilities of shouting neglecting modern communication capabilities. To enable more realistic simulation of rescue missions using modern communication devices, the RoboCupRescue simulation can be combined with JiST/MobNet to model ad hoc network communication conditions.
The task of this student project is to combine RoboCupRescue with JiST/MobNet to simulate realistic rescue missions using modern communication devices. Therefore, a RoboCupRescue wrapper should be implemented that allows to control device mobility in JiST/MobNet based on communication of the virtual rescue forces.

Literature:
[1] Rimon Barr. JiST – Java in Simulation Time / SWANS – Scalable Wireless Ad hoc Network Simulator. Homepage jist.ece.cornell.edu, 2005.
[2] Z. J. Haas, J. Deng, B. Liang, and et al. Encyclopedia of Telecommunications, chapter Wireless Ad Hoc Networks. John Wiley, December 2002.
[3] The Robocup Rescue Simulation Project on Source Forge. sourceforge.net/projects/roborescue/
[4] The Robocup Rescue Simulation League 2005. kaspar.informatik.uni-freiburg.de/~rcr2005/index.php

TUD-5 – Bandwidth Modeling in Large Scale Peer-to-Peer Network Simulations

Institution: TU-Darmstadt (19.03. until 07.05.)
Tutor: Aleksandra Kovacevic (aleksandra.kovacevic@kom.tu-darmstadt.de)
    Kalman Graffi (kalman.graffi@kom.tu-darmstadt.de)
Title: Bandwidth Modeling in Large Scale Peer-to-Peer Network Simulations

Description: Peer-to-peer (P2P) paradigm has gained significant popularity of both research and non research community nowadays. Big potential of having such a self-organizing, scalable, robust and low-cost network have been recognized and its functional spectrum is expanding from popular file sharing systems to applications such as Skype or Groove. A lot of research effort has been invested in developing peer-to-peer overlay networks with different advantages and disadvantages. According to the classification based on the relationship between the stored content and peer ID, there are two big classes of overlays: structured and unstructured. We are interested to evaluate Gnutella, the most used unstructured network, to compare it with structured overlays in different aspects like scalability, retrievability of the results, etc.
In order to evaluate different P2P overlay networks, to analyze possible modifications, and to compare them with other existing systems, simulation is a necessary first step. Therefore, we developed a general evaluation framework - called PeerFact - for simulating P2P overlay networks that is capable of simulating hundreds of thousands peers.
The task of the student project is to design and implement an efficient model for bandwidth restricted peers. Therefore, a the existing network layer model of the PeerFact simulator should be extended and the validity of the model should be verified by comparing it to real network measurement results.

Literature:
[1] S. Androutsellis-Theotokis and D. Spinellis. A Survey of Peer-to-Peer Content Distribution Technologies. ACM Computing Survey, 36(4):335–371, 2004.
[2] E.K. Lua, J. Crowcroft, M. Pias, R. Sharma, and S. Lim. A Survey and Comparison of Peer-to-Peer Overlay Network Schemes. IEEE Communications Survey and Tutorial, 2004.
[3] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and S. Shenker. A Scalable Content-Addressable Network. In Proceedings of the ACM SIGCOMM 2001 Technical Conference, (San Diego, CA, USA), August 2001.
[4] V. Darlagiannis, A. Mauthe, N. Liebau, and R. Steinmetz. An Adaptable, Rolebased Simulator for P2P Networks. Presented at 2004 International Conference on Modelling, Simulation and Visualization Methods, 2004.

TUD-6 - SOA Project in cooperation with Software AG

Institution: TU-Darmstadt (16.04. until 20.07.)
Tutor: Nicolas Repp (nicolas.repp@kom.tu-darmstadt.de)
Julian Eckert (julian.eckert@kom.tu-darmstadt.de)
Title: SOA Project in cooperation with Software AG

Description: For more information about this project in cooperation with Software AG please check the tab SOA Project on top of this page.

UIO-1 – RoboCupRescue using Real Ad Hoc Communication (NEMAN)

Institution: University of Oslo (19.03. until 07.05.)
Tutor: Ovidiu Drugan (ovidiu@ifi.uio.no)
    Matija Puzar (matija@ifi.uio.no)
Title: RoboCupRescue using Real Ad Hoc Communication (NEMAN)

Description: Mobile ad hoc networks are a promising approach for next generation wireless networks enabling users to communicate without infrastructure. However, mobile ad hoc networks have not been widely deployed, yet. On important scenario for application of ad hoc networks are rescue missions in case of natural disasters and catastrophes. Different tools have been developed to model realistic behavior of rescue teams of firefighters, police man, and ambulance based on knowledge and communication.
On of this tools is RoboCupRescue which models the behavior of rescue forces under the restricted communication abilities of shouting neglecting modern communication capabilities. To enable more realistic simulation of rescue missions using modern communication devices, the RoboCupRescue simulation can be combined with NEMAN to model ad hoc network communication conditions.
The task of this student project is to combine RoboCupRescue with NEMAN to simulate realistic rescue missions using modern communication devices. Therefore, a RoboCupRescue wrapper should be implemented that allows to control device mobility in NEMAN based on communication of the virtual rescue forces.

Literature:
[1]    Matija Pužar, Thomas Plagemann. NEMAN: A Network Emulator for Mobile Ad-Hoc Networks. Technical Report, University of Oslo, Oslo, March 2005. www.ifi.uio.no/dmms/papers/138.pdf
[2]    The Robocup Rescue Simulation Project on Source Forge. sourceforge.net/projects/roborescue/
[3]    The Robocup Rescue Simulation League 2005. kaspar.informatik.uni-freiburg.de/~rcr2005/index.php

UIO-2 – Sensor Networks and Data Stream Management Systems

Institution: University of Oslo (19.03. until 07.05.)
Tutor: Jarle Soberg (jarleso@ifi.uio.no)
    Ovidiu Drugan (ovidiu@ifi.uio.no)
Title: Sensor Networks and Data Stream Management Systems

Description: Sensor Networks are a promising technology for cost efficient collection of distributed information, e.g., in warehouses, libraries, etc. Possible applications are weather report system that communicate their data wireless to access points and through to Internet servers.
The task of the student project is to design and implement a bridge module that allows TinyDB to access data stream management systems, preferably Borealis, instead of conventional data base management systems. Therefore, a wrapper should be designed that translates query results from TinyDB to Borealis tuples and to integrate TinyDB in the distribution of queries, as is performed by Borealis.

Literature:
[1]    TinyDB: A Declarative Database for Sensor Networks. telegraph.cs.berkeley.edu/tinydb/.
[2]    Borealis: Distributed Stream Processing Engine. www.cs.brown.edu/research/borealis/public/.

UIO-3 – Weather Sensor Networks and Data Stream Management Systems

Institution: University of Oslo (19.03. until 07.05.)
Tutor: Jarle Soberg (jarleso@ifi.uio.no)
    Ovidiu Drugan (ovidiu@ifi.uio.no)
Title: Weather Sensor Networks and Data Stream Management Systems

Description: Sensor Networks are a promising technology for cost efficient collection of distributed information, e.g., in warehouses, libraries, etc. Possible applications are weather report system that communicate their data wireless.
The task of the student project is to create a simple wrapper that listens to the serial port for messages of the weather report system and sends them after transformation to a data stream management system for further analysis. A possibly hard extension is to allow for distribution of queries down to the weather report system.

Literature:
[1]    TinyDB: A Declarative Database for Sensor Networks. telegraph.cs.berkeley.edu/tinydb/.
[2]    Borealis: Distributed Stream Processing Engine. www.cs.brown.edu/research/borealis/public/.

UIO-4 – Message Ferry to Connect Partitioned Mobile Ad hoc Networks

Institution: University of Oslo (19.03. until 07.05.)
Tutor: Ovidiu Drugan (ovidiu@ifi.uio.no)
Title: Message Ferry to Connect Partitioned Mobile Ad hoc Networks

Description: Mobile ad hoc networks are a promising approach for next generation wireless networks enabling users to communicate without infrastructure. However, mobile ad hoc networks have not been widely deployed, yet. A major problem are network splits connection failures that occur in rural areas with low node density. One idea for sparse mobile networks is to use connection independent applications that allow for using message ferry principles.
The task of the student project is to design and implement an application which can use a physical ferry for data transmission, i.e., can tolerate delays in communication. The application must use intermediate nodes which can transport physically from the proximity of the source to the proximity of the destination.

Literature:
[1]    To be determined.

UIO-5 – Tools for Creating Mobility Traces

Institution: University of Oslo (19.03. until 07.05.)
Tutor: Ovidiu Drugan (ovidiu@ifi.uio.no)
Title: Tools for Creating Mobility Traces

Description: Mobile ad hoc networks are a promising approach for next generation wireless networks enabling users to communicate without infrastructure. However, mobile ad hoc networks have not been widely deployed, yet. A major problem are network splits connection failures that occur in rural areas with low node density. One idea for sparse mobile networks is to use connection independent applications that allow for using message ferry principles. To evaluate the potential of message ferry principles, tools are necessary to trace the mobility of devices.
The task of the student project is to design and implement tools that extract mobility traces from proximity information of wireless communication devices. E.g., proximity traces for the Nokia 770/800 devices based on beacons from Bluetooth 2.0 and IEEE 802.11 b/g (WiFi). In addition, periodic traffic should be generated  test the connectivity by uploading the traces to a central repository.

Literature:
[1]    To be determined.

LAN-1 – Autonomic Communication

Institution: Lancaster University (19.03. until 07.05.)
Tutor: Andreas Maute (andreas@comp.lancs.ac.uk)
Title: Autonomic Communication

Description: The principles of Autonomic Communication have been introduced in the lecture. One of the key-elements is the autonomic formation of compartments and automatic configuration of the protocol stack according to network characteristics and the requirements of a specific use case. The aim of this coursework is investigate the principles of autonomic communication and to analyse how they can be deployed in an actual communication context.

In order to organise themselves into compartments network notes take physical properties into account such as kind of network and vicinity of nodes. Some nodes are multihomed, i.e. they have connections to different networks. The goal is that a set of nodes with certain physical properties should be able to organise itself into compartments according to a rule-set. Multihomed network nodes are candidates to build bridges between different linked communication compartments. The infrastructure is dynamic and should be able to adapt to changes.

After organising the nodes into compartments it should be shown how appropriate protocol functions are chosen for a specific request and how the routing is performed according to the request requirements. The scenario could be the establishment of a video stream vs. sending small packets of measurement data.

Your task is to work as a team to design and develop a . Your work focus on the aspects mentioned in the objectives, i.e. other points such as resilience and optimisation do not have to be considered. It should simulate how compartments are formed and how they are maintained considering joining and leaving network nodes. The second part of the simulation should show how protocol functions are selected according to a set of requirements and how routes are determined. The requirements set will be finite as well as the number of protocol functions. The simulation should show how specific request will be served. You can use the language and platform of your choice (you should agree this with each other as soon as possible). Any questions, just ask me. In more detail, you should:

     

  • Develop a simple through which the different nodes contact each other and determine their neighbours and physical properties.
  • Write a simple simulation of how they form after exchanging the initial information.
  • Write a simple simulation of what happens once a new note joins or an existing node leaves.
  • Develop a simple. This should take the form of a protocol function selection tool that selects according to a finite set of requirements such as:

    1. throughput
    2. delay
    3. error rate
    4. transmission type
    5. max. message size.

  • Write a simple simulator using the self-organisation simulator to determine the route according to the requirements and functional protocol composition.
  • Run experiments on your simulator and analyse how different rules and configurations influence

    1. the way compartment form
    2. the way routes are selected

  • Write a short report in the form of a short academic paper (10 pages maximum, ACM format), which documents the design and implementation of your simulator, the experiments you undertook, the results you measured, and valuation of those results, concluding remarks, any planned future work and references.
  •  

Literature:
[1] To be determined.

LAN-2 – Mobile IP

Institution: Lancaster University (19.03. until 07.05.)
Tutor: Joe Finney (joe@comp.lancs.ac.uk)
Title: Mobile IP

Description: Solving the host mobility problem at the IP layer can be highly efficient and generic enough to support a wide range of applications, but as we saw in the lectures, it can be susceptible to a number of security attacks, and can suffer from issues of handoff performance. The aim of this coursework is to undertake a practical analysis of some of those limitations.

Your task is to work as a team to design and develop a . Your work be a complete implementation of the protocol (this would be far too complex for this exercise), but should simulate the basic Mobile IP functionality, including the bindings cache, binding update list and binding update messages. You should build this in a distributed fashion, such that you can undertake experiments between the partner institutions participating in the course. Your simulation should be at the application level (no need to integrate with existing IPv6 stacks or applications), and you can use the language and platform of your choice (you should agree this with each other as soon as possible). Any questions, just ask me. In more detail, you should:

     

  • Develop a simple that allows two applications to send data packets to one another. You can use the protocol / platform of your choice to build this. For example, it may be based on TCP, UDP, RMI, XMLRPC, etc.
  • Write a simple simulation of an to be sent over these links (no need to model all the data – the, and fields will be sufficient).
  • Write a simple simulation of a that can generate and receive your IPv6 packets on your virtual network links. Write a simple application to test it (e.g a ping application)
  • Develop a simple. This should take the form of a process with a number of your virtual network links (ports), which can route and forward your IPv6 packets between them. You will need to build a simple routing table for this.
  • Build a across institutions. Build a network of, say, five virtual routers, and connect them together using multiple instances of your application level router. Ensure you can forward packets across your network. Note: there is no need to write a dynamic routing protocol here – simply using static routes is fine.
  • Extend the capabilities of your network hosts and routers to include (without route optimization, or reverse reachability). Remember you will need to develop a simulation of the binding cache and binding update messages.
  • Run experiments on your simulator, and measure the handoff times of the protocol over your testbed network. Compare and contrast the performance of the protocol under different network conditions. Analyse the results to determine what limits the handoff performance of the protocol.
  • Write a short report in the form of a short academic paper (10 pages maximum, ACM format), which documents the design and implementation of your simulator, the experiments you undertook, the results you measured, and evaluation of those results, concluding remarks, any planned future work and references.

If time permits, you could extend your simulation to include other features of Mobile IPv6, and undertake experiments to investigate its effectiveness, performance and limitations. Extra work might include:

  • Correspondent node / route optimization support
  • The reverse reachability algorithm
  • Handoff optimization protocols (e.g. Fast Handoff / Hierarchical Mobile IPv6)
  • Broadcast links (like Ethernet) as well as point to point links.
  •  

Literature:
[1] To be determined.