Research group Prof. Zitterbart - Institute of Telematics

Multi-Bottleneck Recognition with Machine Learning

  • chair:Congestion Control, Machine Learning
  • type:Masterarbeit
  • time:Ab sofort
  • advisor:

    Klemens Schneider

  • DESCRIPTION

    Interactive distributed applications, like video telephony, require congestion controls that achieve high data
    rates, low latencies, and behave fairly. At the Institute of Telematics, we are developing a novel congestion
    control, called TCP LoLa, that tries to achieve all goals simultaneously. Due to its delay-based algorithm,
    TCP LoLa is vulnerable to multi-bottleneck situations. If there is more than one bottleneck on the path,
    the data rate of a TCP LoLa flow drops below its fair share, which we want to change. In previous theses,
    we developed a method that enables TCP LoLa to adapt its functionality to a single bottleneck. This is
    achieved by verbose explicit feedback, where routers on the path write their state into a traversing packet.
    We showed, that TCP LoLa can achieve a fair data rate, if it chooses the right bottleneck.
    An unsolved issue is, how TCP LoLa can find out, which bottleneck is the right one. We, as humans, can
    look at the graphs of TCP LoLa and conclude whether the right bottleneck was chosen. In order to select
    the right bottleneck autonomously, the algorithm of TCP LoLa has to recognize the correct choice of the
    bottleneck. As a first step, we developed a simple heuristic, which showed an unsatisfactory performance.
    Machine learning seems like a promising candidate to solve this research question.

     

    ASSIGNMENT

    Generally, your job is to find a solution which enables TCP LoLa to choose the correct bottleneck with
    machine learning. First, you have to setup and write a simulation environment in ns-3, which implements
    the verbose explicit feedback approach and the accompanying TCP LoLa algorithm from the previous
    theses. This allows your to simulate lots of different multi-bottleneck scenarios and enables you to gather
    lots of data in situations where TCP LoLa chose the right or the wrong bottleneck.
    As a second step, you start to use machine learning. Your goal is to use the generated data to train a
    model, by which TCP LoLa can determine if it chose the correct bottleneck. Our vision is that TCP LoLa
    uses the machine learning model to choose the correct bottleneck autonomously.

     

    WORK ENVIRONMENT

    The programming work is mostly in C++ and a bit of Python. We provide you with a high-performance
    SSH-accessable testbed, featuring 128 GB of RAM, 32 cores, and graphic cards. We will have weekly
    (remote) meetings, where we talk about the progress and problems of your thesis.

     

    REREQUISITES

    We require previous, non-trivial experience with machine learning. We expect basic knowledge in computer
    networking and congestion control (e.g. with Einführung in Rechnernetze or Telematik).
    Write me a quick mail, if you want to learn more. The thesis can be written in German or English.