Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added 3 new projects

...

Current CT-Thesis/Praktikum-Topics

  • Centrality measures
  • Spanning trees on real networks
  • Coordination in changing networks
  • What to do when your network fails? Fast local failover mechanisms
  • Networks are in a constant state of change. How to update them consistently?
  • Change the network topology on the fly: lasers, mirrors, antennas
  • Programmable matter
  • Bitcoin from a networking perspective

  • Distributed systems with cheap machines

  • Distributed proofs

  • Online exploration and evacuation

  • Predictability of Virtual Network Control for Software-Defined Networks

  • Update your Network - Loop-Free! 

  • Your own project idea related to networks and communication technologies




Image Added
Centrality measures

In networks of various types, we are interested in understanding the relative importance of the nodes. Here, an “important” unit can be a router in a computer network that have many shortest paths going through it, or an opinion leader in a social network. There are several measures for quantifying the importance of different units in the system, called centrality measures. One important measure is called betweenness centrality: here, we give each unit “points” for every shortest path between a pair of other units it participates in, where the number of point decreases if there are more shortest paths for this pair.

In recent years, there were several works on distributed algorithm that allow each unit in a network to compute its own betweenness centrality, or other centrality measures. Our goals in this project are

  • Simulate a distributed betweenness centrality algorithm on a model of a real-world system;
  • Compare the performance of different algorithms computing centrality measures, e.g., betweenness centrality vs. load centrality;
  • Compare the outcomes of different algorithms computing centrality measures, i.e., the different centrality values under different measures.

For further reading, see

This topic is available at all levels.
For more information, please contact Prof Stefan Schmid atStefan_schmid@univie.ac.at or Ami Paz at ami.paz@univie.ac.at


Image Added
Spanning trees on real networks

Spanning trees are important mean of communication in real networks. A highly import type of spanning trees is a minimum spanning tree (MST), a tree that minimize the total cost, which could represent delays, infrastructure costs and more. In this project, we are interested in several theoretical algorithms for the problem of constructing an MST in a network that has a complete overly network. That is, in addition to the regular communication links, each node can also send small messages to all other nodes, in order to manage the network – in our case, in order to construct an MST.

We will compare the real performance of several theoretical algorithms proposed in the last years:

and maybe more…

This topic is available at all levels.
For more information, please contact Prof Stefan Schmid atStefan_schmid@univie.ac.at or Ami Paz at ami.paz@univie.ac.at


Image Added
Coordination in changing networks

We think of a highly dynamic network, say of sensors moving in space. Their goal is to reach agreement regarding some value, e.g., the average temperature measured, without having a global coordination, and while their interconnections change over time.

Many approaches and algorithms for this problem were proposed. We will focus on averaging algorithms, where the units use simple mechanisms, such as collecting values from their neighbors and adopting their average as the new value. The goal of this project is to give experimental comparison of several theoretical algorithms, on different networks.

For further reading, see:

This topic is available at all levels.
For more information, please contact Prof Stefan Schmid atStefan_schmid@univie.ac.at or Ami Paz at ami.paz@univie.ac.at


Image ModifiedImage Modified
What to do when your network fails? Fast local failover mechanisms

Network failures happen all the time, especially the links that connect different parts of the networks can be faulty. Until these links are repaired, the network should still be usable. Ideally, the user should not even be aware that the links went down! As such, re-computation and re-convergence of routes is too slow for time-critical applications. Rather, operators are aiming for local fast failover methods, where in the best-case, no single packet is lost, but rather directly re-routed along different paths. To this end, alternate routing mechanisms are installed ahead of time, taking multiple failure scenarios into account. To give a simple example, when routing happens along a ring, standard routing could be clockwise, and if a link goes down, counter-clockwise.

We are interested in developing/improving mechanisms for such local fast failovers, but also real-world studies or simulation frameworks. Possible research directions include:

  • theory/algorithms
  • complexity and SAT-solver formulations
  • verification and checking
  • machine learning
  • simulations and implementations

If you are interested, contact us and we can discuss possible directions for your thesis/project.

To get a feeling for some past research on these topics (non-exhaustive), please feel free to look at the following:

This topic is available at all levels.
For more information, please contact Prof Stefan Schmid atstefan_schmid@univie.ac.at and/or Klaus-Tycho Förster at klaus-tycho.foerster@univie.ac.at and/or Mahmoud Parham at mahmoud.parham@univie.ac.at

...

Capture.JPG

Networks are in a constant state of change. How to update them consistently?

Since the recent rise of Software-Defined Networking, computer networks have become programmable. Hence, network operators can change, e.g., routing behavior on the fly, all from the (comfortable) viewpoint of a central point of control. Such techniques allow to optimize the network's performance under different workloads and use-cases.

However, a computer network consists of many distributed components, sometimes even on the other side of the globe. Some parts of them can take longer to update their behavior, some might get conflicting commands – which can lead to inconsistent behavior, causing, e.g., congestion, packet drops, etc.

In this thesis, you will investigate causes and solutions to such inconsistencies. Possible research directions include:

  • theory/algorithms
  • machine learning
  • simulations and implementations

If you are interested, contact us and we can discuss possible directions for your thesis/project.

To get a feeling for some past research on these topics (non-exhaustive), please feel free to look at the following:

