TU Berlin

Department of Telecommunication SystemsBA: Design and Implementation of a Network Interface Simulator

Page Content

to Navigation

BA: Design and Implementation of a Network Interface Simulator

Motivation

Devices in the Internet of Things (IoT) oftentimes are powered by weak microcontrollers to save energy and cost. Cyber-physical systems which monitor on control machines need real-time operating systems (RTOSs) to meet timing requirements in industrial applications. Industry 4.0 and autonomous driving are examples where both worlds meet. Microcontrollers are extended with networking capabilities (network interface controllers (NICs)) while still running real-time applications.

The added network interface and required networking tasks open a new unpredictable source of interrupts. The called ISRs, network driver and stack tasks require processing resources at unpredictable points in time, possibly preempting currently running time-critical tasks. The number of called interrupts therefore should be minimized when possible. At the same time, the holding back of interrupt should not retard the real-timeness of the system. A network interface that distinguishes the criticality of an incoming packet is necessary to give priority to important interrupts while holding back less important ones.

Goal

The goal of the work is the design of a simulator for network interface controllers that allows for parameter changes with respect to buffer sizes, buffer numbers and interrupt moderation timers and counters. The simulation should take an OS configuration (running processes with priorities and IP flows) and a corresponding network trace of incoming packets and return a trace of sent interrupts and accesses to memory.

Tasks

  • Research towards existing simulators
  • Design of a simulator for the stated purpose
  • Implementation of a prototype in a suitable programming language
  • Conducting first experiments and presenting their results

Prerequisites

  • Student of Computer Engineering or Computer Science
  • Good understanding of operating systems (Systemprogrammierung, Betriebssystempraktikum)
  • Good and clean programming skills
  • Practiced scientific writing in at least one seminar
  • Being an independent student

 Please note our general guidelines.

Navigation

Quick Access

Schnellnavigation zur Seite über Nummerneingabe