IN4260MCT/IN3260 Project topics

This is a list of available projects, to be taken in the context of IN4260MCT and IN3260.

Note: these projects can quickly appear or disappear - if you pick one, you are expected to get started with it immediately!

Topic: Measuring queuing delay on routers over a multi-hop path - TAKEN (IN3260)

This project focuses on measuring delays of data packets inside intermediate routers on the Internet. The primary packet delay inside a router is queuing delay; its precise measurement is essential for accurately characterizing the performance of various delay-sensitive applications (e.g., IP Geolocation and telesurgery) over an Internet path. An Internet path usually consists of multiple routers that connect a pair of end-stations (e.g., a workstation and a web server). Therefore, the goal here is to explore the active measurement of queuing delays on all routers over an end-to-end path in reference to the state-of-the-art solution named Compression and Decompression (CoDe) [1]. CoDe is a machine learning-based solution that utilizes a k-means clustering algorithm for single-hop measurement. It emphasizes on estimating queuing delay quickly without any infrastructural support and without inducing a large volume of probing packets. In short, we will initially investigate supervised and unsupervised learning algorithms and then implement CoDe with the necessary modifications to achieve optimal measurement performance. The implementation of this project will entail a comparative performance evaluation of CoDe through computer simulations. 

Note: This project is a collaboration between the University of Portland (USA) and University of Oslo.

[1] Ricker, Travis, Khondaker Salehin, Yi Wang, Alex Chen, Eiji Oki, and Roberto Rojas-Cessa. "A Machine Learning Approach to Estimating Queuing Delay on a Router over a Single-Hop Path." In ICC 2022-IEEE International Conference on Communications, pp. 2720-2725. IEEE, 2022.

Required background: C and C++, some networking knowledge

Offered by: Safiqul Islam


Topic: Coupled congestion control in Chromium, with an application-limited data sender

A recent master thesis implemented and tested coupled congestion control for both the media and data channels in Chromium. See this paper for details. In this project, you will extend this code to make the final algorithm work in cases where the data channel is not always fully saturating its cwnd, but is instead limited by the application or the receiver.

Required background: C and C++, some networking knowledge

Offered by: Michael Welzl and Safiqul Islam


Topic: How to distract people that walk in VR? - TAKEN (IN3260)

Redirected Walking makes it possible move your avatar in the virtual world by walking naturally in the real world. But because real-world spaces are small, you must turn around while your avatar continues straight on. The collection of tricks that hides this divergence is called redirected walking.

Picture of the IFI open space with safety area marked
Walking in the real world

According to the literature, distractions (surprising sounds or NPC actions) can hide redirections [1], but we found in some recent master theses that the story is not so simple. When distraction fails, it makes matters worse. In this project, you will explore distractors that don't fail easily.

Note: This project uses Unreal Engine and builds on the spring 2023 master theses of Emil Magnar Kjenstad, Halvor Krisian Ringsby and Rahel Jamal Gaeb [2].

[1] H. Chen and H. Fuchs, “Supporting free walking in a large virtual environment,” in Proceedings of the Computer Graphics International Conference, 2017, pp. 1–6.

[2] E. M. Kjenstad et al., “Experiencing Rotation and Curvature Gain for Redirected Walking in Virtual Reality,” in Proceedings of the 15th International Workshop on Immersive Mixed and Virtual Environment Systems, 2023, pp. 1–6.

Required background: C and C++, 3D and/or VR knowledge

Offered by: Carsten Griwodz


Topic: Feeling motion with Ultrahaptics

We are used to seeing the motion of the people around us, and that is an experience that we have replicated into the telecommunication quite well using cameras on the one side and screens or headsets on the other. But there are situations where we feel the motion of another person: examples range from sports and dancing to education  and physiotherapy. These perceptions are not easily telecommunicated today but prototypical tools exist that can help us to image the future.

In this project, you will explore how motion tracked with the Vive Tracker can be presented remotely through the Ultrahaptics emitter. The setup is very basic but open for exploration, and your creativity is needed to contextualize your experiment. 

Picture of the Vive tracker
Vive Tracker
Picture of the Ultrahaptics
Ultrahaptics: in-air touch

Required background: C and C++, 3D and/or VR knowledge

Offered by: Carsten Griwodz

 


Topic: Measuring WiFi disturbances - TAKEN (IN3260)

Offered by: Michael Welzl 


Topic: A GUI for mininet network scenarios

Mininet already has a GUI called miniedit, but:

  • It's old. Good luck getting it to run with python3 ;-)
  • It seems to be the only one!
  • It seems to focus only on producing a topology. We, instead, want a test scenario, with a timeline where events happen (iperf starts or stops, links go up or down, ..), more like this
  • miniedit directly controls mininet, but we want something that just produces a configuration file, which is then read by another tool (also to be written by you), and this tool will then configure mininet, control iperf etc.

Look at this other, much older tool for an example: NSBM. It produces a simulation script. We essentially want this, but producing a mininet / iperf test scenario script file (perhaps in json or some such format). 

Required background: python, basic networking with mininet

Offered by: Michael Welzl 

Published Sep. 2, 2022 2:38 PM - Last modified Aug. 28, 2023 12:06 PM