Bild mit Unilogo
home uni uni kontakt contact
unilogo Universität Stuttgart
Institute of Communication Networks and Computer Engineering (IKR)

Project description


Bachelor thesis No. 1045    (In work)   [pdf]

Designing and Implementing a GNPy Wrapper for Increased Programmability



Programming in Python

Optical networks




One of the modern networking problems is being able to completely take advantage of the hardware devices and operate them as efficiently as possible. Unfortunately, this task is not easy since different scenarios require different device configurations. Given a particular topology, the network operators must thoroughly consider how they will set up their network.

Optical networks have significantly transformed over the last few years because of the tremendous traffic increase. This triggers many design questions and causes several requirements for optical devices like amplifiers, multiplexers, transponders, etc.

GNPy is an open-source library developed in the frame of the Telecom Infra Project for planning and simulating optical meshed networks. With GNPy, many aspects of low-level optical networking components can be simulated, like optical signal attenuation along a fiber with respect to the modulation format used in the signal transmission. GNPy can automatically solve the dimensioning problem given a particular topology. However, GNPy is somewhat difficult to work with. For this reason, a more user-friendly interface can be developed so that more people can interact more easily with the platform.

Problem Description

For this work, you are called to get familiar with the GNPy library and leverage its capabilities for simulating optical layer signals and automatic configuration. You will investigate GNPy's features and design a Python API (Application Programming Interface). On this behalf, you will build a Wrapper software around GNPy, which you will evaluate in a core network topology. This thesis can be structured in the following steps:

get familiar with optical network equipment and investigate the GNPy python package

develop a Python API and wrapper to create and simulate network topologies in GNPy

configure the network using your GNPy wrapper

Acquired Knowledge and Skills

With this work, you will get a great insight into optical networks and learn to interpret important values for an optical device. Moreover, you will sharpen your skills in Python programming and use the well-established community-developed tool GNPy. You will also learn how to build an API, which will work as an adapter wrapping the GNPy package.


Desirable knowledge

Programming Experience

Kommunikationsnetze I


Dipl.-Ing. Filippos Christou, room 1.319 (ETI II), phone 685-67968, [E-Mail]