Service chaining path calculation

Dellsperger, Severin and Klaiber, Julian (2020) Service chaining path calculation. Other thesis, OST Ostschweizer Fachhochschule.

[thumbnail of HS 2020 2021-SA-EP-Dellsperger-Klaiber-Service chaining path calculation.pdf] Text
HS 2020 2021-SA-EP-Dellsperger-Klaiber-Service chaining path calculation.pdf - Supplemental Material

Download (4MB)


Today's networks often use traditional routing protocols and approaches, which have their fundamentals often before the millennium turn. In recent years, the network area has not seen such rapid changes as familiar as in other sectors of IT. With the growth of the digital world and the introduction of new fields and technologies, such as 5G and cloud computing, the amount of data that today is sent over networks is enormous and will increase in the future. Modern networks not only have to deal with the new incredible number of data transfers, but in addition to this, they have also to face new challenges to satisfy customer needs. One of these requirements is the concatenation of network services, such as firewalls, IDS systems, DDoS protection, load balancers, and more similar services. This mechanism is known as service chaining and can not be accomplished by conventional networks.

This thesis aims to find a solution, that can help to calculate and find the best service chain according to defined parameters. The most suitable service chain refers to the total path, which has the requested services included and has minimum costs. The whole solution is based on the Segment Routing protocol, which follows the source-based routing paradigm and introduces new approaches to evolving existing and new networks. The goal is to deliver a result, that informs which network path a packet, which has specific parameters, is steered through. Besides, the application should give information about which specific service instances process packets during its path traversal. The application has to get information about a present Segment Routing network to achieve this goal. This data is gathered and aggregated in an external system, provided by the industrial partner, and used for the calculation.

During this project thesis, a useful Service Chain Path Calculation software could be developed. The application consists of different microservices. The central part of the solution is a backend based on Python Django, which offers a standardized REST-API to perform calculations, handle the topology information, and more. One of the backend's crucial tasks is to maintain a graph representing the network with its nodes and edges. On this graph, the requested calculations are performed. This part of the application was optimized using a library that is written in C++ in its core. To ensure the correctness of the graph in the backend, a service was introduced to process the necessary network data and provide it to the backend. The polling service is also written in Python and uses a caching system to handle the volatile network items. In collaboration with the Institute for Networked Solutions, a modern and easy to use web frontend was developed, using the introduced API developed in this thesis. The user can view the topology, perform calculations, and view the results via the frontend.

Item Type: Thesis (Other)
Subjects: Technologies > Programming Languages > Python
Technologies > Databases > PostgreSQL
Technologies > Databases > SQLite
Technologies > Protocols > REST
Technologies > Network
Brands > Cisco
Metatags > INS (Institute for Networked Solutions)
Divisions: Bachelor of Science FHO in Informatik > Student Research Project
Depositing User: HSR Deposit User
Thesis advisor
Metzger, Laurent
Date Deposited: 19 Mar 2021 09:46
Last Modified: 19 Mar 2021 09:46

Actions (login required)

View Item
View Item