This topic is available at all levels. For a related topic, please also consider the topic: "Update your Network - Loop-Free!"
For more information, please contact Prof Stefan Schmid atstefan_schmid@univie.ac.at and/or Klaus-Tycho Förster at klaus-tycho.foerster@univie.ac.at 


Image ModifiedImage Modified
Change the network topology on the fly: lasers, mirrors, antennas

Usually, the cabling of networks is considered to be static. Unless new cables are laid out, routing algorithms have to work with what they have. Recent developments however allow the physical layer of networks to be dynamic! Data can be transferred over lasers, aimed at programmable mirrors, allowing near instantaneous establishment of connections. Similarly, wireless connections can employ beam-forming, such that WiFi is no longer a shared medium where multiple connections slow each other down. It is even possible to make the wide area network dynamic, by shifting wavelengths across fibers.

In your thesis, you will investigate and design routing mechanisms that take dynamic topologies into account. Possible research directions include:

  • theory/algorithms
  • machine learning
  • simulations and implementations

If you are interested, contact us and we can discuss possible directions for your thesis/project.

To get a feeling for some past research on these topics (non-exhaustive), please feel free to look at the following:

This topic is available at all levels.
For more information, please contact Prof Stefan Schmid atstefan_schmid@univie.ac.at and/or Klaus-Tycho Förster at klaus-tycho.foerster@univie.ac.at 


Image ModifiedImage Modified
Change the network topology on the fly: algorithms, data structures, and self-adjustment

Recent research in data center networks has made it possible to dynamically change parts of the physical network. That is, it is now possible to have a dynamic physical network topology for core parts of the data center network! Given that network traffic can be skewed, we can exploit this dynamicity to reduce the routing distance between frequently communicating nodes. There is a catch though: network adjustment comes at a cost! To that end, the research field of self-adjusting networks studies the trade-offs between adjustment and routing costs, combining knowledge from computer networks, online algorithms, data structures, machine learning, etc.

In your thesis, you will compare self-adjusting network algorithms in terms of performance. The exact topic in this area will be determined according to your background and interests. Our suggestion is that you will implement existing self-adjusting network algorithms, use real data center traffic data sets to test and demonstrate their performance, and propose improvements or (given the time) design novel algorithms. Thus, possible research directions include:

  • theory/algorithms

  • machine learning

  • simulations and implementations

If you are interested, contact us and we can discuss possible directions for your thesis/project.

To get a feeling for some past research on these topics (non-exhaustive), please feel free to look at the following:

This topic is available at all levels.
For more information, please contact Prof Stefan Schmid atstefan_schmid@univie.ac.at and/or Iosif Salem at iosif.salem@univie.ac.at

...


Distributed systems with cheap machines

When you think of distributed systems, you might think of powerful machines that even on their own are more advanced than your PC at home. However, in quite a few distributed systems (e.g., embedded systems for cars or the Internet-of-Things), the machines on their own are not so powerful: their computational power and memory might be limited, along with power constraints, only allowing for small size messages. Additionally, their knowledge of the global network topology could be outdated or restricted, with the further problem of network faults. Still, even with such cheap machines, many problems can still be solved well enough, although maybe different algorithms and paradigms are needed. Another important aspect in this area are biologically inspired systems: e.g., ants are rather primitive when compared to a modern computer, but still they can accomplish amazing tasks when working together.

In this thesis, you will dive into the fascinating world of distributed systems where each node only has very limited resources and abilities. Possible research directions include:

  • theory/algorithms
  • modelling/complexity
  • simulations and implementations

If you are interested, contact us and we can discuss possible directions for your thesis/project.

To get a feeling for some past research on these topics (non-exhaustive), please feel free to look at the following:

This topic is available at all levels.
For more information, please contact Prof Stefan Schmid atstefan_schmid@univie.ac.at and/or Klaus-Tycho Förster at klaus-tycho.foerster@univie.ac.at 


Image Modified
Distributed proofs

If you want to find out if there is a path between two nodes s and t in a network, then that is usually an easy problem: just do, e.g., a depth-first-search from s and check if you can reach t. Can we be faster if we want to verify such properties in a distributed fashion, with some pre-processing? Essentially, that is the idea of distributed proofs: one distributes some information ahead of time, and if a property is true, all nodes should respond yes, and if not, at least one node should raise an alarm. The speedup comes from the fact that the nodes only need to check with their neighbors to verify the global property.

To give an intuition for this example, consider the picture above: If you just label nodes along the paths from s to t with a "1", then locally, you cannot distinguish between an instance that is connected and one that is not: e.g., from the viewpoint of the nodes a,a', it looks the same. In this case, one can resolve the issue by only labeling a single shortest path between s and t with "1"s, and label all other nodes with "0". There is a wide variety of topics where interesting research questions arise, e.g., for consistent network updates, for dynamic networks, or in the context of biology.

Possible research directions are mostly in the realm of algorithms and theory, but also some implementation could be possible.

If you are interested, contact us and we can discuss possible directions for your thesis/project.

To get a feeling for some past research on these topics (non-exhaustive), please feel free to look at the following:

This topic is available at all levels.
For more information, please contact Prof Stefan Schmid atstefan_schmid@univie.ac.at and/or Klaus-Tycho Förster at klaus-tycho.foerster@univie.ac.at

...