You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 20 Next »

Current CT-Thesis/Praktikum-Topics

  • 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

  • What to do when your network fails? Fast local failover mechanisms

  • Distributed proofs


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.


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 routing respectively mechanism design that takes dynamic topologies into account. Possible research directions include:

  • theory/algorithms
  • machine learning
  • simulations and implementations

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.



Programmable matter

Programmable matter refers to physical matter that can change, e.g., its shape, according to external stimuli respective sensing properties or input. To give an example, imagine a cluster of cells that is tasked to surround a specific object. Unlike a normal computing system, these cells have very limited processing power and memory, but are still able to accomplish complicated task: the difficulty lies in creating simple algorithms, that can cope with the restricted resources, and especially take the distributed aspect into account. Besides such biologically inspired models, recent work has also considered robots that use (un)folding of their geometric structure.

In this thesis, your focus will be on understanding the theory behind some chosen aspect of programmable matter, in turn developing new algorithms. There is also the option of simulating heuristics, to get a grasp of their performance.

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.



Bitcoin from a networking perspective

Chances are, you already heard a lot of things about Bitcoin and its variations: essentially, it is a decentralized currency, without any central bank/authority, allowing users to send payments (under pseudonymity) via a peer-to-peer (P2P) network. While the underlying security is well studied, privacy and performance aspects are not as well developed as they could be. For example, do you really want to wait 10 minutes until your payment is verified?

We are interested in studying the decentralized network aspects, i.e., how to improve liquidity ("speed"), the routing, but also preventing partitioning of the topology. Privacy and trust issues could also come up. Possible research directions include:

  • theory/algorithms
  • measurements
  • simulations and implementations

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.



Distributed systems with cheap machines

....

(todo: talk about what we want to do, is there some picture we are allowed to use? Distributed computing with finite state machines, constant communication etc)

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

  • (todo: more)
  • ....
This topic is available at all levels.



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
  • machine learning
  • simulations and implementations

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.



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,

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.


  • No labels