- The following list contains currently open thesis topics in the area of Communication Technologies.
- If you are interested in one of the topics below, please contact
- Similarly, should you have an own idea for a potential thesis which you think might fit the research interests of our group, please contact us directly as well.
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
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:
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:
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. |
... (todo: talk about amoebot and transformers, programmable matter, is there some picture we are allowed to use?) 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. |
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. Possible research directions include:
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. |
.... (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:
|
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:
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. |